:root{--ink:#1b2236;--muted:#5b6478;--brand:#1E2761;--accent:#3B5BDB;--bg:#f6f7fb;--card:#fff;--line:#d9deea;--soft:#eef1f8;--ok:#1a7f45;--warn:#a65b00;--bad:#b3261e}
@media (prefers-color-scheme:dark){:root{--ink:#e8ebf3;--muted:#9aa3b8;--brand:#9db4ff;--accent:#7b93ff;--bg:#0f121b;--card:#171b27;--line:#2a3042;--soft:#1e2333;--ok:#4cc38a;--warn:#f0b35a;--bad:#ff8a80}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 -apple-system,Segoe UI,Helvetica,Arial,sans-serif}
.top,.foot{max-width:640px;margin:0 auto;padding:18px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.logo{font-weight:700;font-size:1.3rem;color:var(--brand);text-decoration:none}
nav button,nav a{margin-left:14px}
main{max-width:640px;margin:0 auto;padding:0 16px 24px}
.foot{font-size:.85rem;color:var(--muted);justify-content:flex-start}.foot a{color:var(--muted);margin-right:14px}
h1{font-size:1.7rem;line-height:1.2;color:var(--brand);margin:.2em 0 .4em}h2{font-size:1.15rem;color:var(--brand);margin:1.2em 0 .3em}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px;margin:12px 0}.card.narrow{max-width:520px;margin:32px auto}
.muted{color:var(--muted)}.small{font-size:.85rem}
.btn,button.btn{display:inline-block;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:8px;padding:10px 18px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;margin:6px 8px 6px 0}
.btn.secondary{background:transparent;color:var(--accent)}.btn:disabled{opacity:.45;cursor:not-allowed}
button.link,a.link{background:none;border:0;color:var(--muted);font:inherit;cursor:pointer;text-decoration:underline;padding:0}
ul.plain{padding-left:1.1em;margin:.4em 0}ul.plain li{margin:.25em 0}
.check{display:flex;gap:10px;align-items:flex-start;margin:10px 0}.check input{margin-top:.3em;width:1.1em;height:1.1em}
.row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}@media (max-width:480px){.row{grid-template-columns:1fr}}
.stat{background:var(--soft);border-radius:10px;padding:12px}.stat b{display:block;font-size:1.5rem}.stat span{font-size:.8rem;color:var(--muted)}
.bar{height:12px;background:var(--soft);border-radius:8px;overflow:hidden;border:1px solid var(--line)}.bar>i{display:block;height:100%;background:var(--accent);width:0;transition:width .4s}
.notice{border-left:4px solid var(--warn);background:var(--soft);padding:10px 14px;border-radius:6px;margin:12px 0}.notice.ok{border-color:var(--ok)}.notice.bad{border-color:var(--bad)}
input[type=text],textarea{width:100%;font:inherit;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink)}
label.f{display:block;font-size:.85rem;color:var(--muted);margin:10px 0 3px}
table.t{width:100%;border-collapse:collapse;margin:8px 0}table.t td,table.t th{text-align:left;padding:7px 4px;border-bottom:1px solid var(--line);font-size:.95rem}
.subj{font-weight:600;overflow-wrap:anywhere}.from{color:var(--muted);font-size:.85rem;overflow-wrap:anywhere}
.price{font-size:2.2rem;font-weight:700;color:var(--brand)}
