html{scroll-behavior:smooth}body{background:#0b0f1d;color:#e6e9ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,Apple Color Emoji,Segoe UI Emoji;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button{background:none;border:none}ol,ul{list-style:none;margin:0;padding:0}a{color:inherit;text-decoration:none}:focus{outline:2px solid #6ea8fe;outline-offset:2px}*{transition:color .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.icon{fill:currentColor;display:inline-block;height:1em;vertical-align:-.125em;width:1em}:root{--accent-blue:#6ea8fe;--accent-green:#00c805;--accent-red:#ff3b30;--accent-yellow:#fc0;--accent-purple-2:#7c3aed;--success-color:var(--accent-green);--error-color:var(--accent-red);--background:#0b0f1d;--secondary-bg:#0f1426;--card-bg:#12172a;--tertiary-bg:#1c2033;--border-color:#ffffff14;--text-primary:#e6e9ef;--text-secondary:#a0a8b8;--text-muted:#7b8292;--shadow:0 4px 12px #00000040;--shadow-hover:0 8px 24px #00000059}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.flex{display:flex}.items-center{align-items:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3,.grid-2{gap:1rem}.grid-2{grid-gap:1rem}@media (max-width:768px){.grid-2{grid-template-columns:1fr}}.btn-base{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:.6rem 1rem}.btn-accent{background:var(--accent-blue);color:#fff}.btn-accent:hover{filter:brightness(1.05)}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:400px;padding:40px;text-align:center;width:100%}.login-header h1{color:#333;font-size:2rem;font-weight:700;margin-bottom:10px}.login-header p{color:#666;font-size:1rem;margin-bottom:30px}.error-message{background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;margin-bottom:20px;padding:12px}.login-options{margin-bottom:30px}.google-signin-btn{align-items:center;background:#fff;border:2px solid #ddd;border-radius:12px;box-shadow:0 2px 4px #0000001a;color:#333;display:flex;font-size:16px;font-weight:500;gap:12px;justify-content:center;padding:14px 20px;transition:all .3s ease;width:100%}.google-signin-btn:hover{border-color:#4285f4;box-shadow:0 4px 8px #4285f433;transform:translateY(-1px)}.google-signin-btn:disabled{opacity:.7;transform:none}.google-icon{height:20px;width:20px}.login-footer p{color:#888;font-size:.9rem;margin:0}.login-switches{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:12px}.link-btn{background:none;border:none;color:#4f46e5;cursor:pointer;font-size:.95rem;padding:0}.link-btn:hover{text-decoration:underline}.email-auth-form{grid-gap:12px;display:grid;gap:12px;margin-bottom:16px}.form-group{grid-gap:6px;display:grid;gap:6px;text-align:left}.form-group input{border:1px solid #ddd;border-radius:10px;font-size:14px;padding:12px 14px;width:100%}.primary-btn{background:#4f46e5;border:none;border-radius:10px;color:#fff;font-weight:600;padding:12px 16px;width:100%}.divider{grid-gap:10px;align-items:center;color:#999;display:grid;font-size:.85rem;gap:10px;grid-template-columns:1fr auto 1fr;margin:16px 0}.divider:after,.divider:before{background:#e5e7eb;content:"";display:block;height:1px}@media (max-width:480px){.login-card{padding:30px 20px}.login-header h1{font-size:1.75rem}}.survey-modal{max-width:600px}.survey-modal h2{color:#fff;margin-top:0;text-align:center}.survey-modal p{color:#fff;margin-bottom:2rem;text-align:center}.form-group{margin-bottom:1.5rem}.form-group label{color:#fff;display:block;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);padding:.75rem;width:100%}.goals-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.goal-btn{background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;padding:.75rem;transition:all .2s ease}.goal-btn.selected{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.data-reset-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.data-reset-modal{animation:modalSlideIn .3s ease-out;background:#1a1a2e;background:var(--card-bg,#1a1a2e);border:1px solid #2d2d44;border:1px solid var(--border-color,#2d2d44);border-radius:12px;box-shadow:0 20px 40px #00000080;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{border-bottom:1px solid #2d2d44;border-bottom:1px solid var(--border-color,#2d2d44);padding:1.5rem 1.5rem 1rem}.modal-header h2{color:#fff;color:var(--text-primary,#fff);font-size:1.25rem;font-weight:600;margin:0}.close-btn{background:none;border-radius:4px;color:#a0a0a0;color:var(--text-secondary,#a0a0a0);font-size:1.5rem;padding:.25rem;transition:all .2s ease}.close-btn:hover:not(:disabled){background:#2d2d44;background:var(--secondary-bg,#2d2d44);color:#fff;color:var(--text-primary,#fff)}.close-btn:disabled{opacity:.5}.modal-content{padding:1.5rem}.warning-section{margin-bottom:2rem}.warning-icon{font-size:3rem;margin-bottom:1rem;text-align:center}.warning-section h3{color:#ff6b6b;font-size:1.1rem;margin:0 0 1rem;text-align:center}.warning-section p{color:#a0a0a0;color:var(--text-secondary,#a0a0a0);line-height:1.5;margin:0 0 1rem}.warning-section ul{background:#2d2d44;background:var(--secondary-bg,#2d2d44);border-left:4px solid #ff6b6b;border-radius:8px;margin:1rem 0;padding:1rem 1.5rem}.warning-section li{color:#a0a0a0;color:var(--text-secondary,#a0a0a0);line-height:1.4;margin:.5rem 0}.warning-text{background:#ff6b6b1a;border:1px solid #ff6b6b4d;border-radius:8px;margin:1rem 0 0;padding:1rem;text-align:center}.warning-text strong{color:#ff6b6b}.confirmation-section{margin-bottom:1.5rem}.confirmation-section p{color:#a0a0a0;color:var(--text-secondary,#a0a0a0);margin:0 0 1rem;text-align:center}.delete-confirmation-input{background:#2d2d44;background:var(--secondary-bg,#2d2d44);border:2px solid #2d2d44;border:2px solid var(--border-color,#2d2d44);border-radius:8px;color:#fff;color:var(--text-primary,#fff);font-size:1rem;padding:.75rem 1rem;text-align:center;transition:border-color .2s ease;width:100%}.delete-confirmation-input:focus{border-color:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b1a;outline:none}.delete-confirmation-input::placeholder{color:#a0a0a0;color:var(--text-secondary,#a0a0a0)}.reset-progress{padding:2rem 0;text-align:center}.loading-spinner{animation:spin 1s linear infinite;font-size:2rem}.reset-progress p{color:#a0a0a0;color:var(--text-secondary,#a0a0a0);font-size:1rem;margin:0}.modal-actions{border-top:1px solid #2d2d44;border-top:1px solid var(--border-color,#2d2d44);display:flex;gap:1rem;padding:1rem 1.5rem 1.5rem}.cancel-btn{background:#2d2d44;background:var(--secondary-bg,#2d2d44);border:1px solid #2d2d44;border:1px solid var(--border-color,#2d2d44);border-radius:8px;color:#a0a0a0;color:var(--text-secondary,#a0a0a0);flex:1 1;font-size:1rem;padding:.75rem 1rem;transition:all .2s ease}.cancel-btn:hover{background:#2d2d44;background:var(--border-color,#2d2d44);color:#fff;color:var(--text-primary,#fff)}.reset-btn{background:linear-gradient(135deg,#ff6b6b,#ee5a52);border:none;border-radius:8px;box-shadow:0 4px 12px #ff6b6b4d;color:#fff;flex:1 1;font-size:1rem;font-weight:600;padding:.75rem 1rem;transition:all .2s ease}.reset-btn:hover:not(:disabled){box-shadow:0 6px 16px #ff6b6b66;transform:translateY(-2px)}.reset-btn:disabled{box-shadow:0 4px 12px #ff6b6b33;opacity:.5;transform:none}@media (max-width:600px){.data-reset-modal{margin:1rem;width:95%}.modal-actions,.modal-content,.modal-header{padding-left:1rem;padding-right:1rem}.modal-actions{flex-direction:column}.warning-section ul{padding:.75rem 1rem}}.navigation{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--secondary-bg);border-bottom:1px solid var(--border-color);position:-webkit-sticky;position:sticky;top:0;z-index:100}.nav-container{height:70px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 2rem}.brand-link,.nav-brand,.nav-container{align-items:center;display:flex}.brand-link{color:var(--text-primary);font-size:1.25rem;font-weight:700;gap:.75rem;transition:color .2s ease}.brand-link:hover{color:var(--accent-blue)}.brand-icon{font-size:1.5rem}.brand-text{display:none}@media (min-width:768px){.brand-text{display:block}}.nav-menu{flex:1 1;gap:.5rem;justify-content:center}.nav-link,.nav-menu{align-items:center;display:flex}.nav-link{border-radius:8px;color:var(--text-secondary);flex-direction:column;gap:.25rem;min-width:60px;padding:.75rem;text-decoration:none;transition:all .2s ease}.nav-link:hover{background:var(--card-bg);color:var(--text-primary)}.nav-link.active{background:var(--card-bg);color:var(--accent-blue)}.nav-icon{font-size:1.25rem}.nav-label{font-size:.75rem;font-weight:500;text-align:center}.nav-actions{gap:1rem}.nav-actions,.user-info{align-items:center;display:flex}.user-info{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;gap:.5rem;padding:.5rem}.user-avatar{height:32px;width:32px}.user-name{display:none;font-size:.875rem;font-weight:500}@media (min-width:768px){.user-name{display:block}}.theme-toggle{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;font-size:1.25rem;padding:.5rem;transition:all .2s ease}.theme-toggle:hover{background:var(--secondary-bg);border-color:var(--accent-blue);transform:scale(1.05)}.logout-btn{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;font-size:1.25rem;padding:.5rem;transition:all .2s ease}.logout-btn:hover{background:#fee;border-color:#fcc;color:#c33;transform:scale(1.05)}.forget-data-btn{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;font-size:1.25rem;padding:.5rem;transition:all .2s ease}.forget-data-btn:hover{background:#fef;border-color:#fcf;color:#c3c;transform:scale(1.05)}@media (max-width:768px){.nav-container{height:60px;padding:0 1rem}.nav-menu{gap:.25rem}.nav-link{min-width:50px;padding:.5rem}.nav-icon{font-size:1.1rem}.nav-label{font-size:.7rem}.brand-icon{font-size:1.25rem}.user-avatar{height:28px;width:28px}.nav-actions{gap:.5rem}}@media (min-width:769px) and (max-width:1024px){.nav-container{padding:0 1.5rem}.nav-menu{gap:.75rem}.nav-link{min-width:70px}}@media (hover:hover){.nav-link:hover{transform:translateY(-2px)}.logout-btn:hover,.theme-toggle:hover{transform:scale(1.1)}}.inflation-toggle{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin:16px 0;padding:16px}.toggle-container{margin-bottom:12px}.toggle-container,.toggle-label{align-items:center;display:flex;justify-content:space-between}.toggle-label{-webkit-user-select:none;user-select:none;width:100%}.toggle-text{color:#fff;font-size:14px;font-weight:600}.toggle-switch{height:24px;position:relative;width:50px}.toggle-input{height:0;opacity:0;width:0}.toggle-slider{background-color:#666;border-radius:24px;bottom:0;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.toggle-input:checked+.toggle-slider{background-color:#00c805}.toggle-input:checked+.toggle-slider:before{transform:translateX(26px)}.inflation-rate-control{border-top:1px solid #fff3;padding-top:12px}.inflation-label{color:#fff;display:block;font-size:12px;font-weight:500;margin-bottom:8px}.inflation-slider{-webkit-appearance:none;background:linear-gradient(90deg,#ff3b30 0,#ff9500 50%,#00c805);border-radius:3px;height:6px;margin-bottom:8px;outline:none;width:100%}.inflation-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;height:18px;width:18px}.inflation-slider::-moz-range-thumb{background:#fff;border:none;border-radius:50%;box-shadow:0 2px 4px #0003;height:18px;width:18px}.inflation-hint{color:#ffffffb3;font-size:11px;font-style:italic}.home{margin:0 auto;max-width:1400px}.home-header{margin-bottom:3rem;text-align:center}.home-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent-purple),var(--accent-purple-2));-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.home-header p{color:var(--text-secondary);font-size:1.1rem}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.loading-spinner{animation:pulse 2s infinite;font-size:4rem;margin-bottom:1rem}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.loading-container p{color:var(--text-secondary);font-size:1.1rem;margin:0}.dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:3rem}.dashboard-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;color:inherit;overflow:hidden;padding:1.5rem;position:relative;text-decoration:none;transition:all .3s ease}.dashboard-card:before{background:linear-gradient(90deg,var(--accent-blue),#00a804);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.dashboard-card:hover:before{transform:scaleX(1)}.dashboard-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.card-icon{font-size:2rem}.card-change{font-size:.85rem;font-weight:500}.change-indicator{border-radius:4px;font-size:.75rem;padding:.25rem .5rem}.change-indicator.positive{background:#00c8051a;color:var(--success-color)}.change-indicator.negative{background:#ff3b301a;color:var(--error-color)}.change-indicator.warning{background:#ff95001a;color:var(--warning-color)}.card-content{text-align:center}.card-title{color:var(--text-secondary);font-size:.9rem;font-weight:500;margin-bottom:.5rem}.card-value{color:var(--text-primary);font-size:1.75rem;font-weight:700}.home-sections{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:3rem}.section-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.section-header h2{color:var(--text-primary);font-size:1.25rem;font-weight:600}.quick-actions{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.quick-action{align-items:center;background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;color:inherit;display:flex;flex-direction:column;gap:.5rem;padding:1rem;text-decoration:none;transition:all .2s ease}.quick-action:hover{background:var(--card-bg);border-color:var(--accent-blue);transform:translateY(-2px)}.action-icon{font-size:1.5rem}.action-label{font-size:.85rem;font-weight:500;text-align:center}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{align-items:center;background:var(--secondary-bg);border-radius:8px;display:flex;gap:1rem;padding:1rem;transition:background-color .2s ease}.activity-icon,.activity-item:hover{background:var(--card-bg)}.activity-icon{align-items:center;border-radius:8px;display:flex;font-size:1.25rem;height:40px;justify-content:center;width:40px}.activity-content{flex:1 1}.activity-title{color:var(--text-primary);font-weight:500;margin-bottom:.25rem}.activity-time{color:var(--text-muted);font-size:.8rem}.insights-section{margin-bottom:2rem}.insights-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.insight-item{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.insight-item h4{color:var(--text-secondary);font-size:.9rem;font-weight:500;margin-bottom:.5rem}.insight-value{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.insight-description{color:var(--text-muted);font-size:.8rem;line-height:1.4}@media (max-width:768px){.home-header h1{font-size:2rem}.dashboard-grid{gap:1rem;grid-template-columns:1fr}.home-sections{gap:1.5rem;grid-template-columns:1fr}.quick-actions{grid-template-columns:repeat(2,1fr)}.insights-grid{grid-template-columns:1fr}.card-value{font-size:1.5rem}.dashboard-card{padding:1rem}}@media (max-width:480px){.quick-actions{grid-template-columns:1fr}.card-header{align-items:flex-start;flex-direction:column;gap:.5rem}.activity-item{flex-direction:column;text-align:center}}.page-container{margin:0 auto;max-width:1200px;padding:2rem}.page-header{margin-bottom:2rem}.page-header h1{background:linear-gradient(135deg,var(--accent-purple),var(--accent-purple-2))}.summary-cards{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.summary-card{background:var(--card-bg);border-radius:12px}.summary-card h3{color:var(--text-secondary);font-size:.9rem;font-weight:500;margin-bottom:.5rem}.summary-value{font-size:1.75rem}.form-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;margin-bottom:2rem;padding:1.5rem}.form-section h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}.debt-form{display:flex;flex-direction:column;gap:1rem}.form-row:last-of-type{grid-template-columns:1fr}.input-group{gap:.5rem}.input-group label{font-weight:500}.input-group input,.input-group select{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:.9rem;padding:.75rem;transition:border-color .2s ease}.input-group input:focus,.input-group select:focus{border-color:var(--accent-blue);box-shadow:0 0 0 2px #007bff1a;outline:none}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.content-section{margin-bottom:2rem;padding:1.5rem}.section-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.section-header h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.debt-table{overflow-x:auto}.debt-table table{background:var(--secondary-bg);border-radius:8px;overflow:hidden}.debt-table th{background:var(--border-color)}.debt-table td,.debt-table th{font-size:.9rem}.debt-table tr:hover{background:var(--card-bg)}.debt-table .debt-name{color:var(--text-primary);font-weight:500}.debt-table .debt-type{text-transform:capitalize}.debt-table .debt-balance,.debt-table .debt-payment{color:var(--text-primary);font-weight:500}.debt-table .debt-rate{color:var(--success-color);font-weight:500}.debt-table .debt-payoff{color:var(--warning-color);font-weight:500}.debt-table .actions{display:flex;gap:.5rem}.btn-primary{background:var(--accent-blue)}.btn-primary:hover{background:#0056b3}.btn-secondary:hover{background:var(--border-color);transform:translateY(-1px)}.btn-small{border:none;border-radius:6px;padding:.5rem .75rem;transition:all .2s ease}.btn-edit{background:var(--success-color)}.btn-edit:hover{background:#00a804;transform:translateY(-1px)}.btn-delete:hover{background:#d32f2f;transform:translateY(-1px)}.strategy-info p{margin-bottom:1rem}@media (max-width:768px){.page-container{padding:1rem}.page-header h1{font-size:2rem}.form-row,.summary-cards{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column;gap:1rem}.debt-table{font-size:.8rem}.debt-table td,.debt-table th{padding:.75rem .5rem}.debt-table .actions{flex-direction:column;gap:.25rem}}.property-form{display:flex;flex-direction:column;gap:1rem}.properties-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.property-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all .3s ease}.property-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.property-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.property-header h4{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0}.property-type{background:var(--accent-blue);border-radius:12px;color:#fff;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.property-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.detail-row{font-size:.9rem}.detail-row span:first-child{font-weight:500}.detail-row .value.positive{color:var(--success-color)}.detail-row .value.negative{color:var(--error-color)}.property-address{background:var(--secondary-bg);border-left:3px solid var(--accent-blue);border-radius:6px;margin-bottom:1rem;padding:.75rem}.property-address small{color:var(--text-secondary);font-size:.85rem}.property-actions{display:flex;gap:.5rem;justify-content:flex-end}.chart-container{border-radius:12px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;margin-bottom:2rem;min-height:400px;padding:1.5rem}.chart-container h4{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.chart-container canvas{flex:1 1;max-height:350px}.chart-legend{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.chart-legend p{color:var(--text-secondary);font-size:.9rem;margin-bottom:.5rem}.chart-legend p:last-child{margin-bottom:0}.chart-legend strong{color:var(--text-primary)}.insights-grid{grid-gap:1.5rem;gap:1.5rem}.insight-card{background:var(--secondary-bg);border-left:4px solid var(--accent-blue);border-radius:8px;padding:1.5rem}.insight-card h4{font-weight:600;margin-bottom:.75rem}.insight-card p{color:var(--text-secondary);line-height:1.6;margin:0}@media (max-width:768px){.properties-grid{grid-template-columns:1fr}.property-header{align-items:flex-start;flex-direction:column;gap:.5rem}.property-type{align-self:flex-start}.insights-grid{grid-template-columns:1fr}.chart-container{padding:1rem}}.grid-2{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}@media (max-width:1024px){.grid-2{gap:1.5rem;grid-template-columns:1fr}}.allocation-item{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-sm);margin-bottom:1.5rem;max-width:100%;overflow:hidden;padding:2rem;transition:all .2s ease}.allocation-item:hover{box-shadow:var(--shadow-hover);transform:translateY(-1px)}.allocation-item:last-child{margin-bottom:0}.allocation-info{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.investment-name{color:var(--text-primary);font-size:1.1rem;font-weight:600}.allocation-percentage{color:var(--accent-blue);font-size:1.2rem;font-weight:700}.allocation-slider{-webkit-appearance:none;appearance:none;background:var(--border-color);border-radius:4px;height:8px;margin:1rem 0;outline:none;width:100%}.allocation-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--accent-blue);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 8px #0003;cursor:pointer;height:24px;width:24px}.allocation-slider::-moz-range-thumb{background:var(--accent-blue);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 8px #0003;cursor:pointer;height:24px;width:24px}.allocation-details{color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.95rem;font-weight:500;gap:.5rem;justify-content:space-between;margin-top:1rem}.btn-delete{align-items:center;background:var(--danger-color);border:none;border-radius:50%;cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;transition:all .2s ease;width:28px}.btn-delete:hover{background:var(--danger-hover);transform:scale(1.1)}@media (max-width:768px){.allocation-item{margin-bottom:1rem;padding:1.5rem}.allocation-info{align-items:flex-start;flex-direction:column;gap:.75rem}.investment-name{font-size:1.1rem;text-overflow:clip;white-space:normal}.allocation-details{flex-direction:column;gap:.5rem}.allocation-details span{display:flex;justify-content:space-between;width:100%}}.tab-navigation{border-bottom:1px solid var(--border-color);padding-bottom:1rem}.net-income-hero{grid-gap:1rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;display:grid;gap:1rem;grid-template-columns:1fr;margin-bottom:1.5rem;padding:1.25rem}.net-income-hero .hero-main{align-items:baseline;display:flex;gap:.75rem}.net-income-hero .hero-label{color:var(--text-secondary);font-weight:600;letter-spacing:.02em}.net-income-hero .hero-amount{color:var(--text-primary);font-size:2rem;font-weight:800}.net-income-hero .hero-sub{color:var(--text-muted);font-size:.9rem}.net-income-hero .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem}.net-income-hero .chip{align-items:baseline;background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:999px;color:var(--text-secondary);display:inline-flex;gap:.5rem;padding:.4rem .6rem}.net-income-hero .chip strong{color:var(--text-primary);font-weight:700}.net-income-hero .chip.negative{background:#ff3b300f;border-color:#ff3b3040}.net-income-hero .chip.negative strong{color:var(--error-color)}.net-income-hero .chip.positive{background:#00c8050f;border-color:#00c80540}.net-income-hero .chip.positive strong{color:var(--success-color)}@media (max-width:768px){.net-income-hero .hero-amount{font-size:1.6rem}}.tab-button{border:none;font-weight:500}.tab-button:hover{background:var(--card-bg);color:var(--text-primary)}.tab-button.active{background:var(--accent-blue)}.tax-summary{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.tax-breakdown{display:flex;flex-direction:column;gap:.75rem}.tax-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.5rem 0}.tax-item:last-child{border-bottom:none}.tax-item.total{border-top:2px solid var(--accent-blue);color:var(--text-primary);font-weight:700;margin-top:.5rem;padding-top:1rem}.contribution-summary{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;margin-top:2rem;padding:1.5rem}.categories-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:1rem}.budget-pro .kpi-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:1rem}.budget-pro .kpi-card{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:10px;padding:1rem}.budget-pro .kpi-label{color:var(--text-secondary);font-size:.85rem;font-weight:600;margin-bottom:.25rem}.budget-pro .kpi-value{color:var(--text-primary);font-size:1.6rem;font-weight:800}.budget-pro .kpi-value.positive{color:var(--success-color)}.budget-pro .kpi-value.negative{color:var(--error-color)}.budget-pro .budget-table{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;overflow:hidden;width:100%}.budget-pro .table-header,.budget-pro .table-row{grid-gap:.75rem;align-items:center;display:grid;gap:.75rem;grid-template-columns:2fr 1fr 1fr 1fr 80px;padding:.75rem 1rem}.budget-pro .table-header{background:var(--secondary-bg);color:var(--text-primary);font-weight:700}.budget-pro .table-header,.budget-pro .table-row{border-bottom:1px solid var(--border-color)}.budget-pro .table-row:last-child{border-bottom:none}.budget-pro .type.income{color:var(--success-color);font-weight:600}.budget-pro .type.expense{color:var(--error-color);font-weight:600}.budget-pro .amount{color:var(--text-primary);font-weight:600}.budget-pro .amount.positive{color:var(--success-color)}.budget-pro .badge{background:#6ea8fe26;border:1px solid var(--accent-blue);border-radius:999px;color:var(--accent-blue);font-size:.75rem;justify-self:start;padding:.25rem .5rem}.budget-pro .amount-input-inline .numeric-input{min-width:160px}@media (max-width:768px){.budget-pro .table-header,.budget-pro .table-row{grid-template-columns:1.5fr .9fr 1fr 1fr 60px}.budget-pro .amount-input-inline .numeric-input{min-width:120px}}.category-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem;transition:all .2s ease}.category-card:hover{border-color:var(--accent-blue);transform:translateY(-2px)}.category-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.category-header h5{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0}.category-type{border-radius:4px;font-size:.75rem;font-weight:500;padding:.25rem .5rem;text-transform:uppercase}.category-type.income{background:#00c80533;color:var(--success-color)}.category-type.expense{background:#ff3b3033;color:var(--error-color)}.category-amount{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.amount-input{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:.9rem;padding:.5rem;width:100px}.amount-input:focus{border-color:var(--accent-blue);outline:none}.amount-label,.category-total{color:var(--text-secondary);font-size:.85rem}.category-total{font-weight:500}.expense-categories h4{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin-bottom:1rem}.summary-value.positive{color:var(--success-color)}.summary-value.negative{color:var(--error-color)}@media (max-width:768px){.tab-navigation{flex-wrap:wrap;gap:.25rem}.tab-button{font-size:.85rem;padding:.5rem 1rem}.categories-grid{grid-template-columns:1fr}.category-amount{align-items:flex-start;flex-direction:column;gap:.25rem}.amount-input{width:100%}}.portfolio-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.search-section{margin-bottom:1.5rem}.search-box{align-items:center;display:flex;gap:.5rem}.search-input{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;line-height:1.2;outline:none;padding:.75rem 1rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.search-input::placeholder{color:var(--text-secondary)}.search-input:focus{border-color:var(--accent-blue);box-shadow:0 0 0 2px #007bff1a}.search-spinner{margin-left:.25rem;opacity:.8}.search-results{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;margin-top:1rem;max-height:300px;overflow-y:auto}.search-result-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.75rem;transition:background-color .2s ease}.search-result-item:hover{background:var(--card-bg)}.search-result-item:last-child{border-bottom:none}.stock-info{display:flex;flex-direction:column;gap:.25rem}.stock-info strong{color:var(--text-primary);font-size:1rem}.stock-info span{color:var(--text-secondary);font-size:.85rem}.add-asset-form{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;margin-top:1rem;padding:1.5rem}.add-asset-form h4{color:var(--text-primary);margin-bottom:1rem}.portfolio-summary{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.portfolio-assets{display:flex;flex-direction:column;gap:1rem}.portfolio-asset{align-items:center;background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between;padding:1rem;transition:all .2s ease}.portfolio-asset:hover{border-color:var(--accent-blue);transform:translateY(-1px)}.asset-info h5{color:var(--text-primary);font-size:1rem;margin:0 0 .25rem}.asset-info p{color:var(--text-secondary);font-size:.85rem;margin:0}.asset-details{align-items:flex-end;display:flex;flex-direction:column;gap:.25rem}.asset-details span{color:var(--text-secondary);font-size:.85rem}.analysis-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.analysis-item{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem;text-align:center}.analysis-item h4{color:var(--text-primary);font-size:.9rem;font-weight:600;margin:0 0 .5rem}.analysis-item p{color:var(--text-primary);font-size:1.2rem;font-weight:700;margin:0}.projection-details{margin-top:2rem}.projection-table{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.table-header{background:var(--secondary-bg);color:var(--text-primary);font-weight:600;padding:1rem}.table-header,.table-row{border-bottom:1px solid var(--border-color);display:grid;grid-template-columns:1fr 1fr 1fr 1fr}.table-row{color:var(--text-secondary);padding:.75rem 1rem}.table-row:last-child{border-bottom:none}.table-row:hover{background:var(--secondary-bg)}.results-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.results-section h3{color:var(--text-primary);margin-bottom:1rem}.analysis-panel{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.metric-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.metric-card{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.5rem;padding:1rem}.metric-title{color:var(--text-secondary);font-size:.9rem;font-weight:600}.metric-value{font-size:1.6rem;font-weight:800}.metric-value.positive{color:var(--success-color)}.metric-value.negative{color:var(--error-color)}@media (max-width:768px){.analysis-grid{grid-template-columns:1fr}.table-header,.table-row{font-size:.85rem;grid-template-columns:1fr 1fr}.portfolio-asset{flex-direction:column;gap:.75rem}.asset-details,.portfolio-asset{align-items:flex-start}}.summary-breakdown{color:var(--text-secondary);display:block;font-size:.75rem;margin-top:.25rem;opacity:.8}.debt-table{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;margin-bottom:1.5rem;overflow:hidden}.debt-table table{border-collapse:collapse;width:100%}.debt-table th{background:var(--secondary-bg);color:var(--text-primary);font-weight:600;text-align:left}.debt-table td,.debt-table th{border-bottom:1px solid var(--border-color);padding:1rem}.debt-table td{color:var(--text-secondary)}.debt-table tr:last-child td{border-bottom:none}.debt-table tr:hover{background:var(--secondary-bg)}.debt-balance,.debt-name{color:var(--text-primary)!important;font-weight:600}.debt-balance.positive{color:var(--success-color)!important}.debt-rate{color:var(--accent-blue)!important}.debt-payment{color:var(--text-primary)!important}.debt-payoff{color:var(--text-secondary)!important}.actions{display:flex;gap:.5rem}.strategy-info{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.strategy-info p{color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.strategy-info p:last-child{margin-bottom:0}.strategy-info strong{color:var(--text-primary)}@media (max-width:768px){.debt-table{overflow-x:auto}.debt-table table{min-width:600px}.actions{flex-direction:column;gap:.5rem}}.auto-calculated{color:#6ea8fe;font-size:.9em;font-weight:400}.help-text{color:#94a3b8;display:block;font-size:.8em;margin-top:4px}input.readonly{background-color:#374151;color:#9ca3af;cursor:not-allowed}input.readonly:focus{border-color:#6b7280;box-shadow:none;outline:none}.cash-flow-summary{background:var(--card-bg);margin-bottom:1.5rem;padding:1rem}.cash-flow-summary .summary-item{font-size:.9rem;margin-bottom:.5rem}.cash-flow-summary .summary-item:last-child{border-top:1px solid var(--border-color);font-weight:600;margin-bottom:0;padding-top:.5rem}.allocation-controls,.allocation-summary{margin-bottom:1.5rem;padding:1rem}.allocation-summary{align-items:center;background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between}.allocation-summary span{color:var(--text-color);font-size:1rem}.allocation-summary strong{color:var(--accent-color);font-size:1.1rem}.allocation-warning{color:#ff3b30!important;font-size:.9rem;font-weight:500}.education-section{margin:0 auto;max-width:1200px;padding:2rem}.education-section h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent-purple),var(--accent-purple-2));-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center}.category-filter{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:2rem}.category-btn{background:var(--card-bg);border:2px solid var(--border-color);border-radius:25px;color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .3s ease}.category-btn.active,.category-btn:hover{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.education-content{grid-gap:2rem;display:grid;gap:2rem}.education-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 6px 12px #0000001a;margin-bottom:2rem;padding:2.5rem;transition:all .3s ease}.education-card:hover{border-color:var(--accent-color);box-shadow:0 12px 24px #00000026;transform:translateY(-3px)}.education-card:last-child{margin-bottom:0}.card-header{align-items:flex-start;gap:1rem}.card-header h3{color:var(--text-primary);flex:1 1;font-size:1.3rem;font-weight:600;margin:0}.category-tag{background:var(--accent-color);border-radius:15px;color:#fff;font-size:.8rem;font-weight:500;padding:.25rem .75rem;white-space:nowrap}.summary{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.article-content{background:var(--bg-color);border-top:1px solid var(--border-color);margin-top:2rem;padding:2rem}.article-content h3{font-size:1.8rem;font-weight:700;margin-bottom:2.5rem;padding-bottom:1rem;text-align:center}.article-content h3,.article-content h4{border-bottom:1px solid var(--border-color);color:var(--text-primary)}.article-content h4{font-size:1.4rem;font-weight:600;margin:2.5rem 0 1.5rem;padding-bottom:.5rem}.article-content h5{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:2rem 0 1rem}.article-content p{color:var(--text-secondary);font-size:1rem;line-height:1.8;margin-bottom:1.5rem}.article-content ol,.article-content ul{color:var(--text-secondary);line-height:1.8;margin:1.5rem 0 2rem;padding-left:2rem}.article-content li{font-size:1rem;line-height:1.6;margin-bottom:.75rem}.article-content strong{color:var(--text-primary);font-weight:600}.article-content table{border-collapse:collapse;margin:2rem 0;width:100%}.article-content table th{background:var(--secondary-bg)!important;border-bottom:2px solid var(--border-color);color:var(--text-primary)!important;font-weight:600;padding:.75rem!important;text-align:left}.article-content table td{border-bottom:1px solid var(--border-color);padding:.75rem!important;text-align:left;vertical-align:top}.article-content table tr:last-child td{border-bottom:none}.articles-section .btn-secondary{background:#007bff;background:var(--accent-blue,#007bff);border:none;border-radius:6px;color:#fff;font-size:.95rem;font-weight:500;margin-bottom:.5rem;padding:.5rem 1.25rem;transition:background .2s ease,transform .1s ease}.articles-section .btn-secondary:focus,.articles-section .btn-secondary:hover{background:#0056b3;color:#fff;transform:translateY(-1px)}.getting-started-section{margin:2rem 0}.getting-started-content{padding:1.5rem;text-align:center}.getting-started-content p{color:#666;color:var(--text-secondary,#666);font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem}.getting-started-tips{background:#f8f9fa;border-left:4px solid #007bff;border-left:4px solid var(--accent-blue,#007bff);border-radius:8px;margin-top:2rem;padding:1.5rem;text-align:left}.getting-started-tips h4{color:#333;color:var(--text-primary,#333);font-size:1.1rem;margin:0 0 1rem}.getting-started-tips ul{margin:0;padding-left:1.5rem}.getting-started-tips li{color:#666;color:var(--text-secondary,#666);line-height:1.5;margin-bottom:.5rem}.btn-primary{background:#007bff;background:var(--accent-blue,#007bff);border-radius:6px;display:inline-block;font-weight:500;margin:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:background .2s ease,transform .1s ease}.btn-primary:focus,.btn-primary:hover{background:#0056b3;color:#fff;text-decoration:none;transform:translateY(-1px)}.chatbot-toggle{align-items:center;background:#007bff;background:var(--accent-blue,#007bff);border:none;border-radius:50%;bottom:2rem;box-shadow:0 4px 12px #007bff4d;color:#fff;display:flex;font-size:1.5rem;height:60px;justify-content:center;overflow:hidden;position:fixed;right:2rem;transition:all .3s ease;width:60px;z-index:1000}.toggle-avatar{border-radius:50%;height:100%;object-fit:cover;width:100%}.chatbot-toggle:hover{box-shadow:0 6px 20px #007bff66;transform:scale(1.1)}.chatbot-sidebar{animation:slideIn .3s ease-out;border-left:1px solid #e0e0e0;border-left:1px solid var(--border-color,#e0e0e0);box-shadow:-4px 0 20px #0000001a;flex-direction:column;height:100vh;position:fixed;right:0;top:0;width:400px;z-index:999}.chatbot-header,.chatbot-sidebar{background:#fff;background:var(--card-bg,#fff);display:flex}.chatbot-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);gap:.5rem;justify-content:space-between;padding:1rem}.chatbot-avatar{align-items:center;display:flex;gap:.5rem}.chatbot-header h3{color:#333;color:var(--text-primary,#333);flex:1 1;font-size:1.1rem;font-weight:600;margin:0}.chatbot-header-actions{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.save-retrain-btn{background:#ffffff26;border:1px solid #fff3;border-radius:6px;color:#fff;flex-shrink:0;font-size:.8rem;padding:.4rem .8rem;transition:all .2s ease;white-space:nowrap}.save-retrain-btn:hover:not(:disabled){background:#ffffff40;border-color:#ffffff4d}.save-retrain-btn:disabled{opacity:.6}.chatbot-close{align-items:center;background:none;border:none;border-radius:4px;color:#fff;display:flex;flex-shrink:0;font-size:1.2rem;height:32px;justify-content:center;min-width:32px;padding:.5rem;transition:background .2s}.chatbot-close:hover{background:#ffffff1a}.chatbot-messages{display:flex;flex:1 1;flex-direction:column;gap:1rem;min-height:0;overflow-y:auto;padding:1rem}.chatbot-message{display:flex;gap:.5rem;margin-bottom:.5rem}.chatbot-message.user{justify-content:flex-end}.chatbot-message.bot{justify-content:flex-start}.message-avatar{flex-shrink:0;margin-top:.25rem}.message-avatar-img{border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:50%;height:32px;object-fit:cover;width:32px}.chatbot-message .message-content{border-radius:12px;font-size:.9rem;line-height:1.4;max-width:80%;padding:.75rem 1rem}.chatbot-message.user .message-content{background:#007bff;background:var(--accent-blue,#007bff);border-bottom-right-radius:4px;color:#fff}.chatbot-message.bot .message-content{background:#fff!important;border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-bottom-left-radius:4px;color:#111!important}.chatbot-message .message-content p{margin:0 0 .5rem}.chatbot-message .message-content p:last-child{margin-bottom:0}.typing-indicator{display:flex;gap:.25rem;padding:.5rem}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background:#666;background:var(--text-secondary,#666);border-radius:50%;height:8px;width:8px}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chatbot-input{align-items:flex-end;border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);display:flex;gap:.5rem;padding:1rem}.chatbot-input,.chatbot-input textarea{background:#fff;background:var(--card-bg,#fff)}.chatbot-input textarea{border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;color:#333;color:var(--text-primary,#333);flex:1 1;font-family:inherit;font-size:.9rem;padding:.75rem;resize:none}.chatbot-input textarea:focus{border-color:#007bff;border-color:var(--accent-blue,#007bff);box-shadow:0 0 0 2px #007bff1a;outline:none}.chatbot-input textarea:disabled{background:#f8f9fa;background:var(--background,#f8f9fa);color:#666;color:var(--text-secondary,#666)}.send-button{align-items:center;background:#007bff;background:var(--accent-blue,#007bff);border:none;border-radius:8px;color:#fff;display:flex;font-size:1.1rem;height:40px;justify-content:center;transition:background .2s;width:40px}.send-button:hover:not(:disabled){background:#0056b3}.send-button:disabled{background:#ccc;background:var(--text-secondary,#ccc)}@media (max-width:768px){.chatbot-sidebar{height:100vh;width:100vw}.chatbot-toggle{bottom:1rem;font-size:1.2rem;height:50px;right:1rem;width:50px}}.advisor-avatar-cartoon,.message-avatar-cartoon,.toggle-avatar-cartoon{align-items:center;display:flex;justify-content:center;position:relative}.avatar-face{background:#fff;border:2px solid #007bff;border:2px solid var(--accent-blue,#007bff);border-radius:50%;overflow:hidden;position:relative;z-index:2}.avatar-face-img{border-radius:50%;height:100%;object-fit:cover;width:100%}.advisor-avatar-cartoon{height:50px;width:50px}.advisor-avatar-cartoon .avatar-face,.message-avatar-cartoon{height:40px;width:40px}.message-avatar-cartoon .avatar-face{height:32px;width:32px}.toggle-avatar-cartoon{height:60px;width:60px}.toggle-avatar-cartoon .avatar-face{height:50px;width:50px}.net-worth-chart-section{margin-bottom:3rem}.net-worth-chart-section .section-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.net-worth-chart-section .section-header{border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;padding-bottom:1rem}.net-worth-chart-section .section-header h2{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.net-worth-chart-section .section-header p{color:var(--text-secondary);font-size:.9rem;margin:0}.chart-container{margin-bottom:1.5rem}.chart-container,.chart-summary{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.chart-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0}.summary-item span:first-child{color:var(--text-secondary);font-size:.9rem;font-weight:500}.summary-item .amount{color:var(--text-primary);font-size:1rem;font-weight:600}.summary-item .amount.positive{color:var(--success-color)}.summary-item .amount.negative{color:var(--error-color)}@media (max-width:768px){.net-worth-chart-section .section-header h2{font-size:1.1rem}.chart-summary{gap:.5rem;grid-template-columns:1fr}.summary-item{align-items:flex-start;flex-direction:column;gap:.25rem}.summary-item .amount{font-size:.9rem}}.priority-section{margin:20px 0}.priority-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:16px}.priority-card{align-items:center;background:var(--card-bg);border-left:4px solid;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:16px;padding:16px}.priority-card.high{background:linear-gradient(135deg,#dc35451a,#dc35450d);border-left-color:var(--error-color)}.priority-card.medium{background:linear-gradient(135deg,#ffc1071a,#ffc1070d);border-left-color:var(--warning-color)}.priority-card.low{background:linear-gradient(135deg,#28a7451a,#28a7450d);border-left-color:var(--success-color)}.priority-number{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:1.2em;font-weight:700;height:40px;justify-content:center;width:40px}.priority-card.high .priority-number{background:var(--error-color)}.priority-card.medium .priority-number{background:var(--warning-color)}.priority-card.low .priority-number{background:var(--success-color)}.priority-info h5{font-size:1em;margin:0 0 4px}.priority-info p{color:var(--text-secondary);font-size:.9em;margin:0 0 4px}.priority-info small{color:var(--text-secondary);font-size:.8em}.debt-priority{text-align:center}.priority-badge{border-radius:12px;font-size:.8em;font-weight:500;padding:4px 8px;text-transform:uppercase}.priority-badge.high{background:var(--error-color);color:#fff}.priority-badge.medium{background:var(--warning-color);color:#fff}.priority-badge.low{background:var(--success-color);color:#fff}.credit-cards-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:20px}.credit-card-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px}.card-header{margin-bottom:16px;padding-bottom:12px}.card-header h4{color:var(--text-primary);font-size:1.1em;margin:0}.utilization-badge{border-radius:12px;font-size:.8em;font-weight:500;padding:4px 8px}.utilization-badge.critical{background:var(--error-color);color:#fff}.utilization-badge.high{background:var(--warning-color);color:#fff}.utilization-badge.moderate{background:#ffc107;color:#000}.utilization-badge.good{background:var(--success-color);color:#fff}.card-details{margin-bottom:16px}.detail-row{padding:8px 0}.detail-row span:first-child{font-size:.9em}.detail-row span:last-child{color:var(--text-primary);font-weight:500}.detail-row .balance{color:var(--accent-blue);font-weight:600}.detail-row .rate{color:var(--warning-color);font-weight:600}.card-actions{display:flex;gap:8px;justify-content:flex-end}.modal-overlay{background:#00000080}.modal-content{box-shadow:0 4px 20px #0000004d;max-width:600px;padding:0}.modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:20px;padding:20px 20px 0}.modal-header h3{color:var(--text-primary);margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.5em;height:30px;justify-content:center;padding:0;transition:all .2s ease;width:30px}.modal-close:hover{background:var(--border-color);color:var(--text-primary)}.debt-table tr.high{background:linear-gradient(90deg,#dc35450d,#0000)}.debt-table tr.medium{background:linear-gradient(90deg,#ffc1070d,#0000)}.debt-table tr.low{background:linear-gradient(90deg,#28a7450d,#0000)}.summary-breakdown.warning{color:var(--warning-color);font-weight:500}.summary-value.critical{color:var(--error-color)}.summary-value.high{color:var(--warning-color)}.summary-value.moderate{color:#ffc107}.summary-value.good{color:var(--success-color)}@media (max-width:768px){.credit-cards-grid,.priority-cards{grid-template-columns:1fr}.modal-content{margin:20px;width:95%}.card-header{gap:8px}.card-header,.detail-row{align-items:flex-start;flex-direction:column}.detail-row{gap:4px}}.debt-analysis{padding:20px 0}.analysis-header{margin-bottom:30px;text-align:center}.analysis-header h2{color:var(--text-primary);font-size:2rem;margin-bottom:10px}.analysis-header p{color:var(--text-secondary);font-size:1.1rem}.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.metric-card{background:var(--card-bg);border:2px solid;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:20px;text-align:center}.metric-card.critical{background:linear-gradient(135deg,#ef44441a,#ef44440d);border-color:var(--error-color)}.metric-card.warning{background:linear-gradient(135deg,#f973161a,#f973160d);border-color:var(--warning-color)}.metric-card.info{background:linear-gradient(135deg,#007aff1a,#007aff0d);border-color:var(--accent-blue)}.metric-card.success{background:linear-gradient(135deg,#22c55e1a,#22c55e0d);border-color:var(--success-color)}.metric-card h3{color:var(--text-secondary);font-size:1rem;margin:0 0 10px}.metric-value{color:var(--text-primary);font-size:2rem;font-weight:700;margin:0 0 10px}.metric-card small{color:var(--text-secondary);font-size:.9rem}.charts-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:30px}.chart-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px}.chart-card.full-width{grid-column:1/-1}.chart-card h3{color:var(--text-primary);font-size:1.2rem;margin:0 0 20px;text-align:center}.chart-container{height:300px}.scenario-controls{margin-bottom:20px}.scenario-selector{align-items:center;display:flex;flex-direction:column;gap:10px}.scenario-selector select{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:1rem;min-width:200px;padding:8px 12px}.scenario-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.scenario-btn{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:20px;color:var(--text-primary);cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .2s ease}.scenario-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.scenario-btn:hover{background:var(--primary-hover);color:#fff}.insights-section{margin-bottom:30px}.insights-section h3{color:var(--text-primary);font-size:1.5rem;margin-bottom:20px}.insights-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.insight-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px}.insight-card h4{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:1.1rem;margin:0 0 15px;padding-bottom:10px}.insight-details p{color:var(--text-secondary);font-size:.9rem;margin:8px 0}.insight-details strong{color:var(--text-primary)}.warning-text{color:var(--error-color)!important;font-weight:500}.recommendations-section{margin-bottom:30px}.recommendations-section h3{color:var(--text-primary);font-size:1.5rem;margin-bottom:20px}.recommendations-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.recommendation-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px;text-align:center}.recommendation-card h4{color:var(--text-primary);font-size:1.1rem;margin:0 0 15px}.recommendation-card p{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}.impact-alert{background:var(--card-bg);border-left:4px solid;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:20px}.impact-alert.critical{background:linear-gradient(135deg,#ef44441a,#ef44440d);border-left-color:var(--error-color)}.impact-alert h4{color:var(--text-primary);font-size:1.2rem;margin:0 0 10px}.impact-alert p{color:var(--text-secondary);line-height:1.5;margin:8px 0}.impact-alert strong{color:var(--error-color);font-weight:600}.projection-info{border-top:1px solid var(--border-color);margin-top:8px;padding-top:8px}.projection-info small{color:var(--text-secondary);display:block;font-size:.8rem;margin:2px 0}.debt-interest{color:var(--error-color);font-weight:600}.debt-total-interest{color:var(--warning-color);font-weight:600}.interest-expense{color:var(--error-color);font-weight:600}.total-interest{color:var(--warning-color);font-weight:600}@media (max-width:768px){.charts-grid,.insights-grid,.metrics-grid,.recommendations-grid{grid-template-columns:1fr}.scenario-buttons{align-items:center;flex-direction:column}.scenario-btn{max-width:200px;width:100%}.chart-container{height:250px}}.numeric-input,.percentage-input{display:flex;flex-direction:column;gap:.35rem;width:100%}.numeric-input-container,.percentage-input-container{align-items:center;background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;padding:.6rem .75rem;position:relative;transition:border-color .2s ease,box-shadow .2s ease}.numeric-input-container:focus-within,.percentage-input-container:focus-within{border-color:#00c805;box-shadow:0 0 0 3px #00c80526}.numeric-input-field,.percentage-input-field{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:1rem;outline:none}.numeric-input-field::placeholder,.percentage-input-field::placeholder{color:var(--text-secondary)}.numeric-input-field::-webkit-inner-spin-button,.numeric-input-field::-webkit-outer-spin-button,.percentage-input-field::-webkit-inner-spin-button,.percentage-input-field::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.numeric-input-field{-moz-appearance:textfield}.numeric-input-suffix,.percentage-input-suffix{color:var(--text-secondary);font-weight:500;margin-left:.4rem}.numeric-input-controls,.percentage-input-controls{display:flex;flex-direction:column;gap:2px;margin-left:.4rem}.numeric-input-btn,.percentage-input-btn{-webkit-appearance:none;appearance:none;background:#1c2033;background:var(--tertiary-bg,#1c2033);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:10px;height:18px;line-height:16px;transition:background .15s ease,color .15s ease,border-color .15s ease;width:22px}.numeric-input-btn:hover:not(:disabled),.percentage-input-btn:hover:not(:disabled){background:#232947;color:#e6e6e6}.numeric-input-btn:disabled,.percentage-input-btn:disabled{opacity:.5}.numeric-input small,.percentage-input small{color:var(--text-secondary)}.currency-input-wrapper{display:flex;flex-direction:column;gap:.25rem;width:100%}.currency-input-field{align-items:center;background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:none;display:flex;padding:.6rem .75rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.currency-input-field.focused{border-color:#00c805;box-shadow:0 0 0 3px #00c80526}.currency-symbol{color:var(--text-secondary);font-size:1.1rem;font-weight:500;margin-right:.25rem}.currency-input-inner{appearance:none!important;-webkit-appearance:none!important;-moz-appearance:textfield!important;background:#0000!important;border:none!important;box-shadow:none!important;color:var(--text-primary)!important;direction:ltr!important;font-size:1rem!important;outline:none!important;padding:0!important;text-align:left!important;width:100%!important}.currency-input-inner::placeholder{color:var(--text-secondary)!important;font-size:1rem!important}.currency-input-inner[type=number]::-webkit-inner-spin-button,.currency-input-inner[type=number]::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0!important}.currency-input-inner[type=number]{-moz-appearance:textfield!important}.currency-input-inner:-webkit-autofill{-webkit-text-fill-color:var(--text-primary)!important;-webkit-box-shadow:0 0 0 1000px var(--secondary-bg) inset!important;caret-color:var(--text-primary)!important}.currency-input-inner:-moz-autofill{-moz-text-fill-color:var(--text-primary)!important;box-shadow:0 0 0 1000px var(--secondary-bg) inset!important;caret-color:var(--text-primary)!important}.currency-helper-text{color:var(--text-secondary);font-size:.92rem;margin-left:.25rem}.stock-analysis-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.stock-analysis-modal{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 10px 30px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:800px;padding:2rem;width:90%}.stock-analysis-content{margin-right:-1rem;overflow-y:auto;padding-right:1rem}.analysis-text{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;font-family:monospace;font-size:1rem;margin-bottom:1rem;padding:1rem;white-space:pre-wrap}.close-btn{background:#0000;border:none;color:#666;color:var(--text-secondary,#666);font-size:2rem;position:absolute;right:1rem;top:1rem;transition:color .2s}.close-btn:hover{color:#007bff;color:var(--accent-blue,#007bff)}.advisor-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.advisor-avatar{border:3px solid #007bff;border:3px solid var(--accent-blue,#007bff);border-radius:50%;box-shadow:0 4px 12px #007bff26;height:56px;object-fit:cover;width:56px}.stock-analysis-modal h2{color:#333;color:var(--text-primary,#333);font-size:1.3rem;font-weight:700;margin:0}.stock-analysis-modal h3{color:#007bff;color:var(--accent-blue,#007bff);font-size:1.1rem;font-weight:600;margin-bottom:1rem}.analysis-summary{background:#f8f9fa;background:var(--input-bg,#f8f9fa);border-radius:8px;color:#444;color:var(--text-secondary,#444);font-size:1rem;margin-bottom:1.5rem;padding:1rem}.estimate-options{gap:1rem}.estimate-card,.estimate-options{display:flex;flex-direction:column}.estimate-card{align-items:flex-start;background:#f8f9fa;background:var(--input-bg,#f8f9fa);border:1.5px solid #e0e0e0;border:1.5px solid var(--border-color,#e0e0e0);border-radius:10px;box-shadow:0 2px 8px #0000000a;padding:1rem 1.5rem}.estimate-card h4{font-size:1rem;font-weight:600;margin:0 0 .5rem}.estimate-value{color:#007bff;color:var(--accent-blue,#007bff);font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.estimate-desc{color:#666;color:var(--text-secondary,#666);font-size:.95rem;margin-bottom:.75rem}.select-estimate-btn{background:#007bff;background:var(--accent-blue,#007bff);border:none;border-radius:6px;color:#fff;font-size:1rem;font-weight:600;padding:.5rem 1.25rem;transition:background .2s,transform .2s}.select-estimate-btn:hover{background:#0056b3;background:var(--accent-blue-dark,#0056b3);transform:translateY(-2px)}.analysis-loading{color:#007bff;color:var(--accent-blue,#007bff);font-size:1.1rem;margin:2rem 0;text-align:center}@media (max-width:600px){.stock-analysis-modal{padding:1rem .5rem}.advisor-header h2{font-size:1rem}.estimate-card{padding:.75rem .5rem}}.notification-container{display:flex;flex-direction:column;gap:1rem;max-width:400px;position:fixed;right:20px;top:20px;z-index:1001}.notification{animation:slideIn .3s ease-out;border-left:4px solid var(--accent-blue);border-radius:12px;box-shadow:var(--shadow-hover);max-width:100%}.notification.info{border-left-color:var(--accent-blue)}.notification-content{display:flex;flex-direction:column;gap:.75rem}.notification-header{align-items:center;display:flex;justify-content:space-between}.notification-icon{font-size:1.25rem}.notification-close{align-items:center;background:none;border:none;border-radius:4px;color:var(--text-muted);display:flex;font-size:1.5rem;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.notification-close:hover{background:var(--secondary-bg);color:var(--text-primary)}.notification-body{display:flex;flex-direction:column;gap:.25rem}.notification-title{color:var(--text-primary);font-size:.9rem;font-weight:600;margin:0}.notification-message{color:var(--text-secondary);font-size:.8rem;line-height:1.4;margin:0}@keyframes slideOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}.notification.removing{animation:slideOut .3s ease-in forwards}@media (max-width:768px){.notification-container{left:10px;max-width:none;right:10px;top:10px}.notification{padding:.75rem}.notification-title{font-size:.85rem}.notification-message{font-size:.75rem}}@media (prefers-color-scheme:dark){.notification{background:var(--card-bg);border-color:var(--border-color)}}.advisor-selection-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.advisor-selection-modal{animation:slideUp .3s ease-out;background:#fff;background:var(--card-bg,#fff);border-radius:16px;box-shadow:0 20px 40px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;padding:2rem;width:90%}.advisor-selection-header{margin-bottom:2rem;text-align:center}.advisor-selection-header h2{color:#333;color:var(--text-primary,#333);font-size:1.8rem;font-weight:700;margin-bottom:.5rem}.advisor-selection-header p{color:#666;color:var(--text-secondary,#666);font-size:1rem;margin:0}.advisor-options{margin-bottom:2rem}.advisor-card{background:#fff;background:var(--card-bg,#fff);border:2px solid #e0e0e0;border:2px solid var(--border-color,#e0e0e0);border-radius:12px;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s ease}.advisor-card:hover{border-color:#007bff;border-color:var(--accent-blue,#007bff);box-shadow:0 8px 24px #007bff26;transform:translateY(-2px)}.advisor-card:before{background:linear-gradient(90deg,#007bff,#28a745);background:linear-gradient(90deg,var(--accent-blue,#007bff),var(--accent-green,#28a745));content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.advisor-card:hover:before{opacity:1}.advisor-portrait{margin-bottom:1.5rem;text-align:center}.advisor-portrait-img{border:4px solid #007bff;border:4px solid var(--accent-blue,#007bff);border-radius:50%;box-shadow:0 8px 16px #007bff33;height:120px;object-fit:cover;transition:transform .3s ease;width:120px}.advisor-card:hover .advisor-portrait-img{transform:scale(1.05)}.advisor-info{margin-bottom:1.5rem;text-align:center}.advisor-info h3{color:#333;color:var(--text-primary,#333);font-size:1.4rem;font-weight:600;margin-bottom:.5rem}.advisor-title{color:#007bff;color:var(--accent-blue,#007bff);font-size:1rem;font-weight:500;letter-spacing:.5px;margin-bottom:1rem;text-transform:uppercase}.advisor-description{color:#666;color:var(--text-secondary,#666);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.advisor-specialties{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.specialty-tag{border-radius:20px;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.select-advisor-btn,.specialty-tag{background:#007bff;background:var(--accent-blue,#007bff);color:#fff;letter-spacing:.5px;text-transform:uppercase}.select-advisor-btn{border:none;border-radius:8px;font-size:1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.select-advisor-btn:hover{background:#0056b3;background:var(--accent-blue-dark,#0056b3);box-shadow:0 4px 12px #007bff4d;transform:translateY(-1px)}.advisor-selection-footer{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);padding-top:1.5rem;text-align:center}.skip-btn{background:#0000;border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;color:#666;color:var(--text-secondary,#666);font-size:.9rem;margin-bottom:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.skip-btn:hover{background:#e0e0e0;background:var(--border-color,#e0e0e0);color:#333;color:var(--text-primary,#333)}.skip-note{color:#666;color:var(--text-secondary,#666);font-size:.8rem;margin:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (prefers-color-scheme:dark){.advisor-selection-modal{background:#2a2a2a;background:var(--card-bg-dark,#2a2a2a)}.advisor-selection-header h2,.advisor-selection-modal{color:#fff;color:var(--text-primary-dark,#fff)}.advisor-selection-header p{color:#ccc;color:var(--text-secondary-dark,#ccc)}.advisor-card{background:#2a2a2a;background:var(--card-bg-dark,#2a2a2a);border-color:#444;border-color:var(--border-color-dark,#444)}.advisor-info h3{color:#fff;color:var(--text-primary-dark,#fff)}.advisor-description,.skip-btn{color:#ccc;color:var(--text-secondary-dark,#ccc)}.skip-btn{border-color:#444;border-color:var(--border-color-dark,#444)}.skip-btn:hover{background:#444;background:var(--border-color-dark,#444);color:#fff;color:var(--text-primary-dark,#fff)}.skip-note{color:#ccc;color:var(--text-secondary-dark,#ccc)}}@media (max-width:768px){.advisor-selection-modal{margin:1rem;padding:1.5rem}.advisor-selection-header h2{font-size:1.5rem}.advisor-portrait-img{height:100px;width:100px}.advisor-info h3{font-size:1.2rem}.advisor-specialties{gap:.25rem}.specialty-tag{font-size:.7rem;padding:.2rem .5rem}}.about-author-container{margin:0 auto;max-width:1200px;padding:20px}.author-profile-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow);margin-bottom:30px;padding:32px;transition:all .3s ease}.author-profile-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.author-header{align-items:center;display:flex;flex-wrap:wrap;gap:24px}.author-avatar{border:4px solid var(--accent-main);border-radius:50%;box-shadow:0 8px 25px #9d4edd4d;height:120px;overflow:hidden;position:relative;width:120px}.author-avatar img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.author-avatar:hover img{transform:scale(1.05)}.avatar-fallback{align-items:center;background:linear-gradient(135deg,var(--accent-main),var(--accent-hover));color:#fff;display:none;display:flex;font-size:2.5rem;font-weight:700;height:100%;justify-content:center;width:100%}.author-info{flex:1 1;min-width:300px}.author-info h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent-main),#c084fc);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:8px}.author-title{color:var(--accent-main);font-size:1.3rem;font-weight:600;margin-bottom:12px}.author-tagline{color:var(--text-secondary);font-size:1.1rem;line-height:1.6;margin-bottom:16px}.author-location{align-items:center;color:var(--text-muted);display:flex;font-size:.9rem;gap:8px;margin-bottom:12px}.location-icon{font-size:1rem}.author-contact{color:var(--text-secondary);display:flex;flex-direction:column;font-size:.9rem;gap:6px}.author-contact span{align-items:center;display:flex;gap:8px}.tab-content{margin-top:30px}.about-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.about-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow);padding:24px;transition:all .3s ease}.about-card:hover{border-color:var(--accent-main);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.about-card h3{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:16px}.about-card p{color:var(--text-secondary);font-size:1rem;line-height:1.6}.expertise-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.expertise-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow);padding:24px;transition:all .3s ease}.expertise-card:hover{border-color:var(--accent-main);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.expertise-card h3{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:20px;text-align:center}.skills-list{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.skill-tag{background:linear-gradient(135deg,var(--accent-main),var(--accent-hover));border-radius:20px;color:#fff;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .3s ease}.skill-tag:hover{box-shadow:0 4px 12px #9d4edd66;transform:translateY(-2px)}.resume-grid{grid-gap:32px;display:grid;gap:32px}.resume-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow);padding:28px;transition:all .3s ease}.resume-section:hover{border-color:var(--accent-main);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.resume-section h3{border-bottom:2px solid var(--accent-main);color:var(--text-primary);font-size:1.4rem;font-weight:600;margin-bottom:24px;padding-bottom:12px}.experience-list{grid-gap:24px;display:grid;gap:24px}.experience-item{background:var(--bg-secondary);border-left:4px solid var(--accent-main);border-radius:8px;padding:20px;transition:all .3s ease}.experience-item:hover{box-shadow:0 4px 12px #9d4edd33;transform:translateX(4px)}.experience-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.experience-header h4{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0}.company{color:var(--accent-main);font-size:1rem;font-weight:500}.location,.period{background:var(--bg-tertiary);border-radius:4px;color:var(--text-muted);font-size:.9rem;padding:4px 8px}.experience-item p{color:var(--text-secondary);line-height:1.6;margin:0}.education-list{grid-gap:20px;display:grid;gap:20px}.education-item{background:var(--bg-secondary);border-left:4px solid var(--accent-main);border-radius:8px;padding:20px;transition:all .3s ease}.education-item:hover{box-shadow:0 4px 12px #9d4edd33;transform:translateX(4px)}.education-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.education-header h4{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0}.institution{color:var(--accent-main);font-size:1rem;font-weight:500}.education-item p{color:var(--text-secondary);line-height:1.6;margin:0}.certification-list{grid-gap:20px;display:grid;gap:20px}.certification-item{background:var(--bg-secondary);border-left:4px solid var(--accent-main);border-radius:8px;padding:20px;transition:all .3s ease}.certification-item:hover{box-shadow:0 4px 12px #9d4edd33;transform:translateX(4px)}.certification-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.certification-header h4{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0}.issuer{color:var(--accent-main);font-size:1rem;font-weight:500}.certification-item p{color:var(--text-secondary);line-height:1.6;margin:0}.patent-list{grid-gap:20px;display:grid;gap:20px}.patent-item{background:var(--bg-secondary);border-left:4px solid var(--accent-main);border-radius:8px;padding:20px;transition:all .3s ease}.patent-item:hover{box-shadow:0 4px 12px #9d4edd33;transform:translateX(4px)}.patent-header{margin-bottom:12px}.patent-header h4{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0}.patent-link{color:var(--accent-main);text-decoration:none;transition:all .3s ease}.patent-link:hover{color:var(--accent-hover);text-decoration:underline}.patent-item p{color:var(--text-secondary);line-height:1.6;margin:0}.skills-grid{display:flex;flex-wrap:wrap;gap:12px}.resume-skill-tag{background:linear-gradient(135deg,var(--accent-main),var(--accent-hover));border:1px solid #0000;border-radius:25px;color:#fff;font-size:.95rem;font-weight:500;padding:10px 18px;transition:all .3s ease}.resume-skill-tag:hover{border-color:#fff3;box-shadow:0 6px 16px #9d4edd66;transform:translateY(-2px)}.achievements-list{grid-gap:20px;display:grid;gap:20px;margin-bottom:32px}.achievement-item{align-items:flex-start;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow);display:flex;gap:16px;padding:20px;transition:all .3s ease}.achievement-item:hover{border-color:var(--accent-main);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.achievement-icon{flex-shrink:0;font-size:1.5rem}.achievement-content p{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin:0}.achievement-highlight{background:linear-gradient(135deg,var(--accent-main),var(--accent-hover));border-radius:12px;color:#fff;padding:28px;text-align:center}.achievement-highlight h3{font-size:1.4rem;font-weight:600;margin-bottom:16px}.achievement-highlight p{font-size:1.1rem;line-height:1.6;opacity:.95}.contact-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.contact-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow);padding:28px;transition:all .3s ease}.contact-card:hover{border-color:var(--accent-main);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.contact-card h3{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:16px}.contact-card p{color:var(--text-secondary);line-height:1.6;margin-bottom:20px}.contact-info{grid-gap:12px;display:grid;gap:12px}.contact-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.95rem;gap:12px}.contact-icon{color:var(--accent-main);font-size:1.1rem}.social-links{grid-gap:12px;display:grid;gap:12px}.social-link{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);display:flex;gap:12px;padding:12px 16px;text-decoration:none;transition:all .3s ease}.social-link:hover{background:var(--accent-main);box-shadow:0 4px 12px #9d4edd66;color:#fff;transform:translateY(-2px)}.social-icon{font-size:1.2rem}.cta-section{margin-top:40px}.cta-card{background:linear-gradient(135deg,var(--accent-main),var(--accent-hover));border-radius:16px;color:#fff;overflow:hidden;padding:40px;position:relative;text-align:center}.cta-card:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='a' width='100' height='100' patternUnits='userSpaceOnUse'%3E%3Ccircle cx='25' cy='25' r='1' fill='%23fff' opacity='.1'/%3E%3Ccircle cx='75' cy='75' r='1' fill='%23fff' opacity='.1'/%3E%3Ccircle cx='50' cy='10' r='.5' fill='%23fff' opacity='.1'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");bottom:0;content:"";left:0;opacity:.3;position:absolute;right:0;top:0}.cta-card h3{font-size:1.8rem;font-weight:700;margin-bottom:16px}.cta-card h3,.cta-card p{position:relative;z-index:1}.cta-card p{font-size:1.1rem;line-height:1.6;margin-bottom:24px;opacity:.95}.cta-buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;position:relative;z-index:1}@media (max-width:768px){.about-author-container{padding:16px}.author-header{flex-direction:column;text-align:center}.author-info h2{font-size:2rem}.author-title{font-size:1.1rem}.about-grid,.contact-grid,.expertise-grid{grid-template-columns:1fr}.cta-buttons{flex-direction:column}.cta-card{padding:32px 24px}.cta-card h3{font-size:1.5rem}}@media (max-width:480px){.author-avatar{height:100px;width:100px}.author-info h2{font-size:1.8rem}.achievement-item{flex-direction:column;text-align:center}.achievement-icon{align-self:center}.skills-list{justify-content:center}.skill-tag{font-size:.85rem;padding:6px 12px}.resume-skill-tag{font-size:.9rem;padding:8px 14px}.certification-header,.education-header,.experience-header{align-items:flex-start;flex-direction:column;gap:8px}.author-contact{font-size:.85rem}}.feedback-container{margin:0 auto;max-width:1200px;padding:20px}.success-message{animation:slideIn .3s ease;background:linear-gradient(135deg,var(--success-color),#22c55e);border-radius:12px;color:#fff;font-weight:600;margin-bottom:24px;padding:16px 24px;text-align:center}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.feedback-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;margin-top:30px}.feedback-form-section{order:1}.form-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow);padding:32px;transition:all .3s ease}.form-card:hover{box-shadow:var(--shadow-hover)}.form-card h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:24px}.login-prompt{padding:40px 20px;text-align:center}.login-prompt p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:24px}.user-info-display{align-items:center;background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:16px;margin-bottom:24px;padding:16px}.user-avatar{border:2px solid var(--accent-main);border-radius:50%;height:48px;object-fit:cover;width:48px}.user-details{display:flex;flex-direction:column;gap:4px}.user-name{color:var(--text-primary);font-size:1rem;font-weight:600}.user-email{color:var(--text-muted);font-size:.9rem}.feedback-type-buttons{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-top:8px}.type-button{align-items:center;background:var(--secondary-bg);border:2px solid var(--border-color);border-radius:12px;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.9rem;gap:8px;padding:16px 12px;transition:all .3s ease}.type-button:hover{border-color:var(--accent-main);color:var(--text-primary);transform:translateY(-2px)}.type-button.active{background:var(--accent-main);border-color:var(--accent-main);color:#fff}.type-icon{font-size:1.5rem}.type-label{font-weight:500;text-align:center}.rating-input{align-items:center;display:flex;gap:12px;margin-top:8px}.star-button{background:none;border:none;font-size:1.8rem;opacity:.3;transition:all .2s ease}.star-button.active,.star-button:hover{opacity:1;transform:scale(1.1)}.rating-text{color:var(--text-secondary);font-weight:600;margin-left:8px}.feedback-form textarea{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:12px;color:var(--text-primary);font-family:inherit;font-size:1rem;padding:16px;resize:vertical;transition:all .3s ease;width:100%}.feedback-form textarea:focus{border-color:var(--accent-main);box-shadow:0 0 0 3px #9d4edd1a;outline:none}.char-count{color:var(--text-muted);font-size:.8rem;margin-top:8px;text-align:right}.submit-btn{font-size:1.1rem;font-weight:600;margin-top:24px;padding:16px;width:100%}.submit-btn:disabled{opacity:.6}.feedback-list-section{order:2}.list-card{border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow);height:-webkit-fit-content;height:fit-content;max-height:600px;overflow-y:auto;padding:32px}.list-card,.list-card h3{background:var(--card-bg)}.list-card h3{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:24px;padding-bottom:16px;position:-webkit-sticky;position:sticky;top:0}.empty-state{color:var(--text-muted);padding:40px 20px}.empty-state p{font-size:1.1rem}.feedback-list{display:flex;flex-direction:column;gap:20px}.feedback-item{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:12px;padding:20px;transition:all .3s ease}.feedback-item:hover{border-color:var(--accent-main);box-shadow:var(--shadow);transform:translateY(-2px)}.feedback-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.feedback-user{align-items:center;display:flex;flex:1 1;gap:12px}.user-avatar-small{border:2px solid var(--accent-main);border-radius:50%;height:36px;object-fit:cover;width:36px}.feedback-user .user-info{display:flex;flex-direction:column;gap:2px}.feedback-user .user-name{color:var(--text-primary);font-size:.95rem;font-weight:600}.feedback-date{color:var(--text-muted);font-size:.8rem}.feedback-meta{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.feedback-type{background:var(--card-bg);border-radius:6px;font-size:1.2rem;padding:4px 8px}.feedback-rating{color:gold;font-size:.9rem}.feedback-content{color:var(--text-secondary);font-size:.95rem;line-height:1.6}.feedback-content p{margin:0}@media (max-width:1024px){.feedback-grid{gap:24px;grid-template-columns:1fr}.feedback-form-section{order:2}.feedback-list-section{order:1}}@media (max-width:768px){.feedback-container{padding:15px}.form-card,.list-card{padding:24px}.feedback-type-buttons{grid-template-columns:repeat(2,1fr)}.feedback-header{align-items:flex-start;flex-direction:column;gap:12px}.feedback-meta{align-items:center;flex-direction:row;gap:12px}.rating-input{flex-wrap:wrap}.star-button{font-size:1.5rem}}@media (max-width:480px){.feedback-type-buttons{grid-template-columns:1fr}.type-button{flex-direction:row;gap:12px;justify-content:flex-start}.feedback-user,.user-info-display{flex-direction:column;text-align:center}}.data-sync-status{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;bottom:20px;box-shadow:0 2px 8px #0000001a;display:flex;font-size:12px;font-weight:500;gap:8px;padding:8px 12px;position:fixed;right:20px;transition:all .3s ease;z-index:1000}.data-sync-status.saving{background-color:#ffc107e6;color:#000}.data-sync-status.saved{background-color:#28a745e6;color:#fff}.data-sync-status.error{background-color:#dc3545e6;color:#fff}.data-sync-status.hidden{opacity:0;pointer-events:none;transform:translateY(10px)}.data-sync-status .icon{align-items:center;display:flex;height:16px;justify-content:center;width:16px}.data-sync-status .spinner{animation:spin 1s linear infinite}.data-sync-status .message{white-space:nowrap}[data-theme=dark] .data-sync-status{box-shadow:0 2px 8px #0000004d}[data-theme=dark] .data-sync-status.saving{background-color:#ffc107cc;color:#000}[data-theme=dark] .data-sync-status.saved{background-color:#28a745cc;color:#fff}[data-theme=dark] .data-sync-status.error{background-color:#dc3545cc;color:#fff}@media (max-width:768px){.data-sync-status{font-size:.75rem;left:10px;padding:6px 10px;top:10px}.sync-icon{font-size:.9rem}.last-sync{font-size:.65rem}}:root{--primary-bg:#0a0e1a;--secondary-bg:#18122b;--card-bg:#231942;--accent-purple:#9d4edd;--accent-purple-hover:#7c3aed;--text-primary:#fff;--text-secondary:#b0b0b0;--text-muted:grey;--border-color:#3a3f4e;--success-color:#4ade80;--warning-color:#ff9500;--error-color:#ff3b30;--shadow:0 4px 6px #0000004d;--shadow-hover:0 8px 15px #0006;--accent-main:var(--accent-purple);--accent-main-hover:var(--accent-purple-hover)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0a0e1a;background-color:var(--primary-bg);color:#fff;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;margin:0 auto;max-width:1400px;padding:2rem;width:100%}.page-header{margin-bottom:3rem;text-align:center}.page-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#9d4edd,#7c3aed);background:linear-gradient(135deg,var(--accent-main),var(--accent-main-hover));-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.page-header p{color:#b0b0b0;color:var(--text-secondary);font-size:1.1rem}.card{background:#231942;background:var(--card-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 6px #0000004d;box-shadow:var(--shadow);margin-bottom:1.5rem;padding:1.5rem;transition:all .3s ease}.card:hover{box-shadow:0 8px 15px #0006;box-shadow:var(--shadow-hover);transform:translateY(-2px)}.card-header{align-items:center;border-bottom:1px solid #3a3f4e;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.card-title{color:#fff;color:var(--text-primary);font-size:1.25rem;font-weight:600}.summary-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;padding:1rem;text-align:center}.summary-item h3{color:#b0b0b0;color:var(--text-secondary);font-size:.9rem;font-weight:500;margin-bottom:.5rem}.summary-value{color:#fff;color:var(--text-primary);font-size:1.5rem;font-weight:700}.results-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.result-item{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;padding:1rem;text-align:center}.result-item h3{color:#b0b0b0;color:var(--text-secondary);font-size:.85rem;font-weight:500;margin-bottom:.5rem}.result-value{color:#fff;color:var(--text-primary);font-size:1.25rem;font-weight:700}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.btn-primary{background:#9d4edd;background:var(--accent-main);color:#fff}.btn-primary:hover{background:#7c3aed;background:var(--accent-main-hover);transform:translateY(-1px)}.btn-secondary{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);color:#fff;color:var(--text-primary)}.btn-secondary:hover{background:#231942;background:var(--card-bg);border-color:#9d4edd;border-color:var(--accent-main)}.btn-danger{background:#ff3b30;background:var(--error-color);color:#fff}.btn-danger:hover{background:#d63031}.btn-sm{font-size:.8rem;padding:.5rem 1rem}.form-group{margin-bottom:1rem}.form-label{color:#b0b0b0;color:var(--text-secondary);display:block;font-weight:500;margin-bottom:.5rem}.form-input{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;color:#fff;color:var(--text-primary);font-size:.9rem;padding:.75rem;transition:border-color .2s ease;width:100%}.form-input:focus{border-color:#9d4edd;border-color:var(--accent-main);box-shadow:0 0 0 2px #9d4edd33;outline:none}.form-select{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;color:#fff;color:var(--text-primary);cursor:pointer;font-size:.9rem;padding:.75rem;width:100%}.form-select:focus{border-color:#9d4edd;border-color:var(--accent-main)}.table{border-collapse:collapse;margin-top:1rem;width:100%}.table td,.table th{border-bottom:1px solid #3a3f4e;border-bottom:1px solid var(--border-color);padding:.75rem;text-align:left}.table th{color:#b0b0b0;color:var(--text-secondary);font-weight:600}.table th,.table tr:hover{background:#18122b;background:var(--secondary-bg)}.grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.text-success{color:#4ade80;color:var(--success-color)}.text-warning{color:#ff9500;color:var(--warning-color)}.text-error{color:#ff3b30;color:var(--error-color)}.text-muted{color:grey;color:var(--text-muted)}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.d-flex{display:flex}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.align-center{align-items:center}.gap-1{gap:.5rem}.gap-2{gap:1rem}.loading{align-items:center;display:flex;justify-content:center;padding:2rem}.spinner{animation:spin 1s linear infinite;border:2px solid #3a3f4e;border-top:2px solid #9d4edd;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-main);height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.chart-container{height:400px;margin:1rem 0;position:relative}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{border-radius:12px;box-shadow:0 8px 15px #0006;box-shadow:var(--shadow-hover);max-height:90vh;max-width:500px;overflow-y:auto;padding:2rem;width:90%}.modal-content,.notification{background:#231942;background:var(--card-bg)}.notification{border-left:4px solid #9d4edd;border-left:4px solid var(--accent-main);border-radius:8px;box-shadow:0 4px 6px #0000004d;box-shadow:var(--shadow);max-width:300px;padding:1rem;position:fixed;right:20px;top:20px;z-index:1001}.notification.success{border-left-color:#4ade80;border-left-color:var(--success-color)}.notification.error{border-left-color:#ff3b30;border-left-color:var(--error-color)}.notification.warning{border-left-color:#ff9500;border-left-color:var(--warning-color)}.balance-sheet,.cash-flow,.income-statement{display:flex;flex-direction:column;gap:1.5rem}.assets-section,.equity-section,.expenses-section,.financing-activities,.investing-activities,.liabilities-section,.net-income-section,.operating-activities,.revenue-section{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;padding:1rem}.asset-item,.equity-item,.expense-item,.flow-item,.income-item,.liability-item{align-items:center;border-bottom:1px solid #3a3f4e;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.5rem 0}.asset-item:last-child,.equity-item:last-child,.expense-item:last-child,.flow-item:last-child,.income-item:last-child,.liability-item:last-child{border-bottom:none}.asset-item.total,.equity-item.total,.expense-item.total,.flow-item.total,.income-item.total,.liability-item.total{border-bottom:none;border-top:2px solid #3a3f4e;border-top:2px solid var(--border-color);color:#fff;color:var(--text-primary);font-weight:700}.category-card.auto-calculated{background:linear-gradient(135deg,#007aff1a,#007aff0d);border:2px solid #007aff}.category-badges{display:flex;flex-wrap:wrap;gap:8px}.auto-calculated-badge{background:#007aff;border-radius:12px;color:#fff;font-size:.7rem;font-weight:500;padding:2px 8px}.auto-calculated-amount{align-items:center;display:flex;flex-direction:column;gap:4px}.amount-value{color:#007aff;font-size:1.2rem;font-weight:600}.debt-breakdown{color:#888;font-size:.8rem;margin-top:4px;text-align:center}.cash-flow-summary-card{background:#231942;background:var(--card-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 6px #0000004d;box-shadow:var(--shadow);margin-bottom:2rem;padding:1.5rem}.summary-header h3{color:#fff;color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:1rem}.cash-flow-details{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.flow-item{align-items:center;background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between;padding:.75rem}.flow-item span:first-child{color:#b0b0b0;color:var(--text-secondary);font-size:.9rem}.flow-item .amount{font-size:1rem;font-weight:600}.flow-item .amount.positive{color:#4ade80;color:var(--success-color)}.flow-item .amount.negative{color:#ff3b30;color:var(--error-color)}.cash-flow-summary{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;margin-bottom:2rem;padding:1.5rem}.cash-flow-summary .summary-item{align-items:center;border-bottom:1px solid #3a3f4e;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.75rem 0}.cash-flow-summary .summary-item:last-child{border-bottom:none}.cash-flow-summary .summary-item span:first-child{color:#b0b0b0;color:var(--text-secondary);font-size:.9rem}.cash-flow-summary .summary-item .amount{font-size:1rem;font-weight:600}.allocation-controls{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;margin-bottom:2rem;padding:1.5rem}.control-group{margin-bottom:1rem}.control-group label{align-items:center;color:#b0b0b0;color:var(--text-secondary);display:flex;font-size:.9rem;gap:.5rem}.control-group select{background:#231942;background:var(--card-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:6px;color:#fff;color:var(--text-primary);font-size:.9rem;margin-top:.5rem;padding:.75rem;width:100%}.control-group select:disabled{cursor:not-allowed;opacity:.6}.allocation-inputs{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.allocation-inputs h4{color:#fff;color:var(--text-primary);font-size:1.1rem;margin-bottom:1rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.input-group{display:flex;flex-direction:column}.input-group label{color:#b0b0b0;color:var(--text-secondary);font-size:.9rem;margin-bottom:.5rem}.input-group input{background:#231942;background:var(--card-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:6px;color:#fff;color:var(--text-primary);font-size:.9rem;padding:.75rem}.input-group input:disabled{cursor:not-allowed;opacity:.6}.input-group small{color:grey;color:var(--text-muted);font-size:.8rem;margin-top:.25rem}.target-settings{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;margin-top:1.5rem;padding:1.5rem}.target-settings h4{color:#fff;color:var(--text-primary);font-size:1.1rem;margin-bottom:1rem}.portfolio-manager{margin:0 auto;max-width:1400px}.tab-navigation{display:flex;gap:.5rem;margin-bottom:2rem;overflow-x:auto;padding-bottom:.5rem}.tab-button{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;color:#b0b0b0;color:var(--text-secondary);cursor:pointer;font-size:.9rem;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap}.tab-button:hover{background:#7c3aed;background:var(--accent-main-hover);color:#fff}.tab-button.active{background:#9d4edd;background:var(--accent-main);box-shadow:0 4px 15px #9d4edd33;color:#fff}.content-section{background:#231942;background:var(--card-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 6px #0000004d;box-shadow:var(--shadow);padding:2rem}.portfolio-summary{margin-bottom:2rem}.portfolio-summary h3{color:#fff;color:var(--text-primary);font-size:1.25rem;margin-bottom:1rem}.summary-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-card{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;text-align:center}.summary-card h4{color:#b0b0b0;color:var(--text-secondary);font-size:.9rem;margin-bottom:.5rem}.summary-card .summary-value{color:#fff;color:var(--text-primary);font-size:1.5rem;font-weight:700}.investment-cards-grid{margin-top:2rem}.investment-cards-grid h3{color:#fff;color:var(--text-primary);font-size:1.25rem;margin-bottom:1rem}.investment-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.investment-card{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;transition:all .2s ease}.investment-card:hover{box-shadow:0 8px 15px #0006;box-shadow:var(--shadow-hover);transform:translateY(-2px)}.investment-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.investment-icon{font-size:1.5rem}.investment-info h5{color:#fff;color:var(--text-primary);font-size:1rem;margin-bottom:.25rem}.investment-symbol{color:#b0b0b0;color:var(--text-secondary);font-size:.8rem}.investment-risk{border-radius:4px;color:#fff;font-size:.7rem;font-weight:500;padding:.25rem .5rem}.investment-details{margin-bottom:1rem}.detail-row{align-items:center;border-bottom:1px solid #3a3f4e;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.5rem 0}.detail-row:last-child{border-bottom:none}.detail-row span:first-child{color:#b0b0b0;color:var(--text-secondary);font-size:.85rem}.detail-row .value{color:#fff;color:var(--text-primary);font-weight:600}.investment-actions{display:flex;gap:.5rem}.btn-small{font-size:.8rem;padding:.5rem 1rem}.btn-edit{background:#ff9500;background:var(--warning-color);color:#fff}.btn-edit:hover{background:#e6850e}.btn-delete{background:#ff3b30;background:var(--error-color);color:#fff}.btn-delete:hover{background:#d63031}.empty-state{color:#b0b0b0;color:var(--text-secondary);grid-column:1/-1;padding:3rem;text-align:center}.empty-state p{font-size:1rem}@media (max-width:768px){.main-content{padding:1rem}.page-header h1{font-size:2rem}.card{padding:1rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.btn{font-size:.85rem;padding:.6rem 1.2rem}.cash-flow-details,.form-row,.results-summary,.summary-grid{grid-template-columns:1fr}.tab-navigation{flex-wrap:wrap}.investment-grid{grid-template-columns:1fr}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}.allocation-breakdown{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:8px;margin-top:1.5rem;padding:1.5rem}.allocation-breakdown h4{color:#fff;color:var(--text-primary);font-size:1.1rem;margin-bottom:1rem}.breakdown-item{align-items:center;border-bottom:1px solid #3a3f4e;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.75rem 0}.breakdown-item:last-child{border-bottom:none}.breakdown-item span:first-child{color:#b0b0b0;color:var(--text-secondary);flex:1 1;font-size:.9rem}.breakdown-item span:nth-child(2){color:#fff;color:var(--text-primary);font-weight:600;margin:0 1rem}.debt-graph-container{margin:0 auto;max-width:1400px;padding:20px}.controls-section{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px}.projection-controls{align-items:center;display:flex;gap:10px}.projection-controls label{color:#b0b0b0;color:var(--text-secondary);font-weight:600}.projection-controls select{background:#18122b;background:var(--secondary-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:6px;color:#fff;color:var(--text-primary);font-size:.9rem;padding:8px 12px}.debt-cards-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:30px}.debt-card{background:#231942;background:var(--card-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 6px #0000004d;box-shadow:var(--shadow);padding:20px;transition:all .3s ease}.debt-card:hover{box-shadow:0 8px 15px #0006;box-shadow:var(--shadow-hover);transform:translateY(-2px)}.debt-card-header{margin-bottom:15px}.debt-card-header h3{color:#fff;color:var(--text-primary);font-size:1.2rem;margin-bottom:8px}.debt-summary{align-items:center;display:flex;justify-content:space-between}.debt-balance{color:#fff;color:var(--text-primary);font-size:1.5rem;font-weight:700}.debt-rate{color:#9d4edd;color:var(--accent-main);font-size:.9rem;font-weight:600}.debt-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:20px}.stat-item{text-align:center}.stat-label{color:#b0b0b0;color:var(--text-secondary);display:block;font-size:.8rem;font-weight:600;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.stat-value{color:#fff;color:var(--text-primary);display:block;font-size:1.1rem;font-weight:700}.consolidated-graph{background:#231942;background:var(--card-bg);border:1px solid #3a3f4e;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 6px #0000004d;box-shadow:var(--shadow);padding:24px}.consolidated-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:30px}.positive{color:#4ade80;color:var(--success-color)}.negative{color:#ff3b30;color:var(--error-color)}.warning{color:#ff9500;color:var(--warning-color)}.text-center{text-align:center}.text-right{text-align:right}.mb-20{margin-bottom:20px}.mt-20{margin-top:20px}@media (max-width:768px){.page-container{padding:15px}.page-header h1,.page-header h2{font-size:2rem}.debt-cards-grid,.grid-2{grid-template-columns:1fr}.controls-section{align-items:stretch;flex-direction:column}.tab-buttons{justify-content:center}.chart-container-large{height:300px}}@media (max-width:480px){.page-header h1,.page-header h2{font-size:1.8rem}.summary-value{font-size:1.5rem}.debt-balance{font-size:1.3rem}.chart-container-small{height:150px}.chart-container-large{height:250px}}.development-disclaimer{background:linear-gradient(135deg,#ff6b6b,#ff8e53);box-shadow:0 2px 8px #0000001a;color:#fff;padding:12px 20px;position:relative;text-align:center;z-index:1000}.disclaimer-content{font-size:14px;font-weight:500;gap:15px;margin:0 auto;max-width:1200px}.disclaimer-close,.disclaimer-content{align-items:center;display:flex;justify-content:center}.disclaimer-close{background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:20px;height:24px;padding:0;transition:background-color .2s;width:24px}.disclaimer-close:hover{background-color:#fff3}.development-disclaimer+.main-content{padding-top:0}@media (max-width:768px){.disclaimer-content{flex-direction:column;font-size:12px;gap:8px}.disclaimer-close{font-size:18px;height:20px;width:20px}}
/*# sourceMappingURL=main.9620ccf9.css.map*/