/* === INHERITED FROM F:\repos\automation-lab\src\app\automation-lab\roadmaps\[submissionToken]\roadmap.module.css === */

@import url('/css/theme-base.css');

*, *::before, *::after{box-sizing:border-box}

.roadmap-page {
    margin:0;padding:0;
    min-height:100vh;
    background:
        radial-gradient(ellipse at 20% 10%, rgba(79,156,255,0.25) 0%, transparent 50%),
        radial-gradient(ellipse at 78% 18%, rgba(255,110,199,0.22) 0%, transparent 50%),
        radial-gradient(ellipse at 55% 80%, rgba(78,231,240,0.16) 0%, transparent 50%),
        linear-gradient(135deg, #07111f 0%, #0d1b2f 100%);
    background-attachment:fixed;
    color:var(--foreground);
    font-family:'Inter Tight',sans-serif;
}

.roadmap-container {
    width:min(1220px,calc(100% - 40px));
    margin:0 auto;
    padding:48px 0 72px;
}

/* === GLASS CARD BASE === */
.roadmap-card,
.roadmap-hero {
    background:linear-gradient(145deg, rgba(255,255,255,0.12), rgba(255,255,255,0.055));
    backdrop-filter:blur(22px);
    -webkit-backdrop-filter:blur(22px);
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:0 24px 80px rgba(0,0,0,0.38);
    padding:2rem;
    margin-bottom:1.5rem;
}

.roadmap-card--error {
    border-color:rgba(255,107,107,0.4);
    background:rgba(255,107,107,0.06);
    text-align:center;
}

.roadmap-card--risk {
    border-color:rgba(255,209,102,0.3);
    background:rgba(255,209,102,0.04);
}

.roadmap-card--cta {
    background:linear-gradient(145deg, rgba(94,240,166,0.12), rgba(78,231,240,0.08));
    text-align:center;
}

/* === HERO === */
.roadmap-hero {
    text-align:center;
    position:relative;
    overflow:hidden;
}

.roadmap-hero::after {
    content:'';
    position:absolute;
    top:-60%;left:50%;
    width:600px;height:600px;
    transform:translateX(-50%);
    background:radial-gradient(circle, rgba(78,231,240,0.08) 0%, transparent 70%);
    pointer-events:none;
}

.roadmap-eyebrow {
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:rgba(255,255,255,0.08);
    border:1px solid var(--line);
    padding:8px 16px;
    border-radius:999px;
    font-size:13px;
    font-weight:700;
    letter-spacing:0.06em;
    text-transform:uppercase;
    color:var(--accent-cyan);
    margin-bottom:24px;
}

.roadmap-pulse-dot {
    width:8px;height:8px;
    border-radius:50%;
    background:var(--accent-green);
    animation:roadmap-pulse 2s ease-in-out infinite;
}

@keyframes roadmap-pulse {
    0%,100%{opacity:1;transform:scale(1)}
    50%{opacity:0.5;transform:scale(0.75)}
}

.roadmap-hero-title {
    font-size:clamp(32px,4vw,56px);
    font-weight:900;
    line-height:1.1;
    margin:0 auto 16px;
    max-width:900px;
    color:var(--foreground);
}

.roadmap-hero-meta {
    color:var(--muted);
    font-size:16px;
    margin:0;
}

/* === SECTION HEADERS === */
.roadmap-section-header {
    margin-bottom:16px;
}

.roadmap-section-title {
    font-size:24px;
    font-weight:800;
    margin:0 0 4px;
    color:var(--foreground);
}

.roadmap-section-desc {
    color:var(--muted);
    font-size:14px;
    margin:0;
}

/* === TEXT === */
.roadmap-text-body {
    color:var(--muted);
    line-height:1.7;
    margin:0;
}

.roadmap-text-muted {
    color:var(--muted);
    margin:0;
    line-height:1.6;
}

/* === INSIGHT BAND === */
.roadmap-insight-band {
    border-left:3px solid var(--accent-yellow);
    background:rgba(255,209,102,0.05);
    padding:14px 18px;
    margin-top:18px;
    border-radius:0 8px 8px 0;
    color:var(--muted);
    line-height:1.6;
    font-size:15px;
}

/* === TIMELINE === */
.roadmap-timeline {
    position:relative;
    padding:0;
}

.roadmap-timeline-axis {
    position:absolute;
    left:50%;
    top:0;
    bottom:0;
    width:4px;
    transform:translateX(-50%);
    border-radius:2px;
    background:linear-gradient(to bottom, var(--accent-cyan), var(--accent-purple));
}

.roadmap-timeline-entry {
    position:relative;
    width:50%;
    padding:20px 0;
}

.roadmap-timeline-left {
    padding-right:48px;
    text-align:right;
}

.roadmap-timeline-right {
    margin-left:50%;
    padding-left:48px;
    text-align:left;
}

.roadmap-timeline-node {
    position:absolute;
    top:24px;
    width:56px;height:56px;
    border-radius:50%;
    border:3px solid var(--accent-cyan);
    background:#0d1b2f;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    z-index:2;
}

.roadmap-timeline-left .roadmap-timeline-node {
    right:-28px;
}

.roadmap-timeline-right .roadmap-timeline-node {
    left:-28px;
}

.roadmap-timeline-card {
    box-sizing:border-box;
    background:linear-gradient(145deg, rgba(255,255,255,0.12), rgba(255,255,255,0.055));
    border:1px solid var(--line);
    border-radius:14px;
    padding:20px;
    text-align:left;
}

.roadmap-timeline-label {
    display:inline-block;
    color:var(--accent-cyan);
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:0.08em;
    margin-bottom:6px;
}

.roadmap-timeline-title {
    font-size:18px;
    font-weight:800;
    margin:0 0 4px;
    color:var(--foreground);
}

.roadmap-timeline-subtitle {
    color:var(--accent-green);
    font-size:13px;
    font-weight:600;
    margin:0 0 10px;
}

.roadmap-timeline-body {
    color:var(--muted);
    line-height:1.6;
    margin:0;
    font-size:14px;
}

/* === ANSWER GRID === */
.roadmap-answer-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
}

.roadmap-answer-card,
.roadmap-answer-card-long {
    box-sizing:border-box;
    background:linear-gradient(145deg, rgba(255,255,255,0.12), rgba(255,255,255,0.055));
    border:1px solid var(--line);
    border-radius:12px;
    padding:16px;
    border-left:4px solid var(--accent-cyan);
    min-width:0;
    overflow:hidden;
}

.roadmap-answer-card-long {
    grid-column:span 2;
}

.roadmap-answer-kicker {
    color:var(--accent-cyan);
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:0.06em;
    margin-bottom:6px;
}

.roadmap-answer-label {
    font-size:14px;
    font-weight:700;
    color:var(--foreground);
    margin-bottom:8px;
    line-height:1.4;
}

.roadmap-answer-text {
    color:var(--muted);
    font-size:14px;
    line-height:1.6;
}

/* === CHECKLIST === */
.roadmap-checklist {
    display:flex;
    flex-direction:column;
    gap:16px;
}

.roadmap-checklist-item {
    display:flex;
    gap:16px;
    align-items:flex-start;
}

.roadmap-checklist-number {
    width:32px;height:32px;
    min-width:32px;
    border-radius:50%;
    background:rgba(94,240,166,0.2);
    border:2px solid var(--accent-green);
    color:var(--accent-green);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    font-weight:800;
    margin-top:2px;
}

.roadmap-checklist-label {
    font-size:14px;
    font-weight:700;
    color:var(--accent-green);
    margin-bottom:6px;
}

.roadmap-action-list {
    margin:10px 0 0;
    padding-left:20px;
    color:var(--muted);
    line-height:1.7;
}

.roadmap-action-list li {
    margin-bottom:6px;
}

/* === RISK === */
.roadmap-risk-list {
    list-style:none;
    padding:0;
    margin:12px 0 0;
    display:flex;
    flex-direction:column;
    gap:12px;
}

.roadmap-risk-item {
    display:flex;
    gap:12px;
    align-items:flex-start;
    color:var(--foreground);
    line-height:1.6;
}

.roadmap-risk-icon {
    font-size:18px;
    min-width:22px;
    color:var(--accent-yellow);
}

/* === FOOTER === */
.roadmap-footer {
    text-align:center;
    padding:32px 0;
    color:var(--muted);
    font-size:14px;
}

.roadmap-footer a {
    color:var(--accent-cyan);
    text-decoration:none;
}

.roadmap-footer a:hover {
    text-decoration:underline;
}

/* === LOADING === */
.roadmap-loading {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:60vh;
    gap:24px;
}

.roadmap-loading-spinner {
    width:64px;height:64px;
    border-radius:50%;
    border:3px solid rgba(255,255,255,0.1);
    border-top-color:var(--accent-cyan);
    animation:roadmap-spin 1s linear infinite;
}

@keyframes roadmap-spin {
    to{transform:rotate(360deg)}
}

.roadmap-loading-text {
    color:var(--muted);
    font-size:18px;
    margin:0;
}

/* === RESPONSIVE === */
@media(max-width:1160px){
    .roadmap-answer-grid{grid-template-columns:repeat(2,1fr)}
    .roadmap-answer-card-long{grid-column:span 2}
}

@media(max-width:1024px){
    .roadmap-timeline-axis{left:28px}
    .roadmap-timeline-entry{width:100%;padding-left:64px;padding-right:0;margin-left:0;text-align:left}
    .roadmap-timeline-left{padding-right:0;text-align:left}
    .roadmap-timeline-right{margin-left:0;padding-left:64px}
    .roadmap-timeline-left .roadmap-timeline-node,
    .roadmap-timeline-right .roadmap-timeline-node{left:2px;right:auto}
}

@media(max-width:640px){
    .roadmap-container{width:min(1220px,calc(100% - 24px));padding:24px 0 48px}
    .roadmap-hero{padding:1.5rem}
    .roadmap-hero-title{font-size:28px}
    .roadmap-answer-grid{grid-template-columns:1fr}
    .roadmap-answer-card-long{grid-column:span 1}
    .roadmap-timeline-node{width:44px;height:44px;font-size:18px}
    .roadmap-timeline-entry,.roadmap-timeline-left,.roadmap-timeline-right{padding-left:48px}
    .roadmap-timeline-left .roadmap-timeline-node,
    .roadmap-timeline-right .roadmap-timeline-node{left:8px}
}
