[hidden] { display: none !important; }
.admin-shell { max-width: 1120px; margin: 0 auto; padding: 32px 24px; }
.admin-header, .admin-toolbar, .admin-detail-heading { display: flex; flex-wrap: wrap; gap: 20px; align-items: center; justify-content: space-between; }
.admin-header h1 { margin: 14px 0 8px; font-size: 32px; }
.admin-header p, .admin-note, .admin-muted { color: var(--secondary); }
.admin-header a { color: var(--text); text-decoration: none; }
.admin-languages, .admin-tabs { display: flex; flex-wrap: wrap; padding: 4px; gap: 4px; border: 1px solid var(--border); border-radius: 12px; }
.admin-languages button, .admin-tabs button { min-height: 38px; padding: 8px 12px; font-weight: 500; background: transparent; color: var(--secondary); border: 1px solid transparent; border-radius: 8px; }
.admin-languages button[aria-pressed=true], .admin-tabs button[aria-pressed=true] { color: var(--text); background: var(--card); border-color: var(--border); }
.admin-card { padding: 24px; margin-top: 24px; }
.admin-card > p:first-child { margin-top: 0; }
.admin-card > .button-link { max-width: 320px; }
.admin-toolbar { margin-top: 32px; }
.admin-note { margin: 18px 0 24px; line-height: 1.5; }
.admin-search label { display: block; margin-bottom: 8px; color: var(--secondary); }
.admin-search > div { display: flex; gap: 12px; }
.admin-search input { flex: 1; min-width: 0; border: 1px solid var(--border); border-radius: 12px; padding: 12px; color: var(--text); background: var(--card); }
#status { min-height: 22px; color: var(--secondary); }
.admin-table-wrap { overflow-x: auto; background: var(--card); border: 1px solid var(--border); border-radius: 16px; }
.admin-table { border-collapse: collapse; width: 100%; font-size: 15px; }
.admin-table th { font-weight: 500; color: var(--secondary); text-align: left; }
.admin-table td, .admin-table th { padding: 16px; border-bottom: 1px solid var(--border); vertical-align: top; }
.admin-table tr:last-child td { border-bottom: 0; }
.admin-table button { min-height: 34px; padding: 6px 12px; font-size: 14px; }
.admin-table td small { display: block; margin-top: 6px; color: var(--secondary); }
.admin-id { overflow-wrap: anywhere; font-family: ui-monospace, monospace; font-size: 13px; }
.admin-pagination { display: flex; gap: 16px; align-items: center; justify-content: flex-end; margin-top: 18px; }
.admin-pagination button { min-height: 38px; font-size: 14px; }
.admin-detail-heading h2 { margin: 0; }
.admin-detail-heading button { min-height: 36px; }
.admin-device { border-top: 1px solid var(--border); padding: 14px 0; }
.admin-device p { margin: 6px 0; }
.admin-shell footer { text-align: center; margin: 36px 0 0; color: var(--secondary); font-size: 13px; }
@media(max-width:640px) { .admin-shell { padding: 20px 16px; } .admin-toolbar { align-items: stretch; } .admin-table td,.admin-table th { padding: 12px; } }

.admin-node { margin: 20px 0 28px; }
.admin-node h2 { font-size: 22px; margin-bottom: 8px; }
.admin-node-error { color: var(--error); }
.admin-node td button { display: block; margin-top: 10px; }

.admin-table button.admin-disconnect{color:#bd2436;background:#fff;border:1px solid #bd2436;margin-top:8px;}
.admin-table button.admin-disconnect:hover{background:#fff5f6;}
.admin-table button.admin-disconnect:disabled{opacity:.55;}

.admin-access{padding:20px;border:1px solid #d5d5da;border-radius:16px;background:#fff;margin:20px 0}.admin-access-actions{display:flex;gap:12px;flex-wrap:wrap}.admin-access button.admin-access-suspend{color:#bd2436;background:#fff;border:1px solid #bd2436}.admin-access h2{margin-top:0}

.admin-resources {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
  margin: 12px 0 20px;
}
.admin-resource {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--card);
}
.admin-resource-label {
  color: var(--secondary);
  font-size: 13px;
}
.admin-resource strong {
  font-size: 16px;
  font-weight: 600;
  overflow-wrap: anywhere;
}

.admin-resource-average { color: var(--secondary); font-size: 13px; line-height: 1.35; }

.admin-traffic-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.admin-traffic-controls>span{margin-right:4px}
.admin-traffic-controls button{min-width:88px}
@media(max-width:700px){.admin-traffic-controls{display:grid;grid-template-columns:repeat(3,1fr)}.admin-traffic-controls>span{grid-column:1/-1}.admin-traffic-controls button{min-width:0;width:100%}}

.admin-policy-section{margin:20px 0;padding:20px;border:1px solid var(--border,#ddd);border-radius:16px}.admin-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-policy-grid label,.admin-policy-extra label{display:flex;flex-direction:column;gap:6px;font-weight:400}.admin-policy-grid input,.admin-policy-grid select,.admin-policy-extra input{width:100%;min-height:42px;box-sizing:border-box;font:inherit;border:1px solid var(--border,#ccc);border-radius:10px;padding:8px 10px;background:var(--card,#fff);color:inherit}.admin-policy-actions,.admin-policy-extra{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin-top:18px}.admin-policy-message{min-height:1.4em}.admin-policy-section h2{font-size:18px;font-weight:500;margin-top:0}@media(max-width:600px){.admin-policy-grid{grid-template-columns:1fr}.admin-policy-section{padding:14px}.admin-policy-actions button{flex:1}.admin-policy-extra label{flex:1;min-width:180px}}

.admin-trial-badge{display:inline-block!important;margin:5px 6px 0 0;padding:3px 8px;border-radius:8px;background:#dfeeff;color:#174776;font-size:12px}.admin-delete-box{border-top:1px solid #a33a;margin-top:26px;padding-top:20px}.admin-delete-box label{display:block;margin:16px 0}.admin-delete-box input{display:block;max-width:220px;margin-top:8px;min-height:42px;padding:8px 12px;border:1px solid #9ba1ac;border-radius:9px;font:inherit;background:transparent;color:inherit}.admin-delete-button{border:1px solid #c03d43;border-radius:10px;background:#c03d43;color:white;padding:10px 16px;font:inherit;cursor:pointer}.admin-delete-button:disabled{opacity:.45;cursor:default}#accountKindFilter{min-height:42px;border-radius:10px;padding:8px 10px;border:1px solid #a3a8b2;background:transparent;color:inherit;font:inherit;max-width:230px}@media(max-width:650px){.admin-search>div{flex-wrap:wrap}#accountKindFilter{width:100%;max-width:none}}

