/*
 * ============================================================
 *  TNT | Magic 8 Ball — SPARK Edition
 *  File:    magic8BallSparkStyles.css
 *  Coder:   KLP / GitHub Copilot
 *  Created: 2026-07-06
 *
 *  Deep violet-black mystery palette with TNT amber accents.
 *  Requires CSS custom properties from tnt-base-styles.css.
 * ============================================================
 */

/* ── App color tokens ── */
:root {
    --m8b-dark:   #0a0614;            /* near-black, purple tint    */
    --m8b-mid:    #1a0f2e;            /* deep purple                */
    --m8b-card:   #130b25;            /* card background            */
    --m8b-border: rgba(230,159,77,0.18);
}

/* ── Body ── */
body {
    background: var(--m8b-dark);
}

/* ── Hero ── */
#hero {
    min-height: 38vh;
    background-image:
        linear-gradient(rgba(10,1,20,0.38) 0%, rgba(10,1,20,0.94) 100%),
        url('../images/fireflyMysteriousImage.jpg');
    background-size: cover;
    background-position: center;
    padding: 3.5rem 1rem 3rem;
    text-align: center;
}

.hero-title    { font-size: clamp(2rem,5.5vw,3.4rem); margin-bottom:0.5rem; }
.hero-subtitle { font-size: clamp(0.9rem,2vw,1.1rem); }

/* ── About details ── */
#gameSection details > summary {
    color: var(--tnt-amber);
    font-style: italic;
    font-weight: 600;
    cursor: pointer;
    padding: 0.4rem 0;
    list-style: none;
}

#gameSection details > summary::before {
    content: "\25B6\00a0";
    font-style: normal;
    font-size: 0.75em;
}

#gameSection details[open] > summary::before {
    content: "\25BC\00a0";
}

#gameSection details .about-body {
    margin-top: 0.5rem;
    padding-left: 0.75rem;
    border-left: 3px solid var(--tnt-amber);
    color: rgba(255,255,255,0.72);
    font-size: 0.9rem;
    line-height: 1.65;
}

/* ── Game section wrapper ── */
#gameSection {
    background: var(--m8b-dark);
    padding: 2rem 0 4rem;
}

/* ── Game card (canvas wrapper) ── */
.game-card {
    background: var(--m8b-card);
    border: 1px solid var(--m8b-border);
    border-radius: 14px;
    padding: 1.5rem 1.25rem 1rem;
    box-shadow: 0 4px 36px rgba(0,0,0,0.75);
}

/* ── Canvas container ── */
#myCanvas {
    border-radius: 10px;
    overflow: hidden;
    display: inline-block;
    cursor: pointer;
}

#myCanvas canvas {
    border-radius: 10px;
    display: block;
    cursor: pointer;
}

/* ── Ask prompt ── */
#askPara {
    color: rgba(255,255,255,0.4);
    font-style: italic;
    font-size: 0.85rem;
    margin-top: 0.5rem;
    margin-bottom: 0;
}

/* ── Math Behind the Ball panel ── */
.math-panel-wrapper {
    background: var(--m8b-mid);
    border: 1px solid var(--m8b-border);
    border-radius: 10px;
    padding: 0.9rem 1.1rem;
    margin-top: 1rem;
}

.math-panel-wrapper > summary {
    color: var(--tnt-amber);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    cursor: pointer;
    list-style: none;
}

.math-panel-wrapper > summary::before {
    content: "\25B6\00a0";
    font-size: 0.7em;
}

.math-panel-wrapper[open] > summary::before {
    content: "\25BC\00a0";
}

#resultsPara {
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.78rem;
    color: rgba(255,255,255,0.5);
    line-height: 1.9;
    margin: 0.6rem 0 0;
}

/* ── Secondary link bar ── */
.link-bar {
    text-align: center;
    font-size: 0.8rem;
    margin-top: 1.25rem;
}

.link-bar a {
    color: rgba(230,159,77,0.72);
    font-weight: 600;
}

.link-bar a:hover {
    color: var(--tnt-amber);
    text-decoration: underline;
}
