@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#233832;background:#f8faf8;font-synthesis:none;--green:#21654c;--muted:#7c8983;--border:#e4eae5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,select{cursor:pointer}button{transition:background .15s,transform .15s}button:hover{filter:brightness(.96)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #99c9b2;outline-offset:3px}button{border:0}small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.sidebar{width:246px;background:#fff;position:fixed;inset:0 auto 0 0;border-right:1px solid var(--border);padding:32px 20px;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;color:#224535;text-decoration:none;font-size:17px;font-weight:800;letter-spacing:-.6px}.brand-icon{background:var(--green);color:white;border-radius:10px;font-size:24px;padding:2px 9px}.workspace{display:flex;gap:11px;align-items:center;border:1px solid var(--border);border-radius:9px;padding:13px 10px;margin:34px 0 29px;font-size:12px;font-weight:600}.avatar{background:#ecf1eb;border-radius:50%;width:33px;height:33px;display:grid;place-items:center;font-size:11px;color:var(--green);flex-shrink:0}.nav-label{font-size:10px;letter-spacing:1.3px;color:#9aa39e;padding-left:12px;margin-bottom:12px}.nav{display:flex;align-items:center;gap:12px;width:100%;background:none;color:#758078;text-align:left;padding:13px;border-radius:8px;margin-bottom:5px;font-size:13px}.nav.active{color:var(--green);background:#eaf2eb;font-weight:600}.nav span{flex:1}.nav b{font-size:10px;background:#dce9de;border-radius:5px;padding:3px 6px}.sidebar-bottom{margin-top:auto}.tip{padding:18px 14px;background:#f7f8f3;border-radius:10px;font-size:12px}.tip span{font-weight:600}.tip p{color:#8a9286;font-size:11px;line-height:1.8}.profile{display:flex;align-items:center;gap:10px;border-top:1px solid var(--border);margin-top:24px;padding-top:22px;font-size:12px}main{margin-left:246px}header{height:85px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 42px;background:#fff}.breadcrumb{font-size:12px;color:#919a94}.breadcrumb span{padding:0 14px}.breadcrumb strong{color:#526058;font-weight:500}.local-badge{font-size:11px;color:#5c7e66;background:#eff5ef;padding:7px 11px;border-radius:20px}.content{max-width:1440px;padding:43px 42px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{font-size:10px;letter-spacing:1.9px;font-weight:700;color:#85977f;margin:0 0 12px}h1{font-family:inherit;font-size:34px;letter-spacing:-1.4px;margin:0;font-weight:800}.subtitle{font-size:13px;color:var(--muted);margin:13px 0 0}.primary{color:white;background:var(--green);padding:13px 19px;border-radius:8px;font-size:12px;font-weight:600;white-space:nowrap;box-shadow:0 3px 6px #1a493414}.stats{display:grid;grid-template-columns:repeat(3,1fr) 1.14fr;gap:16px;margin:34px 0 39px}.stats article{background:#fff;border:1px solid var(--border);border-radius:11px;padding:22px}.stats article>span{font-size:11px;color:#7c8980}.stats h2{font-family:inherit;font-size:29px;letter-spacing:-1px;margin:14px 0 10px}.stats p{font-size:10px;color:#949f97;margin:0}.stats .insight{background:#edf2e8;border-color:#e2e9dc}.insight>span{font-size:9px!important;letter-spacing:1.3px;color:#668158!important}.insight h3{font-family:inherit;font-size:17px;line-height:1.5;margin:15px 0 11px;letter-spacing:-.4px}.amber-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#d5a355;margin-left:4px}.section-heading{display:flex;justify-content:space-between;align-items:center}.section-heading h2{font-size:17px;margin:0;letter-spacing:-.4px}.section-heading h2 span{font-size:10px;margin-left:7px;padding:3px 7px;background:#e8eee8;color:#798778;border-radius:5px}.section-heading p{color:var(--muted);font-size:12px;margin:9px 0 0}.secondary{background:#fff;border:1px solid var(--border);border-radius:7px;padding:10px 14px;font-size:11px;color:#526357}.toolbar{display:flex;justify-content:space-between;gap:16px;margin:24px 0 17px}.search{background:#fff;display:flex;align-items:center;gap:10px;padding:0 13px;border:1px solid var(--border);border-radius:7px;min-width:300px;font-size:22px;color:#88958b}.search input{width:100%;border:0;outline:0;padding:12px 0;font-size:11px;background:none}.filters{display:flex;gap:10px}.filters select{background:#fff;border:1px solid var(--border);border-radius:7px;padding:10px;color:#627167;font-size:11px}.table-wrap{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{font-size:9px;letter-spacing:1px;color:#99a399;text-align:left;padding:17px 20px;background:#fcfdfb;border-bottom:1px solid var(--border);font-weight:500}td{font-size:12px;padding:19px 20px;border-bottom:1px solid #edf1ec;color:#7f8b83}tbody tr{cursor:pointer}tbody tr:hover{background:#f7faf6}.merchant{display:flex;gap:12px;align-items:center}.merchant-icon{width:37px;height:37px;border-radius:9px;display:grid;place-items:center;font-weight:700;font-size:14px;background:#ebf0e5;color:#658150}.merchant strong{display:block;color:#35463d;font-size:12px;font-weight:600}.merchant small{font-size:10px;margin-top:5px;max-width:220px;overflow:hidden;text-overflow:ellipsis}.category-pill{font-size:10px;padding:5px 8px;border-radius:5px;background:#f1f3ef;color:#7c8776}.status{font-size:10px;color:#56876c}.status.review{color:#b78b45}.amount{text-align:right}.amount strong{color:#34483a;font-size:12px}.row-open{background:none;color:#9daa9f;font-size:18px;padding:2px 8px}.table-footer{display:flex;justify-content:space-between;padding:16px 20px;font-size:10px;color:#9ca69e}.privacy-note{text-align:center;font-size:10px;color:#98a497;margin-top:25px;line-height:1.7}#empty{padding:50px;text-align:center;font-size:13px;color:var(--muted)}dialog{width:510px;max-width:calc(100% - 32px);border:1px solid var(--border);border-radius:16px;padding:28px;box-shadow:0 20px 100px #16332633;max-height:90vh}dialog::backdrop{background:#10291c55;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.dialog-heading h2{margin:0;font-size:23px}.icon-button{font-size:25px;background:none;color:#7e8c82}form label{display:block;font-size:11px;color:#627266;margin:16px 0}form input:not([type=checkbox]),form select,form textarea{display:block;width:100%;padding:11px;border:1px solid var(--border);border-radius:7px;margin-top:7px;background:#fbfcfa;color:#344b3c}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-row label{margin:0}.checkbox{display:flex;gap:8px;align-items:center}.dialog-actions{display:flex;justify-content:space-between;align-items:center;margin-top:25px}.danger{background:none;color:#b06a60;font-size:11px}.upload-note{background:#f2f5ec;border-radius:8px;font-size:12px;line-height:1.7;padding:13px;color:#738064}#preview img{width:100%;max-height:200px;object-fit:contain;background:#f1f4ed;border-radius:7px}#preview p{font-size:12px;color:#79897b}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#244e39;color:white;border-radius:9px;padding:12px 20px;font-size:12px;display:none;z-index:10}@media(min-width:1500px){.content{padding-top:55px}.stats{margin-top:42px}td{padding-top:24px;padding-bottom:24px}}@media(max-width:1100px){.sidebar{width:205px;padding:25px 14px}main{margin-left:205px}.brand{font-size:15px}header{padding:0 25px}.content{padding:32px 25px}.stats{grid-template-columns:repeat(2,1fr)}h1{font-size:29px}.search{min-width:220px}th,td{padding-left:13px;padding-right:13px}}@media(max-width:720px){.sidebar{position:static;width:100%;padding:16px;border-right:0;border-bottom:1px solid var(--border);flex-direction:row;flex-wrap:wrap;gap:8px}.brand{width:100%;margin-bottom:9px}.workspace,.nav-label,.sidebar-bottom{display:none}.nav{width:auto;flex:1;font-size:10px;gap:6px;padding:10px;margin:0}.nav b{display:none}main{margin:0}header{height:55px;padding:0 18px}.content{padding:28px 18px}.page-heading{align-items:flex-start}h1{font-size:26px}.eyebrow{font-size:8px}.subtitle{line-height:1.7;font-size:11px}.primary{padding:11px 13px;font-size:11px}.stats{gap:10px;margin:26px 0}.stats article{padding:17px}.stats h2{font-size:25px}.insight h3{font-size:14px}.toolbar{flex-direction:column}.filters select{flex:1}.section-heading p{font-size:10px}.table-footer{gap:20px;line-height:1.6}.local-badge{font-size:9px}.form-row{gap:10px}}

/* Mobile palette from OBPalette.swift / Palette.kt; desktop layout preserved. */
:root{--green:#7f27ff;--muted:#8a8a8a;--border:#efe9d8;color:#141414;background:#fdfcfa;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.sidebar{background:#fdfcfa}.brand{color:#141414}.brand-icon{background:linear-gradient(135deg,#7f27ff,#a66bff)}.nav.active{color:#7f27ff;background:#f4ebff}.nav b{background:#e9dbff}.avatar{background:#f4ebff;color:#7f27ff}.tip{background:#f3efe4}.local-badge{background:#f4ebff;color:#7f27ff}.eyebrow{color:#8a8a8a}.stats .insight{background:linear-gradient(125deg,#f4ebff,#faf5ff);border-color:#e9dbff}.insight>span{color:#7f27ff!important}.insight h3{color:#3a3a3a}.primary{background:#7f27ff}.merchant-icon{color:#7f27ff;background:#f4ebff}.category-pill{background:#f3efe4;color:#3a3a3a}.status{color:#248a3e}.search, .filters select{color:#3a3a3a}h1,h2,h3{font-family:inherit}h1{font-size:30px;letter-spacing:-1px}.page-heading{justify-content:flex-start}.page-heading>div{margin-right:auto}.stats h2{font-size:27px}.content{padding-top:34px}.sidebar-bottom .tip{display:none}#toast{background:#141414}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:25px}.module-card{border:1px solid var(--border);border-radius:10px;background:white;padding:25px}.module-card h2{font-size:17px;margin:0 0 20px}.report-row{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #efe9d8;padding:14px 0;font-size:13px}.report-row strong{font-weight:600}.report-toolbar{margin-top:25px;font-size:13px}.report-toolbar select{padding:9px;border:1px solid var(--border);border-radius:6px;background:white}.lookup-form{display:flex;gap:8px;align-items:center;margin-top:16px}.lookup-form input{min-width:0;margin:0!important}.lookup-form input[name=percentage]{width:65px}.settings-card{max-width:680px;margin-top:28px}.settings-card p{font-size:13px;line-height:1.8;color:var(--muted)}details{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}summary{cursor:pointer;font-size:12px;font-weight:600;margin-bottom:15px}.tax-line{display:flex;align-items:center;gap:15px}.tax-line label{flex:1}.tax-line>input{width:145px!important}#calculation{display:block;padding:12px;background:#f4ebff;color:#7f27ff;font-size:11px;line-height:1.7;border-radius:7px}#form-error{font-size:12px;color:#b54747}dialog{width:610px}.upload-note{background:#f4ebff;color:#3a3a3a}@media(max-width:720px){.report-grid{grid-template-columns:1fr}.page-heading{flex-wrap:wrap}.page-heading>div{width:100%}.sidebar .nav{flex:0 0 30%}.tax-line{flex-wrap:wrap}.stats h2{font-size:23px}}

/* Shared mobile palette */
:root{--app-purple:#7f27ff;--app-purple-light:#a66bff;--app-purple-soft:#e9dbff;--app-purple-wash:#f4ebff;--app-background:#fdfcfa;--app-surface:#fff;--app-ink:#141414;--app-ink-soft:#3a3a3a;--app-muted:#8a8a8a;--app-hairline:#efe9d8;--app-orange:#ff9500;--app-green:#34c759;--app-red:#ff3b30}body{background:var(--app-background);color:var(--app-ink)}header,.stats article,.table-wrap,.search,.filters select,dialog,.module-card{background:var(--app-surface)}th{background:#fffefa}td,.subtitle,.privacy-note,.breadcrumb,.nav,.stats article>span,.stats p,.table-footer,small{color:var(--app-ink-soft)}.merchant strong,.amount strong{color:var(--app-ink)}tbody tr:hover{background:var(--app-purple-wash)}.status.review{color:#995900}.amber-dot{background:var(--app-orange)}.secondary{color:var(--app-ink-soft);border-color:var(--app-hairline)}.section-heading h2 span{background:var(--app-purple-soft);color:var(--app-purple)}form input:not([type=checkbox]),form select,form textarea{background:var(--app-background);color:var(--app-ink);border-color:var(--app-hairline)}input[type=checkbox]{accent-color:var(--app-purple)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--app-purple-light)}.danger,#form-error{color:#ba2c23}dialog::backdrop{background:#14141455}
/* iOS OB semantic and action colors */
.primary{background:#141414;color:#fdfcfa}.status{color:#188f5d}.status.review{color:#b86a00}.danger,#form-error{color:#e53e3e}

.brand-icon{display:block;width:38px;height:38px;padding:0;object-fit:contain;background:none;border-radius:9px;flex-shrink:0}

.header-actions{display:flex;align-items:center;gap:16px}.top-settings{display:flex;align-items:center;gap:7px;background:transparent;color:var(--app-ink-soft);font-size:12px;padding:9px 12px;border-radius:7px}.top-settings:hover,.top-settings.active{background:var(--app-purple-wash);color:var(--app-purple)}@media(max-width:720px){.header-actions{gap:6px}.top-settings{padding:7px;font-size:11px}}



/* Typography roles match smart_receipt_landing_page/input.css and index.html. */
:root{--font-sans:'Inter',system-ui,-apple-system,sans-serif;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;font-family:var(--font-sans);font-weight:var(--font-normal);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,button,input,select,textarea{font-family:var(--font-sans)}h1{font-weight:var(--font-bold);letter-spacing:-.025em;line-height:1.2}h2,h3,.dialog-heading h2,.module-card h2,.section-heading h2{font-weight:var(--font-bold);letter-spacing:-.025em}.brand{font-weight:var(--font-bold);letter-spacing:normal}.stats h2{font-weight:var(--font-bold);font-variant-numeric:tabular-nums}.nav,.nav.active,.top-settings,.secondary,.category-pill,.nav b{font-weight:var(--font-medium)}.primary,.workspace,.merchant strong,.amount strong,.report-row strong,summary,.eyebrow,.nav-label{font-weight:var(--font-semibold)}.subtitle,td,form label,.profile,.table-footer,small{font-weight:var(--font-normal)}th{font-weight:var(--font-medium)}.eyebrow,.nav-label{letter-spacing:.025em}.amount,.report-row strong{font-variant-numeric:tabular-nums}.merchant strong{font-size:13px}.subtitle{font-size:13px;line-height:1.625}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.font-extrabold{font-weight:var(--font-extrabold)}

.onboarding-open>aside,.onboarding-open>main{display:none}#onboarding{position:fixed;inset:0;overflow:auto;background:var(--app-background);z-index:20;padding:32px 6vw}#onboarding[hidden]{display:none}.onboarding-brand{display:flex;align-items:center;gap:12px}.onboarding-brand img{border-radius:9px}.onboarding-brand strong{font-size:18px}.onboarding-brand>span{margin-left:auto;font-size:12px;color:var(--app-muted)}.onboarding-layout{max-width:1120px;margin:70px auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.onboarding-story h1{font-size:46px;line-height:1.2;margin:24px 0}.onboarding-story>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#666;max-width:360px}.onboarding-modules{display:flex;gap:18px;margin-top:38px;color:var(--app-purple);font-size:12px}.onboarding-panel{background:#fff;border:1px solid var(--app-hairline);border-radius:16px;padding:32px}.onboarding-progress{display:flex;justify-content:space-between;margin-bottom:42px}.onboarding-progress>span{font-size:11px;color:#888;text-align:center;width:25%;border-top:3px solid #eee;padding-top:10px}.onboarding-progress>span.done{color:var(--app-purple);border-color:var(--app-purple)}.onboarding-progress small{font-size:10px;color:inherit}#onboarding-body h2{font-size:26px;line-height:1.35;margin:0 0 16px}#onboarding-body p{font-size:13px;color:#666;line-height:1.8}.onboarding-note{padding:17px;background:var(--app-purple-wash);border-radius:9px;font-size:12px;line-height:1.8;margin:22px 0}.persona-choice{display:block;width:100%;text-align:left;padding:17px;background:#fff;border:1px solid var(--app-hairline);border-radius:10px;margin:12px 0}.persona-choice strong,.persona-choice span{display:block}.persona-choice strong{font-size:14px;font-weight:600}.persona-choice span{font-size:12px;color:#666;margin-top:6px}.persona-choice.selected{border-color:var(--app-purple);background:var(--app-purple-wash)}.onboarding-actions{display:flex;justify-content:space-between;margin-top:30px;gap:16px}.onboarding-actions .primary{margin-left:auto}.onboarding-actions button:disabled{opacity:.4;cursor:default}.onboarding-footnote{font-size:10px;text-align:center;color:#888;margin:20px 0 0}.ob-name{font-size:12px}.ob-name input{display:block;width:100%;border:1px solid var(--app-hairline);border-radius:8px;padding:12px;margin-top:8px}.ob-toggle{display:flex;gap:13px;align-items:center;padding:13px 0;border-bottom:1px solid var(--app-hairline);font-size:12px}.ob-toggle small{font-size:11px}.ob-toggle input{width:17px;height:17px}@media(max-width:800px){#onboarding{padding:22px}.onboarding-layout{grid-template-columns:1fr;gap:24px;margin:35px auto;max-width:520px}.onboarding-story h1{font-size:30px}.onboarding-story h1 br{display:none}.onboarding-story>p:not(.eyebrow),.onboarding-modules{display:none}.onboarding-panel{padding:24px}.onboarding-brand>span{display:none}}
[hidden]{display:none!important}

.ob-name{display:block;margin:14px 0}.ob-name select{display:block;width:100%;margin-top:8px;border:1px solid var(--app-hairline);padding:12px;border-radius:8px;background:white;font-size:12px}#ob-logo-preview{object-fit:contain;border-radius:8px;margin:12px 0}
/* Measured from the user's signed-in Stripe dashboard, 2026-10-01. */
:root{--font-sans:-apple-system,system-ui,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;line-height:1.5}body,button,input,select,textarea{font-family:var(--font-sans)}h1{font-size:28px;font-weight:700;line-height:36px;letter-spacing:normal}h2,h3,.section-heading h2,.module-card h2{font-size:16px;font-weight:700;line-height:24px;letter-spacing:normal}.stats h2{font-size:28px;line-height:36px;font-weight:600}.sidebar{width:240px;background:white;padding:20px;border-color:#ebeef1}main{margin-left:240px}header{height:64px;border:0;padding:0 48px}.content{padding:24px 48px;max-width:none}.brand{font-size:16px}.brand-icon{width:32px;height:32px;border-radius:6px}.workspace{border:0;padding:8px 0;margin:20px 0 24px}.nav{height:30px;padding:0 6px;margin-bottom:0;border-radius:4px;font-size:14px;font-weight:400;gap:12px}.nav.active{background:transparent;color:var(--app-purple);font-weight:600}.nav:hover{background:#f3f5f7}.nav-label{font-size:12px;letter-spacing:normal;margin-top:20px;margin-bottom:12px;padding:0;font-weight:400}.primary,.secondary,.top-settings{min-height:28px;padding:4px 8px;border-radius:6px;font-size:14px;font-weight:600;line-height:20px;box-shadow:none}.secondary{border:0;box-shadow:0 0 0 1px #d4dee9;background:white}.primary{background:var(--app-purple);color:white}.page-heading{gap:8px}.eyebrow{display:none}.subtitle{font-size:14px;font-weight:400;line-height:20px;margin-top:8px}.stats{gap:0;margin:28px 0 32px;border-bottom:1px solid #ebeef1}.stats article{border:0;border-radius:0;padding:16px 20px 22px 0;background:transparent}.stats article>span,.stats p{font-size:12px}.stats .insight{background:#f4ebff;border:0;border-radius:6px;padding:16px}.insight h3{font-size:16px;line-height:24px}.section-heading p{font-size:14px}.toolbar{margin:20px 0 12px}.search{border-color:#d4dee9;min-height:36px;border-radius:6px}.search input{font-size:14px;padding:7px 0}.filters select,.report-toolbar select{font-size:14px;padding:4px 8px;min-height:28px;border:1px solid #d4dee9;border-radius:6px}.table-wrap{border:0;border-radius:0}th{background:white;font-size:12px;letter-spacing:normal;font-weight:600;padding:10px 8px;border-color:#ebeef1}td{font-size:14px;padding:12px 8px;border-color:#ebeef1}.merchant strong,.amount strong{font-size:14px;font-weight:500}.merchant small{font-size:12px}.merchant-icon{width:32px;height:32px;border-radius:6px;font-size:13px;background:#f3f5f7;color:#596171}.category-pill,.status{font-size:12px}.category-pill{background:#f3f5f7;border-radius:4px}.table-footer{font-size:12px;padding:16px 8px}.module-card{border:1px solid #ebeef1;border-radius:6px;padding:20px}.report-row{font-size:14px}.local-badge{border-radius:4px}.top-settings{font-weight:400}.onboarding-story h1{font-size:36px;line-height:44px;font-weight:700;letter-spacing:normal}.onboarding-panel{border-radius:8px;border-color:#ebeef1;padding:32px}.onboarding-progress>span{font-size:12px;font-weight:400;border-top-width:2px}.onboarding-progress small{font-size:12px}.onboarding-progress{gap:8px}.onboarding-progress>span{width:20%}#onboarding-body h2{font-size:24px;line-height:32px;font-weight:700;letter-spacing:normal}#onboarding-body p{font-size:14px;line-height:20px}.persona-choice{border-color:#d4dee9;border-radius:6px;padding:16px}.persona-choice strong{font-size:14px;font-weight:600}.persona-choice span{font-size:14px;line-height:20px}.onboarding-note{border-radius:6px;font-size:14px;line-height:20px;background:#f3f5f7}.ob-name,form label{font-size:14px;font-weight:500}.ob-name input,.ob-name select,form input:not([type=checkbox]),form select,form textarea{border-color:#d4dee9;border-radius:6px;padding:8px 12px;font-size:14px;background:white;min-height:36px}.ob-toggle{font-size:14px}.ob-toggle small{font-size:12px}.onboarding-footnote{font-size:12px}.onboarding-modules{font-size:14px}.onboarding-brand strong{font-size:16px}.onboarding-brand img{border-radius:6px}.nav svg,.top-settings svg{width:16px;height:16px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.6}.profile{font-size:12px}.privacy-note{font-size:12px}dialog{border-radius:8px}.dialog-heading h2{font-size:24px;line-height:32px}@media(max-width:1100px){header{padding:0 24px}.content{padding:24px}}@media(max-width:720px){.sidebar{width:100%;padding:16px}.sidebar .nav{height:36px;flex:1;font-size:14px}main{margin-left:0}header{padding:0 18px}.content{padding:24px 18px}.stats{gap:12px}.stats article{padding:12px 0}.onboarding-story h1{font-size:28px;line-height:36px}.onboarding-panel{padding:24px}.onboarding-progress small{font-size:10px}.onboarding-actions .primary{font-size:14px}.brand{width:100%}}

.auth-open>aside,.auth-open>main,.auth-open>#onboarding{display:none!important}#auth-page{position:fixed;inset:0;z-index:30;background:var(--app-background);overflow:auto;padding:32px 6vw;display:flex;flex-direction:column}.auth-brand{display:flex;gap:12px;align-items:center;font-size:16px}.auth-brand img{border-radius:6px}.auth-layout{display:grid;grid-template-columns:1fr 440px;align-items:center;gap:100px;width:100%;max-width:1100px;margin:auto;padding:60px 0}.auth-story h1{font-size:40px;line-height:48px;margin:0 0 24px}.auth-story>p{font-size:16px;line-height:26px;max-width:340px;color:#666}.auth-features{display:flex;flex-direction:column;gap:18px;font-size:14px;margin-top:32px;color:var(--app-purple)}.auth-card{background:white;border:1px solid #ebeef1;border-radius:8px;padding:32px}.auth-tabs{display:flex;border-bottom:1px solid #ebeef1;gap:24px;margin-bottom:28px}.auth-tabs button{background:none;color:#666;font-size:14px;font-weight:600;border-bottom:2px solid transparent;padding:0 0 12px}.auth-tabs button[aria-selected=true]{color:var(--app-purple);border-color:var(--app-purple)}.auth-card h2{font-size:24px;line-height:32px;margin:0 0 8px}.auth-card>p{font-size:14px;line-height:20px;color:#666}.auth-providers{display:flex;flex-direction:column;gap:12px;margin:26px 0}.provider-button{display:flex;justify-content:center;align-items:center;gap:12px;background:white;border:1px solid #d4dee9;border-radius:6px;padding:11px;font-size:14px;font-weight:600}.provider-button svg{height:20px;width:20px}.auth-demo-note{background:#f3f5f7;border-radius:6px;padding:14px;font-size:12px;line-height:18px}.auth-demo-note strong{font-weight:600}.auth-demo-note p{margin:6px 0 0;color:#666}.auth-demo{width:100%;margin-top:18px;min-height:36px}.auth-switch{text-align:center;font-size:13px!important;margin:22px 0 0}.auth-switch button{background:none;color:var(--app-purple);font-size:13px;font-weight:600;padding:0}.auth-feedback{font-size:12px!important;color:var(--app-purple)!important;margin-bottom:0}.auth-feedback:empty{display:none}.auth-footer{display:flex;justify-content:center;gap:22px;font-size:12px;color:#888}.auth-footer a{color:#666;text-decoration:none}.auth-footer a:hover{text-decoration:underline}@media(max-width:800px){#auth-page{padding:24px}.auth-layout{grid-template-columns:1fr;gap:28px;max-width:440px;padding:36px 0}.auth-story h1{font-size:28px;line-height:36px}.auth-story h1 br{display:none}.auth-story p,.auth-features{display:none}.auth-card{padding:24px}.auth-footer{flex-wrap:wrap;gap:14px}.auth-footer span{width:100%;text-align:center}}

.receipt-animation{position:relative;width:340px;height:210px;margin:26px 0 4px;isolation:isolate}.animated-receipt{position:absolute;left:36px;top:4px;width:200px;height:160px;padding:20px;background:white;border:1px solid #e3deed;border-radius:8px;box-shadow:0 8px 25px #14141408;overflow:hidden;animation:receipt-arrive 7s ease-in-out infinite}.receipt-mini-brand{font-size:9px;font-weight:600;letter-spacing:1px;color:var(--app-purple)}.receipt-mini-title{font-size:11px;font-weight:500;margin:12px 0}.receipt-paper-line{width:100%;height:5px;background:#efeaf5;border-radius:3px;margin:8px 0}.receipt-paper-line.short{width:65%}.receipt-mini-total{display:flex;justify-content:space-between;font-size:12px;margin-top:14px;padding-top:9px;border-top:1px dashed #e5dfed}.receipt-mini-total strong{font-weight:600}.scan-beam{position:absolute;inset:0 auto auto 0;width:100%;height:2px;background:var(--app-purple);box-shadow:0 -10px 24px 10px #7f27ff14;animation:receipt-scan 7s ease-in-out infinite}.animated-expense{position:absolute;left:106px;top:124px;display:flex;align-items:center;gap:10px;padding:12px 16px;width:228px;background:white;border:1px solid var(--app-purple-soft);border-radius:6px;box-shadow:0 8px 20px #14141408;animation:expense-arrive 7s ease-in-out infinite}.animated-expense strong{display:block;font-size:12px;font-weight:600}.animated-expense small{font-size:11px;color:#666;margin-top:3px}.expense-check{display:grid;place-items:center;width:26px;height:26px;background:var(--app-purple-wash);color:var(--app-purple);border-radius:50%;font-size:14px}.animation-caption{position:absolute;bottom:0;left:36px;color:#888;font-size:11px}.auth-features{margin-top:20px;gap:12px}@keyframes receipt-arrive{0%,100%{transform:translateY(10px) rotate(-4deg);opacity:0}12%,85%{transform:translateY(0) rotate(-4deg);opacity:1}95%{transform:translateY(-6px) rotate(-4deg);opacity:0}}@keyframes receipt-scan{0%,15%{transform:translateY(0);opacity:0}20%{opacity:1}48%{transform:translateY(155px);opacity:1}52%,100%{transform:translateY(155px);opacity:0}}@keyframes expense-arrive{0%,45%,100%{transform:translateY(12px);opacity:0}57%,85%{transform:translateY(0);opacity:1}95%{transform:translateY(-4px);opacity:0}}@media(prefers-reduced-motion:reduce){.animated-receipt,.animated-expense{animation:none;opacity:1}.animated-receipt{transform:rotate(-4deg)}.scan-beam{display:none;animation:none}}@media(max-width:800px){.receipt-animation{display:none}}

.auth-features>span{display:flex;align-items:center;gap:10px}.auth-features svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.expense-check svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.persona-choice{display:flex;align-items:center;gap:14px}.persona-choice .persona-icon{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;background:#f3f5f7;border-radius:6px;color:#596171}.persona-choice.selected .persona-icon{color:var(--app-purple);background:var(--app-purple-soft)}.persona-icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.persona-choice .persona-copy{flex:1;margin:0}.persona-choice .persona-copy>span{margin-top:4px;font-size:13px;line-height:20px}.persona-choice .persona-indicator{color:var(--app-purple);font-size:20px;margin:0}.onboarding-progress>span{position:relative}.onboarding-progress>span.done small{font-weight:600}#onboarding-body:focus{outline:none}.onboarding-actions{border-top:1px solid #ebeef1;padding-top:22px}.onboarding-panel .ob-toggle{padding:16px 0}.ob-name input:focus,.ob-name select:focus{border-color:var(--app-purple)}

.ob-feature-label{font-size:12px!important;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--app-purple)!important}.onboarding-story h1{font-size:32px;line-height:40px;max-width:430px}.onboarding-story>p{max-width:400px}.ob-feature-animation{position:relative;max-width:380px;height:225px;margin-top:28px}.ob-feature-animation svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.ob-visual-receipt{position:absolute;left:30px;top:0;width:225px;padding:24px;background:white;border:1px solid #ebeef1;border-radius:6px;box-shadow:0 10px 25px #14141408;transform:rotate(-4deg);overflow:hidden;animation:ob-paper-float 5s ease-in-out infinite}.ob-visual-receipt>span{font-size:10px;letter-spacing:.06em;color:var(--app-purple)}.ob-visual-receipt>strong{display:block;font-size:14px;margin:12px 0}.ob-visual-receipt>i{display:block;height:5px;background:#eee;border-radius:3px;margin:10px 0}.ob-visual-receipt>i:nth-of-type(2){width:70%}.ob-visual-receipt>div:not(.ob-scan-line){display:flex;justify-content:space-between;font-size:12px;border-top:1px dashed #ddd;padding-top:12px;margin-top:16px}.ob-scan-line{position:absolute;left:0;top:0;width:100%;height:2px;background:var(--app-purple);box-shadow:0 0 15px #7f27ff66;animation:ob-scan 5s ease-in-out infinite}.ob-floating-result{position:absolute;top:155px;left:90px;display:flex;gap:9px;align-items:center;background:white;border:1px solid var(--app-purple-soft);padding:12px;border-radius:6px;font-size:12px;box-shadow:0 5px 16px #14141408;animation:ob-result 5s ease-in-out infinite}.ob-floating-result svg{color:var(--app-purple);width:18px}.ob-workflow-stack>div{display:flex;gap:14px;align-items:center;background:white;border:1px solid #ebeef1;border-radius:6px;padding:14px;margin-bottom:10px;animation:ob-feature-enter .7s both;animation-delay:var(--delay)}.ob-workflow-stack svg{color:var(--app-purple)}.ob-workflow-stack strong{font-size:14px;font-weight:600}.ob-workflow-stack small{font-size:12px}.ob-preview-profile{width:285px;padding:24px;background:white;border:1px solid #ebeef1;border-radius:6px;animation:ob-paper-float 5s ease-in-out infinite}.ob-preview-profile>svg{display:block;color:var(--app-purple);margin-bottom:12px}.ob-preview-profile>strong{font-size:14px}.ob-preview-line{height:6px;background:#ece9f1;margin-top:15px;border-radius:3px;width:90%}.ob-preview-line.short{width:60%}.ob-preview-pill{display:block;margin-top:20px;padding:7px;background:var(--app-purple-wash);font-size:11px;color:var(--app-purple);border-radius:4px}.ob-preview-organize{background:white;border:1px solid #ebeef1;border-radius:6px;padding:10px 20px}.ob-preview-organize>div{display:flex;align-items:center;gap:10px;font-size:12px;padding:17px 0;border-bottom:1px solid #ebeef1;animation:ob-feature-enter .7s both;animation-delay:var(--delay)}.ob-preview-organize strong{font-weight:500;color:#888;margin-left:auto}.ob-preview-organize i{width:26px;height:15px;border-radius:12px;background:var(--app-purple);position:relative}.ob-preview-organize i:after{content:'';position:absolute;right:2px;top:2px;width:11px;height:11px;background:white;border-radius:50%}.ob-preview-chart{width:330px;height:210px;background:white;border:1px solid #ebeef1;border-radius:6px;padding:20px}.ob-preview-chart>span{font-size:10px;font-weight:600;color:#888}.ob-chart-bars{height:128px;display:flex;gap:17px;align-items:flex-end;border-bottom:1px solid #ebeef1;padding:16px 10px 0}.ob-chart-bars i{flex:1;height:var(--bar-height);background:var(--app-purple-soft);border-radius:4px 4px 0 0;transform-origin:bottom;animation:ob-bar-grow 4s ease-in-out infinite;animation-delay:var(--delay)}.ob-chart-bars i:nth-child(even){background:var(--app-purple)}.ob-chart-labels{display:flex;justify-content:space-between;font-size:10px;margin-top:10px;color:#888}.onboarding-story .ob-feature-caption{font-size:12px;color:var(--app-purple);margin-top:12px}@keyframes ob-paper-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-5px) rotate(-2deg)}}@keyframes ob-scan{0%,10%{transform:translateY(0);opacity:0}20%{opacity:1}65%{transform:translateY(190px);opacity:1}75%,100%{transform:translateY(190px);opacity:0}}@keyframes ob-result{0%,45%,100%{opacity:0;transform:translateY(8px)}55%,90%{opacity:1;transform:translateY(0)}}@keyframes ob-feature-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes ob-bar-grow{0%,100%{transform:scaleY(.7)}45%,80%{transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.ob-feature-animation *{animation:none!important}.ob-floating-result{opacity:1}.ob-scan-line{display:none}}@media(max-width:800px){.ob-feature-animation,.onboarding-story .ob-feature-caption{display:none}.onboarding-story h1{font-size:24px;line-height:32px;margin:0}.onboarding-story .ob-feature-label{display:block;margin:0 0 10px}}
/* Keep feature captions below the full illustration, including wrapped cards. */
.ob-feature-animation:has(.ob-workflow-stack){height:auto;min-height:225px}.ob-workflow-stack{display:flex;flex-direction:column;gap:10px}.ob-workflow-stack>div{margin-bottom:0;min-height:72px;flex-shrink:0}.onboarding-story .ob-feature-caption{margin-top:20px;line-height:20px;clear:both}.ob-workflow-stack small{line-height:18px}

.setup-picker{margin-top:8px}.setup-picker-trigger{display:flex;align-items:center;justify-content:space-between;text-align:left;width:100%;gap:12px;padding:12px;background:white;border:1px solid #d4dee9;border-radius:8px;font-size:14px;font-weight:500;min-height:64px}.setup-picker-trigger:hover{border-color:var(--app-purple);background:#fdfbff}.setup-picker-trigger small{font-size:11px;font-weight:400;line-height:16px;color:#737780;margin-top:4px}.setup-picker-arrow{color:var(--app-purple);font-size:20px}.setup-picker-dialog{width:460px;padding:24px;border-radius:12px;border:1px solid #ebeef1;max-height:80vh}.setup-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.setup-picker-heading h2{font-size:20px;margin:0}.setup-picker-heading button{background:none;font-size:24px;color:#737780}.setup-picker-search{width:100%;border:1px solid #d4dee9;border-radius:7px;padding:11px 12px;font-size:14px}.setup-picker-options{max-height:45vh;overflow:auto;margin-top:14px}.setup-picker-option{display:flex;width:100%;align-items:center;justify-content:space-between;text-align:left;gap:16px;border-radius:7px;background:white;padding:12px;font-size:14px;color:#333;margin-bottom:4px}.setup-picker-option:hover{background:#f6f4fa}.setup-picker-option[aria-pressed=true]{background:var(--app-purple-wash);color:var(--app-purple)}.setup-picker-option small{font-size:11px;font-weight:400;color:#737780;margin-top:3px}.setup-picker-options>p{font-size:13px;color:#737780;padding:12px}@media(max-width:720px){#ob-profile>.form-row{grid-template-columns:1fr}.setup-picker-dialog{padding:20px}.setup-picker-trigger{min-height:60px}}

.ready-success{display:grid;place-items:center;width:40px;height:40px;background:var(--app-purple-wash);color:var(--app-purple);border:1px solid var(--app-purple-soft);border-radius:50%;margin-bottom:18px}.ready-success svg,.ready-workspace svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ready-workspace{border:1px solid #ebeef1;border-radius:10px;margin-top:24px;background:white;overflow:hidden}.ready-profile{display:flex;align-items:center;gap:12px;padding:20px}.ready-profile-icon{display:grid;place-items:center;background:var(--app-purple-wash);color:var(--app-purple);width:40px;height:40px;border-radius:8px;flex-shrink:0}.ready-profile>div{min-width:0;flex:1}.ready-profile strong{font-size:14px;font-weight:600;overflow-wrap:anywhere}.ready-profile small{font-size:12px;margin-top:3px;color:#737780}.ready-badge{background:#eaf6ee;color:#188f5d;padding:3px 8px;border-radius:5px;font-size:11px;font-weight:500}.ready-preferences{display:grid;grid-template-columns:1fr 1fr;background:#fafbfc;border-top:1px solid #ebeef1;border-bottom:1px solid #ebeef1}.ready-preferences>div{padding:14px 20px}.ready-preferences>div+div{border-left:1px solid #ebeef1}.ready-preferences span{display:block;font-size:11px;color:#737780;margin-bottom:5px}.ready-preferences strong{font-size:13px;font-weight:500}.ready-modules{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:20px 14px}.ready-modules>div{text-align:center;padding:10px 2px}.ready-modules svg{color:var(--app-purple);width:21px;height:21px;margin-bottom:8px}.ready-modules strong{display:block;font-size:13px;font-weight:600}.ready-modules small{font-size:10px;color:#737780;margin-top:4px}.ready-tracking{padding:16px 20px;background:#fafbfc;border-top:1px solid #ebeef1}.ready-tracking>span{font-size:11px;color:#737780}.ready-tracking #ob-summary{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px;font-size:12px}.ready-chip{background:white;border:1px solid #e4e0ee;color:#625873;border-radius:5px;padding:4px 8px;font-size:11px}@media(max-width:500px){.ready-profile{padding:16px}.ready-preferences>div{padding:12px 16px}.ready-modules{padding:12px 6px}.ready-modules small{font-size:9px}}

.account-detail{width:min(500px,calc(100vw - 40px));border:1px solid #e7e9ee;border-radius:12px;padding:28px;color:#141414}.account-detail::backdrop{background:#14141455}.account-detail h2{font-size:24px}.account-detail p{color:#687385;font-size:14px}.account-detail .report-row{gap:24px}.account-detail strong{overflow-wrap:anywhere;text-align:right}button:disabled{opacity:.5;cursor:not-allowed}

.auth-continue{color:#7f27ff;text-decoration:underline;font-weight:600}.auth-feedback .secondary{margin-top:12px}

/* Allow account text to shrink within the fixed sidebar. */
.sidebar .profile{min-width:0;width:100%;box-sizing:border-box;overflow:hidden}
.sidebar .profile .avatar{flex-shrink:0}
.sidebar .profile > div{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar .profile small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.receipt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}.receipt-grid[hidden],#expense-table[hidden]{display:none}
.receipt-card{padding:0;display:flex;flex-direction:column;min-width:0;text-align:left;background:#fff;border:1px solid #e7e9ee;border-radius:10px;overflow:hidden;color:#141414;cursor:pointer;transition:border-color .16s,box-shadow .16s}.receipt-card:hover{border-color:#bc99ff;box-shadow:0 4px 16px #14141408}.receipt-card:focus-visible{outline:2px solid #7f27ff;outline-offset:3px}
.receipt-card-preview{height:120px;background:#f8f6fc;display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid #eeeaf4}.receipt-card-preview svg{width:42px;height:50px;fill:white;stroke:#a87de9;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.receipt-card-status{position:absolute;right:12px;top:12px;font-size:11px;font-weight:500;color:#6d4c99;background:#fff;padding:4px 8px;border:1px solid #e9e1f6;border-radius:5px}
.receipt-card-body{display:block;padding:18px;width:100%;box-sizing:border-box}.receipt-card-heading{display:flex;justify-content:space-between;gap:12px;font-size:14px;line-height:22px}.receipt-card-heading strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.receipt-card-heading>span{color:#87909d}.receipt-card-date{display:block;font-size:12px;color:#687385;margin-top:4px}.receipt-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}.receipt-card-bottom>.category-pill{max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.receipt-card-bottom>strong{font-size:14px;font-weight:600;white-space:nowrap}
.receipt-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;margin-top:8px;border-top:1px solid #e7e9ee;font-size:13px;color:#687385}.pagination-controls{display:flex;align-items:center;gap:12px}.pagination-controls label{display:flex;align-items:center;gap:8px}.pagination-controls select{padding:4px 6px;border:1px solid #d5dbe4;border-radius:6px;background:white;color:#141414}.pagination-controls button{white-space:nowrap}#page-position{white-space:nowrap}#empty{padding:36px 20px;text-align:center;color:#687385}
@media(min-width:1600px){.receipt-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.receipt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.receipt-pagination{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.receipt-grid{grid-template-columns:1fr}.pagination-controls{flex-wrap:wrap;gap:8px}.receipt-card-preview{height:110px}}

.receipt-grid{grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:24px}
.receipt-card{border-radius:20px}.receipt-card-preview{width:100%;height:auto;aspect-ratio:3/4;background:#f5f4f7;padding:18px;box-sizing:border-box;overflow:hidden}.receipt-card-preview svg{width:48px;height:58px}.receipt-thumbnail{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 7px #14141412);border-radius:6px}.receipt-card-status{border-radius:20px;z-index:1;right:12px;top:12px}.receipt-card-body{padding:18px}.preview-message{position:absolute;bottom:18px;left:10px;right:10px;text-align:center;font-size:11px;color:#87909d}.has-thumbnail .preview-message{display:none}
@media(min-width:1600px){.receipt-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media(max-width:600px){.receipt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.receipt-card-body{padding:12px}.receipt-card-bottom{flex-wrap:wrap}.receipt-card-bottom>.category-pill{max-width:100%}.receipt-card{border-radius:16px}}

body.expense-drawer-open{overflow:hidden}
.expense-details-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(520px,100vw);height:100dvh;max-width:100vw;max-height:100dvh;box-sizing:border-box;padding:0;border:0;border-left:1px solid #e7e9ee;border-radius:18px 0 0 18px;background:#fff;color:#141414;box-shadow:-12px 0 50px #14141418;animation:expense-drawer-in .24s ease-out;overflow:hidden}
.expense-details-drawer[open]{display:flex;flex-direction:column}.expense-details-drawer::backdrop{background:#14141438;animation:drawer-backdrop-in .24s ease-out}.expense-details-drawer.is-closing{animation:expense-drawer-out .2s ease-in forwards}.expense-details-drawer.is-closing::backdrop{background:transparent;transition:background .2s}
.expense-details-header{padding:26px 28px 22px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid #e7e9ee;flex-shrink:0}.expense-details-header .eyebrow{margin:0 0 8px;font-size:11px}.expense-details-header h2{margin:0;font-size:24px;line-height:32px;font-weight:700;overflow-wrap:anywhere}.drawer-close{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border:1px solid #e7e9ee;background:#fff;border-radius:8px;color:#687385;cursor:pointer}.drawer-close svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}.drawer-close:hover{background:#f5f3fa;color:#7f27ff}.drawer-close:focus-visible{outline:2px solid #7f27ff;outline-offset:3px}
.expense-details-scroll{overflow:auto;flex:1;min-height:0;padding:28px}.expense-details-amount{display:flex;flex-direction:column;gap:8px;background:#f8f5ff;border:1px solid #eee6ff;border-radius:14px;padding:22px;margin-bottom:28px}.expense-details-amount>span:first-child{font-size:13px;color:#687385}.expense-details-amount>strong{font-size:32px;line-height:40px;font-weight:700;overflow-wrap:anywhere}.drawer-sync{font-size:12px;color:#7f27ff}.drawer-section{margin-bottom:28px}.drawer-section h3{font-size:14px;font-weight:600;margin:0 0 14px}.drawer-section dl{margin:0}.drawer-section dl>div{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:13px 0;border-bottom:1px solid #f0f1f4;font-size:14px}.drawer-section dt{color:#687385;flex-shrink:0}.drawer-section dd{margin:0;text-align:right;overflow-wrap:anywhere;font-weight:500}.drawer-notes{margin:0;font-size:14px;line-height:22px;color:#687385;white-space:pre-wrap;overflow-wrap:anywhere}.drawer-receipt{background:#f5f4f7;border:1px solid #e7e9ee;border-radius:14px;padding:20px;color:#687385;font-size:13px}.drawer-receipt img{width:100%;height:auto;max-height:600px;object-fit:contain;border-radius:6px}.expense-details-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 28px;border-top:1px solid #e7e9ee;flex-shrink:0;background:white}.expense-details-footer p{font-size:12px;color:#687385;margin:0}
@keyframes expense-drawer-in{from{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes expense-drawer-out{to{transform:translateX(100%)}}@keyframes drawer-backdrop-in{from{background:transparent}to{background:#14141438}}
@media(prefers-reduced-motion:reduce){.expense-details-drawer,.expense-details-drawer::backdrop,.expense-details-drawer.is-closing{animation:none}}
@media(max-width:600px){.expense-details-drawer{border-radius:0}.expense-details-header{padding:22px 20px}.expense-details-scroll{padding:24px 20px}.expense-details-footer{padding:16px 20px}}

.sidebar-settings{margin-top:8px}.top-plus{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #e4d5ff;background:#f4edff;color:#7f27ff;padding:5px 10px;border-radius:7px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.top-plus svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}.top-plus:hover{background:#ece1ff}.top-plus:focus-visible{outline:2px solid #7f27ff;outline-offset:3px}.plus-dialog h2{font-size:24px;margin-top:0}

.title-with-count{display:flex;align-items:center;gap:12px}.title-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;padding:3px 8px;border-radius:7px;background:#f1e8ff;color:#7f27ff;font-size:13px;font-weight:600;line-height:20px}.title-with-count h1{margin-bottom:0}.page-heading .subtitle{margin-top:8px}

.receipt-dropzone{display:flex;align-items:center;gap:14px;padding:16px 20px;border:1.5px dashed #cdb2ff;background:#faf7ff;border-radius:14px;color:#7f27ff;text-align:left;cursor:pointer;min-width:300px;transition:background .15s,border-color .15s}.receipt-dropzone svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.receipt-dropzone strong{display:block;font-size:14px;font-weight:600;line-height:22px}.receipt-dropzone small{display:block;color:#687385;font-size:12px;line-height:20px}.receipt-dropzone:hover,.receipt-dropzone.drag-active{background:#eee3ff;border-color:#7f27ff}.receipt-dropzone:focus-visible{outline:2px solid #7f27ff;outline-offset:3px}.upload-queue{display:grid;gap:8px;margin:0 0 20px}.upload-queue:empty{display:none}.upload-job{display:flex;align-items:center;gap:16px;border:1px solid #e7e9ee;background:#fff;padding:12px 16px;border-radius:10px;font-size:13px}.upload-job strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500}.upload-job span{color:#7f27ff}.upload-job.upload-error span{color:#b42318}.upload-job button{flex-shrink:0}@media(max-width:800px){.receipt-dropzone{min-width:0;width:100%;box-sizing:border-box}.page-heading{flex-wrap:wrap}.upload-job{flex-wrap:wrap}.upload-job strong{flex-basis:100%}}

/* Keep scan feedback separate from the heading and its drop target. */
.upload-queue{margin:20px 0}.upload-job{min-width:0;gap:12px}.upload-job strong{min-width:0}.upload-job [role=status]{flex-shrink:0}.upload-job .upload-dismiss{display:grid;place-items:center;width:28px;height:28px;padding:5px;border-radius:6px;background:transparent;color:#687385;margin-left:4px}.upload-job .upload-dismiss:hover{background:#f1e8ff;color:#7f27ff}.upload-dismiss svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}.upload-dismiss:focus-visible{outline:2px solid #7f27ff;outline-offset:2px}@media(max-width:800px){.upload-job [role=status]{flex:1;min-width:0;overflow-wrap:anywhere}.upload-job .upload-dismiss{margin-left:auto}}

.receipt-card-status.needs-review{color:#9a6700;background:#fff8e5;border-color:#f2d58a}.drawer-review{background:#fff8e5;border:1px solid #f2d58a;border-radius:10px;padding:16px;margin-bottom:24px;color:#805500}.drawer-review h3{margin:0 0 8px;font-size:14px}.drawer-review ul{margin:0;padding-left:18px;font-size:13px;line-height:1.7}

.header-actions{display:flex;align-items:center;gap:12px}.header-actions .header-icon{display:grid;place-items:center;width:28px;height:28px;min-width:28px;padding:3px;background:transparent;border:0;border-radius:50%;box-shadow:none;color:#425466}.header-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}.header-actions .top-plus svg{width:24px;height:24px;stroke:none}.header-actions .top-plus circle{fill:#7f27ff}.header-actions .top-plus path{stroke:white;stroke-width:1.6;stroke-linecap:round}.header-actions .header-icon:hover{background:#f1e8ff}.header-icon:focus-visible{outline:2px solid #7f27ff;outline-offset:3px}

.receipt-toolbar{display:flex;align-items:center;gap:8px}.receipt-toolbar .search{flex:1;min-width:0;height:46px;padding:0 16px;border:1px solid #e6ecf3;border-radius:12px;gap:12px}.receipt-toolbar .search svg,.toolbar-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;flex-shrink:0}.receipt-toolbar .search input{font-size:14px;color:#425466}.receipt-toolbar .search input::placeholder{color:#697f9e}.toolbar-button{display:flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 14px;border:1px solid #e6ecf3;border-radius:12px;background:#fff;color:#304767;font-size:14px;font-weight:500}.sort-toggle{width:46px;padding:12px}.sort-toggle circle{fill:white}.toolbar-popover-anchor{position:relative}.toolbar-popover{position:absolute;inset:auto;margin:6px 0 0 auto;top:anchor(bottom);right:anchor(right);width:320px;max-width:calc(100vw - 36px);padding:12px;border:1px solid #d4dee9;border-radius:10px;background:white;box-shadow:0 8px 28px #1a2c4426;color:#304767;z-index:20}.toolbar-popover h3{font-size:14px;font-weight:600;margin:0 0 10px}.filter-field{display:block;font-size:13px;font-weight:500;margin:14px 0}.filter-field[hidden]{display:none}.filter-search input,.filter-field select,.filter-field input,.sort-popover select{width:100%;min-width:0;background:white;border:1px solid #d4dee9;border-radius:6px;font:inherit;font-size:13px;color:#425466;padding:8px;margin-top:5px}.filter-search input{margin:0}.filter-date-row{display:flex;gap:8px}.filter-date-row input{width:50%}.filter-clear{background:none;color:#7f27ff;padding:6px 0;font-size:13px}.sort-popover{width:230px}#filter-count{border-radius:5px;background:#f1e8ff;color:#7f27ff;padding:1px 5px;font-size:12px}#filter-count[hidden]{display:none}#filter-toggle{anchor-name:--receipt-filter}#receipt-filters{position-anchor:--receipt-filter}.sort-toggle{anchor-name:--receipt-sort}#receipt-sort{position-anchor:--receipt-sort}@media(max-width:720px){.receipt-toolbar{flex-wrap:nowrap}.receipt-toolbar .search{width:auto}.receipt-toolbar .search input{font-size:12px}.toolbar-button{padding:0 10px}}
/* Divider beneath the page title, matching the Stripe section header. */
#expense-page .page-heading{padding-bottom:20px;border-bottom:1px solid #d4dee9;margin-bottom:20px}

.drawer-attachment .drawer-receipt{min-height:100px;max-height:260px;display:flex;align-items:center;justify-content:center;background:#f6f4f9;border:1px solid #ebe7f2;border-radius:12px;padding:16px;color:#687385;font-size:13px}.drawer-attachment .drawer-receipt img{max-height:228px;width:100%;object-fit:contain}.receipt-attachment-actions{display:flex;gap:8px;margin-top:12px}.receipt-remove{color:#b42318}.receipt-attachment-message{font-size:13px;color:#687385;margin:8px 0 0}.receipt-file-viewer{width:1000px;max-width:calc(100vw - 40px);height:90vh;max-height:90vh;padding:16px;overflow:hidden}.receipt-file-viewer button{display:block;margin-left:auto;margin-bottom:12px}.receipt-file-viewer iframe{width:100%;height:calc(100% - 48px);border:0}.receipt-file-viewer img{display:block;max-width:100%;height:calc(100% - 48px);margin:auto;object-fit:contain}
.drawer-attachment .drawer-receipt{display:block;padding:0;max-height:none;overflow:hidden;border-radius:14px;background:#f6f4f9}.receipt-visual{display:flex;align-items:center;justify-content:center;min-height:140px;height:260px;padding:16px}.drawer-attachment .receipt-visual img{max-height:228px;max-width:100%;width:auto;object-fit:contain;box-shadow:0 3px 12px #24314a12}.drawer-attachment .receipt-attachment-actions{display:flex;align-items:center;justify-content:center;gap:4px;margin:0;padding:8px 12px;border-top:1px solid #e8e5ee;background:#ffffffde}.receipt-attachment-actions .secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:7px 12px;border:0;border-radius:7px;background:transparent;color:#425466;font-size:12px;font-weight:500;box-shadow:none}.receipt-attachment-actions .secondary:hover{background:#eee8f6}.receipt-attachment-actions .receipt-remove{color:#b42318}.receipt-attachment-actions .receipt-remove:hover{background:#fff0ee}.receipt-attachment-actions svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.receipt-attachment-actions button:disabled{opacity:.5;cursor:wait}

.expense-manage-actions{display:flex;gap:8px;width:100%;margin-bottom:12px}.expense-details-footer{flex-wrap:wrap}.expense-delete{color:#b42318}.expense-edit-dialog{width:560px}.expense-edit-dialog h2,.expense-delete-dialog h2{font-size:22px;margin:0}.expense-edit-form label{margin:14px 0}.edit-form-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.edit-error{color:#b42318;font-size:13px}.edit-tax-note{font-size:12px;color:#687385}.confirm-delete{background:#b42318}
.calendar-trigger{display:block;width:100%;margin-top:5px;min-height:36px;padding:8px 12px;text-align:left;border:1px solid #d4dee9;border-radius:6px;background:white;color:#425466;font-size:13px;font-weight:400}.calendar-trigger::after{content:'▦';float:right;color:#697f9e}.receipt-calendar{position:fixed;inset:auto;margin:0;padding:0;display:none;border:1px solid #e6eaf0;border-radius:8px;background:#fff;box-shadow:0 8px 28px #1a2c4426;color:#425466;z-index:100}.receipt-calendar:popover-open{display:grid;grid-template-columns:296px 1fr}.calendar-main{padding:8px}.calendar-month{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.calendar-month strong,.calendar-shortcuts strong{font-size:14px;font-weight:500}.calendar-month button{width:28px;height:28px;background:transparent;color:#425466;font-size:23px;border-radius:5px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekday{font-size:11px;color:#8795ab;text-align:center;padding:7px 0}.calendar-day{height:39px;background:#f6f8fb;border:1px solid #e9edf3;margin:0 -1px -1px 0;color:#425466;font-size:14px}.calendar-day:hover{background:#eee5ff}.calendar-day.selected{background:#7f27ff;color:white;border-color:#7f27ff}.calendar-day[aria-current=date]:not(.selected){color:#7f27ff;font-weight:600}.calendar-shortcuts{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:16px;background:#f6f8fb;border-left:1px solid #e9edf3}.calendar-shortcuts strong{margin-bottom:4px}.calendar-shortcuts button{padding:0;background:transparent;color:#7f27ff;font-size:14px;text-align:left}.filter-date-row .calendar-trigger{width:50%;font-size:12px}.calendar-day:focus-visible,.calendar-trigger:focus-visible{outline:2px solid #9dc8ef;outline-offset:2px}@media(max-width:520px){.receipt-calendar:popover-open{grid-template-columns:minmax(0,1fr)}.calendar-shortcuts{flex-direction:row;flex-wrap:wrap;border-left:0;border-top:1px solid #e9edf3;gap:12px;padding:12px}.calendar-shortcuts strong{width:100%}}

.expense-header-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.expense-header-icon{display:grid;place-items:center;width:32px;height:32px;padding:7px;background:transparent;color:#687385;border:0;border-radius:7px}.expense-header-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.expense-header-icon:hover{background:#f1e8ff;color:#7f27ff}.expense-header-icon.expense-delete:hover{background:#fff0ee;color:#b42318}.expense-header-icon:focus-visible{outline:2px solid #7f27ff;outline-offset:2px}.expense-details-header>div:first-child{min-width:0}.expense-details-header h2{overflow-wrap:anywhere}
.expense-create-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:600px;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;padding:0;border:0;border-left:1px solid #e6ecf3;box-shadow:-12px 0 48px #1a2c4426}.create-expense-form{height:100%;display:flex;flex-direction:column}.create-expense-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e6ecf3}.create-expense-header h2{font-size:22px;margin:0;letter-spacing:-.4px}.create-expense-body{flex:1;overflow:auto;padding:24px}.create-field{display:block;margin:0 0 22px;font-size:14px;font-weight:500;color:#304767}.create-field>span:not(.create-receipt-name){font-weight:400}.create-field .field-title{font-weight:500!important}.create-field small{font-size:12px;line-height:18px;font-weight:400;color:#526887;margin:2px 0 4px}.create-field input:not([type=file]),.create-field select,.create-field textarea{width:100%;padding:7px 10px;min-height:32px;margin-top:5px;background:#fff;border:1px solid #d4dee9;border-radius:6px;font-size:14px;color:#304767;font-weight:400}.create-field textarea{resize:vertical;min-height:70px}.create-money-control{display:flex;border:1px solid #d4dee9;border-radius:6px;overflow:hidden;margin-top:5px}.create-money-control input{flex:1;min-width:0;border:0!important;margin:0!important}.create-money-control select{width:100px;border:0!important;border-left:1px solid #d4dee9!important;border-radius:0!important;margin:0!important}.field-error{display:block;font-size:12px;font-style:normal;color:#d92d4b;font-weight:400;margin-top:4px}.field-error:empty{display:none}.has-error input,.has-error select,.has-error .create-money-control{border-color:#ef345c!important}.create-section-title{margin:24px 0 20px;padding-top:24px;border-top:1px solid #d4dee9}.create-section-title h3{font-size:16px;margin:0;font-weight:600}.create-receipt-upload{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;font-size:14px}.create-receipt-upload svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.create-receipt-name{display:block;font-size:12px;font-weight:400;margin-top:8px;overflow-wrap:anywhere}.create-more summary{color:#7f27ff;font-size:14px;cursor:pointer;margin-bottom:18px}.create-expense-footer{display:flex;justify-content:flex-end;gap:8px;padding:20px 24px;border-top:1px solid #e6ecf3;background:#fff}.create-expense-body .form-row{gap:16px}.create-save-error{font-size:13px;color:#b42318}.create-save-error button{display:block;margin-top:8px}.create-fx-field[hidden]{display:none}.expense-create-dialog>p{padding:24px}.create-field input[type=file]{display:none}
.custom-select-trigger{display:block;position:relative;width:100%;min-height:32px;margin-top:5px;padding:6px 30px 6px 9px;text-align:left;border:1px solid #d4dee9;border-radius:6px;background:#fff;color:#304767;font-size:14px;font-weight:400;line-height:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-select-trigger::after{content:'';position:absolute;right:9px;top:50%;width:10px;height:14px;transform:translateY(-50%);background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 16'%3E%3Cpath d='m2 6 4-4 4 4M2 10l4 4 4-4' fill='none' stroke='black' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}.custom-select-trigger:focus-visible,.custom-select-trigger[aria-expanded=true]{outline:2px solid #b3d9f6;outline-offset:1px}.custom-select-trigger.invalid,.has-error .custom-select-trigger{border-color:#ef345c}.custom-select-trigger:disabled{opacity:.5;cursor:default}.custom-select-options{position:fixed;inset:auto;margin:0;padding:4px 0;display:none;max-height:300px;overflow:auto;border:1px solid #e6eaf0;border-radius:7px;background:white;box-shadow:0 5px 18px #1a2c441c;color:#425466;z-index:110}.custom-select-options:popover-open{display:block}.custom-select-option{display:block;width:100%;padding:8px 9px;border:0;background:white;text-align:left;font-size:14px;font-weight:400;line-height:18px;color:#425466}.custom-select-option:hover,.custom-select-option:focus-visible,.custom-select-option[aria-selected=true]{background:#f5f7fa;outline:0}.custom-select-option:disabled{opacity:.45}.create-money-control .custom-select-trigger{width:100px;flex-shrink:0;margin:0;border:0;border-left:1px solid #d4dee9;border-radius:0}.pagination-controls .custom-select-trigger{width:65px;display:inline-block;margin:0}.filter-field .custom-select-trigger{font-size:13px}
.custom-select-search { display:block; width:calc(100% - 16px); margin:8px; padding:7px 9px; border:1px solid #d4dee9; border-radius:6px; font:inherit; background:#fff; position:sticky; top:8px; z-index:1; }
.custom-select-empty { margin:0; padding:12px; color:#687385; font-size:13px; }
.custom-select-option[hidden], .custom-select-empty[hidden] { display:none; }

.drawer-attachment .receipt-empty { min-height:0; }
.receipt-empty .receipt-visual { height:72px; min-height:72px; padding:12px; }

.exchange-rate-info { border:0; background:transparent; color:#687385; padding:0 0 0 7px; font:inherit; cursor:help; }

.exchange-rate-tooltip { position:fixed; inset:auto; width:280px; max-width:calc(100vw - 32px); margin:0; padding:12px 14px; border:1px solid #e0e5ed; border-radius:9px; background:white; color:#425466; box-shadow:0 6px 24px #24314a20; font-size:13px; line-height:20px; }
.exchange-rate-info { cursor:pointer; }

.expense-edit-dialog.expense-create-dialog { width:600px; }
.settings-heading { padding-bottom:24px; border-bottom:1px solid #e6ecf3; margin-bottom:32px; }
.settings-heading h1 { margin-bottom:8px; }
.settings-group { margin-bottom:48px; }
.settings-group h2 { font-size:16px; font-weight:600; color:#304767; margin:0 0 22px; }
.settings-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:40px; row-gap:28px; }
.settings-link { display:flex; gap:12px; align-items:flex-start; text-align:left; padding:4px 0; border:0; background:transparent; border-radius:8px; font:inherit; cursor:pointer; }
.settings-link strong { display:block; color:#7f27ff; font-size:16px; font-weight:600; line-height:22px; margin-bottom:3px; }
.settings-link small { display:block; font-size:14px; color:#425466; font-weight:400; line-height:21px; max-width:300px; }
.settings-link:hover strong { text-decoration:underline; text-underline-offset:3px; }
.settings-link:focus-visible { outline:2px solid #b4a0ff; outline-offset:6px; }
.settings-icon { display:grid; place-items:center; width:32px; height:32px; flex-shrink:0; border-radius:7px; background:#f5f6fa; color:#7f27ff; }
.settings-icon svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.settings-dialog { width:540px; padding:0; border-radius:14px; overflow:auto; }
.settings-panel-body { padding:24px; }
.settings-intro { color:#526887; font-size:14px; line-height:22px; margin:0 0 22px; }
.settings-values { margin:0 0 24px; }
.settings-values>div { display:flex; justify-content:space-between; gap:20px; padding:14px 0; border-bottom:1px solid #e6ecf3; font-size:14px; }
.settings-values dt { color:#687385; flex-shrink:0; }
.settings-values dd { margin:0; text-align:right; overflow-wrap:anywhere; }
.settings-feature-heading { font-size:14px; font-weight:600; margin:24px 0 12px; }
.settings-toggle { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 0; font-size:14px; border-bottom:1px solid #eef0f4; }
.settings-toggle input { appearance:none; width:34px; height:20px; padding:0; border:0; border-radius:12px; background:#c4ccd8; cursor:pointer; position:relative; }
.settings-toggle input::after { content:''; position:absolute; width:16px; height:16px; top:2px; left:2px; background:white; border-radius:50%; transition:transform .15s; }
.settings-toggle input:checked { background:#7f27ff; }
.settings-toggle input:checked::after { transform:translateX(14px); }
.settings-toggle input:focus-visible { outline:2px solid #a3ceff; outline-offset:3px; }
.settings-save { display:flex; justify-content:flex-end; margin-top:24px; }
.settings-message { font-size:13px; color:#b42318; }
.settings-list-search { width:100%; padding:9px 12px; border:1px solid #d4dee9; border-radius:7px; margin-bottom:16px; font:inherit; }
.settings-saved-list { max-height:45vh; overflow:auto; }
.settings-saved-list>div { display:flex; justify-content:space-between; padding:12px 0; border-bottom:1px solid #eef0f4; font-size:14px; }
.settings-list-count,.settings-empty { font-size:13px; color:#687385; }
@media(max-width:1100px) { .settings-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; } }
@media(max-width:640px) { .settings-grid { grid-template-columns:1fr; } .settings-group { margin-bottom:32px; } }
.settings-organize-row { display:flex; justify-content:space-between; align-items:center; width:100%; padding:15px 0; background:transparent; border:0; border-bottom:1px solid #e6ecf3; color:#425466; font:inherit; cursor:pointer; }
.settings-organize-row:hover { color:#7f27ff; }
.settings-feedback { display:flex; gap:12px; flex-wrap:wrap; }
.settings-external,.settings-feedback a { display:inline-block; text-decoration:none; }

.sidebar-organisation { margin-top:24px; }
.sidebar-organisation .nav-label { margin:0 0 12px; text-transform:uppercase; }
.sidebar { overflow-y:auto; }
.profile-settings { max-width:1000px; }
.profile-settings-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.profile-settings-heading h2 { margin:0; font-size:16px; font-weight:600; color:#304767; }
.profile-details-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px 40px; }
.profile-details-grid>div { display:flex; flex-direction:column; gap:6px; min-width:0; }
.profile-details-grid span { font-size:13px; color:#687385; }
.profile-details-grid strong { font-size:14px; font-weight:500; color:#425466; overflow-wrap:anywhere; }
.profile-settings-form { max-width:560px; }
.profile-settings-actions { display:flex; justify-content:flex-end; gap:8px; padding-top:24px; margin-top:24px; border-top:1px solid #e6ecf3; }
.settings-toggle[hidden] { display:none; }
@media(max-width:900px) { .profile-details-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .profile-details-grid { grid-template-columns:1fr; } }
.profile-account-link { max-width:350px; }
.profile-settings[hidden] { display:none; }
.profile-account-link+.profile-settings { margin-top:28px; padding-top:24px; border-top:1px solid #e6ecf3; }
.settings-back { border:0; background:transparent; color:#7f27ff; padding:0; font:inherit; font-size:14px; cursor:pointer; margin-bottom:10px; }
.settings-back:hover { text-decoration:underline; }
.profile-page-title { margin:0 0 26px; }
.profile-details-page { max-width:none; }
.profile-details-page .profile-settings-heading h2 { font-size:20px; }
.profile-edit-button { display:inline-flex; align-items:center; gap:7px; }
.profile-edit-button svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.profile-detail-rows { margin:28px 0 0; }
.profile-detail-rows>div { display:grid; grid-template-columns:200px minmax(0,1fr); gap:12px; padding:18px 4px; font-size:14px; }
.profile-detail-rows dt { color:#304767; }
.profile-detail-rows dd { margin:0; color:#425466; overflow-wrap:anywhere; }
@media(max-width:600px) { .profile-detail-rows>div { grid-template-columns:120px minmax(0,1fr); } }
.profile-contact-email { margin-top:24px; padding-top:24px; border-top:1px solid #e6ecf3; }
.profile-contact-email h2 { font-size:20px; font-weight:600; margin:0 0 24px; color:#304767; }
.contact-email-address strong { font-size:14px; font-weight:500; color:#425466; overflow-wrap:anywhere; }
.contact-email-address p { color:#687385; font-size:13px; margin:6px 0 16px; }
.contact-email-form { max-width:480px; margin-top:20px; }
.contact-email-actions { display:flex; gap:8px; justify-content:flex-end; }
.forwarding-settings-link { max-width:390px; }
.forwarding-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:28px; }
.forwarding-heading h1 { margin:0; }
.forwarding-body { max-width:1000px; }
.forwarding-address-card { border:1px solid #e6ecf3; border-radius:12px; padding:24px; background:white; }
.forwarding-body h2 { font-size:16px; font-weight:600; color:#304767; margin:0 0 14px; }
.forwarding-copy-row { display:flex; gap:16px; align-items:center; justify-content:space-between; }
.forwarding-copy-row code { color:#425466; font-size:15px; overflow-wrap:anywhere; min-width:0; }
.forwarding-body p,.forwarding-body li { font-size:14px; line-height:22px; color:#526887; }
.forwarding-copy-status { font-size:13px; color:#7f27ff; }
.forwarding-pro { background:#f6f0ff; border-radius:10px; padding:20px 24px; margin-top:24px; }
.forwarding-pro p { margin:0; }
.forwarding-section { margin-top:32px; }
.forwarding-section ol { padding-left:22px; }
.forwarding-section li { padding:5px 0; }
.forwarding-recent article { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; padding:16px 0; border-bottom:1px solid #e6ecf3; }
.forwarding-recent strong { font-size:14px; font-weight:500; color:#304767; }
.forwarding-recent small { display:block; font-size:12px; color:#687385; margin-top:5px; overflow-wrap:anywhere; }
.forwarding-recent article>span { font-size:12px; color:#7f27ff; flex-shrink:0; }
@media(max-width:640px) { .forwarding-copy-row,.forwarding-heading,.forwarding-recent article { align-items:flex-start; flex-direction:column; } }
.organisation-toolbar { display:flex; gap:12px; margin:24px 0; }
.organisation-toolbar input { flex:1; min-width:0; padding:11px 14px; border:1px solid #e6ecf3; border-radius:12px; background:white; font:inherit; font-size:14px; }
.organisation-toolbar .custom-select-trigger { width:150px; }
.organisation-table-wrap { overflow:auto; }
.organisation-row-edit { border:0; background:transparent; color:#7f27ff; cursor:pointer; padding:6px; }
.organisation-empty { padding:60px 24px; text-align:center; color:#687385; }
.organisation-empty h2 { font-size:18px; color:#304767; }
.organisation-pagination { display:flex; justify-content:space-between; gap:20px; margin-top:24px; font-size:13px; color:#687385; align-items:center; }
.organisation-pagination>div { display:flex; align-items:center; gap:12px; }
.organisation-pagination label { display:flex; align-items:center; gap:8px; }
.organisation-pagination .custom-select-trigger { width:65px; }
.organisation-helper { display:block; margin:-14px 0 22px; font-size:12px; color:#526887; }
.organisation-create-dialog input[type=color] { padding:4px; height:36px; width:100px; }
@media(max-width:700px) { .organisation-pagination { align-items:flex-start; flex-direction:column; } .organisation-pagination>div { flex-wrap:wrap; } }
.organisation-item-name { display:inline-flex; align-items:center; gap:10px; }
.organisation-tag-icon { width:18px; height:18px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.create-field[hidden] { display:none; }
.business-logo-preview { display:block; width:80px; height:80px; object-fit:contain; border:1px solid #e6ecf3; border-radius:10px; background:white; margin:12px 0; }
.business-logo-preview[hidden], .business-logo-actions button[hidden] { display:none; }
.business-logo-actions { display:flex; gap:8px; margin-top:10px; }
.profile-business-logo { padding:18px 4px; color:#304767; font-size:14px; }
.profile-danger-zone { margin-top:40px; padding-top:24px; border-top:1px solid #e6ecf3; }
.profile-danger-zone h2 { font-size:20px; color:#304767; margin:0 0 22px; }
.profile-danger-row { display:flex; justify-content:space-between; align-items:center; gap:24px; }
.profile-danger-row strong { font-size:14px; font-weight:500; color:#304767; }
.profile-danger-row p { font-size:13px; color:#687385; margin:6px 0; }
.profile-delete-account { color:#b42318; border-color:#efcbc7; }
.profile-delete-account:hover { background:#fff0ee; }
.account-delete-confirmation { padding:0; width:540px; border-radius:14px; }
.account-delete-confirmation p { font-size:14px; line-height:22px; color:#425466; }
.account-delete-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:24px; flex-wrap:wrap; }
.account-delete-continue { display:inline-flex; align-items:center; background:#b42318; text-decoration:none; }
@media(max-width:640px) { .profile-danger-row { align-items:flex-start; flex-direction:column; } }

.sidebar .profile[role=button]{cursor:pointer;position:relative;padding-right:20px;border-radius:6px}
.sidebar .profile[role=button]::after{content:'⌃';position:absolute;right:3px;color:#63728a;font-size:16px}
.sidebar .profile[role=button]:hover{background:#f5f7fa}
.sidebar-account-menu{position:fixed;inset:auto;margin:0;width:288px;max-width:calc(100vw - 16px);padding:0;background:white;color:#263b57;border:1px solid #d4dee9;border-radius:9px;box-shadow:0 5px 22px #223b5726;overflow:hidden;font-size:14px}
.account-menu-summary{display:flex;flex-direction:column;align-items:center;gap:7px;padding:20px 16px 18px}
.account-menu-summary .avatar{border-radius:5px;background:#f3f5f9;color:#425466;margin-bottom:5px}
.account-menu-summary strong,.account-menu-summary>span:last-child{max-width:100%;overflow-wrap:anywhere;text-align:center}
.account-menu-summary strong{font-size:16px;font-weight:600}
.account-menu-summary>span:last-child{color:#63728a;font-size:13px}
.account-menu-group{padding:7px 8px;border-top:1px solid #d4dee9}
.account-menu-group button,.account-menu-email{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;text-align:left;background:white;color:#263b57;border-radius:5px;font-size:14px}
.account-menu-group button:hover{background:#f4f6fa}
.account-menu-group svg{width:18px;height:18px;fill:none;stroke:#506787;stroke-width:1.6;flex-shrink:0}
.account-menu-email span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Responsive workspace: one navigation model across phone, tablet and desktop. */
.navigation-toggle,.navigation-shade{display:none}
main,.content,.page-heading>div,.create-expense-body,.auth-card,.onboarding-panel{min-width:0}
.receipt-card-preview{aspect-ratio:3/4;height:auto;min-height:0}
.receipt-thumbnail{max-width:100%;max-height:100%;object-fit:contain}
.sidebar-account-menu{max-height:calc(100dvh - 24px);overflow:auto}
.create-expense-body{overscroll-behavior:contain;scroll-padding:20px}
.create-expense-footer{padding-bottom:max(20px,env(safe-area-inset-bottom));flex-shrink:0}
.custom-select-options,.receipt-calendar{max-height:calc(100dvh - 24px);overflow:auto}
@media(max-width:1024px){
 .sidebar{position:fixed;inset:0 auto 0 0;width:260px;height:100dvh;padding:20px;display:flex;flex-direction:column;overflow-y:auto;z-index:50;transform:translateX(-100%);transition:transform .2s ease;background:white}
 .sidebar .brand{width:auto}.sidebar .nav{width:100%;flex:none;height:auto;min-height:40px}.sidebar-bottom{display:block;margin-top:auto}.sidebar .tip{display:none}
 main{margin-left:0}header{padding:0 24px;gap:16px}.breadcrumb{flex:1;min-width:0}
 .navigation-toggle{display:grid;place-items:center;min-width:40px;min-height:40px;background:white;color:#425466;border-radius:6px;font-size:22px}
 .navigation-open .sidebar{transform:translateX(0)}.navigation-shade:not([hidden]){display:block;position:fixed;inset:0;background:#172b4d55;z-index:49}
 .navigation-open{overflow:hidden}.navigation-open .sidebar-account-menu{z-index:60}
 .content{padding:24px}.receipt-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px}
}
@media(max-width:640px){
 header{padding:0 12px;height:60px}.content{padding:20px 16px}h1{font-size:25px;line-height:32px}
 .page-heading{align-items:flex-start;flex-direction:column;gap:20px}.page-heading>div,.receipt-dropzone{width:100%}
 .receipt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.receipt-card-body{padding:12px}.receipt-card-heading strong{overflow-wrap:anywhere}
 .receipt-pagination,.organisation-pagination{gap:12px}.pagination-controls{width:100%;gap:8px;flex-wrap:wrap}.pagination-controls button{min-height:40px}.pagination-controls label{margin-right:auto}
 .receipt-toolbar .search{padding:0 10px}.receipt-toolbar .search input{font-size:16px;width:100%;min-width:0}.toolbar-button{min-width:44px}
 .expense-create-dialog,.expense-edit-dialog.expense-create-dialog,.expense-details-drawer{width:100vw;max-width:100vw;height:100dvh;border-radius:0}
 .create-expense-header,.expense-details-header{padding:16px}.create-expense-body,.expense-details-scroll{padding:20px 16px}.create-expense-footer{padding-left:16px;padding-right:16px}
 .form-row,.create-expense-body .form-row{display:flex;flex-direction:column;gap:0}.form-row>*{width:100%;min-width:0}
 input:not([type=checkbox]):not([type=color]),textarea,.custom-select-search{font-size:16px!important}
 .create-field input,.custom-select-trigger,.calendar-trigger,.auth-providers button{min-height:40px}
 .profile-detail-rows>div{grid-template-columns:1fr;gap:4px}.profile-detail-rows dd{overflow-wrap:anywhere}
 .organisation-toolbar{flex-wrap:wrap}.organisation-toolbar input{flex-basis:100%}.organisation-toolbar .custom-select-trigger{width:100%}
 .settings-grid{grid-template-columns:1fr}.auth-layout,.onboarding-layout{grid-template-columns:minmax(0,1fr);gap:24px}.auth-card,.onboarding-panel{padding:24px 20px}
 #onboarding,.auth-page{padding:20px 16px}.onboarding-progress{margin-bottom:28px}.onboarding-progress small{font-size:10px}
 .toolbar-popover{max-width:calc(100vw - 24px)}.account-delete-confirmation{max-width:calc(100vw - 24px)}
}
@media(max-width:374px){.receipt-grid{grid-template-columns:1fr}.receipt-card-preview{aspect-ratio:4/3}.receipt-toolbar{flex-wrap:wrap}.receipt-toolbar .search{flex-basis:100%}.breadcrumb span{padding:0 6px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(max-width:1024px){.sidebar .nav-label{display:block}.sidebar .sidebar-settings{display:flex}.sidebar .profile{display:flex}.sidebar .nav-label{flex:none}.sidebar .brand{flex:none}}
.custom-select-options{max-height:min(300px,calc(100dvh - 24px))}
/* Touch and short-view ergonomics for secondary screens. */
@media(max-width:640px){
 .header-icon,.expense-header-icon,.icon-button,.receipt-action-button{min-width:44px;min-height:44px}
 .organisation-table-wrap td{white-space:normal;overflow-wrap:anywhere}.organisation-table-wrap td strong{overflow-wrap:anywhere}
 .organisation-table-wrap{overscroll-behavior-x:contain}.organisation-table-wrap button{min-width:44px;min-height:44px}
 .profile-detail-heading{align-items:center;gap:12px}.profile-detail-heading button,.settings-back,.account-menu-group button{min-height:44px}
 .settings-panel-body{padding:20px 16px}.account-delete-actions{flex-direction:column;align-items:stretch}.account-delete-actions>*{text-align:center;justify-content:center;min-height:44px}
 .calendar-shortcuts button{min-height:36px}.calendar-day{min-height:40px}
 .expense-details-header{gap:8px}.expense-details-header h2{font-size:20px;line-height:26px}
 .expense-details-header .expense-header-actions{gap:0}
}
@media(max-height:550px){
 .create-expense-header,.expense-details-header{padding-top:10px;padding-bottom:10px}
 .create-expense-footer,.expense-details-footer{padding-top:10px;padding-bottom:max(10px,env(safe-area-inset-bottom))}
 .sidebar-account-menu{max-height:calc(100dvh - 16px)}
}

@media(min-width:801px) and (max-width:1100px){
 .auth-layout{grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:40px}
 .auth-story h1{font-size:32px;line-height:40px}.onboarding-layout{gap:32px;margin:40px auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .onboarding-story h1{font-size:30px;line-height:38px}.onboarding-panel{padding:24px}
}
@media(max-width:640px){
 #auth-page{padding:20px 16px}.auth-layout{padding:24px 0}.receipt-animation{max-width:100%}
 .auth-story h1{overflow-wrap:anywhere}.auth-footer{padding-bottom:env(safe-area-inset-bottom)}
 .drawer-section dl>div{grid-template-columns:110px minmax(0,1fr)}.drawer-section dd{overflow-wrap:anywhere}
 .receipt-actions{flex-wrap:wrap}.onboarding-note,.ready-preview{overflow-wrap:anywhere}
}
.analytics-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:28px 0 16px;padding-bottom:16px;border-bottom:1px solid #e6ecf3}
.analytics-periods{display:flex;gap:4px;padding:4px;border:1px solid #e6ecf3;border-radius:9px;background:#f7f9fc}
.analytics-periods button{padding:7px 16px;border-radius:6px;background:transparent;color:#425466;font-size:14px}
.analytics-periods button[aria-pressed=true]{background:white;color:#7f27ff;box-shadow:0 1px 4px #263b571c;font-weight:600}
.analytics-date-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.analytics-date-controls strong{min-width:150px;text-align:center;font-size:14px;font-weight:500}.analytics-date-controls button{min-height:36px;min-width:36px}
.analytics-status{font-size:12px;color:#687385;min-height:18px;margin-bottom:24px}
.analytics-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0 32px}
.analytics-summary article{padding:0 0 20px;border-bottom:1px solid #e6ecf3;min-width:0}.analytics-summary article>span{font-size:13px;color:#687385}.analytics-summary strong{display:block;font-size:28px;line-height:36px;font-weight:600;margin-top:10px;overflow-wrap:anywhere}
.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.analytics-wide{grid-column:1/-1}.analytics-card{min-width:0;border:1px solid #e6ecf3;border-radius:12px;padding:24px;background:white}.analytics-card h2{margin:0 0 14px;font-size:16px;font-weight:600;color:#304767}
.analytics-caption,.analytics-chart-caption{font-size:12px;line-height:20px;color:#687385}.analytics-chart-caption{color:#425466;margin:16px 0 0}.analytics-trend{display:block;width:100%;height:auto;margin:12px 0}.analytics-trend text{font-family:inherit;font-size:11px;fill:#687385}.analytics-trend rect{vector-effect:non-scaling-stroke}
.analytics-data{font-size:13px;color:#425466;margin-top:16px}.analytics-data summary{cursor:pointer;color:#7f27ff;padding:8px 0}.analytics-table-wrap{overflow:auto;max-height:320px}.analytics-table-wrap table{white-space:normal}
.analytics-breakdown{display:grid;gap:20px}.analytics-breakdown-row>div:first-child{display:flex;justify-content:space-between;gap:14px;font-size:14px}.analytics-breakdown-row>div:first-child span{min-width:0;overflow-wrap:anywhere}.analytics-breakdown-row strong{font-weight:500;white-space:nowrap}.analytics-track{height:6px;background:#f0f3f8;border-radius:4px;overflow:hidden;margin:8px 0}.analytics-track span{display:block;height:100%;border-radius:4px}.analytics-breakdown-row small{font-size:12px}.analytics-empty{font-size:14px;color:#687385;padding:24px 0}.analytics-warning{padding:14px 16px;background:#fff5df;border:1px solid #f4dfad;border-radius:8px;font-size:13px;color:#795400}
@media(max-width:640px){.analytics-controls{gap:14px;margin-top:24px}.analytics-periods{width:100%}.analytics-periods button{flex:1;padding:8px}.analytics-date-controls{width:100%;gap:8px}.analytics-date-controls strong{flex:1;min-width:120px}.analytics-date-controls button{min-height:40px}.analytics-summary{gap:12px;margin-bottom:24px}.analytics-summary strong{font-size:20px;line-height:28px}.analytics-summary article>span{font-size:12px}.analytics-grid{grid-template-columns:1fr;gap:16px}.analytics-card{padding:18px 16px}.analytics-trend{min-width:0}.analytics-card.analytics-wide{overflow-x:auto}.analytics-wide>.analytics-caption,.analytics-wide>.analytics-chart-caption{position:sticky;left:0}.analytics-breakdown-row>div:first-child{font-size:13px}}
.analytics-bar-target{cursor:pointer;outline:none}.analytics-bar-target:hover,.analytics-bar-target:focus-visible{fill:#7f27ff10;stroke:#7f27ff;stroke-width:1;stroke-dasharray:3 3}
.analytics-bar-popover{position:fixed;z-index:120;pointer-events:none;background:white;color:#304767;border:1px solid #d4dee9;border-radius:8px;padding:10px 14px;box-shadow:0 5px 20px #263b5726;min-width:128px;max-width:calc(100vw - 16px);font-size:12px}
.analytics-bar-popover[hidden]{display:none}.analytics-bar-popover span{display:block;color:#687385;margin-bottom:4px}.analytics-bar-popover strong{font-size:14px;font-weight:600;display:block}

/* Individual billing uses the desktop workspace's typography and controls. */
.billing-dialog{width:min(980px,calc(100vw - 48px));max-height:calc(100dvh - 48px);border-radius:12px;padding:0;overflow:auto}
.billing-dialog[open]{display:flex;flex-direction:column}.billing-dialog .create-expense-header{padding:20px 28px;flex-shrink:0}.billing-dialog .create-expense-header h2{font-size:18px;font-weight:600}
.billing-body{display:grid;grid-template-columns:240px minmax(0,1fr);gap:32px;padding:32px 28px;overflow:auto;min-height:0}.billing-eyebrow{display:flex;align-items:center;gap:7px;color:#8038ff;font-size:12px;font-weight:500}.billing-eyebrow svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}.billing-body h3{font-size:26px;line-height:1.25;letter-spacing:-.6px;margin:16px 0 12px;font-weight:600}.billing-intro{font-size:13px;line-height:1.6;color:#65758a;margin:0}.billing-features{display:grid;gap:13px;color:#35465c;font-size:13px;margin-top:28px}.billing-features div{display:flex;gap:9px;align-items:flex-start}.billing-features div>span{color:#8038ff}
.billing-plans{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}.billing-plans[hidden]{display:none}.billing-plans legend{font-size:12px;color:#65758a;margin-bottom:12px}.billing-plan{border:1px solid #dbe1ec;border-radius:8px;padding:22px 20px;display:flex;flex-direction:column;align-items:stretch;gap:0;cursor:pointer;background:#fff;transition:border-color .15s,box-shadow .15s}.billing-plan:hover{border-color:#b5a0d5}.billing-plan:has(input:checked){border-color:#8038ff;box-shadow:0 0 0 1px #8038ff;background:#fff}.billing-plan-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.billing-plan-heading strong{font-size:15px;font-weight:600}.billing-plan input{accent-color:#8038ff;width:16px;height:16px;flex:none;margin:0}.billing-price{margin:26px 0 18px;font-size:36px;line-height:1.1;font-weight:600;letter-spacing:-1px;white-space:nowrap}.billing-price small{display:inline;margin-left:8px;color:#65758a;font-size:12px;letter-spacing:0;font-weight:400}.billing-plan-description{font-size:13px;line-height:1.5;color:#65758a;min-height:40px}.billing-plan-renewal{display:block;border-top:1px solid #e8edf3;padding-top:18px;margin-top:18px;font-size:12px;line-height:1.9;color:#526079}.billing-plan-selection{display:flex;justify-content:space-between;align-items:center;border:1px solid #dbe1ec;border-radius:6px;padding:8px 10px;margin-top:22px;font-size:12px;font-weight:500;color:#526079}.billing-plan:has(input:checked) .billing-plan-selection{background:#f5efff;border-color:#e5d8ff;color:#8038ff}
.billing-footer{padding:20px 28px;flex-shrink:0;background:#fff;border-top:1px solid #e8edf3}.billing-notice{border-radius:6px;background:#f4edff;color:#6f28d7;padding:9px 12px;font-size:12px;line-height:1.5;margin-bottom:16px}.billing-action-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.billing-status{font-size:12px;color:#65758a;line-height:1.5;margin:0;max-width:440px}.billing-actions{display:flex;align-items:center;gap:16px;flex-shrink:0}.billing-continue,.billing-manage{width:auto;padding:9px 14px;border-radius:6px;white-space:nowrap}.billing-continue:disabled{opacity:.5;cursor:default}.billing-retry{background:none;border:0;color:#8038ff;padding:5px 0;cursor:pointer;font-size:12px}.billing-fine-print{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.billing-terms{font-size:11px;line-height:1.5;color:#788597;margin:0}.billing-legal{display:flex;gap:14px;font-size:11px}.billing-legal a{color:#65758a;text-decoration:none}
@media(max-width:850px){.billing-body{grid-template-columns:1fr;gap:24px}.billing-overview{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.billing-overview h3,.billing-overview .billing-eyebrow,.billing-overview .billing-intro{grid-column:1}.billing-features{grid-column:2;grid-row:1/4;align-self:center;margin:0}.billing-body h3{font-size:24px}.billing-action-row{align-items:flex-start}.billing-status{max-width:280px}}
@media(max-width:600px){.billing-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.billing-dialog .create-expense-header,.billing-body,.billing-footer{padding:18px}.billing-overview{display:block}.billing-features{margin-top:16px;gap:8px}.billing-plans{gap:10px}.billing-plan{padding:16px 12px}.billing-price{font-size:28px;margin-top:20px}.billing-price small{display:block;margin:6px 0 0}.billing-plan-description{font-size:12px;min-height:54px}.billing-plan-renewal{font-size:11px}.billing-plan-selection{padding:8px;font-size:11px}.billing-action-row{flex-direction:column;gap:12px}.billing-status{max-width:none}.billing-actions{width:100%;justify-content:flex-end}.billing-fine-print{align-items:flex-start}.billing-body h3{font-size:23px}}
