
:root{--bg:#080808;--bg2:#141414;--card:#242424;--red:#C8102E;--red2:#FF2020;--sil:#C0C0C0;--w:#fff;--line:#ffffff1f;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box}html{scroll-padding-top:env(safe-area-inset-top,0px)}
body{margin:0;background:var(--bg);color:var(--w);font:15px/1.5 "Segoe UI",system-ui,sans-serif}
h1,h2,h3{color:var(--sil);margin:0 0 10px;letter-spacing:.02em}
.logo{font:800 22px Impact,"Arial Black",sans-serif;letter-spacing:.08em;color:var(--sil)}.logo b{color:var(--red2)}
.app{display:flex;min-height:100vh}
aside{width:236px;background:var(--bg2);border-right:1px solid var(--line);padding:16px 10px;flex:none;transition:.2s;overflow:auto}
aside.min{width:0;padding:0;border:0;overflow:hidden}
aside .logo{padding:4px 10px 16px}
.nav{display:flex;gap:8px;align-items:center;width:100%;text-align:left;background:none;border:0;color:var(--sil);padding:9px 12px;border-radius:8px;cursor:pointer;font:inherit}
.nav:hover{background:var(--card)}.nav.on{background:var(--red);color:#fff}
main{flex:1;min-width:0;padding:20px 24px}
.top{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px;margin-bottom:12px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
button,.b{font:inherit;cursor:pointer}
.b{background:var(--red);color:#fff;border:0;border-radius:8px;padding:9px 16px;font-weight:600;text-decoration:none;display:inline-block}
.b:hover{background:var(--red2)}.b2{background:none;color:var(--sil);border:1px solid var(--sil);border-radius:8px;padding:8px 14px}
.sm{padding:4px 9px;font-size:13px}
input,select,textarea{width:100%;background:var(--bg);color:#fff;border:1px solid var(--line);border-radius:8px;padding:9px 11px;font:inherit;margin:4px 0 10px}
input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--red2);outline-offset:1px}
label{display:block;color:var(--sil);font-size:13px}
.tag{font-size:12px;border:1px solid var(--sil);color:var(--sil);border-radius:20px;padding:1px 9px}
.tag.r{border-color:var(--red2);color:var(--red2)}
.tbl{width:100%;border-collapse:collapse}.tbl th{color:var(--sil);text-align:left}.tbl td,.tbl th{padding:8px;border-bottom:1px solid var(--line)}
.wrap{overflow-x:auto}
.auth{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 50% 0,#C8102E33,transparent 60%)}
.auth .card{width:min(400px,100%);background:var(--bg2)}
.row{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;align-items:center}
.ov{position:fixed;inset:0;background:#000c;display:grid;place-items:center;z-index:9;padding:16px}.ov .card{width:min(440px,100%);background:var(--bg2);max-height:90vh;overflow:auto}
#toast{position:fixed;right:16px;bottom:16px;background:var(--red);padding:10px 16px;border-radius:8px;z-index:10;display:none}
.ed{display:grid;grid-template-columns:170px 1fr 250px;gap:12px}
.blk{border:1px dashed var(--line);border-radius:8px;padding:10px;margin-bottom:8px;cursor:grab;background:var(--bg2)}
.blk.sel{border:1px solid var(--red2)}.blk.off{opacity:.45}
.vip{border:1px solid var(--sil);background:linear-gradient(135deg,#141414,#2a0a10)}
@media(max-width:800px){.ed{grid-template-columns:1fr}aside{position:fixed;z-index:5;height:100%}main{padding:14px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media(prefers-color-scheme:light){:root{color-scheme:dark}}

/* Enhanced premium experience */
:root{--shadow:0 18px 48px #0008}body{background:radial-gradient(ellipse at 70% -10%,#3d0815 0,transparent 38%),var(--bg)}.card{background:linear-gradient(150deg,#252525,#171717);box-shadow:var(--shadow);border-radius:16px}.nav{transition:.15s}.nav.on{box-shadow:0 6px 20px #C8102E55}.b{box-shadow:0 5px 16px #C8102E40}.top{padding-bottom:12px;border-bottom:1px solid var(--line)}.hero{padding:34px;border-radius:18px;background:linear-gradient(115deg,#3c0a16,#151515 58%);border:1px solid #9a203b}.hero h1{font-size:clamp(24px,4vw,40px);color:white}.muted{color:#aaa}.kpi{font-size:32px;font-weight:800;color:var(--red2)}.ed{grid-template-columns:180px minmax(0,1fr) 270px}.blk{padding:18px}.pill{border:1px solid #c8102e88;border-radius:99px;padding:4px 10px;color:#ff858f;font-size:12px}.lesson{padding:12px;border-bottom:1px solid var(--line)}.actionrow{display:flex;gap:6px;flex-wrap:wrap}.error{color:#ff8997}.success{color:#7ee5ac}.notice{border-left:3px solid var(--red);padding:12px;background:#C8102E19;margin:12px 0}.empty{padding:24px;color:#aaa;text-align:center}.auth .card{width:min(440px,100%)}@media(max-width:800px){.ed{grid-template-columns:1fr}aside{width:240px}main{padding:14px}.grid{grid-template-columns:1fr}}
