:root{--bg:#090b0e;--panel:#12161b;--panel2:#171c22;--panel3:#1d232b;--line:#29313a;--line2:#39434f;--text:#f7f8fa;--muted:#98a2ae;--red:#e31b23;--red2:#aa1017;--green:#22c55e;--yellow:#f59e0b;--shadow:0 18px 48px #0004;--radius:18px}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial;background:radial-gradient(circle at 85% -10%,#3a0d1238 0,transparent 32%),var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}.hidden{display:none!important}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 60% 20%,#351015 0,transparent 36%),linear-gradient(135deg,#07090b,#11151a)}.login-card{width:min(460px,100%);background:linear-gradient(180deg,#171b21f5,#11151af5);border:1px solid var(--line);border-radius:26px;padding:34px;box-shadow:0 32px 90px #0009}.brand,.logo{font-size:32px;font-weight:850;letter-spacing:-1px}.brand span,.logo span{color:#fff}.brand b,.logo b{color:var(--red)}.brand-with-owl,.logo-with-owl{display:flex;align-items:center;gap:12px}.brand-with-owl img{width:54px;height:54px;object-fit:contain}.logo-with-owl img{width:42px;height:42px;object-fit:contain}.login-card h1{margin:24px 0 6px;font-size:27px}.login-card p{margin:0 0 24px;color:var(--muted);line-height:1.6}label{display:grid;gap:8px;margin:14px 0;color:#d4d9df;font-size:14px}input,select,textarea{width:100%;min-height:44px;background:#0e1216;border:1px solid #313a45;color:#fff;border-radius:11px;padding:11px 12px;outline:none;transition:.18s}textarea{min-height:auto;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#d92a31;box-shadow:0 0 0 3px #e31b2318}button{border:0;border-radius:11px;min-height:40px;padding:10px 15px;background:linear-gradient(180deg,#ef2a33,#c9151d);color:#fff;font-weight:750;cursor:pointer;transition:.18s}button:hover{filter:brightness(1.08);transform:translateY(-1px)}button.secondary{background:#29313a}button.ghost{background:transparent;border:1px solid var(--line);width:100%}button.small{padding:7px 10px;min-height:34px;background:#29313a;font-size:12px}.danger{background:linear-gradient(180deg,#a91b22,#7d1117)!important}.error{color:#ff777c;margin-top:10px}.app{min-height:100vh;display:grid;grid-template-columns:270px minmax(0,1fr)}aside{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#101419,#0d1115);border-right:1px solid #232b34;padding:20px 15px;display:flex;flex-direction:column;z-index:40}.logo{padding:8px 10px 25px}.logo small{display:block;color:#737f8d;font-size:9px;letter-spacing:2.1px;margin-top:3px}nav{display:grid;gap:6px}nav button{background:transparent;text-align:left;color:#aeb7c2;padding:12px 13px;font-weight:650;border:1px solid transparent}nav button.active,nav button:hover{background:#1a2027;color:#fff;border-color:#252e38}nav button.active{box-shadow:inset 3px 0 var(--red)}.aside-foot{margin-top:auto;color:var(--muted);font-size:12px;display:grid;gap:10px;padding:12px 10px}.nav-backdrop{display:none}main{min-width:0;padding:0 30px 42px;overflow:hidden}header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #1e252d;margin-bottom:24px;position:sticky;top:0;background:#090b0eea;backdrop-filter:blur(16px);z-index:25}.header-left{display:flex;align-items:center;gap:12px}header h2{margin:3px 0 0;font-size:27px}.eyebrow{font-size:10px;color:var(--red);font-weight:850;letter-spacing:2px}.menu-toggle{display:none;background:#20262e;min-width:42px;padding:8px}.health{display:flex;gap:9px;align-items:center;color:#c8d0d9;font-size:13px;background:#11161b;border:1px solid #252e38;border-radius:999px;padding:8px 12px;white-space:nowrap}.dot{width:9px;height:9px;border-radius:50%;background:#666}.dot.ok{background:var(--green);box-shadow:0 0 14px #22c55e88}.page{display:none}.page.active{display:block}.grid{display:grid;gap:18px}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:var(--radius);padding:21px;box-shadow:var(--shadow);min-width:0}.stat{position:relative;overflow:hidden}.stat:after{content:"";position:absolute;right:-25px;bottom:-35px;width:100px;height:100px;border-radius:50%;background:#e31b2309}.stat span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.7px}.stat strong{display:block;font-size:34px;margin:12px 0 2px}.stat small{color:#74808d}.hero{margin-top:18px;display:flex;justify-content:space-between;align-items:center;min-height:195px;background:linear-gradient(110deg,#171c22 0,#171c22 55%,#310d11 100%);overflow:hidden}.hero h3{font-size:26px;margin:10px 0}.hero p{max-width:650px;color:var(--muted);line-height:1.65}.pill{display:inline-block;color:#ff858b;background:#3b1115;border:1px solid #6d181f;border-radius:999px;font-size:10px;font-weight:850;padding:5px 9px}.hero-mark{font-size:130px;font-weight:950;color:#e31b2319;padding-right:24px}.split{display:grid;grid-template-columns:minmax(320px,430px) minmax(0,1fr);gap:18px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.card-head h3,.card h3{margin:0 0 14px}.card-head p{margin:4px 0 14px;color:var(--muted)}.list{display:grid;gap:8px;max-height:68vh;overflow:auto}.list-item{padding:13px;border:1px solid #28313b;background:#0f1318;border-radius:11px;cursor:pointer;transition:.16s}.list-item:hover{border-color:#465362;background:#12171d}.list-item strong{display:block}.meta{color:var(--muted);font-size:11px;margin-top:6px}.badge{display:inline-block;border-radius:999px;padding:3px 8px;background:#2c333b;color:#cbd2da;font-size:10px}.badge.red{background:#48161a;color:#ff9a9e}.detail .empty{color:var(--muted);display:grid;place-items:center;min-height:300px}.message{padding:11px 12px;border-left:3px solid #4a5360;background:#0f1318;border-radius:8px;margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.message.support{border-color:var(--red)}.message .who{font-size:11px;color:var(--muted);margin-bottom:5px}.actions{display:flex;gap:8px;flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.toggle{display:flex;align-items:center;gap:10px}.toggle input{width:auto;min-height:auto}.flow{display:grid;gap:8px}.flow div{display:flex;align-items:center;gap:12px;background:#0f1318;border:1px solid #28313b;border-radius:11px;padding:12px}.flow b{display:grid;place-items:center;width:28px;height:28px;background:#3a1115;color:#ff858a;border-radius:50%}.flow i{height:12px;border-left:2px dotted #39414b;margin-left:25px}.muted{color:var(--muted)}.compact{max-height:420px}.role-help{margin-top:16px;color:var(--muted);font-size:12px;line-height:1.7}.placeholder-help{background:#0f1318;border:1px solid #2a333d;border-radius:11px;padding:12px;color:#aab4bf;font-size:12px;line-height:1.8;margin:12px 0}.placeholder-help code{background:#20272f;color:#f1f5f9;padding:2px 6px;border-radius:5px;margin-right:4px}#toast{position:fixed;right:25px;bottom:25px;background:#171d23;border:1px solid #3b4652;padding:12px 16px;border-radius:11px;opacity:0;transform:translateY(10px);transition:.2s;pointer-events:none;z-index:100}#toast.show{opacity:1;transform:none}.status-line{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.status-line select{width:auto}.user-row{display:grid;grid-template-columns:minmax(140px,1fr) 140px 110px minmax(130px,170px) auto auto;gap:8px;align-items:center}.user-row input,.user-row select{margin:0}.user-row .user-name{min-width:0}.user-row .user-name input{font-weight:700}.user-actions{display:flex;gap:6px}.user-enabled{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);white-space:nowrap}.user-enabled input{width:auto;min-height:auto}.mobile-only{display:none}
@media(max-width:1120px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}.two{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.user-row{grid-template-columns:1fr 130px 100px;}.user-row .user-password{grid-column:1/3}.user-actions{grid-column:3;grid-row:1/3;flex-direction:column}}
@media(max-width:900px){.app{display:block}.menu-toggle{display:inline-grid;place-items:center}aside{position:fixed;left:0;top:0;width:min(84vw,300px);height:100dvh;transform:translateX(-105%);transition:transform .22s ease;box-shadow:20px 0 50px #0008}.app.nav-open aside{transform:none}.nav-backdrop{display:block;position:fixed;inset:0;background:#0008;opacity:0;pointer-events:none;transition:.22s;z-index:35}.app.nav-open .nav-backdrop{opacity:1;pointer-events:auto}main{padding:0 18px 34px}header{height:82px;margin-bottom:18px}.logo{padding-bottom:18px}.aside-foot{padding-bottom:18px}}
@media(max-width:640px){main{padding:0 12px 28px}header{height:74px;gap:8px}header h2{font-size:21px}.eyebrow{font-size:9px}.health{font-size:11px;padding:7px 9px}.health #healthText{max-width:112px;overflow:hidden;text-overflow:ellipsis}.stats{grid-template-columns:1fr}.card{padding:16px;border-radius:14px}.hero{min-height:165px}.hero-mark{display:none}.hero h3{font-size:22px}.split{gap:12px}.list{max-height:none}.card-head{align-items:flex-start}.status-line{width:100%}.status-line select{width:100%;flex:1}.actions button{width:100%}.user-row{display:grid;grid-template-columns:1fr}.user-row .user-password,.user-actions{grid-column:auto;grid-row:auto}.user-actions{flex-direction:row}.user-actions button{flex:1}.form-grid{grid-template-columns:1fr}#toast{left:12px;right:12px;bottom:12px;text-align:center}.login-card{padding:24px 20px}.brand-with-owl img{width:48px;height:48px}}

.role-emoji-list{display:grid;gap:8px;margin-top:14px}.role-emoji-row{display:grid;grid-template-columns:minmax(180px,1fr) 110px;gap:10px;align-items:center;padding:10px 12px;border:1px solid #28313b;background:#0f1318;border-radius:11px}.role-emoji-row .role-name{display:flex;align-items:center;gap:9px;min-width:0;font-weight:650}.role-emoji-row .role-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto;background:#68717c}.role-emoji-row input{margin:0;text-align:center;font-size:20px;min-height:40px}@media(max-width:640px){.role-emoji-row{grid-template-columns:1fr 90px}.role-emoji-row input{font-size:18px}}
