
:root {
  --bg:#050a12; --card:#121a2b; --card2:#0d1524; --gold:#e8c547; --gold2:#c9a227;
  --text:#f1f5f9; --muted:#94a3b8; --line:rgba(232,197,71,.28);
  --ok:#34d399; --bad:#f87171; --info:#60a5fa; --bottom:68px;
  --font:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font);background:radial-gradient(900px 500px at 100% 0%,rgba(40,70,130,.3),transparent 50%),var(--bg);color:var(--text);min-height:100dvh;padding-bottom:calc(var(--bottom)+env(safe-area-inset-bottom)+12px)}
.hidden{display:none!important}
header{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;padding:14px 16px;background:rgba(5,10,18,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.mark{width:40px;height:40px;border-radius:12px;border:1px solid var(--line);display:grid;place-items:center;font-weight:800;color:var(--gold);font-size:.85rem}
header h1{font-size:1.05rem;color:var(--gold)}
header p{font-size:.72rem;color:var(--muted)}
.wrap{max-width:920px;margin:0 auto;padding:14px}
.hero{background:linear-gradient(145deg,#152238,#0d1524);border:1px solid var(--line);border-radius:18px;padding:16px;margin-bottom:14px}
.hero h2{font-size:1.1rem;margin-bottom:6px}
.hero p{color:var(--muted);font-size:.88rem;line-height:1.45}
.pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.pill{font-size:.68rem;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid var(--line);color:var(--gold)}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:12px}
.card h3{font-size:.95rem;color:var(--gold);margin-bottom:8px}
.muted{color:var(--muted);font-size:.8rem}
.btn{border:1px solid var(--line);background:var(--card2);color:var(--text);border-radius:999px;padding:8px 14px;font-weight:700;font-size:.8rem;cursor:pointer;font-family:inherit}
.btn-gold{background:linear-gradient(145deg,#f0d060,#c9a227);color:#0f172a;border:none}
.btn-sm{padding:6px 10px;font-size:.72rem}
.btn-block{width:100%;border-radius:12px;padding:12px}
.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
label{display:block;font-size:.7rem;font-weight:700;color:var(--muted);margin:8px 0 4px;text-transform:uppercase;letter-spacing:.04em}
input,select,textarea{width:100%;background:#070d18;border:1px solid rgba(148,163,184,.22);color:var(--text);border-radius:10px;padding:10px 12px;font:inherit}
textarea{min-height:90px}
.cli{background:var(--card2);border:1px solid rgba(148,163,184,.12);border-radius:12px;padding:12px;margin-bottom:8px}
.cli strong{display:block}
.check{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:10px;background:#0a1220;margin-bottom:6px}
.check input{width:auto;margin-top:3px}
.check.done{opacity:.55;text-decoration:line-through}
.tag{font-size:.65rem;font-weight:800;padding:2px 8px;border-radius:999px;background:rgba(232,197,71,.12);color:var(--gold)}
.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:40;height:calc(var(--bottom)+env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:rgba(10,22,40,.96);border-top:1px solid var(--line);display:flex}
.bottom-nav button{flex:1;border:0;background:transparent;color:var(--muted);font-size:.62rem;font-weight:700;font-family:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.bottom-nav button.on{color:var(--gold)}
.toast{position:fixed;left:50%;bottom:84px;transform:translateX(-50%);background:#0f172a;border:1px solid var(--line);padding:10px 14px;border-radius:12px;font-size:.85rem;z-index:99;max-width:90vw}
@media(min-width:901px){body{padding-bottom:24px}.bottom-nav{display:none}.desk{display:flex!important;gap:8px;margin-bottom:12px;flex-wrap:wrap}.desk button{border:1px solid var(--line);background:var(--card);color:var(--muted);border-radius:999px;padding:8px 14px;font-weight:700;cursor:pointer;font-family:inherit}.desk button.on{background:var(--gold);color:#0f172a}}
@media(max-width:900px){.desk{display:none!important}}

@media print {
  .bottom-nav, header, .desk, .btn, #toast { display: none !important; }
  body { background: #fff; color: #111; padding: 0; }
  .card, .hero, .cli { border: 1px solid #ccc; box-shadow: none; background: #fff; color: #111; }
  .muted { color: #444; }
}
