:root{--primary-color: #0d1b2a;--primary-dark: #1b2838;--secondary-color: #4ecdc4;--secondary-dark: #3dbdb5;--accent-teal: #00b8a9;--accent-teal-dark: #009688;--primary-navy: #1a237e;--text-primary: #333;--text-light: #666;--border-color: #e2e8f0;--bg-light: #f7fafc;--bg-hover: #edf2f7;--bg-active: #ebf8ff;--success-color: #28a745;--warning-color: #ffc107;--danger-color: #dc3545;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:var(--text-primary);background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);min-height:100vh}.container{max-width:1800px;width:95vw;margin:0 auto;padding:20px}header{text-align:center;margin-bottom:30px;color:#fff}header h1{font-size:2.2rem;margin-bottom:8px;font-weight:700}header p{font-size:1rem;opacity:.85}main{display:grid;grid-template-columns:480px 1fr;gap:30px;align-items:start}@media(max-width:1000px){main{grid-template-columns:1fr;gap:20px}}.form-section{background:#fff;padding:25px;border-radius:12px;box-shadow:0 10px 40px #0003;max-height:85vh;overflow-y:auto}.accordion{margin-bottom:15px}.accordion-item{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:10px;overflow:hidden}.accordion-header{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f7fafc;cursor:pointer;transition:background-color .2s ease}.accordion-header:hover{background:#edf2f7}.accordion-header.active{background:#ebf8ff;border-bottom:1px solid #e2e8f0}.accordion-header h3{color:#2d3748;font-size:.95rem;font-weight:600;margin:0}.accordion-icon{font-size:1.2rem;font-weight:700;color:var(--secondary-color);width:24px;text-align:center}.accordion-content{padding:15px;display:none}.form-row{display:flex;gap:15px}.form-group{margin-bottom:15px}.form-group.half{flex:1}.form-group.third{flex:1;min-width:120px}.child-entry,.milestone-entry{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:15px;margin-bottom:10px;position:relative}.child-entry:first-child .btn-remove-item,.milestone-entry:first-child .btn-remove-item{display:none}.btn-add-item{background:transparent;color:var(--secondary-color);border:2px dashed var(--secondary-color);padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s ease;width:100%;margin-top:10px}.btn-add-item:hover{background:#4ecdc41a;border-style:solid}.btn-remove-item{position:absolute;top:10px;right:10px;background:#f56565;color:#fff;border:none;padding:4px 10px;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500}.btn-remove-item:hover{background:#e53e3e}.preset-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.btn-preset{background:linear-gradient(135deg,#0d1b2a,#1a3a5c);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease}.btn-preset:hover{background:linear-gradient(135deg,#1a3a5c,#0d1b2a);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.form-group label{display:block;margin-bottom:5px;font-weight:600;color:#4a5568;font-size:.9rem}.form-group input[type=number]{width:100%;padding:10px 12px;border:2px solid #e2e8f0;border-radius:6px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background-color:#f7fafc}.form-group input[type=number]:focus{outline:none;border-color:var(--secondary-color);background-color:#fff;box-shadow:0 0 0 3px #4299e126}.form-group small{display:block;margin-top:4px;color:#718096;font-size:.8rem}.checkbox-group{margin-bottom:10px}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:500;color:#4a5568}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--secondary-color);cursor:pointer}.conditional-section{background:#f7fafc;padding:15px;border-radius:8px;margin-top:10px;border-left:3px solid var(--secondary-color)}.info-box{background:#ebf8ff;border:1px solid #90cdf4;border-radius:6px;padding:12px;font-size:.85rem;color:#3db9b0;line-height:1.5;margin-bottom:15px}.calculate-btn{width:100%;background:linear-gradient(135deg,#3db9b0,#0d1b2a);color:#fff;border:none;padding:14px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;margin-top:10px}.calculate-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2b6cb066}.calculate-btn:active{transform:translateY(0)}.results-section{background:#fff;padding:25px;border-radius:12px;box-shadow:0 10px 40px #0003}.result-summary{margin-bottom:25px}.result-summary h2{color:#2d3748;margin-bottom:20px;font-size:1.5rem;text-align:center}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;border-bottom:2px solid #e2e8f0;padding-bottom:15px}.tab-btn{padding:10px 18px;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;color:#4a5568;transition:all .2s ease}.tab-btn:hover{background:#edf2f7}.tab-btn.active{background:#3db9b0;color:#fff;border-color:#3db9b0}.tab-content{display:none}.tab-content.active{display:block}.tab-content h4{color:#2d3748;margin-bottom:15px;font-size:1.1rem}.result-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px;margin-bottom:20px}.result-card{padding:18px;border-radius:10px;text-align:center;background:#f7fafc;border:1px solid #e2e8f0}.result-card.primary{background:linear-gradient(135deg,#3db9b0,#0d1b2a);color:#fff;border:none}.result-card.secondary{background:linear-gradient(135deg,#38a169,#276749);color:#fff;border:none}.result-card.tertiary{background:linear-gradient(135deg,#805ad5,#553c9a);color:#fff;border:none}.result-card.info{background:#ebf8ff;border:2px solid #90cdf4;color:#3db9b0}.result-card.success{background:#f0fff4;border:2px solid #9ae6b4;color:#276749}.result-card.highlight{background:linear-gradient(135deg,#d69e2e,#b7791f);color:#fff;border:none}.card-label{display:block;font-size:.85rem;opacity:.9;margin-bottom:8px}.card-value{display:block;font-size:1.4rem;font-weight:700}.result-card.info .card-value{color:var(--primary-color)}.result-card.success .card-value{color:#22543d}.scenarios-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:20px}.scenario-card{padding:20px;border-radius:10px;text-align:center}.scenario-card.pessimistic{background:linear-gradient(135deg,#fc8181,#c53030);color:#fff}.scenario-card.realistic{background:linear-gradient(135deg,var(--secondary-color) 0%,var(--secondary-dark) 100%);color:#fff}.scenario-card.optimistic{background:linear-gradient(135deg,#68d391,#38a169);color:#fff}.scenario-label{display:block;font-size:.9rem;margin-bottom:8px;opacity:.9}.scenario-value{display:block;font-size:1.5rem;font-weight:700}.status-box{padding:15px;border-radius:8px;margin-bottom:20px;font-weight:500}.status-box.success{background:#f0fff4;border-left:4px solid #38a169;color:#276749}.status-box.warning{background:#fffaf0;border-left:4px solid #dd6b20;color:#c05621}.breakdown-section{background:#f7fafc;border-radius:10px;padding:20px;margin-top:20px}.breakdown-section h4{color:#2d3748;margin-bottom:15px;font-size:1rem}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background:#fff;border-radius:6px;border:1px solid #e2e8f0}.breakdown-label{color:#718096;font-size:.9rem}.breakdown-value{font-weight:600;color:#2d3748}.chart-container{margin-top:25px;background:#f7fafc;border-radius:10px;padding:20px;min-height:400px}#savings-chart{width:100%;height:400px}.timeline-table-section{margin-top:25px}.timeline-table-section h4{color:#2d3748;margin-bottom:15px;font-size:1rem}.table-container{max-height:300px;overflow-y:auto;border-radius:8px;border:1px solid #e2e8f0}#timeline-table{width:100%;border-collapse:collapse;font-size:.9rem}#timeline-table th{background:#2d3748;color:#fff;padding:12px 15px;text-align:left;position:sticky;top:0;font-weight:600}#timeline-table td{padding:10px 15px;border-bottom:1px solid #e2e8f0}#timeline-table tbody tr:nth-child(2n){background:#f7fafc}#timeline-table tbody tr:hover{background:#ebf8ff}.report-section{margin-top:25px;text-align:center}.report-btn{background:linear-gradient(135deg,#805ad5,#553c9a);color:#fff;border:none;padding:14px 30px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.report-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #805ad566}.loading{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003}.chart-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid #e2e8f0}.chart-tab-btn{padding:8px 16px;background:#edf2f7;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;color:#4a5568;transition:all .2s ease}.chart-tab-btn:hover{background:#e2e8f0}.chart-tab-btn.active{background:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}.chart-tab-content{display:none}.chart-tab-content.active{display:block}.gauge-container{background:#f7fafc;padding:20px;border-radius:10px;margin-bottom:20px;text-align:center}.gauge-container h5{margin:0 0 15px;color:#2d3748;font-size:1rem}.gauge{position:relative;height:30px;background:linear-gradient(to right,#28a745,#28a745 43%,#ffc107 43%,#ffc107 56%,#dc3545 56%,#dc3545);border-radius:15px;overflow:hidden;max-width:400px;margin:0 auto}.gauge-fill{position:absolute;left:0;top:0;height:100%;width:4px;background:var(--primary-color);transition:left .5s ease}.gauge-labels{display:flex;justify-content:space-between;max-width:400px;margin:8px auto 0;font-size:.8rem;color:#718096}.gauge-status{margin-top:10px;font-weight:600;font-size:1.1rem}.gauge-status.safe{color:#28a745}.gauge-status.moderate{color:#ffc107}.gauge-status.risky{color:#dc3545}.info-box.warning{background:#fff3cd;border-left:4px solid #ffc107;color:#856404}.result-card.highlight{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.result-card.highlight .card-label{color:#ffffffd9}.scenario-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.scenario-card{padding:15px;border-radius:10px;text-align:center}.scenario-card.pessimistic{background:#fff5f5;border:2px solid #dc3545}.scenario-card.realistic{background:#f0f9ff;border:2px solid #3db9b0}.scenario-card.optimistic{background:#f0fff4;border:2px solid #28a745}.scenario-label{display:block;font-size:.85rem;color:#4a5568;margin-bottom:5px}.scenario-value{display:block;font-size:1.25rem;font-weight:700}.scenario-card.pessimistic .scenario-value{color:#dc3545}.scenario-card.realistic .scenario-value{color:#3db9b0}.scenario-card.optimistic .scenario-value{color:#28a745}@media(max-width:768px){.scenario-cards{grid-template-columns:1fr}}.spinner{border:4px solid #e2e8f0;border-top:4px solid #3db9b0;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading p{color:#718096;font-size:1rem}@media(max-width:768px){.scenarios-grid{grid-template-columns:1fr}.tabs{flex-direction:column}.tab-btn{width:100%;text-align:center;min-height:44px;display:flex;align-items:center;justify-content:center}.accordion-header{min-height:50px;padding:12px 15px}.calculate-btn{min-height:50px}.checkbox-label{min-height:44px;padding:8px 0}.checkbox-label input[type=checkbox]{width:22px;height:22px}.form-section{max-height:none}}@media(max-width:600px){.container{padding:15px}header h1{font-size:1.6rem}.form-section,.results-section{padding:18px}.form-row{flex-direction:column;gap:0}.result-cards,.breakdown-grid{grid-template-columns:1fr}.breakdown-item{flex-direction:column;gap:5px;text-align:center}}@media(max-width:480px){.container{padding:10px}header{padding-top:60px}header h1{font-size:1.3rem;line-height:1.3}header p{font-size:.85rem}.form-section,.results-section{padding:15px;border-radius:8px;max-height:none}.accordion-header{padding:12px}.accordion-header h3{font-size:.85rem}.accordion-content{padding:12px}.form-group label{font-size:.85rem}.form-group input[type=number]{padding:12px;font-size:16px}.checkbox-label{font-size:.9rem}.calculate-btn{padding:16px;font-size:1rem}.tab-btn{padding:12px 15px;font-size:.85rem}.result-card{padding:15px}.card-label{font-size:.8rem}.card-value{font-size:1.2rem}.scenario-card{padding:15px}.scenario-label{font-size:.8rem}.scenario-value{font-size:1.3rem}#timeline-table th,#timeline-table td{padding:8px 10px;font-size:.8rem}.report-btn{width:100%;padding:16px}}@media(min-width:768px)and (max-width:1024px){.container{padding:20px}main{grid-template-columns:1fr;gap:25px}.form-section{max-width:700px;margin:0 auto;max-height:none;padding:30px}.results-section{max-width:100%;padding:30px}.result-cards{grid-template-columns:repeat(2,1fr)}.scenarios-grid{grid-template-columns:repeat(3,1fr)}.tabs{flex-wrap:wrap;justify-content:center;gap:10px}.tab-btn{flex:0 0 auto;min-height:44px;padding:12px 20px}.accordion-header{padding:15px 18px}.accordion-content{padding:18px}.form-row{gap:20px}}@media(min-width:1024px)and (max-width:1200px){main{grid-template-columns:420px 1fr;gap:25px}.form-section{max-height:80vh}}@media(orientation:landscape)and (max-height:500px){.form-section{max-height:70vh}header{margin-bottom:15px}header h1{font-size:1.4rem;margin-bottom:5px}}@supports (-webkit-touch-callout: none){.form-group input[type=number],#legacy-view .form-group input[type=text],#legacy-view .form-group input[type=email],#legacy-view .form-group input[type=url],#legacy-view .form-group input[type=tel],#legacy-view .form-group input[type=date],#legacy-view .form-group select,#legacy-view .form-group textarea{font-size:16px}}@media(hover:none)and (pointer:coarse){.accordion-header:hover{background:#f7fafc}.accordion-header.active:hover{background:#ebf8ff}.calculate-btn:hover{transform:none;box-shadow:none}.tab-btn:hover{background:#f7fafc}.tab-btn.active:hover{background:#3db9b0}#legacy-view .form-group input[type=text],#legacy-view .form-group input[type=email],#legacy-view .form-group input[type=url],#legacy-view .form-group input[type=tel],#legacy-view .form-group input[type=date],#legacy-view .form-group select,#legacy-view .form-group textarea{font-size:16px}}.terms-container{max-width:900px;margin:40px auto;padding:40px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.terms-container h1{color:var(--primary-color);margin-bottom:10px;font-size:2rem}.terms-container .last-updated{color:#718096;margin-bottom:30px}.terms-section{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #e2e8f0}.terms-section:last-of-type{border-bottom:none}.terms-section h2{color:#2d3748;font-size:1.4rem;margin-bottom:15px}.terms-section h3{color:#4a5568;font-size:1.1rem;margin:20px 0 10px}.terms-section p{color:#4a5568;line-height:1.7;margin-bottom:10px}.terms-section ul{color:#4a5568;line-height:1.7;margin-left:20px;margin-bottom:15px}.terms-section li{margin-bottom:8px}.warning-box{background:#fff5f5;border:2px solid #fc8181;border-radius:8px;padding:20px;margin:20px 0}.warning-box h3{color:#c53030;margin:0 0 10px}.warning-box p{color:#c53030;margin:0}.cookie-table{width:100%;border-collapse:collapse;margin:15px 0}.cookie-table th,.cookie-table td{padding:12px;text-align:left;border:1px solid #e2e8f0}.cookie-table th{background:#f7fafc;color:#2d3748;font-weight:600}.cookie-table td{color:#4a5568}.terms-footer{margin-top:30px;padding-top:20px;border-top:1px solid #e2e8f0}.terms-footer a{color:#3db9b0;text-decoration:none}.terms-footer a:hover{text-decoration:underline}@media(max-width:768px){.terms-container{margin:20px;padding:25px}.terms-container h1{font-size:1.6rem}.terms-section h2{font-size:1.2rem}.cookie-table{font-size:14px}.cookie-table th,.cookie-table td{padding:8px}}#legacy-view .form-group input[type=text],#legacy-view .form-group input[type=email],#legacy-view .form-group input[type=url],#legacy-view .form-group input[type=tel],#legacy-view .form-group input[type=date],#legacy-view .form-group select,#legacy-view .form-group textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:2px solid #e2e8f0;border-radius:6px;font-size:1rem;font-family:inherit;background-color:#f7fafc;color:#1a202c;transition:border-color .2s ease,box-shadow .2s ease}#legacy-view .form-group input[type=text]:focus,#legacy-view .form-group input[type=email]:focus,#legacy-view .form-group input[type=url]:focus,#legacy-view .form-group input[type=tel]:focus,#legacy-view .form-group input[type=date]:focus,#legacy-view .form-group select:focus,#legacy-view .form-group textarea:focus{outline:none;border-color:var(--secondary-color);background-color:#fff;box-shadow:0 0 0 3px #4299e126}#legacy-view .form-group select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%234a5568' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}#legacy-view .form-group textarea{min-height:84px;resize:vertical}#legacy-view .form-group textarea#legacy_digital_assets,#legacy-view .form-group textarea#legacy_people_to_notify,#legacy-view .form-group textarea#legacy_estate_distribution,#legacy-view .form-group textarea#legacy_notes{min-height:132px}@media(min-width:768px){#legacy-view .form-group label{font-size:.95rem}}#legacy-view .form-row{display:flex;gap:20px;flex-wrap:wrap}#legacy-view .form-row .form-group.half{flex:1 1 calc(50% - 10px);min-width:200px}@media(max-width:600px){#legacy-view .form-row{flex-direction:column;gap:0}#legacy-view .form-row .form-group.half{flex:1 1 100%;min-width:0}}#legacy-view .legacy-file-field{display:flex;align-items:center;gap:12px;width:100%;box-sizing:border-box;padding:8px 10px;border:2px solid #e2e8f0;border-radius:6px;background-color:#f7fafc;transition:border-color .2s ease,box-shadow .2s ease}#legacy-view .legacy-file-field:focus-within{border-color:var(--secondary-color);background-color:#fff;box-shadow:0 0 0 3px #4299e126}#legacy-view .legacy-file-field.is-dragover{border:2px dashed #0d7377;background-color:#e6fffa;box-shadow:0 0 0 3px #0d737726}#legacy-view .legacy-file-field.is-dragover *{pointer-events:none}#legacy-view .legacy-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#legacy-view .legacy-file-button{display:inline-block;background:#0d7377;color:#fff;padding:8px 16px;border-radius:6px;font-weight:600;font-size:.9rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .2s ease;flex-shrink:0}#legacy-view .legacy-file-button:hover{background:#0a5d61}#legacy-view .legacy-file-input:focus-visible+.legacy-file-name,#legacy-view .legacy-file-field:focus-within .legacy-file-button{box-shadow:0 0 0 2px #0d737759}#legacy-view .legacy-file-name{color:#4a5568;font-size:.9rem;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;min-width:0}#legacy-view .legacy-file-name.has-file{color:#1a202c;font-style:normal}#legacy-view .legacy-file-error{margin-top:6px;color:#b91c1c;background:#fee2e2;border-left:3px solid #dc2626;padding:6px 10px;border-radius:4px;font-size:.82rem;line-height:1.3}#legacy-view .legacy-file-field.has-error{border-color:#dc2626;background-color:#fff5f5}#legacy-view .legacy-file-name.has-error{color:#b91c1c;font-style:normal}#legacy-view .legacy-multi-upload{margin-top:14px;padding:10px 14px;border-radius:6px;border-left:4px solid #3b82f6;background:#dbeafe;color:#1e3a8a;font-size:.88rem}#legacy-view .legacy-multi-upload--success{border-left-color:#16a34a;background:#dcfce7;color:#14532d}#legacy-view .legacy-multi-upload--error{border-left-color:#dc2626;background:#fee2e2;color:#991b1b}#legacy-view .legacy-multi-upload--mixed{border-left-color:#d97706;background:#fef3c7;color:#92400e}#legacy-view .legacy-multi-upload__header{font-weight:600;margin-bottom:6px;display:flex;align-items:center;justify-content:space-between;gap:10px}#legacy-view .legacy-multi-upload__header-text{flex:1 1 auto;min-width:0}#legacy-view .legacy-multi-upload__cancel{flex:0 0 auto;background:transparent;border:1px solid currentColor;color:inherit;padding:2px 10px;border-radius:4px;font-size:.78rem;font-weight:600;line-height:1.3;cursor:pointer}#legacy-view .legacy-multi-upload__cancel:hover:not(:disabled),#legacy-view .legacy-multi-upload__cancel:focus-visible:not(:disabled){background:#ffffff80}#legacy-view .legacy-multi-upload__cancel:disabled{opacity:.6;cursor:default}#legacy-view .legacy-multi-upload__list{list-style:none;margin:0;padding:0}#legacy-view .legacy-multi-upload__row{display:flex;align-items:baseline;gap:8px;padding:3px 0;font-size:.85rem;line-height:1.35}#legacy-view .legacy-multi-upload__icon{flex:0 0 auto;width:16px;text-align:center;font-weight:700}#legacy-view .legacy-multi-upload__row--ok .legacy-multi-upload__icon{color:#16a34a}#legacy-view .legacy-multi-upload__row--err .legacy-multi-upload__icon{color:#dc2626}#legacy-view .legacy-multi-upload__row--pending .legacy-multi-upload__icon,#legacy-view .legacy-multi-upload__row--queued .legacy-multi-upload__icon{color:#475569}#legacy-view .legacy-multi-upload__row--skip .legacy-multi-upload__icon{color:#92400e}#legacy-view .legacy-multi-upload__row--skip .legacy-multi-upload__name,#legacy-view .legacy-multi-upload__row--skip .legacy-multi-upload__detail{opacity:.75}#legacy-view .legacy-multi-upload__name{font-weight:600;flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50%}#legacy-view .legacy-multi-upload__detail{flex:1 1 auto;color:inherit;opacity:.85}@media(min-width:1200px){body.calculator-page{background:#f5f7fa}body.calculator-page .container{max-width:none;width:100%;padding:0;background:#f5f7fa}body.calculator-page header{background:#fff;padding:15px 40px;margin-bottom:0;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;text-align:left;box-shadow:0 2px 4px #0000000a}body.calculator-page header img{max-width:180px;margin:0}body.calculator-page header p{display:none}body.calculator-page .user-nav{position:static;gap:12px}body.calculator-page .user-nav a{background:#f7fafc;color:#2d3748;border:1px solid #e2e8f0}body.calculator-page .user-nav a:hover,body.calculator-page .user-nav a.help-link{background:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}body.calculator-page .user-nav a.admin-link{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}body.calculator-page .user-nav .user-info{color:#2d3748;font-weight:500}body.calculator-page:not(.wealth365-layout) main{display:grid;grid-template-columns:420px 1fr;gap:0;align-items:stretch;min-height:calc(100vh - 70px)}body.calculator-page .form-section{background:#fff;padding:25px 30px;border-radius:0;box-shadow:2px 0 8px #0000000f;max-height:calc(100vh - 70px);overflow-y:auto;border-right:1px solid #e2e8f0}body.calculator-page .results-section{background:#f5f7fa;padding:30px 40px;border-radius:0;box-shadow:none;overflow-y:auto;max-height:calc(100vh - 70px)}body.calculator-page .result-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}body.calculator-page .result-card{padding:20px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 2px 6px #0000000a}body.calculator-page .result-card.primary,body.calculator-page .result-card.secondary,body.calculator-page .result-card.tertiary{border:none}body.calculator-page .card-value{font-size:1.5rem}body.calculator-page .tabs{display:flex;gap:4px;margin-bottom:25px;background:#fff;padding:8px;border-radius:10px;box-shadow:0 2px 6px #0000000a;flex-wrap:nowrap;overflow-x:auto}body.calculator-page .tab-button{padding:12px 24px;font-size:.9rem;font-weight:500;background:transparent;border:none;border-radius:8px;color:#64748b;white-space:nowrap;transition:all .2s ease}body.calculator-page .tab-button:hover{background:#f1f5f9;color:#2d3748}body.calculator-page .tab-button.active{background:var(--secondary-color);color:#fff}body.calculator-page .tab-content{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #0000000a;border:1px solid #e2e8f0}body.calculator-page .accordion-header{padding:16px 18px;background:#fafbfc}body.calculator-page .accordion-header:hover{background:#f1f5f9}body.calculator-page .accordion-header.active{background:#e6fffa;border-bottom:1px solid #4ecdc4}body.calculator-page .accordion-header h3{font-size:.95rem;color:#1e293b}body.calculator-page .accordion-content{background:#fff}body.calculator-page .form-group label{font-size:.9rem;color:#475569;font-weight:500}body.calculator-page .form-group input,body.calculator-page .form-group select{padding:11px 14px;font-size:.95rem;border:1px solid #e2e8f0;background:#fafbfc}body.calculator-page .form-group input:focus,body.calculator-page .form-group select:focus{border-color:var(--secondary-color);background:#fff;box-shadow:0 0 0 3px #4ecdc426}body.calculator-page .chart-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;padding:25px}body.calculator-page .scenarios-grid{grid-template-columns:repeat(3,1fr);gap:20px}body.calculator-page .scenario-card{padding:22px;border-radius:12px}body.calculator-page .timeline-table-section{background:#fff;padding:20px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 6px #0000000a}body.calculator-page .timeline-table th{background:#f8fafc;font-weight:600;color:#334155;padding:14px 16px;border-bottom:2px solid #e2e8f0}body.calculator-page .timeline-table td{padding:12px 16px;border-bottom:1px solid #f1f5f9}body.calculator-page .timeline-table tr:hover td{background:#f8fafc}body.calculator-page button[type=submit],body.calculator-page .btn-calculate{background:var(--secondary-color);padding:14px 28px;font-size:1rem;font-weight:600;border-radius:10px;transition:all .2s ease}body.calculator-page button[type=submit]:hover,body.calculator-page .btn-calculate:hover{background:#3db9b0;transform:translateY(-1px);box-shadow:0 4px 12px #4ecdc459}body.calculator-page .breakdown-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:22px}body.calculator-page .breakdown-item{background:#f8fafc;border:1px solid #e2e8f0}body.calculator-page .status-box{border-radius:10px;padding:18px 20px}}@media(min-width:1600px){body.calculator-page .container{max-width:100%}body.calculator-page header{padding:18px 50px}body.calculator-page header img{max-width:200px}body.calculator-page main{grid-template-columns:480px 1fr}body.calculator-page .form-section{padding:30px 35px}body.calculator-page .results-section{padding:35px 50px}body.calculator-page .result-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}body.calculator-page .result-card{padding:24px}body.calculator-page .card-label{font-size:.9rem}body.calculator-page .card-value{font-size:1.6rem}body.calculator-page .chart-container{min-height:500px}body.calculator-page #savings-chart{height:480px}body.calculator-page .tab-button{padding:14px 28px;font-size:.95rem}body.calculator-page .tabs{padding:10px}}@media(min-width:1440px){.wealth365-main{padding:24px 32px}.dashboard-grid{grid-template-columns:1fr 360px;gap:24px;width:100%}.dashboard-chart-area{padding:20px}.dashboard-main-chart{height:450px}.dashboard-category-tabs{gap:8px}.category-tab{padding:12px 20px}}@media(min-width:1920px){body.calculator-page .container{max-width:100%}.wealth365-main{padding:24px 40px}.dashboard-grid{grid-template-columns:1fr 380px;gap:28px;width:100%}.dashboard-main-chart{height:480px}body.calculator-page header{padding:20px 60px}body.calculator-page header img{max-width:220px}body.calculator-page main{grid-template-columns:520px 1fr}body.calculator-page .form-section{padding:35px 40px}body.calculator-page .results-section{padding:40px 60px}body.calculator-page .accordion-item{border-radius:10px;margin-bottom:12px}body.calculator-page .accordion-header{padding:18px 20px}body.calculator-page .accordion-header h3{font-size:1rem}body.calculator-page .result-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px}body.calculator-page .result-card{padding:26px;border-radius:12px}body.calculator-page .card-label{font-size:.95rem;margin-bottom:10px}body.calculator-page .card-value{font-size:1.75rem}body.calculator-page .tab-button{padding:14px 30px;font-size:1rem}body.calculator-page .chart-container{min-height:550px}body.calculator-page #savings-chart{height:520px}body.calculator-page .info-box{padding:20px;font-size:.95rem}body.calculator-page .form-group label{font-size:.95rem;margin-bottom:6px}body.calculator-page .form-group input,body.calculator-page .form-group select{padding:13px 16px;font-size:1rem;border-radius:8px}body.calculator-page button[type=submit],body.calculator-page .btn-calculate{padding:16px 32px;font-size:1.05rem}body.calculator-page .timeline-table th,body.calculator-page .timeline-table td{padding:14px 18px;font-size:.95rem}body.calculator-page .scenarios-grid{gap:24px}body.calculator-page .scenario-card{padding:26px}}@media(min-width:1400px){.form-row{gap:20px}.accordion-content{padding:20px}.checkbox-group{padding:14px}}.wealth365-layout{background:#f5f7fa}.wealth365-layout .wealth365-container{min-height:100vh;display:flex;flex-direction:column;width:100%;max-width:none}.wealth365-layout .wealth365-main{flex:1;padding:20px 24px;display:block;max-width:none;width:100%}.wealth365-container{min-height:100vh;display:flex;flex-direction:column;width:100%;max-width:none}.wealth365-header{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:12px 30px;border-bottom:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000a}.header-left .wealth365-logo{max-height:70px;max-width:280px;width:auto;-o-object-fit:contain;object-fit:contain}.header-center{display:flex;gap:6px;background:#f1f5f9;padding:6px;border-radius:12px;border:1px solid #e2e8f0}.view-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 20px;background:transparent;border:none;border-radius:10px;font-size:13px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease;min-width:90px}.view-btn .tab-icon{font-size:18px;line-height:1;opacity:.7;transition:all .2s ease}.view-btn .tab-label{font-size:12px;font-weight:500;letter-spacing:.01em}.view-btn:hover{background:#fffc;color:#334155}.view-btn:hover .tab-icon{opacity:1;transform:scale(1.1)}.view-btn.active{background:#fff;color:var(--secondary-color);box-shadow:0 2px 8px #00000014}.view-btn.active .tab-icon{opacity:1}.header-right{display:flex;align-items:center;gap:15px}.header-right .user-info{color:#475569;font-size:14px;font-weight:500}.header-right a{color:#64748b;text-decoration:none;padding:8px 16px;border-radius:6px;font-size:14px;transition:all .2s}.header-right a:hover{background:#f1f5f9;color:#334155}.header-right .help-link{background:var(--secondary-color);color:#fff}.header-right .help-link:hover{background:#3db9b0}.header-right .admin-link{background:var(--primary-color);color:#fff}.header-right .logout-link{background:#fee2e2;color:#dc2626}.header-right .logout-link:hover{background:#fecaca}.wealth365-main{flex:1;padding:20px 24px;display:block;max-width:none;width:100%}.wealth365-view{display:none;width:100%}.wealth365-view.active{display:block;width:100%}.dashboard-year-bar{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:10px;padding:12px 20px;margin-bottom:20px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0}.year-info{display:flex;align-items:center;gap:20px}.year-display{font-size:1.25rem;font-weight:700;color:#1e293b}.age-display{font-size:.9rem;color:#64748b;padding-left:20px;border-left:2px solid #e2e8f0}.view-toggles{display:flex;gap:8px}.view-toggle{padding:8px 16px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:6px;font-size:13px;color:#475569;cursor:pointer;transition:all .2s}.view-toggle:hover{background:#f1f5f9;border-color:#cbd5e1}.view-toggle.active{background:var(--secondary-color);border-color:var(--secondary-color);color:#fff}.view-toggle.highlight{background:#ff6b6b;border-color:#ff6b6b;color:#fff}.view-toggle.highlight:hover{background:#ee5a5a}.dashboard-grid{display:grid;grid-template-columns:1fr 340px;gap:20px;margin-bottom:16px;width:100%}.dashboard-category-tabs{display:flex;gap:0;background:#fff;border-radius:10px 10px 0 0;padding:0;border:1px solid #e2e8f0;border-bottom:none;overflow-x:auto}.category-tab{flex:1;padding:14px 20px;border:none;background:#f8fafc;font-size:13px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s;border-right:1px solid #e2e8f0;white-space:nowrap}.category-tab:last-child{border-right:none}.category-tab:hover{background:#f1f5f9;color:#475569}.category-tab.active{background:var(--secondary-color);color:#fff}.dashboard-data-table{background:#fff;border-radius:0 0 10px 10px;border:1px solid #e2e8f0;margin-bottom:14px;width:100%;overflow-x:auto}.data-table-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.table-title{font-size:1rem;font-weight:600;color:#1e293b}.table-actions{display:flex;gap:8px}.table-action-btn{padding:6px 12px;border:1px solid #e2e8f0;background:#fff;border-radius:4px;font-size:12px;color:#64748b;cursor:pointer;transition:all .2s}.table-action-btn:hover{background:#f1f5f9;color:#475569}.wealth365-data-table{width:100%;border-collapse:collapse}.wealth365-data-table th{padding:12px 15px;text-align:left;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.wealth365-data-table td{padding:12px 15px;font-size:13px;color:#334155;border-bottom:1px solid #f1f5f9}.wealth365-data-table tbody tr:hover{background:#f8fafc}.wealth365-data-table .col-name{width:25%}.wealth365-data-table .col-category,.wealth365-data-table .col-owner{width:15%}.wealth365-data-table .col-value,.wealth365-data-table .col-change,.wealth365-data-table .col-unfulfilled{width:15%;text-align:right}.wealth365-data-table td:nth-child(4),.wealth365-data-table td:nth-child(5),.wealth365-data-table td:nth-child(6){text-align:right}.wealth365-data-table .category-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px}.category-dot.taxes{background:var(--secondary-color)}.category-dot.basics{background:#3b82f6}.category-dot.leisure{background:#ec4899}.category-dot.luxury{background:#22c55e}.category-dot.housing{background:#f59e0b}.wealth365-data-table tfoot td{padding:12px 15px;font-size:13px;background:#f8fafc}.wealth365-data-table .total-row td{font-weight:600;color:#1e293b;border-top:2px solid #e2e8f0}.wealth365-data-table .comparison-row td{color:#64748b;font-size:12px}.wealth365-data-table .empty-row td{text-align:center;color:#94a3b8;padding:40px;font-style:italic}.change-positive{color:#22c55e}.change-negative{color:#ef4444}.assets-debts-chart{padding:10px 0}.bar-row{display:flex;align-items:center;margin-bottom:12px;gap:10px}.bar-label{width:70px;font-size:12px;color:#64748b;font-weight:500}.bar-container{flex:1;height:24px;background:#f1f5f9;border-radius:4px;overflow:hidden}.bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.assets-bar{background:#3b82f6}.debts-bar{background:#ef4444}.networth-bar{background:#22c55e}.bar-value{width:70px;font-size:12px;color:#1e293b;font-weight:600;text-align:right}.dashboard-accordions{margin-bottom:20px}.accordion-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:10px;overflow:hidden}.accordion-header{width:100%;display:flex;align-items:center;gap:10px;padding:14px 18px;border:none;background:#f8fafc;cursor:pointer;font-size:14px;font-weight:500;color:#1e293b;text-align:left;transition:background .2s}.accordion-header:hover{background:#f1f5f9}.accordion-icon{color:#64748b}.accordion-arrow{margin-left:auto;font-size:10px;color:#94a3b8;transition:transform .2s}.accordion-item.open .accordion-arrow{transform:rotate(180deg)}.accordion-content{display:none;padding:15px 18px;border-top:1px solid #e2e8f0}.accordion-item.open .accordion-content{display:block}.accordion-info-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f1f5f9}.accordion-info-row:last-of-type{border-bottom:none}.accordion-info-row span:first-child{color:#64748b;font-size:13px}.info-value{font-weight:600;color:#1e293b;font-size:13px}.btn-link{background:none;border:none;color:var(--secondary-color);font-size:13px;cursor:pointer;padding:10px 0 0;text-decoration:underline}.btn-link:hover{color:#3dbdb5}.input-with-suffix{display:flex;align-items:center;gap:5px}.input-with-suffix input{flex:1}.input-suffix{color:#64748b;font-size:14px;font-weight:500}.input-with-select{display:flex;gap:8px}.input-with-select input{flex:2}.input-with-select select{flex:1;min-width:100px}.btl-linked-debt-section{background:#f8fafc;padding:15px;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:15px}.dashboard-chart-area{background:#fff;border-radius:10px;padding:18px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.chart-header h2{font-size:1.25rem;color:#1e293b;font-weight:600}.chart-controls select{padding:8px 16px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;background:#fff;cursor:pointer}.dashboard-main-chart{height:400px}.dashboard-sidebar{display:flex;flex-direction:column;gap:16px}.asset-widget,.goals-widget{background:#fff;border-radius:10px;padding:16px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0}.asset-widget h3,.goals-widget h3{font-size:.95rem;color:#1e293b;margin-bottom:12px;font-weight:600}.pie-chart-container{height:180px}.goal-item{display:flex;align-items:center;gap:12px;padding:10px 0}.goal-label{flex:1;font-size:14px;color:#475569}.goal-progress{width:100px;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.goal-bar{height:100%;background:linear-gradient(90deg,#4ecdc4,#3db9b0);border-radius:4px;transition:width .5s ease}.goal-percent{font-size:14px;font-weight:600;color:var(--secondary-color);width:45px;text-align:right}.plan-overview{background:#fff;border-radius:12px;padding:25px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0}.plan-overview h3{font-size:1.1rem;color:#1e293b;margin-bottom:20px;font-weight:600}.overview-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.overview-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:20px;text-align:center;cursor:pointer;transition:all .2s ease}.overview-card:hover{background:#e6fffa;border-color:var(--secondary-color);transform:translateY(-2px);box-shadow:0 4px 12px #4ecdc426}.overview-icon{font-size:2rem;margin-bottom:8px}.overview-label{font-size:13px;color:#64748b;margin-bottom:4px}.overview-value{font-size:15px;font-weight:600;color:#1e293b}#data-entry-view{display:none;grid-template-columns:1fr;gap:20px;min-height:calc(100vh - 140px)}#data-entry-view.active{display:grid}.ff-landing{grid-column:1 / -1;max-width:1100px;width:100%;margin:0 auto;padding:0 16px}.ff-landing__header{text-align:center;margin-bottom:28px}.ff-landing__title{font-size:22px;font-weight:700;color:#1e293b;margin:0 0 6px}.ff-landing__subtitle{font-size:14px;color:#64748b;max-width:560px;margin:0 auto;line-height:1.5}.ff-sections-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;align-items:start}.ff-section{margin-bottom:0}.ff-section__head{display:flex;align-items:center;gap:6px;margin-bottom:6px;padding-left:4px}.ff-section__icon{font-size:16px}.ff-section__label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#475569}.ff-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.ff-card{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:all .2s ease;text-align:left;position:relative}.ff-card:hover{border-color:var(--secondary-color);box-shadow:0 2px 12px #0000000f;transform:translateY(-1px)}.ff-card__icon{font-size:20px;flex-shrink:0;width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border-radius:8px}.ff-card__body{flex:1;min-width:0}.ff-card__name{display:block;font-size:14px;font-weight:600;color:#1e293b;margin-bottom:2px}.ff-card__desc{display:block;font-size:12px;color:#94a3b8;line-height:1.3}.ff-card__status{flex-shrink:0;width:22px;height:22px;border-radius:50%;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;font-size:12px;color:transparent;transition:all .2s ease}.ff-card__status.has-data{background:#10b981;border-color:#10b981;color:#fff}.ff-panel-view{grid-column:1 / -1;display:grid;grid-template-columns:200px 1fr;gap:16px;min-height:calc(100vh - 200px)}.ff-panel-view__sidebar{background:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:12px 8px;height:-moz-fit-content;height:fit-content;position:sticky;top:20px;max-height:calc(100vh - 200px);overflow-y:auto}.ff-sidebar__heading{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;padding:10px 10px 4px}.ff-sidebar__section:first-child .ff-sidebar__heading{padding-top:4px}.ff-sidebar__item{display:block;width:100%;padding:7px 10px;border:none;background:none;text-align:left;font-size:12px;color:#475569;border-radius:6px;cursor:pointer;transition:all .15s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ff-sidebar__item:hover{background:#f1f5f9;color:#1e293b}.ff-sidebar__item.active{background:var(--secondary-color);color:#fff}.panel-header__left{display:flex;align-items:center;gap:12px}.ff-back-btn{width:32px;height:32px;border-radius:8px;border:1px solid #e2e8f0;background:#f8fafc;cursor:pointer;font-size:16px;color:#475569;display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.ff-back-btn:hover{background:#e2e8f0;color:#1e293b}.nav-panel,.nav-toggle-btn{display:none}.nav-section{margin-bottom:25px}.nav-section:last-child{margin-bottom:0}.nav-section h4{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#64748b;margin-bottom:4px;font-weight:600}.nav-section-desc{font-size:11px;color:#94a3b8;margin:0 0 10px;line-height:1.3}.nav-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.nav-item{display:flex;flex-direction:column;align-items:center;padding:15px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:all .2s ease}.nav-item:hover{background:#e6fffa;border-color:var(--secondary-color);transform:translateY(-2px)}.nav-item.active{background:var(--secondary-color);border-color:var(--secondary-color);color:#fff}.nav-group{margin-bottom:8px}.nav-group-header .nav-icon{font-size:16px}.nav-group-items{padding-left:12px;border-left:2px solid #334155;margin-left:20px}.nav-sub-item{padding:8px 12px!important;font-size:13px!important}.nav-sub-item .nav-icon{font-size:14px!important}.nav-sub-item .nav-label{font-size:12px!important}.nav-item.active .nav-icon,.nav-item.active .nav-label{color:#fff}.nav-icon{font-size:1.5rem;margin-bottom:6px}.nav-label{font-size:11px;color:#475569;text-align:center;font-weight:500}.nav-item.full-width{flex-direction:row;justify-content:flex-start;gap:12px;padding:14px 16px;width:100%}.nav-item.full-width .nav-icon{margin-bottom:0;font-size:1.3rem}.nav-item.full-width .nav-label{font-size:13px}.data-panel{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0;display:flex;flex-direction:column;position:relative;overflow-y:auto}.panel-sticky-save{position:sticky;bottom:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:#f8fafc;border-top:1px solid #e2e8f0;border-radius:0 0 12px 12px;box-shadow:0 -2px 8px #0000000a}.panel-sticky-save .panel-save-status{display:flex;align-items:center;gap:8px;font-size:13px;color:#64748b}.panel-sticky-save .panel-save-status .save-dot{width:8px;height:8px;border-radius:50%;background:#94a3b8;flex-shrink:0}.panel-sticky-save .panel-save-status.saved .save-dot{background:#22c55e}.panel-sticky-save .panel-save-status.saving .save-dot{background:#f59e0b;animation:pulse-dot 1s infinite}.panel-sticky-save .panel-save-status.unsaved .save-dot{background:#f59e0b}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.panel-sticky-save .btn-panel-save{padding:8px 20px;background:#3db9b0;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}.panel-sticky-save .btn-panel-save:hover{background:#2d9a92}.panel-sticky-save .btn-panel-save:disabled{background:#94a3b8;cursor:default}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #e2e8f0;background:#f8fafc;border-radius:12px 12px 0 0;position:sticky;top:0;z-index:10}.panel-header h3{font-size:1.1rem;color:#1e293b;font-weight:600}.panel-close{width:32px;height:32px;border:none;background:#f1f5f9;border-radius:6px;cursor:pointer;font-size:16px;color:#64748b;transition:all .2s}.panel-close:hover{background:#fee2e2;color:#dc2626}.panel-content{flex:1;padding:25px;min-height:0}.panel-placeholder{color:#94a3b8;text-align:center;padding:60px 20px;font-size:15px}#lets-see-view{display:none}#lets-see-view.active{display:block}.presentation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.presentation-header h2{font-size:1.5rem;color:#1e293b;font-weight:600}.presentation-controls{display:flex;gap:10px}.pres-btn{padding:10px 20px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:500;color:#475569;cursor:pointer;transition:all .2s}.pres-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.pres-btn.active{background:var(--secondary-color);border-color:var(--secondary-color);color:#fff}.compare-btn{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.compare-btn:hover{background:#1e3a5f}.presentation-chart{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0;min-height:500px;margin-bottom:25px}.presentation-timeline{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0}.timeline-bar{position:relative;height:60px;background:linear-gradient(90deg,#4ecdc4,#3db9b0,#0d1b2a);border-radius:30px;margin:20px 40px}.marker-age{background:#fff;border:3px solid #4ecdc4;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;color:var(--primary-color);box-shadow:0 2px 8px #00000026}.timeline-marker.retirement .marker-age{border-color:#f6ad55;background:#fefcbf}.timeline-marker.end .marker-age{border-color:var(--primary-color)}.marker-label{position:absolute;top:60px;white-space:nowrap;font-size:13px;font-weight:500;color:#475569}.add-item-btn{position:fixed;bottom:30px;right:30px;width:56px;height:56px;border-radius:50%;background:var(--secondary-color);border:none;color:#fff;font-size:28px;cursor:pointer;box-shadow:0 4px 20px #4ecdc466;transition:all .2s ease;z-index:100}.add-item-btn:hover{background:#3db9b0;transform:scale(1.1)}@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}.dashboard-sidebar{flex-direction:row}.asset-widget,.goals-widget{flex:1}#data-entry-view{grid-template-columns:1fr}}@media(max-width:900px)and (min-width:769px){.wealth365-header{padding:12px 16px}.ff-panel-view{grid-template-columns:160px 1fr;gap:12px}.ff-sidebar__item{font-size:11px;padding:6px 8px}.dashboard-sidebar{flex-direction:column}}@media(max-width:768px){.wealth365-header{flex-wrap:wrap;padding:10px 16px;gap:0}#data-entry-view,.ff-panel-view{grid-template-columns:1fr}.ff-panel-view__sidebar{display:none}.ff-sections-grid,.ff-cards{grid-template-columns:1fr}.ff-landing{padding:0 8px}.dashboard-sidebar{flex-direction:column}}@media(max-width:600px){.view-btn{padding:8px 16px;font-size:13px}.overview-cards{grid-template-columns:repeat(2,1fr)}.header-right{flex-wrap:wrap;justify-content:center;gap:8px}.header-right .user-info{width:100%;text-align:center}}.form-inline-hint,.form-inline-error{font-size:12px;margin-top:4px}.form-inline-hint{color:#92400e}.form-inline-error{color:#b91c1c}.form-inline-error--row{flex-basis:100%;display:none}.panel-form h4{font-size:1rem;color:#1e293b;margin-bottom:15px;font-weight:600;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.panel-guidance{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:4px solid #0ea5e9;border-radius:8px;padding:14px 16px;margin-bottom:20px}.panel-guidance p{margin:0;font-size:13px;line-height:1.5;color:#334155}.btn-add-item{display:block;width:100%;padding:12px;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;color:#3db9b0;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:12px}.btn-add-item:hover{background:#f0fdfa;border-color:#3db9b0}.panel-form .form-group{margin-bottom:18px}.panel-form .form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#475569}.panel-form .form-group input,.panel-form .form-group select{width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:15px;transition:all .2s}.panel-form .form-group input:focus,.panel-form .form-group select:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px #4ecdc426}.panel-form .form-group small{display:block;margin-top:5px;font-size:12px;color:#94a3b8}.panel-form .form-row{display:flex;gap:15px}.panel-form .form-group.half{flex:1}.panel-form .form-group.third{flex:1;min-width:80px}.networth-summary{margin-top:20px}.networth-section{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e2e8f0}.networth-section:last-child{border-bottom:none;margin-bottom:0}.networth-section h5{font-size:.9rem;color:#64748b;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.networth-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px}.networth-row.total{font-weight:600;border-top:1px solid #e2e8f0;margin-top:8px;padding-top:12px}.networth-row.grand-total{font-size:1.2rem;font-weight:700;color:var(--secondary-color);padding:16px 0}.nw-value{font-weight:500;color:#1e293b}.panel-form .checkbox-group{background:#f8fafc;padding:12px 15px;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:18px}.panel-form .checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;color:#475569}.panel-form .checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--secondary-color)}.btn-save{width:100%;padding:12px 20px;background:var(--secondary-color);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:20px}.btn-save:hover{background:#3db9b0}.form-actions .btn-primary{padding:8px 20px;background:var(--secondary-color);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.form-actions .btn-primary:hover{background:#3db9b0;transform:none;box-shadow:none}.events-list,.stages-list{display:flex;flex-direction:column;gap:10px}.event-icon{font-size:1.3rem}.event-name{flex:1;font-weight:500;color:#1e293b}.event-age{font-size:13px;color:#64748b;background:#e2e8f0;padding:4px 10px;border-radius:12px}.stage-item{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;border-radius:8px;border-left:4px solid}.stage-item.working{background:#e6fffa;border-color:var(--secondary-color)}.stage-item.retired{background:#fef3c7;border-color:#f6ad55}.stage-name{font-weight:600;color:#1e293b}.stage-years{font-size:13px;color:#64748b}.btn-calculate-main{padding:16px 40px;background:linear-gradient(135deg,var(--secondary-color) 0%,var(--secondary-dark) 100%);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #4ecdc459}.btn-calculate-main:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4ecdc473}.btn-calculate-main:active{transform:translateY(0)}.client-name{color:#fff;font-weight:600;font-size:14px}#timeline-view{display:none;position:relative}#timeline-view.active{display:block}.timeline-controls{display:flex;gap:10px;align-items:center}.timeline-controls select{padding:8px 16px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;background:#fff;cursor:pointer}.btn-toggle.active{background:var(--secondary-color);border-color:var(--secondary-color);color:#fff}.timeline-legend{display:flex;flex-wrap:wrap;gap:15px;align-items:center;margin-bottom:15px;padding:15px 20px;background:#fff;border-radius:10px;box-shadow:0 1px 4px #0000000a}.timeline-legend label{display:flex;align-items:center;gap:6px;font-size:13px;color:#475569;cursor:pointer}.timeline-legend input[type=checkbox]{accent-color:var(--secondary-color)}.btn-hide-all{padding:6px 14px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;cursor:pointer;margin-left:auto}.btn-hide-all:hover{background:#e2e8f0}.timeline-phases{display:flex;justify-content:space-around;margin-bottom:25px;background:linear-gradient(90deg,#4ecdc4,#3db9b0 35%,#f6ad55 65%,#0d1b2a);padding:12px 20px;border-radius:8px}.timeline-phases .phase{color:#fff;font-weight:600;font-size:14px;text-shadow:0 1px 2px rgba(0,0,0,.2)}.timeline-accordion{display:flex;flex-direction:column;gap:2px;margin-bottom:25px}.accordion-panel-header .panel-icon{font-size:1.4rem}.accordion-panel-header .panel-title{flex:1;font-weight:600;color:#1e293b;font-size:15px}.accordion-panel-header .panel-value{color:var(--secondary-color);font-weight:700;font-size:15px}.accordion-panel-header .panel-count{background:var(--secondary-color);color:#fff;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}.accordion-panel-header .panel-badges{display:flex;gap:4px}.person-badge{font-size:1.2rem;color:var(--secondary-color)}.accordion-arrow{color:#94a3b8;font-size:12px;transition:transform .2s}.accordion-panel.open .accordion-arrow{transform:rotate(180deg)}.accordion-panel.open .accordion-panel-content{display:block}.wealth365-age-timeline{margin:20px 0;position:relative}.life-phase-band{height:100%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2);position:absolute}.life-phase-band.working{background:#94a3b8}.life-phase-band.winding{background:#fbbf24}.life-phase-band.living{background:var(--secondary-color)}.life-phase-band.later{background:#a78bfa}.age-markers{display:flex;justify-content:space-between;padding:8px 0;font-size:11px;color:#64748b}.event-markers{position:relative;margin-top:15px;min-height:80px;padding:10px 0}.event-marker{position:absolute;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;cursor:pointer;z-index:10;transition:transform .2s ease}.event-marker:hover{transform:translate(-50%) scale(1.1);z-index:20}.event-marker-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;box-shadow:0 2px 8px #0003;border:2px solid white}.event-marker-icon{font-size:14px}.event-marker-label{font-size:10px;font-weight:600;color:#1e3a5f;margin-top:4px;max-width:60px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-marker-age{font-size:9px;color:#64748b}.age-markers{position:relative;height:20px;margin-top:5px}.age-marker{position:absolute;transform:translate(-50%);font-size:10px;color:#94a3b8;font-weight:500}.panel-icon-small{font-size:1.2rem}.panel-title-small{font-weight:600;color:#1e293b;flex:1}.goals-table,.events-table{width:100%;border-collapse:collapse;font-size:13px}.goals-table th,.events-table th{text-align:left;padding:8px 10px;color:#64748b;font-weight:500;font-size:11px;text-transform:uppercase;border-bottom:1px solid #e2e8f0}.goals-table td,.events-table td{padding:10px;border-bottom:1px solid #f1f5f9;color:#334155}.progress-bar-mini{width:80px;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-bar-mini .progress-fill,.progress-fill-mini{height:100%;background:linear-gradient(90deg,#4ecdc4,#3db9b0);border-radius:4px}.event-icon-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;vertical-align:middle}.goal-name-cell,.event-name-cell{font-weight:500;color:#1e293b}.amount-cell{font-weight:600;color:#059669;text-align:right}.owner-cell,.year-cell{color:#64748b;font-size:12px}.year-cell{font-weight:600;color:#334155}.actions-cell{text-align:right;white-space:nowrap}.btn-icon-small{background:transparent;border:none;cursor:pointer;padding:4px 6px;font-size:14px;color:#94a3b8;border-radius:4px;transition:all .2s}.btn-icon-small:hover{background:#f1f5f9;color:#475569}.goals-table tr:hover,.events-table tr:hover{background:#f8fafc}.goals-table tr:hover .btn-icon-small,.events-table tr:hover .btn-icon-small{color:#64748b}.btn-add-goal,.btn-add-goal:hover,@media (max-width: 768px){}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-dialog{background:#fff;border-radius:8px;width:100%;max-width:500px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.modal-header h3{font-size:16px;font-weight:600;color:#1e293b}.modal-actions{display:flex;gap:10px}.btn-cancel{background:transparent;border:none;color:#64748b;padding:8px 16px;cursor:pointer;font-size:13px}.btn-cancel:hover{color:#1e293b}.btn-done{background:#84cc16;color:#fff;border:none;padding:8px 20px;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500}.btn-done:hover{background:#65a30d}.modal-body{padding:25px;max-height:70vh;overflow-y:auto}.form-note{font-size:12px;color:#64748b;margin-bottom:20px}.modal-form-group{margin-bottom:18px}.modal-form-group label{display:block;font-size:13px;color:#64748b;margin-bottom:6px}.modal-form-group input,.modal-form-group select{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:4px;font-size:14px;color:#1e293b;background:#fff}.modal-form-group input:focus,.modal-form-group select:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px #4ecdc41a}.date-inputs{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:10px}.date-inputs input{text-align:center}.person-icon-indicator{display:flex;justify-content:center;padding:15px 0}.person-icon-indicator span{font-size:2.5rem;color:var(--secondary-color)}.modal-people-list{border-top:1px solid #e2e8f0;padding:20px;background:#f8fafc}.people-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.people-list-header h4{font-size:14px;color:#1e293b;font-weight:600}.btn-add-person{background:transparent;border:1px dashed #4ecdc4;color:var(--secondary-color);padding:6px 12px;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s}.btn-add-person:hover{background:#4ecdc41a}.people-list-items{display:flex;flex-direction:column;gap:8px}.person-list-item{display:flex;align-items:center;padding:10px 12px;background:#fff;border-radius:6px;border:1px solid #e2e8f0;gap:12px}.person-list-item.primary{border-color:var(--secondary-color);background:#4ecdc40d}.person-list-item .person-icon{font-size:1.4rem;color:#64748b}.person-list-item.primary .person-icon{color:var(--secondary-color)}.person-list-item .person-info{flex:1}.person-list-item .person-name{font-weight:600;color:#1e293b;font-size:13px}.person-list-item .person-type{font-size:11px;color:#64748b}.person-list-item .person-age{font-size:12px;color:#64748b}.person-list-item .person-actions{display:flex;gap:6px}.person-list-item .btn-edit-person,.person-list-item .btn-remove-person{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;font-size:14px}.person-list-item .btn-edit-person:hover{color:var(--secondary-color)}.person-list-item .btn-remove-person:hover{color:#ef4444}.asset-pie-chart{height:200px}#insights-view{display:none}#insights-view.active{display:block}.insight-card{background:#fff;border-radius:12px;padding:25px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0;width:100%}.insight-card.warning{border-left:4px solid #f59e0b}.insight-icon{font-size:2rem;margin-bottom:15px}.insight-card h3{font-size:1.1rem;color:#1e293b;margin-bottom:15px;font-weight:600}.gauge-fill{height:100%;background:linear-gradient(90deg,#ef4444,#f59e0b,#22c55e);border-radius:6px;transition:width .5s ease}.insight-value{font-size:2rem;font-weight:700;color:var(--secondary-color);margin-bottom:8px}.risk-list,.recommendations-list{list-style:none;padding:0;margin:0}.risk-list li,.recommendations-list li{padding:8px 0;border-bottom:1px solid #f1f5f9;font-size:14px;color:#475569}.risk-list li:last-child,.recommendations-list li:last-child{border-bottom:none}#what-if-view{display:none}#what-if-view.active{display:block}.whatif-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.whatif-header h2{font-size:1.5rem;color:#1e293b;font-weight:600}.scenarios-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:30px}.scenario-card{background:#fff;border-radius:12px;padding:25px;box-shadow:0 2px 8px #0000000f;border:2px solid #e2e8f0}.scenario-card.base{border-color:var(--secondary-color);background:linear-gradient(to bottom,#e6fffa,#fff)}.scenario-card h3{font-size:1.1rem;color:#1e293b;margin-bottom:20px;font-weight:600}.scenario-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.scenario-name{flex:1;padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:15px;font-weight:600}.scenario-adjustments{margin-bottom:20px}.adjustment-row{display:flex;align-items:center;gap:15px;margin-bottom:12px}.adjustment-row label{width:140px;font-size:14px;color:#475569}.adjustment-row input[type=range]{flex:1;accent-color:var(--secondary-color)}.scenario-summary{display:grid;grid-template-columns:1fr 1fr;gap:15px}.scenario-metric{text-align:center;padding:15px;background:#f8fafc;border-radius:8px}.metric-label{display:block;font-size:12px;color:#64748b;margin-bottom:6px}.metric-value{display:block;font-size:1.25rem;font-weight:700;color:#1e293b}.scenario-metric.difference.positive .metric-value{color:#22c55e}.scenario-metric.difference.negative .metric-value{color:#ef4444}.whatif-comparison-chart{background:#fff;border-radius:12px;padding:25px;min-height:350px;box-shadow:0 2px 8px #0000000f}#reports-view{display:none}#reports-view.active{display:block}.reports-header{margin-bottom:25px}.reports-header h2{font-size:1.5rem;color:#1e293b;font-weight:600}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:30px}.report-card{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0;cursor:pointer;transition:all .2s;text-align:center}.report-card:hover{border-color:var(--secondary-color);transform:translateY(-3px);box-shadow:0 8px 25px #4ecdc433}.report-icon{font-size:2.5rem;margin-bottom:15px}.report-card h3{font-size:1.1rem;color:#1e293b;margin-bottom:10px;font-weight:600}.report-card p{font-size:14px;color:#64748b}.report-preview{background:#fff;border-radius:12px;padding:40px;min-height:400px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0}.preview-placeholder{text-align:center;color:#94a3b8;font-size:16px}.settings-btn{background:#ffffff26;border:none;color:#fff;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:18px;transition:background .2s}.settings-btn:hover{background:#ffffff40}.plan-settings-dialog{width:90%;max-width:900px;max-height:85vh}.plan-settings-content{display:flex;min-height:500px}.settings-sidebar{width:200px;background:#f8fafc;border-right:1px solid #e2e8f0;padding:15px 0;flex-shrink:0}.settings-tab{display:block;width:100%;padding:12px 20px;border:none;background:transparent;text-align:left;cursor:pointer;font-size:14px;color:#64748b;transition:all .2s;border-left:3px solid transparent}.settings-tab:hover{background:#f1f5f9;color:#1e293b}.settings-tab.active{background:#fff;color:var(--secondary-color);border-left-color:var(--secondary-color);font-weight:600}.settings-main{flex:1;padding:25px 30px;overflow-y:auto;max-height:70vh}.settings-section{display:none}.settings-section.active{display:block}.settings-section h4{font-size:1.3rem;color:#1e293b;margin-bottom:8px;font-weight:600}.settings-section .form-note{color:#64748b;font-size:13px;margin-bottom:25px}.settings-form-group{margin-bottom:20px}.settings-form-group label{display:block;font-size:13px;color:#475569;margin-bottom:5px;font-weight:600;letter-spacing:.01em}.settings-form-group input,.settings-form-group select{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;transition:border-color .2s}.settings-form-group input:focus,.settings-form-group select:focus{outline:none;border-color:var(--secondary-color)}.input-with-unit{display:flex;align-items:center;gap:8px}.input-with-unit input{flex:1;max-width:150px}.input-with-unit .unit{color:#64748b;font-size:14px;font-weight:500}.toggle-buttons{display:flex;gap:0;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden;width:-moz-fit-content;width:fit-content}.toggle-btn{padding:8px 20px;border:none;background:#f8fafc;color:#64748b;cursor:pointer;font-size:14px;transition:all .2s}.toggle-btn:first-child{border-right:1px solid #e2e8f0}.toggle-btn.active{background:var(--secondary-color);color:#fff}.toggle-btn:hover:not(.active){background:#f1f5f9}.allocation-total{background:#f8fafc;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:600;color:#1e293b}.allocation-total.error{background:#fee2e2;color:#dc2626}.allocation-total.success{background:#dcfce7;color:#16a34a}.order-list{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.order-item{display:flex;align-items:center;padding:14px 16px;background:#fff;border-bottom:1px solid #e2e8f0;cursor:grab;transition:background .2s}.order-item:last-child{border-bottom:none}.order-item:hover{background:#f8fafc}.order-item.dragging{opacity:.5;background:#e2e8f0}.drag-handle{color:#94a3b8;margin-right:12px;cursor:grab}.order-number{width:28px;height:28px;background:var(--secondary-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;margin-right:12px}.order-name{color:#1e293b;font-size:14px}.settings-info{margin-top:20px;padding:15px;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px}.settings-info p{color:#92400e;font-size:13px;margin:0}@media(max-width:768px){.plan-settings-dialog{width:95%;max-height:90vh}.plan-settings-content{flex-direction:column}.settings-sidebar{width:100%;display:flex;flex-wrap:wrap;padding:10px;border-right:none;border-bottom:1px solid #e2e8f0}.settings-tab{flex:1 1 auto;text-align:center;padding:10px 12px;font-size:12px;border-left:none;border-bottom:2px solid transparent}.settings-tab.active{border-left-color:transparent;border-bottom-color:var(--secondary-color)}.settings-main{padding:20px;max-height:60vh}}.expense-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.expense-header h4{margin:0}.btn-add-expense{background:var(--secondary-color);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.btn-add-expense:hover{background:#3db9b0}.expense-summary{background:#f8fafc;border-radius:10px;padding:15px;margin-bottom:20px}.summary-row{display:flex;justify-content:space-between;padding:6px 0;font-size:14px}.summary-row:first-child{border-bottom:1px solid #e2e8f0;padding-bottom:10px;margin-bottom:6px}.expense-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.expense-item{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px 15px;transition:all .2s}.expense-item:hover{border-color:var(--secondary-color);box-shadow:0 2px 8px #4ecdc426}.expense-icon{font-size:24px;flex-shrink:0}.expense-info{flex:1}.expense-name{font-weight:600;color:#1e293b;font-size:14px}.expense-meta{font-size:12px;color:#64748b;margin-top:2px}.expense-actions{display:flex;gap:6px}.expense-actions button{background:#f1f5f9;border:none;padding:6px 10px;border-radius:5px;cursor:pointer;font-size:14px;transition:background .2s}.expense-actions button:hover{background:#e2e8f0}.expense-tab.active{background:#fff;color:var(--secondary-color);border-left-color:var(--secondary-color);font-weight:600}.expense-section{display:none}.expense-section.active{display:block}.expense-section h4{font-size:1.2rem;color:#1e293b;margin-bottom:8px;font-weight:600}.amount-with-frequency{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.amount-with-frequency .input-with-unit{flex:0 0 auto;min-width:100px;max-width:140px}.amount-with-frequency select{width:130px;flex-shrink:0}.amount-with-frequency>div[style*="font-size: 11px"]{flex-basis:100%;margin-top:0}.expense-priority-section{margin-top:20px;padding-top:20px;border-top:1px solid #e2e8f0}.expense-priority-section>label{display:block;font-size:14px;color:#475569;margin-bottom:10px;font-weight:500}.priority-slider-container{display:flex;align-items:center;gap:12px;margin-bottom:12px}.priority-label{font-size:12px;color:#64748b;white-space:nowrap}.priority-slider{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to right,#10b981,#fcd34d,#f87171);border-radius:3px;outline:none}.priority-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:#fff;border:2px solid #4ecdc4;border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #00000026}.priority-categories{display:flex;justify-content:space-between;padding:0 30px}.priority-cat{font-size:13px;color:#94a3b8;padding:4px 12px;border-radius:4px;cursor:pointer;transition:all .2s}.priority-cat.active{background:var(--secondary-color);color:#fff}.expense-inflation-section{margin-top:20px;padding-top:20px;border-top:1px solid #e2e8f0}.expense-inflation-section>label{display:block;font-size:14px;color:#475569;margin-bottom:10px;font-weight:500}.inflation-display{display:flex;align-items:center;gap:15px;background:#f8fafc;padding:12px 16px;border-radius:8px}.inflation-display span:first-child{color:#64748b;font-size:14px}.inflation-value{font-weight:600;color:#1e293b}.btn-edit-inline{background:transparent;border:1px solid #e2e8f0;color:#64748b;padding:4px 10px;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s}.btn-edit-inline:hover{border-color:var(--secondary-color);color:var(--secondary-color)}.inflation-edit{display:flex;align-items:center;gap:8px;margin-top:10px}.inflation-edit input{width:80px;padding:8px;border:1px solid #e2e8f0;border-radius:6px}.expense-steps-list{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:15px}.step-item{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e2e8f0}.step-item:last-child{border-bottom:none}.step-age{color:#64748b;font-size:14px}.step-amount{font-weight:500;color:#1e293b}.btn-add-step{background:#f8fafc;border:1px dashed #cbd5e1;color:#64748b;padding:10px 16px;border-radius:6px;font-size:13px;cursor:pointer;width:100%;transition:all .2s}.btn-add-step:hover{border-color:var(--secondary-color);color:var(--secondary-color)}.step-actions{display:flex;gap:8px;margin-left:auto}.btn-step-edit,.btn-step-remove{background:transparent;border:1px solid #e2e8f0;padding:4px 10px;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s}.btn-step-edit{color:var(--secondary-color);border-color:var(--secondary-color)}.btn-step-edit:hover{background:var(--secondary-color);color:#fff}.btn-step-remove{color:#ef4444;border-color:#ef4444}.btn-step-remove:hover{background:#ef4444;color:#fff}.step-edit-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.step-edit-content{background:#fff;border-radius:12px;padding:24px;width:400px;max-width:90%;box-shadow:0 10px 40px #0003}.step-edit-content h4{margin:0 0 20px;color:#1e293b;font-size:18px}.step-edit-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:15px;border-top:1px solid #e2e8f0}.payment-order-info{margin-top:20px;padding:15px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px}.payment-order-info p{color:#92400e;font-size:13px;margin:0}.expense-section textarea{width:100%;padding:12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical}.expense-section textarea:focus{outline:none;border-color:var(--secondary-color)}@media(max-width:768px){.expense-tab.active{border-left-color:transparent;border-bottom-color:var(--secondary-color)}.amount-with-frequency{flex-direction:column;align-items:stretch}.amount-with-frequency select{width:100%}}.income-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.income-header h4{margin:0}.btn-add-income{background:var(--secondary-color);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.btn-add-income:hover{background:#3db9b0}.income-summary{background:#f8fafc;border-radius:10px;padding:15px;margin-bottom:20px}.income-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.income-item{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px 15px;transition:all .2s}.income-item:hover{border-color:var(--secondary-color);box-shadow:0 2px 8px #4ecdc426}.income-icon{font-size:24px;flex-shrink:0}.income-info{flex:1}.income-name{font-weight:600;color:#1e293b;font-size:14px}.income-meta{font-size:12px;color:#64748b;margin-top:2px}.income-actions{display:flex;gap:6px}.income-actions button{background:#f1f5f9;border:none;padding:6px 10px;border-radius:5px;cursor:pointer;font-size:14px;transition:background .2s}.income-actions button:hover{background:#e2e8f0}.income-tab{display:block;width:100%;padding:12px 18px;border:none;background:transparent;text-align:left;cursor:pointer;font-size:14px;color:#64748b;transition:all .2s;border-left:3px solid transparent}.income-tab:hover{background:#f1f5f9;color:#1e293b}.income-tab.active{background:#fff;color:var(--secondary-color);border-left-color:var(--secondary-color);font-weight:600}.income-section{display:none}.income-section.active{display:block}.income-section h4{font-size:1.15rem;color:#1e293b;margin-bottom:4px;font-weight:700}.income-section .form-note{font-size:12px;color:#94a3b8;margin-bottom:22px}.income-section h5{font-size:1rem;color:#475569;margin:25px 0 15px;padding-top:15px;border-top:1px solid #e2e8f0}.income-inline-form{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:20px;overflow:hidden}.income-inline-header{background:#f8fafc;padding:16px 20px 0;border-bottom:1px solid #e2e8f0}.income-inline-header h4{margin:0 0 12px;font-size:16px;font-weight:700;color:#1e293b}.income-inline-tabs{display:flex;gap:0}.income-inline-tab{padding:10px 20px;border:none;background:transparent;cursor:pointer;font-size:13px;font-weight:500;color:#64748b;border-bottom:2px solid transparent;transition:all .15s ease}.income-inline-tab:hover{color:#1e293b}.income-inline-tab.active{color:var(--secondary-color);border-bottom-color:var(--secondary-color);font-weight:600}.income-inline-body{padding:24px 20px 8px}.income-inline-section{display:none}.income-inline-section.active{display:block}.income-inline-form .form-actions{padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;display:flex;justify-content:flex-end;gap:10px}.expense-inline-form{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:20px;overflow:hidden}.expense-inline-header{background:#f8fafc;padding:16px 20px 0;border-bottom:1px solid #e2e8f0}.expense-inline-header h4{margin:0 0 12px;font-size:16px;font-weight:700;color:#1e293b}.expense-inline-tabs{display:flex;gap:0}.expense-inline-tab{padding:10px 20px;border:none;background:transparent;cursor:pointer;font-size:13px;font-weight:500;color:#64748b;border-bottom:2px solid transparent;transition:all .15s ease}.expense-inline-tab:hover{color:#1e293b}.expense-inline-tab.active{color:var(--secondary-color);border-bottom-color:var(--secondary-color);font-weight:600}.expense-inline-body{padding:24px 20px 8px}.expense-inline-section{display:none}.expense-inline-section.active{display:block}.expense-inline-form .form-actions{padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;display:flex;justify-content:flex-end;gap:10px}.income-growth-section{margin-top:28px;padding-top:22px;border-top:1px solid #e2e8f0}.income-growth-section h5{margin:0 0 12px;padding-top:0;border-top:none;font-size:14px;font-weight:700;color:#1e293b}.growth-display{display:flex;align-items:center;gap:12px;background:#f8fafc;padding:10px 14px;border-radius:8px;border:1px solid #e2e8f0}.growth-display span:first-child{color:#64748b;font-size:14px}.growth-value{font-weight:600;color:#1e293b}.growth-edit{display:flex;align-items:center;gap:8px;margin-top:10px}.growth-edit input{width:80px;padding:8px;border:1px solid #e2e8f0;border-radius:6px}.income-pension-section{margin-top:28px;padding-top:22px;border-top:1px solid #e2e8f0}.income-pension-section h5{margin:0 0 12px;padding-top:0;border-top:none;font-size:14px;font-weight:700;color:#1e293b}.income-pension-section .form-row{display:flex;gap:16px;margin-top:12px}.income-pension-section .settings-form-group.half{flex:1}.income-steps-list{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:15px}.empty-state{text-align:center;padding:30px 20px;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:10px}.empty-state p{color:#64748b;margin-bottom:15px;font-size:14px}@media(max-width:768px){.income-tab{flex:1 1 auto;text-align:center;padding:8px 10px;font-size:12px;border-left:none;border-bottom:2px solid transparent}.income-tab.active{border-left-color:transparent;border-bottom-color:var(--secondary-color)}.income-pension-section .form-row{flex-direction:column;gap:10px}}.insight-card.summary{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}.insights-grid.simulations{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:20px}.simulation-card .sim-icon{font-size:28px;margin-bottom:10px}.simulation-results-panel{background:#fff;border-radius:12px;padding:24px;margin-top:30px;box-shadow:0 4px 16px #0000001a}.simulation-results-panel .results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.simulation-dialog{width:700px;max-width:95vw;max-height:90vh;overflow:auto}.simulation-modal-content{padding:20px;background:#f8fafc}.sim-form h4{margin:0 0 8px;color:var(--primary-color)}.sim-form .form-note{color:#64748b;font-size:13px;margin-bottom:20px}.sim-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.sim-form-grid .form-group{display:flex;flex-direction:column}.sim-form-grid .form-group label{font-size:13px;color:#475569;margin-bottom:6px;font-weight:500}.sim-form-grid .form-group input,.sim-form-grid .form-group select{padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;background:#fff}.sim-form-grid .form-group input:focus,.sim-form-grid .form-group select:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px #4ecdc41a}.sim-modal-results{margin-top:24px;padding-top:24px;border-top:1px solid #e2e8f0}.sim-modal-results h4{margin:0 0 16px;color:var(--primary-color)}.sim-results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.sim-result-item{display:flex;flex-direction:column;background:#fff;padding:12px;border-radius:8px;border:1px solid #e2e8f0}.sim-result-item .label{font-size:12px;color:#64748b;margin-bottom:4px}.sim-result-item .value{font-size:16px;font-weight:600;color:var(--primary-color)}.sim-result-item.highlight{background:#e0f7f5;border-color:var(--secondary-color)}.sim-result-item.highlight .value{color:#0d9488}.sim-result-item.error{background:#fef2f2;border-color:#fca5a5}.sim-result-item.error .value{color:#dc2626}.sim-result-full{grid-column:1 / -1;background:#fff;padding:12px;border-radius:8px;border:1px solid #e2e8f0}.sim-result-full ul{margin:8px 0 0;padding-left:20px}.sim-result-full li{font-size:13px;color:#475569;margin-bottom:4px}.status-success{color:#059669;font-weight:600}.status-danger{color:#dc2626;font-weight:600}.status-warning{color:#d97706;font-weight:600}#sim-modal-results-chart{margin-top:20px;min-height:300px}.modal-actions .btn-primary{background:var(--secondary-color);color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.modal-actions .btn-primary:hover{background:#38b2ac}@media(max-width:600px){.simulation-dialog{width:100%;max-height:95vh}.sim-form-grid{grid-template-columns:1fr}.sim-results-grid{grid-template-columns:1fr 1fr}}.compare-plans-container{display:flex;gap:20px;align-items:flex-start}.compare-plan{flex:1;background:#f8fafc;border-radius:8px;padding:20px;border:2px solid #e2e8f0}.compare-plan.plan-a{border-color:var(--secondary-color)}.compare-plan.plan-b{border-color:#45b7d1}.compare-plan h5{margin:0 0 16px;font-size:15px;font-weight:600;color:#1e293b}.compare-vs{display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#94a3b8;padding:0 10px}.compare-results-grid{display:grid;grid-template-columns:150px 1fr 1fr 80px;gap:8px 12px;margin-bottom:20px}.compare-col{padding:8px 12px;font-size:14px;color:#475569}.compare-col.header{font-weight:600;color:#1e293b;background:#f1f5f9;border-radius:4px}.compare-col.label{font-weight:500;color:#64748b}.compare-col.winner{background:#4ecdc426;color:#0d9488;font-weight:600;border-radius:4px}.compare-col.winner-badge{display:flex;align-items:center;justify-content:center;background:var(--secondary-color);color:#fff;font-weight:600;border-radius:4px}.compare-summary{background:#f8fafc;padding:16px;border-radius:8px;margin-top:16px}.compare-summary p{margin:8px 0;font-size:14px;color:#475569}.insights-container{display:flex;flex-direction:column;gap:16px}.insight-card{background:#f8fafc;border-radius:8px;padding:16px 20px;border-left:4px solid #94a3b8;display:flex;gap:16px;align-items:flex-start}.insight-card.high{border-left-color:#ef4444;background:#fef2f2}.insight-card.medium{border-left-color:#f59e0b;background:#fffbeb}.insight-card.low{border-left-color:#3b82f6;background:#eff6ff}.insight-card.success{border-left-color:#22c55e;background:#f0fdf4}.insight-icon{font-size:24px;flex-shrink:0}.insight-content{flex:1}.insight-title{font-weight:600;color:#1e293b;margin-bottom:4px}.insight-message{font-size:14px;color:#475569;line-height:1.5}.insight-action{font-size:13px;color:var(--secondary-color);margin-top:8px;font-weight:500}.legacy-flow-container{background:#f8fafc;border-radius:12px;padding:24px;margin:20px 0}.legacy-person-section{margin-bottom:32px}.legacy-person-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.legacy-person-icon{width:32px;height:32px;background:var(--secondary-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px}.legacy-person-name{font-weight:600;color:#1e293b;font-size:16px}.legacy-person-value{color:var(--secondary-color);font-weight:600}.legacy-person-meta{font-size:13px;color:#64748b}.legacy-flow-row{display:flex;align-items:center;gap:12px;margin:16px 0}.legacy-box{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px 16px;min-width:120px;text-align:center}.legacy-box.estate{border-color:var(--secondary-color);border-width:2px}.legacy-box.beneficiary{border-color:#45b7d1}.legacy-box.tax{border-color:#ef4444;background:#fef2f2}.legacy-box-label{font-size:12px;color:#64748b;margin-bottom:4px}.legacy-box-value{font-size:16px;font-weight:600;color:#1e293b}.legacy-arrow{color:#94a3b8;font-size:20px}.legacy-tax-row.total{font-weight:600;color:#1e293b;border-top:2px solid #e2e8f0;margin-top:8px;padding-top:12px}.legacy-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:24px;padding-top:24px;border-top:2px solid #e2e8f0}.legacy-summary-item{text-align:center}.legacy-summary-label{font-size:13px;color:#64748b;margin-bottom:4px}.legacy-summary-value{font-size:24px;font-weight:600;color:#1e293b}.legacy-summary-value.tax{color:#ef4444}.surplus-allocation{background:#f8fafc;border-radius:8px;padding:16px;margin:16px 0}.surplus-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.surplus-amount{font-size:24px;font-weight:600;color:var(--secondary-color)}.surplus-bar-container{display:flex;height:24px;border-radius:4px;overflow:hidden;margin-bottom:12px}.surplus-bar-segment{display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:500}.surplus-legend{display:flex;flex-wrap:wrap;gap:16px}.surplus-legend-item{display:flex;align-items:center;gap:8px;font-size:13px}.surplus-legend-color{width:16px;height:16px;border-radius:4px}@media(max-width:768px){.compare-plans-container{flex-direction:column}.compare-vs{transform:rotate(90deg);padding:10px 0}.compare-results-grid{grid-template-columns:1fr 1fr}.legacy-flow-row{flex-wrap:wrap}}.household-context{display:inline-flex;align-items:center;gap:.5rem}.member-selector{padding:4px 8px;border-radius:4px;border:1px solid var(--border-color, #ccc);background:#fff;font-size:.85rem;min-width:150px}.btn-invite-member{background:var(--accent-teal, #00b8a9);color:#fff;border:none;padding:4px 10px;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:700;transition:background-color .2s}.btn-invite-member:hover{background:var(--accent-teal-dark, #009688)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-dialog{background:#fff;border-radius:8px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #eee;background:var(--primary-navy, #1a237e);color:#fff;border-radius:8px 8px 0 0}.modal-header h3{margin:0;font-size:1.2rem}.modal-actions{display:flex;gap:.5rem}.modal-body{padding:1.5rem}.modal-form-group{margin-bottom:1rem}.modal-form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.modal-form-group input,.modal-form-group select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.btn-cancel{background:#f5f5f5;color:#666;border:1px solid #ddd;padding:8px 16px;border-radius:4px;cursor:pointer}.btn-done{background:var(--accent-teal, #00b8a9);color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer}.btn-cancel:hover{background:#e0e0e0}.btn-done:hover{background:var(--accent-teal-dark, #009688)}.tab-settings-btn{background:transparent;border:none;color:var(--text-light);font-size:1.2rem;cursor:pointer;padding:8px 12px;opacity:.6;transition:opacity .2s}.tab-settings-btn:hover{opacity:1}.tab-settings-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:none;justify-content:center;align-items:center;z-index:10000}.tab-settings-modal.active{display:flex}.tab-settings-content{background:#fff;border-radius:12px;padding:24px;min-width:320px;max-width:400px;box-shadow:0 10px 40px #0000004d}.tab-settings-content h3{margin:0 0 16px;color:var(--primary-color)}.tab-toggle-list{list-style:none;padding:0;margin:0 0 20px}.tab-toggle-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border-color)}.tab-toggle-item:last-child{border-bottom:none}.tab-toggle-item label{font-size:.95rem;color:var(--text-primary)}.tab-settings-actions{display:flex;gap:10px;justify-content:flex-end}.tab-settings-actions button{padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem}.tab-settings-actions .save-btn{background:var(--secondary-color);color:#fff;border:none}.tab-settings-actions .cancel-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-primary)}.drilldown-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:none;justify-content:center;align-items:center;z-index:10001}.drilldown-modal.active{display:flex}.drilldown-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d}.drilldown-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color);background:var(--primary-color);color:#fff;border-radius:12px 12px 0 0}.drilldown-header h3{margin:0;font-size:1.1rem}.drilldown-close{background:transparent;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.drilldown-body{padding:20px;overflow-y:auto;flex:1}.drilldown-footer{padding:12px 20px;border-top:1px solid var(--border-color);background:#f8fafc;border-radius:0 0 12px 12px}.drilldown-hint{font-size:.8rem;color:#64748b}.drilldown-table{width:100%;border-collapse:collapse;font-size:.9rem}.drilldown-table th,.drilldown-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e2e8f0}.drilldown-table th{background:#f1f5f9;font-weight:600;color:var(--primary-color)}.drilldown-table tr:hover{background:#f8fafc}.drilldown-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.drilldown-stat{background:#f8fafc;padding:12px;border-radius:8px;text-align:center}.drilldown-stat-value{font-size:1.3rem;font-weight:700;color:var(--primary-color)}.drilldown-stat-label{font-size:.8rem;color:#64748b;margin-top:4px}.bar-row.clickable-bar{cursor:pointer;transition:background-color .2s,transform .1s;padding:5px;border-radius:5px;margin:-5px -5px 7px}.bar-row.clickable-bar:hover{background-color:#ffffff1a;transform:translate(3px)}.dashboard-grid{display:grid;grid-template-columns:80% 20%;gap:20px;padding:20px;width:100%;box-sizing:border-box}.dashboard-main{display:flex;flex-direction:column;gap:30px}.dashboard-side{display:flex;flex-direction:column;gap:15px}.dashboard-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.dashboard-section-header{background:linear-gradient(135deg,#1e3a5f,#2c5282);color:#fff;padding:15px 20px;font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:10px}.dashboard-section-header .section-icon{font-size:1.3rem}.dashboard-section-content{padding:20px}.chart-container{min-height:350px;margin-bottom:20px}.dashboard-data-table{width:100%;border-collapse:collapse;font-size:.95rem}.dashboard-data-table thead th{background:#f1f5f9;color:#1e3a5f;padding:12px 15px;text-align:left;font-weight:600;border-bottom:2px solid #e2e8f0;position:sticky;top:0}.dashboard-data-table tbody tr{cursor:pointer;transition:all .2s ease}.dashboard-data-table tbody tr:hover{background:#f0f9ff;transform:translate(5px)}.dashboard-data-table tbody tr:active{background:#dbeafe}.dashboard-data-table td{padding:12px 15px;border-bottom:1px solid #e2e8f0;vertical-align:middle}.dashboard-data-table .row-name{display:flex;align-items:center;gap:10px}.dashboard-data-table .row-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.9rem}.dashboard-data-table .row-icon.income{background:#dcfce7;color:#16a34a}.dashboard-data-table .row-icon.expense{background:#fee2e2;color:#dc2626}.dashboard-data-table .row-icon.asset{background:#dbeafe;color:#2563eb}.dashboard-data-table .row-icon.liability{background:#fef3c7;color:#d97706}.dashboard-data-table .row-icon.neutral{background:#f1f5f9;color:#64748b}.dashboard-data-table .amount{font-weight:600;font-family:Courier New,monospace}.dashboard-data-table .amount.positive{color:#16a34a}.dashboard-data-table .amount.negative{color:#dc2626}.dashboard-data-table .edit-indicator{opacity:0;color:#3b82f6;font-size:1rem;transition:opacity .2s ease}.dashboard-data-table tbody tr:hover .edit-indicator{opacity:1}.dashboard-data-table .category-row{background:#f8fafc;cursor:default}.dashboard-data-table .category-row:hover{background:#f8fafc;transform:none}.dashboard-data-table .category-row td{font-weight:700;color:#1e3a5f;padding:10px 15px;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.dashboard-data-table .total-row{background:#1e3a5f;color:#fff;cursor:default}.dashboard-data-table .total-row:hover{background:#1e3a5f;transform:none}.dashboard-data-table .total-row td{font-weight:700;padding:14px 15px}.table-scroll-container{max-height:400px;overflow-y:auto}.side-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;padding:15px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:12px;border:1px solid #e2e8f0}.side-card:hover{background:#f0f9ff;transform:translate(5px);border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.side-card-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.side-card-icon.family{background:#fce7f3;color:#db2777}.side-card-icon.goals{background:#fef3c7;color:#d97706}.side-card-icon.estate{background:#e0e7ff;color:#6366f1}.side-card-icon.transfers{background:#d1fae5;color:#059669}.side-card-icon.kyc{background:#fee2e2;color:#dc2626}.side-card-icon.settings{background:#f1f5f9;color:#64748b}.side-card-content{flex:1;min-width:0}.side-card-title{font-weight:600;color:#1e3a5f;font-size:.95rem;margin-bottom:2px}.side-card-subtitle{color:#64748b;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-card-arrow{color:#94a3b8;font-size:1.2rem;transition:transform .2s ease}.side-card:hover .side-card-arrow{transform:translate(3px);color:#3b82f6}@media(max-width:1200px){.dashboard-grid{grid-template-columns:1fr}.dashboard-side{flex-direction:row;flex-wrap:wrap}.side-card{flex:1 1 calc(50% - 10px);min-width:200px}}@media(max-width:768px){.dashboard-grid{padding:10px}.side-card{flex:1 1 100%}.chart-container{min-height:250px}.dashboard-data-table{font-size:.85rem}.dashboard-data-table td,.dashboard-data-table th{padding:8px 10px}}@keyframes highlight-pulse{0%{background-color:#fef3c7}to{background-color:transparent}}.dashboard-grid{background:#f8fafc;border-radius:12px;margin-bottom:30px}@media(min-width:1200px){.dashboard-side{position:sticky;top:20px;align-self:start}}.generate-report-card{background:linear-gradient(135deg,#0d9488,#14b8a6);border:none}.generate-report-card:hover{background:linear-gradient(135deg,#0f766e,#0d9488);transform:translate(5px)}.generate-report-card .side-card-title{color:#fff}.generate-report-card .side-card-subtitle{color:#fffc}.generate-report-card .side-card-icon{background:#fff3;color:#fff}.generate-report-card .side-card-arrow{color:#fff}.placeholder-row td{background:#f8fafc;font-style:italic}.progress-card{background:linear-gradient(135deg,#1e3a5f,#2d4a6f);border:1px solid rgba(20,184,166,.3)}.progress-card:hover{transform:none;cursor:default}.progress-card .side-card-icon{background:#14b8a633;color:#14b8a6}.progress-bar-container{width:100%;height:8px;background:#ffffff1a;border-radius:4px;margin:8px 0 6px;overflow:hidden}.progress-bar{height:100%;background:linear-gradient(90deg,#14b8a6,#0d9488);border-radius:4px;transition:width .5s ease}.progress-stats{font-size:11px;color:#ffffffb3}.side-card.section-complete .side-card-icon{background:#22c55e33;color:#22c55e}.side-card.section-complete:after{content:"✓";position:absolute;right:30px;top:50%;transform:translateY(-50%);color:#22c55e;font-size:14px;font-weight:700}.side-card{position:relative}.progress-checklist{margin-top:10px;max-height:200px;overflow-y:auto}.checklist-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:12px;color:#fffc}.checklist-item.complete{color:#22c55e}.checklist-item.pending{color:#ffffff80}.checklist-item .check-icon{font-size:14px;width:16px}.checklist-empty{font-size:11px;color:#fff6;font-style:italic;padding:4px 0}.progress-card .side-card-content{flex:1}.plan-progress-widget{background:linear-gradient(135deg,#1e3a5f,#2d4a6f);border-radius:12px;padding:16px 20px;margin-bottom:20px;border:1px solid rgba(20,184,166,.3)}.progress-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.progress-icon{font-size:20px}.progress-title{font-size:16px;font-weight:600;color:#fff;flex:1}.progress-percent{font-size:18px;font-weight:700;color:#14b8a6}.progress-bar-main{width:100%;height:10px;background:#ffffff1a;border-radius:5px;overflow:hidden;margin-bottom:12px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#14b8a6,#0d9488);border-radius:5px;transition:width .5s ease}.progress-checklist-main{display:flex;flex-wrap:wrap;gap:8px 16px}.progress-checklist-main .checklist-item{display:flex;align-items:center;gap:6px;font-size:13px;padding:4px 0}.progress-checklist-main .checklist-item.complete{color:#22c55e}.progress-checklist-main .checklist-item.pending{color:#ffffff80}.progress-checklist-main .checklist-empty{color:#ffffff80;font-style:italic;font-size:13px}.dashboard-category-tabs,div.dashboard-data-table{display:none!important}.dashboard-section table.dashboard-data-table{display:table!important}.plan-overview,.plan-progress-widget{display:none!important}#dashboard-grid-main{display:grid!important}.ff-progress-bar{background:linear-gradient(135deg,#f8fafc,#eef2f7);border-radius:12px;padding:14px 20px;margin-bottom:16px;margin-top:8px;border:1px solid #e2e8f0}.ff-progress-bar__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ff-progress-bar__title{font-size:13px;font-weight:600;color:#1e3a5f}.ff-progress-bar__pct{font-size:13px;font-weight:700;color:#2dd4bf}.ff-progress-bar__track{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:8px}.ff-progress-bar__fill{height:100%;background:linear-gradient(90deg,#2dd4bf,#14b8a6);border-radius:4px;transition:width .5s ease}.ff-progress-bar__summary{font-size:11px;color:#64748b;display:flex;gap:12px;flex-wrap:wrap}.ff-progress-bar__summary span{display:inline-flex;align-items:center;gap:4px}.ff-progress-bar__summary .done{color:#059669}.ff-progress-bar__summary .todo{color:#94a3b8}#data-entry-view .journey-nav{padding:12px 16px;margin-bottom:8px}#data-entry-view .journey-nav__step{font-size:14px}#data-entry-view .journey-nav__subtitle{font-size:11px}.ff-progress-bar{grid-column:1 / -1}.data-panel,.panel-form,.side-panel,.overview-card,.summary-card,.dashboard-section,.holding-card,.family-card,.income-card,.expense-card,.nav-item,.tab-btn,.btn-save,.btn-cancel,.btn-add-family,.view-btn,.status-badge{border-radius:var(--radius-md)!important}.panel-form input[type=text],.panel-form input[type=number],.panel-form input[type=email],.panel-form input[type=password],.panel-form input[type=date],.panel-form select,.panel-form textarea,.form-control{border-radius:var(--radius-sm)!important}.accordion-item{border-radius:var(--radius-md)!important;overflow:hidden}.panel-card{border-radius:var(--radius-lg)!important}.summary-stat,.stat-card,.quick-stat{border-radius:var(--radius-md)!important}.add-family-form,.add-goal-form,.modal-content{border-radius:var(--radius-lg)!important}.info-box,.panel-alert,.warning-box,.success-box{border-radius:var(--radius-md)!important}.header-left{padding:5px 0}.wealth365-logo{border-radius:10px;background:var(--primary-color);padding:10px 16px}.wealth365-logo-text{display:inline-flex;align-items:center;background:var(--primary-color);padding:12px 20px;border-radius:12px;font-size:22px;font-weight:600;letter-spacing:-.5px}.wealth365-logo-text .logo-retire{color:#fff}.wealth365-logo-text .logo-365{color:var(--secondary-color);margin-left:2px}.progress-bar,.progress-fill{border-radius:var(--radius-sm)!important}.data-table tr:first-child td:first-child{border-top-left-radius:var(--radius-sm)}.data-table tr:first-child td:last-child{border-top-right-radius:var(--radius-sm)}.data-table tr:last-child td:first-child{border-bottom-left-radius:var(--radius-sm)}.data-table tr:last-child td:last-child{border-bottom-right-radius:var(--radius-sm)}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#94a3b84d;transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}.toggle-switch input:checked+.toggle-slider{background-color:#10b981}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-switch input:disabled+.toggle-slider{opacity:.6;cursor:not-allowed}.toggle-switch.always-on input:checked+.toggle-slider{background-color:#10b98166}.panel-toggle-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#ffffff0d;border-radius:10px;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.panel-toggle-card:hover{background:#ffffff14;border-color:#ffffff1a}.panel-toggle-card.disabled{opacity:.5;background:#64748b1a}.panel-toggle-card.always-on{background:#10b9811a;cursor:default}.panel-toggle-card .panel-info{flex:1;min-width:0}.panel-toggle-card .panel-name{font-weight:500;font-size:13px;display:flex;align-items:center;gap:6px}.panel-toggle-card .panel-desc{font-size:11px;color:#94a3b8;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-toggle-card .panel-badge{font-size:9px;padding:2px 6px;border-radius:4px;background:#10b98133;color:#10b981;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.panel-undo-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#1e293b,#334155);color:#f8fafc;padding:12px 20px;border-radius:10px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 20px #0006;z-index:10001;animation:slideUp .3s ease;border:1px solid rgba(255,255,255,.1)}.panel-undo-toast .undo-btn{background:#10b981;color:#fff;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-weight:600;font-size:13px;transition:background .2s}.panel-undo-toast .undo-btn:hover{background:#059669}.panel-undo-toast .undo-timer{width:100%;height:3px;background:#fff3;border-radius:2px;position:absolute;bottom:0;left:0;overflow:hidden}.panel-undo-toast .undo-timer-fill{height:100%;background:#10b981;animation:timerShrink 5s linear forwards}@keyframes timerShrink{0%{width:100%}to{width:0%}}.nav-item.panel-collapsed{opacity:.4;position:relative}.nav-item.panel-collapsed:after{content:"OFF";position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:8px;background:#ef44444d;color:#fca5a5;padding:1px 4px;border-radius:3px;font-weight:600}.panel-confirm-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10002;animation:fadeIn .2s ease}.panel-confirm-content{background:linear-gradient(135deg,#1e293b,#0f172a);padding:24px;border-radius:12px;max-width:400px;width:90%;box-shadow:0 8px 32px #00000080;border:1px solid rgba(255,255,255,.1)}.panel-confirm-content h4{margin:0 0 12px;color:#f8fafc;display:flex;align-items:center;gap:8px}.panel-confirm-content p{color:#94a3b8;margin:0 0 20px;font-size:14px;line-height:1.5}.panel-confirm-buttons{display:flex;gap:10px;justify-content:flex-end}.panel-confirm-buttons button{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.panel-confirm-buttons .cancel-btn{background:transparent;border:1px solid rgba(255,255,255,.2);color:#94a3b8}.panel-confirm-buttons .cancel-btn:hover{background:#ffffff0d;color:#f8fafc}.panel-confirm-buttons .confirm-btn{background:#ef4444;border:none;color:#fff}.panel-confirm-buttons .confirm-btn:hover{background:#dc2626}.persona-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.panel-chip:hover{opacity:.85;transform:scale(1.02)}.panel-chip .chip-remove:hover{opacity:1;color:#dc2626}.drawer-toggle-item:hover{box-shadow:0 2px 8px #0000000d}#readiness-bar{animation:readinessPulse 2s ease-in-out infinite}@keyframes readinessPulse{0%,to{opacity:1}50%{opacity:.85}}@media(max-width:768px){.persona-presets,.drawer-grid{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:480px){.persona-presets,.drawer-grid{grid-template-columns:1fr!important}}.user-menu-container{position:relative}.user-menu-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:4px 10px 4px 4px;cursor:pointer;transition:all .2s}.user-menu-btn:hover{background:#ffffff1a;border-color:#ffffff4d}.user-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#4ecdc4,#10b981);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px}.user-menu-arrow{color:#ffffffb3;font-size:10px;transition:transform .2s}.user-menu-btn.open .user-menu-arrow{transform:rotate(180deg)}.user-menu-dropdown{position:absolute;top:100%;right:0;margin-top:8px;background:#fff;border-radius:10px;box-shadow:0 10px 40px #00000026;min-width:200px;display:none;z-index:1000;overflow:hidden}.user-menu-dropdown.show{display:block;animation:menuSlideDown .15s ease-out}@keyframes menuSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-menu-header{padding:12px 15px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.user-menu-name{display:block;font-weight:600;color:#1e3a5f;font-size:14px}.user-menu-role{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.user-menu-divider{height:1px;background:#e2e8f0;margin:4px 0}.user-menu-item{display:flex;align-items:center;gap:10px;padding:10px 15px;color:#475569;text-decoration:none;font-size:13px;transition:all .15s}.user-menu-item:hover{background:#f1f5f9;color:#1e3a5f}.user-menu-item.logout{color:#dc2626}.user-menu-item.logout:hover{background:#fef2f2}.view-segmented-control{display:flex;background:#e2e8f0;border-radius:8px;padding:3px;gap:2px}.view-segmented-control .segment{display:flex;align-items:center;gap:5px;padding:6px 12px;border:none;background:transparent;color:#64748b;font-size:12px;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s}.view-segmented-control .segment:hover{color:#1e3a5f;background:#ffffff80}.view-segmented-control .segment.active{background:#fff;color:#1e3a5f;box-shadow:0 1px 3px #0000001a}.view-segmented-control .segment-icon{font-size:14px}.view-segmented-control .segment-label{display:none}@media(min-width:768px){.view-segmented-control .segment-label{display:inline}}.plan-controls-compact{display:flex;align-items:center;gap:12px}.plan-selector-group{display:flex;align-items:center;gap:6px}.plan-selector-slim{padding:5px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;background:#fff;color:#1e3a5f;min-width:120px;cursor:pointer}.plan-type-badge-slim{background:#dbeafe;color:#1e40af;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s}.plan-type-badge-slim:hover{background:#bfdbfe}.plan-actions-group{display:flex;align-items:center;gap:4px;background:#f1f5f9;border-radius:6px;padding:2px}.plan-icon-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#64748b;border-radius:4px;cursor:pointer;font-size:14px;transition:all .15s}.plan-icon-btn:hover{background:#fff;color:#1e3a5f}.plan-icon-btn.save{color:#10b981}.plan-icon-btn.save:hover{background:#dcfce7;color:#059669}.plan-icon-btn.danger:hover{background:#fef2f2;color:#dc2626}.plan-icon-btn.create-plan-highlight{background:#4ecdc4;color:#1e3a5f;font-weight:700;font-size:16px;width:32px;height:32px;border-radius:8px;box-shadow:0 0 0 2px #4ecdc44d;animation:pulse-create 2s ease-in-out 3}.plan-icon-btn.create-plan-highlight:hover{background:#3db8b0;color:#fff;box-shadow:0 0 0 3px #4ecdc480}@keyframes pulse-create{0%,to{box-shadow:0 0 0 2px #4ecdc44d}50%{box-shadow:0 0 0 6px #4ecdc426}}.plan-status-pill{font-size:11px;padding:3px 8px;border-radius:10px;background:#f1f5f9;color:#64748b}.plan-status-pill.saving{background:#fef3c7;color:#d97706}.plan-status-pill.saved{background:#dcfce7;color:#059669}.plan-status-pill.error{background:#fef2f2;color:#dc2626}.header-save-plan-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;font-size:13px;font-weight:600;line-height:1;cursor:pointer;background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;margin-right:8px;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;font-family:inherit;white-space:nowrap}.header-save-plan-btn:hover{background:#d1fae5;border-color:#10b981;color:#065f46}.header-save-plan-btn:active{background:#a7f3d0}.header-save-plan-btn:focus-visible{outline:2px solid #10b981;outline-offset:2px}.header-save-plan-btn .hsp-icon{font-size:14px;line-height:1}@media(max-width:900px){.header-save-plan-btn{padding:6px 9px;margin-right:6px}.header-save-plan-btn .hsp-label{display:none}}.global-save-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1;background:#f1f5f9;color:#475569;border:1px solid transparent;margin-right:8px;transition:background .15s ease,color .15s ease}.global-save-status .gss-dot{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.7}.global-save-status--idle{background:#f1f5f9;color:#64748b}.global-save-status--saving{background:#fef3c7;color:#92400e}.global-save-status--saving .gss-dot{animation:gss-pulse .9s ease-in-out infinite}.global-save-status--saved{background:#dcfce7;color:#065f46}.global-save-status--unsaved{background:#fef9c3;color:#854d0e;border-color:#fde68a}.global-save-status--error{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.global-save-status--paused{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.global-save-status--paused .gss-dot{border-radius:2px;background:#c2410c;opacity:1}.global-save-status .gss-retry{background:#b91c1c;color:#fff;border:none;border-radius:6px;padding:3px 8px;margin-left:4px;font-size:11px;font-weight:700;cursor:pointer}.global-save-status .gss-retry:hover{background:#991b1b}@keyframes gss-pulse{0%,to{opacity:.4}50%{opacity:1}}.todays-money-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1;border:1px solid transparent;margin-right:8px;cursor:pointer;font-family:inherit;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.todays-money-pill .tmp-dot{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.7}.todays-money-pill:hover{box-shadow:0 0 0 2px #6366f12e}.todays-money-pill:focus-visible{outline:2px solid #6366f1;outline-offset:1px}.todays-money-pill--future{background:#eef2ff;color:#4338ca;border-color:#e0e7ff}.todays-money-pill--today{background:#ecfeff;color:#0e7490;border-color:#cffafe}.recovery-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;z-index:11000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.recovery-modal-card{background:#fff;border-radius:12px;box-shadow:0 20px 50px #00000040;max-width:520px;width:calc(100% - 40px);padding:24px}.recovery-modal-card h3{margin:0 0 8px;color:#1e293b}.recovery-modal-card .conflict-modal-diff{margin:12px 0 16px}.recovery-modal-card .btn-group{display:flex;gap:8px;justify-content:flex-end}.dashboard-year-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:#fff;border-bottom:1px solid #e2e8f0;gap:15px;flex-wrap:wrap}.year-info{display:flex;align-items:center;gap:15px}.user-context{display:flex;align-items:center;gap:10px}.signed-in-user{display:flex;align-items:center;gap:6px;font-size:13px;color:#1e3a5f}.user-icon-small{font-size:14px}.user-role-badge{font-size:10px;padding:2px 6px;border-radius:4px;font-weight:600;text-transform:uppercase}.badge-admin{background:#fee2e2;color:#dc2626}.badge-advisor{background:#dbeafe;color:#1e40af}.badge-user{background:#f1f5f9;color:#64748b}.client-selector{padding:4px 8px;font-size:12px;border:1px solid #e2e8f0;border-radius:4px;background:#fff}.context-separator{color:#cbd5e1}@media(max-width:768px){.dashboard-year-bar{flex-direction:column;align-items:flex-start}.plan-controls-compact{width:100%;justify-content:space-between}.view-segmented-control{width:100%;justify-content:center}}.stale-plan-save-banner{position:fixed;top:70px;left:50%;transform:translate(-50%);z-index:12000;max-width:720px;width:calc(100% - 32px);display:none;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:12px 16px;border-radius:10px;background:#fffbeb;color:#78350f;border:1px solid #fde68a;box-shadow:0 12px 28px #78350f2e;font-size:13px;line-height:1.4}.stale-plan-save-banner.stale-plan-save-banner--visible{display:grid}.stale-plan-save-banner .spsb-icon{width:28px;height:28px;border-radius:50%;background:#f59e0b;color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:16px;flex:0 0 28px}.stale-plan-save-banner .spsb-title{font-weight:700;margin-bottom:2px;color:#92400e}.stale-plan-save-banner .spsb-message strong{color:#78350f}.stale-plan-save-banner .spsb-actions{display:inline-flex;gap:8px;flex:0 0 auto}.stale-plan-save-banner .spsb-btn{border:none;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}.stale-plan-save-banner .spsb-btn-primary{background:#b45309;color:#fff}.stale-plan-save-banner .spsb-btn-primary:hover{background:#92400e}.stale-plan-save-banner .spsb-btn-ghost{background:transparent;color:#92400e;border:1px solid #fcd34d}.stale-plan-save-banner .spsb-btn-ghost:hover{background:#fef3c7}.field-stale-rejected,input.field-stale-rejected,select.field-stale-rejected,textarea.field-stale-rejected{outline:2px solid #f59e0b!important;outline-offset:1px;background-color:#fffbeb!important;box-shadow:0 0 0 3px #f59e0b2e!important;transition:outline .15s ease,box-shadow .15s ease}.plan-switch-save-failure-banner{background:#fef2f2;border:1px solid #fecaca;border-left:4px solid #b91c1c;border-radius:8px;padding:10px 12px;margin:0 0 8px;width:100%;box-shadow:0 1px 2px #0f172a0f}.plan-switch-save-failure-banner .psfb-body{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.plan-switch-save-failure-banner .psfb-icon{flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:#b91c1c;color:#fff;font-weight:700;line-height:24px;text-align:center;font-size:14px}.plan-switch-save-failure-banner .psfb-text{flex:1 1 240px;min-width:200px;display:flex;flex-direction:column;gap:2px;color:#7f1d1d;font-size:13px;line-height:1.4}.plan-switch-save-failure-banner .psfb-title{font-size:14px;color:#b91c1c}.plan-switch-save-failure-banner .psfb-hint{color:#475569}.plan-switch-save-failure-banner .psfb-target{font-style:normal;font-weight:600;color:#0f172a}.plan-switch-save-failure-banner .psfb-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.plan-switch-save-failure-banner .psfb-btn{padding:6px 10px;border-radius:6px;border:1px solid transparent;font-size:13px;font-weight:600;cursor:pointer}.plan-switch-save-failure-banner .psfb-retry{background:#2563eb;color:#fff}.plan-switch-save-failure-banner .psfb-retry:hover{background:#1d4ed8}.plan-switch-save-failure-banner .psfb-discard{background:#fff;color:#b91c1c;border-color:#fecaca}.plan-switch-save-failure-banner .psfb-discard:hover{background:#fef2f2}.plan-switch-save-failure-banner .psfb-stay{background:#f1f5f9;color:#0f172a;border-color:#e2e8f0}.plan-switch-save-failure-banner .psfb-stay:hover{background:#e2e8f0}.plan-switch-save-failure-banner .psfb-btn:focus{outline:3px solid #93c5fd;outline-offset:2px}.plan-switch-save-failure-banner.psfb-busy .psfb-btn{opacity:.6;cursor:progress}.user-context{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.signed-in-user{display:flex;align-items:center;gap:6px}.user-icon-small{font-size:14px;opacity:.8}.user-name-display{font-weight:600;color:#1a1f3c}.user-role-badge{font-size:10px;padding:2px 8px;border-radius:10px;font-weight:600;text-transform:uppercase}.badge-admin{background:#dc2626;color:#fff}.badge-advisor{background:#4ecdc4;color:#1a1f3c}.badge-user{background:#6b7280;color:#fff}.client-context{display:flex;align-items:center;gap:8px}.context-separator{color:#cbd5e1;font-weight:300}.hide-mobile{display:inline}.viewing-label{font-size:12px;color:#64748b}.client-selector{padding:4px 8px;border:1px solid #4ecdc4;border-radius:6px;background:#fff;font-size:12px;color:#1a1f3c;cursor:pointer;max-width:160px}.client-selector:focus{outline:none;border-color:#3dbdb5;box-shadow:0 0 0 2px #4ecdc433}.active-client-indicator{display:none;background:#4ecdc426;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;color:#0d9488}@media(max-width:768px){.hide-mobile{display:none}.user-context{gap:4px}.client-selector{max-width:120px}.plan-controls{flex-wrap:wrap;gap:4px!important}.plan-selector{max-width:120px!important}}.plan-controls{display:flex;align-items:center;gap:8px;margin-right:16px}.plan-selector{padding:4px 8px;border:1px solid #4ecdc4;border-radius:6px;background:#fff;font-size:12px;color:#1a1f3c;cursor:pointer;max-width:180px}.plan-selector:focus{outline:none;border-color:#3dbdb5;box-shadow:0 0 0 2px #4ecdc433}.plan-type-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-left:8px}.plan-type-badge.individual{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.plan-type-badge.joint{background:linear-gradient(135deg,#4ecdc4,#44a3aa);color:#fff}.plan-type-badge.family{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.plan-btn{padding:4px 10px;border:1px solid #4ecdc4;border-radius:6px;background:#fff;font-size:12px;color:#1a1f3c;cursor:pointer;transition:all .2s}.plan-btn:hover,.plan-btn.save-btn{background:#4ecdc4;color:#fff}.plan-btn.save-btn:hover{background:#3dbdb5}.plan-status{font-size:11px;color:#64748b;display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;background:#f1f5f9;transition:all .3s ease}.plan-status.saving{color:#f59e0b;background:#fef3c7}.plan-status.saving:before{content:"";width:8px;height:8px;border:2px solid #f59e0b;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.plan-status.saved{color:#10b981;background:#d1fae5}.plan-status.saved:before{content:"✓"}.plan-status.error{color:#ef4444;background:#fee2e2}.plan-status.error:before{content:"⚠"}.plan-status.unsaved{color:#6366f1;background:#e0e7ff}.plan-status.unsaved:before{content:"●"}.undo-toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#1e293b;color:#fff;padding:12px 20px;border-radius:8px;display:flex;align-items:center;gap:15px;box-shadow:0 4px 20px #0000004d;z-index:10000;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translate(-50%) translateY(100px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.undo-toast .undo-btn{background:#3b82f6;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-weight:600}.undo-toast .undo-btn:hover{background:#2563eb}.undo-toast .undo-timer{width:24px;height:24px;border-radius:50%;border:2px solid #64748b;border-top-color:#3b82f6;animation:countdown 5s linear forwards}@keyframes countdown{to{transform:rotate(360deg)}}.conflict-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.conflict-modal{background:#fff;border-radius:12px;max-width:500px;width:90%;padding:0;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.conflict-modal-header{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;padding:20px 24px;border-radius:12px 12px 0 0;display:flex;align-items:center;gap:12px}.conflict-modal-header i{font-size:24px}.conflict-modal-body{padding:24px;max-height:calc(90vh - 80px);overflow-y:auto}.conflict-modal-body p{color:#495057;margin-bottom:16px;line-height:1.6}.conflict-options{display:flex;flex-direction:column;gap:12px;margin-top:20px}.conflict-modal-diff:empty{display:none}.conflict-modal-diff{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px;margin:0 0 16px;font-size:13px}.conflict-modal-diff-title{font-weight:600;color:#334155;margin-bottom:8px;font-size:13px}.conflict-modal-diff-rows>div{display:flex;justify-content:space-between;padding:2px 0}.conflict-modal-diff-legend{color:#64748b;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding-bottom:4px!important;border-bottom:1px dashed #e2e8f0;margin-bottom:4px}.conflict-modal-diff .older{color:#64748b}.conflict-modal-diff .newer{color:#059669;font-weight:600}.conflict-modal-diff-empty,.conflict-modal-diff-loading{color:#64748b;font-style:italic}.conflict-modal-diff-details{margin-top:12px;display:flex;flex-direction:column;gap:10px}.conflict-modal-diff-section{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:8px 10px}.conflict-modal-diff-sectionhead{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px dashed #e2e8f0;padding-bottom:4px;margin-bottom:6px}.conflict-modal-diff-sectionlabel{font-weight:600;color:#334155}.conflict-modal-diff-sectioncount{color:#64748b;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.conflict-modal-diff-rowlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.conflict-modal-diff-row{padding:4px 0;border-bottom:1px solid #f1f5f9}.conflict-modal-diff-row:last-child{border-bottom:none}.conflict-modal-diff-rowhead{display:flex;align-items:center;gap:8px;margin-bottom:2px}.conflict-modal-diff-rowname{font-weight:600;color:#1e293b;font-size:13px}.conflict-modal-diff-rowtag{font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:10px;font-weight:600}.conflict-modal-diff-rowtag--added{background:#dcfce7;color:#166534}.conflict-modal-diff-rowtag--removed{background:#fee2e2;color:#991b1b}.conflict-modal-diff-rowtag--modified{background:#fef3c7;color:#92400e}.conflict-modal-diff-fields{list-style:none;margin:4px 0 0;padding:0 0 0 12px;display:flex;flex-direction:column;gap:2px;font-size:12px}.conflict-modal-diff-fields li{display:flex;flex-wrap:wrap;gap:4px;align-items:baseline}.conflict-modal-diff-fieldlabel{color:#475569;min-width:80px;font-weight:500}.conflict-modal-diff-arrow{color:#94a3b8}.conflict-modal-diff-more{margin-top:6px;font-size:12px}.conflict-modal-diff-more>summary{cursor:pointer;color:#2563eb;font-weight:500;padding:4px 0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.conflict-modal-diff-more[open]>summary{margin-bottom:6px}.conflict-option{display:flex;align-items:center;gap:12px;padding:16px;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all .2s ease}.conflict-option:hover{border-color:#0d6efd;background:#f8f9ff}.conflict-option i{font-size:20px;color:#6c757d}.conflict-option:hover i{color:#0d6efd}.conflict-option-text h4{margin:0 0 4px;font-size:14px;color:#212529}.conflict-option-text p{margin:0;font-size:12px;color:#6c757d}.conflict-modal-cid{margin:12px 0 4px;padding:10px 12px;background:#f1f3f5;border:1px solid #dee2e6;border-radius:6px;font-size:12px;color:#495057;display:flex;flex-wrap:wrap;align-items:center;gap:6px}.conflict-modal-cid-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#fff;padding:2px 6px;border-radius:4px;border:1px solid #ced4da;color:#212529}.conflict-modal-cid-value:hover{background:#e7f1ff;border-color:#0d6efd}.conflict-modal-cid-hint{color:#868e96}.conflict-modal-rescue{margin:12px 0 14px;padding:12px 14px;background:#ecfeff;border:1px solid #a5f3fc;border-radius:6px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}.conflict-modal-rescue-text{display:flex;flex-direction:column;gap:2px;font-size:13px;color:#155e75;flex:1 1 220px}.conflict-modal-rescue-text strong{font-weight:600;color:#0e7490}.conflict-modal-rescue-actions{display:flex;flex-wrap:wrap;gap:8px}.conflict-modal-rescue-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;color:#0e7490;background:#fff;border:1px solid #67e8f9;border-radius:4px;cursor:pointer;transition:background .15s,border-color .15s}.conflict-modal-rescue-btn:hover{background:#cffafe;border-color:#0891b2}.conflict-modal-rescue-btn:focus-visible{outline:2px solid #0891b2;outline-offset:2px}.conflict-modal-sections{margin:0 0 14px;padding:10px 12px;background:#fff8e1;border:1px solid #ffe082;border-radius:6px;font-size:13px;color:#5d4037;display:flex;flex-wrap:wrap;gap:6px}.conflict-modal-sections[hidden]{display:none}.conflict-modal-sections-label{font-weight:600}.conflict-modal-sections-value{font-weight:500}.field-error{border-color:#dc3545!important;background-color:#fff5f5!important;box-shadow:0 0 0 3px #dc354526!important}.field-warning{border-color:#ffc107!important;background-color:#fffdf5!important;box-shadow:0 0 0 3px #ffc10726!important}.field-success{border-color:#28a745!important;box-shadow:0 0 0 3px #28a7451a!important}.field-error-message{color:#dc3545;font-size:11px;margin-top:4px;display:flex;align-items:center;gap:4px}.field-error-message i{font-size:12px}.field-warning-message{color:#856404;font-size:11px;margin-top:4px;display:flex;align-items:center;gap:4px}input:focus.field-error,select:focus.field-error{outline:none;border-color:#dc3545!important}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.field-shake{animation:shake .4s ease}#events-timeline-chart.timeline-dragging .nsewdrag{cursor:grabbing!important}.surplus-account-item{display:flex;align-items:center;padding:12px 16px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:8px;cursor:grab;transition:all .2s ease}.surplus-account-item:active{cursor:grabbing}.surplus-account-item.dragging{opacity:.5;background:#e3e6ea;border-style:dashed}.surplus-account-item.drag-over{border-color:#0d6efd;background:#e7f1ff;transform:scale(1.02)}.surplus-account-item .order-number{width:24px;height:24px;background:#0d6efd;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;margin-right:12px}.surplus-account-item .account-name{flex:1;font-weight:500}.surplus-account-item .account-limit{color:#6c757d;font-size:12px;margin-right:16px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.plan-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffe6;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;border-radius:12px}.plan-loading-spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#3dbdb5;border-radius:50%;animation:spin 1s linear infinite}.plan-loading-text{margin-top:12px;color:#64748b;font-size:14px}.recovery-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10001}.recovery-modal-content{background:#fff;padding:24px;border-radius:12px;max-width:450px;box-shadow:0 10px 40px #0000004d}.recovery-modal h3{margin:0 0 12px;color:#1e3a5f}.recovery-modal p{color:#64748b;margin-bottom:20px}.recovery-modal .btn-group{display:flex;gap:10px;justify-content:flex-end}.goals-panel .goals-summary{background:#f8fafc;padding:12px;border-radius:8px;margin-bottom:15px}.goals-panel .goals-list{max-height:300px;overflow-y:auto;margin-bottom:15px}.goal-item{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px}.goal-item.priority-essential{border-left:4px solid #ef4444}.goal-item.priority-desirable{border-left:4px solid #f59e0b}.goal-item.priority-aspirational{border-left:4px solid #10b981}.goal-icon{font-size:24px;width:40px;text-align:center}.goal-info{flex:1}.goal-name{font-weight:600;color:#1a365d}.goal-meta{font-size:12px;color:#64748b}.goal-amount{font-weight:700;color:#4ecdc4;font-size:16px}.goal-owner-badge{font-size:10px;padding:2px 6px;border-radius:4px;background:#e2e8f0;color:#475569}.goal-owner-badge.owner-client{background:#dbeafe;color:#1e40af}.goal-owner-badge.owner-partner{background:#fce7f3;color:#9d174d}.goal-owner-badge.owner-household{background:#dcfce7;color:#166534}.goal-actions button{background:none;border:none;cursor:pointer;padding:4px 8px;font-size:14px;color:#64748b}.goal-actions button:hover{color:#1a365d}.btn-add-goal{width:100%;padding:12px;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;color:#64748b;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-goal:hover{background:#f1f5f9;border-color:#4ecdc4;color:#4ecdc4}.add-goal-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;margin-top:15px}.add-goal-form h5{margin:0 0 15px;color:#1a365d}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:15px}.btn-cancel{padding:8px 16px;background:#e2e8f0;border:none;border-radius:6px;color:#475569;cursor:pointer}@media(max-width:1024px){#goals-events-view .projections-dashboard-fullscreen{padding:12px!important}#goals-events-view .journey-nav{margin-bottom:12px!important}#goals-events-view .journey-nav .journey-nav__rail{flex-wrap:wrap;gap:8px}#goals-events-view .journey-nav .journey-nav__copy{order:-1;width:100%;text-align:center}#goals-events-view .journey-nav .journey-nav__action{flex:1;min-width:0;text-align:center}#goals-list-view>div{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))!important;gap:12px!important}.goals-view-tabs{flex-wrap:wrap!important;gap:6px!important}.goals-tab-btn{padding:8px 14px!important;font-size:.85rem!important;flex:1 1 auto;min-width:0;text-align:center;white-space:nowrap}#goals-progress-view .dashboard-card,#goals-progress-view>div>div{padding:16px!important}#goal-funding-chart-step5{height:220px!important}#survivor-timeline-chart-step5{height:240px!important}}@media(max-width:768px){#goals-events-view .projections-dashboard-fullscreen{padding:8px!important;min-height:auto!important}#goals-list-view>div{grid-template-columns:1fr!important;gap:10px!important}#goals-events-view .journey-nav .journey-nav__subtitle{display:none}#goals-events-view .journey-nav .journey-nav__step{font-size:.9rem}.goals-tab-btn{padding:8px 10px!important;font-size:.8rem!important}.goals-tab-btn span{display:none}#goals-events-view .dashboard-card{padding:14px!important}#goals-events-view .goal-item{flex-wrap:wrap;gap:8px;padding:10px}#goals-events-view .goal-icon{font-size:20px;width:32px}#goals-events-view .goal-amount{font-size:14px}#goals-events-view .goal-actions{width:100%;display:flex;justify-content:flex-end;border-top:1px solid rgba(255,255,255,.08);padding-top:6px;margin-top:2px}.add-goal-form{padding:14px}.add-goal-form .form-group{margin-bottom:10px}#goal-funding-chart-step5,#survivor-timeline-chart-step5{height:200px!important}#goals-progress-view>div>div{padding:12px!important;border-radius:10px!important}.family-panel .family-summary{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:480px){#goals-events-view .projections-dashboard-fullscreen{padding:6px!important}.goals-view-tabs{display:grid!important;grid-template-columns:1fr 1fr;gap:4px!important}.goals-tab-btn{padding:10px 6px!important;font-size:.78rem!important;border-radius:6px!important}#goals-events-view .journey-nav{border-radius:10px!important;padding:8px!important}#goals-events-view .journey-nav .journey-nav__rail{gap:4px}#goals-events-view .journey-nav .journey-nav__step{font-size:.82rem;margin:0}#goals-events-view .journey-nav .journey-nav__action{padding:6px 10px!important;font-size:.8rem!important}#goals-events-view .goal-item{padding:8px}#goals-events-view .goal-info .goal-name{font-size:.9rem}#goals-events-view .goal-info .goal-meta{font-size:11px}#goals-events-view .dashboard-card{padding:10px!important;border-radius:10px!important}#goals-events-view .dashboard-card h3{font-size:.95rem!important}#goals-events-view .dashboard-card button{padding:5px 10px!important;font-size:.78rem!important}#goal-funding-chart-step5,#survivor-timeline-chart-step5{height:180px!important}#goals-progress-view>div>div h3{font-size:.95rem!important}#goals-progress-view>div>div p{font-size:12px!important}.family-panel .family-summary{grid-template-columns:1fr!important}}.family-panel .family-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:15px}.family-panel .family-summary .summary-stat{background:#f8fafc;padding:10px;border-radius:8px;text-align:center}.family-panel .family-summary .stat-value{font-size:20px;font-weight:700;color:#1a365d}.family-panel .family-summary .stat-label{font-size:11px;color:#64748b}.family-panel .family-list{max-height:350px;overflow-y:auto;margin-bottom:15px}.family-member-item{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px}.family-member-item.relationship-child{border-left:4px solid #3b82f6}.family-member-item.relationship-grandchild{border-left:4px solid #8b5cf6}.family-member-item.relationship-parent{border-left:4px solid #f59e0b}.family-member-item.relationship-sibling{border-left:4px solid #10b981}.family-member-item.relationship-niece_nephew{border-left:4px solid #ec4899}.family-member-item.relationship-other{border-left:4px solid #64748b}.family-member-icon{font-size:24px;width:40px;text-align:center}.family-member-info{flex:1}.family-member-name{font-weight:600;color:#1a365d}.family-member-meta{font-size:12px;color:#64748b}.relationship-badge{font-size:10px;padding:2px 6px;border-radius:4px;background:#e2e8f0;color:#475569}.relationship-badge.rel-child{background:#dbeafe;color:#1e40af}.relationship-badge.rel-grandchild{background:#ede9fe;color:#5b21b6}.relationship-badge.rel-parent{background:#fef3c7;color:#92400e}.relationship-badge.rel-sibling{background:#dcfce7;color:#166534}.relationship-badge.rel-niece_nephew{background:#fce7f3;color:#9d174d}.family-member-details{font-size:12px;color:#4ecdc4}.family-member-actions button{background:none;border:none;cursor:pointer;padding:4px 8px;font-size:14px;color:#64748b}.family-member-actions button:hover{color:#1a365d}.btn-add-family{width:100%;padding:12px;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;color:#64748b;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-family:hover{background:#f1f5f9;border-color:#4ecdc4;color:#4ecdc4}.add-family-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;margin-top:15px}.add-family-form h5{margin:0 0 15px;color:#1a365d}.user-nav{position:absolute;top:20px;right:30px;display:flex;align-items:center;gap:15px}.user-nav .user-info{color:#ffffffe6;font-size:14px}.user-nav a{color:#fff;text-decoration:none;padding:8px 16px;background:#ffffff26;border-radius:6px;font-size:14px;transition:background .2s}.user-nav a:hover{background:#ffffff40}.user-nav a.admin-link{background:#4299e180}.user-nav a.help-link{background:#48bb7880}.nav-dropdown{position:relative;display:inline-block}.nav-dropdown-btn{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s}.nav-dropdown-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4ecdc44d}.nav-dropdown-btn .arrow{font-size:10px;transition:transform .2s}.nav-dropdown:hover .arrow{transform:rotate(180deg)}.nav-dropdown-content{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:220px;border-radius:8px;box-shadow:0 8px 24px #00000026;z-index:1000;padding:8px 0;margin-top:4px}.nav-dropdown:hover .nav-dropdown-content{display:block}.nav-dropdown-content a{display:flex;align-items:center;gap:10px;padding:10px 16px;color:#2d3748;text-decoration:none;font-size:13px;transition:background .15s}.nav-dropdown-content a:hover{background:#f7fafc}.nav-dropdown-content a .tool-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:14px}.nav-dropdown-content a .tool-info{flex:1}.nav-dropdown-content a .tool-name{font-weight:500;display:block}.nav-dropdown-content a .tool-desc{font-size:11px;color:#718096}.nav-dropdown-content .dropdown-divider{height:1px;background:#e2e8f0;margin:6px 0}.header-right{display:flex;align-items:center;gap:12px}.header-right .user-actions{display:flex;align-items:center;gap:8px;margin-left:8px;padding-left:12px;border-left:1px solid rgba(255,255,255,.2)}.header-right .user-actions a{color:#fff;text-decoration:none;padding:6px 12px;background:#ffffff1a;border-radius:5px;font-size:12px;transition:background .2s}.header-right .user-actions a:hover{background:#fff3}.header-right .user-actions a.admin-link,.header-right .user-actions a.clients-link{background:#4299e166}.header-right .user-actions a.logout-link{background:#ef444466}header{position:relative}@media(max-width:768px){.user-nav{top:10px;right:10px;gap:8px}.user-nav .user-info{display:none}.user-nav a{padding:6px 12px;font-size:12px}}@media(max-width:480px){.user-nav{position:static;justify-content:center;margin-bottom:15px;flex-wrap:wrap}.user-nav a{padding:8px 14px;font-size:13px}}.btl-property-card,.additional-home-card,.employment-card,.self-employment-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:20px;margin-bottom:15px}.additional-home-card{border-left:4px solid #4ecdc4}.employment-card{border-left:4px solid #3b82f6}.self-employment-card{border-left:4px solid #f59e0b}.debt-card{border-left:4px solid #ef4444}.pension-card{border-left:4px solid #22c55e}.protection-card{border-left:4px solid #8b5cf6}.banner{margin-top:8px;padding:6px 10px;border-radius:4px;font-size:12px}.banner--amber{background:#fef3c7;color:#854d0e}.banner--error{background:#fef2f2;color:#b91c1c}.banner--accent{padding:8px 10px;border-left:3px solid #f59e0b;line-height:1.4}.btl-property-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #e2e8f0}.btl-property-title{font-weight:600;color:#2d3748;font-size:15px}.btn-remove-btl{background:#fc8181;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:13px}.btn-remove-btl:hover{background:#f56565}.btn-add-property{width:100%;padding:12px;background:#48bb78;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;margin-top:10px;margin-bottom:20px}.btn-add-property:hover{background:#38a169}.btl-nav-container{margin-bottom:15px}.btl-tabs-mode{display:flex;flex-wrap:wrap;gap:5px;border-bottom:2px solid #e2e8f0;padding-bottom:0;margin-bottom:15px}.btl-tab{padding:8px 16px;background:#f1f5f9;border:none;border-radius:8px 8px 0 0;cursor:pointer;font-size:13px;font-weight:500;color:#64748b;display:flex;align-items:center;gap:6px;transition:all .2s}.btl-tab:hover{background:#e2e8f0;color:#334155}.btl-tab.active{background:#3b82f6;color:#fff}.btl-tab .owner-badge{font-size:10px;padding:2px 6px;border-radius:10px;background:#fff3}.btl-tab.active .owner-badge{background:#ffffff4d}.btl-tab-add{background:#dcfce7;color:#16a34a;border:1px dashed #86efac}.btl-tab-add:hover{background:#bbf7d0}.btl-sidebar-mode{display:flex;gap:15px;min-height:400px}.btl-sidebar-list{width:220px;flex-shrink:0;background:#f8fafc;border-radius:8px;padding:10px;overflow-y:auto;max-height:500px}.btl-sidebar-item{padding:10px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:8px;cursor:pointer;transition:all .2s}.btl-sidebar-item:hover{border-color:#3b82f6;background:#f0f9ff}.btl-sidebar-item.active{border-color:#3b82f6;background:#dbeafe}.btl-sidebar-item-name{font-weight:600;font-size:13px;color:#1e293b;margin-bottom:4px}.btl-sidebar-item-value{font-size:12px;color:#64748b}.btl-sidebar-item .owner-badge{font-size:10px;padding:2px 6px;border-radius:10px;display:inline-block;margin-top:4px}.btl-sidebar-add{padding:10px 12px;background:#dcfce7;border:1px dashed #86efac;border-radius:6px;cursor:pointer;text-align:center;color:#16a34a;font-size:13px;font-weight:500}.btl-sidebar-add:hover{background:#bbf7d0}.btl-detail-panel{flex:1;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:15px}.owner-badge.client{background:#dbeafe;color:#1d4ed8}.owner-badge.partner{background:#fce7f3;color:#be185d}.owner-badge.joint{background:#dcfce7;color:#16a34a}.btl-property-detail.active{display:block}.add-new-btn{background:#4ecdc4!important;color:#1a1f3c!important;font-weight:600;border:none!important}.add-new-btn:hover{background:#3dbdb5!important}.col-actions{width:80px;text-align:center}.actions-cell{text-align:center;white-space:nowrap}.row-action-btn{background:transparent;border:1px solid #cbd5e1;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:12px;margin:0 2px;transition:all .2s}.row-action-btn.edit-btn{color:#3b82f6;border-color:#93c5fd}.row-action-btn.edit-btn:hover{background:#eff6ff;border-color:#3b82f6}.row-action-btn.delete-btn{color:#ef4444;border-color:#fca5a5}.row-action-btn.delete-btn:hover{background:#fef2f2;border-color:#ef4444}.table-action-btn{padding:6px 12px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;font-size:12px;color:#64748b;cursor:pointer;transition:all .2s}.table-action-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.items-list{margin:15px 0;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.items-list .empty-list{padding:30px 20px;text-align:center;color:#64748b;font-size:13px;background:#f8fafc}.list-item{display:flex;align-items:center;gap:12px;padding:12px 15px;border-bottom:1px solid #e2e8f0;background:#fff;transition:background .2s}.list-item:last-child{border-bottom:none}.list-item:hover{background:#f8fafc}.list-item .item-icon{font-size:20px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#4ecdc4,#3db9b0);border-radius:8px;color:#fff}.list-item .item-info{flex:1}.list-item .item-name{font-weight:600;color:#1a1f3c;font-size:14px}.list-item .item-meta{font-size:12px;color:#64748b;margin-top:2px}.list-item .item-actions{display:flex;gap:6px}.list-item .item-actions button{width:28px;height:28px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;font-size:12px;transition:all .2s}.list-item .item-actions button:first-child{color:#3b82f6}.list-item .item-actions button:first-child:hover{background:#eff6ff;border-color:#3b82f6}.list-item .item-actions button:last-child{color:#ef4444}.list-item .item-actions button:last-child:hover{background:#fef2f2;border-color:#ef4444}.surplus-account-item{display:flex;align-items:center;gap:12px;padding:12px 15px;border-bottom:1px solid #e2e8f0;background:#fff;cursor:grab}.surplus-account-item:last-child{border-bottom:none}.surplus-account-item .order-number{width:24px;height:24px;background:#4ecdc4;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:12px}.surplus-account-item .account-name{flex:1;font-weight:600;color:#1a1f3c}.surplus-account-item .account-limit{font-size:12px;color:#64748b}.toggle-switch{position:relative;display:inline-block;width:40px;height:22px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#cbd5e1;transition:.3s;border-radius:22px}.toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:#4ecdc4}.toggle-switch input:checked+.toggle-slider:before{transform:translate(18px)}.view-btn{display:flex;flex-direction:column;align-items:center;padding:10px 20px;gap:4px;background:#fff;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:100px}.view-btn:hover{border-color:#4ecdc4;background:#f0fdfa}.view-btn.active{background:#4ecdc4;border-color:#4ecdc4;color:#1e3a5f}.view-btn .tab-icon{font-size:20px}.view-btn .tab-label{font-size:12px;font-weight:600}.view-btn[data-step]:before{content:attr(data-step);position:absolute;top:-8px;left:-8px;width:20px;height:20px;background:#1e3a5f;color:#fff;border-radius:50%;font-size:11px;display:flex;align-items:center;justify-content:center;font-weight:700}.view-btn.active[data-step]:before{background:#059669}.header-center{display:flex;gap:8px}.chart-toggle-btn.active{background:#4ecdc4!important;border-color:#4ecdc4!important;color:#1e3a5f!important}.journey-nav{background:linear-gradient(135deg,#1e3a5f,#2d5a87);padding:16px 24px;min-height:64px;width:100%;box-sizing:border-box;margin:0;grid-column:1 / -1}.journey-nav__rail{display:flex;justify-content:space-between;align-items:center;gap:24px;max-width:100%}.journey-nav__copy{flex:1;text-align:center;min-width:0}.journey-nav__step{margin:0;color:#fff;font-size:18px;font-weight:600;line-height:1.3}.journey-nav__subtitle{margin:4px 0 0;color:#ffffffbf;font-size:13px;line-height:1.4}.journey-nav__action{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .15s ease;flex-wrap:wrap;justify-content:center;text-align:center}.journey-nav__action--ghost{background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.25)}.journey-nav__action--ghost:hover{background:#ffffff26;border-color:#fff6}.journey-nav__action--primary{background:#14b8a6;color:#fff;border:none;font-weight:600}.journey-nav__action--primary:hover{background:#0d9488}.journey-progress{display:flex;align-items:center;justify-content:center;gap:0;margin-top:10px}.journey-progress__dot{width:10px;height:10px;border-radius:50%;background:#fff3;border:1.5px solid rgba(255,255,255,.35);transition:all .3s ease;flex-shrink:0}.journey-progress__dot--completed{background:#14b8a6;border-color:#14b8a6}.journey-progress__dot--current{width:12px;height:12px;background:#fff;border-color:#fff;box-shadow:0 0 8px #ffffff80}.journey-progress__line{width:24px;height:2px;background:#ffffff26;flex-shrink:0}.journey-progress__line--completed{background:#14b8a6}.journey-nav__next-hint{display:block;width:100%;font-size:10px;font-weight:400;opacity:.75;margin-top:1px;white-space:nowrap}.view-btn .step-check{display:none;position:absolute;top:2px;right:2px;width:14px;height:14px;background:#14b8a6;border-radius:50%;color:#fff;font-size:9px;line-height:14px;text-align:center;font-weight:700}.view-btn.step-done .step-check{display:block}.view-btn{position:relative}@media(max-width:640px){.journey-nav{padding:12px 16px}.journey-nav__rail{flex-wrap:wrap;gap:12px}.journey-nav__copy{order:-1;flex-basis:100%;text-align:left}.journey-nav__step{font-size:16px}.journey-nav__action{padding:8px 14px;font-size:13px}.journey-nav__next-hint{display:none}.journey-progress__line{width:14px}.journey-progress__dot{width:8px;height:8px}.journey-progress__dot--current{width:10px;height:10px}}@media(max-width:480px){.sidebar{position:fixed;left:-280px;top:0;height:100vh;width:280px;z-index:1000;transition:left .3s ease}.sidebar.open{left:0}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999}.sidebar.open+.sidebar-overlay{display:block}.main-content{margin-left:0!important;padding:10px!important;width:100%!important}.form-row,.two-column,.form-grid,.income-grid,.expense-grid{grid-template-columns:1fr!important;gap:12px!important}.panel,.card,.accordion-content,.income-section,.expense-section{padding:12px!important;margin:8px 0!important;border-radius:8px!important}button,.btn,.action-btn,input[type=submit]{min-height:44px!important;padding:10px 16px!important;font-size:14px!important}input,select,textarea{min-height:44px!important;font-size:16px!important;padding:10px 12px!important}.table-container,.data-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:600px}.chart-container,.plotly-chart{width:100%!important;height:250px!important}.modal-content,.settings-panel,.plan-settings-modal{width:95%!important;max-width:none!important;margin:10px auto!important;max-height:85vh!important}.dashboard-grid,.summary-cards,.stats-grid{grid-template-columns:1fr!important;gap:12px!important}.hero-grid,.hero-stats{grid-template-columns:1fr 1fr!important;gap:10px!important}.report-builder-container{grid-template-columns:1fr!important}.tab-nav,.tab-buttons{overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:5px}.tab-btn,.tab-button{flex-shrink:0}h1{font-size:1.5rem!important}h2{font-size:1.25rem!important}h3{font-size:1.1rem!important}.accordion-header{padding:12px!important}.settings-grid,.settings-two-column{grid-template-columns:1fr!important}}@media(min-width:481px)and (max-width:767px){.main-content{margin-left:0!important;padding:15px!important}.form-row,.two-column{grid-template-columns:1fr 1fr!important}.dashboard-grid{grid-template-columns:repeat(2,1fr)!important}.chart-container{height:280px!important}.modal-content{width:90%!important}}@media(min-width:768px)and (max-width:1023px){.sidebar{width:60px;overflow:hidden;transition:width .3s ease}.sidebar:hover,.sidebar.expanded{width:220px}.sidebar .nav-text{opacity:0;transition:opacity .2s ease}.sidebar:hover .nav-text,.sidebar.expanded .nav-text{opacity:1}.main-content{margin-left:60px!important;padding:20px!important;transition:margin-left .3s ease}.form-row,.two-column{grid-template-columns:1fr 1fr!important}.dashboard-grid{grid-template-columns:repeat(2,1fr)!important;gap:15px!important}.chart-container{height:300px!important}.settings-grid{grid-template-columns:1fr 1fr!important}.report-builder-container{grid-template-columns:1fr!important}.modal-content{width:85%!important;max-width:700px!important}.table-container{overflow-x:auto}}@media(min-width:1024px)and (max-width:1199px){.sidebar{width:200px}.main-content{margin-left:200px!important;padding:25px!important}.dashboard-grid{grid-template-columns:repeat(3,1fr)!important}.form-row{grid-template-columns:repeat(2,1fr)!important}.report-builder-container{grid-template-columns:300px 1fr!important}}@media(min-width:1200px)and (max-width:1599px){.sidebar{width:240px}.main-content{margin-left:240px;padding:30px}.dashboard-grid{grid-template-columns:repeat(4,1fr)}.form-row{grid-template-columns:repeat(3,1fr)}.chart-container{height:350px}}@media(min-width:1600px){.main-content{max-width:1600px;margin:0 auto;padding:40px}.dashboard-grid{grid-template-columns:repeat(5,1fr)}.form-row{grid-template-columns:repeat(4,1fr)}.chart-container{height:400px}body{font-size:16px}h1{font-size:2.5rem}h2{font-size:2rem}}@media(hover:none)and (pointer:coarse){button,.btn,a.nav-link,.accordion-header,.tab-btn{min-height:44px;min-width:44px}button:hover,.btn:hover,.nav-link:hover{transform:none}.scrollable,.table-container,.modal-body{-webkit-overflow-scrolling:touch}button,.btn,.nav-link,.accordion-header{-webkit-user-select:none;-moz-user-select:none;user-select:none}}@media(orientation:landscape)and (max-height:500px){.modal-content{max-height:95vh;overflow-y:auto}.sidebar{width:50px}.main-content{margin-left:50px!important}.panel,.card{padding:10px!important}.chart-container{height:200px!important}}@media print{.sidebar,.nav-panel,.tab-nav,button,.btn{display:none!important}.main-content{margin:0!important;padding:0!important;width:100%!important}.chart-container{page-break-inside:avoid}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){.panel,.card,button,.btn{border:2px solid currentColor}}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:56px;background:linear-gradient(135deg,#1e3a5f,#0f2744);z-index:998;padding:0 16px;align-items:center;justify-content:space-between;box-shadow:0 2px 8px #0003}.mobile-header__logo{font-size:1.25rem;font-weight:700;color:#fff}.mobile-header__logo span{color:#4ecdc4}.mobile-menu-btn{background:transparent;border:none;color:#fff;font-size:1.5rem;padding:8px;cursor:pointer;border-radius:8px}.mobile-menu-btn:hover{background:#ffffff1a}@media(max-width:768px){.mobile-header{display:flex!important}.nav-panel{position:fixed!important;left:-300px!important;top:0!important;height:100vh!important;width:280px!important;z-index:1001!important;transition:left .3s ease!important;overflow-y:auto!important;padding-top:60px!important}.nav-panel.mobile-open{left:0!important}.mobile-nav-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1000}.mobile-nav-overlay.active{display:block}.nav-toggle-btn{display:none!important}}.nav-panel{transition:left .3s ease,width .3s ease}#insights-drawer{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}#insights-drawer::-webkit-scrollbar{width:6px}#insights-drawer::-webkit-scrollbar-track{background:transparent}#insights-drawer::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:3px}@media(min-width:1400px){#insights-drawer-toggle{display:none!important}#insights-drawer{position:fixed!important;right:0!important;top:120px!important;width:380px!important;height:calc(100vh - 140px)!important;border-radius:16px 0 0 16px!important;box-shadow:-4px 0 20px #0000001a!important}.projections-content-wrapper{margin-right:400px!important;transition:margin-right .3s ease}}@media(min-width:769px)and (max-width:1399px){#insights-drawer-toggle{top:140px!important;padding:12px 16px!important;font-size:13px!important}#insights-drawer{width:380px!important;right:-400px!important;top:120px!important;height:calc(100vh - 140px)!important}#insights-drawer.open{right:0!important}.projections-content-wrapper{margin-right:0;transition:margin-right .3s ease}}@media(max-width:768px){#insights-drawer-toggle{position:fixed!important;bottom:20px!important;top:auto!important;right:20px!important;border-radius:50px!important;padding:14px 20px!important;box-shadow:0 4px 20px #7c3aed66!important}#insights-drawer{position:fixed!important;width:100%!important;max-width:100%!important;left:0!important;right:auto!important;bottom:0!important;top:auto!important;height:70vh!important;border-radius:20px 20px 0 0!important;transform:translateY(100%);transition:transform .3s ease!important}#insights-drawer.open{transform:translateY(0)!important}.projections-content-wrapper{margin-right:0!important}}.adv-param-row{margin-bottom:10px}.adv-param-row label{display:block;font-weight:500;color:#374151;margin-bottom:6px;font-size:13px}.base-value{background:#f1f5f9;color:#64748b;padding:4px 8px;border-radius:4px;font-size:13px;font-weight:500;min-width:50px;text-align:center;display:inline-block}.delta-badge{padding:2px 6px;border-radius:4px;font-size:11px;font-weight:600}.adv-category button:hover{background:#f8fafc!important}#advanced-scenario-modal .modal-content{animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.what-changed-panel{background:#fff;border-radius:12px;border:1px solid #e2e8f0;margin-bottom:20px;overflow:hidden}.what-changed-header{background:linear-gradient(135deg,#f8fafc,#e2e8f0);padding:15px 20px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.what-changed-row{display:grid;grid-template-columns:200px 1fr 50px 1fr;align-items:center;padding:10px 20px;border-bottom:1px solid #f1f5f9}.what-changed-row:last-child{border-bottom:none}.what-changed-row.changed{background:#fffbeb}.what-changed-label{font-weight:500;color:#374151}.what-changed-base{color:#64748b;text-align:right;padding-right:10px}.what-changed-arrow{color:#94a3b8;text-align:center}.what-changed-scenario{font-weight:600;padding-left:10px}.what-changed-scenario.increased{color:#166534}.what-changed-scenario.decreased{color:#991b1b}.what-changed-scenario.unchanged{color:#64748b}@media(max-width:992px){#projections-primary-tabs{flex-direction:column!important;gap:8px!important}#projections-primary-tabs button{padding:12px 16px!important;font-size:13px!important}.js-plotly-plot,.plotly,[id*=embed-chart]{width:100%!important;max-width:100%!important}.projections-dashboard-fullscreen [style*=grid-template-columns]{grid-template-columns:1fr!important}}@media(max-width:768px){#projections-primary-tabs{padding:4px!important;border-radius:10px!important;margin-bottom:16px!important}#projections-primary-tabs button{padding:10px 12px!important;font-size:12px!important;border-radius:6px!important}.projections-dashboard-fullscreen{padding:12px!important}.projections-content-wrapper{min-height:auto!important}#projections-statements-container [style*=grid-template-columns]{grid-template-columns:1fr!important;gap:10px!important}#embed-chart-container{height:250px!important}#projections-statements-container table td,#projections-statements-container table th{padding:6px 8px!important;font-size:11px!important}#insights-drawer{width:100%!important;max-width:100vw!important;border-radius:16px 16px 0 0!important;top:auto!important;bottom:0!important;height:70vh!important}#insights-drawer-toggle{bottom:20px!important;top:auto!important;right:20px!important;border-radius:12px!important}}@media(max-width:992px){#projections-risk-goals-container [style*="grid-template-columns: repeat(3"]{grid-template-columns:repeat(2,1fr)!important}#projections-risk-goals-container [style*="grid-template-columns: repeat(5"]{grid-template-columns:repeat(3,1fr)!important;gap:10px!important}#projections-risk-goals-container [style*="grid-template-columns: repeat(4"]{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}}@media(max-width:768px){#projections-risk-goals-container{padding:0!important}#projections-risk-goals-container>div{padding:16px!important;margin-bottom:16px!important;border-radius:12px!important}#projections-risk-goals-container [style*="grid-template-columns: repeat(3"]{grid-template-columns:1fr!important}#projections-risk-goals-container [style*="grid-template-columns: repeat(5"]{grid-template-columns:repeat(2,1fr)!important}#projections-risk-goals-container [style*="grid-template-columns: repeat(4"]{grid-template-columns:1fr!important}#monte-carlo-chart{height:250px!important}#projections-risk-goals-container button[onclick*=runMonteCarlo]{width:100%!important;margin-top:12px!important}#goal-funding-list [style*=flex]{flex-direction:column!important;gap:8px!important}#stress-test-results>div{padding:12px!important}#stress-test-results h4{font-size:13px!important}}@media(max-width:480px){#projections-primary-tabs{margin:0 -8px 12px!important;border-radius:0!important}.journey-nav__action{padding:6px 10px!important;font-size:11px!important}#monte-carlo-chart{height:200px!important}#mc-probability{font-size:24px!important}}.pnl-clickable-row{cursor:pointer;transition:all .15s ease}.pnl-clickable-row:hover{background:#e8f5e9!important}.pnl-clickable-row:hover td{color:#1e3a5f!important}.pnl-clickable-row .edit-icon{opacity:0;transition:opacity .15s ease;font-size:12px;color:#94a3b8;margin-left:4px}.pnl-clickable-row:hover .edit-icon{opacity:1;color:#1e3a5f}.pnl-expense-row:hover{background:#fef2f2!important}.highlight-row{animation:highlight-pulse 1.5s ease-out}@keyframes highlight-pulse{0%{background-color:#fef08a}to{background-color:transparent}}.meeting-mode-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;padding:6px 14px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:600;transition:all .2s ease;white-space:nowrap}.meeting-mode-btn:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);transform:translateY(-1px);box-shadow:0 2px 8px #6366f166}.meeting-setup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:20000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.meeting-setup-modal{background:#fff;border-radius:16px;width:90%;max-width:480px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.meeting-setup-header{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;padding:20px 24px;display:flex;align-items:center;justify-content:space-between}.meeting-setup-header h3{margin:0;font-size:18px}.meeting-setup-close{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;opacity:.8}.meeting-setup-close:hover{opacity:1}.meeting-setup-body{padding:24px;max-height:400px;overflow-y:auto}.meeting-slide-checklist{list-style:none;padding:0;margin:0}.meeting-slide-checklist li{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px;cursor:grab;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.meeting-slide-checklist li:active{cursor:grabbing}.meeting-slide-checklist li.drag-over{border-color:#6366f1;background:#eef2ff}.meeting-slide-checklist li .slide-drag-handle{color:#94a3b8;font-size:16px;cursor:grab}.meeting-slide-checklist li input[type=checkbox]{width:18px;height:18px;accent-color:#6366f1}.meeting-slide-checklist li .slide-label{flex:1;font-weight:500;color:#334155}.meeting-setup-footer{padding:16px 24px;display:flex;justify-content:flex-end;gap:12px;border-top:1px solid #e2e8f0}.meeting-setup-footer .btn-cancel{padding:10px 20px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;font-weight:500;color:#64748b}.meeting-setup-footer .btn-cancel:hover{background:#f1f5f9}.meeting-setup-footer .btn-start-meeting{padding:10px 24px;border:none;border-radius:8px;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;cursor:pointer;font-weight:600;font-size:14px}.meeting-setup-footer .btn-start-meeting:hover{background:linear-gradient(135deg,#4f46e5,#4338ca)}.meeting-mode-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a;z-index:30000;display:flex;flex-direction:column}.meeting-mode-topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 32px;background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid #334155;flex-shrink:0}.meeting-brand{display:flex;align-items:center;gap:12px}.meeting-brand-name{font-size:20px;font-weight:700;color:#fff;letter-spacing:-.5px}.meeting-brand-logo{max-height:36px;max-width:150px;-o-object-fit:contain;object-fit:contain}.meeting-slide-counter{font-size:14px;color:#94a3b8;font-weight:500}.meeting-exit-btn{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.3);padding:8px 16px;border-radius:8px;cursor:pointer;font-weight:600;font-size:13px;transition:all .2s ease}.meeting-exit-btn:hover{background:#ef444440;border-color:#f87171}.meeting-slide-area{flex:1;display:flex;align-items:center;justify-content:center;padding:24px 48px;overflow:hidden}.meeting-slide-content{width:100%;max-width:1200px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.meeting-slide-content .meeting-slide-title{font-size:32px;font-weight:700;color:#fff;margin-bottom:24px;text-align:center}.meeting-slide-content .meeting-chart-container{width:100%;flex:1;min-height:0;background:#1e293b;border-radius:16px;padding:24px;border:1px solid #334155}.meeting-slide-content .meeting-summary-card{width:100%;max-width:900px;background:#1e293b;border-radius:16px;padding:40px;border:1px solid #334155}.meeting-summary-card .summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-top:24px}.meeting-summary-card .summary-metric{background:linear-gradient(135deg,#334155,#1e293b);border:1px solid #475569;border-radius:12px;padding:24px;text-align:center}.meeting-summary-card .summary-metric .metric-label{font-size:14px;color:#94a3b8;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.meeting-summary-card .summary-metric .metric-value{font-size:28px;font-weight:700;color:#fff}.meeting-summary-card .summary-metric .metric-value.positive{color:#4ade80}.meeting-summary-card .summary-metric .metric-value.negative{color:#f87171}.meeting-nav-controls{display:flex;align-items:center;justify-content:center;gap:24px;padding:16px 32px;background:#1e293b;border-top:1px solid #334155;flex-shrink:0}.meeting-nav-btn{background:#6366f126;color:#a5b4fc;border:1px solid rgba(99,102,241,.3);padding:10px 24px;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s ease;min-width:120px}.meeting-nav-btn:hover:not(:disabled){background:#6366f14d;color:#fff}.meeting-nav-btn:disabled{opacity:.3;cursor:not-allowed}.meeting-progress-dots{display:flex;gap:8px}.meeting-progress-dots .dot{width:10px;height:10px;border-radius:50%;background:#475569;transition:all .3s ease;cursor:pointer}.meeting-progress-dots .dot.active{background:#6366f1;transform:scale(1.3)}.meeting-progress-dots .dot:hover{background:#64748b}@media(max-width:768px){.meeting-mode-btn{padding:4px 10px;font-size:11px}.meeting-slide-area{padding:12px 16px}.meeting-slide-content .meeting-slide-title{font-size:22px}.meeting-nav-btn{padding:8px 14px;font-size:12px;min-width:90px}.meeting-mode-topbar{padding:10px 16px}.meeting-brand-name{font-size:16px}}.fg-badge{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:2px 9px;border-radius:20px;white-space:nowrap}.fg-input{background:#4ecdc426;color:#7ee8e1;border:1px solid rgba(78,205,196,.3)}.fg-output{background:#6366f126;color:#a5b4fc;border:1px solid rgba(99,102,241,.3)}.fg-report{background:#fbbf241f;color:#fcd34d;border:1px solid rgba(251,191,36,.25)}.fg-tool{background:#f472b61f;color:#f9a8d4;border:1px solid rgba(244,114,182,.25)}.fg-category{margin-bottom:20px}.fg-cat-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#4ecdc4;margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid rgba(78,205,196,.2)}.fg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.fg-card{display:flex;gap:12px;padding:14px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);transition:all .2s}.fg-card:hover{background:#ffffff0f}.fg-link{cursor:pointer;transition:all .15s}.fg-link:hover{transform:scale(1.08);filter:brightness(1.3);box-shadow:0 2px 8px #0000004d}.fg-card-icon{font-size:24px;flex-shrink:0;line-height:1;padding-top:2px}.fg-card-body{flex:1;min-width:0}.fg-card-name{font-size:14px;font-weight:600;margin-bottom:6px;color:#f8fafc}.fg-card-paths{display:flex;flex-wrap:wrap;gap:4px}@media(max-width:640px){.fg-grid{grid-template-columns:1fr}}@media(max-width:1024px){.wrapper-holding-row{grid-template-columns:1fr 1fr 1fr!important;gap:8px!important}.wrapper-holding-row .holding-price-info{grid-column:1 / -1!important}.pension-holding-row>div:first-child{grid-template-columns:1fr 1fr 1fr!important}.pension-holdings-section>div:first-child,.wrapper-holdings-header{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}.pension-holdings-section>div:first-child>div,.wrapper-holdings-header>div{flex-wrap:wrap!important}#fund-lookup-modal>div,#wrapper-fund-lookup-modal>div{width:95%!important;max-width:none!important}}@media(max-width:768px){.wrapper-holding-row{grid-template-columns:1fr 1fr!important;gap:6px!important;padding:10px!important}.pension-holding-row>div:first-child{grid-template-columns:1fr 1fr!important;gap:6px!important}.pension-pot-card .form-row{flex-direction:column!important}.pension-pot-card .form-group.third,.pension-pot-card .form-group.half{width:100%!important}.pension-pot-card{padding:12px!important}.pension-holdings-section{margin-top:10px!important;padding-top:10px!important}.wrapper-holdings-section{margin-top:8px!important;padding-top:8px!important}#fund-lookup-modal>div{max-height:90vh!important;border-radius:8px!important}}@media(max-width:480px){.wrapper-holding-row{grid-template-columns:1fr!important;gap:6px!important}.pension-holding-row>div:first-child{grid-template-columns:1fr!important;gap:6px!important}.pension-pot-card{padding:10px!important}.pension-pot-card .form-row{gap:8px!important}}.journey-timeline-wrapper{position:relative;padding:20px 0 0}.journey-timeline-phases{position:absolute;top:126px;left:0;right:0;height:12px;display:flex;z-index:0;border-radius:6px;overflow:hidden}.journey-phase-pre{background:linear-gradient(90deg,#fbbf24,#f59e0b);transition:width .3s ease}.journey-phase-ret{background:linear-gradient(90deg,#22c55e,#16a34a);transition:width .3s ease}.journey-event-node{position:absolute;display:flex;flex-direction:column;align-items:center;transform:translate(-50%);z-index:2;cursor:pointer;transition:transform .2s ease}.journey-event-node:hover{transform:translate(-50%) scale(1.08)}.journey-event-node:hover .journey-event-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.journey-event-dot{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;border:3px solid white;box-shadow:0 2px 8px #00000026;position:relative;z-index:2}.journey-event-label{font-size:11px;font-weight:600;color:#334155;max-width:110px;text-align:center;line-height:1.3;margin-top:6px;word-wrap:break-word;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.journey-event-age{font-size:10px;color:#94a3b8;font-weight:500;white-space:nowrap}.journey-event-tooltip{position:absolute;left:50%;transform:translate(-50%) translateY(6px);background:#0f172a;color:#fff;padding:10px 14px;border-radius:10px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease;z-index:100;box-shadow:0 4px 16px #0000004d;pointer-events:none}.journey-event-tooltip:after{content:"";position:absolute;left:50%;transform:translate(-50%);border:6px solid transparent}.journey-node-top .journey-event-tooltip{bottom:calc(100% + 8px)}.journey-node-top .journey-event-tooltip:after{top:100%;border-top-color:#0f172a}.journey-node-bottom .journey-event-tooltip{top:calc(100% + 8px)}.journey-node-bottom .journey-event-tooltip:after{bottom:100%;border-bottom-color:#0f172a}.journey-event-card{background:#fff;border-radius:10px;padding:14px 16px;border:1px solid #e2e8f0;display:flex;align-items:center;gap:12px;transition:all .2s ease}.journey-event-card:hover{box-shadow:0 4px 12px #00000014;border-color:#cbd5e1}.journey-event-card-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.plan-overview-stat{background:#ffffff14;border-radius:10px;padding:14px 16px;border:1px solid rgba(255,255,255,.1);transition:background .15s,border-color .15s}.plan-overview-stat:hover{background:#ffffff24;border-color:#4ecdc44d}.plan-overview-stat-label{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.plan-overview-stat-value{font-size:20px;font-weight:700;color:#fff}.plan-overview-stat-sub{font-size:11px;color:#64748b;margin-top:2px}.simple-mode-toggle{display:flex;align-items:center;gap:8px;padding:4px 12px;background:#ffffff1a;border-radius:20px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .2s}.simple-mode-toggle:hover{background:#ffffff2e}.simple-mode-toggle .toggle-label{font-size:12px;font-weight:600;color:#ffffffd9}.simple-mode-toggle .toggle-track{width:36px;height:20px;border-radius:10px;background:#ffffff40;position:relative;transition:background .2s}.simple-mode-toggle .toggle-thumb{width:16px;height:16px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:left .2s;box-shadow:0 1px 3px #0003}.simple-mode-toggle.active .toggle-track,body.simple-mode .simple-mode-toggle .toggle-track{background:#4ecdc4}.simple-mode-toggle.active .toggle-thumb,body.simple-mode .simple-mode-toggle .toggle-thumb{left:18px}body.simple-mode .advanced-panel,body.simple-mode .ff-card[data-advanced=true],body.simple-mode .advanced-settings,body.simple-mode [data-simple-hide=true]{display:none!important}body.simple-mode .simple-mode-badge{display:inline-flex}.help-tip{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#e2e8f0;color:#4a5568;font-size:11px;font-weight:700;cursor:help;margin-left:6px;position:relative;vertical-align:middle;transition:background .2s,color .2s;flex-shrink:0}.help-tip:hover{background:#4ecdc4;color:#fff}.help-tip .help-tip-text{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#1e293b;color:#f1f5f9;padding:10px 14px;border-radius:8px;font-size:12px;font-weight:400;line-height:1.5;width:260px;z-index:9999;box-shadow:0 4px 16px #00000040;pointer-events:none}.help-tip .help-tip-text:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1e293b}.help-tip:hover .help-tip-text{display:block}.plan-health-card{border-radius:16px;padding:24px;margin-bottom:20px;border:2px solid;position:relative;overflow:hidden}.plan-health-card.health-green{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#86efac}.plan-health-card.health-amber{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#fcd34d}.plan-health-card.health-red{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#fca5a5}.plan-health-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.plan-health-indicator{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.health-green .plan-health-indicator{background:#22c55e;color:#fff}.health-amber .plan-health-indicator{background:#f59e0b;color:#fff}.health-red .plan-health-indicator{background:#ef4444;color:#fff}.plan-health-title{font-size:18px;font-weight:700}.health-green .plan-health-title{color:#166534}.health-amber .plan-health-title{color:#92400e}.health-red .plan-health-title{color:#991b1b}.plan-health-score{font-size:13px;font-weight:600;margin-top:2px}.health-green .plan-health-score{color:#15803d}.health-amber .plan-health-score{color:#b45309}.health-red .plan-health-score{color:#dc2626}.plan-health-explanation{font-size:14px;line-height:1.6;margin-bottom:16px}.health-green .plan-health-explanation{color:#166534}.health-amber .plan-health-explanation{color:#78350f}.health-red .plan-health-explanation{color:#7f1d1d}.plan-health-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.plan-health-metric{background:#ffffffb3;border-radius:10px;padding:12px;text-align:center}.plan-health-metric-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#64748b;margin-bottom:4px}.plan-health-metric-value{font-size:18px;font-weight:700;color:#1e293b}.guided-flow-bar{background:#fff;border-radius:12px;padding:16px 20px;margin-bottom:20px;box-shadow:0 2px 8px #00000014;display:none}.guided-flow-bar.active{display:block}.guided-flow-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.guided-flow-title{font-size:14px;font-weight:600;color:#1e293b}.guided-flow-progress-text{font-size:13px;color:#64748b;font-weight:500}.guided-flow-track{height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden;margin-bottom:16px}.guided-flow-fill{height:100%;background:linear-gradient(90deg,#4ecdc4,#3db9b0);border-radius:3px;transition:width .4s ease}.guided-flow-steps{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}.guided-flow-step{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:500;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .2s}.guided-flow-step.active{background:#4ecdc4;color:#fff;border-color:#4ecdc4}.guided-flow-step.completed{background:#d1fae5;color:#065f46;border-color:#6ee7b7}.guided-flow-nav{display:flex;justify-content:space-between;align-items:center}.guided-flow-btn.back{background:#f1f5f9;color:#475569}.guided-flow-btn.back:hover{background:#e2e8f0}.guided-flow-btn.next{background:linear-gradient(135deg,#4ecdc4,#3db9b0);color:#fff}.guided-flow-btn.next:hover{transform:translateY(-1px);box-shadow:0 2px 8px #4ecdc466}.guided-flow-bar__inner{display:flex;align-items:center;gap:12px}.guided-flow-bar__center{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.guided-flow-bar__label{font-size:13px;font-weight:600;color:#1e293b}.guided-flow-bar__track{width:100%;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.guided-flow-bar__fill{height:100%;background:linear-gradient(90deg,#4ecdc4,#3db9b0);border-radius:3px;transition:width .4s ease}.guided-flow-bar__pct{font-size:12px;color:#64748b;font-weight:500}.guided-flow-bar__btn{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;transition:all .2s;white-space:nowrap}.guided-flow-bar__btn:hover:not(:disabled){background:#f1f5f9}.guided-flow-bar__btn:disabled{opacity:.4;cursor:not-allowed}.guided-flow-bar__btn--primary{background:linear-gradient(135deg,#4ecdc4,#3db9b0);color:#fff;border-color:transparent}.guided-flow-bar__btn--primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #4ecdc466;background:linear-gradient(135deg,#4ecdc4,#3db9b0)}.glossary-trigger{position:fixed;bottom:24px;right:24px;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#4ecdc4,#3db9b0);color:#fff;border:none;font-size:22px;cursor:pointer;box-shadow:0 4px 16px #4ecdc466;z-index:9998;display:flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s}.glossary-trigger:hover{transform:scale(1.08);box-shadow:0 6px 24px #4ecdc480}.glossary-panel{position:fixed;bottom:80px;right:24px;width:380px;max-height:520px;background:#1e293b;border-radius:16px;box-shadow:0 8px 40px #00000059;z-index:9999;display:none;flex-direction:column;overflow:hidden;animation:glossarySlideUp .25s ease;border:1px solid rgba(255,255,255,.08)}@keyframes glossarySlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.glossary-panel.open{display:flex}.glossary-panel__header{padding:16px 20px;background:linear-gradient(135deg,#4ecdc4,#3db9b0);color:#fff;display:flex;align-items:center;justify-content:space-between}.glossary-header h3{font-size:16px;font-weight:700;margin:0}.glossary-search{padding:12px 16px;border-bottom:1px solid #e2e8f0}.glossary-search input{width:100%;padding:8px 12px;border:2px solid #e2e8f0;border-radius:8px;font-size:13px;outline:none;transition:border-color .2s}.glossary-search input:focus{border-color:#4ecdc4}.glossary-list{flex:1;overflow-y:auto;padding:8px 0}.glossary-item{padding:12px 20px;border-bottom:1px solid rgba(255,255,255,.06);transition:background .15s}.glossary-item:hover{background:#ffffff0a}.glossary-term{font-size:14px;font-weight:600;color:#e2e8f0;margin-bottom:4px}.glossary-definition{font-size:12px;color:#94a3b8;line-height:1.5}.glossary-empty{padding:24px;text-align:center;color:#94a3b8;font-size:13px}@media(max-width:768px){.glossary-panel{width:calc(100vw - 32px);right:16px;bottom:72px;max-height:60vh}.glossary-trigger{bottom:16px;right:16px;width:44px;height:44px;font-size:20px}.simple-mode-toggle .toggle-label{display:none}}.mobile-nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:5px;width:36px;height:36px;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.mobile-nav-toggle:hover{background:#f1f5f9}.mobile-nav-toggle span{display:block;width:22px;height:2px;background:#475569;border-radius:2px;transition:transform .3s,opacity .3s}.mobile-nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-nav-toggle.open span:nth-child(2){opacity:0}.mobile-nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:768px){.mobile-nav-toggle{display:flex;z-index:9001;position:relative}.wealth365-header{flex-wrap:wrap;padding:10px 16px;gap:0;position:sticky;top:0;z-index:900;background:#fff}.header-left{display:flex;align-items:center;justify-content:space-between;width:100%}.header-left .wealth365-logo-text{font-size:18px}.header-center{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:9000;background:#fffffffa;flex-direction:column;padding:72px 24px 24px;gap:4px;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:mobileNavSlideIn .25s ease}@keyframes mobileNavSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.header-center.mobile-open{display:flex}.header-center .view-btn{flex-direction:row;justify-content:flex-start;gap:14px;padding:16px 20px;min-width:unset;width:100%;border-radius:12px;min-height:56px;font-size:16px;border:1px solid #f1f5f9}.header-center .view-btn .tab-icon{font-size:22px}.header-center .view-btn .tab-label{font-size:15px;font-weight:600}.header-center .view-btn.active{background:#4ecdc41f;color:#0d9488;border-color:#4ecdc44d}.header-right{width:100%;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding:8px 0 0;order:3}.header-right a{padding:8px 12px;font-size:13px}.header-right .client-name{font-size:13px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-right .meeting-mode-btn{padding:8px 12px;font-size:12px;min-height:44px}.header-right .settings-btn{width:44px;height:44px;min-height:44px}.header-right .nav-dropdown-btn{padding:8px 12px;font-size:12px;min-height:44px}.wealth365-main{padding:12px 10px}.overview-cards{grid-template-columns:repeat(2,1fr);gap:10px}.overview-card{padding:14px 10px}.overview-icon{font-size:1.6rem}.overview-label{font-size:11px}.overview-value{font-size:13px}.ff-cards{grid-template-columns:1fr;gap:8px}.ff-card{padding:14px 16px;min-height:52px}.dashboard-grid{grid-template-columns:1fr;gap:12px;padding:10px}.chart-container{min-height:220px;overflow-x:auto;-webkit-overflow-scrolling:touch}.dashboard-section table.dashboard-data-table,.dashboard-data-table{display:block!important}.dashboard-data-table thead{display:none}.dashboard-data-table tbody{display:flex;flex-direction:column;gap:8px}.dashboard-data-table tbody tr{display:flex;flex-wrap:wrap;align-items:center;padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;gap:6px 12px}.dashboard-data-table tbody tr:hover{transform:none}.dashboard-data-table tbody tr.category-row{background:#edf2f7;padding:10px 14px;border-radius:8px}.dashboard-data-table td{display:block;padding:2px 0;border-bottom:none;font-size:.85rem}.dashboard-data-table td:first-child{width:100%;font-weight:600;font-size:.9rem;margin-bottom:2px}.dashboard-data-table td:first-child .row-name{gap:8px}.dashboard-data-table td:last-child{margin-left:auto}.dashboard-data-table .amount{font-size:.9rem}.dashboard-data-table .edit-indicator{opacity:1;font-size:.85rem}.tab-content,.accordion-content,.panel-form,.modal-body,.dashboard-section{overflow-x:auto;-webkit-overflow-scrolling:touch}.drilldown-table{display:block}.drilldown-table thead{display:none}.drilldown-table tbody{display:flex;flex-direction:column;gap:6px}.drilldown-table tbody tr{display:flex;flex-wrap:wrap;gap:4px 10px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.drilldown-table td{display:block;padding:2px 0;border:none;font-size:12px}.drilldown-table td:first-child{width:100%;font-weight:600;font-size:13px}.js-plotly-plot,.plotly-graph-div{width:100%!important}.compare-plans-container{flex-direction:column}.compare-results-grid{grid-template-columns:1fr 1fr;font-size:12px}.form-row{flex-direction:column;gap:0}.form-group.half,.form-group.third{width:100%;min-width:unset}.form-group input[type=number],.form-group input[type=text],.form-group input[type=date],.form-group input[type=email],.form-group select,.form-group textarea,.panel-form input,.panel-form select,.panel-form textarea{font-size:16px;min-height:44px;padding:10px 12px}.btn-add-item,.btn-add-expense,.btn-add-income,.btn-preset,.plan-btn,.calculate-btn{min-height:44px;padding:12px 16px}.btn-remove-item{min-width:44px;min-height:44px;padding:8px 12px}.modal-dialog,.conflict-modal,.plan-settings-dialog,.expense-dialog,.simulation-dialog{width:95vw!important;max-width:none!important;max-height:90vh;margin:5vh auto}.modal-body{padding:16px;max-height:70vh;overflow-y:auto}.drilldown-panel{width:100vw!important;max-width:100vw!important;right:0!important;border-radius:0}.scenarios-grid{grid-template-columns:1fr}.result-cards{grid-template-columns:repeat(2,1fr);gap:10px}.plan-health-card{padding:14px}.guided-flow-bar__inner{flex-wrap:wrap;gap:8px}.guided-flow-bar__btn{padding:10px 14px;min-height:44px;font-size:14px}.hero-stats,.hero-grid{grid-template-columns:1fr 1fr;gap:10px}#timeline-table{font-size:.75rem}#timeline-table th,#timeline-table td{padding:6px 8px}.undo-toast{left:16px;right:16px;transform:none;bottom:80px}.net-worth-summary-table{font-size:.75rem}.journey-timeline-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:10px}.journey-timeline-wrapper>div{min-width:600px}.fg-grid{grid-template-columns:1fr}.view-segmented-control{flex-wrap:wrap;gap:4px}.view-segmented-control button{flex:1 1 auto;min-height:44px;font-size:12px;padding:8px 10px}.surplus-account-item{padding:10px 12px;font-size:13px}.pension-pot-card .form-row{flex-direction:column}.pension-pot-card .form-group.third,.pension-pot-card .form-group.half{width:100%}.meeting-slide-area{padding:10px 12px}.meeting-slide-content .meeting-slide-title{font-size:20px}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:10px}.tab-btn{flex-shrink:0;white-space:nowrap;min-height:44px}}@media(max-width:480px){.overview-cards{grid-template-columns:1fr 1fr;gap:8px}.overview-card{padding:10px 8px}.overview-icon{font-size:1.3rem}.overview-value{font-size:12px}.overview-label{font-size:10px}.result-cards{grid-template-columns:1fr}.header-right{justify-content:center}.header-center .view-btn{padding:10px 14px;min-height:44px}.wealth365-main{padding:8px 6px}.ff-landing__title{font-size:18px}.ff-landing__subtitle{font-size:12px}.guided-flow-bar__inner{gap:6px}.guided-flow-bar__label{font-size:11px}.guided-flow-bar__btn{padding:8px 12px;font-size:12px}}@media(orientation:landscape)and (max-width:900px){.chart-container{min-height:200px}.js-plotly-plot,.plotly-graph-div{height:auto!important}}@media(max-width:768px){.setup-two-column,.report-builder-container{grid-template-columns:1fr!important}.plan-controls-compact{flex-direction:column;gap:8px}.plan-controls-compact .plan-selector-group,.plan-controls-compact .plan-actions-group{width:100%;justify-content:center}.scenarios-view .scenario-cards-grid,.overview-section-grid{grid-template-columns:1fr!important}.goals-view-content>div{grid-template-columns:1fr!important}.wizard-step-content .household-option{min-width:0!important}#onboarding-wizard-modal .modal-dialog{width:95%!important;max-width:none!important}#onboarding-wizard-modal [style*="grid-template-columns: repeat(3"]{grid-template-columns:1fr!important}}@media(max-width:480px){.journey-nav__rail{flex-direction:column;gap:8px}.journey-nav__action{width:100%;justify-content:center}.plan-selector-slim{width:100%}}.tour-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:10000;transition:opacity .3s}.tour-spotlight{position:absolute;box-shadow:0 0 0 9999px #0000008c;border-radius:8px;border:2px solid #4ecdc4;z-index:10001;transition:all .4s ease;pointer-events:none}.tour-tooltip{position:absolute;z-index:10002;background:#0d1b2a;color:#f8fafc;border:1px solid #4ecdc4;border-radius:12px;padding:20px;max-width:340px;box-shadow:0 8px 32px #0006}.tour-tooltip h4{margin:0 0 8px;font-size:15px;color:#4ecdc4}.tour-tooltip p{margin:0 0 16px;font-size:13px;line-height:1.6;color:#cbd5e1}.tour-tooltip-actions{display:flex;justify-content:space-between;align-items:center;gap:10px}.tour-btn{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:all .2s}.tour-btn-skip{background:transparent;color:#94a3b8}.tour-btn-skip:hover{color:#e2e8f0}.tour-btn-next{background:#14b8a6;color:#fff}.tour-btn-next:hover{background:#0d9488}.tour-progress{font-size:12px;color:#64748b}.undo-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(100px);background:#1e293b;color:#f8fafc;padding:12px 20px;border-radius:10px;display:flex;align-items:center;gap:14px;z-index:9999;box-shadow:0 8px 24px #0000004d;transition:transform .3s ease;font-size:14px}.undo-toast.visible{transform:translate(-50%) translateY(0)}.undo-toast-btn{background:#14b8a6;color:#fff;border:none;padding:6px 14px;border-radius:6px;font-weight:600;cursor:pointer;font-size:13px}.undo-toast-btn:hover{background:#0d9488}.undo-toast-timer{width:100%;height:3px;background:#334155;position:absolute;bottom:0;left:0;border-radius:0 0 10px 10px;overflow:hidden}.undo-toast-timer-bar{height:100%;background:#14b8a6;transition:width linear}.notification-bell{position:relative;cursor:pointer;padding:6px;border:none;background:transparent;color:#64748b;font-size:20px;transition:color .2s}.notification-bell:hover{color:#f8fafc}.notification-badge{position:absolute;top:2px;right:2px;width:16px;height:16px;background:#ef4444;border-radius:50%;font-size:10px;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center}.notification-panel{position:fixed;top:0;right:-380px;width:380px;height:100vh;background:#0f172a;border-left:1px solid #1e293b;z-index:9000;transition:right .3s ease;display:flex;flex-direction:column}.notification-panel.open{right:0}.notification-panel-header{padding:20px;border-bottom:1px solid #1e293b;display:flex;justify-content:space-between;align-items:center}.notification-panel-header h3{margin:0;color:#f8fafc;font-size:16px}.notification-list{flex:1;overflow-y:auto;padding:10px}.notification-item{padding:14px;border-radius:10px;margin-bottom:8px;background:#1e293b;border-left:3px solid #3b82f6;cursor:pointer;transition:background .2s}.notification-item:hover{background:#263548}.notification-item.unread{border-left-color:#14b8a6}.notification-item-title{font-size:13px;font-weight:600;color:#f8fafc;margin-bottom:4px}.notification-item-body{font-size:12px;color:#94a3b8;line-height:1.5}.notification-item-time{font-size:11px;color:#475569;margin-top:6px}.notification-empty{text-align:center;padding:40px 20px;color:#475569}.skeleton-card{background:#f1f5f9;border-radius:12px;padding:20px;animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%}.skeleton-card--dark{background:linear-gradient(90deg,#1e293b 25%,#334155,#1e293b 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-line{height:14px;border-radius:4px;background:#94a3b833;margin-bottom:10px}.skeleton-line--short{width:40%}.skeleton-line--medium{width:70%}.skeleton-line--full{width:100%}.skeleton-circle{width:40px;height:40px;border-radius:50%;background:#94a3b833}*:focus-visible{outline:2px solid #4ecdc4;outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:16px;background:#14b8a6;color:#fff;padding:12px 24px;border-radius:0 0 8px 8px;z-index:99999;font-weight:600;text-decoration:none;transition:top .3s}.skip-link:focus{top:0}.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:#0f172a;border-top:1px solid #1e293b;padding:16px 24px;z-index:9998;transform:translateY(100%);transition:transform .4s ease;box-shadow:0 -4px 20px #0000004d}.cookie-banner.visible{transform:translateY(0)}.cookie-banner-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.cookie-banner-text{flex:1;min-width:280px;color:#cbd5e1;font-size:13px;line-height:1.6}.cookie-banner-text a{color:#4ecdc4;text-decoration:underline}.cookie-banner-actions{display:flex;gap:10px;flex-shrink:0}.cookie-btn{padding:10px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:all .2s}.cookie-btn-accept{background:#14b8a6;color:#fff}.cookie-btn-accept:hover{background:#0d9488}.cookie-btn-reject{background:transparent;color:#94a3b8;border:1px solid #334155}.cookie-btn-reject:hover{border-color:#94a3b8;color:#e2e8f0}@media(max-width:600px){.cookie-banner-inner{flex-direction:column;text-align:center}.cookie-banner-actions{width:100%;justify-content:center}}.deep-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;padding-top:12px;border-top:1px solid #f1f5f9}.deep-link{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:6px;font-size:12px;font-weight:500;color:#475569;background:#f8fafc;border:1px solid #e2e8f0;cursor:pointer;text-decoration:none;transition:all .15s;white-space:nowrap}.deep-link:hover{background:#eef2ff;border-color:#818cf8;color:#4338ca}.deep-link .dl-icon{font-size:11px;opacity:.7}.deep-link-divider{width:1px;height:18px;background:#e2e8f0;align-self:center;margin:0 2px}#overview-tabs{flex-wrap:wrap}@media(max-width:640px){#overview-tabs{flex-direction:column;border-radius:10px}#overview-tabs .overview-tab{border-left:none!important;border-top:1px solid #e2e8f0}#overview-tabs .overview-tab:first-child{border-top:none}}.overview-tab:hover{opacity:.9}.rpt-card{background:#fff;border-radius:8px;border:1px solid #e5e7eb;overflow:hidden}.rpt-card--shadow{box-shadow:0 1px 3px #0000000a,0 1px 2px #0000000f}.rpt-card--padded{padding:20px}.rpt-card--rounded-lg{border-radius:12px}.rpt-section-hdr{padding:14px 20px;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.rpt-section-hdr__title{margin:0;font-size:14px;font-weight:600;color:#111827}.rpt-section-hdr__subtitle{margin:2px 0 0;font-size:12px;color:#6b7280}.rpt-section-hdr__actions{display:flex;gap:8px;align-items:center}.rpt-banner{border-radius:6px;padding:14px 18px;margin-bottom:16px}.rpt-banner--success{background:#f0fdf4;border-left:3px solid #22c55e}.rpt-banner--info{background:#eff6ff;border-left:3px solid #3b82f6}.rpt-banner--warning{background:#fffbeb;border-left:3px solid #f59e0b}.rpt-banner--danger{background:#fef2f2;border-left:3px solid #ef4444}.rpt-banner__title{margin:0 0 6px;font-size:13px;font-weight:600}.rpt-banner--success .rpt-banner__title{color:#166534}.rpt-banner--info .rpt-banner__title{color:#1e40af}.rpt-banner--warning .rpt-banner__title{color:#92400e}.rpt-banner--danger .rpt-banner__title{color:#991b1b}.rpt-banner__body{margin:0;font-size:13px;line-height:1.5}.rpt-banner--success .rpt-banner__body{color:#15803d}.rpt-banner--info .rpt-banner__body{color:#1d4ed8}.rpt-banner--warning .rpt-banner__body{color:#a16207}.rpt-banner--danger .rpt-banner__body{color:#b91c1c}.rpt-kpi-grid{display:grid;gap:12px;margin-bottom:20px}.rpt-kpi-grid--3col{grid-template-columns:repeat(3,1fr)}.rpt-kpi-grid--4col{grid-template-columns:repeat(4,1fr)}.rpt-kpi-grid--5col{grid-template-columns:repeat(5,1fr)}.rpt-kpi-grid--6col{grid-template-columns:repeat(6,1fr)}@media(max-width:900px){.rpt-kpi-grid--3col,.rpt-kpi-grid--4col,.rpt-kpi-grid--5col,.rpt-kpi-grid--6col{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.rpt-kpi-grid--3col,.rpt-kpi-grid--4col,.rpt-kpi-grid--5col,.rpt-kpi-grid--6col{grid-template-columns:1fr}}.rpt-kpi-card{background:#fff;border-radius:8px;padding:16px;border:1px solid #e5e7eb;text-align:center}.rpt-kpi-card__label{font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.rpt-kpi-card__value{font-size:20px;font-weight:700;color:#111827}.rpt-kpi-card__value--green{color:#059669}.rpt-kpi-card__value--red{color:#dc2626}.rpt-kpi-card__value--purple{color:#7c3aed}.rpt-kpi-card__value--navy{color:#1e3a5f}.rpt-kpi-card__value--muted{color:#9ca3af}.rpt-chart-wrap{background:#fff;border-radius:8px;padding:20px;border:1px solid #e5e7eb;margin-bottom:20px}.rpt-chart-wrap__title{margin:0 0 14px;font-size:14px;font-weight:600;color:#111827}.rpt-chart-wrap__canvas{width:100%;height:350px}.rpt-table-scroll{overflow-x:auto;max-height:600px;overflow-y:auto}.rpt-table{width:100%;border-collapse:collapse;font-size:13px;color:#374151}.rpt-table thead{position:sticky;top:0;z-index:1}.rpt-table th{padding:10px 14px;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;background:#f9fafb;color:#6b7280;border-bottom:2px solid #e5e7eb}.rpt-table th.col-left{text-align:left}.rpt-table th.col-center{text-align:center}.rpt-table th.col-right{text-align:right}.rpt-table th.col-tax,.rpt-table th.col-cash{color:#6b7280}.rpt-table td{padding:9px 14px;border-bottom:1px solid #f3f4f6}.rpt-table td.col-left{text-align:left}.rpt-table td.col-right{text-align:right;font-variant-numeric:tabular-nums}.rpt-table td.col-center{text-align:center}.rpt-table td.rpt-positive{color:#059669}.rpt-table td.rpt-negative{color:#dc2626}.rpt-table tbody tr:hover{background:#f9fafb}.rpt-table tbody tr.row-alt{background:#fafbfc}.rpt-table tbody tr.row-retirement{background:#fffbeb}.rpt-table .row-total td{font-weight:600;background:#f9fafb;border-top:2px solid #d1d5db;border-bottom:1px solid #d1d5db;color:#111827}.rpt-table .row-final td{font-weight:600;background:#f9fafb;border-top:1px solid #d1d5db;color:#111827}.rpt-phase{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500}.rpt-phase--working{background:#eff6ff;color:#1d4ed8}.rpt-phase--retired{background:#fef3c7;color:#92400e}.rpt-phase--late{background:#f3e8ff;color:#7c3aed}.rpt-val-positive{color:#059669}.rpt-val-negative{color:#dc2626}.rpt-val-muted{color:#9ca3af}.rpt-val-navy{color:#1e3a5f}.rpt-val-bold{font-weight:600;color:#111827}.rpt-drill-link{color:#2563eb;cursor:pointer;text-decoration:none;transition:color .15s}.rpt-drill-link:hover{color:#1d4ed8;text-decoration:underline}.rpt-recon{background:#fff;border-radius:8px;border:1px solid #e5e7eb;overflow:hidden;margin-top:20px}.rpt-recon__body{padding:16px 20px}.rpt-recon__status{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:4px;font-size:12px;font-weight:600}.rpt-recon__status--balanced{background:#dcfce7;color:#166534}.rpt-recon__status--unbalanced{background:#fee2e2;color:#991b1b}.rpt-loading{text-align:center;padding:40px}.rpt-loading__spinner{display:inline-block;width:32px;height:32px;border:2px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite}.rpt-loading__spinner--blue{border-top-color:#1e3a5f}.rpt-loading__text{margin-top:12px;color:#6b7280;font-size:13px}.rpt-empty{text-align:center;padding:40px;background:#fff;border-radius:8px;border:1px solid #e5e7eb}.rpt-empty__title{font-size:15px;color:#6b7280;margin-bottom:6px}.rpt-empty__body{font-size:13px;color:#9ca3af}.rpt-filter-label{font-size:12px;color:#6b7280}.rpt-filter-select{padding:5px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:12px;color:#374151;background:#fff}.rpt-flex-between{display:flex;justify-content:space-between;align-items:center}.rpt-mb-16{margin-bottom:16px}.rpt-mb-20{margin-bottom:20px}.rpt-mb-24{margin-bottom:24px}.rpt-mt-24{margin-top:24px}.rpt-gap-8{gap:8px}.rpt-gap-16{gap:16px}.rpt-hide{display:none}.rpt-stmt-table{width:100%;border-collapse:collapse}.rpt-stmt-table th{padding:10px 16px;text-align:right;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.3px;background:#f9fafb;color:#6b7280;border-bottom:2px solid #e5e7eb;white-space:nowrap}.rpt-stmt-table th:first-child{text-align:left}.rpt-stmt-table td{padding:10px 16px;text-align:right;font-variant-numeric:tabular-nums;border-bottom:1px solid #f3f4f6;color:#374151}.rpt-stmt-table td:first-child{text-align:left;font-family:inherit}.rpt-stmt-table .row-indent td:first-child{padding-left:28px;color:#6b7280}.rpt-stmt-table .row-header td{font-weight:600;color:#111827;background:#f9fafb;border-bottom:1px solid #e5e7eb}.rpt-stmt-table .row-subtotal td{font-weight:600;border-top:1px solid #d1d5db;color:#111827}.rpt-stmt-table .row-grandtotal td{font-weight:700;border-top:2px solid #9ca3af;border-bottom:2px solid #9ca3af;color:#111827;background:#f9fafb}.rpt-stmt-table .row-spacer td{padding:4px;border:none}.xero-stmt{width:100%;border-collapse:collapse;font-size:13px;color:#374151;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.xero-stmt td{padding:3px 0;vertical-align:top;border:none}.xero-stmt td:last-child{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.xero-stmt .xero-date-hdr td{padding:12px 0 6px;text-align:right;font-weight:600;font-size:13px;color:#111827;border:none}.xero-stmt .xero-sec td{padding:10px 0 2px 8px;font-weight:700;font-size:14px;color:#111827;border:none}.xero-stmt .xero-sub td{padding:6px 0 2px 24px;font-weight:700;font-size:13px;color:#111827;border:none}.xero-stmt .xero-row td{padding:3px 0 3px 40px;font-weight:400;color:#374151;border-bottom:1px solid #f3f4f6}.xero-stmt .xero-row td:last-child{color:#2563eb}.xero-stmt .xero-row:hover{background:#f9fafb}.xero-stmt .xero-row--clickable{cursor:pointer}.xero-stmt .xero-row--clickable:hover td:last-child{text-decoration:underline}.xero-stmt .xero-row--l1 td:first-child{padding-left:24px}.xero-stmt .xero-row--l3 td:first-child{padding-left:56px}.xero-stmt .xero-total td{padding:4px 0 4px 24px;font-weight:600;color:#111827;border-top:1px solid #9ca3af;border-bottom:none}.xero-stmt .xero-total td:last-child{color:#111827}.xero-stmt .xero-grand td{padding:6px 0 6px 8px;font-weight:700;color:#111827;border-top:3px double #111827;border-bottom:none}.xero-stmt .xero-grand td:last-child{color:#111827}.xero-stmt .xero-spacer td{padding:6px 0;border:none}.xero-stmt .xero-neg{color:inherit}.rpt-tb-class-header td{padding:10px 16px;font-weight:700;font-size:13px;color:#111827;background:#f9fafb;border-bottom:2px solid #e5e7eb;border-top:1px solid #e5e7eb}.rpt-tb-class-header td .rpt-tb-class-accent{display:inline-block;width:3px;height:14px;border-radius:2px;margin-right:10px;vertical-align:middle}.rpt-tb-class-accent--assets{background:#059669}.rpt-tb-class-accent--liabilities{background:#dc2626}.rpt-tb-class-accent--equity{background:#7c3aed}.rpt-tb-class-accent--income{background:#2563eb}.rpt-tb-class-accent--expenses{background:#d97706}.rpt-tb-account-row{cursor:pointer;transition:background .1s}.rpt-tb-account-row:hover{background:#f9fafb!important}.rpt-tb-account-row td:first-child{padding-left:32px}.rpt-tb-account-name{color:#2563eb;text-decoration:none;transition:color .15s}.rpt-tb-account-row:hover .rpt-tb-account-name{text-decoration:underline;color:#1d4ed8}.rpt-tb-items-count{margin-left:8px;color:#9ca3af;font-size:11px}.rpt-tb-subtotal td{font-weight:600;color:#111827;border-top:1px solid #d1d5db;background:#fafbfc}.rpt-tb-grandtotal td{font-weight:700;color:#111827;border-top:2px solid #9ca3af;border-bottom:2px solid #9ca3af;background:#f9fafb}.rpt-st-row{cursor:pointer;transition:background .1s}.rpt-st-row:hover{background:#f9fafb}.rpt-st-row td{padding:9px 14px;border-bottom:1px solid #f3f4f6}.rpt-st-row--deficit{background:#fef2f2}.rpt-st-detail{background:#f9fafb}.rpt-st-detail td{padding:0;border-bottom:1px solid #e5e7eb}.rpt-st-detail-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;padding:10px 16px}.rpt-st-detail-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px;color:#6b7280}.rpt-st-detail-item{font-size:12px;color:#374151;display:flex;justify-content:space-between;padding:2px 0}@media print{.rpt-card{box-shadow:none;-moz-column-break-inside:avoid;break-inside:avoid}.rpt-table thead{position:static}.rpt-table-scroll{max-height:none;overflow:visible}.rpt-loading,.rpt-filter-select,.rpt-filter-label{display:none}}@media(max-width:767px){html,body{max-width:100%;overflow-x:hidden}}@media(max-width:1023px){img,svg,video,canvas{max-width:100%;height:auto}table{max-width:100%}}@media(max-width:767px){[style*="repeat(6, 1fr)"],[style*="repeat(5, 1fr)"],[style*="repeat(4, 1fr)"]{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}[style*="repeat(3, 1fr)"],[style*="1fr 1fr 1fr"],[style*="1fr 2fr"],[style*="2fr 1fr"]{grid-template-columns:1fr!important;gap:10px!important}[data-stack-mobile=true][style*="1fr 1fr"]{grid-template-columns:1fr!important}.report-builder-container,[class*=report-builder][style*="350px"]{grid-template-columns:1fr!important;gap:16px!important}#report-preview{min-height:400px}.advisor-main .form-row,#advisor-app .form-row{grid-template-columns:1fr!important}#insights-drawer,.insights-drawer,.side-drawer,.plan-drawer{width:100vw!important;max-width:100vw!important;right:0!important;left:0!important;border-radius:0!important}[style*="1fr 380px"],[style*="380px 1fr"],[style*="1fr 350px"],[style*="350px 1fr"],[style*="1fr 300px"],[style*="300px 1fr"],[style*="1fr 280px"],[style*="280px 1fr"],[style*="1fr 240px"],[style*="240px 1fr"]{grid-template-columns:1fr!important}.advisor-main [style*=grid-template-columns][style*=px]:not([data-keep-desktop]){grid-template-columns:1fr!important}[style*="minmax(340px"],[style*="minmax(320px"],[style*="minmax(300px"]{grid-template-columns:1fr!important}[style*="minmax(280px"],[style*="minmax(260px"]{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important}[style*="minmax(200px"],[style*="minmax(180px"]{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important}.wealth365-main h1,.advisor-main h1{font-size:1.35rem!important;line-height:1.25!important}.wealth365-main h2,.advisor-main h2{font-size:1.15rem!important}.report-preview-content{padding:16px!important;font-size:13px}.report-preview-content table{font-size:12px}.report-preview-content table th,.report-preview-content table td{padding:6px 8px!important}details>summary{padding:12px 10px;min-height:44px}[id$=-chart],.chart-wrapper,.plot-container{max-width:100%!important;overflow-x:auto}}@media(min-width:768px)and (max-width:1023px){[style*="repeat(6, 1fr)"],[style*="repeat(5, 1fr)"]{grid-template-columns:repeat(3,1fr)!important}[style*="repeat(4, 1fr)"]{grid-template-columns:repeat(2,1fr)!important}.report-builder-container,[class*=report-builder][style*="350px"]{grid-template-columns:1fr!important;gap:18px!important}[style*="1fr 380px"],[style*="380px 1fr"],[style*="1fr 350px"],[style*="350px 1fr"]{grid-template-columns:1fr!important}[style*="minmax(340px"],[style*="minmax(320px"]{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important}#insights-drawer,.insights-drawer,.side-drawer{width:min(480px,92vw)!important;max-width:92vw!important}}@media(min-width:1024px)and (max-width:1199px){[style*="repeat(6, 1fr)"],[style*="repeat(5, 1fr)"]{grid-template-columns:repeat(4,1fr)!important}.report-builder-container{grid-template-columns:280px 1fr!important;gap:18px!important}}@media(hover:none)and (pointer:coarse){input[type=checkbox],input[type=radio]{min-width:22px;min-height:22px;transform:scale(1.1);transform-origin:left center}.modal-body,.drawer-body,.tab-content,#report-preview,.report-preview-content{-webkit-overflow-scrolling:touch}input,select,textarea{font-size:16px!important}}@media(max-width:767px){.wealth365-site-nav,.marketing-nav,.site-nav{flex-wrap:wrap!important;padding:10px 14px!important;gap:8px!important}.wealth365-site-nav .nav-links,.marketing-nav .nav-links,.site-nav .nav-links{display:none!important}.wealth365-site-nav .nav-cta,.marketing-nav .nav-cta,.site-nav .nav-cta{flex-wrap:wrap;gap:6px}.hero h1,.hero-title,.marketing-hero h1{font-size:clamp(1.6rem,7vw,2.2rem)!important;line-height:1.15!important}.hero p,.hero-subtitle,.marketing-hero p{font-size:1rem!important}.hero-ctas,.hero-actions,.cta-row{flex-direction:column!important;align-items:stretch!important;gap:10px!important}.hero-ctas>*,.hero-actions>*{width:100%!important;text-align:center}.beta-banner,.top-banner{padding:10px 12px!important;font-size:12px!important;text-align:center!important}.beta-banner .cta,.top-banner .cta{display:block;margin-top:6px}}@media(min-width:768px)and (max-width:1023px){.hero h1,.hero-title,.marketing-hero h1{font-size:clamp(2rem,5vw,2.8rem)!important}.features-grid,.pricing-grid{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:1023px){.advisor-sidebar+.advisor-main,.wealth365-shell .advisor-main{min-width:0}.advisor-main>*,.wealth365-main>*{max-width:100%}.advisor-tabs,.planner-tabs,.view-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap!important;white-space:nowrap}.advisor-tabs::-webkit-scrollbar,.planner-tabs::-webkit-scrollbar,.view-tabs::-webkit-scrollbar{height:2px}}@media(max-width:1023px){#report-preview{overflow-x:auto;-webkit-overflow-scrolling:touch}.report-preview-content .multi-period-table,.report-preview-content table.wide-table,.report-preview-content table[data-columns]{min-width:600px}}@media(prefers-reduced-motion:reduce){.advisor-sidebar,.side-drawer,.insights-drawer,.nav-panel,.header-center{transition:none!important;animation:none!important}}
