:root{--bg:#08070e;--panel:#12111b;--panel-2:#191825;--line:rgba(255,255,255,.1);--line-strong:rgba(255,255,255,.18);--text:#f4f4f7;--muted:#a3a0b8;--brand:#7b5cfa;--brand-dark:#4423c9;--brand-soft:rgba(123,92,250,.12);--danger:#ff5a5a;--ok:#3ddc97}*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--bg);font-family:DM Sans,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(760px 420px at 82% -8%,rgba(109,69,239,.2),transparent 70%),linear-gradient(rgba(255,255,255,.028) 1px,transparent 0) 0 0 /44px 44px,linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 0) 0 0 /44px 44px}a{color:var(--brand)}:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:inherit}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border-radius:10px 3px 10px 3px;background:var(--brand);color:#fff;font-size:1.15rem;font-weight:700}.brand-copy{display:grid;line-height:1.1}.brand-copy strong{font-size:1.05rem;letter-spacing:.06em}.brand-copy small{color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:.56rem;letter-spacing:.24em}.center-wrap{min-height:100vh;display:grid;place-items:center;padding:30px 18px}.card{width:min(430px,100%);padding:34px 30px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:0 30px 80px rgba(0,0,0,.5)}.card h1{margin:20px 0 8px;font-size:1.5rem}.card .sub{margin:0 0 24px;color:var(--muted);font-size:.92rem}.card-icon{width:56px;height:56px;display:grid;place-items:center;margin:0 auto 6px;border:1px solid rgba(123,92,250,.4);border-radius:15px;background:var(--brand-soft);font-size:1.5rem}.center-head{text-align:center}label{display:block;margin-bottom:7px;font-size:.78rem;font-weight:600;letter-spacing:.08em;color:var(--muted)}input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;padding:13px 15px;margin-bottom:18px;border:1px solid var(--line-strong);border-radius:11px;color:var(--text);background:#0d0c15;font:inherit}input::placeholder{color:#5d5a72}input:focus,select:focus,textarea:focus{border-color:var(--brand);outline:none}.hint{margin:-12px 0 18px;color:#6f6c85;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.72rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 20px;border:0;border-radius:11px;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-dark));font:inherit;font-weight:700;cursor:pointer;text-decoration:none}.btn:hover{filter:brightness(1.1)}.btn-block{width:100%}.btn-ghost{background:transparent;border:1px solid var(--line-strong);color:var(--text);font-weight:600}.btn-sm{padding:8px 13px;font-size:.82rem;border-radius:9px}.btn-danger{background:transparent;border:1px solid rgba(255,90,90,.45);color:#ff8a8a}.alert{padding:12px 15px;margin-bottom:20px;border-radius:11px;font-size:.9rem}.alert-error{border:1px solid rgba(255,90,90,.35);background:rgba(255,90,90,.1);color:#ffb3b3}.alert-ok{border:1px solid rgba(61,220,151,.3);background:rgba(61,220,151,.08);color:#9df0c8}.alert-info{border:1px solid var(--line);background:var(--panel-2);color:var(--muted)}.foot-note{margin:22px 0 0;color:#6f6c85;font-size:.82rem;text-align:center}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:16px;padding:14px 22px;border-bottom:1px solid var(--line);background:rgba(8,7,14,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar .spacer{margin-left:auto}.topbar .who{color:var(--muted);font-size:.85rem}.page{width:min(1180px,calc(100% - 36px));margin:30px auto 70px}.page h2{margin:0 0 4px;font-size:1.3rem}.page .lead{margin:0 0 24px;color:var(--muted);font-size:.92rem}.grid-2{display:grid;grid-template-columns:340px 1fr;grid-gap:22px;gap:22px;align-items:start}.box{padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.box h3{margin:0 0 16px;font-size:1rem}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin-bottom:22px}.stat{padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.stat b{display:block;font-size:1.6rem;line-height:1.2}.stat span{color:var(--muted);font-size:.8rem}table{width:100%;border-collapse:collapse;font-size:.88rem}td,th{padding:12px 10px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}th{color:var(--muted);font-size:.74rem;font-weight:600;letter-spacing:.07em}.mono,td.mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:.82rem}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.table-wrap table{min-width:760px}tr:last-child td{border-bottom:0}.tag{display:inline-block;padding:3px 9px;border-radius:99px;font-size:.72rem;font-weight:600}.tag-active{background:rgba(61,220,151,.14);color:#6ee7b0}.tag-revoked{background:rgba(255,90,90,.14);color:#ff9a9a}.tag-expired{background:rgba(255,255,255,.08);color:var(--muted)}.keys-out{margin-top:16px;padding:16px;border:1px dashed rgba(123,92,250,.5);border-radius:13px;background:rgba(123,92,250,.07)}.keys-out textarea{height:150px;margin:12px 0 0;resize:vertical;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.82rem}.row-actions{gap:6px}.filters,.row-actions{display:flex;flex-wrap:wrap}.filters{gap:10px;margin-bottom:16px}.filters input,.filters select{margin:0;width:auto}.empty{padding:44px 20px;text-align:center;color:var(--muted)}@media (max-width:860px){.grid-2{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.page{margin-top:20px}}.quota{margin-bottom:20px}.quota-bar{height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}.quota-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--brand),#3ddc97)}.quota p{margin:7px 0 0;color:var(--muted);font-size:.82rem}.quota em{font-style:normal;color:var(--ok)}.modes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.mode{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--line-strong);border-radius:11px;color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:600}.mode span{padding:2px 7px;border-radius:99px;background:rgba(255,255,255,.07);font-size:.68rem;font-weight:500}.mode.on{border-color:var(--brand);color:#fff;background:var(--brand-soft)}.warn{margin:-6px 0 18px;padding:11px 14px;border:1px solid rgba(255,190,80,.3);border-radius:11px;background:rgba(255,190,80,.07);color:#ffd79a;font-size:.84rem}.count{margin:0 0 14px;color:var(--muted);font-size:.85rem}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 6px 5px 12px;border:1px solid var(--line);border-radius:99px;background:var(--panel);font-size:.82rem}.chip a{color:var(--text);text-decoration:none}.chip button{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:1rem;line-height:1}.chan-head{display:flex;align-items:center;gap:14px;margin-bottom:20px;padding:16px 18px;border:1px solid var(--line);border-radius:15px;background:var(--panel)}.chan-head img{border-radius:50%}.chan-head div{display:grid}.chan-head strong{font-size:1.02rem}.chan-head span{color:var(--muted);font-size:.82rem}.chan-head form{margin-left:auto}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));grid-gap:16px;gap:16px}.card-v{border:1px solid var(--line);border-radius:15px;background:var(--panel);overflow:hidden}.card-v>a{position:relative;display:block}.card-v img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}.card-v .dur{position:absolute;right:8px;bottom:8px;padding:2px 7px;border-radius:6px;background:rgba(0,0,0,.82);font-family:JetBrains Mono,monospace;font-size:.7rem}.card-v .badge{position:absolute;left:8px;top:8px;padding:3px 9px;border-radius:99px;background:var(--brand);font-size:.68rem;font-weight:700}.card-b{padding:14px;display:grid;grid-gap:9px;gap:9px}.card-b h3{margin:0;font-size:.92rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-b .meta{margin:0;color:var(--muted);font-size:.78rem}.nums{display:flex;flex-wrap:wrap;gap:14px;margin:0;padding:0;list-style:none}.nums li{display:grid}.nums b{font-size:.95rem}.nums span{color:var(--muted);font-size:.68rem}.nums li.hot b,.saved-tag{color:var(--ok)}.saved-tag{margin:0;font-size:.8rem;font-weight:600}.card-b form{margin:0}.nav-links{display:flex;gap:6px}.nav-links a{padding:7px 12px;border-radius:9px;color:var(--muted);text-decoration:none;font-size:.88rem;font-weight:600}.nav-links a.on{color:#fff;background:var(--brand-soft)}