:root{color-scheme:light;--bg:#f6f1e7;--bg-strong:radial-gradient(circle at top right,rgba(230,156,87,0.2),transparent 38%),linear-gradient(180deg,#f6f1e7,#efe6d8);--surface:rgba(255,251,245,0.9);--surface-strong:#fff9f0;--text:#24190d;--muted:#675641;--border:rgba(72,49,20,0.12);--brand:#c45e28;--brand-deep:#6a2c12;--accent:#ffd17f;--warning:#cf6d26;--shadow:0 18px 40px rgba(88,54,21,0.12);--radius:22px}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:var(--bg-strong);color:var(--text);font-family:Georgia,Times New Roman,serif}a{color:inherit;text-decoration:none}button{font:inherit}.shell{max-width:1180px;margin:0 auto;padding:28px 18px 64px}.shell__header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px;margin-bottom:24px}.shell__header h1{margin:0;font-size:clamp(2.2rem,5vw,4.4rem);line-height:.96}.shell__summary{max-width:620px;margin:8px 0 0;color:var(--muted)}.eyebrow{margin:0 0 8px;color:var(--brand-deep);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.nav{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}.button,.nav__link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:1px solid transparent;border-radius:999px;background:var(--brand);color:#fff9f0;font-weight:700;cursor:pointer;transition:transform .12s ease,background-color .12s ease}.button:hover,.nav__link:hover{transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.6;transform:none}.button--secondary{background:var(--brand-deep)}.button--ghost{background:transparent;color:var(--brand-deep);border-color:rgba(106,44,18,.2)}.page-grid{grid-template-columns:1.3fr 1fr}.page-grid,.stack{display:grid;grid-gap:18px;gap:18px}.card{padding:22px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow)}.card--feature{background:linear-gradient(145deg,rgba(255,249,240,.95),rgba(255,239,211,.95))}.card h2,.hero h2{margin:0 0 12px;font-size:clamp(1.8rem,3vw,3rem);line-height:1}.card p,.hero p{margin-top:0}.action-grid,.hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.entry-form{display:grid;grid-gap:14px;gap:14px;margin-top:18px}.entry-receipt-form{display:grid;grid-gap:10px;gap:10px;margin-top:12px;max-width:320px}.session-box{max-width:360px;padding:18px}.session-box__text{margin-bottom:10px;font-weight:700}.session-box__actions{display:flex;flex-wrap:wrap;gap:10px}.entry-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.field{display:grid;grid-gap:8px;gap:8px}.field span{font-size:.92rem;font-weight:700;color:var(--brand-deep)}.field input,.field select,.field textarea{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-strong);color:var(--text);font:inherit}.field textarea{resize:vertical}.field--checkbox{grid-template-columns:auto 1fr;align-items:center}.field--checkbox input{width:18px;height:18px;margin:0}.field--checkbox span{color:var(--text);font-weight:500}.alert{margin:0;padding:12px 14px;border-radius:14px;font-weight:700}.alert--success{background:rgba(99,140,76,.14);color:#2e5e1d}.alert--error{background:rgba(207,109,38,.12);color:var(--warning)}.list{display:grid;grid-gap:12px;gap:12px;margin:0;padding:0;list-style:none}.list__row{display:flex;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--border)}.list__row:last-child{padding-bottom:0;border-bottom:0}.list__actions{display:grid;justify-items:end;grid-gap:8px;gap:8px}.list__row p,.metric__label,.muted{color:var(--muted)}.list__row strong,.list__row--ledger strong{display:block;margin-bottom:4px}.ledger-amount{display:grid;justify-items:end;grid-gap:4px;gap:4px;text-align:right}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.metric{display:grid;grid-gap:6px;gap:6px}.metric__value{font-size:clamp(1.8rem,4vw,3rem);font-weight:700;line-height:.95}.badge{display:inline-flex;align-items:center;height:-moz-fit-content;height:fit-content;padding:6px 10px;border-radius:999px;background:rgba(106,44,18,.08);color:var(--brand-deep);font-size:.82rem;font-weight:700}.badge--warning{background:rgba(207,109,38,.12);color:var(--warning)}.balance-copy{font-size:1.1rem;font-weight:700}@media (max-width:900px){.entry-form__grid,.metric-grid,.page-grid{grid-template-columns:1fr}.shell{padding-inline:14px}}