:root,
[data-bs-theme=dark] {
  --sc-bg: #0a0a10;
  --sc-surface: #14141c;
  --sc-border: #2a2a35;
  --sc-orange: #f97316;
  --sc-orange-dark: #ea580c;
  --sc-orange-light: #fb923c;
  --sc-green: #4ade80;
  --sc-green-dark: #1db954;
  --sc-red: #f87171;
  --sc-text: #f4f4f5;
  --sc-muted: #a1a1aa;

  --bs-body-bg: var(--sc-bg);
  --bs-body-color: var(--sc-text);
  --bs-body-font-family: 'Poppins', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --bs-border-color: var(--sc-border);
  --bs-secondary-color: var(--sc-muted);
  --bs-link-color: var(--sc-orange-light);
  --bs-link-color-rgb: 251, 146, 60;
  --bs-link-hover-color: var(--sc-orange);
  --bs-link-hover-color-rgb: 249, 115, 22;
  --bs-tertiary-bg: var(--sc-surface);
}

body { background: var(--sc-bg); color: var(--sc-text); }

.sc-muted { color: var(--sc-muted) !important; }
.text-orange { color: var(--sc-orange) !important; }
.text-green { color: var(--sc-green) !important; }
.bg-orange { background-color: var(--sc-orange) !important; color: #fff !important; }
.bg-green { background-color: var(--sc-green) !important; }

.btn-orange { --bs-btn-color: #fff; --bs-btn-bg: var(--sc-orange); --bs-btn-border-color: var(--sc-orange);
  --bs-btn-hover-color: #fff; --bs-btn-hover-bg: var(--sc-orange-dark); --bs-btn-hover-border-color: var(--sc-orange-dark);
  --bs-btn-active-bg: var(--sc-orange-dark); --bs-btn-active-border-color: var(--sc-orange-dark); --bs-btn-active-color: #fff; font-weight: 600; }
.btn-outline-orange { --bs-btn-color: var(--sc-orange-light); --bs-btn-border-color: var(--sc-orange);
  --bs-btn-hover-color: #fff; --bs-btn-hover-bg: var(--sc-orange); --bs-btn-hover-border-color: var(--sc-orange);
  --bs-btn-active-bg: var(--sc-orange-dark); --bs-btn-active-color: #fff; font-weight: 600; }
.btn-green { --bs-btn-color: var(--sc-bg); --bs-btn-bg: var(--sc-green); --bs-btn-border-color: var(--sc-green);
  --bs-btn-hover-color: var(--sc-bg); --bs-btn-hover-bg: var(--sc-green-dark); --bs-btn-hover-border-color: var(--sc-green-dark);
  --bs-btn-active-bg: var(--sc-green-dark); --bs-btn-active-color: var(--sc-bg); font-weight: 600; }

.sc-navbar { background: rgba(10, 10, 16, .85); backdrop-filter: blur(10px); border-bottom: 1px solid var(--sc-border); }
.sc-navbar .nav-link { color: var(--sc-muted); }
.sc-navbar .nav-link:hover, .sc-navbar .nav-link.active { color: var(--sc-orange-light); }
.sc-user-btn { background: var(--sc-surface); border: 1px solid var(--sc-border); color: var(--sc-text); }

.sc-card { background: var(--sc-surface); border: 1px solid var(--sc-border); border-radius: 1rem; }
.sc-card-featured { border-color: var(--sc-orange); box-shadow: 0 0 40px rgba(249, 115, 22, .15); }

.sc-hero { min-height: 88vh; background:
  radial-gradient(ellipse at 20% 20%, rgba(249, 115, 22, .22), transparent 55%),
  radial-gradient(ellipse at 80% 70%, rgba(74, 222, 128, .15), transparent 55%),
  var(--sc-bg); }
.sc-hero h1 { letter-spacing: -.02em; }

.sc-status { padding: .5rem 1rem; font-weight: 500; border: 1px solid var(--sc-border); background: var(--sc-surface); }
.sc-status-online i { color: var(--sc-green); }
.sc-status-offline i { color: var(--sc-red); }

.sc-ip { background: var(--sc-surface); border: 1px dashed var(--sc-orange); color: var(--sc-text); font-family: ui-monospace, monospace; padding: .6rem 1.2rem; }
.sc-ip:hover { border-style: solid; color: var(--sc-orange-light); }

.sc-feature-icon { font-size: 2.2rem; color: var(--sc-orange); }
.sc-stat { font-size: 2rem; font-weight: 800; color: var(--sc-orange-light); }

.sc-admin-nav .nav-link { color: var(--sc-muted); }
.sc-admin-nav .nav-link.active { background: var(--sc-orange); color: #fff; }

.form-control, .form-select { background-color: #0f0f16; border-color: var(--sc-border); color: var(--sc-text); }
.form-control:focus, .form-select:focus { background-color: #0f0f16; color: var(--sc-text); border-color: var(--sc-orange); box-shadow: 0 0 0 .2rem rgba(249, 115, 22, .25); }
.form-check-input:checked { background-color: var(--sc-orange); border-color: var(--sc-orange); }

.table { --bs-table-bg: transparent; }
.sc-footer { border-top: 1px solid var(--sc-border); color: var(--sc-muted); }
