/* HorizonAdmin 9.1 · Shared visual system, matching the supplied dashboard. */
:root {
  --bg:#030f19; --surface:#0b1928; --surface-2:#102236;
  --surface2:#102236; --line:#1d3a51; --line-soft:#152e42; --border:#1d3a51;
  --text:#f1f6ff; --muted:#a5bfd7; --blue:#00bbff; --accent:#008fff;
  --amber:#ff9e32; --green:#17dc98; --red:#ff3c70; --danger:#ff3c70;
  --radius:11px; --sidebar:248px; --header:62px;
}
html {scroll-padding-top:82px; scrollbar-color:#145281 #06121e;}
body {background:radial-gradient(ellipse at 78% 20%,#06253c33,transparent 48%),var(--bg); font-size:13px; line-height:1.5; color:var(--text);}
[hidden] {display:none!important;}
button,input,select,textarea {font-family:inherit;}
button,a,input,select,textarea {touch-action:manipulation;}
button {transition:background .15s,border-color .15s,box-shadow .15s;}
button:disabled {opacity:.4; box-shadow:none!important;}
:focus-visible {outline:2px solid #49c4ff; outline-offset:3px;}
.icon {height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
.muted,.small,.hint,small {color:var(--muted);}
.eyebrow {font-size:10px;letter-spacing:.08em;font-weight:650;}
.eyebrow.amber {color:#8bceff;}
.dot {height:7px;width:7px;background:var(--green);box-shadow:0 0 10px #15dc9870;}
.dot.offline {background:#7990a7;box-shadow:none;}
.dot.wait {background:var(--amber);box-shadow:0 0 8px #ff9e3250;}
.app-header {height:var(--header);position:fixed;inset:0 0 auto;z-index:35;background:#04121ef2;border-bottom:1px solid #183044;backdrop-filter:blur(18px);box-shadow:none;}
.header-inner {height:100%;display:flex;gap:18px;padding:0 24px 0 0;max-width:none;}
.brand {display:flex;align-items:center;gap:11px;min-width:0;font-size:22px;letter-spacing:-.7px;font-weight:700;}
.app-header .brand {width:var(--sidebar);height:100%;flex-shrink:0;padding:8px 21px;border-right:1px solid #122b3d;}
.brand img {display:block;width:45px;height:45px;filter:drop-shadow(0 0 9px #00c3ff30);object-fit:contain;}
.brand>span {display:inline-flex;gap:0;}
.brand b,.brand>span b {color:#ef2d9b;}
.global-search {height:37px;width:min(510px,40vw);display:flex;gap:11px;align-items:center;margin:0 auto 0 0;padding:0 11px;border:1px solid #214058;border-radius:8px;background:linear-gradient(105deg,#0c1b2b,#112134);color:#abc8df;text-align:left;font-size:12px;}
.global-search:hover {border-color:#3481ad;background:#10283c;}
.global-search .icon {width:17px;height:17px;}
.global-search>span {flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.global-search kbd {font:10px/1.5 inherit;border:1px solid #29415a;padding:2px 5px;border-radius:4px;white-space:nowrap;}
.header-user {margin:0;display:flex;align-items:center;gap:16px;border-left:1px solid #1f3b50;padding-left:22px;}
.header-user .role-badge {display:block!important;background:#ed005721;border:1px solid #c9004d;color:#ff77a6;border-radius:6px;font-size:10px;padding:6px 11px;box-shadow:inset 0 0 12px #df00551a;white-space:nowrap;}
.header-user .role-badge.team {color:#90d8ff;border-color:#155782;background:#007dd821;}
.user-button {gap:12px;padding:0;border:0;background:transparent;}
.user-button .avatar {width:35px;height:35px;border:1px solid #4a5b86;border-radius:7px;background:linear-gradient(135deg,#28334c,#141f33);font-size:12px;color:#f2f7ff;}
.user-button strong {font-size:12px;color:#f1f5ff;max-width:120px;overflow:hidden;text-overflow:ellipsis;}
.user-button small {display:none;}
.user-button:after {content:'⌄';color:#a3c7e3;margin-left:2px;}
.icon-button {height:31px;width:31px;min-width:31px;background:linear-gradient(135deg,#14293b,#0b192a);border:1px solid #27425c;border-radius:6px;color:#a7cfe9;display:inline-flex;align-items:center;justify-content:center;padding:5px;}
.icon-button:hover {border-color:#008fff;color:#e7f6ff;background:#123554;}
.notification-button {position:relative;border:0;background:none;width:32px;height:36px;}
.notification-button .icon {height:23px;width:23px;}
.notification-dot {position:absolute;right:5px;top:5px;width:7px;height:7px;border-radius:100%;background:#f52b7f;box-shadow:0 0 12px #f52b7f;}
#logoutButton {background:none;border:0;color:#7f9bb5;}
.admin-shell {display:block!important;margin-top:var(--header);min-height:calc(100dvh - var(--header));}
.server-sidebar {position:fixed;top:var(--header);bottom:0;left:0;width:var(--sidebar);height:auto;display:flex;flex-direction:column;overflow-y:auto;padding:19px 10px 14px;background:linear-gradient(90deg,#071522,#061320);border-right:1px solid #163043;z-index:30;}
.sidebar-server {padding:0 9px 21px;border:0;margin:0;}
.sidebar-server-line {display:flex;align-items:center;gap:12px;}
.sidebar-server img {width:47px;height:47px;border:1px solid #195075;border-radius:8px;background:#102132;object-fit:contain;}
.sidebar-server strong {display:block;font-size:15px;font-weight:650;letter-spacing:-.3px;line-height:1.4;}
.sidebar-status {display:flex;align-items:center;gap:7px;font-size:12px;margin-top:3px;color:#28e5ac;}
.server-presence {margin-left:auto;width:5px;height:5px;background:#14cb93;border-radius:50%;box-shadow:0 0 8px #14cb93;}
.server-presence.offline {background:#72869e;box-shadow:none;}
.sidebar-server>small {display:block;font-size:10px;font-weight:500;letter-spacing:.06em;margin-top:12px;color:#9ec1e3;}
.sidebar-nav {display:flex;flex-direction:column;gap:5px;padding:5px 0 18px;border:0;}
.server-sidebar .nav-item {position:relative;display:flex;align-items:center;justify-content:flex-start;width:100%;min-height:43px;padding:10px 16px;gap:17px;border:1px solid transparent;border-radius:7px;color:#adcbe6;font-size:13px;line-height:1.4;text-align:left;background:none;box-shadow:none;}
.server-sidebar .nav-item .icon {height:20px;width:20px;}
.server-sidebar .nav-item:hover {background:#102b40;color:#e2f4ff;border-color:#163d5b;}
.server-sidebar .nav-item.active {background:linear-gradient(100deg,#073b66,#0d2541);border-color:#084775;color:#f0f7ff;box-shadow:0 0 20px #008dff14,inset 3px 0 #00c5ff;}
.server-sidebar .nav-item.active .icon {color:#00cbff;filter:drop-shadow(0 0 6px #00b3ff60);}
.server-sidebar .nav-item .dot,.server-sidebar .nav-item .count-chip {margin-left:auto;}
.server-sidebar .count-chip {font-size:10px;border-radius:6px;padding:2px 7px;background:#132b44;border:1px solid #234b70;color:#c7e8ff;}
.sidebar-restart {display:flex;gap:12px;align-items:flex-start;margin: auto 4px 0;padding:14px 11px;border:1px solid #23455f;border-radius:8px;background:linear-gradient(140deg,#11253a,#071522);box-shadow:inset 0 1px #ffffff05;flex-wrap:wrap;}
.sidebar-restart>.icon {color:#00caff;background:#10364f;border:1px solid #215a78;width:29px;height:29px;padding:4px;border-radius:6px;}
.sidebar-restart>div {flex:1;min-width:0;}
.sidebar-restart small {display:block;font-size:10px;}
.sidebar-restart strong {display:block;font-size:12px;font-weight:650;margin:4px 0;line-height:1.5;font-variant-numeric:tabular-nums;}
.sidebar-restart #restartDate {display:block;font-size:9px;color:#94b7d3;line-height:1.5;}
.sidebar-restart .text-button {margin-left:40px;font-size:11px;}
.sidebar-foot {padding:25px 9px 0;margin:0;color:#829fb9;font-size:10px;}
.sidebar-foot span {margin-left:4px;}
.workspace {margin-left:var(--sidebar);width:auto;padding:0 19px 0;max-width:none;min-width:0;}
.page-hero {position:relative;isolation:isolate;display:flex;align-items:center;gap:20px;justify-content:space-between;min-height:184px;padding:13px 0 16px;margin-bottom:1px;}
.page-hero-art {position:absolute;z-index:-1;inset:0 -19px -5px;pointer-events:none;background-image:linear-gradient(90deg,#030f19 0%,#030f1955 45%,#030f19d9 100%),linear-gradient(0deg,#030f19,transparent 35%),url('/static/assets/banner.webp');background-size:cover,cover,auto 650px;background-position:center,center,center top;opacity:.72;mask-image:linear-gradient(0deg,transparent,#000 22%,#000 86%);}
.hero-heading {flex:1;min-width:245px;align-self:stretch;display:flex;flex-direction:column;}
.breadcrumb {display:flex;gap:13px;align-items:center;color:#78a8cb;font-size:11px;padding:3px 0 17px;}
.breadcrumb button {background:none;border:0;padding:0;color:inherit;font-size:inherit;}
.breadcrumb button:hover {color:#bfe9ff;}
.page-heading {display:flex;align-items:center;gap:10px;margin:0;padding:0;flex:1;}
.page-hero .page-heading {display:flex!important;}
.page-heading h1 {font-size:42px;line-height:1.12;font-weight:750;letter-spacing:-1.4px;color:#f7f9ff;}
.dashboard-subtitle {font-size:20px;color:#76d5ff;font-weight:600;letter-spacing:-.4px;margin-top:5px;}
.page-heading p {font-size:13px;line-height:1.6;color:#acd7f5;margin-top:3px;max-width:570px;}
.heading-actions {align-self:flex-start;gap:7px;margin-top:3px;}
.heading-actions .small {display:none;}
.heading-actions .icon-button {height:26px;width:26px;min-width:26px;background:#0b21346b;border-color:#24527266;opacity:.75;}
.hero-panels {display:grid;grid-template-columns:203px 380px;gap:12px;align-items:stretch;padding-top:16px;flex-shrink:0;}
.server-status-panel,.hero-controls {border:1px solid #224057;border-radius:11px;background:linear-gradient(135deg,#0e1d2edb,#071522e8);padding:16px;box-shadow:inset 0 1px #ffffff05;}
.server-status-panel {padding:17px 16px 13px;}
.status-pill {display:flex;align-items:center;gap:11px;border:0;background:none;padding:0;color:#20e0aa;font-size:15px;letter-spacing:.08em;font-weight:700;text-transform:uppercase;}
.status-pill .dot {width:15px;height:15px;box-shadow:0 0 17px #19dfa566;}
.status-pill.offline {color:#9caec6;}
.status-pill.wait {color:var(--amber);}
.server-status-facts {display:flex;flex-direction:column;gap:6px;margin-top:16px;font-size:11px;color:#b0d0e8;}
.server-status-facts>span {display:flex;align-items:center;gap:10px;}
.server-status-facts .icon {width:14px;height:14px;}
.hero-controls {padding:12px 18px;display:flex;flex-direction:column;gap:10px;}
.hero-controls .control-label {margin:0;}
.control-label {display:flex;justify-content:space-between;padding:0;border:0;}
.control-label .eyebrow {text-transform:none;font-size:12px;letter-spacing:0;color:#f0f4ff;}
#controlStatus {display:none;}
.control-buttons {display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.button {min-height:34px;padding:7px 12px;border-radius:6px;font-size:11px;font-weight:600;display:inline-flex;justify-content:center;align-items:center;gap:7px;line-height:1.5;}
.button .icon {width:16px;height:16px;}
.button.primary {background:linear-gradient(180deg,#0096ff,#0077f2);border:1px solid #27b2ff;color:#fff;box-shadow:0 0 15px #007dff2b,inset 0 1px #ffffff20;}
.button.primary:hover {background:linear-gradient(180deg,#20afff,#058bff);box-shadow:0 0 18px #008cff55;}
.button.secondary {background:linear-gradient(180deg,#172c40,#102231);border:1px solid #29465b;color:#d6eafb;}
.button.secondary:hover {border-color:#3687b5;background:#17374c;}
.button.danger,.button.danger-soft {background:#a6002826;color:#ff4f7e;border:1px solid #a51b43;}
#startButton {background:#00875022;color:#20e0a1;border:1px solid #00b67c;min-height:41px;box-shadow:inset 0 0 15px #00a96a13;}
#restartButton {background:#b86a0926;color:#ffae43;border:1px solid #bc761a;min-height:41px;}
#stopButton {background:#af003528;color:#ff4682;border:1px solid #bd1551;min-height:41px;}
.hero-backup {width:100%;min-height:31px;margin:0;}
.hero-backup>span {margin-left:auto;padding-left:8px;border-left:1px solid #284758;}
.hero-backup .icon {margin-left:auto;}
.view {animation:page-appear .2s ease;}
@keyframes page-appear {from{opacity:.2;transform:translateY(3px)}to{opacity:1;transform:none}}
.kpis {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:14px;}
.kpi {position:relative;overflow:hidden;min-height:132px;padding:15px 18px 12px;border:1px solid #203a52;border-radius:11px;background:linear-gradient(135deg,#102136eb,#0b1726f7);box-shadow:inset 0 1px #ffffff04;}
.kpi-top {display:flex;align-items:center;justify-content:flex-start;gap:12px;margin-bottom:15px;font-size:11px;white-space:nowrap;}
.metric-icon {display:inline-flex;justify-content:center;align-items:center;background:none!important;border:0;width:22px;height:22px;border-radius:0;padding:0;}
.metric-icon .icon {width:21px;height:21px;}
.metric-icon.blue {color:#00c3ff;}.metric-icon.green {color:#00bdff;}.metric-icon.purple {color:#9d82ff;}.metric-icon.amber {color:#ff9c42;}
.kpi-number {display:flex;gap:6px;align-items:baseline;line-height:1.15;}
.kpi-number strong {font-size:29px;font-weight:650;letter-spacing:-1px;font-variant-numeric:tabular-nums;}
.kpi-number>span {font-size:12px;letter-spacing:0;color:#a8d0f4;}
.kpi:first-child .kpi-number strong {font-size:33px;}
.kpi:first-child .kpi-number>span {font-size:19px;}
.kpi>small {display:block;position:relative;z-index:1;font-size:10px;line-height:1.4;margin-top:13px;}
.meter {height:5px;background:#1c3248;border-radius:8px;margin:8px 0 0;overflow:hidden;}
.meter>span {background:#00b5ea;border-radius:8px;}
.ram-meter>span {background:linear-gradient(90deg,#ae3aff,#b15aff);}
.amber-meter>span {background:#ff9e32;}
.kpi .meter+small {margin-top:5px;}
.metric-spark {position:absolute;bottom:14px;right:16px;width:42%;height:37px;fill:none;stroke:#00b9ff;stroke-width:1.8;pointer-events:none;}
.metric-spark.spark-online {bottom:9px;width:70%;}
.metric-spark.spark-tps {right:15px;bottom:37px;width:27%;stroke:#00bfff;}
.metric-spark.spark-cpu {right:16px;bottom:36px;width:40%;stroke:#ff972d;}
.metric-spark.spark-mspt {bottom:40px;width:45%;stroke:#18e39e;}
.kpi:has(.spark-mspt)>small {margin-top:23px;}
.card {border:1px solid #234158;background:linear-gradient(120deg,#0c1c2c,#091827);border-radius:11px;box-shadow:inset 0 1px #ffffff04;overflow:hidden;}
.card-header {padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;}
.card-header h3 {font-size:13px;font-weight:650;color:#eff5ff;letter-spacing:-.2px;}
.card-title {display:flex;align-items:center;gap:15px;}
.card-title .small {font-size:10px;margin-top:2px;display:block;}
.card-symbol {width:44px;height:38px;border:1px solid #2a4d68;border-radius:6px;background:linear-gradient(135deg,#193448,#102330);font-size:24px;color:#a7e6ff;display:flex;align-items:center;justify-content:center;}
.card-header-actions {display:flex;align-items:center;gap:8px;}
.live-label {font-size:10px;color:#1ce0a0;display:flex;align-items:center;gap:7px;margin-right:4px;}
.dashboard-grid {display:grid;grid-template-columns:minmax(0,1.96fr) minmax(340px,1fr);gap:18px;margin-bottom:13px;align-items:start;}
.dashboard-side {display:block;min-width:0;}
.dashboard-side .performance {display:block;}
.console-preview .card-header {padding:13px 15px;border-bottom:1px solid #1f3a52;background:linear-gradient(90deg,#14283c77,#091827);}
.console-preview .card-header .icon-button {height:29px;width:29px;min-width:29px;}
.console-preview #miniClear {color:#ff4278;}
.mini-logs {height:250px;background:#030e1a;padding:5px 19px 7px;font-size:11px;line-height:1.8;scrollbar-width:thin;scrollbar-color:#005eaa #07131f;}
.log-row {display:grid;grid-template-columns:70px minmax(0,1fr);gap:11px;align-items:start;padding:0;}
.log-time {font-size:10px;color:#618aaf;}
.log-text {color:#c2d5e7;font-size:11px;line-height:1.8;overflow-wrap:anywhere;}
.log-row.warning .log-text {color:#f7bb5e;}.log-row.error .log-text {color:#ff6a8a;}
.log-info-prefix {color:#00bdff;}
.log-plugin {color:#ce75ff;}
.command-line {display:flex;align-items:center;gap:10px;border:0;background:none;padding:6px 12px 4px;margin:0;}
.command-line input {background:linear-gradient(90deg,#15293f,#102034);border:1px solid #1f3b53;border-radius:6px;font:11px/1.4 var(--mono);min-height:34px;padding:8px 11px;color:#d1e9ff;}
.command-line .command-prompt {display:none;}
.command-line .button {min-height:34px;white-space:nowrap;min-width:96px;}
.quick-commands {display:flex;gap:8px;align-items:center;padding:0 15px 6px;background:none;font-size:10px;flex-wrap:wrap;}
.quick-commands>span {font-size:10px;letter-spacing:0;color:#9abbd7;font-weight:400;margin-right:5px;}
.quick-commands button {border:1px solid #29465f;background:linear-gradient(#16283d,#102033);color:#b4d9f9;border-radius:5px;padding:4px 12px;font-size:10px;line-height:1.5;}
.quick-commands button:hover {color:white;border-color:#00a0ff;}
.performance .card-header {padding:15px 17px 6px;border:0;background:none;}
.health-title {display:flex;align-items:center;gap:15px;font-size:11px;font-weight:600;}
.health-title .icon {color:#00c8ff;width:21px;height:21px;}
.health-badge {color:#27ddad;background:#00a27322;border:1px solid #0a6851;font-size:10px;padding:2px 12px;border-radius:13px;letter-spacing:0;}
.health-badge.warn {background:#d5781b24;color:#ffb763;border-color:#8a5726;}
.performance-heading {display:flex;justify-content:space-between;align-items:center;gap:7px;padding:2px 17px 12px;flex-wrap:wrap;}
.performance-heading h3 {font-size:14px;letter-spacing:-.3px;}
.chart-ranges {display:flex;gap:6px;}
.chart-ranges button {background:#071726;border:1px solid #183950;border-radius:6px;padding:5px 9px;color:#97c0e0;font-size:10px;line-height:1.5;}
.chart-ranges button.selected {color:#fff;background:linear-gradient(#075b9e,#063366);border-color:#00aaff;box-shadow:0 0 14px #0077ef50;}
.chart-legend {display:flex;justify-content:space-between;gap:10px;color:#98b5d1;font-size:9px;margin:0 29px 9px 43px;}
.chart-legend>span:before {content:'';display:inline-block;height:7px;width:7px;margin-right:6px;border-radius:50%;background:#00c8f6;}
.chart-legend .legend-cpu:before {background:#ff9d32;}.chart-legend .legend-ram:before {background:#ad5bff;}
.chart-wrap {position:relative;display:flex;gap:9px;height:130px;margin:0 18px 0 16px;padding-right:26px;}
.chart-axis {width:17px;height:100%;font-size:9px;color:#98b8d4;padding:8px 0;}
.chart {height:130px;width:100%;min-width:0;overflow:visible;}
.chart .gridline {stroke:#29435a;stroke-dasharray:2 3;stroke-width:.7;}
.chart .chart-line,.chart-line {stroke:#00c7ff;fill:none;stroke-width:2;vector-effect:non-scaling-stroke;}
.chart-area {fill:url(#chartFill);}
.chart-cpu {fill:none;stroke:#ff9d32;stroke-width:1.8;vector-effect:non-scaling-stroke;}
.chart-ram {fill:none;stroke:#b65eff;stroke-width:1.8;vector-effect:non-scaling-stroke;}
.chart-percent-axis {position:absolute;right:-3px;top:0;bottom:0;display:flex;flex-direction:column;justify-content:space-between;font-size:8px;color:#7794b0;padding:8px 0;}
.chart-caption {display:flex;justify-content:space-between;font-size:9px;color:#8baccb;margin:3px 17px 18px 42px;padding:0;}
.stat-row {display:grid;grid-template-columns:1fr .7fr 1.2fr;border-top:1px solid #18364d;padding:17px 15px 18px;gap:0;margin:0;background:#0d1e2e66;}
.stat-row>div {display:grid;grid-template-columns:26px 1fr;column-gap:8px;row-gap:7px;align-content:start;padding:0 9px;border-right:1px solid #1c3d56;}
.stat-row>div:last-child {border:0;}
.stat-row .icon {grid-row:1 / 3;width:20px;height:20px;color:#abd8fc;}
.stat-row small {font-size:9px;white-space:nowrap;}
.stat-row strong {font-size:12px;line-height:1.3;color:#f0f5ff;white-space:nowrap;}
.dashboard-bottom {display:grid;grid-template-columns:minmax(0,1.8fr) repeat(3,minmax(0,1fr));gap:12px;align-items:stretch;margin-bottom:20px;}
.dashboard-bottom>.card {min-height:124px;}
.community-card .card-header {padding:10px 15px 8px;gap:6px;}
.community-card .card-title {gap:10px;}
.community-card .card-symbol {background:none;border:0;width:20px;height:20px;color:#00c2ff;font-size:19px;}
.community-card .card-header h3 {font-size:11px;}
.community-card .count-chip {background:none;border:0;padding:0 3px;font-size:10px;color:#b1d9fb;}
.community-card .count-chip:before {content:'(';}.community-card .count-chip:after {content:')';}
.community-card .text-button {font-size:10px;white-space:nowrap;}
.player-list {display:flex;flex-direction:column;gap:2px;padding:0 12px 6px;max-height:96px;overflow:auto;}
.player-tile {display:flex;align-items:center;gap:10px;min-width:0;width:100%;border:0;border-radius:6px;background:#15304755;padding:5px 8px;text-align:left;}
.player-tile:hover {background:#1a3b55;}
.player-tile .dot {order:-1;height:6px;width:6px;}
.head-avatar {width:27px;height:27px;border-radius:4px;flex-shrink:0;}
.player-tile-info {flex:1;display:flex;align-items:center;gap:12px;min-width:0;}
.player-tile strong {font-size:11px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
.player-tile small {font-size:9px;margin-left:auto;white-space:nowrap;color:#49dcae;}
.dashboard-bottom .backup-card {padding:11px 14px;display:grid;grid-template-columns:23px minmax(0,1fr);gap:6px 11px;align-items:start;}
.backup-icon {width:22px;height:22px;display:flex;padding:0;background:none;border:0;color:#00c8ff;border-radius:0;}
.backup-icon .icon {width:22px;height:22px;}
.backup-card .eyebrow {font-size:11px;letter-spacing:0;color:#f0f7ff;font-weight:600;text-transform:none;}
.backup-card strong {font-size:12px;font-weight:500;line-height:1.5;margin:5px 0 0;}
.backup-card small {display:block;font-size:9px;line-height:1.6;margin-top:2px;}
.backup-card>.button {grid-column:1 / -1;width:100%;margin:0;min-height:29px;font-size:10px;padding:4px 8px;align-self:end;}
.connection-card,.uptime-card {padding:12px 14px;}
.bottom-card-title {display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.bottom-card-title>.icon {color:#04bdff;width:21px;height:21px;}
.bottom-card-title h3 {font-size:11px;font-weight:600;}
.address-button {padding:0;background:none;border:0;text-align:left;width:100%;height:auto;display:block;color:#d3eafa;font-size:11px;}
.address-button strong {display:block;font-size:11px;overflow-wrap:anywhere;}
.address-button small {display:block;font-size:9px;color:#8bb8db;margin-top:3px;}
.connection-caption {display:flex;align-items:center;gap:9px;font-size:10px;margin:10px 0 0 33px;}
.uptime-card {position:relative;}
.uptime-card>strong {display:block;font-size:14px;margin-left:33px;line-height:1.3;font-variant-numeric:tabular-nums;}
.uptime-card>small {display:block;font-size:9px;margin:5px 0 0 33px;}
.uptime-spark {display:block;width:100%;height:22px;margin-top:7px;fill:none;stroke:#02bcff;stroke-width:1.5;}
.footer {border-top:1px solid #16334a;padding:15px 0 16px;margin:10px 0 0;font-size:9px;color:#668aa6;}
.footer>span:nth-child(2) {display:none;}
.footer .text-button {font-size:10px;}
.footer-brand .dot {background:#00b7ef;}
.text-button {color:#9ecbeb;}
.text-button:hover {color:#e0f5ff;}
.notice {background:#593b1629;border:1px solid #775621;color:#f4cf94;border-radius:8px;}
input,select,textarea {background:#0a1928;border:1px solid #28475e;border-radius:6px;color:#eaf5ff;font-size:12px;}
input:focus,select:focus,textarea:focus {border-color:#009aff;outline:0;box-shadow:0 0 0 3px #008fff20;}
input::placeholder,textarea::placeholder {color:#7e9ebc;}
dialog {background:linear-gradient(130deg,#102236,#081624);border:1px solid #2d5370;border-radius:12px;color:#edf5ff;box-shadow:0 24px 100px #000a;}
dialog::backdrop {background:#020a13d9;backdrop-filter:blur(4px);}
dialog h2 {font-size:24px;letter-spacing:-.6px;}
.dialog-actions {border-color:#244157;}
.toast {background:#0f2a3f;color:#e7f6ff;border:1px solid #27779f;border-radius:8px;box-shadow:0 8px 40px #0008;}
.toast.bad {border-color:#c1325a;background:#371c2b;}
.badge,.pill,.dev-badge {background:#112d43;border-color:#28516c;color:#b7dcf8;border-radius:5px;}
.empty,.dev-empty {font-size:12px;color:#8eadc9;}
/* Every existing workspace follows the same palette and type scale. */
body:not([data-workspace=dashboard]) .page-hero {min-height:153px;}
body:not([data-workspace=dashboard]) .page-heading h1 {font-size:32px;}
body:not([data-workspace=dashboard]) .dashboard-subtitle {display:none;}
body:not([data-workspace=dashboard]) .page-hero-art {opacity:.25;}
.terminal {background:#030e1a;height:calc(100dvh - 403px);min-height:340px;font-size:12px;line-height:1.8;scrollbar-width:thin;}
.terminal-card .card-header {border-bottom:1px solid #244058;}
.terminal-card .command-line {padding:10px 14px;}
.terminal-card .command-line input {font-size:12px;}
.console-filter {background:#102337;border-color:#213d52;}
.hint {font-size:11px;line-height:1.7;}
.segmented {background:#081827;border-color:#214057;border-radius:7px;padding:4px;}
.segmented button {font-size:12px;padding:7px 12px;border-radius:5px;color:#97bddc;}
.segmented button.selected,.segmented button.active {background:#0c4771;color:#dcf5ff;box-shadow:none;}
.extension-tools,.team-tools {border-color:#1c3d56;}
.extension {background:transparent;border-color:#1d3a50;}
.extension:hover {background:#10314a55;}
.extension-icon {background:#11314a;border:1px solid #215577;color:#19bcf8;}
.extension-info strong {font-size:13px;}.extension-info small {font-size:11px;color:#90afc8;}
.extension-state.enabled {background:#0a634333;color:#47e3b0;border-color:#11664d;}
.extension-state.disabled {background:#5d213833;color:#ff86a7;border-color:#7f354d;}
.team-intro,.dev-hero {background:linear-gradient(100deg,#11324b,#0b1c2d);border-color:#25516c;border-radius:10px;padding:21px;margin-bottom:18px;}
.team-intro h2,.dev-hero h2 {font-size:22px;letter-spacing:-.5px;}
.team-intro-icon {background:#007db324;color:#17c8ff;border-color:#1b5d7e;}
.team-intro p,.dev-hero p {color:#9fbfd6;font-size:12px;line-height:1.65;}
.team-stats>article,.permission-group,.role-summary {background:#0b2132;border-color:#20435a;border-radius:8px;}
.team-security strong {font-size:11px;}
.team-table th,table th,.stats-table th,.dev-table th {background:#0c2032;color:#93b6d2;letter-spacing:.03em;font-size:10px;font-weight:600;border-color:#214057;}
.team-table td,table td,.stats-table td,.dev-table td {border-color:#1b374d;font-size:12px;color:#d3e3f1;line-height:1.6;}
table tr:hover,.stats-table tr:hover {background:#12324a66;}
td small {color:#94afc7;}
.stats-toolbar {display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px;}
.stats-toolbar p {font-size:12px;margin-top:5px;}
.stats-toolbar .toolbar {display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.stats-toolbar select {height:34px;min-height:34px;}
.stats-tabs {display:flex;flex-wrap:wrap;gap:4px;margin-bottom:18px;width:fit-content;}
.stats-cards {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;}
.stats-card {background:linear-gradient(130deg,#12273d,#091a2a);border:1px solid #23445d;padding:20px;border-radius:9px;}
.stats-card>small {display:block;font-size:11px;margin-bottom:10px;}
.stats-card>strong {display:block;font-size:28px;letter-spacing:-.8px;color:#f0f7ff;}
.stats-card>span {display:block;color:#9bbbd4;font-size:11px;margin-top:6px;}
.stats-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;}
.stats-section {background:#0b1c2d;border:1px solid #234158;border-radius:9px;margin-bottom:18px;overflow:hidden;}
.stats-section>h3 {font-size:13px;padding:15px 18px;margin:0;border-bottom:1px solid #22425a;}
.stats-chart {width:100%;height:150px;display:block;}
.stats-chart .grid {stroke:#20425b;stroke-width:1;}
.stats-chart path.data {stroke:#02c1f3;stroke-width:2;fill:none;}
.stats-chart path.alt {stroke:#ff9d32;stroke-width:2;fill:none;}
.stats-chart path.third {stroke:#b567ff;stroke-width:2;fill:none;}
.stats-section .chart-caption {margin:0;padding:8px 18px 15px;}
.stats-table {border-collapse:collapse;width:100%;font-size:12px;}
.stats-table th,.stats-table td {padding:12px 15px;text-align:left;vertical-align:top;overflow-wrap:anywhere;}
.stats-table-wrap {overflow:auto;}
.stats-alert {margin:10px 15px;padding:12px;border-left:3px solid #fbb758;background:#fbb7580c;font-size:12px;}
.stats-alert.resolved {border-color:#1edb9a;background:#19be850a;}
.stats-profile {display:flex;align-items:center;justify-content:space-between;gap:12px;background:#0d2033;border:1px solid #25465f;border-radius:9px;padding:17px;margin-bottom:18px;}
.stats-profile p {font-size:11px;color:#a2bed4;margin-top:6px;line-height:1.65;max-width:700px;}
.stats-profile .toolbar {display:flex;gap:8px;}
.stats-section details {padding:15px;}.stats-section pre {font:11px/1.7 var(--mono);max-height:500px;overflow:auto;}
.ops-panel,.ops-card,.ops-summary>article,.ops-empty,.ops-schedule,.ops-scan-summary,.dev-surface,.dev-file-layout,.dev-player-card,.dev-task-card {background:#0b1d2e;border-color:#23465f;border-radius:9px;}
.ops-metric {background:linear-gradient(130deg,#11283f,#091b2b);border:1px solid #23465f;border-radius:9px;}
.ops-card-head {border-color:#23465f;}
.ops-table tbody>tr:hover {background:#12334b;}
.ops-table td,.ops-table th {font-size:12px;letter-spacing:0;}
.ops-table td.ops-size {font-size:12px;}
.ops-finding code {background:#071725;color:#a8d8f3;}
.ops-heading>div:first-child {display:none;}
.ops-heading {justify-content:flex-end;margin-top:-3px;margin-bottom:17px;}
.ops-heading h2 {font-size:23px;letter-spacing:-.5px;}
.ops-number {color:#edf7ff;font-size:27px;}
.ops-tab.active,.dev-module-tab.active {color:#b7eaff;background:#0b4267;border-color:#1485ba;}
.ops-toolbar,.dev-toolbar,.dev-tabs {background:#10283c;border-color:#244a64;}
.ops-table th {background:#0e263b;}.ops-table td {border-color:#1d3c54;}
.ops-table tr:hover {background:#153b5566;}
.dev-tree,.file-tree,.dev-files,.file-list-pane {background:#081a2a;border-color:#23455c;}
.dev-editor,.file-editor-pane,.CodeMirror {background:#071522;color:#d5e8f7;border-color:#20445e;}
.CodeMirror-gutters {background:#0b2031;border-color:#25495f;}
.CodeMirror-linenumber {color:#658ca8;}.CodeMirror-cursor {border-left-color:#c5edff;}
.CodeMirror-selected {background:#194967!important;}
.dev-task,.dev-player,.dev-form-grid,.permission-group,.player-detail-stats>div,.inventory-tooltip {border-color:#23465f;background:#10263a;}
.inventory-slot {background:#123047;border-color:#2b5571;}
.dev-module-tabs {gap:10px;}.dev-module-tab {border-color:#244860;background:#0d2234;}
.dev-badge.good {color:#24dca2;background:#075d412b;border-color:#0a6a50;}
.ops-job-track,.dev-job-progress,.dev-job-track {background:#15354b;}.ops-job-track>span,.dev-job-track>span {background:#00b9f1;}
.ops-kpi,.ops-stat {background:#0c2234;border-color:#20455e;}
.dashboard-grid:has(.console-preview[hidden]),.dashboard-grid:has(.performance[hidden]) {grid-template-columns:1fr;}
.ops-findings .error,.ops-status.error {color:#ff7294;}
.account-card {max-width:620px;padding:25px;}
.account-card h3 {font-size:23px;margin-top:8px;}
.account-card>p {font-size:12px;margin-top:8px;}
/* The login screen is part of the same product. */
.login-screen {background:#04111d;grid-template-columns:1.1fr 1fr;}
.login-art {background-image:linear-gradient(0deg,#04111db8,#04111d30),url('/static/assets/banner.webp');filter:none;background-position:center;background-size:cover;}
.login-art-shade {background:linear-gradient(90deg,transparent,#04111d55);}
.login-side {background:radial-gradient(ellipse at 10% 20%,#0b33544d,transparent 65%),#04111d;padding:40px 55px;}
.login-side>.brand {font-size:25px;}
.login-card {max-width:390px;}
.login-card h1 {font-size:39px;font-weight:700;line-height:1.15;letter-spacing:-1.2px;}
.login-card>.eyebrow {color:#20bff2;}
.login-card .muted {font-size:13px;}
.login-caption {font-size:11px;color:#7fa7c5;}
.login-world-caption h2 {font-size:40px;letter-spacing:-1px;}
.login-caption .dot {background:#1bd4a0;}
.login-footer {font-size:10px;}
.search-dialog {width:min(620px,calc(100vw - 32px));padding:0;max-height:80dvh;margin-top:15dvh;}
.search-dialog-header {display:flex;align-items:center;gap:12px;padding:15px;border-bottom:1px solid #27455c;}
.search-dialog-header>.icon {color:#2ac4ff;}
.search-dialog-header input {border:0;background:none;box-shadow:none;padding:5px 0;font-size:14px;}
.search-results {padding:8px;max-height:45dvh;overflow:auto;}
.search-result {display:flex;align-items:center;gap:10px;text-align:left;width:100%;border:1px solid transparent;border-radius:6px;background:none;padding:12px;color:#cae0f3;}
.search-result:hover,.search-result.selected {background:#123a57;border-color:#266184;}
.search-result small {margin-left:auto;font-size:10px;}
.search-hint {border-top:1px solid #27455c;color:#82a4c0;padding:12px 16px;font-size:10px;}
.mobile-menu {display:none;}
@media(min-width:1800px) {.workspace {padding-left:25px;padding-right:25px}.page-hero-art{left:-25px;right:-25px}.mini-logs{height:300px}.chart-wrap,.chart{height:180px}.kpi{min-height:140px}.page-hero{min-height:195px}}
@media(max-width:1450px) {
  :root {--sidebar:225px;}
  .header-inner {gap:14px;padding-right:18px;}.app-header .brand{padding-left:17px;font-size:20px;gap:8px}.brand img{width:38px;height:38px}
  .hero-panels {grid-template-columns:185px 310px;gap:10px;}.hero-controls{padding:12px}.control-buttons{gap:7px}.button{padding:7px 9px}
  .page-heading h1{font-size:36px}.dashboard-subtitle{font-size:18px}.page-heading p{font-size:12px}.kpi{padding:13px 12px}.kpi-top{font-size:10px;gap:9px}.kpi-number strong{font-size:26px}
  .dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(345px,1fr);gap:13px}.performance-heading{padding-left:13px;padding-right:13px}.performance-heading h3{font-size:13px}.chart-ranges button{padding:4px 6px}
  .stat-row{padding:17px 9px}.stat-row>div{padding:0 5px;column-gap:5px;grid-template-columns:19px 1fr}.stat-row .icon{width:17px;height:17px}.stat-row strong{font-size:10px}.stat-row small{font-size:8px}
  .dashboard-bottom{grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:10px}.community-card .text-button{font-size:9px}.bottom-card-title{gap:8px}.address-button strong{font-size:10px}.backup-card{padding:11px;gap:5px 7px}.uptime-card>strong,.uptime-card>small{margin-left:0}.connection-caption{margin-left:0}
}
@media(max-width:1200px) {
  :root{--sidebar:215px;}.header-user{gap:11px;padding-left:14px}.header-user .role-badge{display:none!important;}.global-search{width:min(440px,45vw)}
  .page-hero{flex-wrap:wrap;gap:13px;padding-bottom:17px;padding-top:12px;min-height:0}.hero-heading{width:100%;min-height:95px}.hero-panels{width:100%;padding:0;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
  .server-status-panel{display:flex;align-items:center;gap:22px;padding:13px 16px}.server-status-facts{margin:0;gap:5px;}.status-pill{font-size:13px;gap:8px}.status-pill .dot{width:10px;height:10px}.hero-controls{gap:7px}.hero-backup{min-height:27px;padding:3px 8px}.control-label .eyebrow{font-size:11px}
  .page-heading h1{font-size:35px}.breadcrumb{padding-bottom:11px}.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi{min-height:126px;padding:14px 17px}.kpi-top{font-size:11px;gap:11px}.kpi-number strong{font-size:29px}
  .dashboard-grid{grid-template-columns:minmax(0,1fr)}.dashboard-side .performance{display:block}.mini-logs{height:275px}.chart-wrap,.chart{height:155px}.performance-heading{justify-content:space-between}.performance-heading h3{font-size:15px}.stat-row>div{grid-template-columns:26px 1fr;padding:0 14px}.stat-row small{font-size:10px}.stat-row strong{font-size:13px}
  .dashboard-bottom{grid-template-columns:repeat(2,minmax(0,1fr))}.community-card .card-header h3{font-size:12px}.player-list{max-height:122px}.stats-toolbar{align-items:flex-start;flex-direction:column}.stats-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-profile{flex-direction:column;align-items:flex-start}
}
@media(max-width:850px) {
  :root{--header:60px;--sidebar:242px;}.app-header .brand{width:auto;border:0;padding-left:0;font-size:21px;gap:9px}.app-header .brand img{display:block;width:36px;height:36px}.header-inner{padding:0 13px;gap:12px}
  .mobile-menu{display:inline-flex;background:none;border:0;font-size:19px}.global-search{margin-left:auto;margin-right:0;width:35px;min-width:35px;padding:8px;background:#10263a}.global-search>span,.global-search kbd{display:none}.header-user{border:0;padding:0;gap:9px}.header-user .role-badge{display:none!important;}.user-button strong,.user-button:after{display:none}#logoutButton{display:none}.notification-button{margin-right:0}
  .server-sidebar{display:none;box-shadow:12px 0 60px #000b;}.sidebar-open .server-sidebar{display:flex}.workspace{margin-left:0;padding:0 16px}.page-hero-art{left:-16px;right:-16px}.page-hero{padding-top:14px}.hero-heading{min-height:105px}.page-heading h1{font-size:35px}.dashboard-subtitle{font-size:18px}.page-heading p{font-size:12px;max-width:400px}.page-hero-art{opacity:.46}
  .hero-panels{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.server-status-panel{display:block}.server-status-facts{margin-top:13px}.hero-controls{padding:11px}.control-buttons{gap:6px}
  .kpis{gap:10px}.kpi{padding:14px;min-height:126px}.kpi-top{font-size:10px;gap:8px}.dashboard-grid{gap:13px}.stats-grid{grid-template-columns:1fr}.stats-tabs{width:100%}.team-intro{padding:19px;flex-wrap:wrap}.team-intro h2{font-size:21px}.login-art{display:none}.login-screen{display:block}.login-side{min-height:100dvh;padding:30px}.login-card{margin:65px auto}.stats-toolbar .toolbar{width:100%}
  body:not([data-workspace=dashboard]) .page-hero{min-height:0}.footer{padding-bottom:20px}.terminal{height:55dvh;min-height:300px}
}
@media(max-width:520px) {
  .app-header .brand{font-size:18px;gap:7px}.app-header .brand img{width:31px;height:31px}.header-inner{gap:9px;padding:0 10px}.header-user{gap:4px}.user-button .avatar{width:30px;height:30px;font-size:10px}.notification-button{width:28px;min-width:28px}.global-search{width:31px;min-width:31px;height:31px;padding:7px}.mobile-menu{min-width:24px;width:24px;padding:0}
  .workspace{padding:0 12px}.page-hero-art{left:-12px;right:-12px}.hero-heading{min-height:106px}.page-heading h1{font-size:32px}.dashboard-subtitle{font-size:17px}.page-heading p{font-size:11px;line-height:1.6}.hero-panels{grid-template-columns:1fr}.server-status-panel{display:flex;gap:16px;padding:12px}.server-status-facts{margin:0;gap:5px;font-size:10px}.status-pill{font-size:12px}.hero-controls{padding:11px}.control-label{margin-bottom:1px}.control-buttons{gap:9px}.hero-backup{min-height:30px}
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:12px}.kpi{padding:12px 13px;min-height:125px}.kpi-top{font-size:10px;gap:8px;margin-bottom:13px}.kpi-number strong{font-size:28px}.kpi-number>span{font-size:10px}.metric-icon{display:flex;width:20px;height:20px}.metric-icon .icon{width:19px;height:19px}.kpi>small{font-size:9px}.metric-spark.spark-mspt{width:38%;right:10px}.metric-spark.spark-cpu{width:35%;right:10px}.metric-spark.spark-tps{width:25%;right:10px}
  .dashboard-bottom{grid-template-columns:1fr}.community-card .text-button{font-size:10px}.player-list{max-height:160px}.dashboard-bottom>.card{min-height:120px}.connection-card,.uptime-card{padding:15px}.backup-card{padding:15px;grid-template-columns:25px 1fr}.backup-card strong{font-size:14px}.backup-card>.button{min-height:32px;margin-top:6px}.address-button strong{font-size:13px}.connection-caption{margin-left:32px}.uptime-card>strong,.uptime-card>small{margin-left:32px}.uptime-spark{height:30px}
  .console-preview .card-header{padding:11px}.card-title{gap:10px}.card-symbol{width:32px;height:32px;font-size:21px}.card-header-actions{gap:5px}.live-label{font-size:8px;gap:5px;margin:0}.console-preview .card-header .icon-button{width:25px;height:25px;min-width:25px;padding:4px}.card-header h3{font-size:12px}.card-title .small{font-size:9px}.mini-logs{height:255px;padding:8px 10px}.log-row{grid-template-columns:54px minmax(0,1fr);gap:7px}.log-time{font-size:8px}.log-text{font-size:10px}.command-line{padding:7px 8px;gap:6px}.command-line input{font-size:10px;min-width:0}.command-line .button{min-width:72px;font-size:10px;padding:5px 8px}.quick-commands{gap:5px;padding:0 9px 8px}.quick-commands>span:first-child{display:none}.quick-commands button{padding:3px 9px;font-size:9px}
  .performance-heading{gap:10px}.performance-heading h3{font-size:14px}.chart-ranges button{font-size:9px;padding:4px 7px}.chart-legend{margin-left:39px;margin-right:30px;font-size:8px}.chart-caption{font-size:8px}.chart-caption>span:nth-child(2){display:none}.stat-row{grid-template-columns:1fr .75fr 1.3fr;padding:15px 8px}.stat-row>div{padding:0 4px;grid-template-columns:1fr;gap:5px}.stat-row .icon{display:none}.stat-row small{font-size:8px;white-space:normal}.stat-row strong{font-size:11px}
  .stats-cards{gap:9px}.stats-card{padding:15px 12px}.stats-card>strong{font-size:24px}.stats-card>span,.stats-card>small{font-size:10px}.stats-toolbar .toolbar .button{flex:1;font-size:10px}.stats-tabs button{padding:7px 9px;font-size:10px}.stats-profile .toolbar{flex-wrap:wrap}.team-intro h2{font-size:19px}.team-intro-icon{width:38px;height:38px;font-size:24px}.team-stats{gap:8px}.team-stats>article{padding:13px}.team-tools{flex-wrap:wrap}.team-tools select{width:100%}.dev-hero{padding:16px}.dev-hero h2{font-size:20px}.ops-heading{gap:12px;flex-wrap:wrap}.ops-heading h2{font-size:21px}.account-card{padding:20px}.footer>span:first-child{font-size:8px}.login-side{padding:25px}.login-card h1{font-size:34px}
}
@media(prefers-reduced-motion:reduce) {*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.hero-controls{justify-content:flex-start;height:auto}.hero-controls .control-buttons{margin:0}.hero-controls .hero-backup{margin-top:0}.card-header .mini-logs{background:#030e1a}
