/* Тёмная тема, крупные кнопки под большой палец */
:root{--bg:#0f1220;--card:#1a1f36;--card2:#262c4d;--tx:#eef0ff;--mut:#8f96bf;--ac:#7c6cff;--ok:#3ddc97;--warn:#ffb454}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
body{margin:0;background:var(--bg);color:var(--tx);font:16px/1.4 system-ui,-apple-system,Roboto,sans-serif}
header{padding:calc(env(safe-area-inset-top) + 14px) 18px 4px}
header b{font-size:24px}
header span{display:block;color:var(--mut);font-size:14px;text-transform:capitalize}
main{padding:8px 16px calc(96px + env(safe-area-inset-bottom))}
h2{font-size:18px;margin:18px 0 2px}
.sub{color:var(--mut);font-size:14px;margin:0 0 10px}
.card{background:var(--card);border-radius:18px;padding:14px;margin:12px 0}
.hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:8px}
.fire{background:var(--card2);padding:6px 12px;border-radius:20px;font-weight:700;white-space:nowrap}
.warn{background:#3a2d17;color:var(--warn);padding:10px 12px;border-radius:12px;margin-bottom:10px;font-size:14px}
.row{display:flex;gap:10px;align-items:center;margin:8px 0}
.chk{flex:none;width:52px;height:52px;border-radius:16px;border:2px solid var(--mut);background:none;color:#0f1220;font-size:28px;font-weight:700}
.chk.on{background:var(--ok);border-color:var(--ok)}
.inp,textarea,select{width:100%;min-height:52px;background:var(--card);color:var(--tx);border:2px solid transparent;border-radius:14px;padding:12px 14px;font:inherit}
textarea{min-height:76px;resize:vertical}
.inp:focus,textarea:focus{outline:none;border-color:var(--ac)}
.btns{display:grid;gap:8px}
.btn{min-height:54px;border:0;border-radius:14px;background:var(--card2);color:var(--tx);font:600 16px inherit;padding:10px 14px}
.btn.on{background:var(--ok);color:#0f1220}
.btn.min.on{background:var(--warn)}
.btn.pri{background:var(--ac);color:#fff}
.btn.sm{min-height:44px;width:auto;padding:6px 14px}
.lbl{margin:14px 0 6px;color:var(--mut);font-size:14px}
.rate{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.rate button{min-height:52px;border:0;border-radius:14px;background:var(--card);color:var(--tx);font-size:20px;font-weight:700}
.rate button.on{background:var(--ac)}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.bar{height:10px;background:var(--card2);border-radius:6px;overflow:hidden;margin:8px 0}
.bar i{display:block;height:100%;background:var(--ok)}
.cd{color:var(--warn);font-weight:700}
.topic{display:flex;gap:8px;align-items:center;margin:6px 0}
.topic .chk{width:44px;height:44px;font-size:22px;border-radius:12px}
.topic span{flex:1}
.topic.d span{color:var(--mut);text-decoration:line-through}
.x{background:none;border:0;color:var(--mut);font-size:22px;width:44px;height:44px}
nav{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);background:#151a30;border-top:1px solid #2a3057;padding-bottom:env(safe-area-inset-bottom)}
nav button{background:none;border:0;color:var(--mut);min-height:64px;font:12px inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
nav button i{font-style:normal;font-size:22px}
nav button.on{color:var(--tx)}
nav button.on i{filter:none}
#toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:var(--tx);color:var(--bg);padding:10px 18px;border-radius:20px;opacity:0;transition:.3s;pointer-events:none}
#toast.show{opacity:1}
