:root{--color-navy: #1a1a2e;--color-navy-light: #16213e;--color-gold: #d4a843;--color-gold-light: #e8c76b;--color-white: #ffffff;--color-bg: #f5f5f7;--color-text: #2c2c2e;--color-text-secondary: #8e8e93;--color-border: #e5e5ea;--color-success: #34c759;--color-danger: #ff3b30;--font-stack: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--border-radius: 8px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100vh;height:100dvh;overflow:hidden}@supports (padding-top: env(safe-area-inset-top)){#root{padding-top:env(safe-area-inset-top);background:var(--color-white)}}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-stack);color:var(--color-text);background:var(--color-bg);line-height:1.6}@media screen and (max-width:768px){input,select,textarea,.ant-input,.ant-select-selection-search-input,.ant-input-number-input,.ant-picker-input>input{font-size:16px!important}}.ant-layout-sider{background:var(--color-navy)!important}.ant-layout-sider .ant-menu-dark{background:transparent!important}.ant-layout-sider .ant-menu-item-selected{background:#d4a84326!important}.ant-layout-sider .ant-menu-item-selected .ant-menu-title-content a,.ant-layout-sider .ant-menu-item-selected .anticon{color:var(--color-gold)!important}.app-logo{position:relative;height:64px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:var(--color-gold);letter-spacing:1px;border-bottom:1px solid rgba(255,255,255,.08)}.app-header{display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:var(--color-white);border-bottom:1px solid var(--color-border);height:64px;line-height:64px}.app-header-left{display:flex;align-items:center;gap:16px;flex:1;min-width:0}.app-header-page-title-icon-and-title{display:flex;align-items:center;gap:12px;padding-left:8px;min-width:0;height:32px}.app-header-page-title{display:flex;align-items:flex-end;gap:12px;min-width:0}.app-header-page-icon{font-size:28px;color:var(--color-gold);flex-shrink:0}.app-header-page-title-text{margin:0!important;font-size:24px!important;font-weight:800!important;color:var(--color-navy)!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header-page-subtitle-text{margin:0!important;font-size:16px!important;font-weight:500!important;color:var(--color-text-secondary)!important;white-space:nowrap}.app-header-extra{display:flex;align-items:center;flex-shrink:0}.app-header-trigger{font-size:18px;cursor:pointer;padding:8px;border-radius:var(--border-radius);transition:background .2s}.app-header-trigger:hover{background:var(--color-bg)}.app-header-right{display:flex;align-items:center;gap:12px}.app-header-user{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 12px;border-radius:var(--border-radius);transition:background .2s}.app-header-user:hover{background:var(--color-bg)}.app-header-username{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-content{padding:24px;overflow:auto;flex:1;min-height:0;background:var(--color-bg)}.ant-layout-content.app-content{overflow:auto!important}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;background:linear-gradient(135deg,var(--color-navy) 0%,var(--color-navy-light) 50%,#0f3460 100%);padding:24px;padding-top:calc(24px + env(safe-area-inset-top,0px));padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}.auth-branding{text-align:center;margin-bottom:32px}.auth-branding h1{font-size:40px;font-weight:800;color:var(--color-gold);margin-bottom:4px;letter-spacing:2px}.auth-branding p{color:#ffffffb3;font-size:16px}.auth-card{width:100%;max-width:420px;border-radius:12px;box-shadow:var(--shadow-lg)}.auth-card .ant-card-body{padding:32px}.auth-header{text-align:center;margin-bottom:32px}.auth-header .ant-typography{display:block}.auth-header .ant-typography-secondary{margin-top:4px}.auth-footer{text-align:center;margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border)}.auth-footer a{color:var(--color-gold);font-weight:600}.auth-footer a:hover{color:var(--color-gold-light)}.dashboard-welcome{text-align:center;padding:80px 24px}.dashboard-welcome h1{color:var(--color-navy);font-size:32px;margin-bottom:8px}.dashboard-welcome p{color:var(--color-text-secondary);font-size:16px}.dashboard-page{max-width:1280px;margin:0 auto}.dashboard-header{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.dashboard-header-title-row{margin-bottom:0}.dashboard-header-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.dashboard-header-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;flex:1;min-width:min(100%,320px)}.dashboard-view-label{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.dashboard-view-toggle{display:flex;align-items:center;gap:10px;padding:6px 8px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px}.dashboard-view-btn{border-radius:6px!important;font-weight:500!important}.dashboard-refresh-btn{flex-shrink:0}.dashboard-title-section{display:flex;align-items:center;gap:12px}.dashboard-title-icon{font-size:28px;color:var(--color-gold)}.dashboard-title{font-size:28px;font-weight:700;color:var(--color-navy);margin:0}.dashboard-card{border-radius:var(--border-radius);box-shadow:var(--shadow-sm);height:100%;display:flex;flex-direction:column}.dashboard-card .ant-card-body{padding:20px;display:flex;flex-direction:column;flex:1}.dashboard-stat-title-with-info{display:inline-flex;align-items:center;gap:6px}.dashboard-info-icon{color:var(--color-text-secondary);font-size:14px;cursor:help}.dashboard-info-icon:hover{color:var(--color-navy)}.dashboard-top-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.dashboard-hero-stat{min-height:80px;flex:1}.dashboard-stat-details{display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:1px solid var(--color-border)}.dashboard-stat-detail-row{display:flex;justify-content:space-between;align-items:center}.dashboard-card .dashboard-hero-stat .ant-statistic-title{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.dashboard-card .dashboard-hero-stat .ant-statistic-content-value{font-size:32px;font-weight:700;line-height:1.2}.dashboard-chart-row{margin-bottom:24px}.projection-chart-card .ant-card-body{padding:20px}.chart-container{height:380px;position:relative}.chart-loading-container{height:380px;display:flex;align-items:center;justify-content:center}.chart-empty{height:200px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--color-text-secondary)}.chart-today-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary);margin-top:8px}.emergency-buffer-hint{font-size:12px;color:var(--color-text-secondary);line-height:1.45;margin:0 0 8px}.today-marker{display:inline-block;width:20px;height:2px;background:var(--color-gold);border-top:1px dashed var(--color-gold)}.dashboard-stats-row{margin-bottom:24px}.quick-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.quick-stat-card .ant-card-body{padding:16px 20px}.quick-stat-content{display:flex;align-items:center;gap:16px;cursor:pointer}.quick-stat-icon{font-size:32px}.quick-stat-info{display:flex;flex-direction:column}.quick-stat-count{font-size:24px;font-weight:700;color:var(--color-navy);line-height:1.2}.quick-stat-label{font-size:13px;color:var(--color-text-secondary)}.dashboard-milestones-row{margin-bottom:24px}.milestones-section .section-title{font-size:20px;font-weight:600;color:var(--color-navy);margin:0 0 16px}.milestones-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.milestone-skeleton{padding:20px;background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.milestone-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:8px}.milestone-title{font-size:15px;font-weight:600;color:var(--color-navy);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.milestone-details{display:flex;flex-direction:column;gap:6px}.milestones-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.milestones-empty-icon{font-size:40px;color:var(--color-border);margin-bottom:12px}.milestones-empty p{color:var(--color-text-secondary);margin:0}.dashboard-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.dashboard-error h2{font-size:22px;color:var(--color-navy);margin:0 0 8px}.dashboard-error p{color:var(--color-text-secondary);margin:0 0 24px}@media(max-width:1024px){.dashboard-top-row,.quick-stats-row,.milestones-grid{grid-template-columns:1fr 1fr}}@media(max-width:768px){.dashboard-top-row,.quick-stats-row,.milestones-grid{grid-template-columns:1fr}.chart-container{height:280px}.dashboard-view-toggle{flex-wrap:wrap}.dashboard-header-toolbar{flex-direction:column;align-items:stretch;gap:12px}.dashboard-refresh-btn{align-self:flex-end}}.placeholder-page{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.placeholder-page .anticon{font-size:48px;color:var(--color-gold);margin-bottom:16px}.placeholder-page h2{color:var(--color-navy);margin-bottom:8px}.placeholder-page p{color:var(--color-text-secondary)}.ant-btn-primary{background:var(--color-navy);border-color:var(--color-navy)}.ant-btn-primary:hover{background:var(--color-navy-light)!important;border-color:var(--color-navy-light)!important}.crud-page{max-width:1200px;margin:0 auto}.crud-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.crud-page-header:has(>*:only-child){justify-content:flex-end}.crud-page-title-section{display:flex;align-items:center;gap:12px}.crud-page-icon{font-size:28px;color:var(--color-gold)}.crud-page-title{font-size:28px;font-weight:700;color:var(--color-navy);margin:0}.crud-page-filters{display:flex;gap:12px;align-items:center;margin-bottom:24px;flex-wrap:wrap}.crud-page-data-notice{margin-bottom:16px}.filter-item{min-width:200px}.filter-item.filter-item-toggle{min-width:auto;display:flex;align-items:center;gap:10px}.filter-toggle-label{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.filter-item.filter-item-action{min-width:auto;margin-left:auto}.quick-transaction-fab{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:900;width:56px!important;height:56px!important;box-shadow:var(--shadow-md)}.quick-entry-hint{font-size:12px;color:var(--color-text-secondary);margin:0;line-height:1.45}.entity-grid,.skeleton-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.entity-card{border-radius:var(--border-radius);box-shadow:var(--shadow-sm);transition:box-shadow .25s ease,transform .25s ease}.entity-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.entity-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:8px}.entity-card-title{font-size:16px;font-weight:600;color:var(--color-navy);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.entity-card-tags{display:flex;gap:4px;flex-shrink:0}.entity-card-value{margin-bottom:16px}.entity-card-details{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--color-border)}.entity-card-detail-row{display:flex;justify-content:space-between;align-items:center}.detail-label{font-size:13px;color:var(--color-text-secondary)}.detail-label-indent{padding-left:12px;font-size:12px;font-style:italic}.detail-value{font-size:13px;font-weight:500;color:var(--color-text)}.entity-card-notes{margin-top:12px;font-size:13px;color:var(--color-text-secondary);font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-card-inactive,.entity-card-completed,.entity-card-ended{opacity:.6}.entity-card-attribution{border-left:3px solid #1890ff}.card-actions{display:flex;gap:2px}.crud-page-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.crud-page-empty-icon{font-size:56px;color:var(--color-border);margin-bottom:16px}.crud-page-empty h3{font-size:20px;font-weight:600;color:var(--color-navy);margin:0 0 8px}.crud-page-empty p{color:var(--color-text-secondary);margin:0 0 24px}.modal-footer{display:flex;justify-content:flex-end;gap:8px}@media(max-width:1024px){.entity-grid,.skeleton-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.app-content{padding:16px}.auth-card{max-width:100%}.auth-card .ant-card-body{padding:24px}.app-header-username{display:none}.entity-grid,.skeleton-grid{grid-template-columns:1fr}.crud-page-header{flex-direction:column;align-items:flex-start;gap:16px}.crud-page-filters{flex-direction:column}.filter-item{min-width:100%}}.tier-gate-overlay{display:flex;align-items:center;justify-content:center;min-height:400px;padding:48px 24px}.tier-gate-content{text-align:center;max-width:400px}.tier-gate-icon{font-size:48px;color:var(--color-gold);margin-bottom:16px}.tier-gate-title{font-size:22px;font-weight:700;color:var(--color-navy);margin:0 0 8px}.tier-gate-message{color:var(--color-text-secondary);margin:0 0 24px;font-size:15px;line-height:1.6}.timeline-page{max-width:1280px;margin:0 auto}.timeline-page-header{margin-bottom:24px}.timeline-controls{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.timeline-controls-main{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;width:100%}.timeline-filter-flow{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;flex:1;min-width:0}.timeline-filter-group{display:flex;flex-direction:column;gap:6px}.timeline-filter-group-range{flex:1 1 460px;min-width:300px}.timeline-filter-group-date{flex:0 1 220px;min-width:180px}.timeline-filter-label{font-size:14px;font-weight:700;color:var(--color-navy);white-space:nowrap}.timeline-quick-filters{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:6px 8px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px}.timeline-quick-btn{min-width:48px!important;border-radius:6px!important;font-weight:500!important}.timeline-date-picker{min-width:100%}.timeline-filter-group-date .timeline-date-picker{padding:6px 8px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px}.timeline-filter-group-date .timeline-date-picker .ant-picker{width:100%;background:transparent;border:none;box-shadow:none;padding:0}.timeline-filter-group-date .timeline-date-picker .ant-picker:hover,.timeline-filter-group-date .timeline-date-picker .ant-picker-focused{border:none;box-shadow:none}.timeline-scenario-select{min-width:220px;margin-left:auto}.timeline-loading{display:flex;align-items:center;justify-content:center;min-height:400px}.timeline-chart-section{margin-bottom:24px}.timeline-scrubber-section{margin-bottom:-32px;padding:0 32px}.timeline-details-section{display:grid;grid-template-columns:1fr 1fr;gap:24px}.date-scrubber{padding:16px 0}.date-scrubber-label{text-align:center;margin-bottom:12px}.date-scrubber-current{font-size:16px;font-weight:600;color:var(--color-navy);background:var(--color-white);padding:4px 16px;border-radius:20px;box-shadow:var(--shadow-sm)}.date-scrubber-track-wrapper{position:relative;padding-bottom:24px}.date-scrubber-input{width:100%;height:6px;border-radius:3px;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.date-scrubber-input::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-navy);border:3px solid var(--color-white);box-shadow:var(--shadow-md);cursor:pointer;transition:transform .15s ease}.date-scrubber-input::-webkit-slider-thumb:hover{transform:scale(1.15)}.date-scrubber-input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--color-navy);border:3px solid var(--color-white);box-shadow:var(--shadow-md);cursor:pointer}.date-scrubber-ticks{position:relative;height:20px;margin-top:8px}.date-scrubber-tick{position:absolute;transform:translate(-50%);font-size:11px;color:var(--color-text-secondary);white-space:nowrap}.snapshot-panel{border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.snapshot-loading{display:flex;align-items:center;justify-content:center;min-height:200px}.snapshot-empty{text-align:center;color:var(--color-text-secondary);padding:40px 0}.snapshot-hero{text-align:center;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--color-border)}.snapshot-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.snapshot-section{padding:12px;background:var(--color-bg);border-radius:var(--border-radius)}.snapshot-section-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin:0 0 8px}.snapshot-detail-row{display:flex;justify-content:space-between;align-items:center}.snapshot-detail-label{font-size:13px;color:var(--color-text-secondary)}.snapshot-detail-value{font-size:14px;font-weight:600;color:var(--color-text)}.snapshot-cashflow{padding-top:16px;border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.snapshot-savings-rate{display:flex;flex-direction:column;align-items:flex-end}.timeline-milestones{padding:16px;background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.timeline-milestones-title{font-size:16px;font-weight:600;color:var(--color-navy);margin:0 0 16px}.timeline-milestones-list{display:flex;flex-direction:column;gap:12px}.timeline-milestone-marker{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-white);cursor:pointer;transition:border-color .2s,box-shadow .2s;text-align:left;width:100%}.timeline-milestone-marker:hover{border-color:var(--color-gold);box-shadow:var(--shadow-sm)}.timeline-milestone-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;margin-top:4px}.timeline-milestone-info{flex:1;min-width:0}.timeline-milestone-label{font-size:14px;font-weight:600;color:var(--color-navy);display:block;margin-bottom:2px}.timeline-milestone-date{font-size:12px;color:var(--color-text-secondary);display:block;margin-bottom:4px}.timeline-milestone-target{font-size:13px;font-weight:500;color:var(--color-text);display:block;margin-bottom:6px}.timeline-milestone-progress{height:4px;background:var(--color-bg);border-radius:2px;overflow:hidden}.timeline-milestone-progress-bar{height:100%;border-radius:2px;transition:width .3s ease}.scenarios-page{max-width:1280px;margin:0 auto}.scenarios-layout{display:grid;grid-template-columns:320px 1fr;gap:24px;align-items:start}.scenarios-sidebar{position:sticky;top:24px}.scenario-list{background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);padding:16px}.scenario-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.scenario-list-title{font-size:16px;font-weight:600;color:var(--color-navy);margin:0}.scenario-list-loading{display:flex;align-items:center;justify-content:center;padding:40px 0}.scenario-list-empty{text-align:center;padding:32px 16px}.scenario-list-empty-icon{font-size:36px;color:var(--color-border);margin-bottom:12px}.scenario-list-empty p{color:var(--color-text-secondary);margin:0 0 16px}.scenario-list-items{display:flex;flex-direction:column;gap:8px}.scenario-list-item{cursor:pointer;border-radius:var(--border-radius);transition:transform .15s ease}.scenario-list-item:hover{transform:translateY(-1px)}.scenario-list-item-selected .scenario-list-card{border:2px solid var(--color-gold)}.scenario-list-card{border-radius:var(--border-radius);box-shadow:none;border:2px solid transparent;transition:border-color .2s}.scenario-list-card .ant-card-body{padding:12px}.scenario-list-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.scenario-list-card-name{font-size:14px;font-weight:600;color:var(--color-navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.scenario-list-card-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.scenario-list-card-desc{font-size:12px;color:var(--color-text-secondary);margin:4px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scenarios-content{min-height:500px;display:flex;flex-direction:column;gap:20px}.scenarios-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:280px;text-align:center;background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);padding:32px 20px}.scenarios-empty-icon{font-size:48px;color:var(--color-border);margin-bottom:16px}.scenarios-empty-state h3{font-size:20px;font-weight:600;color:var(--color-navy);margin:0 0 8px}.scenarios-empty-state p{color:var(--color-text-secondary);margin:0}.scenarios-loading{display:flex;align-items:center;justify-content:center;min-height:400px}.scenarios-chart-section{margin-bottom:0}.scenarios-events-layout{display:grid;grid-template-columns:1fr 360px;gap:24px}.scenarios-section-title{font-size:18px;font-weight:600;color:var(--color-navy);margin:0 0 16px}.scenario-event-timeline{display:flex;flex-direction:column;background:var(--color-white);border-radius:var(--border-radius)}.scenario-event-timeline-empty{text-align:center;padding:40px 20px;color:var(--color-text-secondary);background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.scenario-event-item{display:flex;gap:12px;min-height:80px;padding:12px 0;border-bottom:1px solid var(--color-border)}.scenario-event-item:last-child{border-bottom:none}.scenario-event-dot-line{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:32px}.scenario-event-dot{width:32px;height:32px;border-radius:50%;border:2px solid var(--color-navy);display:flex;align-items:center;justify-content:center;background:var(--color-white);font-size:14px;color:var(--color-navy);flex-shrink:0}.scenario-event-line{flex:1;width:2px;background:var(--color-border);min-height:16px}.scenario-event-item:last-child .scenario-event-line{display:none}.scenario-event-content{flex:1;padding-bottom:16px;min-width:0}.scenario-event-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.scenario-event-meta{display:flex;align-items:center;gap:8px}.scenario-event-date{font-size:12px;color:var(--color-text-secondary)}.scenario-event-summary{font-size:13px;color:var(--color-text);margin:0}.scenario-event-form{border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.scenario-event-form .ant-card-body{padding:16px}.scenario-event-form-modal-content{padding:4px 4px 0}.scenario-event-form-fields{display:flex;flex-direction:column;gap:4px}.scenarios-selector-card{margin-bottom:20px}.scenarios-selector-scroll{display:flex;align-items:stretch;gap:10px;overflow-x:auto;padding-bottom:4px}.scenario-chip{display:inline-flex;align-items:center;gap:8px;min-width:max-content;padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);cursor:pointer;transition:border-color .2s,background .2s}.scenario-chip:hover{border-color:var(--color-gold)}.scenario-chip-selected{border-color:var(--color-gold);background:#d4a84314}.scenario-chip-name{font-size:13px;font-weight:600;color:var(--color-navy)}.scenario-chip-delete{display:inline-flex;align-items:center}.scenarios-events-card .ant-card-body{padding:10px 20px}.scenario-form{display:flex;flex-direction:column;gap:4px}.settings-page{max-width:800px;margin:0 auto}.settings-tabs{display:flex;gap:0;margin-bottom:24px;border-bottom:2px solid var(--color-border)}.settings-tab{padding:10px 20px;font-size:14px;font-weight:500;color:var(--color-text-secondary);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:color .2s,border-color .2s}.settings-tab:hover{color:var(--color-navy)}.settings-tab-active{color:var(--color-navy);border-bottom-color:var(--color-navy);font-weight:600}.settings-card{border-radius:var(--border-radius);box-shadow:var(--shadow-sm);margin-bottom:24px}.settings-form{display:flex;flex-direction:column;gap:4px}.settings-form-actions{padding-top:12px;display:flex;justify-content:flex-end}.subscription-info{display:flex;flex-direction:column;gap:24px}.subscription-current{display:flex;align-items:center;gap:16px;padding:16px;background:var(--color-bg);border-radius:var(--border-radius)}.subscription-icon{font-size:32px;color:var(--color-gold)}.subscription-tier-name{font-size:18px;font-weight:600;color:var(--color-navy);margin:0 0 4px}.subscription-limits{font-size:13px;color:var(--color-text-secondary);margin:0}.subscription-comparison{overflow-x:auto}.subscription-table{width:100%;border-collapse:collapse;font-size:13px}.subscription-table th,.subscription-table td{padding:10px 12px;text-align:center;border-bottom:1px solid var(--color-border)}.subscription-table th{font-weight:600;color:var(--color-navy);background:var(--color-bg);font-size:13px;text-transform:uppercase;letter-spacing:.5px}.subscription-table td:first-child,.subscription-table th:first-child{text-align:left}.subscription-table td:first-child{color:var(--color-text)}.tier-active{background:#d4a84314}.subscription-upgrade{display:flex;justify-content:center}.danger-zone-card{border:1px solid var(--color-border)}.danger-zone{display:flex;flex-direction:column;gap:0}.danger-zone-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0}.danger-zone-item:first-child{padding-top:0}.danger-zone-item:last-child{padding-bottom:0}.danger-zone-divider{height:1px;background:var(--color-border)}.danger-zone-info{flex:1}.danger-zone-title{font-size:15px;font-weight:600;color:var(--color-text);margin:0 0 4px}.danger-text{color:var(--color-danger)}.danger-zone-desc{font-size:13px;color:var(--color-text-secondary);margin:0}.delete-account-warning{text-align:center;padding:16px 0}.delete-warning-icon{font-size:36px;color:var(--color-danger);margin-bottom:12px}.delete-account-warning p{color:var(--color-text);margin:0;line-height:1.6}.automation-section{display:flex;flex-direction:column;gap:20px}.automation-section-header{display:flex;align-items:flex-start;gap:12px}.automation-icon{font-size:24px;color:var(--color-navy);margin-top:2px}.automation-section-title{font-size:15px;font-weight:600;color:var(--color-text);margin:0 0 4px}.automation-section-desc{font-size:13px;color:var(--color-text-secondary);margin:0;line-height:1.5}.automation-key-display{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--color-bg);border-radius:var(--border-radius);border:1px solid var(--color-border)}.automation-key-value{display:flex;align-items:center;gap:10px}.automation-key-icon{color:var(--color-text-secondary);font-size:16px}.automation-key-code{flex:1;font-family:SF Mono,Fira Code,Courier New,monospace;font-size:14px;color:var(--color-text);word-break:break-all}.automation-key-actions{display:flex;gap:8px;justify-content:flex-end}.automation-key-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;background:var(--color-bg);border-radius:var(--border-radius);border:1px dashed var(--color-border)}.automation-key-empty-text{font-size:14px;color:var(--color-text-secondary);margin:0}.automation-instructions-card{margin-top:0}.automation-endpoint-info{display:flex;flex-direction:column;gap:8px}.automation-code-block{display:block;padding:12px 16px;background:var(--color-navy);color:#e0e0e0;border-radius:var(--border-radius);font-family:SF Mono,Fira Code,Courier New,monospace;font-size:12px;line-height:1.6;overflow-x:auto;white-space:pre-wrap;word-break:break-all;margin:0}.automation-guides{display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.automation-guide-header{display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--color-bg);border:none;border-bottom:1px solid var(--color-border);cursor:pointer;font-size:14px;font-weight:500;color:var(--color-text);width:100%;text-align:left;transition:background .15s}.automation-guide-header:last-child,.automation-guide-header:last-of-type{border-bottom:none}.automation-guide-header:hover{background:var(--color-border)}.automation-guide-expanded{background:var(--color-bg);border-bottom:1px solid var(--color-border)}.automation-guide-chevron{margin-left:auto;font-size:16px;font-weight:600;color:var(--color-text-secondary)}.automation-guide-content{padding:16px 20px;border-bottom:1px solid var(--color-border)}.automation-guide-content:last-child{border-bottom:none}.automation-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px;font-size:13px;color:var(--color-text);line-height:1.6}.automation-steps ul{margin:8px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:4px}.automation-steps code{font-family:SF Mono,Fira Code,Courier New,monospace;font-size:12px;background:var(--color-bg);padding:2px 6px;border-radius:4px;color:var(--color-navy)}@media(max-width:1024px){.timeline-details-section{grid-template-columns:1fr}.scenarios-layout{grid-template-columns:280px 1fr}.scenarios-events-layout{grid-template-columns:1fr}}@media(max-width:768px){.app-header-page-title{padding-left:4px}.app-header-page-icon{font-size:22px}.app-header-page-title-icon-and-title{height:26px}.app-header-page-title-text{font-size:20px!important}.app-header-page-subtitle-text{font-size:14px!important}.timeline-controls{flex-direction:column;align-items:stretch}.timeline-scenario-select{min-width:220px;margin-left:0}.snapshot-grid{grid-template-columns:1fr}.snapshot-cashflow{flex-direction:column;align-items:flex-start;gap:12px}.snapshot-savings-rate{align-items:flex-start}.scenarios-layout{grid-template-columns:1fr}.scenarios-sidebar{position:static}.settings-tabs{overflow-x:auto}}.page-error{display:flex;align-items:center;justify-content:center;min-height:400px;padding:48px 24px}.page-error-card{max-width:480px;width:100%}.page-error-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px}.page-error-icon{font-size:48px;color:var(--color-danger);margin-bottom:16px}.page-error-title{font-size:22px;font-weight:700;color:var(--color-navy);margin:0 0 8px}.page-error-message{color:var(--color-text-secondary);margin:0 0 24px;line-height:1.6}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.empty-state-icon{font-size:56px;color:var(--color-border);margin-bottom:16px}.empty-state-title{font-size:20px;font-weight:600;color:var(--color-navy);margin:0 0 8px}.empty-state-description{color:var(--color-text-secondary);margin:0 0 24px;max-width:360px;line-height:1.6}.app-sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000073;z-index:999}.app-sider-mobile{position:fixed!important;top:0;left:0;bottom:0;z-index:1000;transform:translate(-100%);transition:transform .25s ease;padding-top:env(safe-area-inset-top,0px)}.app-sider-mobile-open{transform:translate(0)}.app-sidebar-close{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#ffffffa6;font-size:16px;cursor:pointer;padding:4px}.app-sidebar-close:hover{color:var(--color-white)}.app-content{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.dashboard-card,.settings-card,.snapshot-panel,.scenario-event-form{transition:box-shadow .25s ease,transform .25s ease}.dashboard-card:hover{box-shadow:var(--shadow-md)}:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}.settings-tab:focus-visible{outline:2px solid var(--color-gold);outline-offset:-2px}@keyframes skeletonPulse{0%{opacity:1}50%{opacity:.4}to{opacity:1}}.skeleton-grid .ant-card{animation:skeletonPulse 1.5s ease-in-out infinite}h1,h2,h3,h4{line-height:1.3}.ant-statistic-content-value,.detail-value,.snapshot-detail-value,.dashboard-card .dashboard-hero-stat .ant-statistic-content,.quick-stat-count{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.crud-page-title,.dashboard-title{font-size:28px;font-weight:700;line-height:1.2}.ant-message{top:72px!important}.auth-card{width:100%;max-width:420px}@media(max-width:1024px){.auth-card{max-width:480px}.date-scrubber-input::-webkit-slider-thumb{width:28px;height:28px}.date-scrubber-input::-moz-range-thumb{width:28px;height:28px}}@media(max-width:768px){.auth-page{padding:16px}.auth-card{max-width:100%}.auth-card .ant-card-body{padding:24px 16px}.auth-branding h1{font-size:32px}.dashboard-title,.crud-page-title{font-size:22px}.date-scrubber-input{height:8px}.date-scrubber-input::-webkit-slider-thumb{width:32px;height:32px;border-width:4px}.date-scrubber-input::-moz-range-thumb{width:32px;height:32px;border-width:4px}.scenarios-events-layout{grid-template-columns:1fr}.scenario-event-form-fields{gap:8px}.settings-page{max-width:100%}.settings-tab{padding:8px 12px;font-size:13px}.danger-zone-item{flex-direction:column;align-items:flex-start;gap:12px}.page-error{padding:24px 16px;min-height:300px}.page-error-card{max-width:100%}.empty-state{padding:48px 16px}}@media(max-width:480px){.app-content{padding:12px}.crud-page-header{gap:12px}.dashboard-header{gap:8px}.subscription-table{font-size:11px}.subscription-table th,.subscription-table td{padding:8px 6px}.milestone-header{flex-direction:column;align-items:flex-start}}@media print{.ant-layout-sider,.app-header,.app-sidebar-overlay,.crud-page-filters,.settings-tabs,.modal-footer,.card-actions,.app-header-trigger,button{display:none!important}.app-content{padding:0!important;animation:none!important}.entity-card,.dashboard-card,.settings-card{box-shadow:none!important;border:1px solid #ddd;break-inside:avoid}.entity-grid,.dashboard-top-row,.quick-stats-row,.milestones-grid{grid-template-columns:repeat(2,1fr)!important}.chart-container{height:300px!important}body{background:#fff!important;color:#000!important}.ant-statistic-content-value{color:#000!important}}.view-as-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 16px;background:#fff7e6;border-bottom:1px solid #ffd591;color:#d46b08;font-size:13px}.view-as-user-list{display:flex;flex-direction:column;gap:8px}.view-as-user-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid #f0f0f0;border-radius:8px;transition:background .2s}.view-as-user-item:hover{background:#fafafa}.chart-action-row{display:flex;justify-content:flex-end;padding:8px 0 0;margin-top:4px}.see-timeline-btn{color:var(--color-gold)!important;font-weight:500}.see-timeline-btn:hover{color:var(--color-gold-light)!important}.goal-card-achieved{opacity:.7}.goal-card-body{display:flex;flex-direction:column;gap:12px}.goal-card-amount-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:8px}.goal-card-amount{display:flex;align-items:center;flex:1;min-width:0;font-size:20px;font-weight:600;color:var(--color-text)}.goal-card-amount-value{font-variant-numeric:tabular-nums}.goal-card-meta{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.goal-card-projection{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--color-bg);border-radius:var(--border-radius)}.goal-card-projection-row{display:flex;align-items:center;gap:4px;font-size:13px}.goal-card-projection-label{color:var(--color-text-secondary);margin-right:4px}.goal-card-projection-value{font-weight:500;color:var(--color-text)}.goal-card-notes{font-size:13px;color:var(--color-text-secondary);margin:0;line-height:1.5}.goal-achieved-btn{color:var(--color-success)!important}.achieve-modal{display:flex;flex-direction:column;gap:20px}.achieve-modal-target{display:flex;align-items:center;font-size:18px;padding:12px 16px;background:var(--color-bg);border-radius:var(--border-radius)}.achieve-modal-progress{display:flex;flex-direction:column;gap:6px}.achieve-modal-progress-labels{display:flex;justify-content:space-between;font-size:13px;color:var(--color-text-secondary)}.achieve-modal-warning{color:var(--color-warning, #faad14);font-size:13px;margin:0}.achieve-modal-section-title{font-size:14px;font-weight:600;margin:0 0 12px;color:var(--color-text)}.achieve-modal-sources{display:flex;flex-direction:column;gap:12px}.achieve-modal-source-row{padding:16px;border:1px solid var(--color-border);border-radius:var(--border-radius);display:flex;flex-direction:column;gap:12px}.achieve-modal-source-header{display:flex;align-items:center;gap:8px}.achieve-modal-source-type{flex:1}.achieve-modal-source-detail{display:flex;flex-direction:column;gap:8px}.achieve-modal-hint{font-size:13px;color:var(--color-text-secondary);margin:0}.achieve-modal-loan-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.achieve-modal-source-amount{margin-top:4px}.achieve-modal-add-btn{width:100%}
