/* Aedoner // közös stílusok (az oldalak saját <style>-ja ezután töltődik, és felülírhatja) */

/* glitch-szűrő a tartalomra, NEM a body-ra: a body-szűrő elmozgatja a position:fixed elemeket (nagyító ablak, zaj) */
body.glitch-mode #app-wrapper,
body.glitch-mode footer { filter: contrast(150%) hue-rotate(90deg); }

/* kazettás magnó a láblécben (minden oldalon ugyanúgy) */
.cassette-player {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    background: rgba(0, 0, 0, 0.05);
    padding: 4px 10px;
    border: 1px solid #1a1a1a;
}
.cassette-btn {
    background: transparent;
    border: none;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
    color: inherit;
}
.cassette-btn:hover { color: #d96b52; }
.cassette-btn[aria-pressed="true"] { color: #d96b52; }

body.glitch-mode .cassette-player {
    background-color: #000 !important;
    color: #00ff66 !important;
    border-color: #00ff66 !important;
}

/* lábléc: tördelődik, telefonon egymás alá kerül */
footer { gap: 15px; flex-wrap: wrap; }
@media (max-width: 768px) {
    footer { flex-direction: column; text-align: center; gap: 10px; }
}

/* látható fókusz billentyűzethez */
a:focus-visible, button:focus-visible, [role="button"]:focus-visible, [role="slider"]:focus-visible, [tabindex]:focus-visible {
    outline: 3px solid #d96b52;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}
