:root{--bg:#f4f3ef;--card:#ffffff;--ink:#1c2127;--ink-2:#3a3f3c;--muted:#5b605d;--line:#d3d1ca;--line-soft:#e6e4de;--accent:#1c2127;--accent-ink:#ffffff;--brand:#f26b1d;--accent-soft:#fde9dc;--accent-soft-ink:#7a3208;--warn-bg:#fff4e0;--warn-ink:#5c3300;--danger:#7a2424;--disabled:#9aa19d;--radius:14px;--font:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--display:"Space Grotesk","Inter",system-ui,sans-serif;color-scheme:light}*{box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);line-height:1.45}a{color:var(--accent)}a:hover{color:#000}button,input,select{font:inherit;color:inherit}h1,h2,h3{font-family:var(--display);margin:0;line-height:1.15;letter-spacing:-.01em}:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.shell{min-height:100dvh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:max(.75rem,env(safe-area-inset-top)) 1.25rem .75rem}.brand{display:block;line-height:0}.brand img{height:34px;width:auto}.main{flex:1 1;width:100%;max-width:960px;margin:0 auto;padding:.5rem 1.25rem 7rem}.tabs{position:fixed;left:0;right:0;bottom:0;z-index:10;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--card);border-top:1px solid var(--line-soft);padding:6px 4px max(14px,env(safe-area-inset-bottom))}.tabs a{min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:var(--muted);font-size:.7rem;font-weight:500}.tabs a[aria-current=page]{color:var(--ink);font-weight:600}.tabs a[aria-current=page] svg{color:var(--brand)}@media (min-width:900px){.shell{flex-direction:row}.side{position:-webkit-sticky;position:sticky;top:0;height:100dvh;width:220px;flex-shrink:0;display:flex;flex-direction:column;gap:1.5rem;padding:1.25rem .9rem;border-right:1px solid var(--line-soft);background:var(--card)}.side .brand{padding-left:.5rem}.tabs{position:static;display:flex;flex-direction:column;gap:4px;border:0;padding:0;background:transparent}.tabs a{flex-direction:row;justify-content:flex-start;gap:.75rem;padding:0 .75rem;border-radius:12px;font-size:1rem;min-height:46px}.tabs a[aria-current=page]{background:var(--accent-soft)}.topbar.mobile{display:none}.main{padding:2rem 2.5rem 4rem;margin:0}}@media (max-width:899px){.side{display:contents}.side>.brand{display:none}}.card{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--radius);padding:1rem}.stack{flex-direction:column}.row,.stack{display:flex;gap:.75rem}.row{align-items:center}.wrap{flex-wrap:wrap}.grow{flex:1 1;min-width:0}.muted{color:var(--muted)}.small{font-size:.85rem}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.lead{font-size:1rem;color:var(--ink-2);margin:0}.page-title{font-size:1.85rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:0 1.1rem;border-radius:12px;border:1px solid var(--ink);background:var(--card);color:var(--ink);font-weight:600;cursor:pointer;text-decoration:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.block{width:100%;min-height:54px;font-size:1.05rem}.btn:disabled{background:var(--disabled);border-color:var(--disabled);color:#fff;cursor:not-allowed}.btn.ghost{border-color:transparent;background:transparent}.field{display:flex;flex-direction:column;gap:.35rem}.field label{font-weight:600;font-size:.95rem}.input{min-height:50px;padding:0 .9rem;border:1px solid var(--line);border-radius:12px;background:var(--card);font-size:1rem}.input:focus{border-color:var(--accent);outline:none}.choice{display:flex;align-items:center;gap:.75rem;width:100%;text-align:left;padding:.9rem 1rem;border-radius:12px;cursor:pointer;background:var(--card);border:1px solid var(--line)}.choice[aria-pressed=true]{border:2px solid var(--brand);background:var(--accent-soft)}.badge{align-self:flex-start;font-size:.75rem;font-weight:600;color:var(--accent-soft-ink);background:var(--accent-soft);padding:.25rem .5rem;border-radius:6px}.badge.warn,.note{background:var(--warn-bg);color:var(--warn-ink)}.note{padding:.85rem 1rem;border-radius:12px;font-size:.9rem}.note.ok{background:var(--accent-soft);color:var(--accent-soft-ink)}.note.err{background:#f1e4e4;color:var(--danger)}.empty{text-align:center;padding:2.5rem 1.25rem;border:1px dashed var(--line);border-radius:var(--radius);background:var(--card)}.empty h2{font-size:1.2rem;margin-bottom:.35rem}.avatar{width:40px;height:40px;border-radius:20px;background:var(--line-soft);display:inline-flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}