[hidden]{display:none!important}
:root{font:14px Inter,"Microsoft YaHei",sans-serif;color:#24334b;background:#f4f6fa}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{background:#2964e8;color:#fff;border:0;border-radius:7px;padding:10px 16px;cursor:pointer}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}.secondary{background:#eaf0fb;color:#2c4f89}.danger{background:#fff0f1;color:#b53649}input,select,textarea{width:100%;padding:10px;border:1px solid #d9e0eb;border-radius:6px;background:white;color:inherit}input[type=checkbox]{width:auto}label{display:block;font-size:13px;color:#58677c}label input,label select,label textarea{margin-top:7px}form label{margin-bottom:16px}.muted{color:#7e8b9d;line-height:1.6}h1{font-size:25px;margin:0 0 12px}h2{font-size:19px}h3{font-size:16px}.brand{font-size:19px;font-weight:800;letter-spacing:2px;color:#2964e8}.login{min-height:100vh;display:grid;place-items:center}.login-card{background:white;padding:42px;width:410px;max-width:94vw;border-radius:16px;box-shadow:0 12px 60px #1530590c}.login-card .brand{margin-bottom:30px}.login-card button{width:100%}#login-error{color:#b53649}aside{position:fixed;inset:0 auto 0 0;width:232px;background:white;border-right:1px solid #e5eaf2;padding:32px 20px;display:flex;flex-direction:column}aside .brand{font-size:17px}nav{display:grid;gap:6px;margin-top:32px}nav button{text-align:left;background:transparent;color:#607087;padding:13px 14px}nav button.active{background:#edf3ff;color:#2964e8;font-weight:700}.account{margin-top:auto;display:grid;gap:14px;font-size:12px;color:#79869b}main{margin-left:232px;padding:35px 40px;max-width:1800px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{font-size:10px;letter-spacing:2px;color:#8c99ab;margin-bottom:8px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat,.panel{background:white;border:1px solid #e6ebf2;border-radius:10px;padding:22px}.stat strong{display:block;font-size:29px;margin-top:13px}.stat span{color:#7e8b9d}.panel{margin-bottom:22px;overflow:auto}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.toolbar input,.toolbar select{width:auto;max-width:210px}.toolbar .spacer{flex:1}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:13px}th{color:#7c899b;font-weight:500;text-align:left;padding:14px 10px;border-bottom:1px solid #e5eaf2;background:#fafbfd}td{padding:14px 10px;border-bottom:1px solid #eef1f6}td button{padding:6px 10px;font-size:12px;margin-right:5px}tr:last-child td{border:0}.badge{display:inline-block;padding:4px 9px;border-radius:5px;background:#f0f3f8;color:#7a8799}.badge.active,.badge.online{background:#e8f8f1;color:#27825d}.badge.banned,.badge.void,.badge.blocked{background:#fff0f1;color:#b53649}.badge.expired,.badge.unbound{background:#fff6e8;color:#ad7d32}.empty{text-align:center;color:#8995a7;padding:42px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.wide{grid-column:1/-1}dialog{border:0;border-radius:12px;width:850px;max-width:94vw;max-height:90vh;padding:28px;box-shadow:0 15px 90px #0003}dialog::backdrop{background:#192b475f}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-head h2{margin:0}.kv{display:grid;grid-template-columns:150px 1fr;gap:12px;margin-bottom:25px;overflow-wrap:anywhere}.kv dt{color:#7e8b9d}.kv dd{margin:0}.pagination{display:flex;gap:14px;align-items:center;margin-top:18px}.note{padding:14px;background:#f3f7ff;color:#54709a;border-radius:7px;line-height:1.7;margin-bottom:20px}#toast{position:fixed;bottom:25px;right:25px;max-width:500px;background:#203854;color:white;padding:16px 24px;border-radius:9px;z-index:100}pre{white-space:pre-wrap;word-break:break-word;background:#f6f8fc;padding:14px;border-radius:7px}.small{font-size:12px;color:#7e8b9d}a{color:#2964e8}@media(max-width:1000px){main{padding:24px;margin-left:190px}aside{width:190px;padding:24px 12px}.stats{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}}@media(max-width:650px){aside{position:static;width:auto;padding:16px}nav{display:flex;flex-wrap:wrap;margin-top:12px;gap:2px}nav button{font-size:12px;padding:8px}.account{display:flex;align-items:center;margin-top:12px}main{margin:0;padding:18px}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}header #clock{display:none}}
