/* Общий стиль новых разделов хаба: кабинет, календарь, админ-панель */
:root{--bg:#080a12;--card:#121623cc;--solid:#121623;--line:#262c40;--tx:#e8eaf3;--mut:#8a91a8;--gold:#ffd23f;--ok:#46d39a;--bad:#ff6a50;--blue:#5eb6ff;--vio:#8b7bff;--ff:system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{color-scheme:dark}
body{margin:0;min-height:100vh;color:var(--tx);font:15px/1.55 var(--ff);background:var(--bg);overflow-x:hidden}
body::before{content:"";position:fixed;inset:-20%;z-index:-1;pointer-events:none;background:radial-gradient(620px 420px at 10% 5%,rgba(94,182,255,.18),transparent 65%),radial-gradient(600px 420px at 92% 15%,rgba(139,123,255,.18),transparent 65%),radial-gradient(640px 440px at 50% 105%,rgba(255,210,63,.1),transparent 65%)}
a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 18px 90px}
.top{display:flex;align-items:center;gap:14px;padding:18px 0 8px;flex-wrap:wrap}
.top h1{margin:0;font-size:clamp(22px,4vw,32px);letter-spacing:.5px}
.top .sp{flex:1}
.back{text-decoration:none;font-weight:700;font-size:13px;color:var(--mut);border:1px solid var(--line);border-radius:10px;padding:8px 14px;background:rgba(18,22,35,.7)}
.back:hover{color:var(--gold);border-color:var(--gold)}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;backdrop-filter:blur(8px)}
.card h3{margin:0 0 12px;font-size:16px}
.grid{display:grid;gap:14px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.g4{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.g2,.g3{grid-template-columns:1fr}}
.stat{padding:16px 18px;border-radius:16px;border:1px solid var(--line);background:var(--card)}
.stat b{display:block;font-size:30px;line-height:1.1;color:var(--c,var(--gold))}.stat span{color:var(--mut);font-size:13px}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0}
.tabs button,.chip,.btn{font:700 13px var(--ff);color:var(--tx);border:1px solid var(--line);background:rgba(18,22,35,.8);border-radius:999px;padding:8px 15px;cursor:pointer;transition:.18s}
.tabs button:hover,.chip:hover,.btn:hover{border-color:var(--gold);color:var(--gold)}
.tabs button.on,.chip.on{background:rgba(255,210,63,.12);border-color:var(--gold);color:var(--gold)}
.btn{border-radius:10px}.btn.p{background:linear-gradient(135deg,var(--gold),#ff9f43);color:#111;border:0}.btn.p:hover{filter:brightness(1.08);color:#111}
.btn.d{border-color:rgba(255,106,80,.5);color:var(--bad)}.btn.d:hover{background:rgba(255,106,80,.12);border-color:var(--bad);color:var(--bad)}
.btn:disabled{opacity:.5;cursor:default}
.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid var(--line);color:var(--mut)}
.badge.ok{color:var(--ok);border-color:rgba(70,211,154,.4)}.badge.bad{color:var(--bad);border-color:rgba(255,106,80,.45)}.badge.gold{color:var(--gold);border-color:rgba(255,210,63,.45)}
.muted{color:var(--mut)}.empty{padding:26px;text-align:center;color:var(--mut)}
table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line)}th{color:var(--mut);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.6px}
tr:last-child td{border-bottom:0}.tw{overflow-x:auto}
input,textarea,select{font:14px var(--ff);color:var(--tx);background:rgba(8,10,18,.7);border:1px solid var(--line);border-radius:10px;padding:9px 12px;width:100%}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--gold)}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pos{color:var(--ok);font-weight:700}.neg{color:var(--bad);font-weight:700}
#toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,20px);opacity:0;z-index:99999;padding:11px 20px;border-radius:12px;background:#1a1f33;border:1px solid var(--gold);font-weight:600;transition:.25s;pointer-events:none;max-width:90vw}
#toast.on{opacity:1;transform:translate(-50%,0)}
.gate{min-height:60vh;display:grid;place-items:center;text-align:center}.gate .card{max-width:420px}.gate h2{margin:6px 0}.gate p{color:var(--mut)}
.ov{position:fixed;inset:0;z-index:9000;display:none;place-items:center;background:rgba(4,6,12,.72);backdrop-filter:blur(5px);padding:16px}.ov.on{display:grid}
.ov .box{width:min(460px,100%);background:var(--solid);border:1px solid var(--line);border-radius:18px;padding:22px;max-height:90vh;overflow:auto}
.ov h3{margin:0 0 12px}.ov label{display:block;margin:10px 0 4px;color:var(--mut);font-size:13px}
.av{width:84px;height:84px;border-radius:50%;border:3px solid var(--gold);object-fit:cover;background:#1a1f33}
.sk{height:90px;border-radius:16px;background:linear-gradient(90deg,#141828,#1b2036,#141828);background-size:200% 100%;animation:sk 1.2s infinite}@keyframes sk{to{background-position:-200% 0}}
