/* Palette publique alignée sur le thème sombre principal de Pensomate. */
:root {
  --pso-register-bg: rgb(12, 12, 12);
  --pso-register-surface: rgb(31, 36, 40);
  --pso-register-panel: rgb(14, 14, 15);
  --pso-register-panel-soft: rgb(20, 21, 22);
  --pso-register-text: rgb(253, 248, 212);
  --pso-register-text-soft: rgba(253, 248, 212, 0.72);
  --pso-register-muted: rgba(237, 229, 181, 0.58);
  --pso-register-cyan: rgb(45, 223, 255);
  --pso-register-yellow: rgb(255, 211, 0);
  --pso-register-green: rgb(17, 154, 88);
  --pso-register-magenta: rgb(255, 59, 149);
  --pso-register-danger: rgb(226, 35, 69);
  --pso-register-border: rgba(253, 248, 212, 0.24);
  --pso-register-cyan-soft: rgba(45, 223, 255, 0.12);

  /* Compatibilité avec les composants historiques de l'application. */
  --colorchoisie: var(--pso-register-text);
  --backscreencolor: var(--pso-register-bg);
  --colorneon: var(--pso-register-cyan);
}

body,
body.register-create-page {
  color: var(--pso-register-text);
  background-color: var(--pso-register-bg);
  background-image:
    radial-gradient(circle at 12% 8%, rgba(45, 223, 255, 0.08), transparent 34rem),
    radial-gradient(circle at 88% 62%, rgba(255, 211, 0, 0.045), transparent 38rem),
    linear-gradient(145deg, rgb(7, 8, 8) 0%, var(--pso-register-bg) 54%, rgb(14, 25, 27) 100%);
}

.page-scroll-wrapper,
.register-create-shell {
  color: var(--pso-register-text);
}

.panel-section {
  background: linear-gradient(135deg, rgba(0, 0, 0, 0.88), rgba(20, 21, 22, 0.78));
}

.panel-inner,
.register-video-shell,
.register-video-modal .modal-content {
  color: var(--pso-register-text);
  border-color: var(--pso-register-border);
  background:
    radial-gradient(circle at 100% 0%, var(--pso-register-cyan-soft), transparent 25rem),
    linear-gradient(145deg, rgba(20, 21, 22, 0.96), rgba(12, 12, 12, 0.96));
}

.panel-title,
.divider-title,
.register-video-title,
.register-manifest h1,
.register-manifest-signature {
  color: var(--pso-register-text);
}

.panel-text,
.panel-subtitle,
.panel-subtitle2,
.divider-subtitle,
.register-video-intro,
.register-manifest-lead,
.video-mosaic-copy small {
  color: var(--pso-register-text-soft);
}

.page-scroll-wrapper .text-muted {
  color: var(--pso-register-muted) !important;
}

.text-neon,
.register-video-kicker,
.page-scroll-wrapper a:not(.btn),
.register-create-page a {
  color: var(--pso-register-cyan);
}

.page-scroll-wrapper a:not(.btn):hover,
.page-scroll-wrapper a:not(.btn):focus,
.register-create-page a:hover,
.register-create-page a:focus {
  color: rgb(140, 237, 255);
}

.register-manifest {
  color: var(--pso-register-text);
  background:
    radial-gradient(circle at 50% 38%, rgba(45, 223, 255, 0.1), transparent 32rem),
    linear-gradient(180deg, rgba(12, 12, 12, 0.7), rgba(12, 12, 12, 0.96));
}

.register-manifest-symbol polygon,
.register-manifest-symbol line {
  stroke: var(--pso-register-text);
}

.register-manifest-core {
  fill: var(--pso-register-cyan);
}

.register-manifest-kicker {
  color: var(--pso-register-cyan);
}

.register-manifest-words li {
  color: var(--pso-register-text);
  border-color: var(--pso-register-border);
  background: rgba(253, 248, 212, 0.045);
}

.register-manifest-trust,
.register-manifest-scroll {
  color: var(--pso-register-muted);
}

.register-manifest-actions .btn-light,
.page-scroll-wrapper .btn-light {
  color: rgb(10, 10, 10);
  border-color: var(--pso-register-yellow);
  background: var(--pso-register-yellow);
}

.register-manifest-actions .btn-light:hover,
.register-manifest-actions .btn-light:focus,
.page-scroll-wrapper .btn-light:hover,
.page-scroll-wrapper .btn-light:focus {
  color: rgb(10, 10, 10);
  border-color: rgb(255, 225, 77);
  background: rgb(255, 225, 77);
}

.page-scroll-wrapper .btn-outline-light,
.page-scroll-wrapper .buttonrr {
  color: var(--pso-register-cyan);
  border-color: var(--pso-register-cyan);
  background: transparent;
}

.page-scroll-wrapper .btn-outline-light:hover,
.page-scroll-wrapper .btn-outline-light:focus,
.page-scroll-wrapper .buttonrr:hover,
.page-scroll-wrapper .buttonrr:focus {
  color: rgb(7, 8, 8);
  border-color: var(--pso-register-cyan);
  background: var(--pso-register-cyan);
}

.page-scroll-wrapper .register-create-cta {
  color: rgb(210, 255, 231);
  border-color: var(--pso-register-green);
  background: rgba(17, 154, 88, 0.13);
}

.page-scroll-wrapper .register-create-cta:hover,
.page-scroll-wrapper .register-create-cta:focus {
  color: rgb(5, 16, 10);
  border-color: rgb(42, 194, 112);
  background: rgb(42, 194, 112);
}

.section-jump-nav {
  border-color: var(--pso-register-border);
  background: rgba(12, 12, 12, 0.72);
}

.section-jump-link,
.section-jump-control {
  color: var(--pso-register-text);
  border-color: rgba(253, 248, 212, 0.18);
  background: rgba(253, 248, 212, 0.035);
}

.section-jump-link:hover,
.section-jump-link:focus-visible,
.section-jump-control:hover,
.section-jump-control:focus-visible,
.section-jump-link.is-active {
  color: var(--pso-register-cyan);
  border-color: var(--pso-register-cyan);
  background: var(--pso-register-cyan-soft);
}

.section-jump-link-index,
.section-jump-control-icon {
  color: rgb(5, 12, 14);
  background: var(--pso-register-cyan);
}

.page-scroll-wrapper .accordion-button.text-white {
  color: var(--pso-register-text) !important;
}

.page-scroll-wrapper .accordion-button:hover,
.page-scroll-wrapper .accordion-button:focus {
  color: var(--pso-register-cyan) !important;
}

.register-video-state,
.video-mosaic-card,
.register-video-tool {
  color: var(--pso-register-text);
  border-color: rgba(253, 248, 212, 0.18);
  background: rgba(253, 248, 212, 0.035);
}

.video-mosaic-card:hover,
.video-mosaic-card:focus-visible,
.register-video-tool:hover,
.register-video-tool:focus-visible {
  border-color: var(--pso-register-cyan);
  background: var(--pso-register-cyan-soft);
}

.register-trial-terms,
.register-security-summary {
  padding-left: 0.85rem;
  border-left: 3px solid var(--pso-register-yellow);
}

.register-security-summary {
  border-left-color: var(--pso-register-cyan);
}

/* Formulaire dédié : mêmes couleurs, géométrie existante conservée. */
.register-create-page {
  --register-bg-main: var(--pso-register-bg);
  --register-bg-accent: var(--pso-register-surface);
  --register-card-bg: rgba(14, 14, 15, 0.94);
  --register-card-border: var(--pso-register-border);
  --register-text: var(--pso-register-text);
  --register-text-soft: var(--pso-register-text-soft);
  --register-neon: var(--pso-register-cyan);
  --register-neon-soft: var(--pso-register-cyan-soft);
  --register-input-bg: rgba(253, 248, 212, 0.045);
  --register-input-border: rgba(253, 248, 212, 0.2);
}

.register-create-page .register-create-panel {
  color: var(--pso-register-text);
  border-color: var(--pso-register-border);
  background: rgba(14, 14, 15, 0.94);
}

.register-create-page .register-create-header h1,
.register-create-page .register-form-card h2,
.register-create-page form label,
.register-create-page .register-privacy-note strong {
  color: var(--pso-register-text);
}

.register-create-page form input,
.register-create-page form select {
  color: var(--pso-register-text);
  border-color: var(--register-input-border);
  background: var(--register-input-bg);
}

.register-create-page .helptext {
  color: var(--pso-register-text-soft);
  border-left-color: var(--pso-register-cyan);
  background: var(--pso-register-panel);
}

.register-create-page .buttonrr {
  color: var(--pso-register-cyan);
  border-color: var(--pso-register-cyan);
  background: transparent;
}

.register-create-page .register-submit {
  color: rgb(210, 255, 231);
  border-color: var(--pso-register-green);
  background: rgba(17, 154, 88, 0.15);
}

.register-create-page .register-submit:hover,
.register-create-page .register-submit:focus {
  color: rgb(5, 16, 10);
  border-color: rgb(42, 194, 112);
  background: rgb(42, 194, 112);
}

@media (max-width: 767.98px) {
  .register-trial-terms,
  .register-security-summary {
    padding-left: 0.65rem;
  }
}
