.survey-auth-page {
    --survey-auth-ink: #173e34;
    --survey-auth-muted: #4b6557;
    --survey-auth-card: #ffffff;
    --survey-auth-line: #cfe0c7;
    --survey-auth-accent: #22634c;
    --survey-auth-highlight: #3a7c59;
    --survey-auth-glass: rgba(255, 255, 255, 0.86);
    background:
        radial-gradient(circle at 18% 20%, rgba(190, 224, 152, 0.38) 0%, transparent 45%),
        radial-gradient(circle at 75% 82%, rgba(34, 99, 76, 0.12) 0%, transparent 50%),
        linear-gradient(135deg, #e7f1dd 0%, #f4f8ef 55%, #e9f2e2 100%);
    color: var(--survey-auth-ink);
}
[data-bs-theme="dark"] .survey-auth-page {
    --survey-auth-ink: #e3eddd;
    --survey-auth-muted: #b4c8b4;
    --survey-auth-card: #192b22;
    --survey-auth-line: #324a3a;
    --survey-auth-accent: #c6e89e;
    --survey-auth-highlight: #d4efa5;
    --survey-auth-glass: rgba(23, 41, 33, 0.88);
    background:
        radial-gradient(circle at 20% 22%, rgba(198, 232, 158, 0.1) 0%, transparent 45%),
        radial-gradient(circle at 70% 80%, rgba(34, 99, 76, 0.22) 0%, transparent 52%),
        linear-gradient(135deg, #0d1a16 0%, #152720 55%, #101f1a 100%);
}

/* Cover Side (Left Showcase) */
.survey-auth-aside {
    position: relative;
    overflow: hidden;
}
.survey-auth-aside::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(to right, rgba(34, 99, 76, 0.05) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(34, 99, 76, 0.05) 1px, transparent 1px);
    background-size: 44px 44px;
    mask-image: radial-gradient(circle at 50% 45%, #000 35%, transparent 82%);
    -webkit-mask-image: radial-gradient(circle at 50% 45%, #000 35%, transparent 82%);
    pointer-events: none;
}
[data-bs-theme="dark"] .survey-auth-aside::before {
    background-image:
        linear-gradient(to right, rgba(198, 232, 158, 0.05) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(198, 232, 158, 0.05) 1px, transparent 1px);
}

.survey-auth-showcase {
    position: relative;
    z-index: 1;
}

.survey-auth-brand-title {
    color: var(--survey-auth-ink);
    letter-spacing: -0.6px;
}
.survey-auth-brand-title span {
    font-weight: 500;
    color: var(--survey-auth-accent);
}
.survey-auth-brand-sub {
    color: var(--survey-auth-muted);
    font-size: 9px;
}

.survey-auth-live-pill {
    background: var(--survey-auth-glass);
    color: var(--survey-auth-ink);
    border: 1px solid var(--survey-auth-line);
    box-shadow: 0 6px 18px rgba(23, 62, 52, 0.07);
    backdrop-filter: blur(8px);
}
.survey-auth-pulse {
    box-shadow: 0 0 0 4px rgba(53, 188, 98, 0.22);
}

/* Visual Stage & Floating Telemetry Cards */
.survey-auth-stage {
    width: min(460px, 100%);
    margin-inline: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
.survey-auth-halo {
    position: absolute;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(182, 222, 134, 0.45) 0%, rgba(34, 99, 76, 0.06) 65%, transparent 100%);
    border: 1px dashed var(--survey-auth-line);
    z-index: 0;
    pointer-events: none;
}
[data-bs-theme="dark"] .survey-auth-halo {
    background: radial-gradient(circle, rgba(198, 232, 158, 0.16) 0%, rgba(34, 99, 76, 0.12) 65%, transparent 100%);
}

.survey-auth-image {
    position: relative;
    z-index: 1;
    display: block;
    width: 325px;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    filter: drop-shadow(0 16px 32px rgba(23, 62, 52, 0.14));
}
[data-bs-theme="dark"] .survey-auth-image {
    filter: drop-shadow(0 14px 32px rgba(185, 222, 138, 0.14));
}

.survey-auth-float {
    position: absolute;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 10px 14px;
    border-radius: 12px;
    background: var(--survey-auth-glass);
    border: 1px solid var(--survey-auth-line);
    box-shadow: 0 14px 32px rgba(23, 62, 52, 0.12);
    backdrop-filter: blur(10px);
}
.survey-auth-float--top {
    top: 14px;
    right: -12px;
}
.survey-auth-float--bottom {
    bottom: 12px;
    left: -12px;
}
.survey-auth-float-icon {
    background: rgba(34, 99, 76, 0.12) !important;
    color: var(--survey-auth-accent) !important;
    border-radius: 8px;
}
[data-bs-theme="dark"] .survey-auth-float-icon {
    background: rgba(198, 232, 158, 0.14) !important;
}
.survey-auth-float small {
    font-size: 9px;
    color: var(--survey-auth-muted);
}
.survey-auth-float strong {
    color: var(--survey-auth-ink);
    letter-spacing: -0.3px;
}

.survey-auth-caption {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 7px;
    padding: 5px 12px;
    border-radius: 6px;
    background: rgba(34, 99, 76, 0.09);
    color: var(--survey-auth-accent);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
}
[data-bs-theme="dark"] .survey-auth-caption {
    background: rgba(198, 232, 158, 0.12);
}

.survey-auth-page .survey-auth-heading {
    font-size: clamp(30px, 2.7vw, 38px) !important;
    line-height: 1.2;
    letter-spacing: -0.9px;
}
.survey-auth-page .survey-auth-heading em {
    font-style: normal;
    color: var(--survey-auth-highlight);
}
.survey-auth-page .survey-auth-description {
    max-width: 510px;
    font-size: 16px !important;
    line-height: 1.75;
}

/* 3 Pillar Cards at Bottom of Cover */
.survey-auth-pillars {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}
.survey-auth-pillar {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 10px;
    background: var(--survey-auth-glass);
    border: 1px solid var(--survey-auth-line);
    box-shadow: 0 6px 18px rgba(23, 62, 52, 0.05);
    backdrop-filter: blur(6px);
}
.survey-auth-pillar > i {
    color: var(--survey-auth-accent);
    flex-shrink: 0;
}
.survey-auth-pillar strong {
    display: block;
    font-size: 12.5px;
    font-weight: 700;
    color: var(--survey-auth-ink);
    line-height: 1.25;
}
.survey-auth-pillar span {
    display: block;
    font-size: 11px;
    color: var(--survey-auth-muted);
    margin-top: 2px;
}

/* Form Side (Right Column Preserved) */
.survey-auth-page .bg-body { background-color: var(--survey-auth-card) !important; }
.survey-auth-page .text-gray-900,
.survey-auth-page .text-gray-800 { color: var(--survey-auth-ink) !important; }
.survey-auth-page .text-gray-500,
.survey-auth-page .text-gray-600 { color: var(--survey-auth-muted) !important; }
.survey-auth-page .link-primary,
.survey-auth-page .text-primary a { color: var(--survey-auth-accent) !important; }
.survey-auth-page .form-control { color: var(--survey-auth-ink); border-color: var(--survey-auth-line); font-size: 16px; }
.survey-auth-page .form-control::placeholder { color: var(--survey-auth-muted); opacity: 1; }
.survey-auth-page .btn.btn-primary { background-color: #22634c; border-color: #22634c; color: #fff; }
.survey-auth-page .btn.btn-primary i,
.survey-auth-page .btn.btn-primary i span::before { color: inherit; }
.survey-auth-page .btn.btn-primary:hover:not(:disabled) { background-color: #194d3a !important; border-color: #194d3a !important; color: #fff !important; }
[data-bs-theme="dark"] .survey-auth-page .btn.btn-primary { background-color: #c6e89e; border-color: #c6e89e; color: #173e34; }
[data-bs-theme="dark"] .survey-auth-page .btn.btn-primary:hover:not(:disabled) { background-color: #dbefbc !important; border-color: #dbefbc !important; color: #173e34 !important; }
.survey-auth-page .btn[data-theme-toggle] { background: var(--survey-auth-card); color: var(--survey-auth-accent); border: 1px solid var(--survey-auth-line); }
.survey-auth-page .btn[data-theme-toggle] i,
.survey-auth-page .btn[data-theme-toggle] i span::before { color: var(--survey-auth-accent) !important; }
.survey-auth-page a:focus-visible,
.survey-auth-page button:focus-visible { outline: 3px solid var(--survey-auth-accent); outline-offset: 4px; }

@media (min-width: 992px) and (max-width: 1299px) {
    .survey-auth-image { width: 270px; }
    .survey-auth-halo { width: 280px; height: 280px; }
    .survey-auth-float--top { right: 0; }
    .survey-auth-float--bottom { left: 0; }
    .survey-auth-page .survey-auth-heading { font-size: 28px !important; }
    .survey-auth-pillars { grid-template-columns: 1fr; max-width: 340px; }
}
