:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17201d;--muted:#66716d;--line:#dde4e0;--canvas:#f3f5f1;--surface:#fff;--green:#226c53;--green-dark:#174c3b;--green-soft:#dcece4;--amber:#aa6d16;--amber-soft:#fff2d5;--red:#ad4d42;--red-soft:#fae7e3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--canvas)}body{min-height:100vh;color:var(--ink);background:var(--canvas);margin:0}button,input,select{font:inherit}button{color:inherit;transition:opacity .15s,transform 80ms}button:active:not(:disabled){transform:translateY(1px)scale(.99)}button:disabled{cursor:wait;opacity:.68}.submit-button-label{justify-content:center;align-items:center;gap:8px;display:inline-flex}.button-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:14px;height:14px;animation:.65s linear infinite button-spin}@keyframes button-spin{to{transform:rotate(360deg)}}h1,h2,p{margin-top:0}h2{letter-spacing:-.025em}a{color:inherit}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.warning-text{color:var(--amber)!important}.danger-text{color:var(--red)!important}.eyebrow{color:var(--green);letter-spacing:.13em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:850}.lede{color:var(--muted);margin-bottom:0;line-height:1.6}.auth-shell{background:radial-gradient(circle at 20% 10%, #e5efe8, transparent 35%), var(--canvas);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);background:#ffffffeb;border-radius:24px;width:min(560px,100%);padding:52px;box-shadow:0 24px 70px #233f341a}.auth-card h1{letter-spacing:-.055em;margin:18px 0;font-size:clamp(42px,8vw,68px);line-height:.96}.brand-mark{color:#fff;background:var(--green);border-radius:11px;place-items:center;width:36px;height:36px;font-weight:850;display:grid}.auth-card .brand-mark{width:52px;height:52px;margin-bottom:34px;font-size:20px}.account-button,.primary-button,.secondary-button{cursor:pointer;border-radius:10px;min-height:42px;font-weight:750}.account-button{text-overflow:ellipsis;white-space:nowrap;background:var(--surface);border:1px solid var(--line);max-width:300px;padding:0 14px;overflow:hidden}.auth-card .account-button{color:#fff;background:var(--ink);border-color:var(--ink);width:100%;max-width:none;margin-top:22px}.account-button:disabled:not([data-pending]){cursor:not-allowed;opacity:.55}.primary-button{color:#fff;background:var(--green);border:1px solid var(--green);padding:0 16px}.primary-button:hover{background:var(--green-dark)}.secondary-button{background:var(--green-soft);border:1px solid #c2d9ce;padding:0 14px}.text-button{cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:13px;font-weight:750}.topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffeb;justify-content:space-between;align-items:center;min-height:68px;padding:0 max(24px,50vw - 600px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;font-weight:850;display:flex}.dashboard{width:min(1200px,100% - 40px);margin:0 auto;padding:52px 0 88px}.dashboard:has(.import-workspace){width:min(1500px,100% - 40px)}.month-hero{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:32px;padding-bottom:30px;display:flex}.month-hero[hidden]{display:none}.month-hero h1{letter-spacing:-.055em;margin-bottom:8px;font-size:clamp(40px,6vw,70px);line-height:1}.month-switcher{background:var(--surface);border:1px solid var(--line);border-radius:12px;grid-template-columns:44px auto 44px;align-items:center;min-width:210px;display:grid;overflow:hidden}.month-switcher a{place-items:center;min-height:44px;font-size:19px;text-decoration:none;display:grid}.month-switcher a:hover{background:var(--green-soft)}.month-switcher span{color:var(--muted);text-align:center;font-size:13px;font-weight:750}.view-tabs{background:#e7ebe7;border-radius:13px;gap:6px;margin:22px 0;padding:5px;display:flex}.view-tabs button,.view-tabs a{color:var(--muted);cursor:pointer;text-align:center;background:0 0;border:0;border-radius:9px;flex:1;padding:11px 14px;font-size:13px;font-weight:800;text-decoration:none}.view-tabs button.active,.view-tabs a.active{color:var(--ink);background:var(--surface);box-shadow:0 2px 8px #1b2f2812}.view-tabs button.tuesday-ready:after{vertical-align:1px;background:var(--green);content:"";border-radius:50%;width:6px;height:6px;margin-left:7px;display:inline-block}.flash{border:1px solid;border-radius:11px;margin:0 0 18px;padding:13px 16px;font-size:14px}.flash.notice{color:var(--green-dark);background:var(--green-soft);border-color:#bdd8cb}.flash.error{color:#7d3028;background:var(--red-soft);border-color:#efc7c1}.summary-strip{background:var(--surface);border:1px solid var(--line);border-radius:16px;grid-template-columns:repeat(5,1fr);margin-bottom:24px;display:grid;overflow:hidden}.summary-strip article{gap:8px;padding:22px;display:grid}.summary-strip article+article{border-left:1px solid var(--line)}.summary-strip span{color:var(--muted);font-size:12px}.summary-strip strong{letter-spacing:-.04em;font-size:clamp(20px,2.4vw,28px)}.workspace-grid{grid-template-columns:minmax(0,1.45fr) minmax(340px,.75fr);align-items:start;gap:24px;display:grid}.main-stack,.side-stack{gap:24px;display:grid}.spend-workspace>.side-stack{align-content:start;align-self:stretch}.panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;min-width:0;padding:26px}.panel h2{margin-bottom:20px;font-size:21px}.panel-heading{justify-content:space-between;align-items:start;gap:20px;display:flex}.panel-heading>span{color:var(--muted);text-align:right;font-size:12px}.empty-state{color:var(--muted);margin-bottom:0;padding:22px 0;line-height:1.6}.form-help,.privacy-note{color:var(--muted);font-size:13px;line-height:1.55}.yearly-help{background:var(--green-soft);border-radius:9px;margin:-2px 0 0;padding:11px 12px}.income-list,.budget-list,.progress-list,.review-list{display:grid}.income-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto 80px;align-items:center;gap:18px;min-height:76px;display:grid}.income-row>div:first-child,.amount-copy{gap:5px;display:grid}.income-row span,.income-row small{color:var(--muted);font-size:12px}.amount-copy{text-align:right}.amount-copy .received{color:var(--green)}.amount-copy .pending{color:var(--amber)}.row-actions{justify-self:end;position:relative}.row-actions>summary{color:var(--muted);cursor:pointer;padding:7px 8px;font-size:12px;font-weight:750;list-style:none}.row-actions>summary::-webkit-details-marker{display:none}.line-editor>summary::-webkit-details-marker{display:none}.credit-box>summary::-webkit-details-marker{display:none}.row-actions[open]{z-index:8}.row-actions[open]>summary{color:var(--ink);background:var(--canvas);border-radius:8px}.manage-popover{background:var(--surface);border:1px solid var(--line);border-radius:12px;width:330px;margin-top:8px;padding:16px;box-shadow:0 15px 40px #192f261f}.manage-popover>form+form{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.income-row .manage-popover{position:absolute;right:0}.delete-form{gap:10px;display:grid}.plan-line{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;padding:20px 0;display:grid}.line-title{justify-content:space-between;align-items:start;gap:15px;display:flex}.line-title>div{gap:5px;display:grid}.line-title span{color:var(--muted);font-size:12px}.scope-badge{background:var(--green-soft);border-radius:99px;flex:none;padding:5px 8px;font-weight:800;color:var(--green-dark)!important;font-size:10px!important}.line-amount{align-self:start;font-size:19px}.line-amount-copy{justify-items:end;gap:3px;display:grid}.line-amount-copy>span{color:var(--muted);font-size:10px}.line-meta{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.yearly-deduction{background:var(--green-soft);border-radius:9px;grid-column:1/-1;align-items:baseline;gap:8px;padding:10px 12px;display:flex}.yearly-deduction strong{color:var(--green-dark);font-size:12px}.yearly-deduction span{color:var(--muted);font-size:11px}.yearly-expense-list{grid-column:1/-1;display:grid}.yearly-expense-list article{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:11px 0;display:flex}.yearly-expense-list article>div{gap:4px;display:grid}.yearly-expense-list span,.yearly-expense-list small{color:var(--muted);font-size:11px}.spend-yearly-list{border-top:1px solid var(--line);margin-bottom:16px}.line-editor{grid-column:1/-1}.line-editor>summary{width:fit-content;color:var(--green);cursor:pointer;font-size:12px;font-weight:800;list-style:none}.line-editor[open]>summary{margin-bottom:13px}.line-editor .delete-form{margin-top:12px}.form-panel h2{margin-bottom:8px}.form-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;display:grid}.form-grid.compact{margin-top:8px}.form-grid label,.inline-editor label,.expense-category-field{color:var(--muted);gap:6px;font-size:11px;font-weight:750;display:grid}.full{grid-column:1/-1}input,select{width:100%;min-height:43px;color:var(--ink);border:1px solid var(--line);background:#fbfcfb;border-radius:9px;outline:0;padding:0 11px}input:focus,select:focus{border-color:#78a18e;box-shadow:0 0 0 3px #26755b1a}.expense-category-picker{position:relative}.expense-category-picker input[type=search]{padding-right:34px}.expense-category-options{z-index:40;border:1px solid var(--line);background:#fff;border-radius:10px;max-height:280px;padding:5px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto;box-shadow:0 14px 36px #18352a29}.expense-category-options button{width:100%;min-height:38px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;padding:8px 10px;font-size:12px;display:block}.expense-category-options button:hover,.expense-category-options button.active{background:var(--green-soft);color:var(--green-dark)}.expense-category-options p{color:var(--muted);padding:10px;font-size:12px}.smart-category-pick{color:var(--green-dark);font-size:10px;font-weight:700}.optional-label{color:var(--muted);font-size:9px;font-weight:550}label.check{color:var(--muted);flex-direction:row;grid-column:1/-1;align-items:center;gap:9px;font-size:12px;font-weight:650;display:flex}label.check input{width:17px;min-height:17px;accent-color:var(--green);margin:0}.review-check,.described-check,.split-expense-check{flex-wrap:wrap}.review-check span,.described-check span,.split-expense-check span{width:100%;color:var(--muted);padding-left:26px;font-size:10px;font-weight:550}.review-badge{text-transform:uppercase;letter-spacing:.04em;vertical-align:middle;background:#fff0cc;border-radius:999px;margin-left:5px;padding:3px 7px;font-weight:850;display:inline-flex;color:#7a5718!important;font-size:9px!important}.project-badge{background:var(--green-soft);vertical-align:middle;border-radius:999px;margin-left:5px;padding:3px 7px;font-weight:800;display:inline-flex;color:var(--green-dark)!important;font-size:9px!important}.split-badge{text-transform:uppercase;letter-spacing:.04em;vertical-align:middle;background:#e8effb;border-radius:999px;margin-left:5px;padding:3px 7px;font-weight:850;display:inline-flex;color:#3e587f!important;font-size:9px!important}.split-expense-check{background:#f3f7fb;border:1px solid #d7e2f1;border-radius:10px;padding:11px 12px}.inline-editor{gap:12px;display:grid}.progress-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.progress-card{border:1px solid var(--line);background:#fafbf9;border-radius:13px;min-width:0;padding:18px}.progress-card .line-title{min-height:42px}.category-expense-shortcut{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;gap:5px;padding:0;display:grid}.category-expense-shortcut strong{text-underline-offset:3px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:color .15s,text-decoration-color .15s}.category-expense-shortcut:hover strong,.category-expense-shortcut:focus-visible strong{color:var(--green);text-decoration-color:currentColor}.category-expense-shortcut:focus-visible{outline-offset:4px;border-radius:3px;outline:2px solid #26755b40}.category-expense-shortcut span{color:var(--muted);font-size:12px}.budget-progress{background:#e7ece8;border-radius:99px;height:8px;margin:18px 0 9px;display:flex;overflow:hidden}.budget-progress i{border-radius:0;height:100%;display:block}.budget-progress i:first-child{border-radius:inherit 0 0 inherit}.budget-progress i:last-child{border-radius:0 inherit inherit 0}.budget-progress i:only-child{border-radius:inherit}.budget-progress i.healthy{background:var(--green)}.budget-progress i.warning{background:#d49736}.budget-progress i.danger{background:var(--red)}.budget-progress i.pace-allowance{background:#8fcbb5}.progress-footer{color:var(--muted);justify-content:space-between;font-size:12px;display:flex}.yearly-spend-note{color:var(--green-dark);margin:-8px 0 10px;font-size:11px;line-height:1.4}.credit-box{border-top:1px solid var(--line);margin-top:13px;padding-top:12px}.credit-box>summary{color:var(--amber);cursor:pointer;font-size:12px;font-weight:800;list-style:none}.credit-box p{color:var(--muted);margin:10px 0;font-size:12px;line-height:1.45}.credit-box form{grid-template-columns:1fr auto;gap:8px;display:grid}.credit-box .secondary-button{white-space:nowrap}.privacy-note{background:var(--canvas);border-radius:10px;margin:-5px 0 16px;padding:12px 14px}.transaction-filter{flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 16px;display:flex}.transaction-filter label{color:var(--muted);flex:none;font-size:11px;font-weight:750}.transaction-filter select{width:min(100%,330px);min-height:38px}.outside-budget-total{color:#7d3028;background:var(--red-soft);cursor:pointer;border:1px solid #efc7c1;border-radius:9px;align-items:center;gap:8px;min-height:38px;margin-left:auto;padding:0 11px;font-size:11px;display:inline-flex}.outside-budget-total strong{font-size:13px}.outside-budget-total.active{box-shadow:0 0 0 3px #af43361f}.transaction-list{border-top:1px solid var(--line)}.transaction{border-bottom:1px solid var(--line);grid-template-columns:10px minmax(0,1fr) auto 40px;align-items:center;gap:13px;min-height:76px;display:grid;position:relative}.kind-dot{background:#d38d80;border-radius:50%;width:8px;height:8px}.transaction-copy,.transaction-amount{gap:4px;display:grid}.transaction-copy span,.transaction-copy small,.transaction-amount span{color:var(--muted);font-size:11px}.transaction-amount{text-align:right}.transaction-actions>summary{letter-spacing:2px;font-size:16px}.transaction-actions .manage-popover{position:absolute;right:0}.transaction-edit-button{place-self:center end}.project-list{border-top:1px solid var(--line);margin:14px 0;display:grid}.project-list>span{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:42px;font-size:12px;display:flex}.project-list b{color:var(--muted);font-size:11px}.project-list em{color:var(--green-dark);background:var(--green-soft);text-transform:uppercase;border-radius:999px;margin-left:5px;padding:3px 6px;font-size:8px;font-style:normal}.sticky-card{position:sticky;top:92px}.expense-composer{align-self:start;scroll-margin-top:100px}.expense-composer.editing{border-color:#9dc6b3;box-shadow:0 10px 30px #174c3b14}.expense-composer-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.expense-composer-heading h2{margin-bottom:8px}.composer-delete-form{border-top:1px solid var(--line);justify-content:flex-end;margin-top:14px;padding-top:14px;display:flex}.mobile-expense-shortcut{display:none}.import-workspace{grid-template-columns:minmax(0,2.25fr) minmax(360px,.85fr);align-items:start;gap:24px;margin-bottom:24px;display:grid}.import-review{border-color:#bfd7cb}.import-current{border:1px solid var(--line);background:#fafbf9;border-radius:13px;margin-top:20px;padding:20px}.import-current-summary{padding:16px 18px}.import-transaction-heading{justify-content:space-between;align-items:start;gap:18px;display:flex}.import-transaction-heading>div{min-width:0}.import-transaction-heading h3{overflow-wrap:anywhere;margin:9px 0 5px;font-size:19px}.import-transaction-heading p{color:var(--muted);margin-bottom:0;font-size:11px}.import-transaction-heading>strong{flex:none;font-size:20px}.import-direction{color:#7d3028;background:var(--red-soft);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:850;display:inline-flex}.import-direction.incoming{color:var(--green-dark);background:var(--green-soft)}.import-purpose{overflow-wrap:anywhere;color:var(--muted);background:var(--canvas);border-radius:9px;margin:16px 0 0;padding:11px 12px;font-size:12px;line-height:1.5}.duplicate-warning{color:#75500f;background:var(--amber-soft);border:1px solid #edd39d;border-radius:10px;gap:5px;margin-top:14px;padding:13px 14px;display:grid}.duplicate-warning strong{font-size:12px}.duplicate-warning span{font-size:11px;line-height:1.45}.import-decision-form{border-top:1px solid var(--line);padding-top:4px}.import-skip-form{justify-content:flex-end;margin-top:13px;display:flex}.import-composer{border-color:#bfd7cb}.import-composer-heading{justify-content:space-between;align-items:start;gap:14px;display:flex}.import-composer-heading h2{margin-bottom:8px}.import-composer-heading>.text-button{color:var(--green);flex:none}.import-composer-summary{background:var(--canvas);border-radius:9px;justify-content:space-between;gap:12px;margin:0;padding:11px 12px;display:flex}.import-composer-summary strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.import-composer-summary span{flex:none}.import-complete{color:var(--green-dark);background:var(--green-soft);text-align:center;border-radius:12px;margin-top:18px;padding:22px}.import-complete p{margin:7px 0 0;font-size:12px}.import-row-list{border-top:1px solid var(--line);max-height:620px;margin-top:20px;display:grid;overflow:auto}.import-row-list>div,.import-row-list>button{width:100%;min-height:58px;color:inherit;border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:28px minmax(220px,1fr) 96px 180px 108px;align-items:center;gap:14px;padding:8px 0;display:grid}.import-row-list>button{cursor:pointer;transition:background .15s}.import-row-list>button:hover{background:var(--canvas);width:calc(100% + 20px);margin-inline:-10px;padding-inline:10px}.import-row-list>.current{background:var(--green-soft);margin-inline:-10px;padding-inline:10px}.import-row-list>button.current{width:calc(100% + 20px)}.import-row-list>:is(div,button)>span{color:var(--muted);font-size:10px}.import-row-list>:is(div,button)>div{gap:3px;min-width:0;display:grid}.import-row-list>.import-row-head{z-index:1;min-height:32px;color:var(--muted);background:var(--surface);letter-spacing:.04em;text-transform:uppercase;font-size:9px;position:sticky;top:0}.import-row-list time{color:var(--muted);font-size:11px}.import-row-list b{text-align:right;font-size:12px}.import-row-head b,.import-row-head em{justify-self:end;font-size:9px}.import-row-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.import-row-list small{color:var(--muted);font-size:10px}.import-row-list em{color:var(--muted);text-transform:uppercase;font-size:9px;font-style:normal;font-weight:800}.import-row-list em.added{color:var(--green)}.import-row-list em.skipped{color:var(--muted)}.import-row-list em.pending{color:var(--amber)}.import-upload input[type=file]{height:auto;min-height:48px;padding:11px}.import-status{margin:13px 0 0;font-size:12px}.import-continue{justify-content:center;align-items:center;margin-top:14px;font-size:12px;text-decoration:none;display:flex}.review-layout,.trips-layout{gap:24px;display:grid}.trips-hero,.trip-detail-hero{color:#fff;background:linear-gradient(135deg,#174c3b,#28785d);border-radius:20px;justify-content:space-between;align-items:end;gap:32px;padding:clamp(26px,5vw,52px);display:flex}.trips-hero h1,.trip-detail-hero h1{letter-spacing:-.055em;margin:0 0 10px;font-size:clamp(42px,7vw,72px);line-height:.95}.trips-hero p:last-child,.trip-detail-hero p:last-child{color:#d9ebe3;max-width:680px;margin-bottom:0;line-height:1.55}.trips-hero .eyebrow,.trip-detail-hero .eyebrow{color:#a8dac5}.trips-hero>div:last-child,.trip-detail-hero>div:last-child{flex:none;justify-items:end;gap:7px;display:grid}.trips-hero>div:last-child span,.trip-detail-hero>div:last-child span{color:#cce4da;font-size:12px}.trips-hero>div:last-child strong,.trip-detail-hero>div:last-child strong{letter-spacing:-.045em;font-size:clamp(28px,4vw,46px)}.trip-unassigned-warning{color:#704c0e;background:var(--amber-soft);border:1px solid #ebce91;border-radius:15px;justify-content:space-between;align-items:center;gap:24px;padding:22px 24px;display:flex}.trip-unassigned-warning .eyebrow{color:#8b5a11}.trip-unassigned-warning h2{margin-bottom:5px;font-size:20px}.trip-unassigned-warning p:last-child{margin-bottom:0;font-size:12px;line-height:1.5}.trip-unassigned-warning .secondary-button{flex:none;align-items:center;text-decoration:none;display:inline-flex}.trip-unassigned-clear{color:var(--green-dark);background:var(--green-soft);border:1px solid #bfd7cb;border-radius:13px;justify-content:space-between;align-items:center;gap:15px;padding:16px 20px;font-size:12px;display:flex}.trip-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.trip-card{min-width:0;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:16px;gap:22px;padding:24px;text-decoration:none;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid}.trip-card:hover{border-color:#9ec5b3;transform:translateY(-2px);box-shadow:0 14px 34px #174c3b14}.trip-card-heading{justify-content:space-between;align-items:start;gap:18px;display:flex}.trip-card-heading span{color:var(--muted);font-size:10px;font-weight:700}.trip-card-heading h2{overflow-wrap:anywhere;margin:7px 0 0;font-size:24px}.trip-card-heading>strong{flex:none;font-size:21px}.trip-card-footer{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px 14px;font-size:11px;display:flex}.trip-card-footer b{color:var(--green);margin-left:auto}.trip-empty-bar{background:#e7ece8;border-radius:999px;height:10px}.trip-back-link{width:fit-content;color:var(--green);font-size:12px;font-weight:800;text-decoration:none}.trip-detail-grid{grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);gap:24px;display:grid}.trip-distribution{background:#e7ece8;border-radius:999px;height:15px;margin:18px 0 20px;display:flex;overflow:hidden}.trip-distribution.compact{height:10px;margin:0}.trip-distribution i{min-width:3px;height:100%;display:block}.trip-color-0{background:#226c53}.trip-color-1{background:#e1a43e}.trip-color-2{background:#d26d5f}.trip-color-3{background:#668cc3}.trip-color-4{background:#9873b5}.trip-color-5{background:#5fa8a0}.trip-category-list{border-top:1px solid var(--line);display:grid}.trip-category-list article{border-bottom:1px solid var(--line);grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:62px;display:grid}.trip-category-dot{border-radius:50%;width:9px;height:9px}.trip-category-list article>div{gap:4px;display:grid}.trip-category-list article>div:last-child{justify-items:end}.trip-category-list small{color:var(--muted);font-size:10px}.trip-facts-panel h2{margin-bottom:18px;font-size:36px}.trip-facts-panel dl{margin:0}.trip-facts-panel dl>div{border-top:1px solid var(--line);justify-content:space-between;gap:16px;padding:11px 0;font-size:11px;display:flex}.trip-facts-panel dt{color:var(--muted)}.trip-facts-panel dd{margin:0;font-weight:800}.trip-expense-list{border-top:1px solid var(--line)}.trip-expense-list article{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:74px;display:flex}.trip-expense-list article>div{gap:4px;display:grid}.trip-expense-list article>div:last-child{justify-items:end}.trip-expense-list span,.trip-expense-list small{color:var(--muted);font-size:10px}.review-flow{border-color:#b9d6c8;overflow:hidden;box-shadow:0 14px 36px #174c3b12}.review-flow-progress{gap:8px;margin:-4px 0 22px;display:grid}.review-flow-progress>div:first-child{justify-content:space-between;align-items:center;gap:16px;display:flex}.review-flow-progress .eyebrow{margin-bottom:0}.review-flow-progress span,.review-flow-progress small{color:var(--muted);font-size:11px;font-weight:750}.review-flow-track{background:#e7ece8;border-radius:999px;height:7px;overflow:hidden}.review-flow-track i{background:var(--green);border-radius:inherit;height:100%;transition:width .2s;display:block}.review-flow-summary{background:var(--canvas);border-radius:13px;justify-content:space-between;align-items:start;gap:18px;padding:20px;display:flex}.review-flow-summary h2{overflow-wrap:anywhere;margin:9px 0 6px;font-size:24px}.review-flow-summary p{color:var(--muted);margin-bottom:0;font-size:12px}.review-flow-summary>strong{flex:none;font-size:22px}.review-flow .expense-form{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.review-flow-readonly{background:var(--green-soft);border-radius:11px;margin-top:18px;padding:16px}.review-flow-readonly p{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.5}.review-flow-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;margin-top:14px;padding-top:14px;display:flex}.review-flow-actions .secondary-button{min-width:180px}.review-flow-complete{text-align:center}.review-flow-complete h2{margin-bottom:8px}.review-flow-complete .secondary-button{margin-top:8px}.review-flow-complete.calm{background:linear-gradient(135deg, #fff, var(--green-soft));border-color:#bfd7cb}.review-callout{border-radius:18px;padding:clamp(26px,4vw,46px)}.review-callout.calm{background:linear-gradient(135deg,#dcece4,#eaf3ed);border:1px solid #c4dbcf}.review-callout.attention{background:linear-gradient(135deg,#fff0d1,#fff8e8);border:1px solid #efd8ac}.review-callout h2{max-width:760px;margin-bottom:10px;font-size:clamp(28px,4vw,44px)}.review-callout p:last-child{max-width:690px;color:var(--muted);margin-bottom:0;line-height:1.6}.review-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.metric-panel p:last-child{color:var(--muted);margin-bottom:0;line-height:1.55}.hero-number{letter-spacing:-.055em;margin-bottom:12px;font-size:clamp(34px,5vw,52px);display:block}.review-workspace{margin-top:0}.review-list article{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:68px;display:flex}.review-list article>div{gap:5px;display:grid}.review-list article span{color:var(--muted);font-size:12px}.review-list article b{flex:none;font-size:14px}.review-credit-action{text-align:right;align-items:end;gap:4px!important;display:flex!important}.review-edit-link{align-items:center;min-height:37px;padding-inline:9px;text-decoration:none;display:inline-flex}.change-list{gap:16px;margin:0;padding:0;list-style:none;display:grid}.change-list li{border-left:2px solid var(--green-soft);gap:5px;padding-left:13px;display:grid}.change-list strong{font-size:13px}.change-list span{color:var(--muted);font-size:11px;line-height:1.4}@media (max-width:920px){.workspace-grid,.import-workspace{grid-template-columns:1fr}.side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.sticky-card{position:static}.review-workspace .side-stack,.trip-detail-grid{grid-template-columns:1fr}}@media (max-width:720px){.topbar{padding:0 16px}.account-button{max-width:185px}.dashboard{width:min(100% - 24px,1200px);padding-top:30px}.month-hero{flex-direction:column;align-items:start;gap:20px}.month-switcher{width:100%}.summary-strip{grid-template-columns:1fr 1fr}.summary-strip article:nth-child(2n){border-left:1px solid var(--line)}.summary-strip article:nth-child(n+3){border-top:1px solid var(--line)}.summary-strip article:nth-child(odd){border-left:0}.summary-strip article:last-child:nth-child(odd){grid-column:1/-1}.side-stack,.review-grid,.trip-card-grid{grid-template-columns:1fr}.trips-hero,.trip-detail-hero{flex-direction:column;align-items:start}.trips-hero>div:last-child,.trip-detail-hero>div:last-child{justify-items:start}.trip-unassigned-warning{flex-direction:column;align-items:stretch}.trip-unassigned-warning .secondary-button{justify-content:center;width:100%}.spend-workspace>.side-stack{grid-area:1/1}.spend-workspace>.main-stack{grid-area:2/1}.expense-composer{scroll-margin-top:140px}.progress-list{grid-template-columns:1fr}.view-tabs{z-index:12;position:sticky;top:75px}.mobile-expense-shortcut{z-index:30;right:16px;bottom:max(16px, env(safe-area-inset-bottom));color:#fff;background:var(--green);border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 18px;font-size:14px;font-weight:800;text-decoration:none;display:flex;position:fixed;box-shadow:0 10px 30px #174c3b47}}@media (max-width:540px){.auth-card{padding:34px 24px}.brand>span:last-child{display:none}.view-tabs button,.view-tabs a{padding-inline:7px;font-size:12px}.panel{padding:20px}.summary-strip article{padding:17px}.summary-strip strong{font-size:20px}.form-grid{grid-template-columns:1fr}.expense-form{grid-template-columns:minmax(0,1.35fr) minmax(105px,.8fr);gap:12px}.expense-form .full,.expense-form .expense-date{grid-column:1/-1}.income-row{grid-template-columns:minmax(0,1fr) auto;padding:14px 0}.income-row .row-actions{grid-column:1/-1;justify-self:start}.income-row .manage-popover{left:0;right:auto}.line-title{align-items:start}.plan-line{grid-template-columns:1fr}.line-amount{grid-row:2}.line-amount-copy{grid-row:2;justify-items:start}.transaction{grid-template-columns:10px minmax(0,1fr) 34px;padding:13px 0}.transaction-amount{text-align:left;grid-column:2}.transaction-actions{grid-area:1/3/span 2}.manage-popover{width:min(330px,100vw - 52px)}.credit-box form{grid-template-columns:1fr}.review-list article,.trip-expense-list article{flex-direction:column;align-items:start;padding:14px 0}.trip-expense-list article>div:last-child{justify-items:start}.review-flow-summary{flex-direction:column;padding:16px}.review-flow-actions{flex-direction:column;align-items:stretch}.review-flow-actions .secondary-button{width:100%}.import-current{padding:16px}.import-transaction-heading{flex-direction:column;gap:10px}.import-transaction-heading>strong{align-self:flex-start}.import-row-list>div,.import-row-list>button{grid-template-columns:20px minmax(0,1fr) auto;gap:8px 10px;padding-block:10px}.import-row-list time{grid-area:2/2}.import-row-list b{grid-area:1/3}.import-row-list em{grid-area:3/2/auto/-1;justify-self:start}.import-row-list>.import-row-head{grid-template-columns:20px minmax(0,1fr) auto}.import-row-list>.import-row-head time,.import-row-list>.import-row-head b{display:none}.import-row-list>.import-row-head em{grid-area:1/3;justify-self:end}}@media (prefers-reduced-motion:reduce){button{transition:none}.button-spinner{animation-duration:1.4s}}
