.builder-credit{font-size:11px;line-height:1.4;color:var(--ink-soft);margin-top:2px;letter-spacing:.025em}
#header-subtitle{display:none}header h1{font-size:28px!important}header{padding-bottom:8px!important}
button{transition:background .15s,transform .15s,box-shadow .15s;border-radius:12px;font-weight:600}
button:active:not(:disabled){transform:translateY(1px)}
button.accent-bg,.primary-action{background:linear-gradient(155deg,color-mix(in srgb,var(--accent) 85%,white),var(--accent));color:var(--accent-ink);border:1px solid color-mix(in srgb,var(--accent) 90%,black);box-shadow:0 3px 0 color-mix(in srgb,var(--accent) 78%,black),0 5px 12px #142f1f15}
.secondary-action{background:var(--surface);border:1px solid var(--border);color:var(--accent);box-shadow:0 2px 5px #142f1f08}
.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.action-grid button{padding:13px;text-align:left;display:flex;align-items:center;gap:10px;font-size:14px}.action-grid small{display:block;color:var(--ink-soft);font-size:11px;font-weight:400}.action-icon{width:32px;height:32px;background:var(--surface-2);border-radius:10px;display:grid;place-items:center;flex-shrink:0}
.home-add{margin-bottom:12px}.workspace-card{padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:18px}
.workspace-card h2{font-family:Georgia,serif;font-size:21px;font-weight:600}.workspace-card p{font-size:13px;color:var(--ink-soft);line-height:1.55}.workspace-card header{position:static;padding:0!important;background:none!important}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field-grid label,.field-label{display:block;font-size:12px;color:var(--ink-soft)}.field-grid input,.field-grid select,.field-label input,.field-label select{width:100%;margin-top:4px;padding:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--ink)}
.wide-field{grid-column:1/-1}.workspace-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.workspace-actions button{padding:10px 14px}.quiet-button{color:var(--ink-soft);border:1px solid var(--border);background:var(--surface)}
.wallet-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.wallet{padding:13px;border-radius:13px;background:var(--surface-2)}.wallet small{color:var(--ink-soft);font-size:12px}.wallet strong{font-size:22px;display:block;margin-top:5px}.warning{color:var(--bad)!important}.positive{color:var(--good)!important}
.comparison-amount{font-family:Georgia,serif;font-size:27px;font-weight:600;margin:10px 0 3px}.comparison-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid var(--border);font-size:13px}.comparison-row span:last-child{white-space:nowrap}
.filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.filter-grid select{width:100%;padding:8px;font-size:13px!important;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--ink)}
.ledger-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px}.ledger-row h3{font-size:14px;font-weight:600;overflow-wrap:anywhere}.ledger-row small{font-size:11px;color:var(--ink-soft)}.ledger-row .ledger-meta{display:flex;gap:5px;flex-wrap:wrap;margin:5px 0}.ledger-tag{font-size:10px;padding:3px 6px;border-radius:6px;background:var(--surface-2);color:var(--ink-soft)}.ledger-amount{text-align:right;font-weight:600;font-size:14px}.ledger-row button{font-size:12px;min-height:32px;padding:4px 8px}
.scan-dialog{width:min(94vw,680px);padding:0}.scan-dialog>div{padding:20px}.scan-dialog h2{font:600 23px Georgia,serif}.scan-dialog textarea{width:100%;min-height:120px;margin:10px 0;padding:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;color:var(--ink);font-size:13px}.scan-dialog .review-rows{max-height:50vh;overflow:auto;margin-top:14px}.review-row{border:1px solid var(--border);padding:12px;border-radius:12px;margin-bottom:10px}.review-row label{font-size:12px}.review-row input,.review-row select{max-width:100%;width:100%;padding:6px;font-size:13px!important}.review-row input[type=checkbox]{width:20px;min-height:20px}.review-warning{font-size:12px;color:var(--warn);padding:6px 0}.review-footer{position:sticky;bottom:0;background:var(--surface);padding-top:12px;border-top:1px solid var(--border)}
.scan-preview{max-height:220px;max-width:100%;object-fit:contain;display:block;margin:10px auto}.status-line{font-size:13px;color:var(--ink-soft);margin:8px 0;min-height:20px}.statement-help{padding:10px;border-left:3px solid var(--gold);background:var(--surface-2);font-size:12px!important}
details>summary{cursor:pointer;font-size:14px;font-weight:600;min-height:44px;padding:10px 0}.auth-gate{position:fixed;inset:0;z-index:100;background:var(--bg);overflow:auto;display:grid;place-items:center;padding:24px}.auth-box{width:min(100%,420px)}.auth-box h1{font:600 36px Georgia,serif}.auth-box form{margin-top:24px}.auth-box input{width:100%;margin:5px 0 12px;padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.auth-box button{width:100%;padding:12px;margin-top:10px}.auth-box label{font-size:13px}.auth-tabs{display:flex;gap:8px;margin:15px 0}.auth-tabs button{font-size:13px}.auth-error{color:var(--bad);font-size:13px;min-height:22px}.auth-note{font-size:12px;color:var(--ink-soft);line-height:1.6;margin-top:15px}
@media(min-width:850px){body{max-width:1000px!important}main{max-width:900px;margin:auto}nav>div{max-width:900px!important}#tab-dashboard.active{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:18px}#tab-dashboard.active>*{margin-top:0!important}#home-actions,#balance-card,.overview-card,#month-comparison{grid-column:1/-1}.overview-card>.grid{grid-template-columns:repeat(4,1fr)}header{max-width:900px;margin:auto}#view-filter-bar{max-width:400px}#month-nav-bar{max-width:400px}.wallet-grid{grid-template-columns:1fr 1fr}.action-grid{grid-template-columns:1fr 1fr}}
@media(max-width:360px){.field-grid{grid-template-columns:1fr}.home-add span:last-child{display:none}.ledger-row{padding:10px}.wallet strong{font-size:18px}}

body.signed-out > :not(#account-gate):not(script){visibility:hidden}body.signed-out #account-gate{visibility:visible}.auth-gate{background:var(--bg,#f6f8f5)}
