/* Mobile-first, Dark/Light automatisch */
:root{--bg:#f6f6f4;--card:#fff;--tx:#1b1b1a;--mu:#6b6b66;--bd:#e2e2dd;--ac:#2f7d4f;--on:#fff;--er:#b3261e;--okbg:#e4f3ea;--okt:#1d5a37}
@media (prefers-color-scheme:dark){:root{--bg:#121212;--card:#1d1d1c;--tx:#ececea;--mu:#9a9a94;--bd:#33332f;--ac:#4fae77;--on:#0c1a12;--er:#f2b8b5;--okbg:#17301f;--okt:#a8dcbd}}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--tx);font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
body{padding:env(safe-area-inset-top) 12px calc(24px + env(safe-area-inset-bottom));max-width:520px;margin:0 auto}
h1{font-size:19px;font-weight:600;margin:0}
h2{font-size:17px;margin:0 0 4px}
header{display:flex;justify-content:space-between;align-items:center;padding:14px 4px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:12px;margin-bottom:12px}
.muted{color:var(--mu)}.small{font-size:13px}.err{color:var(--er);min-height:1.5em}
.row{display:flex;gap:8px;align-items:center;margin-top:8px}
.row.between{justify-content:space-between;margin:4px 4px 6px}
textarea,input,select{width:100%;font:inherit;color:var(--tx);background:var(--bg);border:1px solid var(--bd);border-radius:10px;padding:10px}
textarea{resize:vertical;margin-top:6px}
input{margin-top:8px}
select{flex:1;width:auto}
button{font:inherit;color:var(--tx);background:transparent;border:1px solid var(--bd);border-radius:10px;padding:10px 12px;min-height:44px;cursor:pointer}
.row>button{flex:1}
button.primary{width:100%;background:var(--ac);color:var(--on);border:0;font-weight:600;margin-top:10px}
button.icon{min-height:44px;min-width:44px;font-size:22px;padding:0;border:0}
button:active{transform:scale(.98)}
.list{padding:0;overflow:hidden}
.item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid var(--bd)}
.item:first-child{border-top:0}
.item input{width:20px;height:20px;margin:0;flex:none}
.item .n{flex:1;min-width:0;overflow-wrap:anywhere}
.item .q{color:var(--mu);font-size:13px;white-space:nowrap}
.item.off .n{text-decoration:line-through;color:var(--mu)}
.item .ban{min-height:36px;min-width:36px;padding:0;border:0;font-size:16px;color:var(--mu)}
.item .ban.on{color:var(--er)}
.empty{padding:14px;color:var(--mu);font-size:14px}
.msg{margin:10px 0 0;padding:10px 12px;border-radius:10px;background:var(--okbg);color:var(--okt);font-size:14px}
.msg.bad{background:transparent;border:1px solid var(--er);color:var(--er)}
.screen{min-height:90vh;display:flex;flex-direction:column;justify-content:center;gap:4px}
.screen input{text-align:center;font-size:22px;letter-spacing:.3em}
[hidden]{display:none!important}
dialog{border:1px solid var(--bd);border-radius:16px;background:var(--card);color:var(--tx);width:min(92vw,420px);padding:16px}
dialog::backdrop{background:rgba(0,0,0,.45)}
hr{border:0;border-top:1px solid var(--bd);margin:14px 0 0}
#toast{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));background:var(--tx);color:var(--bg);border-radius:12px;padding:8px 8px 8px 14px;display:flex;justify-content:space-between;align-items:center;max-width:496px;margin:0 auto}
#toast button{color:var(--bg);border-color:var(--bg);min-height:36px}
