:root{color-scheme:dark;--bg:#0b0b18;--surface:#141527;--surface2:#1c1d33;--line:#333448;--purple:#9567ff;--pale:#cbb4ff;--text:#f3f2ff;--muted:#aaaac0;--green:#44e2a0;--red:#ff708b;font-family:Inter,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 100% -10%,#291950 0,transparent 41%),var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app{display:flex;min-height:100vh}.sidebar{width:254px;flex-shrink:0;background:#111121;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:25px 15px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:5px 10px 35px}.brand-icon{width:45px;height:45px;border-radius:14px;background:#332154;display:grid;place-items:center;font-size:27px}.brand strong{font-size:19px;letter-spacing:.02em}.brand small{font-size:9px;display:block;letter-spacing:.3em;color:var(--pale);margin-top:3px}.nav-label{padding:6px 15px;color:#77778c;font-size:10px;letter-spacing:.25em}nav{display:grid;gap:7px}nav .nav{display:block;width:100%;text-align:left;padding:14px 15px;border:0;border-radius:10px;color:#bfbcd0;background:transparent;font-weight:600}nav .nav:hover{background:#23223b;color:white}nav .nav.active{color:white;background:linear-gradient(90deg,#6d42c4,#352353);box-shadow:inset 3px 0 0 #bda4ff}.sidebar-bottom{margin-top:auto;color:var(--muted);font-size:12px;padding:10px;line-height:2.5}.dot{display:inline-block;width:8px;height:8px;background:#f7be56;border-radius:50%;margin-right:4px}.dot.online{background:var(--green);box-shadow:0 0 14px #44e2a088}.link{background:transparent;color:var(--pale);border:0;padding:0;display:block;font-size:12px}.main{padding:36px clamp(20px,4vw,60px);width:100%;max-width:1800px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:20px}.eyebrow{color:var(--purple);font-weight:800;letter-spacing:.23em;font-size:11px;margin:0 0 10px}.topbar h1{margin:0;font-size:30px;letter-spacing:-.03em}.top-actions{display:flex;gap:16px;align-items:center}.server-pill,.pill{display:inline-block;background:#24203e;border:1px solid #493b6b;color:var(--pale);border-radius:99px;padding:7px 11px;font-size:12px}.time-label{color:var(--muted);font-size:12px}.tab{display:none}.tab.active{display:block}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:22px}.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{background:linear-gradient(150deg,#24213c,#161728 70%);border:1px solid #3a3550;border-radius:17px;padding:24px;min-height:150px}.metric span{font-size:10px;color:var(--muted);font-weight:800;letter-spacing:.12em;display:block}.metric strong{display:block;font-size:29px;color:#e6d9ff;margin:19px 0 12px}.metric small{color:#9998af}.cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.cols.wide-left{grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr)}.panel{background:linear-gradient(155deg,#1a1a2e,#111321);border:1px solid var(--line);border-radius:18px;padding:23px;min-width:0}.panel h2{font-size:17px;margin:0}.panel h3{font-size:14px;margin:22px 0 10px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px}.status-list{display:grid;gap:12px}.status-line{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 0;gap:20px;font-size:13px}.status-line small{color:var(--muted);text-align:right;max-width:60%;overflow-wrap:anywhere}.ok{color:var(--green)}.bad{color:var(--red)}.quick{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quick button,.ghost,form button{border:1px solid #514a75;background:var(--surface2);color:var(--text);border-radius:10px;padding:12px;font-size:13px;font-weight:650}.quick button:hover,.ghost:hover,form button:hover{border-color:var(--purple);background:#30244c}.hint{color:var(--muted);font-size:12px;line-height:1.7;margin-top:18px}.muted{color:var(--muted)}input,textarea,select{background:#0f1020;border:1px solid #404156;color:var(--text);padding:11px 12px;border-radius:9px;outline:none;width:100%;margin-top:6px;min-width:0}input:focus,select:focus,textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #9567ff20}label{display:block;font-size:12px;color:var(--muted)}.form{display:grid;gap:12px}.form button.primary,.primary{background:linear-gradient(110deg,#8f55f0,#5c3ba3);border-color:transparent;font-weight:800;color:white}.form button.primary:hover,.primary:hover{filter:brightness(1.13)}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.channel-list{overflow-y:auto;max-height:680px;margin-top:16px}.category-label{font-size:11px;color:var(--pale);font-weight:800;letter-spacing:.08em;margin:19px 0 8px}.channel-button{display:flex;justify-content:space-between;width:100%;border:0;background:transparent;color:#bdbbd0;padding:9px 10px;border-radius:8px;text-align:left;font-size:13px}.channel-button:hover,.channel-button.selected{background:#312445;color:white}.channel-button em{font-size:10px;color:#9a97b2;font-style:normal}.messages{background:#0d0e1a;border:1px solid #292a40;min-height:280px;max-height:420px;overflow:auto;padding:16px;border-radius:10px;margin-bottom:16px}.msg{padding:9px 0;border-bottom:1px solid #242438;font-size:13px;word-break:break-word;white-space:pre-wrap}.msg strong{color:var(--pale)}.msg time{font-size:10px;color:var(--muted);margin-left:9px}.msg p{margin:6px 0 0}.date-range{display:flex;gap:10px;margin-bottom:18px}.date-range>*{flex:1}.event-list{display:grid;gap:10px;max-height:670px;overflow:auto}.event{border:1px solid #34334b;border-radius:11px;padding:14px;display:flex;justify-content:space-between;gap:12px;align-items:center}.event strong{color:#efe6ff}.event small{display:block;color:var(--muted);margin-top:5px}.event-actions{display:flex;gap:7px}.event-actions button{background:transparent;border:1px solid #4c4562;color:var(--text);border-radius:8px;padding:7px}.rank-list{display:grid;gap:7px}.rank-item{display:flex;justify-content:space-between;gap:10px;border-radius:10px;background:#201d34;padding:12px;font-size:13px}.rank-item strong{color:var(--pale)}.progress-box{margin-top:14px;font-size:13px;color:var(--pale);white-space:pre-wrap}.notify-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.notify-card{border:1px solid var(--line);background:#1a1930;border-radius:12px;padding:16px}.notify-card h3{margin:0 0 5px}.notify-card p{margin:5px 0 14px;color:var(--muted);font-size:11px;line-height:1.5;min-height:30px}.notify-card .actions{display:flex;gap:8px;margin-top:9px}.notify-card button{background:#2d234b;border:1px solid #514a76;color:var(--text);padding:8px;border-radius:8px;font-size:11px}.toast{position:fixed;right:20px;bottom:20px;background:#24203d;color:white;border:1px solid #7053ad;border-radius:12px;padding:15px;box-shadow:0 20px 60px #000a;display:none;max-width:450px;z-index:20}.toast.show{display:block}.toast.error{border-color:#b54b65}.login-page{min-height:100vh;display:grid;place-items:center}.login-card{background:linear-gradient(145deg,#20203a,#11111e);border:1px solid #3d3059;border-radius:20px;padding:38px;width:min(460px,94vw);box-shadow:0 25px 100px #0006}.login-card h1{font-size:26px}.login-card p{color:var(--muted);line-height:1.7}.login-card .logo{font-size:46px}.login-card form{display:grid;gap:20px;margin:25px 0}.login-card small{color:var(--muted)}.error{color:var(--red)!important}.login-card code{color:var(--pale)}@media(max-width:1100px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.cols,.cols.wide-left{grid-template-columns:1fr}}@media(max-width:750px){.app{display:block}.sidebar{position:relative;height:auto;width:100%;padding:14px}.brand{padding:5px}.nav-label,.sidebar-bottom{display:none}nav{display:flex;overflow-x:auto}nav .nav{white-space:nowrap;font-size:12px}.main{padding:20px 12px}.topbar,.top-actions{align-items:flex-start;flex-direction:column}.cards,.cards.three{grid-template-columns:1fr 1fr}.notify-grid{grid-template-columns:1fr}.quick{grid-template-columns:1fr}.panel{padding:15px}}@media(max-width:460px){.cards,.cards.three{grid-template-columns:1fr}}
