/* ── Day Earth — project-specific styles ───────────────────────────────────── */

:root {
    --project-accent:      #4a7aff;
    --project-accent-glow: rgba(74,122,255,0.3);
}

html, body {
    font-family: 'Courier New', monospace;
    padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px)
             env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px);
}

/* ── Start overlay ────────────────────────────────────────────────────────── */
#overlay h1 {
    font-size: clamp(18px, 3.5vw, 42px);
    color: #8ab4ff;
    letter-spacing: 8px;
    text-transform: uppercase;
    text-shadow: 0 0 40px rgba(100,160,255,0.5);
    margin-bottom: 12px;
    text-align: center;
}

#overlay .sub {
    font-size: clamp(11px, 1.5vw, 16px);
    color: #556;
    letter-spacing: 6px;
    font-style: italic;
    margin-bottom: 40px;
    text-align: center;
}

#overlay .start-btn {
    font-family: inherit;
    font-size: clamp(14px, 2.5vw, 18px);
    letter-spacing: 6px;
    text-transform: uppercase;
    color: #aaa;
    background: none;
    border: 1px solid #444;
    padding: 16px 48px;
    cursor: pointer;
    transition: color 0.3s, border-color 0.3s, box-shadow 0.3s;
    min-height: 48px;
    touch-action: manipulation;
}

#overlay .start-btn:hover,
#overlay .start-btn:active {
    color: #8ab4ff;
    border-color: #4a7aff;
    box-shadow: 0 0 30px rgba(74,122,255,0.4);
}

/* ── Radio text layer ─────────────────────────────────────────────────────── */
#text-layer {
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    pointer-events: none;
    z-index: 10;
}

.radio-text {
    position: absolute;
    color: #7a9ab8;
    font-size: clamp(12px, 2vw, 22px);
    letter-spacing: 4px;
    opacity: 0;
    text-shadow: 0 0 12px rgba(80,140,200,0.4);
    transition: opacity 0.6s;
    text-align: center;
    width: 100%;
    padding: 0 20px;
}

.radio-text.visible { opacity: 1; }
.radio-text.alert   { color: #ff4444; text-shadow: 0 0 12px rgba(255,60,60,0.5); }

#radio-top    { top: 8%; }
#radio-bottom { bottom: 12%; }
#radio-center {
    top: 50%;
    transform: translateY(-50%);
    font-size: clamp(16px, 3vw, 36px);
    letter-spacing: 6px;
}

/* ── Song progress bar ────────────────────────────────────────────────────── */
#progress {
    position: fixed;
    bottom: 0; left: 0;
    height: 2px;
    background: #4a7aff;
    z-index: 20;
    transition: width 0.1s linear;
    box-shadow: 0 0 6px rgba(74,122,255,0.5);
}

/* ── Cinematic overlays ───────────────────────────────────────────────────── */
#vignette {
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    pointer-events: none;
    z-index: 5;
    background: radial-gradient(ellipse at center, transparent 35%, rgba(0,0,0,0.75) 100%);
}

#scanlines {
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    pointer-events: none;
    z-index: 6;
    opacity: 0.05;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0,0,0,0.3) 2px,
        rgba(0,0,0,0.3) 4px
    );
}

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 540px) {
    #overlay h1   { letter-spacing: 4px; }
    #overlay .sub { letter-spacing: 3px; }
}

@media (max-height: 420px) and (orientation: landscape) {
    #overlay h1       { font-size: 18px; margin-bottom: 6px; }
    #overlay .sub     { margin-bottom: 16px; }
    #overlay .start-btn { padding: 10px 30px; }
}
