.admin-dashboard {min-width:0;color:#343a40;font:inherit;}
.admin-dashboard .dashboard-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;margin:2px 0 20px;}
.admin-dashboard .dashboard-heading h1 {font-size:24px;font-weight:400;line-height:1.3;margin:0 0 7px;}
.admin-dashboard .dashboard-heading p {font-size:13px;line-height:1.5;margin:0;color:#6c757d;}
.admin-dashboard .dashboard-refresh {font-size:14px;min-height:38px;padding:8px 16px;}
.admin-dashboard .dashboard-graphs {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.admin-dashboard .dashboard-graph {min-width:0;padding:16px;border:1px solid #dee2e6;border-radius:4px;background:#fff;}
.admin-dashboard .dashboard-graph-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;}
.admin-dashboard .dashboard-graph-heading h2 {font-size:16px;font-weight:600;line-height:1.4;margin:0;}
.admin-dashboard .dashboard-graph-heading a {white-space:nowrap;min-height:34px;display:inline-flex;align-items:center;}
.admin-dashboard .dashboard-graph-media {overflow-x:auto;min-height:200px;-webkit-overflow-scrolling:touch;}
.admin-dashboard .dashboard-graph-image {display:block;width:100%;height:auto;min-width:560px;}
.admin-dashboard .dashboard-graph-hidden {display:none;}
.admin-dashboard .dashboard-graph-error {min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px 12px;text-align:center;color:#6c757d;background:#f8f9fa;}
.admin-dashboard .dashboard-graph-error strong {font-size:14px;font-weight:500;}
.admin-dashboard .dashboard-graph-error p {font-size:13px;margin:0;}
.admin-dashboard .dashboard-status {font-size:12px;color:#6c757d;margin:14px 0;}
.admin-dashboard .dashboard-status-error {color:#a05b12;}
.admin-dashboard .dashboard-swipe {display:none;font-size:12px;color:#6c757d;margin:10px 0 0;}
@media(max-width:1199px){.admin-dashboard .dashboard-graphs {grid-template-columns:1fr;}}
@media(max-width:640px){
 .admin-dashboard .dashboard-heading {align-items:flex-start;gap:12px;}
 .admin-dashboard .dashboard-refresh {min-height:44px;}
 .admin-dashboard .dashboard-graphs {gap:12px;}
 .admin-dashboard .dashboard-graph {padding:12px;}
 .admin-dashboard .dashboard-graph-heading a {min-height:44px;}
 .admin-dashboard .dashboard-swipe {display:block;}
}
.admin-dashboard .dashboard-traffic-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 12px;}
.admin-dashboard .dashboard-traffic-heading h2 {font-size:18px;font-weight:400;margin:0;}
.admin-dashboard .dashboard-traffic-heading span {font-size:12px;color:#6c757d;}
.admin-dashboard .dashboard-mag {padding:16px;border:1px solid #dee2e6;border-radius:4px;background:white;}
.admin-dashboard .dashboard-mag-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;}
.admin-dashboard .dashboard-mag h2 {font-size:16px;line-height:1.4;font-weight:600;margin:0;}
.admin-dashboard .dashboard-mag-heading p,.admin-dashboard .dashboard-mag-dialog-heading p {font-size:12px;color:#6c757d;margin:4px 0 0;}
.admin-dashboard .dashboard-mag-heading button {min-height:34px;white-space:nowrap;}
.admin-dashboard .dashboard-mag-metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;}
.admin-dashboard .dashboard-mag-metric {border:1px solid #dee2e6;border-radius:4px;padding:12px;}
.admin-dashboard .dashboard-mag-metric span {display:block;font-size:12px;color:#6c757d;}
.admin-dashboard .dashboard-mag-metric strong {display:block;font-size:27px;font-weight:600;line-height:1.3;margin-top:8px;}
.admin-dashboard .dashboard-mag-users {max-height:225px;overflow-y:auto;overflow-x:hidden;border-top:1px solid #edf1f7;}
.admin-dashboard .dashboard-mag-user {display:grid;grid-template-columns:1fr .65fr 1.2fr 1.2fr;align-items:center;gap:12px;padding:9px 4px;border-bottom:1px solid #edf1f7;font-size:12px;}
.admin-dashboard .dashboard-mag-user>span {min-width:0;overflow-wrap:anywhere;}
.admin-dashboard .dashboard-mag-user:last-child {border-bottom:0;}
.admin-dashboard .dashboard-mag-muted {color:#6c757d;}
.admin-dashboard .dashboard-mag-badge {display:inline-block;padding:3px 6px;border-radius:4px;font-size:11px;}
.admin-dashboard .dashboard-mag-badge.watching {background:#edf7f0;color:#256b40;}
.admin-dashboard .dashboard-mag-badge.online {background:#eff4fa;color:#4d6683;}
.admin-dashboard .dashboard-mag-empty {font-size:13px;margin:16px 0 4px;}
.admin-dashboard .dashboard-mag-error {font-size:13px;color:#a05b12;margin:12px 0 0;}
.admin-dashboard .dashboard-mag-backdrop {position:fixed;inset:0;z-index:9998;background:rgba(15,23,42,.4);display:flex;align-items:center;justify-content:center;padding:24px;}
.admin-dashboard .dashboard-mag-dialog {width:980px;max-width:100%;max-height:86vh;background:#fff;border-radius:4px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.2);}
.admin-dashboard .dashboard-mag-dialog-heading {padding:16px 20px;border-bottom:1px solid #dee2e6;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.admin-dashboard .dashboard-mag-dialog-body {padding:0 20px;overflow:auto;}
.admin-dashboard .dashboard-mag-user-detail {grid-template-columns:1fr .65fr 1.1fr 1.2fr 1fr;}
.admin-dashboard .dashboard-mag-columns {font-size:10px;text-transform:uppercase;color:#6c757d;}
.admin-dashboard .dashboard-mag-dialog-footer {padding:12px 20px;border-top:1px solid #dee2e6;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;}
@media(max-width:640px){
 .admin-dashboard .dashboard-mag {padding:12px;}
 .admin-dashboard .dashboard-mag-heading button {min-height:44px;}
 .admin-dashboard .dashboard-mag-metrics {gap:8px;}
 .admin-dashboard .dashboard-mag-metric {padding:10px 8px;}
 .admin-dashboard .dashboard-mag-metric span {font-size:11px;min-height:32px;}
 .admin-dashboard .dashboard-mag-metric strong {font-size:24px;margin-top:4px;}
 .admin-dashboard .dashboard-mag-user {grid-template-columns:1fr 1fr;gap:5px 12px;}
 .admin-dashboard .dashboard-mag-backdrop {padding:12px;}
 .admin-dashboard .dashboard-mag-dialog {max-height:90vh;}
 .admin-dashboard .dashboard-mag-dialog-heading,.admin-dashboard .dashboard-mag-dialog-footer {padding:12px;}
 .admin-dashboard .dashboard-mag-dialog-body {padding:0 12px;}
 .admin-dashboard .dashboard-mag-columns {display:none;}
 .admin-dashboard .dashboard-mag-dialog button {min-height:44px;}
 .admin-dashboard .dashboard-mag-dialog-footer {gap:8px;}
 .admin-dashboard .dashboard-mag-user-detail>span:last-child::before {content:'MAC: ';}
}

/* One independent server card: capacity, stream states, traffic and resources. */
.admin-dashboard .dashboard-server-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;}
.admin-dashboard .dashboard-server-heading h2 {font-size:18px;font-weight:400;line-height:1.4;margin:0;}
.admin-dashboard .dashboard-server-heading>span {font-size:12px;color:#6c757d;}
.admin-dashboard .dashboard-server-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.admin-dashboard .dashboard-server-card {display:flex;min-width:0;overflow:hidden;border:1px solid #dfe5eb;border-radius:7px;background:#fff;box-shadow:0 2px 5px rgba(32,48,64,.025);}
.admin-dashboard .dashboard-server-card-body {width:100%;min-width:0;padding:18px;}
.admin-dashboard .dashboard-card-heading {margin-bottom:15px;}
.admin-dashboard .dashboard-card-heading h3 {font-size:16px;font-weight:600;line-height:1.4;color:#303d4c;margin:0;overflow-wrap:anywhere;}
.admin-dashboard .dashboard-viewer-row {display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 12px;margin-bottom:9px;}
.admin-dashboard .dashboard-card-label {font-size:12px;font-weight:500;line-height:1.4;color:#697787;}
.admin-dashboard .dashboard-server-count {min-width:0;margin-left:auto;font-size:16px;line-height:1.2;white-space:nowrap;font-variant-numeric:tabular-nums;}
.admin-dashboard .dashboard-server-count strong {font-size:27px;font-weight:600;letter-spacing:-.025em;color:#303d4c;}
.admin-dashboard .dashboard-server-limit {font-weight:400;color:#697787;}
.admin-dashboard .dashboard-server-load {height:6px;background:#edf1f5;border-radius:3px;overflow:hidden;}
.admin-dashboard .dashboard-server-load>span {display:block;height:100%;border-radius:3px;background:#b7c1cc;}
.admin-dashboard .load-normal .dashboard-server-load>span {background:#88aa97;}
.admin-dashboard .load-warning .dashboard-server-load>span {background:#c7ab70;}
.admin-dashboard .load-danger .dashboard-server-load>span {background:#c78d8d;}
.admin-dashboard .dashboard-card-section {margin-top:15px;padding-top:15px;border-top:1px solid #edf0f4;}
.admin-dashboard .dashboard-stream-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px;}
.admin-dashboard .dashboard-server-detail-label {font-size:12px;font-weight:500;color:#566576;}
.admin-dashboard .dashboard-stream-total {font-size:11px;color:#697787;}
.admin-dashboard .dashboard-stream-number {font-weight:600;font-variant-numeric:tabular-nums;color:#566576;}
.admin-dashboard .dashboard-stream-legend {display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;font-size:11px;line-height:1.5;color:#697787;margin-bottom:8px;}
.admin-dashboard .dashboard-stream-legend>span {white-space:nowrap;display:inline-flex;align-items:center;gap:4px;}
.admin-dashboard .dashboard-stream-legend i {display:inline-block;width:4px;height:4px;border-radius:50%;background:#8dac9c;}
.admin-dashboard .dashboard-stream-track {display:flex;height:4px;background:#edf1f5;border-radius:2px;overflow:hidden;}
.admin-dashboard .dashboard-stream-track>span {display:block;height:100%;background:#8dac9c;}
.admin-dashboard .dashboard-stream-track .stream-state-waiting,.admin-dashboard .dashboard-stream-legend .stream-state-waiting i {background:#bdc6d0;}
.admin-dashboard .dashboard-stream-track .stream-state-error,.admin-dashboard .dashboard-stream-legend .stream-state-error i {background:#c58888;}
.admin-dashboard .dashboard-stream-track .stream-state-disabled,.admin-dashboard .dashboard-stream-legend .stream-state-disabled i {background:#dbe0e5;}
.admin-dashboard .dashboard-stream-track .stream-state-unknown,.admin-dashboard .dashboard-stream-legend .stream-state-unknown i {background:#cbbda7;}
.admin-dashboard .stream-health-stale .dashboard-stream-track>span,.admin-dashboard .stream-health-stale .dashboard-stream-legend i,.admin-dashboard .stream-health-unavailable .dashboard-stream-legend i {background:#bcc5ce;}
.admin-dashboard .dashboard-stream-note {font-size:10px;line-height:1.4;color:#697787;margin:7px 0 0;}
.admin-dashboard .dashboard-card-traffic {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.admin-dashboard .dashboard-traffic-metric {min-width:0;}
.admin-dashboard .dashboard-traffic-direction {display:flex;align-items:center;gap:5px;font-size:11px;line-height:1.4;color:#697787;margin-bottom:7px;}
.admin-dashboard .dashboard-traffic-direction svg {flex:none;color:#7f9e92;}
.admin-dashboard .traffic-out .dashboard-traffic-direction svg {color:#869cb4;}
.admin-dashboard .dashboard-traffic-reading {display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 5px;line-height:1.2;font-variant-numeric:tabular-nums;}
.admin-dashboard .dashboard-traffic-number {font-size:21px;font-weight:500;letter-spacing:-.025em;color:#435263;}
.admin-dashboard .dashboard-traffic-unit {font-size:11px;font-weight:400;color:#697787;}
.admin-dashboard .traffic-stale .dashboard-traffic-reading,.admin-dashboard .traffic-stale .dashboard-traffic-number {color:#697787;}
.admin-dashboard .dashboard-resource-meters {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.admin-dashboard .dashboard-resource {min-width:0;}
.admin-dashboard .dashboard-resource-heading {display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:11px;line-height:1.3;color:#697787;}
.admin-dashboard .dashboard-resource-label {font-weight:500;}
.admin-dashboard .dashboard-resource-value {font-weight:400;font-variant-numeric:tabular-nums;white-space:nowrap;}
.admin-dashboard .dashboard-resource-track {height:4px;overflow:hidden;border-radius:2px;background:#edf1f5;}
.admin-dashboard .dashboard-resource-track>span {display:block;height:100%;border-radius:2px;background:#8a9fb8;}
.admin-dashboard .resource-ram .dashboard-resource-track>span {background:#86aaa4;}
.admin-dashboard .resource-stale .dashboard-resource-track>span {background:#b4bec8;}
.admin-dashboard .dashboard-server-disabled {font-size:13px;color:#697787;margin:12px 0;}
.admin-dashboard .server-card-disabled {background:#fcfcfd;}
.admin-dashboard .dashboard-server-message {font-size:13px;color:#6c757d;margin:12px 0;}
.admin-dashboard .dashboard-server-message.error,.admin-dashboard .dashboard-server-error {color:#a05b12;}
.admin-dashboard .dashboard-server-error {font-size:11px;line-height:1.5;margin:12px 0 0;}
@media(max-width:1199px){.admin-dashboard .dashboard-server-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){
 .admin-dashboard .dashboard-server-grid {grid-template-columns:1fr;gap:12px;}
 .admin-dashboard .dashboard-server-card-body {padding:16px;}
 .admin-dashboard .dashboard-server-heading {flex-wrap:wrap;gap:5px;}
}
@media(min-width:1024px){.admin-dashboard .dashboard-graph-image {min-width:0;}}
.ministra-mag-page .dashboard-mag-users {max-height:min(56vh,520px);}

/* The same cards in the administrator-filtered server management page. */
.server-management-layout>div {min-width:0;}
.server-page-statistics .dashboard-server-grid {grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));}
.server-page-explorer .cold-field {display:block;}
.server-page-explorer .cold-label,.server-page-explorer .cold-input {width:100%;max-width:100%;flex:0 0 100%;}
.server-page-explorer .cold-label {text-align:left;padding:0 .5rem 8px;}
.server-page-explorer .form-check-label {overflow-wrap:anywhere;}
@media(max-width:991px){.server-page-statistics {margin-top:24px;}}
