/*
 * Mineren — kun /mineren.html.
 *
 * Indlæses betinget fra lego/_header.php ($page_miner_css), fordi den ellers
 * ville koste en ekstra forespørgsel på hver eneste artikel for en side, de
 * færreste besøger. Farver og radius tages fra blue.css' :root, så siden ikke
 * får sin egen palet, der langsomt driver fra resten.
 */

/*
 * Grafernes stregfarver.
 *
 * Egne tokens og ikke --up/--down fra blue.css: de to er PASTELLER, lavet til
 * at ligge som baggrund bag mørk tekst i et badge. Som 2 px streg på hvid bliver
 * de næsten usynlige. Her skal farven bære betydning helt alene, så den er
 * mørkere og mere mættet — men holdt på samme kulør som resten af paletten.
 */
:root {
    --miner-varm: oklch(0.55 0.19 25);
    --miner-kold: oklch(0.55 0.13 220);
}

/* ---- Status ------------------------------------------------------------- */

.miner-status {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-wrap: wrap;
    margin: 1.5rem 0 1rem;
    padding: 0.7rem 1rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--card);
    font-size: 0.95rem;
}

.miner-prik {
    width: 0.6rem;
    height: 0.6rem;
    border-radius: 50%;
    background: var(--muted-foreground);
    flex: 0 0 auto;
}

.miner-status.er-oppe   .miner-prik { background: oklch(0.62 0.15 155); }
.miner-status.er-nede   .miner-prik { background: oklch(0.58 0.19 25); }
.miner-status.er-ukendt .miner-prik { background: oklch(0.72 0.10 85); }

.miner-status-tid {
    color: var(--muted-foreground);
    font-size: 0.85rem;
    margin-left: auto;
}

/* ---- Talkort ------------------------------------------------------------ */

.miner-kort {
    display: grid;
    /* auto-fit + minmax frem for faste kolonner: fire kort på en skærm, to på
       en tablet og ét på en telefon, uden et eneste media query. */
    grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
    gap: 0.75rem;
    margin: 1rem 0 1.5rem;
}

.miner-kort-et {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.9rem 1rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--card);
}

.miner-etiket {
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--muted-foreground);
}

.miner-tal {
    font-size: 1.7rem;
    font-weight: 700;
    line-height: 1.15;
    color: var(--primary);
    /* Tal skal stå i samme bredde, når de opdateres, ellers hopper kortene. */
    font-variant-numeric: tabular-nums;
}

.miner-tal small {
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--muted-foreground);
}

.miner-tal.er-udgift  { color: oklch(0.52 0.19 25); }
.miner-tal.er-indtaegt { color: oklch(0.50 0.15 155); }

.miner-under {
    font-size: 0.8rem;
    color: var(--muted-foreground);
}

/* ---- Periodevælger ------------------------------------------------------ */

.miner-perioder {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin: 1.5rem 0 0.5rem;
}

.miner-perioder a {
    padding: 0.4rem 0.85rem;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--card);
    color: var(--muted-foreground);
    font-size: 0.88rem;
    text-decoration: none;
}

.miner-perioder a:hover { border-color: var(--accent); color: var(--foreground); }

.miner-perioder a.er-valgt {
    background: var(--primary);
    border-color: var(--primary);
    color: var(--primary-foreground);
}

/* ---- Sektioner og grafer ------------------------------------------------ */

.miner-sektion { margin: 2.25rem 0; }

.miner-h2 {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--primary);
    margin-bottom: 0.35rem;
}

.miner-intro,
.miner-note {
    color: var(--muted-foreground);
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 0.9rem;
}

.miner-note {
    font-size: 0.85rem;
    padding: 0.75rem 0.9rem;
    border-left: 3px solid var(--border);
    background: var(--muted);
    border-radius: 0 var(--radius) var(--radius) 0;
    margin-top: 1rem;
}

.miner-graf {
    display: block;
    width: 100%;
    height: auto;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--card);
    /* Tegnefladen er 1000 enheder bred uanset skærmen. På en telefon skaleres
       hele SVG'en ned, og så bliver akseteksten meget lille — derfor er
       skrifterne nedenfor sat rundhåndet stort i SVG-enheder. */
}

.miner-grid { stroke: var(--border); stroke-width: 1; }

.miner-maal {
    stroke: var(--muted-foreground);
    stroke-width: 1;
    stroke-dasharray: 4 4;
    opacity: 0.7;
}

.miner-akse {
    font-size: 15px;
    fill: var(--muted-foreground);
    font-family: inherit;
}

.miner-akse-navn {
    font-size: 0.8rem;
    color: var(--muted-foreground);
    margin-top: 0.4rem;
}

/* Farveprikken i signaturforklaringen under en graf med to kurver. */
.miner-nøgle {
    display: inline-block;
    width: 0.65rem;
    height: 0.65rem;
    border-radius: 50%;
    background: var(--n, var(--accent));
    vertical-align: baseline;
}

.miner-tom {
    padding: 2rem 1rem;
    text-align: center;
    color: var(--muted-foreground);
    border: 1px dashed var(--border);
    border-radius: var(--radius);
    font-size: 0.9rem;
}
