/* public/admin/hub.css — ظاهرِ مرکز مدیریت */
:root{
  --bg:#060b14; --card:#0e1626; --card-2:#121c30; --line:#22304a; --text:#e8eef8; --muted:#93a1b8;
  --neon:#39ff14; --green:#3ddc84; --red:#ff6b6b; --gold:#e8b923;
  --ui:'Vazirmatn','Segoe UI',Tahoma,Arial,sans-serif;
}
*{box-sizing:border-box;}
html,body{margin:0; background:var(--bg); color:var(--text); font-family:var(--ui); font-size:14px;}
a{color:var(--neon);}
button{font-family:inherit; font-size:13px; cursor:pointer; border-radius:8px; border:1px solid var(--line); background:var(--card-2); color:var(--text); padding:7px 12px;}
button:hover:not(:disabled){border-color:var(--neon);}
button:disabled{opacity:.5; cursor:not-allowed;}
button.primary{background:var(--neon); color:#041a00; border-color:var(--neon); font-weight:800;}
button.danger:hover{border-color:var(--red); color:var(--red);}
input{font-family:inherit; font-size:14px; padding:9px 11px; border-radius:8px; border:1px solid var(--line); background:#0a1120; color:var(--text); outline:none;}
input:focus{border-color:var(--neon);}
.ltr{direction:ltr; unicode-bidi:plaintext;}

/* ورود */
.login-wrap{min-height:100vh; display:flex; align-items:center; justify-content:center; padding:20px 16px;}
.login-card{width:100%; max-width:380px; background:var(--card); border:1px solid var(--line); border-radius:16px; padding:28px 24px; box-shadow:0 18px 50px rgba(0,0,0,.5);}
.login-card h1{font-size:21px; margin:0 0 4px; text-align:center;}
.login-card .sub{color:var(--muted); font-size:12px; text-align:center; margin-bottom:20px;}
.login-card input{width:100%; margin-bottom:12px;}
.login-card button.primary{width:100%; padding:12px; font-size:15px;}
.lang-switch{display:flex; justify-content:center; gap:6px; margin-bottom:16px; direction:ltr;}
.lang-switch button.active{border-color:var(--neon); color:var(--neon);}
#msg{color:var(--red); min-height:18px; margin-top:12px; text-align:center; font-size:13px;}
.home-link{display:block; text-align:center; margin-top:14px; font-size:13px; text-decoration:none;}

/* سربرگ و برگه‌ها */
header{display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:14px 18px; border-bottom:1px solid var(--line); background:#08101e;}
header h1{font-size:18px; margin:0; flex:1 1 auto;}
header h1 small{color:var(--muted); font-weight:400; font-size:12px; margin-inline-start:6px;}
header .who{color:var(--muted); font-size:12px;}
.tabs{display:flex; flex-wrap:wrap; gap:6px; padding:12px 18px 0;}
.tab{border-radius:10px 10px 0 0; border-bottom:none; padding:10px 18px; font-size:14px; font-weight:700;}
.tab.active{background:var(--card); border-color:var(--neon); color:var(--neon);}
.tab .dot{display:inline-block; width:8px; height:8px; border-radius:50%; margin-inline-end:6px; background:var(--red);}
.tab .dot.on{background:var(--green);}
main{padding:0 18px 30px;}
.card{background:var(--card); border:1px solid var(--line); border-radius:12px; padding:16px; margin-top:14px;}
.card h2{font-size:15px; margin:0 0 6px;}
.card .note{color:var(--muted); font-size:12px; margin:0 0 12px;}
.status-row{display:flex; flex-wrap:wrap; gap:8px 18px; align-items:center;}
.status-row .k{color:var(--muted);}
.badge{display:inline-block; padding:3px 10px; border-radius:20px; font-weight:800; font-size:12px;}
.badge.on{background:rgba(61,220,132,.15); color:var(--green);}
.badge.off{background:rgba(255,107,107,.15); color:var(--red);}
.form-row{display:flex; flex-wrap:wrap; gap:8px;}
.form-row input{flex:1 1 200px;}
.flash{margin-top:10px; font-size:13px; min-height:18px;}
.flash.ok{color:var(--green);} .flash.err{color:var(--red);}
.table-wrap{overflow-x:auto; margin-top:12px;}
table{width:100%; border-collapse:collapse; font-size:13px;}
th,td{padding:8px 6px; border-bottom:1px solid var(--line); text-align:start; white-space:nowrap;}
th{color:var(--muted); font-weight:600;}
td .actions{display:flex; gap:6px; flex-wrap:wrap;}
.pw-row{display:flex; gap:6px; margin-top:6px;}
.pw-row input{width:150px; padding:6px 8px;}
.panel-frame{width:100%; height:80vh; border:1px solid var(--line); border-radius:10px; margin-top:12px; background:#fff;}
.muted{color:var(--muted);}
@media (max-width:640px){
  header{padding:12px 16px;} .tabs{padding:10px 16px 0;} main{padding:0 16px 24px;}
  .tab{padding:9px 12px; font-size:13px;}
}
