:root{color-scheme:light;--canvas:#fbf9f0;--canvas-strong:#fffdf6;--surface:#fffdf6;--surface-elevated:#fefcf4;--surface-soft:#f0f6e8;--surface-green:#e2f6d5;--ink:#0e0f0c;--text:#1f241d;--muted:#656b62;--faint:#868b84;--border:rgba(14,15,12,0.12);--border-strong:rgba(14,15,12,0.22);--accent:#9fe870;--accent-hover:#cdffad;--accent-dark:#163300;--accent-ink:#163300;--success:#054d28;--warning:#db8014;--warning-text:#6e4b00;--warning-soft:#fff7e6;--danger:#d13338;--danger-soft:#fff1f1;--info:#e7f4ff;--info-text:#056185;--input-background:#f0f6e8;--input-text:#0e0f0c;--input-placeholder:#878785;--chart-1:#9ee870;--chart-2:#66c7e6;--chart-3:#ff787d;--chart-4:#ffb34d;--chart-5:#bda3f2;--chart-6:#6be094;--button-dark-bg:#0e0f0c;--button-dark-text:#fffdf6;--chart-muted-fill:rgba(14,15,12,0.08);--page-glow:linear-gradient(180deg,rgba(226,246,213,0.72),rgba(247,248,244,0) 360px);--overlay:rgba(14,15,12,0.28);--ring:rgba(14,15,12,0.12) 0 0 0 1px;--ring-strong:rgba(14,15,12,0.18) 0 0 0 1px;--shadow-lift:0 24px 70px rgba(14,15,12,0.10)}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--canvas:#060b08;--canvas-strong:#0e140f;--surface:#121a13;--surface-elevated:#172118;--surface-soft:#1f2b1f;--surface-green:#1f2b1f;--ink:#f0f5e6;--text:#e4ebdc;--muted:#b3c2ad;--faint:#859986;--border:rgba(240,245,230,0.12);--border-strong:rgba(240,245,230,0.22);--accent:#99eb73;--accent-hover:#b8ff91;--accent-dark:#87e061;--accent-ink:#06200f;--success:#6be094;--warning:#ffb34d;--warning-text:#ffcf87;--warning-soft:rgba(255,179,77,0.13);--danger:#ff787d;--danger-soft:rgba(255,120,125,0.13);--info:rgba(102,199,230,0.13);--info-text:#66c7e6;--input-background:#1f2b1f;--input-text:#f0f5e6;--input-placeholder:#859986;--button-dark-bg:#99eb73;--button-dark-text:#06200f;--chart-muted-fill:rgba(240,245,230,0.12);--page-glow:linear-gradient(180deg,rgba(37,62,33,0.72),rgba(6,11,8,0) 360px);--overlay:rgba(0,0,0,0.54);--ring:rgba(240,245,230,0.12) 0 0 0 1px;--ring-strong:rgba(240,245,230,0.18) 0 0 0 1px;--shadow-lift:0 24px 70px rgba(0,0,0,0.34)}}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--page-glow),var(--canvas);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:"calt" 1;text-rendering:optimizeLegibility}::selection{background:var(--accent);color:var(--accent-ink)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}input,select,textarea{width:100%;min-height:48px;border:1px solid var(--border);border-radius:16px;background:var(--input-background);color:var(--input-text);padding:12px 14px;outline:none;box-shadow:var(--ring);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}input::placeholder,textarea::placeholder{color:var(--input-placeholder)}input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--accent-dark);box-shadow:none}.checkbox-row{display:flex;gap:10px;align-items:flex-start;color:var(--ink);font-size:14px;font-weight:800;line-height:1.35}.checkbox-row input{flex:0 0 auto;margin-top:2px}input:focus,select:focus,textarea:focus{border-color:var(--accent-dark);box-shadow:var(--ring),0 0 0 4px rgba(159,232,112,.32)}input[readonly]{background:var(--surface-soft);color:var(--muted);cursor:default}textarea{resize:vertical}label{display:grid;grid-gap:8px;gap:8px;color:var(--ink);font-size:14px;font-weight:700}table{width:100%;border-collapse:collapse}td,th{border-bottom:1px solid var(--border);padding:12px 0;text-align:left;vertical-align:top}th{color:var(--faint);font-size:12px;font-weight:800;text-transform:uppercase}.app-shell,.login-page{position:relative;width:min(1216px,calc(100% - 32px));margin:0 auto;padding:24px 0 72px}.app-topbar{position:static;z-index:5;display:grid;grid-template-columns:minmax(210px,auto) 1fr minmax(150px,auto);grid-gap:14px;gap:14px;align-items:center;margin-bottom:22px;border:1px solid var(--border);border-radius:28px;background:var(--surface);box-shadow:var(--ring),0 18px 45px rgba(14,15,12,.08);padding:10px}.account-chip,.brand-mark,.chip-button,.provider-button,.top-nav,.top-nav a{display:inline-flex;align-items:center}.brand-mark{gap:10px;min-width:0}.account-chip span,.brand-icon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-size:14px;font-weight:900;box-shadow:var(--ring-strong)}.brand-icon{overflow:hidden;border-radius:14px;background:var(--surface);padding:0}.brand-icon img,.login-brand span img{display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover}.account-chip small,.brand-mark strong{display:block;color:var(--ink);line-height:1.1}.brand-mark small{display:block;color:var(--muted);font-size:12px;font-weight:600;line-height:1.4}.top-nav{justify-content:center;gap:6px;min-width:0}.chip-button,.top-nav a{justify-content:center;gap:8px;min-height:40px;border:1px solid transparent;border-radius:9999px;background:transparent;color:var(--text);padding:8px 12px;font-size:14px;font-weight:800;transition:transform .14s ease,background .14s ease,border-color .14s ease}.chip-button svg,.top-nav a svg{width:17px;height:17px;color:var(--accent-dark);stroke-width:2.2}.apple-auth-button:hover,.button-dark:hover,.button-ghost:hover,.button-primary:hover,.chip-button:hover,.danger-button:hover,.provider-button:hover,.receipt-row:hover,.top-nav a:hover{transform:scale(1.03)}.chip-button:hover,.top-nav a:hover{border-color:var(--border);background:rgba(159,232,112,.22)}.account-chip{justify-content:flex-end;gap:10px;min-width:0;min-height:48px;border:1px solid transparent;border-radius:9999px;color:var(--ink);padding:4px 9px 4px 4px;transition:transform .14s ease,background .14s ease,border-color .14s ease}.account-chip-link{cursor:pointer}.account-chip:hover{border-color:var(--border);background:rgba(159,232,112,.18);transform:scale(1.02)}.account-chip:focus-visible{outline:0;border-color:var(--accent-dark);box-shadow:0 0 0 4px rgba(159,232,112,.32)}.account-chip small{max-width:120px;overflow:hidden;color:var(--muted);font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.hero-strip{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:18px;gap:18px;align-items:center;margin-bottom:18px;border:1px solid var(--border);border-radius:26px;background:var(--surface);box-shadow:var(--ring);padding:20px 24px}.hero-strip.has-summary{grid-template-columns:minmax(0,1fr) auto}.hero-strip.compact{margin-bottom:16px;padding:16px 20px}.hero-strip h1,.login-copy h1{margin:0;max-width:860px;color:var(--ink);font-size:4.75rem;font-weight:900;line-height:.88}.hero-strip h1{font-size:clamp(2rem,4vw,2.9rem);line-height:1}.hero-strip.compact h1{font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.02}.hero-strip.compact p{margin:8px 0 0}.hero-strip p,.login-copy p{max-width:680px;color:var(--muted);font-size:1rem;font-weight:600;line-height:1.45}.hero-summary{display:flex;justify-content:flex-end;min-width:0}.receipt-header-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:center}.receipt-header-summary strong{color:var(--ink);font-size:1.25rem;font-weight:950;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.receipt-header-summary>span:not(.pill){color:var(--muted);font-weight:850}.eyebrow{margin:0 0 12px;color:var(--accent-dark);font-size:12px;font-weight:900;text-transform:uppercase}.hero-proof-row,.prompt-row,.workflow-ribbon{display:flex;flex-wrap:wrap;gap:8px}.hero-proof-row,.workflow-ribbon{margin-top:18px}.hero-proof-row span,.pill,.workflow-ribbon span{display:inline-flex;align-items:center;min-height:30px;border:1px solid var(--border);border-radius:9999px;background:var(--surface-green);color:var(--accent-dark);padding:6px 10px;font-size:12px;font-weight:900}.answer-card,.auth-card,.capture-card,.login-illustration,.metric-card,.receipt-row,.stat-card,.surface,.usage-mini-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--ring)}.usage-mini-card{display:grid;grid-gap:7px;gap:7px;border-radius:28px;padding:18px}.usage-mini-card small,.usage-mini-card span{color:var(--muted);font-weight:700}.usage-mini-card strong{color:var(--ink);font-size:1.4rem;line-height:1.05}.surface{border-radius:30px;padding:22px}.error-page{min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--surface-soft)}.route-error-state{width:min(560px,100%);display:grid;grid-gap:18px;gap:18px}.route-error-state h1{margin:0;color:var(--ink);font-size:2rem;line-height:1.05}.route-error-state p{margin:8px 0 0;color:var(--muted);font-weight:700;line-height:1.45}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.section-heading h2{margin:0;color:var(--ink);font-size:1.55rem;font-weight:900;line-height:1.08}.section-heading p{margin:7px 0 0;color:var(--muted);font-weight:600;line-height:1.5}.bar-list,.compact-grid,.grid{display:grid}.grid{gap:18px}.compact-grid{gap:14px}.dashboard-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.capture-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.38fr);grid-gap:16px;gap:16px;align-items:start}.capture-upload-surface{padding:18px}.capture-upload-surface .section-heading{margin-bottom:12px}.capture-upload-surface .capture-card{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}.capture-side-panel,.capture-side-stack{display:grid;grid-gap:12px;gap:12px}.capture-side-panel{padding:16px}.scan-quota-row{display:grid;grid-gap:4px;gap:4px;border-bottom:1px solid var(--border);padding-bottom:12px}.next-steps h2,.scan-quota-row span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.scan-quota-row strong{color:var(--ink);font-size:1.05rem;font-weight:950;line-height:1.15}.capture-side-asset{height:104px;border-radius:22px;background-size:324% auto;background-position:49% 11%}.next-steps{display:grid;grid-gap:10px;gap:10px}.next-steps h2{margin:0}.next-steps ol{display:grid;grid-gap:8px;gap:8px;margin:0;padding-left:20px;color:var(--text);font-size:13px;font-weight:750;line-height:1.38}.manual-entry-details{padding:0;overflow:hidden}.manual-entry-details summary{display:flex;align-items:center;justify-content:space-between;min-height:56px;cursor:pointer;color:var(--ink);font-weight:950;list-style:none;padding:16px 18px}.manual-entry-details summary::-webkit-details-marker{display:none}.manual-entry-details summary:after,.more-options summary:after{content:"+";display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--border);border-radius:50%;color:var(--accent-dark);font-weight:950}.manual-entry-details[open] summary:after,.more-options[open] summary:after{content:"-"}.manual-entry-details form{border-top:1px solid var(--border);padding:16px 18px 18px}.dashboard-grid.single,.dashboard-primary-grid.single{grid-template-columns:1fr}.compact-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.client-project-picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center}.metric-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:14px;gap:14px;margin-bottom:18px}.metric-card,.stat-card{display:grid;grid-gap:8px;gap:8px;min-height:108px;border-radius:24px;padding:16px}.metric-card span,.stat-card span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.metric-card strong,.stat-card strong{color:var(--ink);font-size:2.35rem;font-weight:900;line-height:.95;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.metric-link-card{color:inherit;text-decoration:none;transition:transform .14s ease,background .14s ease,box-shadow .14s ease}.metric-link-card:focus-visible,.metric-link-card:hover{background:var(--surface-green);box-shadow:var(--ring-strong),var(--shadow-lift);transform:translateY(-1px)}.apple-auth-button,.button-dark,.button-ghost,.button-primary,.danger-button{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:46px;border:0;border-radius:9999px;padding:12px 18px;font-size:15px;font-weight:900;white-space:nowrap;transition:transform .14s ease,background .14s ease,box-shadow .14s ease}.button-primary{background:var(--accent);color:var(--accent-ink);box-shadow:var(--ring-strong)}.button-primary:hover{background:var(--accent-hover)}.button-dark{background:var(--button-dark-bg);color:var(--button-dark-text);box-shadow:var(--ring-strong)}.button-ghost{border:1px solid var(--border);background:var(--surface);color:var(--ink);box-shadow:var(--ring)}.button-compact{min-height:40px;padding:9px 14px;font-size:13px}.button-quiet{color:var(--muted)}.danger-button{background:var(--danger-soft);color:var(--danger);box-shadow:var(--ring)}.wide{width:100%}.form-status,.muted{color:var(--muted)}.form-status{margin:0;font-size:13px;font-weight:600;line-height:1.45}.receipt-filter-note{margin:-8px 0 18px}.form-status.error{color:var(--danger)}.status-feedback{display:grid;grid-gap:4px;gap:4px;border:1px solid var(--border);border-radius:18px;background:var(--surface-soft);padding:12px 14px;margin-bottom:16px}.status-feedback strong{color:var(--ink);font-size:14px;font-weight:950}.status-feedback span{color:var(--muted);font-size:13px;font-weight:700;line-height:1.4}.status-feedback.good{border-color:rgba(5,77,40,.25);background:var(--surface-green)}.status-feedback.warn{border-color:var(--warning);background:var(--warning-soft)}.status-feedback.danger{border-color:var(--danger);background:var(--danger-soft)}.login-page{display:grid;width:100%;min-height:100dvh;margin:0;overflow-x:hidden;background:var(--canvas);place-items:center;padding:20px}.login-panel{display:grid;grid-template-columns:1fr;grid-gap:22px;gap:22px;align-items:start;width:100%;max-width:1160px}.login-hero{display:grid;grid-gap:18px;gap:18px;align-content:start;min-width:0}.login-brand{display:inline-flex;align-items:center;gap:10px;width:-moz-fit-content;width:fit-content;color:var(--ink);font-size:14px;font-weight:900}.login-brand span{display:grid;overflow:hidden;place-items:center;width:38px;height:38px;border:1px solid rgba(22,51,0,.14);border-radius:12px;background:var(--surface);color:var(--accent-dark);box-shadow:var(--ring-strong)}.login-copy{max-width:650px}.login-copy h1{margin:0;color:var(--ink);max-width:100%;font-size:clamp(2.55rem,11vw,3.3rem);font-weight:950;line-height:.94;text-wrap:wrap}.login-copy h1 span{display:block}.login-copy p{margin:14px 0 0;max-width:600px;color:var(--muted);font-size:clamp(1rem,1.35vw,1.12rem);font-weight:650;line-height:1.36}.login-feature-list{display:flex;flex-wrap:wrap;gap:8px}.login-feature-list span{display:inline-flex;align-items:center;min-height:34px;border:1px solid var(--border);border-radius:9999px;background:var(--surface-green);color:var(--accent-dark);padding:8px 13px;font-size:12.5px;font-weight:900;line-height:1;box-shadow:var(--ring)}.auth-card{display:grid;align-content:start;justify-self:center;width:min(100%,440px);grid-gap:14px;gap:14px;border-color:var(--border);border-radius:32px;background:var(--surface-elevated);box-shadow:var(--ring),var(--shadow-lift);padding:clamp(24px,3vw,30px)}.auth-card-header{display:grid;grid-gap:6px;gap:6px;margin-bottom:2px}.auth-card-header h2{margin:0;color:var(--ink);font-size:1.95rem;font-weight:900;line-height:1}.auth-card-header p{margin:0;color:var(--ink);font-size:1rem;font-weight:800;line-height:1.35}.auth-card-header small,.auth-footnote{color:var(--muted);font-size:13px;font-weight:600;line-height:1.38}.auth-footnote{margin:0;padding-top:2px}.auth-card label{gap:6px;font-size:12.5px}.auth-card input{min-height:48px;border-color:var(--border);border-radius:16px;background:var(--input-background);font-weight:750}.auth-card .button-primary{min-height:48px;background:var(--button-dark-bg);color:var(--button-dark-text);box-shadow:var(--ring-strong),var(--shadow-lift)}.auth-card .button-primary:hover{background:var(--accent-dark)}.social-auth-panel,.social-buttons{display:grid;grid-gap:8px;gap:8px}.apple-auth-button,.provider-button{width:100%}.provider-button{justify-content:center;gap:10px;min-height:48px;border:1px solid var(--border);border-radius:9999px;background:var(--surface);color:var(--ink);padding:12px 16px;font-size:15px;font-weight:900;box-shadow:var(--ring);transition:transform .14s ease,background .14s ease}.apple-auth-button svg,.provider-button svg{width:18px;height:18px;flex:0 0 auto}.apple-auth-button{background:var(--button-dark-bg);color:var(--button-dark-text);box-shadow:var(--ring-strong),var(--shadow-lift)}.google-button-slot{display:grid;min-height:48px;place-items:center;overflow:hidden;border-radius:9999px}.google-button-slot iframe,.google-button-slot>div{max-width:100%!important}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:10px;gap:10px;align-items:center;color:var(--faint);font-size:12px;font-weight:900;text-transform:uppercase}.auth-divider span{height:1px;background:var(--border)}.login-illustration{position:relative;display:grid;place-items:center;overflow:hidden;width:min(100%,520px);height:clamp(220px,42vw,300px);max-height:300px;border:1px solid var(--border);border-radius:30px;background:linear-gradient(135deg,rgba(159,232,112,.2),transparent),var(--surface-green);padding:14px;box-shadow:var(--ring),var(--shadow-lift)}.login-illustration:before{content:none}.login-illustration .product-asset{height:100%;border:0;background-color:transparent;box-shadow:none}.product-asset{position:relative;overflow:hidden;width:100%;border:1px solid var(--border);border-radius:30px;background-color:#fbfcf8;background-image:url(/illustrations/expensejournal-asset-sheet.png);background-repeat:no-repeat;box-shadow:var(--ring)}.product-asset-login{aspect-ratio:1.15;border-radius:32px;background-size:324% auto;background-position:4% 11%}.product-asset-capture{aspect-ratio:1.15;background-size:324% auto;background-position:49% 11%}.product-asset-vault{aspect-ratio:1.16;background-size:310% auto;background-position:90% 14%}.product-asset-reports{aspect-ratio:1.72;background-size:249% auto;background-position:19% 79%}.product-asset-empty{aspect-ratio:1;background-size:382% auto;background-position:79.5% 78%}.surface-asset{margin-bottom:16px}.compact-asset{margin-top:16px}.reports-asset{margin-bottom:18px}.thumb-asset{width:86px;height:86px;border-radius:22px;flex:0 0 auto}.chart-card,.receipt-card{position:absolute;display:grid;grid-gap:6px;gap:6px;border:1px solid var(--border);border-radius:24px;background:var(--surface-elevated);box-shadow:var(--ring),var(--shadow-lift);padding:18px}.receipt-card{z-index:2}.receipt-card-a{top:44px;left:40px;width:min(260px,46%)}.receipt-card-b{right:38px;bottom:38px;width:min(250px,44%)}.receipt-card small,.receipt-card span{color:var(--muted);font-weight:700}.receipt-card strong{color:var(--ink);font-size:1.8rem;font-weight:900;line-height:1}.chart-card{z-index:1;left:78px;right:92px;bottom:112px;height:116px;grid-template-columns:repeat(4,1fr);align-items:end}.chart-card i{display:block;border-radius:9999px 9999px 10px 10px;background:var(--ink)}.chart-card i:first-child{height:38%}.chart-card i:nth-child(2){height:68%}.chart-card i:nth-child(3){height:46%}.chart-card i:nth-child(4){height:82%}.code-panel{display:grid;grid-gap:12px;gap:12px;border-radius:24px;background:var(--surface-soft);padding:14px}.debug-code{color:var(--warning-text);font-weight:900}.invite-code-panel{display:grid;justify-items:center;grid-gap:14px;gap:14px;border:1px solid var(--border);border-radius:28px;background:linear-gradient(135deg,rgba(159,232,112,.18),transparent 48%),var(--surface);box-shadow:var(--ring);padding:18px;text-align:center}.invite-code-copy{display:grid;grid-gap:4px;gap:4px}.invite-code-copy strong{color:var(--ink);font-size:1.1rem;font-weight:900;line-height:1.1}.invite-code-copy p{margin:0;color:var(--muted);font-size:13px;font-weight:650;line-height:1.4}.invite-qr-code{width:min(100%,236px);height:auto;border:1px solid rgba(14,15,12,.1);border-radius:24px;background:#ffffff;box-shadow:var(--ring),0 16px 36px rgba(14,15,12,.08);padding:12px}.invite-code-panel .button-ghost{width:min(100%,280px)}.invite-token-fallback{width:100%;color:var(--muted);font-size:13px;font-weight:750;text-align:left}.invite-token-fallback summary{cursor:pointer;color:var(--ink);font-weight:900}.invite-token-fallback textarea{margin-top:10px;min-height:84px;font-family:ui-monospace,SFMono-Regular,SF Mono,Consolas,Liberation Mono,monospace;font-size:12px}.capture-card{display:grid;grid-gap:12px;gap:12px;border-radius:30px;padding:0}.upload-drop input,.visually-hidden-file{display:none}.upload-drop label,.upload-drop-zone label{display:grid;grid-gap:7px;gap:7px;min-height:124px;place-items:center;border:1.5px dashed var(--border-strong);border-radius:24px;background:linear-gradient(135deg,rgba(159,232,112,.22),transparent 62%),var(--surface-green);text-align:center;padding:16px;transition:border-color .16s ease,transform .16s ease,background .16s ease}.upload-drop label:hover,.upload-drop-zone label:hover{border-color:var(--accent-dark);background:var(--accent-hover);transform:scale(1.01)}.upload-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--accent-dark);box-shadow:var(--ring)}.upload-icon svg{width:18px;height:18px;stroke-width:2.2}.upload-picker{min-height:38px;padding:9px 14px;font-size:13px}.upload-drop-zone small{max-width:420px;color:var(--muted);font-size:13px;font-weight:700;line-height:1.35}.upload-drop span:not(.button-primary){color:var(--accent-dark);font-size:12px;font-weight:900;text-transform:uppercase}.upload-drop strong,.upload-drop-zone strong{max-width:520px;color:var(--ink);font-size:clamp(1.22rem,1.8vw,1.48rem);font-weight:900;line-height:1}.upload-drop-zone.has-file label{min-height:96px;padding:14px}.upload-drop-zone.has-file .upload-icon{width:34px;height:34px}.upload-drop-zone.has-file .upload-icon svg{width:17px;height:17px}.upload-drop-zone.has-file strong{font-size:clamp(1.15rem,1.9vw,1.45rem)}.upload-drop-zone.has-file small{display:none}.selected-file-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;min-height:44px;border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:8px 10px 8px 14px}.selected-file-row span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.selected-file-row strong{min-width:0;overflow:hidden;color:var(--ink);font-size:13px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.selected-file-row .chip-button{min-height:34px;padding:7px 10px;font-size:12px}.upload-queue-list{display:grid;grid-gap:8px;gap:8px}.upload-queue-item{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(120px,.7fr) auto;grid-gap:10px;gap:10px;align-items:center;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--ring);padding:10px}.upload-queue-item>div{min-width:0}.upload-queue-item span,.upload-queue-item strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-queue-item strong{color:var(--ink);font-size:13px;font-weight:900}.upload-queue-item div span,.upload-queue-item small{color:var(--muted);font-size:12px;font-weight:750}.upload-queue-item small{overflow-wrap:anywhere}.upload-queue-item.completed{background:var(--surface-green)}.upload-queue-item.failed{border-color:var(--danger);background:var(--danger-soft)}.more-options{border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--ring)}.more-options summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;cursor:pointer;color:var(--ink);font-size:13px;font-weight:900;list-style:none;padding:9px 12px 9px 14px}.more-options summary::-webkit-details-marker{display:none}.more-options summary:after{width:22px;height:22px;font-size:14px}.audio-upload-row{display:grid;grid-gap:8px;gap:8px;border-top:1px solid var(--border);padding:12px 14px 14px}.selected-audio-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.audio-picker{display:inline-flex;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;min-height:38px;cursor:pointer;border:1px solid var(--border);border-radius:9999px;background:var(--surface);color:var(--ink);padding:8px 12px;font-size:13px;font-weight:900;box-shadow:var(--ring)}.audio-upload-row small,.audio-upload-row span,.upload-after-note,.upload-disabled-note{color:var(--muted);font-size:12.5px;font-weight:650;line-height:1.4}.upload-after-note,.upload-disabled-note{margin:-2px 0 0;text-align:center}.upload-disabled-note{color:var(--warning-text);font-weight:850}.calm-note,.progress-banner{border:1px solid var(--border);border-radius:22px;background:var(--surface-soft);color:var(--muted);padding:14px;font-weight:600;line-height:1.5}.progress-banner{display:grid;grid-gap:6px;gap:6px}.progress-banner span{color:var(--accent-dark);font-size:12px;font-weight:900;text-transform:uppercase}.progress-banner a{color:var(--ink);font-weight:900;text-decoration:underline;text-underline-offset:3px}.receipt-row{display:grid;grid-template-columns:72px minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;border-radius:22px;padding:10px;transition:transform .14s ease,border-color .14s ease,background .14s ease}.receipt-row:hover{background:var(--surface-green)}.thumb{width:72px;height:72px;border:1px solid var(--border);border-radius:18px;object-fit:cover;background:linear-gradient(135deg,rgba(159,232,112,.34),transparent),var(--surface-soft)}.thumb.product-asset{background-color:var(--surface-elevated);background-image:url(/illustrations/expensejournal-asset-sheet.png);background-repeat:no-repeat;box-shadow:var(--ring)}.thumb.product-asset-empty{background-size:382% auto;background-position:79.5% 78%}.receipt-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.receipt-title strong{color:var(--ink);font-size:16px;font-weight:900}.receipt-total{color:var(--ink);font-size:1.05rem;font-weight:900;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.receipt-meta-line{display:flex;flex-wrap:wrap;gap:6px 10px;margin:5px 0 0;color:var(--muted);font-size:13px;font-weight:700;line-height:1.35}.receipt-meta-line .source-pill{min-height:22px;padding:3px 8px;font-size:11px;line-height:1.1}.receipt-confidence{color:var(--faint);font-size:12px}.review-action-label{display:inline;margin-right:6px;color:var(--ink);font-weight:900}.review-reason-list{display:grid;grid-gap:4px;gap:4px;margin:7px 0 0;padding:0;color:var(--muted);font-size:13px;font-weight:700;line-height:1.35;list-style:none}.review-reason-list li{display:flex;gap:8px;align-items:flex-start;min-width:0}.review-reason-list li:before{width:7px;height:7px;flex:0 0 auto;border-radius:9999px;margin-top:6px;background:var(--warning);box-shadow:0 0 0 3px rgba(255,209,26,.16);content:""}.review-reason-list strong{flex:0 0 auto;color:var(--ink);font-weight:900}.matched-line-items{display:grid;grid-gap:6px;gap:6px;margin:8px 0 0;padding:0;color:var(--muted);font-size:13px;font-weight:700;line-height:1.35;list-style:none}.matched-line-items li{display:flex;flex-wrap:wrap;gap:7px;align-items:baseline}.matched-line-items li:before{width:7px;height:7px;flex:0 0 auto;border-radius:9999px;margin-top:6px;background:var(--accent);box-shadow:0 0 0 3px rgba(159,232,112,.22);content:""}.matched-line-items strong{color:var(--ink);font-weight:900}.line-item-summary{display:grid;grid-gap:4px;gap:4px;align-self:end;min-height:48px;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft);box-shadow:var(--ring);padding:10px 12px}.line-item-summary strong{color:var(--ink);font-weight:950}.line-item-summary small,.line-item-summary span{color:var(--muted);font-size:12px;font-weight:750}.pill.warn{background:#fff4c6;color:var(--warning-text)}.pill.good{background:var(--surface-green);color:var(--success)}.pill.danger{background:var(--danger-soft);color:var(--danger)}.chat-panel{display:grid;grid-gap:12px;gap:12px;border:1px solid var(--border);border-radius:28px;background:var(--surface-soft);padding:14px}.chat-scope-row{display:flex;flex-wrap:wrap;gap:8px}.chat-scope-button{min-height:36px;border:1px solid var(--border);border-radius:9999px;background:var(--surface);color:var(--ink);padding:8px 12px;font-size:13px;font-weight:900;cursor:pointer}.chat-scope-button.active{border-color:rgba(22,51,0,.24);background:var(--accent);color:var(--accent-ink)}.chat-scope-button:focus-visible{outline:3px solid rgba(159,232,112,.55);outline-offset:2px}.ai-mode-note{margin:0;border:1px solid rgba(255,209,26,.5);border-radius:16px;background:#fff7d6;color:var(--warning-text);padding:9px 11px;font-size:13px;font-weight:850}.chat-helper-text{margin:-2px 0 0;color:var(--muted);font-size:13px;font-weight:750;line-height:1.4}.answer-card{border-radius:24px;padding:16px;color:var(--ink);font-weight:600;line-height:1.6}.ai-feedback-box{display:grid;grid-gap:10px;gap:10px;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:var(--ring);padding:12px}.ai-feedback-box>span{color:var(--ink);font-size:14px;font-weight:900}.ai-feedback-form{border-top:1px solid var(--border);padding-top:12px}.history-drawer{border:1px solid var(--border);border-radius:20px;background:var(--surface);color:var(--muted);padding:12px 14px}.history-drawer summary{cursor:pointer;color:var(--ink);font-weight:900}.bar-list{gap:12px}.bar-row{display:grid;grid-template-columns:150px minmax(0,1fr) 94px;grid-gap:10px;gap:10px;align-items:center}.bar-track{height:14px;overflow:hidden;border-radius:9999px;background:var(--chart-muted-fill)}.bar-fill{height:100%;border-radius:inherit;background:var(--accent-dark)}.receipt-search,.status-tabs{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px}.status-tab{display:inline-flex;align-items:center;gap:8px;min-height:40px;border:1px solid var(--border);border-radius:9999px;background:var(--surface);color:var(--ink);padding:8px 12px;font-size:13px;font-weight:900;box-shadow:var(--ring)}.status-tab strong{display:inline-grid;place-items:center;min-width:26px;height:24px;border-radius:9999px;background:var(--surface-soft);color:var(--accent-dark);font-size:12px}.status-tab.active{border-color:rgba(22,51,0,.18);background:var(--accent);color:var(--accent-ink)}.receipt-search label{flex:1 1 260px}.receipt-search .receipt-search-query{flex:2 1 320px}.receipt-search .receipt-date-field{flex:0 1 168px}.receipt-date-preset-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:-4px 0 14px}.receipt-filter-label{color:var(--muted);font-size:12px;font-weight:950;text-transform:uppercase}.receipt-list-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin:18px 0 10px;border:1px solid var(--border);border-radius:22px;background:var(--surface-soft);box-shadow:var(--ring);padding:14px 16px}.receipt-list-toolbar>div:first-child .eyebrow{display:block;margin:0 0 5px}.receipt-list-toolbar>div:first-child>strong{display:block;color:var(--ink);font-size:1rem;font-weight:950}.receipt-list-toolbar>div:first-child>p{margin:4px 0 0;color:var(--muted);font-size:13px;font-weight:750;line-height:1.35}.receipt-sort-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.sort-chip{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border:1px solid var(--border);border-radius:9999px;background:var(--surface);color:var(--ink);padding:8px 11px;font-size:13px;font-weight:900;box-shadow:var(--ring);transition:background .14s ease,border-color .14s ease,transform .14s ease}.sort-chip:focus-visible,.sort-chip:hover{background:var(--surface-green);border-color:var(--border-strong);transform:translateY(-1px)}.sort-chip.active{background:var(--accent);color:var(--accent-ink)}.sort-chip strong{color:inherit;font-size:13px;line-height:1}.receipt-list-header{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(90px,auto);grid-gap:12px;gap:12px;align-items:center;padding:0 10px 8px;color:var(--muted);font-size:11px;font-weight:950;text-transform:uppercase}.receipt-list-header .amount-column{text-align:right}.receipt-list-state,.receipt-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:14px 16px;border:1px solid var(--border);border-radius:24px;background:var(--surface)}.receipt-list-state p,.receipt-pagination p{margin:0;color:var(--muted);font-weight:800}.receipt-pagination .button-ghost[disabled]{cursor:wait;opacity:.7}.receipt-detail-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);grid-gap:18px;gap:18px;align-items:start}.evidence-pane{position:-webkit-sticky;position:sticky;top:104px}.receipt-evidence-image{width:100%;max-height:680px;object-fit:contain;border:1px solid var(--border);border-radius:24px;background:var(--surface-soft);box-shadow:var(--ring)}.field-label{display:flex;justify-content:space-between;gap:10px;align-items:center}.field-confidence{color:var(--muted);font-size:11px;font-weight:900;white-space:nowrap}.field-confidence.warn{color:var(--warning-text)}.field-needs-review{border-color:rgba(208,50,56,.72);background:var(--danger-soft);color:var(--danger);box-shadow:var(--ring),0 0 0 4px rgba(208,50,56,.08)}.field-needs-check{border-color:rgba(255,209,26,.92);background:#fff9df;box-shadow:var(--ring),0 0 0 4px rgba(255,209,26,.12)}.field-review-reason{color:var(--danger);font-size:12px;font-weight:800;line-height:1.35}.field-review-reason.warn{color:var(--warning-text)}.review-alert{border:1px solid rgba(208,50,56,.26);border-radius:22px;background:var(--danger-soft);color:var(--danger);padding:14px;font-weight:650;line-height:1.5}.review-alert strong{display:block;margin-bottom:6px;color:var(--danger);font-weight:950}.review-alert p{margin:0}.review-alert.warning{border-color:rgba(255,209,26,.48);background:#fff8d8}.review-alert.warning,.review-alert.warning strong{color:var(--warning-text)}.editor-details,.settings-details{box-shadow:none}.destructive-details summary,.editor-details summary,.settings-details summary{cursor:pointer;color:var(--ink);font-weight:900}.manual-context-details summary,.receipt-context-details summary{list-style:none}.manual-context-details summary::-webkit-details-marker,.receipt-context-details summary::-webkit-details-marker{display:none}.context-toggle-row{display:flex;flex-wrap:wrap;gap:10px}.check-row{display:inline-flex;align-items:center;gap:8px;min-height:42px;border:1px solid var(--border);border-radius:9999px;background:var(--surface);box-shadow:var(--ring);padding:8px 12px;color:var(--ink);font-size:13px;font-weight:900}.check-row input{width:16px;height:16px;accent-color:var(--accent)}.destructive-details{position:relative;display:inline-grid;align-content:start}.destructive-details summary{min-height:46px;border:1px solid var(--border);border-radius:9999px;background:var(--surface);color:var(--ink);padding:12px 18px;list-style:none;box-shadow:var(--ring)}.destructive-details summary::-webkit-details-marker{display:none}.destructive-details[open] .danger-button{margin-top:8px}.settings-stack{display:grid;grid-gap:18px;gap:18px}.receipt-organization-section{display:grid;grid-gap:14px;gap:14px}.organization-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.organization-card{display:grid;grid-gap:14px;gap:14px;align-content:space-between;min-height:150px;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:var(--ring);padding:16px}.organization-card.active{border-color:rgba(22,51,0,.18);background:var(--surface-green)}.organization-card.disabled{color:var(--muted);background:var(--surface-soft)}.organization-card h3{margin:0 0 8px;color:var(--ink);font-size:1rem;font-weight:950}.organization-card p{margin:0;color:var(--muted);font-size:13px;font-weight:700;line-height:1.45}.settings-signout-form{margin-top:2px}.settings-account-actions{display:flex;justify-content:flex-start;border-top:1px solid var(--border);padding-top:14px}.settings-signout-button{border-color:rgba(122,45,38,.18);background:#fffdfb;color:var(--danger);box-shadow:none}.settings-signout-button:hover{border-color:rgba(122,45,38,.34);background:var(--danger-soft)}.settings-category-form{display:grid;grid-template-columns:minmax(160px,.9fr) minmax(180px,1fr) auto;grid-gap:12px;gap:12px;align-items:end;margin-bottom:16px}.category-chip-list{display:flex;flex-wrap:wrap;gap:10px}.category-chip{display:inline-flex;align-items:center;gap:8px;min-height:42px;border:1px solid var(--border);border-radius:9999px;background:var(--surface);color:var(--ink);padding:9px 12px;font-size:13px;font-weight:900;box-shadow:var(--ring)}.category-chip small{color:var(--muted);font-size:11px;font-weight:850}.category-chip.is-removable{cursor:pointer}.category-chip.is-removable:hover{transform:scale(1.03)}.category-chip.is-locked{background:var(--surface-soft);color:var(--muted)}.compact-list-row,.settings-row{display:grid;grid-template-columns:minmax(130px,.55fr) minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;min-height:48px;border-bottom:1px solid var(--border);color:var(--muted);font-size:14px;font-weight:700}.compact-list-row:last-child,.settings-row:last-child{border-bottom:0}.compact-list-row strong,.settings-row strong{color:var(--ink);font-weight:900}.settings-copy-block{display:grid;grid-gap:9px;gap:9px}.settings-copy-block>strong{color:var(--ink);font-size:14px;font-weight:900}.copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;min-height:52px;border:1px solid var(--border);border-radius:18px;background:var(--surface-soft);box-shadow:var(--ring);padding:7px 8px 7px 14px}.copy-row code{overflow:hidden;color:var(--ink);font-family:ui-monospace,SFMono-Regular,SF Mono,Consolas,Liberation Mono,monospace;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.settings-lower-grid{align-items:start}.forwarded-import-row,.sender-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-gap:12px;gap:12px;align-items:center;border:1px solid var(--border);border-radius:18px;background:var(--surface-soft);box-shadow:var(--ring);padding:12px}.forwarded-import-row>span,.sender-row>span{min-width:0}.forwarded-import-row strong,.sender-row strong{display:block;overflow:hidden;color:var(--ink);font-weight:900;text-overflow:ellipsis;white-space:nowrap}.forwarded-import-row small,.sender-row small{display:block;overflow:hidden;color:var(--muted);font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.pending-sender-row{grid-template-columns:minmax(0,1fr) auto minmax(140px,180px) auto auto}.sender-code-field{display:grid;grid-gap:5px;gap:5px;color:var(--muted);font-size:12px;font-weight:850}.sender-code-field input{min-height:40px;padding:9px 12px}.family-settings-section{display:grid;grid-gap:14px;gap:14px}@media (max-width:720px){.forwarded-import-row,.pending-sender-row,.sender-row{grid-template-columns:1fr}}.settings-disclosure-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;cursor:pointer;list-style:none;padding:20px 22px}.invite-token-fallback summary::-webkit-details-marker,.join-household-details summary::-webkit-details-marker,.settings-disclosure-summary::-webkit-details-marker{display:none}.invite-token-fallback summary:focus-visible,.join-household-details summary:focus-visible,.settings-disclosure-summary:focus-visible{outline:0;box-shadow:inset 0 0 0 4px rgba(159,232,112,.36)}.settings-disclosure-summary strong{display:block;color:var(--ink);font-size:1.55rem;font-weight:900;line-height:1.08}.settings-disclosure-summary small{display:block;margin-top:6px;color:var(--muted);font-size:14px;font-weight:750}.settings-chevron{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border:1px solid var(--border);border-radius:50%;background:var(--surface)}.settings-chevron:before{width:8px;height:8px;border-right:2px solid var(--accent-dark);border-bottom:2px solid var(--accent-dark);content:"";transform:rotate(45deg) translate(-1px,-1px);transition:transform .16s ease}.settings-details[open] .settings-chevron:before{transform:rotate(-135deg) translate(-1px,-1px)}.family-settings-body{display:grid;grid-gap:16px;gap:16px}.family-invite-panel,.household-members,.pending-invites{display:grid;grid-gap:10px;gap:10px}.household-members h3,.pending-invites h3{margin:0;color:var(--ink);font-size:.9rem;font-weight:950}.member-list{display:grid;grid-gap:10px;gap:10px}.member-row,.pending-invite-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;min-height:58px;border:1px solid var(--border);border-radius:20px;background:var(--surface-soft);box-shadow:var(--ring);padding:9px 10px}.member-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-size:13px;font-weight:950}.member-row small,.member-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-row strong{color:var(--ink);font-size:14px;font-weight:950}.member-row small{margin-top:2px;color:var(--muted);font-size:12px;font-weight:700}.family-action-row{display:flex;flex-wrap:wrap;gap:10px}.pending-invite-row{grid-template-columns:minmax(0,1fr) auto auto;min-height:50px;color:var(--muted);font-size:13px;font-weight:800}.invite-actions-row{justify-content:center;margin-top:0}.join-preview-card{max-width:760px;margin:0 auto}.join-preview-actions,.join-preview-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}.join-preview-heading h2{margin:0;color:var(--ink);font-size:1.8rem;font-weight:950;line-height:1.05}.join-preview-heading p{margin:6px 0 0;color:var(--muted);font-weight:700}.join-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:16px}.join-preview-detail,.join-share-disclosure{display:grid;grid-gap:5px;gap:5px;border:1px solid var(--border);border-radius:22px;background:var(--surface-soft);box-shadow:var(--ring);padding:14px}.join-preview-detail strong,.join-share-disclosure strong{color:var(--ink);font-size:13px;font-weight:950}.join-preview-detail span{color:var(--ink);font-weight:900}.join-preview-detail small,.join-share-disclosure p{margin:0;color:var(--muted);font-size:13px;font-weight:700;line-height:1.45}.join-preview-actions,.join-preview-members,.join-share-disclosure{margin-top:16px}.join-household-details{overflow:hidden;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:var(--ring)}.join-household-details summary{display:flex;justify-content:space-between;align-items:center;min-height:48px;cursor:pointer;color:var(--ink);font-weight:900;list-style:none;padding:13px 16px}.join-household-details summary:after{content:"+";color:var(--accent-dark);font-weight:950}.join-household-details[open] summary:after{content:"-"}.join-household-details form{border-top:1px solid var(--border);padding:16px}.settings-export-list{margin-bottom:12px}.settings-export-note{margin:0 0 14px}.settings-export-actions{margin-top:0}.settings-feedback-link{justify-self:start}.feedback-surface{max-width:780px}.feedback-form{max-width:680px}.success-panel{display:grid;grid-gap:12px;gap:12px}.success-panel h2{margin:0;color:var(--ink);font-size:clamp(1.6rem,2.4vw,2.2rem);font-weight:950;letter-spacing:0}.success-panel p{margin:0;color:var(--muted);font-weight:700;line-height:1.5}.compact-list{display:grid}.report-summary-row{grid-template-columns:minmax(230px,1.35fr) repeat(auto-fit,minmax(136px,.8fr));margin-bottom:18px}.report-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:start;margin-bottom:18px;padding:18px}.quick-range-row{display:flex;flex-wrap:wrap;gap:8px}.report-range-form{display:grid;grid-column:1/-1;grid-template-columns:minmax(150px,.8fr) minmax(150px,.8fr) auto minmax(280px,1.2fr);grid-gap:12px;gap:12px;align-items:end}.report-range-form.quick-only{grid-column:2;grid-row:1/span 2;grid-template-columns:1fr;justify-self:end}.report-export-actions{display:flex;justify-content:flex-end;gap:10px;align-items:center;flex-wrap:wrap}.report-toolbar-note{grid-column:1/-1;margin:0;color:var(--muted);font-size:13px;font-weight:700}.report-summary-row.has-ready{grid-template-columns:minmax(230px,1.35fr) repeat(auto-fit,minmax(136px,.8fr))}.report-summary-row .metric-card{align-content:center;min-height:88px;border-radius:20px;padding:14px 16px}.report-summary-row .metric-card strong{overflow-wrap:anywhere;font-size:1.72rem;line-height:1}.report-summary-row .primary-metric strong{font-size:2.05rem}.metric-card.primary-metric{background:linear-gradient(135deg,rgba(159,232,112,.32),transparent 58%),var(--surface)}.metric-card.primary-metric strong{color:var(--accent-dark)}.reports-dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:16px;gap:16px;align-items:stretch;margin-bottom:18px}.report-card{display:flex;flex-direction:column;min-width:0;padding:18px}.report-card .section-heading{margin-bottom:12px}.report-card .section-heading h2{font-size:1.28rem}.report-card .section-heading p{font-size:13px}.report-card-wide{grid-column:span 8;min-height:360px}.report-card-side{grid-column:span 4}.report-card-half{grid-column:span 6}.report-card .chart-list,.report-card .chart-shell,.report-card .evidence-readiness-chart{flex:1 1}.sr-only{position:absolute;overflow:hidden;width:1px;height:1px;margin:-1px;clip:rect(0,0,0,0);white-space:nowrap;border:0;padding:0}.chart-shell{display:grid;grid-gap:10px;gap:10px}.chart-svg,.mini-bar-svg,.readiness-ring-svg{display:block;width:100%;height:auto}.spending-chart-svg{overflow:visible;border:1px solid var(--border);border-radius:24px;background:linear-gradient(180deg,var(--surface-green),transparent),var(--surface)}.chart-gridline line{stroke:var(--chart-muted-fill);stroke-width:1}.chart-axis-label,.chart-empty-label,.chart-gridline text,.chart-value-label{fill:var(--muted);font-size:11px;font-weight:850}.chart-value-label{fill:var(--ink);font-size:12px;font-weight:950}.chart-empty-label{fill:var(--muted);font-size:14px}.chart-bar-fill{fill:var(--accent)}.chart-bar-empty{fill:var(--chart-muted-fill)}.chart-bar-group:focus{outline:none}.chart-bar-group:focus .chart-bar-empty,.chart-bar-group:focus .chart-bar-fill{stroke:var(--accent-dark);stroke-width:3}.chart-list{display:grid;grid-gap:12px;gap:12px}.report-card .chart-list{align-content:start;gap:10px}.chart-list-row,.merchant-chart-row{display:grid;grid-template-columns:minmax(145px,.7fr) minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;min-height:62px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--ring);padding:11px 12px}.report-card .chart-list-row,.report-card .merchant-chart-row{min-height:56px;border-radius:16px;padding:10px 11px}.merchant-chart-row{grid-template-columns:32px minmax(125px,.68fr) minmax(0,1fr) auto;color:var(--ink);transition:transform .14s ease,background .14s ease}.merchant-chart-row:hover{background:var(--surface-green);transform:scale(1.01)}.merchant-rank{display:inline-flex;justify-content:center;align-items:center;width:28px;height:28px;border-radius:9999px;background:var(--surface-green);color:var(--accent-dark);font-size:12px;font-weight:950}.chart-row-heading,.chart-row-value{display:grid;grid-gap:3px;gap:3px;min-width:0}.chart-row-heading strong,.chart-row-value strong{overflow:hidden;color:var(--ink);font-weight:950;text-overflow:ellipsis;white-space:nowrap}.chart-row-heading span,.chart-row-value span{color:var(--muted);font-size:12px;font-weight:750}.chart-row-value{text-align:right}.mini-bar-track{fill:var(--chart-muted-fill)}.mini-bar-fill{fill:var(--accent)}.mini-bar-fill.dark{fill:var(--accent-dark)}.evidence-readiness-chart{display:grid;grid-gap:14px;gap:14px}.report-card-side .evidence-readiness-chart{gap:12px}.readiness-ring-card{display:grid;justify-items:center;grid-gap:8px;gap:8px;border:1px solid var(--border);border-radius:24px;background:radial-gradient(circle at 50% 24%,rgba(159,232,112,.32),transparent 42%),var(--surface-soft);padding:18px;text-align:center}.report-card-side .readiness-ring-card{border-radius:18px;padding:14px}.readiness-ring-card strong{color:var(--ink);font-size:1rem;font-weight:950}.readiness-ring-svg{max-width:136px}.report-card-side .readiness-ring-svg{max-width:112px}.readiness-ring-track{fill:var(--chart-muted-fill)}.readiness-ring-fill{fill:var(--accent-dark)}.readiness-ring-percent{fill:var(--ink);font-size:24px;font-weight:950}.readiness-ring-label{fill:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.trend-chart{display:flex;align-items:stretch;gap:10px;min-height:204px;border:1px solid var(--border);border-radius:24px;background:linear-gradient(180deg,var(--surface-green),transparent),var(--surface);padding:16px 14px 12px}.trend-column{display:grid;grid-template-rows:minmax(120px,1fr) auto auto;grid-gap:6px;gap:6px;flex:1 1;min-width:0;color:var(--muted);font-size:11px;font-weight:850;text-align:center}.trend-bar-shell{display:flex;align-items:flex-end;overflow:hidden;min-height:128px;border-radius:999px 999px 14px 14px;background:var(--chart-muted-fill)}.trend-bar-fill{width:100%;border-radius:inherit;background:linear-gradient(180deg,var(--accent),var(--accent-dark))}.trend-column strong{min-height:14px;overflow:hidden;color:var(--ink);font-size:11px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.report-sparse-note{margin:12px 0 0;color:var(--muted);font-size:13px;font-weight:700;line-height:1.4}.report-evidence-list .compact-list-row{grid-template-columns:minmax(0,1fr) auto}.report-card-side .report-evidence-list .compact-list-row{min-height:36px;font-size:12px}.report-bars{display:grid;grid-gap:14px;gap:14px}.report-bar-row{display:grid;grid-template-columns:minmax(150px,.75fr) minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center}.report-bar-label{display:grid;grid-gap:3px;gap:3px;min-width:0}.merchant-row strong,.report-bar-label strong{overflow:hidden;color:var(--ink);font-weight:950;text-overflow:ellipsis;white-space:nowrap}.merchant-row small,.report-bar-label span{color:var(--muted);font-size:12px;font-weight:750}.merchant-bar-track,.report-bar-track{height:14px;overflow:hidden;border-radius:9999px;background:var(--chart-muted-fill)}.merchant-bar-fill,.report-bar-fill{height:100%;border-radius:inherit;background:var(--accent-dark)}.merchant-row b,.report-bar-row b{color:var(--ink);font-size:14px;font-weight:950;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.merchant-list{display:grid;grid-gap:10px;gap:10px}.merchant-row{display:grid;grid-template-columns:minmax(140px,.72fr) minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;min-height:58px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--ring);padding:10px 12px;transition:transform .14s ease,background .14s ease}.merchant-row:hover{background:var(--surface-green);transform:scale(1.01)}.merchant-row span{display:grid;grid-gap:3px;gap:3px;min-width:0}.report-attention-panel{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px;padding:18px 20px}.report-attention-panel.needs-action{border-color:var(--warning);background:var(--warning-soft)}.report-attention-panel h2{margin:0;color:var(--ink);font-size:1.25rem;font-weight:950}.report-attention-panel p{margin:5px 0 0;color:var(--muted);font-weight:700;line-height:1.4}.report-attention-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;align-items:center}.report-attention-actions span{color:var(--muted);font-size:13px;font-weight:800}.report-attention-actions strong{color:var(--ink)}.report-ai-panel{margin-bottom:18px}.report-ai-bottom,.report-ai-top{display:grid;grid-gap:14px;gap:14px;padding:18px}.report-ai-bottom{margin-bottom:0}.ai-context-pill{justify-self:end;border:1px solid rgba(22,51,0,.16);border-radius:9999px;background:var(--surface-green);color:var(--accent-dark);padding:8px 11px;font-size:12px;font-weight:950}.answer-sources{display:grid;grid-gap:8px;gap:8px;border:1px solid var(--border);border-radius:22px;background:var(--surface);padding:12px}.answer-sources>span{color:var(--muted);font-size:12px;font-weight:950;text-transform:uppercase}.answer-sources p{margin:0;color:var(--muted);font-size:13px;font-weight:700}.answer-followups,.answer-meta-row,.answer-quality-notes{display:grid;grid-gap:8px;gap:8px;border:1px solid var(--border);border-radius:18px;background:var(--surface-soft);padding:10px 12px}.answer-meta-row span,.answer-quality-notes span{color:var(--ink);font-size:12px;font-weight:950}.answer-meta-row small,.answer-quality-notes p{margin:0;color:var(--muted);font-size:12px;font-weight:750;line-height:1.35}.answer-followups,.source-chip-list{display:flex;flex-wrap:wrap}.source-chip-list{gap:8px}.source-chip{display:grid;grid-gap:2px;gap:2px;min-width:min(100%,220px);border:1px solid var(--border);border-radius:16px;background:var(--surface-soft);color:var(--ink);padding:9px 11px;box-shadow:var(--ring)}.source-chip strong{overflow:hidden;font-size:13px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.source-chip small{color:var(--muted);font-size:12px;font-weight:750}.source-line-items,.source-match-reason{color:var(--muted);font-size:12px;font-weight:800;line-height:1.3}.source-status{justify-self:start;border-radius:9999px;background:var(--surface-green);color:var(--accent-dark);padding:3px 8px;font-size:11px;font-weight:950}.receipt-ai-panel,.receipts-ai-panel{display:grid;grid-gap:12px;gap:12px;margin-bottom:18px}.receipts-ai-details{margin:18px 0 0;border:1px solid var(--border);border-radius:24px;background:var(--surface-soft);box-shadow:var(--ring);overflow:hidden}.receipts-ai-details summary{position:relative;display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:58px;cursor:pointer;color:var(--ink);list-style:none;padding:14px 16px}.receipts-ai-details summary::-webkit-details-marker{display:none}.receipts-ai-details summary span{font-weight:950}.receipts-ai-details summary small{color:var(--muted);font-size:13px;font-weight:750;line-height:1.35}.receipts-ai-details summary:after{content:"+";display:grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border:1px solid var(--border);border-radius:50%;color:var(--accent-dark);font-weight:950}.receipts-ai-details[open] summary:after{content:"-"}.receipts-ai-body{border-top:1px solid var(--border);padding:14px}.receipt-ai-panel{margin-top:18px}.compact-section-heading{margin-bottom:0}.compact-empty-panel{align-content:start;gap:10px}.compact-empty-panel strong{color:var(--ink);font-size:1.2rem;font-weight:950}.pill.neutral{background:var(--surface-soft);color:var(--muted)}.spotlight-panel{background:linear-gradient(135deg,rgba(159,232,112,.26),transparent 46%),var(--surface)}@media (min-width:1024px){.login-page{height:100dvh;min-height:100svh;overflow:hidden;padding:24px}.login-panel{grid-template-columns:minmax(0,1fr) minmax(420px,440px);gap:clamp(28px,3.4vw,44px);align-items:center;height:100%;max-height:calc(100dvh - 48px)}.login-hero{align-content:center;gap:16px;max-height:560px}.login-copy h1{max-width:700px;font-size:clamp(2.2rem,3.35vw,2.65rem);line-height:.94}.login-copy p{margin-top:12px;max-width:620px;font-size:1.02rem;line-height:1.34}.login-feature-list{flex-wrap:nowrap}.login-illustration{height:clamp(245px,34svh,318px);max-height:320px}.auth-card{justify-self:end;width:min(100%,440px);padding:30px}}@media (max-width:980px){.app-topbar,.capture-layout,.compact-grid.two,.dashboard-grid,.hero-strip,.login-panel,.organization-card-grid,.receipt-detail-grid{grid-template-columns:1fr}.app-topbar{position:static}.top-nav{flex-wrap:wrap;overflow-x:auto;padding-bottom:2px}.account-chip,.top-nav{justify-content:start}.evidence-pane{position:static}.hero-strip.has-summary{grid-template-columns:1fr}.hero-summary,.receipt-header-summary{justify-content:flex-start}.hero-strip h1,.login-copy h1{font-size:3.1rem}.metric-row,.report-range-form,.report-summary-row.has-ready{grid-template-columns:repeat(2,minmax(0,1fr))}.report-toolbar{grid-template-columns:1fr}.report-range-form.quick-only{grid-column:1;grid-row:auto;justify-self:stretch}.report-export-actions{justify-content:flex-start}.reports-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-card-side,.report-card-wide{grid-column:1/-1}.report-card-half{grid-column:span 1}.login-panel{gap:22px}.capture-side-asset{height:124px}.login-hero{gap:16px}.login-illustration{max-width:520px;height:clamp(190px,34vw,260px)}}@media (max-width:620px){.app-shell{width:min(100% - 18px,1216px);padding-top:10px}.login-page{width:100%;padding:14px;place-items:start center}.hero-strip{padding:26px}.hero-strip h1,.login-copy h1{font-size:2.25rem;line-height:.96}.login-panel{gap:16px}.capture-layout{gap:14px}.app-topbar{grid-template-columns:minmax(0,1fr) auto;gap:10px}.brand-mark{grid-column:1;grid-row:1}.top-nav{grid-column:1/-1;grid-row:2;flex-wrap:nowrap;justify-content:space-between;gap:4px;overflow-x:hidden}.top-nav a{flex:1 1;min-width:0;gap:5px;padding:8px 4px;font-size:12px}.top-nav a svg{width:14px;height:14px}.account-chip{grid-column:2;grid-row:1;justify-content:end}.account-chip small{display:none}.capture-side-panel,.capture-upload-surface{padding:16px}.upload-drop-zone label{min-height:148px;border-radius:24px;padding:18px}.selected-file-row{grid-template-columns:minmax(0,1fr) auto}.selected-file-row span{grid-column:1/-1}.upload-queue-item{grid-template-columns:minmax(0,1fr) auto}.upload-queue-item small{grid-column:1/-1}.login-hero{gap:12px}.login-brand span{width:34px;height:34px}.login-copy p{margin-top:10px;font-size:.94rem;line-height:1.34}.login-feature-list{gap:6px}.login-feature-list span{min-height:30px;padding:6px 10px;font-size:11.5px}.metric-row{grid-template-columns:1fr}.receipt-list-toolbar{display:grid;align-items:stretch}.receipt-sort-actions{justify-content:flex-start}.receipt-list-header{display:none}.receipt-date-preset-row .receipt-filter-label{flex-basis:100%}.chart-list-row,.client-project-picker-row,.merchant-chart-row,.merchant-row,.report-bar-row,.report-range-form,.report-summary-row.has-ready{grid-template-columns:1fr}.merchant-rank{justify-self:start}.chart-row-value{text-align:left}.reports-dashboard-grid{grid-template-columns:1fr}.report-card-half,.report-card-side,.report-card-wide{grid-column:1}.report-attention-panel,.report-card,.report-toolbar{padding:16px}.trend-chart{gap:6px;overflow-x:auto}.trend-column{flex:0 0 58px}.report-attention-actions,.report-attention-panel{display:grid;justify-content:stretch}.report-attention-actions .button-dark{width:100%}.section-heading{display:grid}.section-heading .button-dark,.section-heading .button-ghost,.section-heading .button-primary{width:100%}.receipt-row{grid-template-columns:70px minmax(0,1fr);align-items:start}.thumb{width:70px;height:70px;border-radius:18px}.receipt-total{grid-column:2;justify-self:start;margin-top:-4px;font-size:1rem}.receipt-title{gap:7px}.receipt-title strong{max-width:100%;overflow-wrap:anywhere}.receipt-meta-line{gap:5px 8px;font-size:12px}.receipts-ai-details summary{display:grid;padding-right:56px}.receipts-ai-details summary:after{position:absolute;right:16px;top:14px}.compact-list-row,.join-preview-grid,.member-row,.pending-invite-row,.settings-row{grid-template-columns:1fr}.member-avatar{width:34px;height:34px}.join-preview-actions .button-ghost,.join-preview-actions .button-primary,.join-preview-actions form{width:100%}.copy-row,.settings-category-form{grid-template-columns:1fr}.copy-row .button-ghost,.settings-category-form .button-ghost,.settings-category-form .button-primary,.settings-export-actions .button-ghost,.settings-export-actions .button-primary{width:100%}.bar-row{grid-template-columns:1fr}.auth-card{padding:22px}.login-illustration{justify-self:center;width:min(100%,318px);height:108px;padding:10px;border-radius:28px}.receipt-card-a{left:18px;top:34px;width:210px}.receipt-card-b{right:16px;bottom:28px;width:186px}.chart-card{left:48px;right:48px;bottom:88px;height:82px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.session-timeout-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:var(--overlay)}.session-timeout-dialog{width:min(100%,420px);border:1px solid var(--border);border-radius:28px;background:var(--surface-elevated);box-shadow:var(--shadow-lift);padding:28px}.session-timeout-dialog h2{margin:0 0 8px;font-size:1.45rem}.session-timeout-dialog p{margin:0;color:var(--muted)}.session-timeout-actions{display:flex;gap:12px;margin-top:22px}.session-timeout-actions button{flex:1 1}