:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f5f5f7;--window:#0b0b0d;--sidebar:#141416;--panel:#1f1f22;--panel-2:#2a2a2e;--panel-3:#34343a;--line:#ffffff17;--text:#f5f5f7;--muted:#9c9ca3;--muted-2:#6f6f78;--blue:#0a84ff;--green:#48d98b;--red:#ff615f;--shadow:0 18px 60px #00000057;background:#0b0b0d;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:1024px;height:100%;min-height:720px;margin:0}body{background:linear-gradient(180deg, #ffffff09, transparent 24%), var(--window);overflow:hidden}button,input{font:inherit}button{color:inherit;cursor:pointer}.app-shell{background:var(--window);grid-template-columns:286px minmax(760px,1fr);width:100%;height:100%;display:grid}.mobile-home{display:none}.sidebar{border-right:1px solid var(--line);background:linear-gradient(#171719,#111113);flex-direction:column;gap:18px;padding:24px 12px 18px;display:flex}.sidebar-title-row,.toolbar,.panel-header,.planner-controls,.date-control,.toolbar-actions,.day-header,.chart-head,.status-bar{align-items:center;display:flex}.sidebar-title-row{justify-content:space-between;padding:0 8px}.profile-switcher{color:var(--muted);text-transform:uppercase;gap:6px;padding:0 8px;font-size:11px;font-weight:800;display:grid}.profile-switcher strong{color:var(--text);text-transform:none;font-size:13px;font-weight:800}.profile-switcher small{overflow-wrap:anywhere;color:var(--muted);text-transform:none;font-size:11px;font-weight:700}.onboarding-view{background:var(--window);place-items:center;min-width:100%;min-height:100dvh;padding:24px;display:grid;overflow:auto}.onboarding-panel{border:1px solid var(--line);background:var(--panel);width:min(520px,100%);max-height:calc(100dvh - 48px);box-shadow:var(--shadow);border-radius:10px;gap:18px;padding:26px;display:grid;overflow:auto}.onboarding-panel h1{margin:0 0 8px}.onboarding-panel p{color:var(--muted);margin:0;line-height:1.5}.checkout-panel{background:#30d15814;border:1px solid #30d15852;border-radius:8px;align-items:center;gap:12px;padding:12px;display:grid}.checkout-panel>div{grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;display:grid}.checkout-panel strong{color:var(--text);font-size:14px;display:block}.checkout-panel p{margin-top:2px;font-size:12px;line-height:1.35}.checkout-icon{color:#30d158;background:#30d15829;border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.onboarding-alert{color:#ffb4ae;background:#ff453a1a;border:1px solid #ff453a52;border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.4}.form-error{color:#ffb4ae;background:#ff453a1a;border:1px solid #ff453a52;border-radius:8px;margin:12px 0 0;padding:10px 12px;font-size:13px;line-height:1.4}.onboarding-users,.onboarding-create,.onboarding-form{gap:10px;display:grid}.onboarding-users{border-top:1px solid var(--line);padding-top:4px}.onboarding-users .account-row{cursor:pointer;grid-template-columns:minmax(0,1fr)}.onboarding-users .account-copy strong,.onboarding-users .account-copy small{text-overflow:clip;white-space:normal;overflow:visible}.onboarding-create{grid-template-columns:minmax(0,1fr) auto}.onboarding-form{padding-top:4px}.onboarding-section-label{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.onboarding-create input,.onboarding-form input{border:1px solid var(--line);background:var(--panel-2);min-height:40px;color:var(--text);border-radius:8px;outline:none;padding:0 12px}@media (width<=620px){.onboarding-view{align-items:start;padding:14px}.onboarding-panel{max-height:calc(100dvh - 28px);padding:18px}.onboarding-create,.checkout-panel{grid-template-columns:1fr}}.eyebrow{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0 0 3px;font-size:12px;font-weight:700}h1,h2,h3,p{margin:0}h1{font-size:23px;line-height:1.1}h2{font-size:25px;line-height:1.15}h3{font-size:22px}.account-list{flex-direction:column;gap:4px;min-height:0;display:flex;overflow:auto}.account-group{gap:4px;display:grid}.account-group+.account-group{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.account-group h3{color:var(--muted);text-transform:uppercase;padding:0 8px 3px;font-size:11px}.account-row{text-align:left;cursor:default;background:0 0;border:0;border-radius:8px;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;min-height:58px;padding:9px 10px;display:grid}.account-row.editable{grid-template-columns:minmax(0,1fr) 32px;padding:4px 5px 4px 10px}.account-row.editable>button:first-child{min-width:0;min-height:50px;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:11px;padding:0;display:grid}.account-row.selected{background:#0a84ff2b}.account-dot{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.account-copy{gap:3px;min-width:0;display:grid}.account-copy strong,.transaction-copy strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-copy small,.account-balance,.toolbar p,.panel-header p,.summary-tile span,.summary-tile small,.transaction-copy small,.no-items,.status-bar,.register-row span{color:var(--muted)}.account-balance{font-size:13px;font-weight:700}.account-management{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.account-management-group{gap:8px;display:grid}.account-management-group h4{color:var(--muted);text-transform:uppercase;margin:0;font-size:11px}.account-management-row{border:1px solid var(--line);background:#ffffff06;border-radius:8px;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:46px;padding:8px 10px;display:grid}.account-management-row.archived{opacity:.76}.account-row-actions{gap:5px;display:flex}.muted-line{color:var(--muted);margin:0;font-size:12px}.sidebar-empty{color:var(--muted);padding:10px 8px;font-size:13px;font-weight:700;line-height:1.35}.sidebar-total{border-top:1px solid var(--line);gap:3px;margin-top:auto;padding:14px 10px 4px;display:grid}.sidebar-total span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.sidebar-total strong{font-size:22px;line-height:1.1}.sidebar-total small{color:var(--muted);font-size:12px;font-weight:700}.workspace{grid-template-rows:auto auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.toolbar{border-bottom:1px solid var(--line);justify-content:space-between;gap:18px;padding:22px 24px 18px}.toolbar p{margin-top:5px}.toolbar-actions{gap:10px}.segmented{border:1px solid var(--line);background:#ffffff0f;border-radius:9px;gap:3px;padding:3px;display:inline-flex}.segmented button{min-height:30px;color:var(--muted);background:0 0;border:0;border-radius:7px;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.segmented button.active{background:var(--panel-3);color:var(--text);box-shadow:inset 0 0 0 1px #ffffff0a}.segmented.compact button{min-height:28px;padding:0 10px}.icon-button,.primary-button,.secondary-button,.danger-button,.ghost-button,.date-pill,.add-day-button{border:1px solid var(--line);background:var(--panel);justify-content:center;align-items:center;display:inline-flex}.icon-button{border-radius:8px;width:32px;height:32px}.primary-button,.secondary-button,.ghost-button,.date-pill{border-radius:8px;min-height:32px;font-weight:700}.primary-button{color:#79bdff;background:#0a84ff3d;border-color:#0a84ff73;gap:7px;padding:0 12px}.secondary-button{color:var(--text);background:#ffffff0b;gap:7px;padding:0 12px}.danger-button{min-height:32px;color:var(--red);background:#ff615f29;border:1px solid #ff615f73;border-radius:8px;padding:0 12px;font-weight:800}.ghost-button,.date-pill{padding:0 13px}.date-pill{white-space:nowrap;width:220px}.native-date-input{opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:absolute}.summary-strip{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(140px,1fr));gap:8px;padding:8px 24px;display:grid}.summary-tile{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px;min-height:36px;padding:7px 10px;display:grid}.summary-tile strong{justify-self:end;font-size:17px}.summary-tile small{justify-self:end;font-size:10px}.positive{color:var(--green)}.negative{color:var(--red)}.planner-view{grid-template-rows:auto auto minmax(0,1fr) auto;gap:12px;min-height:0;padding:18px 24px 0;display:grid;position:relative}.planner-controls{justify-content:space-between;gap:12px}.date-control{gap:7px}.calendar-grid{grid-template-columns:repeat(7,minmax(112px,1fr));display:grid}.planner-budget-strip{gap:8px;padding:0 0 10px;display:grid}.planner-budget-card{background:#ff9f0a14;border:1px solid #ff9f0a80;border-radius:8px;gap:3px;min-width:152px;padding:9px 10px;display:grid}.planner-budget-card span,.planner-budget-card small{color:var(--muted);font-size:11px;font-weight:800}.planner-budget-card strong{color:#ffb340;font-size:16px}.planner-budget-card.over-budget{background:#ff54541a;border-color:#ff54548c}.planner-budget-card.over-budget strong{color:#ff7474}.planner-budget-bar-card{gap:7px;min-width:0;display:grid}.planner-budget-bar{background:#ffffff0f;border:1px solid #ff9f0a6b;border-radius:8px;width:100%;min-height:54px;display:flex;overflow:hidden}.planner-budget-segment{box-sizing:border-box;color:#15120a;border-right:1px solid #ffffff2e;align-content:center;gap:2px;min-width:0;padding:5px;display:grid;position:relative}.planner-budget-segment.zero{border-right:0;padding:0;overflow:visible}.planner-budget-segment:last-child{border-right:0}.planner-budget-segment span,.planner-budget-segment strong,.planner-budget-segment small{z-index:1;text-overflow:ellipsis;white-space:nowrap;min-width:0;position:relative;overflow:hidden}.planner-budget-segment span{opacity:.78;font-size:11px;font-weight:900}.planner-budget-segment strong{font-size:16px;line-height:1.1}.planner-budget-segment.unbudgeted{color:#07150c;align-content:center;padding:8px 10px}.planner-budget-segment-progress{background:#ffffff29;border:1px solid;border-radius:5px;align-content:center;min-height:42px;display:grid;position:relative;overflow:hidden}.planner-budget-segment-fill{opacity:1;position:absolute;inset:0 auto 0 0}.planner-budget-segment-copy{z-index:1;text-shadow:0 1px 1px #ffffff3d;gap:1px;min-width:0;padding:5px 6px;display:grid;position:relative}.planner-budget-segment-copy small{opacity:.74;font-size:10px;font-weight:900}.planner-budget-resize-handle{z-index:3;cursor:ew-resize;background:#ffffff42;border:0;border-radius:999px;width:10px;position:absolute;top:7px;bottom:7px;right:-5px}.planner-budget-resize-handle:hover,.planner-budget-resize-handle:focus-visible{background:#ffffff8c;outline:0}.planner-budget-total{justify-content:flex-end;align-items:baseline;gap:8px;display:flex}.planner-budget-total span{color:var(--muted);font-size:11px;font-weight:900}.planner-budget-total strong{color:var(--green);font-size:18px}.calendar-grid{gap:10px;min-height:0;padding:0 0 16px;overflow:auto}.day-cell{border:1px solid var(--line);background:var(--panel);border-radius:12px;grid-template-rows:auto minmax(70px,1fr);min-width:0;min-height:150px;padding:9px;display:grid;box-shadow:inset 0 1px #ffffff08}.day-cell.selected{border-color:#0a84ff9e;box-shadow:0 0 0 2px #0a84ff29,inset 0 1px #ffffff08}.day-cell.drop-target{background:#30d15812;border-color:#30d158c7;box-shadow:0 0 0 2px #30d15826}.day-header{border-bottom:1px solid #ffffff0f;gap:7px;padding:0 1px 7px;display:grid}.day-date-line{justify-content:space-between;align-items:center;gap:8px;display:flex}.day-date-line strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;overflow:hidden}.today-date{width:max-content;min-height:26px;color:var(--blue);white-space:nowrap;background:#0a84ff2e;border-radius:999px;align-items:center;padding:0 8px;display:inline-flex}.day-balance{background:#64d2ff0f;border:1px solid #64d2ff38;border-radius:8px;gap:5px;padding:7px 8px;display:grid}.day-balance-main,.day-balance-meta{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.day-balance span,.day-balance small{color:var(--muted);letter-spacing:0;font-size:10px;font-weight:900}.day-balance strong{color:var(--green);font-size:16px;line-height:1.05}.day-balance strong.negative{color:var(--negative)}.day-balance strong.positive{color:var(--green)}.add-day-button{background:#0a84ff29;border:0;border-radius:50%;width:26px;height:26px}.day-items{flex-direction:column;gap:8px;min-width:0;padding-top:4px;display:flex;overflow:hidden}.no-items{align-self:start;margin-top:8px;font-weight:700}.transaction-pill{border:1px solid var(--line);cursor:grab;text-align:left;background:#ffffff09;border-radius:10px;grid-template-columns:24px minmax(0,1fr) auto;grid-template-areas:"icon copy actions""icon amount actions";align-items:center;gap:4px 8px;width:100%;min-width:0;min-height:50px;padding:8px;display:grid}.transaction-pill:active{cursor:grabbing}.transaction-pill.posted{cursor:default;opacity:.76;background:#ffffff04;border-style:dashed}.transaction-pill.budget-reserve{cursor:default;background:#ff9f0a17;border-style:dashed;border-color:#ff9f0a94}.transaction-pill.budget-reserve .transaction-icon{color:#ff9f0a;background:#ff9f0a2e}.transaction-pill.service-forecast{cursor:default;background:#64d2ff14;border-style:dashed;border-color:#64d2ff6b;grid-template-areas:"icon copy amount""icon state amount"}.transaction-pill.service-forecast .transaction-icon{color:var(--blue);background:#64d2ff29}.transaction-pill.income{border-color:#48d98b38}.transaction-pill.expense{border-color:#ff615f38}.transaction-icon{border-radius:50%;grid-area:icon;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.transaction-icon.income{color:var(--green);background:#48d98b2e}.transaction-icon.expense{color:var(--red);background:#ff615f2e}.transaction-copy{grid-area:copy;gap:2px;min-width:0;display:grid}.transaction-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.transaction-amount{text-overflow:ellipsis;white-space:nowrap;grid-area:amount;min-width:0;font-size:14px;font-weight:800;overflow:hidden}.transaction-actions{grid-area:actions;align-self:center;gap:4px;min-width:0;display:grid}.transaction-action-button{border:1px solid var(--line);width:23px;height:22px;color:var(--muted);cursor:pointer;background:#ffffff0e;border-radius:5px;justify-content:center;align-items:center;padding:0;display:inline-flex}.transaction-action-button:hover:not(:disabled){color:var(--text);border-color:#0a84ffb3}.transaction-action-button.danger:hover{color:var(--red);border-color:#ff453abf}.transaction-action-button:disabled{cursor:not-allowed;opacity:.35}.transaction-state{min-width:0;color:var(--muted);text-overflow:ellipsis;text-transform:uppercase;grid-area:actions;align-self:center;font-size:10px;font-weight:800;overflow:hidden}.transaction-pill.service-forecast .transaction-state{text-transform:none;grid-area:state;align-self:start}.transaction-state.covered{color:var(--green)}.transaction-state.warning{color:var(--negative)}.transaction-pill.compact{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy actions""amount actions";align-items:center;gap:2px 5px;min-height:42px;padding:6px 7px}.transaction-pill.compact.service-forecast{grid-template-areas:"copy amount""state amount"}.transaction-pill.compact .transaction-actions{display:flex}.transaction-pill.compact .transaction-icon{display:none}.transaction-pill.compact .transaction-copy{display:block}.transaction-pill.compact .transaction-copy strong{font-size:12px;line-height:1.15;display:block}.transaction-pill.compact .transaction-amount{text-align:left;justify-self:start;max-width:100%;font-size:12px}.transaction-pill.compact .transaction-state{max-width:42px;font-size:9px;line-height:1}.calendar-grid.month{grid-template-columns:repeat(7,minmax(190px,1fr));gap:8px}.calendar-grid.month .day-cell{border-radius:10px;grid-template-rows:auto minmax(0,1fr);min-height:240px;padding:9px}.calendar-grid.month .day-header{gap:6px;padding:0 0 6px}.calendar-grid.month .day-date-line{gap:6px}.calendar-grid.month .day-date-line strong{font-size:13px}.calendar-grid.month .today-date{min-height:24px;padding:0 7px}.calendar-grid.month .day-balance{border-radius:6px;gap:4px;padding:6px 7px}.calendar-grid.month .day-balance-main{gap:4px}.calendar-grid.month .day-balance-main span,.calendar-grid.month .day-balance-meta{font-size:9px}.calendar-grid.month .day-balance strong{font-size:14px}.calendar-grid.month .add-day-button{width:24px;height:24px}.calendar-grid.month .day-items{gap:6px;padding-top:6px;overflow:auto}.calendar-grid.month .transaction-pill.compact{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy actions""amount actions";gap:2px 5px;min-height:44px;padding:7px 8px}.calendar-grid.month .transaction-pill.compact .transaction-copy strong,.calendar-grid.month .transaction-pill.compact .transaction-amount{font-size:12px;line-height:1.15}.status-bar{border-top:1px solid var(--line);gap:9px;min-height:31px;padding:0 4px;font-size:12px}.status-bar span:last-child{margin-left:auto}.transaction-detail{gap:3px;display:grid}.transaction-detail span{color:var(--muted);font-size:13px}.start-view{border:1px solid var(--line);background:var(--panel);border-radius:12px;align-self:start;gap:18px;width:min(560px,100% - 48px);margin:28px 24px;padding:20px;display:grid}.start-copy{gap:6px;display:grid}.start-copy p:not(.eyebrow){color:var(--muted)}.claim-default-panel{background:#0a84ff14;border:1px solid #0a84ff4d;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.claim-default-panel div{gap:4px;display:grid}.claim-default-panel strong{font-size:13px}.claim-default-panel p{color:var(--muted);margin:0;font-size:12px;font-weight:750;line-height:1.35}.vehicles-view{grid-row:2/-1;grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.vehicles-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:18px 24px;display:flex}.vehicles-header p:last-child{color:var(--muted);margin-top:5px}.vehicle-layout{grid-template-columns:218px minmax(0,1fr);min-height:0;display:grid}.vehicle-list{border-right:1px solid var(--line);background:#ffffff03;flex-direction:column;gap:5px;min-height:0;padding:14px 10px;display:flex;overflow:auto}.vehicle-row{text-align:left;background:0 0;border:0;border-radius:7px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-height:52px;padding:8px;display:grid}.vehicle-row.selected{background:#0a84ff2b}.vehicle-row span{gap:3px;min-width:0;display:grid}.vehicle-row strong,.vehicle-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vehicle-row small,.vehicle-empty,.vehicle-hint{color:var(--muted);font-size:12px}.vehicle-empty{gap:8px;padding:10px 7px;line-height:1.35;display:grid}.vehicle-workspace{min-height:0;padding:16px 20px 24px;overflow:auto}.vehicle-tab-row{margin-bottom:14px;display:flex}.vehicle-totals{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:repeat(4,minmax(130px,1fr));display:grid}.vehicle-totals div{border-right:1px solid var(--line);align-content:start;gap:4px;padding:12px 14px;display:grid}.vehicle-totals div:last-child{border-right:0}.vehicle-totals span,.vehicle-totals small,.vehicle-section label{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.vehicle-totals small{text-transform:none;line-height:1.25}.vehicle-totals strong{font-size:20px}.vehicle-columns{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;margin-top:16px;display:grid}.mileage-tracker{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:12px;padding:14px;display:grid}.mileage-tracker h4,.mileage-tracker h5{margin:0}.mileage-tracker p{color:var(--muted);margin-top:4px;font-size:12px}.mileage-stats{border:1px solid var(--line);border-radius:7px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.mileage-stats div{border-right:1px solid var(--line);gap:3px;padding:9px 10px;display:grid}.mileage-stats div:last-child{border-right:0}.mileage-stats span,.mileage-entry-grid label{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.mileage-stats strong{font-size:15px}.tracker-grid{grid-template-columns:minmax(0,1fr) minmax(360px,1fr);gap:12px;display:grid}.tracker-pane{border:1px solid var(--line);background:#ffffff05;border-radius:7px;align-content:start;gap:9px;padding:11px;display:grid}.maintenance-tracker-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 82px 82px 30px;align-items:center;gap:9px;padding:7px 0;display:grid}.maintenance-tracker-row div{gap:3px;display:grid}.maintenance-tracker-row small{color:var(--muted);font-size:11px}.maintenance-tracker-row input{border:1px solid var(--line);background:var(--panel-2);min-width:0;min-height:30px;color:var(--text);border-radius:6px;outline:none;padding:0 6px}.tracker-add-row{grid-template-columns:minmax(0,1fr) 82px 88px 34px;gap:7px;display:grid}.mileage-entry-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mileage-entry-grid label{gap:5px;display:grid}.mileage-entry-grid input,.mileage-entry-grid select,.tracker-add-row input{border:1px solid var(--line);background:var(--panel-2);min-width:0;min-height:32px;color:var(--text);border-radius:6px;outline:none;padding:0 8px}.mileage-notes{grid-column:1/-1}.tracker-entry-button{justify-self:end}.mileage-history{gap:2px;display:grid}.mileage-history-row{border-bottom:1px solid var(--line);grid-template-columns:96px minmax(130px,1fr) 96px minmax(120px,1fr) 30px;align-items:center;gap:9px;min-height:34px;padding:3px 0;font-size:12px;display:grid}.mileage-history-row span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vehicle-form{gap:14px;display:grid}.vehicle-section,.vehicle-breakdown{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:14px}.vehicle-section h4,.vehicle-breakdown h4{margin:0 0 12px;font-size:14px}.vehicle-section-detail{color:var(--muted);margin:-6px 0 12px;font-size:12px;line-height:1.35}.vehicle-section-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.vehicle-section-title h4{margin-bottom:0}.vehicle-field-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.vehicle-section label{gap:6px;display:grid}.vehicle-section label small{color:var(--muted);text-transform:none;font-size:10px;font-weight:700;line-height:1.25}.vehicle-section input{border:1px solid var(--line);background:var(--panel-2);width:100%;min-width:0;min-height:34px;color:var(--text);border-radius:7px;outline:none;padding:0 9px}.money-input{display:block;position:relative}.money-input i{color:var(--muted);font-size:13px;font-style:normal;position:absolute;top:8px;left:9px}.money-input input{padding-left:20px}.vehicle-hint{margin-top:10px;line-height:1.4}.vehicle-custom-row{grid-template-columns:minmax(0,1fr) 120px 34px;gap:8px;margin-top:10px;display:grid}.vehicle-category-settings{gap:8px;display:grid}.vehicle-category-row{grid-template-columns:minmax(170px,1fr) 128px 110px 68px;align-items:center;gap:7px;display:grid}.vehicle-category-row strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.vehicle-category-row input,.vehicle-category-row select,.vehicle-category-add-row input,.vehicle-category-add-row select{border:1px solid var(--line);background:var(--panel-2);min-width:0;min-height:32px;color:var(--text);border-radius:6px;outline:none;padding:0 7px}.vehicle-category-add-row{grid-template-columns:minmax(0,1fr) 64px;gap:7px;display:grid}.vehicle-actions{justify-content:space-between;gap:10px;display:flex}.vehicle-breakdown{position:sticky;top:0}.vehicle-source-notes{border-bottom:1px solid var(--line);gap:7px;margin-bottom:12px;padding-bottom:12px;display:grid}.vehicle-source-notes p{color:var(--muted);margin:0;font-size:12px;line-height:1.35}.vehicle-source-notes strong{color:var(--text)}.vehicle-assumption-grid{gap:8px;margin-bottom:12px;display:grid}.vehicle-assumption-grid div{border:1px solid var(--line);background:#ffffff05;border-radius:7px;gap:2px;padding:8px 9px;display:grid}.vehicle-assumption-grid span,.vehicle-assumption-grid small{color:var(--muted);font-size:10px;font-weight:800}.vehicle-assumption-grid span{text-transform:uppercase}.vehicle-assumption-grid strong{font-size:14px}.cost-breakdown-heading,.cost-breakdown-row,.cost-breakdown-total{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 84px 84px;gap:10px;padding:8px 0;font-size:12px;display:grid}.cost-breakdown-heading{color:var(--muted);text-transform:uppercase;padding-top:0;font-size:10px;font-weight:800}.cost-breakdown-heading span:not(:first-child),.cost-breakdown-row strong,.cost-breakdown-total strong{text-align:right}.cost-breakdown-row span{color:var(--muted)}.cost-breakdown-total{border-bottom:0;padding-top:12px;font-size:15px}.dialog-backdrop{z-index:20;background:#0000006b;place-items:center;display:grid;position:fixed;inset:0}.planner-dialog{border:1px solid var(--line);width:min(720px,100vw - 48px);box-shadow:var(--shadow);background:#202024;border-radius:14px;padding:18px}.planner-dialog.wide{width:min(820px,100vw - 32px)}.planner-dialog header,.dialog-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.planner-dialog header{margin-bottom:16px}.planner-dialog .icon-button{font-size:22px;line-height:1}.dialog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.dialog-grid label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:800;display:grid}.dialog-grid .checkbox-field{min-height:34px;color:var(--text);text-transform:none;flex-direction:row;align-items:center;gap:8px;display:flex}.mileage-charge-summary{min-height:34px;color:var(--text);background:#0a84ff1f;border:1px solid #0a84ff52;border-radius:8px;justify-content:space-between;align-items:center;padding:0 10px;display:flex}.mileage-charge-summary span{color:var(--muted);font-size:12px;font-weight:800}.transfer-direction-summary{background:#0a84ff1a;border:1px solid #0a84ff47;border-radius:8px;gap:4px;min-height:34px;padding:8px 10px;display:grid}.transfer-direction-summary span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.transfer-direction-summary strong{color:var(--text);font-size:13px}.mileage-charge-summary strong{color:#79bdff;font-size:15px}.checkbox-field input{width:15px;height:15px;accent-color:var(--blue)}.dialog-grid input,.dialog-grid select,.wide-field,.inline-add-row input,.settings-list select{border:1px solid var(--line);background:var(--panel-2);min-height:34px;color:var(--text);border-radius:8px;outline:none;padding:0 10px}.wide-field{width:100%}.field-with-action>span,.inline-add-row,.search-control{align-items:center;gap:8px;display:flex}.field-with-action>span{width:100%}.field-with-action>span input{flex:1;min-width:0}.combo-with-action{grid-template-columns:minmax(0,1fr) 34px;gap:8px;width:100%;display:grid;position:relative}.combo-box{min-width:0;display:flex;position:relative}.combo-box input{width:100%;padding-right:34px}.combo-toggle{border:0;border-left:1px solid var(--line);width:32px;height:32px;color:var(--muted);background:#ffffff0a;border-radius:0 7px 7px 0;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:1px;right:1px}.combo-menu{z-index:30;border:1px solid var(--line);width:100%;max-height:214px;box-shadow:var(--shadow);background:#2a2a2e;border-radius:8px;display:grid;position:absolute;top:calc(100% + 4px);left:0;overflow:auto}.combo-menu button,.combo-menu span{min-height:34px;color:var(--text);text-align:left;background:0 0;border:0;padding:0 10px}.combo-menu button:hover,.combo-menu button.active{background:#0a84ff33}.combo-menu span{color:var(--muted);align-items:center;display:flex}.amount-field.income{color:#9ff0c3;background:#48d98b1a;border-color:#48d98b80}.amount-field.expense{color:#ffaaa8;background:#ff615f1a;border-color:#ff615f7a}.mini-button{color:#79bdff;background:#0a84ff2e;border:1px solid #0a84ff61;border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.inline-add-row{margin-top:12px}.inline-add-row input{flex:1}.empty-dialog-state{border:1px solid var(--line);color:var(--muted);background:#ffffff09;border-radius:10px;margin-top:14px;padding:14px}.settings-list{gap:14px;display:grid}.settings-list p{color:var(--muted);margin:4px 0 0;font-size:12px}.settings-list label{color:var(--text);justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-list label:not(:last-child){justify-content:flex-start}.catalog-settings{min-height:430px}.settings-tabs{margin-bottom:18px}.settings-pane{gap:14px;display:grid}.settings-pane p{color:var(--muted);margin:4px 0 0;font-size:12px}.catalog-add-row{align-items:center;gap:8px;display:flex}.catalog-add-row input,.catalog-search{flex:1;min-width:0}.catalog-add-row select{max-width:240px}.catalog-list{border:1px solid var(--line);border-radius:8px;max-height:330px;display:grid;overflow:auto}.catalog-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:6px 8px 6px 12px;display:flex}.catalog-row:last-child{border-bottom:0}.catalog-row input{flex:1;min-width:0}.catalog-edit-fields{flex:1;gap:5px;min-width:0;display:grid}.catalog-edit-fields select{min-width:0;font-size:12px}.catalog-row-actions{gap:4px;display:flex}.catalog-role-select{border:1px solid var(--line);background:var(--panel-2);min-width:132px;min-height:30px;color:var(--text);border-radius:7px;font-size:12px;font-weight:800}.subcategory-label:before{content:">";color:var(--muted);margin-right:8px}.icon-button.danger{color:var(--negative)}.dialog-actions{justify-content:flex-end;margin-top:18px}.panel-view{min-height:0;padding:20px 24px;overflow:auto}.panel-header{justify-content:space-between;gap:16px;margin-bottom:16px}.panel-header p{margin-top:4px}.search-field{border:1px solid var(--line);background:var(--panel);width:260px;min-height:34px;color:var(--text);border-radius:8px;outline:none;padding:0 12px}.register-table,.chart-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:12px;overflow:hidden}.budget-view{align-content:start;gap:14px;padding:14px 18px 18px;display:grid}.goals-view{align-content:start;gap:16px;display:grid}.goals-header h3{margin:0;font-size:18px}.goal-editor,.goal-card,.goal-empty{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:10px}.goal-editor,.goal-card{gap:14px;padding:14px;display:grid}.goal-mode-notice{background:#0a84ff14;border:1px solid #0a84ff47;border-radius:8px;gap:4px;padding:12px;display:grid}.goal-mode-notice strong{color:var(--text);font-size:13px}.goal-mode-notice p{color:var(--muted);margin:0;font-size:12px;font-weight:800}.emergency-suggestion{background:#48d98b12;border:1px solid #48d98b4d;border-radius:8px;gap:10px;padding:12px;display:grid}.emergency-suggestion header,.emergency-suggestion>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.emergency-suggestion header div{gap:3px;display:grid}.emergency-suggestion span,.emergency-suggestion p{color:var(--muted);margin:0;font-size:12px;font-weight:800}.emergency-suggestion strong{color:var(--green);font-size:20px}.goal-editor-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.goal-editor label,.goal-funding-picker{color:var(--muted);gap:6px;font-size:12px;font-weight:800;display:grid}.goal-editor input,.goal-editor select,.goal-editor textarea,.goal-readonly-field{border:1px solid var(--line);min-height:34px;color:var(--text);font:inherit;background:#202024;border-radius:8px;padding:0 10px}.goal-readonly-field{color:var(--text);align-items:center;display:flex}.goal-editor textarea{resize:vertical;min-height:72px;padding:10px}.goal-funding-picker>div{flex-wrap:wrap;gap:8px 14px;display:flex}.goal-editor-actions,.goal-card-actions,.goal-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.goal-editor-actions,.goal-card-actions{justify-content:flex-end}.goal-list{gap:12px;display:grid}.goal-empty{color:var(--muted);padding:18px;font-weight:800}.goal-card h4,.goal-card p{margin:0}.goal-card h4{font-size:16px}.goal-card-header p,.goal-notes{color:var(--muted);font-size:12px;font-weight:700}.goal-status{border-radius:999px;align-items:center;gap:6px;min-height:30px;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.goal-status.success{color:#30d158;background:#30d15821}.goal-status.warning{color:#ffd60a;background:#ffd60a24}.goal-analysis{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.goal-analysis>div{border:1px solid var(--line);background:#ffffff06;border-radius:8px;gap:4px;min-height:68px;padding:10px;display:grid}.goal-analysis span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.goal-analysis strong{font-size:17px}.goal-monthly-plan,.goal-transfer-plan{grid-column:1/-1}.goal-monthly-plan p,.goal-transfer-plan p{color:var(--text);font-size:13px;font-weight:700}.goal-monthly-plan{background:#0a84ff14!important}.goal-monthly-plan p+p{margin-top:4px}.budget-toolbar,.budget-table-header,.budget-period-controls,.budget-add-row{align-items:center;display:flex}.budget-toolbar,.budget-table-header{justify-content:space-between;gap:16px}.budget-toolbar h3,.budget-table-header h3{margin:0;font-size:16px}.budget-global-note{color:var(--muted);margin:4px 0 0;font-size:12px;font-weight:700}.budget-table-header p{color:var(--muted);margin:3px 0 0;font-size:12px}.budget-period-controls{gap:6px}.budget-period-label{min-width:138px;color:var(--muted);text-align:center;white-space:nowrap;font-size:13px;font-weight:800}.budget-current-button{min-height:32px}.budget-current-slot{justify-content:flex-end;width:72px;display:flex}.budget-period-controls input,.budget-add-row input,.budget-add-row select,.budget-row input{border:1px solid var(--line);min-height:32px;color:var(--text);font:inherit;background:#202024;border-radius:6px}.budget-period-controls input{padding:0 8px;font-size:13px;font-weight:700}.budget-summary-strip{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.budget-summary-strip div{border-right:1px solid var(--line);gap:5px;min-height:70px;padding:12px 14px;display:grid}.budget-summary-strip div:last-child{border-right:0}.budget-summary-strip span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.budget-summary-strip strong{font-size:18px}.budget-summary-strip small{color:var(--muted);font-size:11px;font-weight:700}.budget-allocation-bar{border:1px solid var(--line);background:#0a84ff0f;border-radius:8px;gap:9px;padding:12px 14px;display:grid}.budget-allocation-bar header,.budget-allocation-bar header div,.budget-allocation-bar footer{align-items:center;display:flex}.budget-allocation-bar header{justify-content:space-between;gap:14px}.budget-allocation-bar header div{gap:8px}.budget-allocation-bar span,.budget-allocation-bar small{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.budget-allocation-bar strong{font-size:18px}.budget-allocation-track{background:#303035;border-radius:5px;height:16px;display:flex;overflow:hidden}.budget-allocation-segment,.budget-allocation-remaining{flex-shrink:0;height:100%;display:block}.budget-allocation-segment{border-right:1px solid #00000040}.budget-allocation-remaining{background:#ffffff24}.budget-allocation-bar footer{justify-content:space-between}.budget-health-panel{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:10px;padding:12px 14px;display:grid}.budget-health-panel.warning{background:#ffd60a14;border-color:#ffd60a52}.budget-health-panel.caution{background:#ff9f0a14;border-color:#ff9f0a52}.budget-health-panel.healthy{background:#30d1580f;border-color:#30d1583d}.budget-health-panel header,.budget-health-panel header div,.budget-health-warning{align-items:center;display:flex}.budget-health-panel header{justify-content:space-between;gap:16px}.budget-health-panel header div,.budget-health-warning{gap:8px}.budget-health-panel span,.budget-health-warning span,.budget-health-list small{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.budget-health-panel header p{color:var(--muted);text-align:right;margin:0;font-size:12px;font-weight:700}.budget-health-panel strong{font-size:17px}.budget-capacity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.budget-capacity-grid div{border:1px solid var(--line);background:#ffffff0d;border-radius:8px;gap:4px;padding:10px;display:grid}.budget-capacity-grid span,.budget-capacity-grid small{color:var(--muted);font-size:11px;font-weight:800}.budget-capacity-grid strong{font-size:18px}.budget-health-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.budget-health-list div{border:1px solid var(--line);background:#ffffff06;border-radius:8px;gap:4px;min-height:76px;padding:10px;display:grid}.budget-health-list div.short{background:#ff453a14;border-color:#ff453a52}.budget-health-footnote{color:var(--muted);font-size:11px;font-weight:800}.budget-table{border:1px solid var(--line);background:var(--panel);border-radius:8px;overflow:hidden}.budget-table-header{border-bottom:1px solid var(--line);padding:13px 14px}.budget-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(170px,1fr) 104px 104px 104px 96px 96px 116px 118px;align-items:center;column-gap:12px;min-height:52px;padding:0 12px;font-size:13px;display:grid}.budget-row.heading{min-height:34px;color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.budget-row input{text-align:right;width:100%;padding:0 8px}.budget-input-error{color:#ff453a;margin-top:4px;font-size:10px;line-height:1.2;display:block}.budget-row-actions{justify-content:flex-end;gap:5px;display:flex}.budget-row-actions .mini-button{align-items:center;gap:5px;width:auto;min-width:54px;padding:0 12px;display:inline-flex}.budget-cover-panel{border-bottom:1px solid var(--line);background:#ff9f0a14;grid-template-columns:minmax(220px,1fr) minmax(190px,260px) auto;align-items:center;gap:12px;padding:12px;display:grid}.budget-cover-panel p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.35}.budget-cover-panel select{height:34px;padding:0 8px}.budget-cover-actions{justify-content:flex-end;gap:8px;display:flex}.budget-move-actions input{text-align:right;width:86px;height:34px;padding:0 8px}.budget-category{gap:7px;display:grid}.budget-category>i{background:#38383d;border-radius:999px;height:8px;display:block;overflow:hidden}.budget-category>i>i{border-radius:inherit;background:var(--blue);height:100%;display:block}.budget-category>i>i.over{background:#ff453a}.budget-empty{color:var(--muted);padding:24px 14px;font-size:13px}.budget-add-row{gap:8px;padding:12px}.budget-add-row select{min-width:190px;padding:0 8px}.budget-add-row input{width:120px;padding:0 8px}.register-summary-row{border-bottom:1px solid var(--line);min-height:36px;color:var(--muted);text-transform:uppercase;background:#ffffff06;align-items:center;gap:16px;padding:0 16px;font-size:12px;font-weight:800;display:flex}.register-section-heading{border-bottom:1px solid var(--line);background:#0a84ff14;justify-content:space-between;align-items:center;min-height:38px;padding:0 16px;display:flex}.register-section-heading strong{font-size:13px}.register-section-heading span{color:var(--muted);font-size:12px;font-weight:800}.register-row{border-bottom:1px solid var(--line);grid-template-columns:150px minmax(220px,1fr) 180px 130px;align-items:center;gap:16px;min-height:52px;padding:0 16px;display:grid}.register-action-row{width:100%;color:inherit;text-align:left;background:0 0;border-top:0;border-left:0;border-right:0}.register-action-row:hover{background:#ffffff09}.register-row:last-child{border-bottom:0}.register-row.heading{min-height:38px;color:var(--muted);text-transform:uppercase;background:#ffffff0a;font-size:12px;font-weight:800}.register-row strong{align-items:center;gap:8px;min-width:0;display:flex}.register-row strong>small:first-of-type{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.register-status{border-radius:999px;flex:none;padding:3px 7px;font-size:11px;font-weight:800;line-height:1}.register-status.posted{color:var(--green);background:#48d98b24}.register-status.reconciled{color:#a8f5c9;background:#48d98b33}.register-status.pending{color:#ffbf55;background:#ff9f0a29}.register-status.planned,.register-status.upcoming{color:#79bdff;background:#0a84ff24}.register-row span:last-child{text-align:right;font-weight:800}.register-mileage-details{text-align:left;grid-column:1/-1;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;padding:0 0 12px;display:grid}.register-mileage-details span{text-align:left;background:#0a84ff14;border:1px solid #0a84ff38;border-radius:8px;gap:2px;padding:8px;font-weight:400;display:grid}.register-mileage-details small{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.register-mileage-details strong{color:var(--text);font-size:12px;display:block}.chart-card{padding:18px}.chart-view{align-content:start;gap:16px;display:grid}.chart-panel-header{margin-bottom:0}.chart-toolbar,.chart-analytics-controls{align-items:center;gap:10px;display:flex}.chart-account-filter{position:relative}.chart-account-filter summary{border:1px solid var(--line);background:var(--panel);min-height:30px;color:var(--text);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;padding:0 10px;font-size:12px;font-weight:800;list-style:none;display:flex}.chart-account-filter summary::-webkit-details-marker{display:none}.chart-account-filter>div{z-index:10;border:1px solid var(--line);min-width:220px;box-shadow:var(--shadow);background:#2a2a2e;border-radius:8px;gap:1px;padding:4px;display:grid;position:absolute;top:calc(100% + 5px);right:0}.chart-account-filter label{min-height:28px;color:var(--text);cursor:pointer;border-radius:6px;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:9px;padding:5px 7px;font-size:12px;font-weight:700;line-height:1.2;display:grid}.chart-account-filter label:hover{background:#35353a}.chart-account-filter input{width:14px;height:14px;accent-color:var(--blue);margin:0}.chart-account-label{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;min-width:0;display:inline-flex;overflow:hidden}.chart-account-label .account-dot{flex:none}.chart-toolbar{flex-wrap:wrap;justify-content:space-between}.chart-range-controls{align-items:end;gap:10px;display:flex}.chart-range-controls label{color:var(--muted);text-transform:uppercase;gap:5px;font-size:11px;font-weight:800;display:grid}.chart-range-controls input{border:1px solid var(--line);background:var(--panel);min-height:34px;color:var(--text);border-radius:8px;outline:none;padding:0 10px}.chart-toggle{border:1px solid var(--line);background:var(--panel);min-height:34px;color:var(--muted);white-space:nowrap;border-radius:8px;flex-direction:row;align-items:center;padding:0 9px;font-weight:800;text-transform:none!important;gap:7px!important;font-size:12px!important;display:inline-flex!important}.chart-toggle input{width:14px;min-height:14px;accent-color:var(--blue);margin:0;padding:0}.forecast-metrics{grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;display:grid}.forecast-metric{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:5px 8px;min-height:82px;padding:13px 14px;display:grid}.forecast-metric svg{color:var(--muted);grid-row:1/span 2}.forecast-metric span,.forecast-metric small{color:var(--muted);font-size:12px;font-weight:700}.forecast-metric strong{text-overflow:ellipsis;white-space:nowrap;font-size:20px;overflow:hidden}.forecast-metric small{grid-column:2}.audit-view{align-content:start;gap:14px;display:grid}.audit-header{margin-bottom:0}.audit-score{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:20px auto;align-items:center;gap:2px 8px;min-width:180px;padding:10px 12px;display:grid}.audit-score svg{color:var(--muted);grid-row:1/span 2}.audit-score strong{font-size:13px}.audit-score span,.audit-card p,.audit-metric span,.audit-metric small,.audit-row span,.audit-issue p{color:var(--muted)}.audit-score span,.audit-card p,.audit-metric span,.audit-metric small,.audit-row,.audit-issue p{font-size:12px;font-weight:700}.audit-metrics{grid-template-columns:repeat(3,minmax(180px,1fr));gap:10px;display:grid}.audit-metric{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:3px 8px;min-height:78px;padding:12px;display:grid}.audit-metric svg{color:var(--muted);grid-row:1/span 3}.audit-metric strong{text-overflow:ellipsis;white-space:nowrap;font-size:20px;overflow:hidden}.audit-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:10px;gap:12px;padding:14px;display:grid}.audit-card h4{margin:0;font-size:16px}.audit-card p{margin-top:3px}.audit-table{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.audit-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(160px,1.25fr) repeat(5,minmax(100px,1fr));align-items:center;gap:12px;min-height:40px;padding:0 12px;display:grid}.audit-row.compact{grid-template-columns:minmax(160px,1.25fr) repeat(2,minmax(140px,1fr))}.audit-row:last-child{border-bottom:0}.audit-row.heading{min-height:34px;color:var(--muted);text-transform:uppercase;background:#ffffff0a}.audit-issue-list{gap:8px;display:grid}.audit-issue{border:1px solid var(--line);background:#ffffff09;border-radius:8px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px;padding:10px;display:grid}.audit-issue.warning{background:#ff9f0a17;border-color:#ff9f0a57}.audit-issue.warning svg{color:#ff9f0a}.audit-issue.info svg{color:#64d2ff}.audit-issue.ok svg{color:var(--green)}.forecast-chart-card{padding:0}.goals-chart-card{gap:12px;display:grid}.goal-chart-row{border:1px solid var(--line);background:#ffffff09;border-radius:8px;gap:10px;padding:12px;display:grid}.goal-chart-row header,.goal-chart-row footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.goal-chart-row header>div{gap:3px;min-width:0;display:grid}.goal-chart-row header>div:last-child{text-align:right}.goal-chart-row span,.goal-chart-row footer{color:var(--muted);font-size:12px;font-weight:800}.goal-progress-track{border:1px solid var(--line);background:#ffffff14;border-radius:999px;height:12px;position:relative;overflow:hidden}.goal-progress-track i,.goal-progress-track b{border-radius:inherit;display:block;position:absolute;top:0;bottom:0}.goal-progress-track i{left:0}.goal-progress-track b{background:#ffffff2e;border-left:1px solid;border-right:1px solid}.forecast-chart{background:#18181b;height:min(54vh,520px);min-height:340px;padding:6px;position:relative}.forecast-chart svg{width:100%;height:100%}.forecast-legend{max-width:min(520px,100% - 28px);color:var(--muted);background:#18181bd1;border:1px solid #ffffff1f;border-radius:8px;flex-wrap:wrap;justify-content:flex-end;gap:8px 12px;padding:7px 9px;font-size:12px;font-weight:800;display:flex;position:absolute;bottom:12px;right:14px}.forecast-legend span{align-items:center;gap:6px;display:inline-flex}.forecast-legend i{border-radius:999px;width:18px;height:3px}.forecast-legend i.total{background:var(--text);box-shadow:inset 0 0 0 1px #0000002e}.forecast-grid-line{stroke:#ffffff1a;stroke-width:1px}.forecast-total-line{stroke:var(--text);stroke-width:3px;stroke-dasharray:9 6;filter:drop-shadow(0 2px 4px #00000080)}.forecast-axis-label{fill:var(--muted);font-size:13px;font-weight:700}.forecast-marker{stroke:#18181b;stroke-width:3px}.forecast-transaction-marker{pointer-events:auto}.forecast-transaction-marker line{stroke-dasharray:5 6;stroke-width:1.5px;opacity:.72}.forecast-transaction-marker.income line{stroke:var(--green)}.forecast-transaction-marker.expense line{stroke:var(--red)}.forecast-hover-guide{pointer-events:none}.forecast-hover-guide line{stroke:#ffffff57;stroke-dasharray:4 4;stroke-width:1px}.forecast-hover-guide circle{stroke:#18181b;stroke-width:3px}.forecast-tooltip{z-index:2;border:1px solid var(--line);min-width:132px;box-shadow:var(--shadow);pointer-events:none;background:#1f1f22f5;border-radius:8px;gap:3px;padding:8px 10px;display:grid;position:absolute;transform:translate(-50%,calc(-100% - 12px))}.forecast-tooltip span{color:var(--muted);font-size:12px;font-weight:700}.forecast-tooltip strong{font-size:15px}.chart-empty-state{min-height:360px;color:var(--muted);place-items:center;font-weight:700;display:grid}.spending-layout{grid-template-columns:minmax(0,1fr) minmax(300px,.42fr);gap:12px;display:grid}.spending-summary{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-column:1/-1;align-items:baseline;gap:12px;min-height:54px;padding:12px 14px;display:flex}.spending-summary span,.spending-summary small{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.spending-summary strong{font-size:25px}.spending-summary small{margin-left:auto}.spending-chart-card{place-items:center;min-height:440px;padding:18px;display:grid}.spending-circle-chart{width:min(52vh,430px);max-width:100%;position:relative}.spending-circle-chart svg{width:100%;display:block;overflow:visible}.spending-circle-chart path{cursor:pointer;outline:none;transition:opacity .16s,filter .16s}.spending-circle-chart path:not(.selected){opacity:.78}.spending-circle-chart path.selected{filter:drop-shadow(0 7px 12px #00000057);opacity:1}.spending-circle-chart>div{text-align:center;place-content:center;display:grid;position:absolute;inset:34%}.spending-circle-chart span,.spending-circle-chart strong{display:block}.spending-circle-chart span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.spending-circle-chart strong{margin-top:3px;font-size:18px}.spending-legend,.spending-bars{align-content:start;gap:7px;display:grid}.spending-legend{max-height:440px;padding:4px 0;overflow:auto}.spending-legend-row{border:1px solid var(--line);background:var(--panel);width:100%;min-height:38px;color:inherit;text-align:left;border-radius:8px;grid-template-columns:12px minmax(0,1fr) auto 42px;align-items:center;gap:8px;padding:0 10px;display:grid}.spending-legend-row.selected,.spending-bar-row.selected{background:#0a84ff21;border-color:#0a84ff5c}.spending-swatch{border-radius:3px;width:10px;height:10px}.spending-legend-row span:not(.spending-swatch),.spending-legend-row small,.spending-bar-row span,.spending-bar-row small{color:var(--muted);font-size:12px;font-weight:700}.spending-legend-row small,.spending-bar-row small{text-align:right}.spending-bars{width:100%}.spending-bar-row{width:100%;min-height:34px;color:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:minmax(100px,.24fr) minmax(120px,1fr) 92px 42px;align-items:center;gap:10px;padding:0 8px;display:grid}.spending-bar-row>div{background:#ffffff0f;border-radius:4px;height:12px;overflow:hidden}.spending-bar-row>div span{border-radius:4px;height:100%;transition:width .18s,filter .18s;display:block}.spending-bar-row.selected>div span{filter:brightness(1.18)}.spending-transactions{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:10px;grid-column:1/-1;gap:10px;padding:14px;display:grid}.spending-transactions header,.spending-transaction-row{align-items:center;display:grid}.spending-transactions header{grid-template-columns:minmax(0,1fr) auto auto;gap:10px}.spending-transactions header span,.spending-transactions header small,.spending-transaction-row span,.spending-transaction-row small{color:var(--muted);font-size:12px;font-weight:700}.spending-transactions h4{margin:2px 0 0;font-size:17px}.spending-transactions>div{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.spending-transaction-row{border-bottom:1px solid var(--line);grid-template-columns:84px minmax(140px,1.3fr) minmax(120px,1fr) minmax(120px,1fr) auto;gap:12px;min-height:38px;padding:0 10px}.spending-transaction-row:last-child{border-bottom:0}.spending-transaction-row strong,.spending-transaction-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chart-head{justify-content:space-between;margin-bottom:10px}.chart-head span{color:var(--muted);font-weight:800}.chart-head strong{font-size:24px}.line-chart{background:linear-gradient(#ffffff0d 1px,#0000 1px) 0 0/100% 25%,#18181b;border-radius:10px;height:360px}.line-chart svg{width:100%;height:100%}.chart-placeholder{min-height:360px;color:var(--muted);background:#18181b;border-radius:10px;place-items:center;font-weight:700;display:grid}@media (width<=1180px){.app-shell{grid-template-columns:248px minmax(760px,1fr)}.summary-strip,.budget-summary-strip{grid-template-columns:repeat(2,minmax(180px,1fr))}.budget-summary-strip div:nth-child(2n){border-right:0}.budget-summary-strip div{border-bottom:1px solid var(--line)}.budget-summary-strip div:nth-last-child(-n+2){border-bottom:0}.budget-row{grid-template-columns:minmax(150px,1fr) 96px 96px 96px 86px 86px 104px 108px;column-gap:8px}.budget-cover-panel{grid-template-columns:1fr}.budget-cover-actions{justify-content:flex-start}.calendar-grid{grid-template-columns:repeat(7,minmax(136px,1fr))}}@media (width<=760px){html,body,#root{min-width:0;height:auto;min-height:100%}body{overflow:auto}.app-shell{min-height:100dvh;display:block}.sidebar,.workspace{display:none}.mobile-home{background:var(--window);align-content:start;gap:14px;min-height:100dvh;padding:16px;display:grid}.mobile-home-header,.mobile-balance-card,.mobile-account-card,.mobile-account-card>button:first-child{display:grid}.mobile-home-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.mobile-home-header h1{font-size:28px}.mobile-home-header .secondary-button{border:1px solid var(--line);background:var(--panel);min-height:34px;color:var(--muted);border-radius:8px;padding:0 12px;font-weight:800}.mobile-balance-card,.mobile-empty-state,.mobile-account-card{border:1px solid var(--line);background:var(--panel);border-radius:10px}.mobile-balance-card{gap:4px;padding:16px}.mobile-balance-card span,.mobile-balance-card small,.mobile-account-section h2,.mobile-account-card small{color:var(--muted);font-size:12px;font-weight:800}.mobile-balance-card span,.mobile-account-section h2{text-transform:uppercase}.mobile-balance-card strong{font-size:30px;line-height:1.08}.mobile-empty-state{gap:10px;padding:16px;display:grid}.mobile-empty-state p{color:var(--muted)}.mobile-account-section{gap:8px;display:grid}.mobile-account-section>div{gap:10px;display:grid}.mobile-account-card{gap:10px;padding:12px}.mobile-account-card.selected{background:#0a84ff1f;border-color:#0a84ff5c}.mobile-account-card>button:first-child{min-height:44px;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0}.mobile-account-card>button:first-child span:not(.account-dot){gap:3px;min-width:0;display:grid}.mobile-account-card strong,.mobile-account-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-account-card b{font-size:14px}.mobile-account-card .primary-button,.mobile-empty-state .primary-button{width:100%;min-height:42px}.dialog-backdrop{place-items:end stretch;overflow:auto}.planner-dialog,.planner-dialog.wide{border-bottom:0;border-left:0;border-right:0;border-radius:14px 14px 0 0;width:100%;max-height:92dvh;overflow:auto}.dialog-grid{grid-template-columns:1fr}.dialog-actions{border-top:1px solid var(--line);background:#202024;margin:12px -18px -18px;padding:12px 18px;position:sticky;bottom:-18px}.dialog-actions .primary-button,.dialog-actions .ghost-button{min-height:42px}}
