:root{--bg: #f6f7fb;--card: #fff;--ink: #1b1d24;--muted: #6a6f7d;--line: #e2e5ee;--brand: #1f4e8c;--brand-ink: #fff;--bad: #b3261e;--ok: #1b7a3d;--warn: #fff7e0;font-family:Heebo,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ink)}*{box-sizing:border-box}html,body{margin:0;background:var(--bg)}body{font-size:16px;line-height:1.45;padding-bottom:env(safe-area-inset-bottom)}h1,h2,h3{margin:0 0 .5rem}h2{font-size:1.35rem}h3{font-size:1.05rem}.splash{text-align:center;margin-top:30vh;color:var(--muted)}.shell{max-width:720px;margin:0 auto;padding-bottom:76px}.top{display:flex;justify-content:space-between;align-items:center;background:var(--brand);color:var(--brand-ink);padding:.7rem 1rem;position:sticky;top:0;z-index:5}.page,.auth{padding:1rem}.auth{max-width:420px;margin:8vh auto 0;text-align:center}.auth form{text-align:right}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1rem;margin:0 0 .9rem}.card.warn{background:var(--warn);border-color:#f0d98a}.card.danger-zone{border-color:#f1c5c2}.field{display:block;margin-bottom:.75rem}.field>span{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.2rem}.field>small,.muted{color:var(--muted)}.small{font-size:.85rem}input,select,textarea{width:100%;padding:.65rem .7rem;font:inherit;border:1px solid #c9cedb;border-radius:8px;background:#fff;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid var(--brand);outline-offset:1px}button,.button{font:inherit;padding:.65rem 1rem;border-radius:8px;border:1px solid #c9cedb;background:#fff;color:var(--ink);cursor:pointer;text-decoration:none;display:inline-block;text-align:center}button.primary,.button.primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}button.big{width:100%;padding:.9rem;font-size:1.1rem}button.danger{background:#fff;color:var(--bad);border-color:var(--bad)}button.link{background:none;border:none;color:var(--brand);padding:.3rem .4rem}button.link.danger{color:var(--bad)}button.link.light{color:#fff}button:disabled{opacity:.55;cursor:default}.row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.lineform{display:grid;grid-template-columns:1fr 70px 100px auto;gap:.4rem;margin-bottom:.5rem}@media(max-width:520px){.lineform{grid-template-columns:1fr 1fr}.lineform input:first-child{grid-column:1 / -1}.grid2{grid-template-columns:1fr}}.list{list-style:none;padding:0;margin:.5rem 0}.item{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.7rem .8rem;background:var(--card);border:1px solid var(--line);border-radius:10px;margin-bottom:.5rem;color:inherit;text-decoration:none}.card .item{border:none;border-bottom:1px solid var(--line);border-radius:0;margin:0;padding-inline:0;background:none}.item.total{font-size:1.15rem;border-bottom:none}.kv{display:flex;justify-content:space-between;padding:.25rem 0}.kv span{color:var(--muted)}.total{margin:.6rem 0 0;font-size:1.1rem}.badge{display:inline-block;font-size:.75rem;padding:.1rem .5rem;border-radius:99px;margin-inline-start:.5rem}.badge.bad{background:#fde7e5;color:var(--bad)}.error{color:var(--bad);margin:.5rem 0}.ok{color:var(--ok)}.banner{background:#fff3cd;padding:.6rem 1rem;font-size:.9rem}.banner.ok{background:#dff3e5;color:var(--ok);cursor:pointer}.actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:.6rem}.tabs{position:fixed;bottom:0;inset-inline:0;max-width:720px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.tabs a{text-align:center;padding:.8rem .2rem;color:var(--muted);text-decoration:none;font-size:.9rem}.tabs a.active{color:var(--brand);font-weight:700;border-top:3px solid var(--brand);margin-top:-1px}
