/* Plain console look, loaded last: neutral greys, system fonts, flat surfaces, no decorative motion. */
:root {
  --bg: #0e0e0f;
  --side-bg: #111112;
  --panel: #161617;
  --panel-2: #1b1b1d;
  --raise: #232325;
  --field: #111112;
  --line: #262628;
  --line-2: #303033;
  --line-3: #404044;
  --text: #ececee;
  --sub: #a2a2a8;
  --faint: #6f6f76;
  --accent: #d9d9de;
  --accent-hi: #ffffff;
  --accent-ink: #111112;
  --accent-dim: rgba(255, 255, 255, 0.07);
  --focus: rgba(160, 170, 190, 0.55);
  --green: #3fb950;
  --green-dim: rgba(63, 185, 80, 0.12);
  --red: #f85149;
  --red-dim: rgba(248, 81, 73, 0.12);
  --amber: #d29922;
  --amber-dim: rgba(210, 153, 34, 0.12);
  --blue: #58a6ff;
  --blue-dim: rgba(88, 166, 255, 0.12);
  --hover: rgba(255, 255, 255, 0.03);
  --radius: 6px;
  --radius-lg: 8px;
  --sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --display: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --mono: ui-monospace, "Cascadia Mono", Consolas, "SF Mono", Menlo, monospace;
  --lift: none;
  --grain: none;
}

/* no decorative motion: only quick colour changes on hover */
*:not(.ch-dots i), *::before, *:not(.busy):not(.boot-bar)::after { animation: none !important; }
* { transition-property: color, background-color, border-color, opacity !important; transition-duration: .08s !important; }
.sk { background: var(--raise) !important; background-image: none !important; }

body { background: var(--bg) !important; font: 400 13px/1.5 var(--sans); font-feature-settings: normal; }
::selection { background: rgba(88, 166, 255, .35); }

/* flat type: no condensed display face, no tracking, no all-caps headings */
h1 { font: 600 20px/1.3 var(--sans) !important; letter-spacing: 0 !important; text-transform: none !important; }
h2 { font: 600 14px/1.3 var(--sans) !important; letter-spacing: 0 !important; text-transform: none !important; }
h3 { font: 600 13px/1.3 var(--sans) !important; letter-spacing: 0 !important; text-transform: none !important; }
.caps, .nav-group, .label, .hn span, .hero-kicker, .hero-strip .label, .login-foot, th { letter-spacing: .02em !important; }
.nav-group { font: 600 11px/1 var(--sans) !important; text-transform: none !important; color: var(--faint) !important; }
th { font: 600 11.5px/1.3 var(--sans) !important; text-transform: none !important; color: var(--faint) !important; }

/* flat surfaces: no gradients, glows or heavy shadows */
.panel, .card, .tile, .dt-tile, .phead, .hero, .login-card, .dialog, .palette, .toast, .srv, .slot, .act, .pr-tag { background-image: none !important; box-shadow: none !important; }
.panel, .card, .phead, .srv, .login-card { background-color: var(--panel) !important; border-color: var(--line) !important; }
.dialog, .palette, .toast { background-color: var(--panel-2) !important; border: 1px solid var(--line-2) !important; box-shadow: 0 8px 24px rgba(0, 0, 0, .45) !important; }
.badge.on::before { box-shadow: none !important; }

/* buttons: solid and quiet; the primary one is light grey with dark text */
.btn { background-image: none !important; box-shadow: none !important; transform: none !important; }
.btn.primary, .btn.good { background: #e6e6ea !important; color: #111112 !important; border-color: #e6e6ea !important; }
.btn.primary:hover, .btn.good:hover { background: #ffffff !important; border-color: #ffffff !important; }
.btn.danger { background: transparent !important; color: var(--red) !important; border-color: rgba(248, 81, 73, .45) !important; }
.btn.danger:hover { background: var(--red-dim) !important; }
.ch-go, .ch-badge { background: #e6e6ea !important; color: #111112 !important; }

/* sidebar: plain list, active item is a grey row */
.side { background: var(--side-bg) !important; border-right: 1px solid var(--line) !important; }
.nav::before, .nav::after { display: none !important; }
.nav a { border-radius: var(--radius) !important; }
.nav a.active { background: var(--raise) !important; color: var(--text) !important; box-shadow: none !important; }
.nav a.active svg { color: var(--text) !important; }
.brand-logo { max-width: 150px !important; height: auto !important; filter: none !important; }
.top { background: var(--bg) !important; backdrop-filter: none !important; border-bottom: 1px solid var(--line) !important; }
.tabs button.on, .tabs .on { box-shadow: inset 0 -2px 0 var(--text) !important; color: var(--text) !important; }
.tabs::after, .fchips::after, .chips::after { display: none !important; }

/* signed-in person, Discord-style: picture, display name, @username */
.side-dc { gap: 9px !important; }
.side-pfp { width: 32px; height: 32px; flex: none; border-radius: 50%; background: var(--raise); object-fit: cover; }
.side-dc .side-me-t { flex: 1; gap: 1px !important; }
.side-dc .side-me-t b { font-size: 13px; font-weight: 600; }
.side-handle { font-size: 11.5px; color: var(--faint); }
.side-dc > .role-chip { flex: none; font-size: 10px !important; }

/* sign-in: a plain centred card */
.login { justify-content: center; background: var(--bg) !important; padding: 40px 16px !important; }
.login::before, .login-bg { display: none !important; }
.login-inner { max-width: 360px !important; }
.login-logo { width: 200px !important; max-width: 200px !important; margin: 0 auto 4px !important; filter: none !important; }
.login-foot { display: none !important; }
.role-opt input:checked + span { border-color: var(--text) !important; background: var(--raise) !important; }
.boot { background: var(--bg) !important; }
.boot-logo { display: none !important; }

/* overview header: numbers on a plain panel, no artwork */
.hero { background: var(--panel) !important; border: 1px solid var(--line) !important; border-radius: var(--radius-lg) !important; }
.hero-art { display: none !important; }
.hero-top { min-height: 0 !important; padding: 18px 20px !important; }
.hero-main { max-width: none !important; }
.hn b { font: 600 28px/1.1 var(--sans) !important; color: var(--text) !important; background: none !important; -webkit-text-fill-color: currentColor !important; }
.hn span, .hero-strip .label { font: 500 12px/1.3 var(--sans) !important; text-transform: none !important; }
.hero-strip { background: transparent !important; }
.hero-strip .v { font: 600 17px/1.2 var(--sans) !important; }
.hero-kicker i::after { display: none !important; }

/* stat tiles and big numbers in the normal face */
.tile .v, .dt-tile b, .money-now, .gr-big, .gr-stats b { font-family: var(--sans) !important; letter-spacing: 0 !important; }
.dt-tile.accent b { color: var(--text) !important; }
.dt-tile.accent { background: var(--panel) !important; border-color: var(--line) !important; }

/* tables: compact rows, quiet hover */
table.t td { padding-top: 8px; padding-bottom: 8px; }
table.t tbody tr:hover { background: var(--hover) !important; }

/* selection states use grey, not a brand colour */
.ds-item.on, .ae-item.on, .ch-room.on, .slot.on { background: var(--raise) !important; box-shadow: inset 2px 0 0 var(--text) !important; }
.slot.on { box-shadow: 0 0 0 1px var(--line-3) !important; }
.gr-switch.on, .pr-tag.on .pr-sw { background: var(--blue) !important; }
.seg button.on, .pill.on, .pills .on { background: var(--raise) !important; color: var(--text) !important; border-color: var(--line-3) !important; }
