:root{color-scheme:light;--paper:#f7f8f4;--ink:#233b36;--muted:#64746d;--line:#dce4dd;--green:#28604f;--danger:#a32f38}html{scroll-padding-top:24px}.admin-sections{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}.admin-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px;margin-top:38px;align-items:start}.admin-settings>section{margin-top:0}.admin-settings h2{margin-bottom:12px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:var(--green);text-underline-offset:4px}button,input,select{font:inherit}.button,button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;padding:12px 18px;background:var(--green);color:white;cursor:pointer;text-decoration:none;font-weight:600}button:disabled,select:disabled{opacity:.55;cursor:wait}:focus-visible{outline:3px solid #b6882a;outline-offset:3px}input,select{display:block;width:100%;padding:12px;border:1px solid #aebdb2;border-radius:8px;background:white;color:var(--ink);margin-top:8px}label{display:block;font-size:.95rem;font-weight:600}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,4vw,2.8rem);letter-spacing:-.04em;line-height:1.15;margin-bottom:16px}h2{font-size:1.25rem;margin-bottom:0}h3{font-size:1rem;margin-bottom:6px}p{line-height:1.6}.brand{display:block;font-size:1.4rem;font-weight:700;letter-spacing:-.04em;color:var(--ink);text-decoration:none}.brand span{display:block;font-size:.85rem;font-weight:400;letter-spacing:0;color:var(--muted);margin-top:7px}.app-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:calc(100vh - 45px)}.sidebar{display:flex;flex-direction:column;padding:34px 24px;border-right:1px solid var(--line);background:#edf1ea;gap:45px}nav{display:grid;gap:10px}nav a{padding:12px;text-decoration:none;border-radius:8px}nav a[aria-current=page]{background:#dce7dc;font-weight:600}.account{margin-top:auto;display:grid;gap:12px;overflow-wrap:anywhere;font-size:.85rem}.main{width:100%;max-width:1020px;padding:54px clamp(24px,5vw,72px)}.page-header,.section-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;font-weight:700;margin-bottom:10px}.eyebrow,.intro{color:var(--muted)}.intro{margin-bottom:40px}.section-header{margin-bottom:18px}section+section{margin-top:38px}.cards{display:grid;gap:12px}.card{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.member-card{display:flex;gap:18px;align-items:center}.member-card>div{flex:1 1;min-width:0;overflow-wrap:anywhere}.member-card p{margin-bottom:0}.muted{color:var(--muted);font-size:.95rem}.badge{font-size:.75rem;background:#edf4ee;border-radius:20px;padding:6px 10px}.badge,.quiet{color:var(--green)}.quiet{background:transparent;padding:9px 0;font-weight:500;text-align:left;justify-content:flex-start}.danger{color:var(--danger)}.add-button{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:var(--green);color:white;font-size:1.7rem;border-radius:9px;text-decoration:none}.form-page{max-width:540px}.form-page+.form-page{margin-top:48px}.back{display:inline-block;margin-bottom:30px;font-size:.9rem}form{display:grid;gap:22px;margin-top:28px}form>button{justify-self:start}.form-page .card{display:grid;gap:20px}.form-page .card p{margin:0}.form-page .card button{justify-self:start}.empty-state{padding:60px 0;max-width:580px}.actions{display:flex;gap:24px;flex-wrap:wrap;align-items:center;margin-top:28px}.message{background:#e7f1e8;color:#244e38;padding:16px 20px;border-radius:9px;margin-bottom:24px;line-height:1.5;overflow-wrap:anywhere}.error{background:#fae9e9;color:#85232e}.household-note{border-top:1px solid var(--line);margin-top:48px;padding-top:20px;font-size:.85rem;color:var(--muted)}.setup-screen{max-width:650px;margin:12vh auto;padding:32px}.setup-screen .brand{margin-bottom:48px}.loading{padding:36px 0;color:var(--muted)}.build-version{padding:14px 24px;color:var(--muted);font-size:.75rem;text-align:right;border-top:1px solid var(--line)}[data-amplify-authenticator]{--amplify-colors-brand-primary-80:var(--green)}.money-page h2{margin-bottom:18px}.nomnom-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.nomnom-page h2{margin-bottom:18px}.nomnom-page .cards{margin-top:18px}.nomnom-page .card{overflow-wrap:anywhere}.nomnom-page .message .quiet{display:block}.shopping-page .page-header{margin-bottom:24px}.shopping-page .page-header h1{margin-bottom:0}.shopping-page .cards{margin-top:18px}.shopping-page .card{overflow-wrap:anywhere}.shopping-page a.card{display:block;color:inherit;text-decoration:none}.shopping-page a.card:hover{border-color:var(--green)}.shopping-page a.card:focus-visible{outline:2px solid var(--green);outline-offset:3px}.shopping-page .card h2{margin-bottom:12px}.shopping-page dl{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,2fr);gap:12px}.shopping-page dd{margin:0}.shopping-page .message .quiet{display:block}.money-page .page-header h1{margin-bottom:0}.money-page .page-header{margin-bottom:24px}.money-balances{margin-top:32px}.money-balance,.money-record{display:flex;align-items:center;justify-content:space-between;gap:20px}.money-balance{margin-bottom:12px}.money-balance p,.money-record p{margin-bottom:0}.money-record{text-decoration:none;color:var(--ink)}.money-record:hover{border-color:var(--green)}.money-record>div{min-width:0;overflow-wrap:anywhere}.money-record>strong{white-space:nowrap}.money-small{font-size:.8rem}.money-filters{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:20px}.money-filters label{flex:1 1;min-width:180px}.money-detail dl{display:grid;grid-template-columns:100px 1fr;gap:12px;margin-bottom:30px}.money-detail dd{margin:0;overflow-wrap:anywhere}.money-detail dt{color:var(--muted)}.money-amount{font-size:1.8rem;font-weight:700}.money-receipt{display:block;max-width:100%;max-height:700px;object-fit:contain;margin-top:16px}.money-note{white-space:pre-wrap;overflow-wrap:anywhere}.money-fields{border:0;padding:0;margin:0;min-width:0;display:grid;gap:22px}.money-people{border:1px solid var(--line);border-radius:10px;padding:16px;display:grid;gap:12px}.money-check,.money-people label{display:flex;gap:12px;align-items:center}.money-page input[type=checkbox]{width:18px;height:18px;flex-shrink:0;margin:0;accent-color:var(--green)}.money-fields>button[type=submit]{justify-self:start}textarea{font:inherit;display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #aebdb2;border-radius:8px;background:white;color:var(--ink);resize:vertical}.auth-screen>[data-amplify-authenticator][data-variation=default]:not(:has(.app-shell)){padding:10vh 20px}@media (max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{flex-direction:row;flex-wrap:wrap;align-items:center;gap:20px;padding:20px;border-right:0;border-bottom:1px solid var(--line)}.brand{font-size:1.2rem}.brand span{display:none}nav{display:flex;gap:4px}.account{margin-left:auto;margin-top:0;gap:0}.account>span{display:none}.main{padding:32px 20px}.member-card{flex-wrap:wrap}.member-card>div{flex-basis:60%}.page-header{align-items:flex-start;flex-wrap:wrap}.empty-state{padding-top:30px}}.filters{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;margin:1rem 0}.calendar-day{padding:.5rem;min-height:6rem;overflow-wrap:anywhere}.calendar-day h2{font-size:1rem}.calendar-day a{display:block;font-size:.8rem;margin:.4rem 0}.dashboard-sections{display:grid;gap:1rem;margin-bottom:1rem}@media (max-width:700px){.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.calendar-weekday{text-align:center;font-weight:600}@media (max-width:700px){.calendar-padding,.calendar-weekday{display:none}}