/* Established interface accents are preserved during the LUCAP logo refresh.
   Bright green uses dark text; text links use its darker, readable counterpart.
   Warning/error colors and the original Neurolabs asset retain their meaning. */
:root {
  --ap-green: #1aff8e;
  --ap-green-hover: #00e677;
  --ap-dark: #141816;
  --ap-green-ink: #006b36;
  --ink: #202722;
  --muted: #58625c;
  --soft: #667069;
  --green: var(--ap-green-ink);
  --green-dark: #004d27;
  --green-tint: #e3fff0;
  --nav: var(--ap-dark);
  --nav-muted: #bdc8c1;
  --line: #dbe1dd;
  --canvas: #f8faf9;
  --paper: #f8faf9;
  --mint: #e3fff0;
  --home-ink: var(--ink);
  --home-muted: var(--muted);
  --home-paper: #fff;
  --manage-ink: var(--ink);
  --manage-muted: var(--muted);
}

.brand-pair { background: var(--ap-dark); }
.brand-pair--sidebar, .brand-pair--login { background: transparent; }
.ap-brand > span { color: #d4dfd8; }
.ap-brand:focus-visible { outline-color: var(--ap-green); }

.primary, .button.light, .button-primary {
  background: var(--ap-green);
  color: var(--ap-dark);
  border-color: var(--ap-green);
}
.primary:hover, .button.light:hover, .button-primary:hover {
  background: var(--ap-green-hover);
  border-color: var(--ap-green-hover);
  color: var(--ap-dark);
}
.button-dark:hover { background: #303d35; }
.entry { background: var(--ap-dark); color: #fff; }
.entry:hover { background: var(--ap-green); color: var(--ap-dark); }

/* A dark ring remains visible against both white and bright green controls. */
:is(button, a, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--green-dark);
  outline-offset: 4px;
}
:is(.sidebar, .login-story, .welcome-final) :focus-visible {
  outline-color: var(--ap-green);
}
input[type=checkbox], input[type=radio] { accent-color: var(--green); }

.nav-link.active { background: #24382c; color: #fff; }
.nav-link.active .icon, .login-proof .icon { color: var(--ap-green); }
.nav-count, .brand-mark, .principal-avatar {
  background: var(--ap-green);
  color: var(--ap-dark);
}
.brand-name > span, .nav-label, .sidebar-bottom .small,
.login-story-content > p, .login-story-footer { color: #bdc8c1; }
.login-story .eyebrow.light { color: var(--ap-green); }

.eyebrow > span, .control-dot { background: var(--ap-green); }
.hero-world::before {
  background: radial-gradient(#caffdf 0%, #f1fff7 50%, transparent 70%);
}
.scene-visual { background: radial-gradient(ellipse, #e3fff0, transparent 72%); }
.journey { background: #edf6f1; }
.journey-shell { background: #fff; }
.tour-tabs button[aria-selected=true] { border-bottom-color: var(--ap-green); }
.tour-tabs button:hover { background: var(--green-tint); }
.scene-copy .scene-benefit { border-left-color: var(--green); }
.form-confirm > span, .check-circle, .comparison-row b {
  background: var(--ap-green);
  color: var(--ap-dark);
}
.company-icon, .large-symbol, .preview-avatar { background: var(--green-tint); }
.company-icon.peach { background: #edf0ee; }
.preview-top { background: #f0f6f2; }
.principal-node, .welcome-final { background: var(--ap-dark); color: #fff; }
.home-focus { background: #edfff4; border-color: #b9e3cb; }

/* Decorative small labels must remain readable on their light surfaces. */
.world-label, .floating-paper, .download-row > span, .login-fineprint {
  color: var(--muted);
}
