:root{
  --bg:#080C18; --bg2:#0D1224; --surface:#141A2E; --surface2:#1B2340; --surface3:#232C4E;
  --line:#242E4E; --line2:#313C63; --gold:#D9A94C; --gold-soft:#F0CE86;
  --txt:#EEF1F8; --txt2:#A9B1C9; --txt3:#6E7898;
  --ok:#3FBE86; --warn:#E0A23C; --dan:#E2695F; --blu:#6E8CF7;
  --font:'Inter','Segoe UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--txt);font-family:var(--font);font-size:13.5px;line-height:1.5}
.top{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:14px;padding:14px 24px;background:rgba(8,12,24,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.top-logo{height:34px;width:auto;display:block}
.top b{font-size:14.5px}
.top span{display:block;font-size:11px;color:var(--txt3)}
.top .sep{flex:1}
.btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font);font-size:12.5px;font-weight:600;padding:9px 14px;border-radius:9px;border:1px solid var(--line2);background:var(--surface2);color:var(--txt);cursor:pointer}
.btn:hover{background:var(--surface3)}
.btn.pri{background:var(--gold);color:#12172A;border-color:var(--gold);font-weight:700}
.btn.pri:hover{background:var(--gold-soft)}
.btn.dan{background:rgba(226,105,95,.14);color:var(--dan);border-color:rgba(226,105,95,.35)}
.btn.sm{padding:5px 10px;font-size:11.5px;border-radius:7px}
.main{padding:22px 26px 90px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:16px;overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:12.6px}
th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.3px;color:var(--txt3);padding:8px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:top}
tr:last-child td{border-bottom:0}
.hint{font-size:12px;color:var(--txt3);padding:14px 4px}
.status{display:inline-flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap}
.dot{width:7px;height:7px;border-radius:99px;background:var(--ok)}
.dot.off{background:var(--dan)}
.linkcell{max-width:220px}
.linkcell a{color:var(--blu);text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.actionsCell{display:flex;gap:6px;flex-wrap:wrap}
.rowbtns{display:flex;gap:8px;margin-top:16px;align-items:center}

label{display:block;font-size:12px;color:var(--txt2);margin-bottom:12px;font-weight:600}
input[type=text],input[type=url],input[type=password]{
  width:100%;background:var(--surface2);border:1px solid var(--line2);border-radius:8px;color:var(--txt);
  font-family:var(--font);font-size:13px;padding:9px 10px;outline:0;margin-top:6px;font-weight:400;
}
input:focus{border-color:var(--gold)}
.checkboxRow{display:flex;align-items:center;gap:8px;font-weight:600}
.checkboxRow input{width:16px;height:16px;accent-color:var(--gold);margin:0}
.slugRow{display:flex;align-items:center;background:var(--surface2);border:1px solid var(--line2);border-radius:8px;margin-top:6px;overflow:hidden}
.slugRow .slugPrefix{padding:9px 0 9px 10px;color:var(--txt3);font-size:12px;white-space:nowrap}
.slugRow input{border:none;background:transparent;margin:0}
.slugRow input:focus{border:none}

.modal{position:fixed;inset:0;background:rgba(4,6,14,.6);display:flex;align-items:center;justify-content:center;z-index:80;padding:20px}
.modal[hidden]{display:none}
.modal-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px;max-width:440px;width:100%;max-height:88vh;overflow-y:auto}
.modal-card.wide{max-width:680px}
.modal-card h2{font-size:16px;margin-bottom:16px}
.formErr{color:var(--dan);font-size:12.5px;margin-top:10px}

.toastwrap{position:fixed;bottom:20px;right:20px;z-index:99;display:flex;flex-direction:column;gap:8px}
.toastmsg{background:var(--surface2);border:1px solid var(--line2);border-radius:10px;padding:11px 14px;font-size:12.5px;box-shadow:0 14px 30px rgba(0,0,0,.4)}
.toastmsg.ok{border-color:rgba(63,190,134,.4);color:#8FE3BC}
.toastmsg.err{border-color:rgba(226,105,95,.4);color:#F0958C}

.login-body{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}
.login-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:32px 28px;width:100%;max-width:360px}
.login-card .brand-logo{height:44px;width:auto;display:block;margin:0 auto 16px}
.login-card h1{font-size:18px;margin-bottom:20px}
.login-card button{width:100%;padding:11px;margin-top:6px;border:none;border-radius:9px;background:var(--gold);color:#12172A;font-weight:700;font-size:14px;cursor:pointer}
.login-card button:hover{background:var(--gold-soft)}
