:root {
  --theme-bg-start: #101010;
  --theme-bg-mid: #101010;
  --theme-bg-end: #101010;
  --theme-accent-1: #bcbcbc;
  --theme-accent-2: #969696;
  --theme-color-2-1: #606060;
  --theme-color-2-2: #484848;
  --theme-btn-tertiary-1: #000000;
  --theme-btn-tertiary-2: #000000;
  --theme-orb-1: rgba(102, 126, 234, 0.25);
  --theme-orb-2: rgba(118, 75, 162, 0.2);
  --theme-orb-3: rgba(56, 178, 172, 0.15);
  --theme-surface: rgba(15, 15, 25, 0.95);
  --theme-surface-hover: rgba(25, 25, 40, 0.95);
  --theme-card-bg: rgba(10, 10, 18, 0.9);
  --theme-gradient: linear-gradient(135deg, var(--theme-accent-1), var(--theme-accent-2));
  /* Node type colors - borders are low opacity for subtle outlines */
  --theme-node-person: #bcbcbc;
  --theme-node-person-border: rgba(188, 188, 188, 0.35);
  --theme-node-company: #969696;
  --theme-node-company-border: rgba(150, 150, 150, 0.35);
  --theme-node-family: #d0d0d0;
  --theme-node-family-border: #a0a0a0;
  --theme-node-custom: #737373;
  --theme-node-custom-border: #606060;
  --theme-node-validated: #e0e0e0;
  --theme-node-validated-border: #b0b0b0;
}

[data-theme="obsidian"] {
  --theme-bg-start: #000000;
  --theme-bg-mid: #050505;
  --theme-bg-end: #020202;
  --theme-accent-1: #888888;
  --theme-accent-2: #555555;
  --theme-color-2-1: #666666;
  --theme-color-2-2: #444444;
  --theme-btn-tertiary-1: #000000;
  --theme-btn-tertiary-2: #000000;
  --theme-orb-1: rgba(100, 100, 100, 0.12);
  --theme-orb-2: rgba(80, 80, 80, 0.08);
  --theme-orb-3: rgba(60, 60, 60, 0.05);
  --theme-surface: rgba(10, 10, 10, 0.95);
  --theme-surface-hover: rgba(20, 20, 20, 0.95);
  --theme-card-bg: rgba(5, 5, 5, 0.9);
  --theme-gradient: linear-gradient(135deg, var(--theme-accent-1), var(--theme-accent-2));
  --theme-node-person: #888888;
  --theme-node-person-border: rgba(136, 136, 136, 0.35);
  --theme-node-company: #666666;
  --theme-node-company-border: rgba(102, 102, 102, 0.35);
  --theme-node-family: #999999;
  --theme-node-family-border: #777777;
  --theme-node-custom: #555555;
  --theme-node-custom-border: #444444;
  --theme-node-validated: #aaaaaa;
  --theme-node-validated-border: #888888;
}

[data-theme="ocean"] {
  --theme-bg-start: #040810;
  --theme-bg-mid: #081018;
  --theme-bg-end: #030608;
  --theme-accent-1: #00b4d8;
  --theme-accent-2: #0077b6;
  --theme-color-2-1: #06d6a0;
  --theme-color-2-2: #00a878;
  --theme-btn-tertiary-1: #000000;
  --theme-btn-tertiary-2: #000000;
  --theme-orb-1: rgba(0, 180, 216, 0.2);
  --theme-orb-2: rgba(0, 119, 182, 0.15);
  --theme-orb-3: rgba(3, 169, 244, 0.1);
  --theme-surface: rgba(8, 20, 35, 0.95);
  --theme-surface-hover: rgba(15, 35, 55, 0.95);
  --theme-card-bg: rgba(5, 12, 22, 0.9);
  --theme-gradient: linear-gradient(135deg, var(--theme-accent-1), var(--theme-accent-2));
  --theme-node-person: #00b4d8;
  --theme-node-person-border: rgba(0, 180, 216, 0.35);
  --theme-node-company: #06d6a0;
  --theme-node-company-border: rgba(6, 214, 160, 0.35);
  --theme-node-family: #48cae4;
  --theme-node-family-border: #00b4d8;
  --theme-node-custom: #f72585;
  --theme-node-custom-border: #b5179e;
  --theme-node-validated: #4cc9f0;
  --theme-node-validated-border: #4895ef;
}

[data-theme="forest"] {
  --theme-bg-start: #030804;
  --theme-bg-mid: #050c06;
  --theme-bg-end: #020502;
  --theme-accent-1: #22c55e;
  --theme-accent-2: #16a34a;
  --theme-color-2-1: #facc15;
  --theme-color-2-2: #eab308;
  --theme-btn-tertiary-1: #000000;
  --theme-btn-tertiary-2: #000000;
  --theme-orb-1: rgba(34, 197, 94, 0.18);
  --theme-orb-2: rgba(22, 163, 74, 0.12);
  --theme-orb-3: rgba(74, 222, 128, 0.08);
  --theme-surface: rgba(10, 25, 12, 0.95);
  --theme-surface-hover: rgba(18, 40, 20, 0.95);
  --theme-card-bg: rgba(6, 15, 8, 0.9);
  --theme-gradient: linear-gradient(135deg, var(--theme-accent-1), var(--theme-accent-2));
  --theme-node-person: #22c55e;
  --theme-node-person-border: rgba(34, 197, 94, 0.35);
  --theme-node-company: #facc15;
  --theme-node-company-border: rgba(250, 204, 21, 0.35);
  --theme-node-family: #a3e635;
  --theme-node-family-border: #84cc16;
  --theme-node-custom: #f97316;
  --theme-node-custom-border: #ea580c;
  --theme-node-validated: #4ade80;
  --theme-node-validated-border: #22c55e;
}

[data-theme="sunset"] {
  --theme-bg-start: #080404;
  --theme-bg-mid: #0c0605;
  --theme-bg-end: #050302;
  --theme-accent-1: #f97316;
  --theme-accent-2: #ea580c;
  --theme-color-2-1: #fbbf24;
  --theme-color-2-2: #f59e0b;
  --theme-btn-tertiary-1: #000000;
  --theme-btn-tertiary-2: #000000;
  --theme-orb-1: rgba(249, 115, 22, 0.2);
  --theme-orb-2: rgba(234, 88, 12, 0.15);
  --theme-orb-3: rgba(251, 191, 36, 0.1);
  --theme-surface: rgba(25, 15, 10, 0.95);
  --theme-surface-hover: rgba(40, 25, 18, 0.95);
  --theme-card-bg: rgba(15, 10, 6, 0.9);
  --theme-gradient: linear-gradient(135deg, var(--theme-accent-1), var(--theme-accent-2));
  --theme-node-person: #f97316;
  --theme-node-person-border: rgba(249, 115, 22, 0.35);
  --theme-node-company: #fbbf24;
  --theme-node-company-border: rgba(251, 191, 36, 0.35);
  --theme-node-family: #fcd34d;
  --theme-node-family-border: #fbbf24;
  --theme-node-custom: #ef4444;
  --theme-node-custom-border: #dc2626;
  --theme-node-validated: #fb923c;
  --theme-node-validated-border: #f97316;
}

[data-theme="cyberpunk"] {
  --theme-bg-start: #040408;
  --theme-bg-mid: #080510;
  --theme-bg-end: #030408;
  --theme-accent-1: #ec4899;
  --theme-accent-2: #06b6d4;
  --theme-color-2-1: #06b6d4;
  --theme-color-2-2: #0891b2;
  --theme-btn-tertiary-1: #000000;
  --theme-btn-tertiary-2: #000000;
  --theme-orb-1: rgba(236, 72, 153, 0.22);
  --theme-orb-2: rgba(6, 182, 212, 0.18);
  --theme-orb-3: rgba(168, 85, 247, 0.12);
  --theme-surface: rgba(15, 10, 25, 0.95);
  --theme-surface-hover: rgba(25, 18, 40, 0.95);
  --theme-card-bg: rgba(10, 6, 18, 0.9);
  --theme-gradient: linear-gradient(135deg, var(--theme-accent-1), var(--theme-accent-2));
  --theme-node-person: #ec4899;
  --theme-node-person-border: rgba(236, 72, 153, 0.35);
  --theme-node-company: #06b6d4;
  --theme-node-company-border: rgba(6, 182, 212, 0.35);
  --theme-node-family: #a855f7;
  --theme-node-family-border: #9333ea;
  --theme-node-custom: #f43f5e;
  --theme-node-custom-border: #e11d48;
  --theme-node-validated: #22d3ee;
  --theme-node-validated-border: #06b6d4;
}

[data-theme="monochrome"] {
  --theme-bg-start: #040404;
  --theme-bg-mid: #080808;
  --theme-bg-end: #030303;
  --theme-accent-1: #ffffff;
  --theme-accent-2: #888888;
  --theme-color-2-1: #a0a0a0;
  --theme-color-2-2: #808080;
  --theme-btn-tertiary-1: #000000;
  --theme-btn-tertiary-2: #000000;
  --theme-orb-1: rgba(255, 255, 255, 0.06);
  --theme-orb-2: rgba(200, 200, 200, 0.04);
  --theme-orb-3: rgba(150, 150, 150, 0.03);
  --theme-surface: rgba(15, 15, 15, 0.95);
  --theme-surface-hover: rgba(25, 25, 25, 0.95);
  --theme-card-bg: rgba(8, 8, 8, 0.9);
  --theme-gradient: linear-gradient(135deg, var(--theme-accent-1), var(--theme-accent-2));
  --theme-node-person: #ffffff;
  --theme-node-person-border: rgba(255, 255, 255, 0.35);
  --theme-node-company: #a0a0a0;
  --theme-node-company-border: rgba(160, 160, 160, 0.35);
  --theme-node-family: #dddddd;
  --theme-node-family-border: #bbbbbb;
  --theme-node-custom: #666666;
  --theme-node-custom-border: #444444;
  --theme-node-validated: #eeeeee;
  --theme-node-validated-border: #cccccc;
}

[data-theme="brown"] {
  --theme-bg-start: #080502;
  --theme-bg-mid: #0c0804;
  --theme-bg-end: #050301;
  --theme-accent-1: #b45309;
  --theme-accent-2: #92400e;
  --theme-color-2-1: #d97706;
  --theme-color-2-2: #b45309;
  --theme-btn-tertiary-1: #000000;
  --theme-btn-tertiary-2: #000000;
  --theme-orb-1: rgba(180, 83, 9, 0.2);
  --theme-orb-2: rgba(146, 64, 14, 0.15);
  --theme-orb-3: rgba(217, 119, 6, 0.1);
  --theme-surface: rgba(22, 14, 6, 0.95);
  --theme-surface-hover: rgba(38, 24, 10, 0.95);
  --theme-card-bg: rgba(14, 8, 4, 0.9);
  --theme-gradient: linear-gradient(135deg, var(--theme-accent-1), var(--theme-accent-2));
  --theme-node-person: #b45309;
  --theme-node-person-border: rgba(180, 83, 9, 0.35);
  --theme-node-company: #d97706;
  --theme-node-company-border: rgba(217, 119, 6, 0.35);
  --theme-node-family: #f59e0b;
  --theme-node-family-border: #d97706;
  --theme-node-custom: #78350f;
  --theme-node-custom-border: #451a03;
  --theme-node-validated: #fbbf24;
  --theme-node-validated-border: #f59e0b;
}

[data-theme="crimson"] {
  --theme-bg-start: #080404;
  --theme-bg-mid: #0c0505;
  --theme-bg-end: #050202;
  --theme-accent-1: #dc2626;
  --theme-accent-2: #991b1b;
  --theme-color-2-1: #f97316;
  --theme-color-2-2: #ea580c;
  --theme-btn-tertiary-1: #000000;
  --theme-btn-tertiary-2: #000000;
  --theme-orb-1: rgba(220, 38, 38, 0.18);
  --theme-orb-2: rgba(153, 27, 27, 0.12);
  --theme-orb-3: rgba(248, 113, 113, 0.08);
  --theme-surface: rgba(20, 10, 10, 0.95);
  --theme-surface-hover: rgba(35, 18, 18, 0.95);
  --theme-card-bg: rgba(12, 6, 6, 0.9);
  --theme-gradient: linear-gradient(135deg, var(--theme-accent-1), var(--theme-accent-2));
  --theme-node-person: #dc2626;
  --theme-node-person-border: rgba(220, 38, 38, 0.35);
  --theme-node-company: #f97316;
  --theme-node-company-border: rgba(249, 115, 22, 0.35);
  --theme-node-family: #fca5a5;
  --theme-node-family-border: #f87171;
  --theme-node-custom: #b91c1c;
  --theme-node-custom-border: #7f1d1d;
  --theme-node-validated: #fecaca;
  --theme-node-validated-border: #fca5a5;
}

body {
  background: linear-gradient(135deg, var(--theme-bg-start) 0%, var(--theme-bg-mid) 30%, var(--theme-bg-mid) 60%, var(--theme-bg-end) 100%) !important;
}

.bg-orb-1 {
  background: radial-gradient(circle, var(--theme-orb-1) 0%, transparent 70%) !important;
}

.bg-orb-2 {
  background: radial-gradient(circle, var(--theme-orb-2) 0%, transparent 70%) !important;
}

.bg-orb-3 {
  background: radial-gradient(circle, var(--theme-orb-3) 0%, transparent 70%) !important;
}

/* Research console chrome. Stored graph colors, images and map layers remain
   user content: no filters or blanket descendant overrides. */
:root, :root[data-theme] {
  --console-mono: 'SFMono-Regular', Consolas, 'Liberation Mono', monospace;
  --theme-node-person: #bcbcbc;
  --theme-node-person-border: rgba(188,188,188,.35);
  --theme-node-company: #969696;
  --theme-node-company-border: rgba(150,150,150,.35);
  --theme-node-family: #d0d0d0;
  --theme-node-family-border: #a0a0a0;
  --theme-node-custom: #737373;
  --theme-node-custom-border: #606060;
  --theme-node-validated: #e0e0e0;
  --theme-node-validated-border: #b0b0b0;
  --theme-bg-start: #000000;
  --theme-bg-mid: #000000;
  --theme-bg-end: #000000;
  --theme-bg-1: #000000;
  --theme-bg-2: #000000;
  --theme-accent-1: #ffffff;
  --theme-accent-2: #ffffff;
  --theme-color-2-1: #ffffff;
  --theme-color-2-2: #ffffff;
  --theme-btn-secondary-1: #000000;
  --theme-btn-secondary-2: #000000;
  --theme-btn-tertiary-1: #000000;
  --theme-btn-tertiary-2: #000000;
  --theme-orb-1: rgba(255,255,255,.08);
  --theme-orb-2: rgba(255,255,255,.05);
  --theme-orb-3: rgba(255,255,255,.03);
  --theme-surface: #000000;
  --theme-surface-hover: #000000;
  --theme-card-bg: #000000;
  --theme-gradient: linear-gradient(#ffffff, #ffffff);
}
html { background: #000000 !important; }
body {
  font-family: 'Avenir Next', 'Segoe UI', sans-serif !important;
  background: #000000 !important;
  color: #ffffff;
  min-height: 100dvh;
}
.bg-orbs, .grid-lines { display: none !important; }
.logo, .logo-premium, .lock-screen-logo, .settings-header h1,
.create-canvas-modal-header h2 {
  background: none !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: none !important;
  animation: none !important;
  letter-spacing: -.035em;
}
.subtitle-premium {
  color: #ffffff !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 1.6;
  animation: none !important;
}
.premium-card, .login-card, .card, .settings-section, .sidebar,
.selected-sidebar, .edit-sidebar, .context-menu, .modal-content,
.create-canvas-modal, .lock-screen-card {
  background: #000000 !important;
  border: 1px solid #ffffff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
.premium-card {
  animation: none !important;
  transition: none !important;
}
.premium-card:hover {
  transform: none !important;
  outline: 1px solid #ffffff;
  outline-offset: 3px;
}
.login-card, .lock-screen-card { border-top: 2px solid #ffffff !important; }
.lock-screen {
  background-color: #000000 !important;
  background-image: linear-gradient(#ffffff06 1px, transparent 1px),
    linear-gradient(90deg, #ffffff06 1px, transparent 1px) !important;
  background-size: 48px 48px !important;
}
.lock-screen-content {
  width: 100%;
  max-width: 520px !important;
  text-align: left !important;
}
.lock-screen-subtitle, .login-card .subtitle {
  font-family: var(--console-mono);
  font-size: 11px !important;
  letter-spacing: .1em !important;
  text-transform: uppercase;
  color: #ffffff !important;
  text-align: left !important;
  margin-bottom: 28px !important;
}
.login-container { max-width: 460px !important; }
.login-card .logo { text-align: left !important; }
.login-context {
  margin-bottom: 28px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ffffff;
  color: #ffffff;
  font-size: 14px;
  line-height: 1.6;
}
.login-context strong { display: block; color: #ffffff; margin-bottom: 6px; }
.lock-screen-message { color: #ffffff !important; }
.form-group label, .config-item label, .order-label,
.section-header, .subsection-header, .section-title,
.sidebar-tab, .tab-item, .lock-screen-btn, .submit-btn {
  font-family: var(--console-mono) !important;
}
.section-header, .subsection-header, .section-title {
  font-size: 12px !important;
  letter-spacing: .06em;
}
.section-header::before { background: #ffffff !important; border-radius: 0 !important; }
.desc-text { color: #ffffff !important; line-height: 1.6; }
.form-group input, .modern-input, .modern-number, .modern-select,
.config-item input[type="number"], .config-item select {
  background-color: #000000 !important;
  border: 1px solid #ffffff !important;
  border-radius: 0 !important;
  color: #ffffff !important;
  box-shadow: none !important;
}
.modern-select option, .config-item select option { background: #000000 !important; color: #ffffff !important; }
.search-section, .order-section, .info-box, .canvas-placeholder,
.drop-zone, .modern-stepper, .checkbox-box {
  border-radius: 0 !important;
  background: #000000 !important;
  color: #ffffff !important;
  border: 1px solid #ffffff !important;
  box-shadow: none !important;
}
.form-group input::placeholder, .modern-input::placeholder {
  color: #ffffff !important;
  opacity: 1;
  font-style: italic;
}
.btn-premium, .btn-primary, .submit-btn, .modal-confirm,
.btn-color-2, .btn-color-3, .btn-gradient-orange, .btn-gradient-pink,
.lock-screen-btn, .create-canvas-modal-close, .order-control-btn, .export-btn {
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: none !important;
}
.btn-premium:hover, .btn-color-2:hover, .btn-color-3:hover,
.btn-gradient-orange:hover, .btn-gradient-pink:hover,
.submit-btn:hover:not(:disabled), .lock-screen-btn:hover {
  transform: none !important;
}
.btn-premium, .btn-primary, .submit-btn, .modal-confirm, .btn-color-2,
.btn-gradient-orange, .btn-gradient-pink, .lock-screen-btn-primary {
  background: #ffffff !important;
  color: #000000 !important;
  border: 1px solid #ffffff !important;
  box-shadow: none !important;
}
.btn-color-3, .lock-screen-btn-secondary, .create-canvas-modal-close,
.order-control-btn, .export-btn {
  background: #000000 !important;
  color: #ffffff !important;
  border: 1px solid #ffffff !important;
}
.btn-premium:hover:not(:disabled), .btn-primary:hover:not(:disabled),
.submit-btn:hover:not(:disabled), .modal-confirm:hover:not(:disabled),
.btn-color-2:hover:not(:disabled), .btn-gradient-orange:hover:not(:disabled),
.btn-gradient-pink:hover:not(:disabled), .lock-screen-btn-primary:hover:not(:disabled) {
  background: #000000 !important;
  color: #ffffff !important;
}
.btn-color-3:hover:not(:disabled), .lock-screen-btn-secondary:hover:not(:disabled),
.create-canvas-modal-close:hover:not(:disabled), .order-control-btn:hover:not(:disabled),
.export-btn:hover:not(:disabled) {
  background: #ffffff !important;
  color: #000000 !important;
}
.btn-premium::before { display: none !important; }
.tab-bar .tab-item {
  background: #000000 !important;
  border-color: #ffffff !important;
  border-radius: 0 !important;
  color: #ffffff !important;
  font-size: 11px;
  box-shadow: none !important;
}
.tab-bar .tab-item:hover { color: #000000 !important; background: #ffffff !important; }
.tab-item.active {
  background: #ffffff !important;
  border-color: #ffffff !important;
}
.tab-bar .tab-item.active {
  background: #ffffff !important;
  color: #000000 !important;
  border-color: #ffffff !important;
}
.tab-bar .tab-item .tab-label::before { display: none !important; }
.sidebar-tab {
  background: #000000 !important;
  border: 1px solid #ffffff !important;
  border-radius: 0 !important;
  color: #ffffff !important;
}
.sidebar-tab.active { background: #ffffff !important; color: #000000 !important; }
.sidebar-tab:hover:not(.active) { background: #ffffff !important; color: #000000 !important; }
#globalAuthBtns > button, #resetViewBtn, .floating-add-btn {
  font-family: var(--console-mono) !important;
  background: #000000 !important;
  color: #ffffff !important;
  border: 1px solid #ffffff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
#globalAuthBtns > button:hover, #resetViewBtn:hover, .floating-add-btn:hover {
  background: #ffffff !important;
  color: #000000 !important;
}
.reset-view-peek { background: #000000 !important; color: #ffffff !important; }
.welcome { background: #000000 !important; }
.error-message, .success-message, .message.error, .message.success, .btn-danger,
.lock-screen-error {
  border-radius: 0 !important;
}
.error-message, .success-message, .message.error, .message.success, .btn-danger,
.lock-screen-error {
  background: #000000 !important;
  color: #ffffff !important;
  border: 1px solid #ffffff !important;
}
.error-message, .message.error, .lock-screen-error { border-style: double !important; border-width: 3px !important; }
.btn-danger:hover:not(:disabled) { background: #ffffff !important; color: #000000 !important; }
#networkWrapper {
  background-color: #000000;
  background-image: url('/canvas-reticle.svg');
  background-size: 320px 320px;
  background-position: 0 0;
  background-repeat: repeat;
}
.tab-bar, .canvas-toolbar, .floating-toolbar, .toolbar {
  background: #000000 !important;
  border-color: #ffffff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
/* Neutralize legacy inline action accents, not images, graphs, or map layers. */
#researchView button:not(.theme-card):not(.bg-style-btn),
#researchView .section-header,
#researchView .subsection-header,
#researchView .drop-zone-icon,
#researchView .section-title {
  color: #ffffff !important;
}
#researchView button:not(.bg-style-btn):not(.bevel-btn):not(.theme-card) {
  background: #000000 !important;
  border: 1px solid #ffffff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
#researchView button.btn-premium, #researchView button.btn-color-2,
#researchView button.btn-primary, #researchView button.submit-btn,
#researchView button.modal-confirm, #researchView button.btn-gradient-orange,
#researchView button.btn-gradient-pink {
  background: #ffffff !important;
  color: #000000 !important;
}
#researchView button.active, #researchView button[aria-pressed="true"] {
  background: #ffffff !important;
  color: #000000 !important;
}
#researchView button:not(.bg-style-btn):not(.bevel-btn):not(.theme-card):hover:not(:disabled):not([aria-disabled="true"]) {
  background: #ffffff !important;
  color: #000000 !important;
  outline: 1px solid #ffffff;
  outline-offset: 2px;
}
#researchView button:is(.btn-premium, .btn-color-2, .btn-primary, .submit-btn,
.modal-confirm, .btn-gradient-orange, .btn-gradient-pink, .active, [aria-pressed="true"]):hover:not(:disabled):not([aria-disabled="true"]) {
  background: #000000 !important;
  color: #ffffff !important;
}
/* Dashed outlines, not faded text or gray fills, identify unavailable actions. */
:is(.btn-premium, .btn-primary, .submit-btn, .modal-confirm, .btn-color-2,
.btn-color-3, .btn-gradient-orange, .btn-gradient-pink, .lock-screen-btn,
.create-canvas-modal-close, .order-control-btn, .export-btn, .btn-danger,
.sidebar-tab, .tab-item, #globalAuthBtns > button, #resetViewBtn, .floating-add-btn,
#researchView button:not(.bg-style-btn):not(.bevel-btn):not(.theme-card)):is(:disabled, [aria-disabled="true"]),
:is(.form-group input, .modern-input, .modern-number, .modern-select,
.config-item input[type="number"], .config-item select):disabled {
  background: #000000 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1px dashed #ffffff !important;
  opacity: 1 !important;
  cursor: not-allowed !important;
  outline: none !important;
  box-shadow: none !important;
}
:where(button, a, input, select, textarea):focus-visible {
  outline: 2px solid #ffffff !important;
  outline-offset: 3px;
}
@media (max-width: 767px) {
  .login-card, .card { padding: 28px 24px !important; }
  .lock-screen-content { padding: 24px !important; }
  .lock-screen-card { padding: 28px 24px !important; }
  .main-columns-container { flex-direction: column; align-items: stretch; }
  .column-card, .column-card-wide { min-width: 0; max-width: none; }
}
@media (prefers-reduced-motion: reduce) {
  .premium-card, .logo-premium, .bg-orb { animation: none !important; }
}
