/* ============================================================
   Halbwertszeit (risk): Lagekarte im Kalten-Krieg-Stil, im Hx-Stil.
   Dunkles Schiefer-Meer mit Gitter, gedeckte Besitzfarben, Bernstein als Aktionsfarbe, Alarmrot nur für die Bombe,
   Uran-Gelb nur für Uran und Strahlung. Feinschliff (Icons, Texturen, Ton) kommt mit HW6.
   ============================================================ */

.app.theme-risk {
    --rk-sea: #16232a;
    --rk-sea-2: #1c2d35;
    --rk-paper: #e7e3d6;
    --rk-amber: #e0b23c;
    --rk-alarm: #d64533;
    --rk-uranium: #e3c13b;
    --bg: #0f171b;
    --bar: #0a1013;
    --surface: #17222a;
    --surface-2: #1e2c34;
    --surface-3: #263842;
    --ink: #e7e3d6;
    --ink-strong: #ffffff;
    --muted: #9fb2b6;
    --line: rgba(231, 227, 214, .16);
    --accent: #e0b23c;
    --accent-ink: #1a1406;
    --accent-2: #5f8fa3;
    --error: #ff7a68;
    --board-bg: #16232a;
    --shadow: 0 2px 14px rgba(0, 0, 0, .45);
    color-scheme: dark;
}
.app.theme-risk .platform-bar,
.app.theme-risk .topbar { background: var(--bar); }
.app.theme-risk h1, .app.theme-risk h2, .app.theme-risk h3 { font-family: var(--font-display); letter-spacing: .02em; }

/* --- Gerüst: Karte links, Seitenleiste rechts; auf dem Handy Karte vollflächig, Panel als Sheet --- */

.rk-game {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    height: 100%;
    min-height: 0;
    background: var(--rk-sea, #16232a);
    color: var(--ink, #e7e3d6);
}
.rk-main { display: flex; flex-direction: column; min-width: 0; min-height: 0; }
.rk-side {
    display: flex; flex-direction: column; gap: .6rem; min-height: 0; overflow-y: auto;
    padding: .6rem; background: var(--bg, #0f171b); border-left: 1px solid var(--line);
}
.rk-side-card { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md, 10px); padding: .6rem .7rem; }
.rk-side-card h3 { margin: 0 0 .4rem; font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.rk-log-card summary { cursor: pointer; font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.rk-side .hx-sheet { background: var(--surface); }
.rk-strip-slot { display: none; }

/* --- Zugleiste --- */

.rk-turnbar {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .35rem .8rem;
    padding: .4rem .7rem; background: var(--bar, #0a1013); border-bottom: 1px solid var(--line); font-size: .85rem;
}
.rk-turn-left, .rk-turn-right { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .6rem; }
.rk-round { font-family: var(--font-display); font-weight: 700; letter-spacing: .04em; text-transform: uppercase; font-size: .78rem; color: var(--rk-amber); }
.rk-turn-who { color: var(--muted); }
.rk-steps { display: inline-flex; gap: 2px; background: rgba(255, 255, 255, .05); border-radius: 999px; padding: 2px; }
.rk-step { padding: .12rem .55rem; border-radius: 999px; color: var(--muted); font-size: .75rem; }
.rk-step.on { background: var(--rk-amber); color: #1a1406; font-weight: 700; }
.rk-countdown { color: var(--rk-paper); }
.rk-res { display: inline-flex; align-items: center; gap: .2rem; font-variant-numeric: tabular-nums; font-weight: 600; }
.rk-res small { color: var(--muted); font-weight: 500; margin-left: 1px; }
.rk-res-geld { color: #e6cf8a; }
.rk-res-stahl { color: #a9c3cf; }
.rk-res-uran { color: var(--rk-uranium); }
.rk-res-truppe { color: var(--rk-paper); }
.rk-cost { white-space: nowrap; }

/* --- Chips und Kleinteile --- */

.rk-chip {
    display: inline-flex; align-items: center; gap: .3rem; padding: .1rem .55rem; border-radius: 999px;
    background: var(--c, #8d8874); color: var(--ci, #fff); font-weight: 600; font-size: .8rem; line-height: 1.5;
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); white-space: nowrap;
}
.rk-chip.me { outline: 2px solid var(--rk-amber); outline-offset: 1px; }
.rk-icon { display: inline-block; flex: 0 0 auto; vertical-align: -0.15em; }
.rk-icon-sm { width: 14px; height: 14px; }
.rk-icon-md { width: 18px; height: 18px; }
.rk-icon-lg { width: 26px; height: 26px; }
.rk-icon.off { opacity: .25; }
.rk-icon.on { color: #8fd3ff; }

/* --- Karte --- */

.rk-viewport { position: relative; flex: 1 1 auto; min-height: 0; overflow: hidden; touch-action: none; background: var(--rk-sea, #16232a); }
.rk-canvas { width: 100%; height: 100%; transform-origin: 0 0; will-change: transform; }
.rk-map { display: block; width: 100%; height: 100%; user-select: none; -webkit-user-select: none; }
.rk-grid line { stroke: rgba(160, 196, 210, .08); stroke-width: .8; }
.rk-grid-label { font-family: var(--font-mono, ui-monospace, monospace); font-size: 7px; fill: rgba(170, 200, 210, .38); text-anchor: middle; }
.rk-compass circle { fill: rgba(10, 16, 19, .55); stroke: rgba(170, 200, 210, .35); stroke-width: .8; }
.rk-compass-needle { fill: rgba(231, 227, 214, .4); }
.rk-compass-north { fill: var(--rk-amber, #e0b23c); }
.rk-compass text { font-size: 8px; font-weight: 800; fill: var(--rk-amber, #e0b23c); text-anchor: middle; }
/* Land: Küstenschimmer und Papierkörnung als SVG-Filter (auf dem Handy aus, siehe unten). */
.rk-land { filter: url(#rk-land); }
.rk-regions text {
    font-family: var(--font-display, Montserrat, sans-serif); font-size: 15px; font-weight: 800; letter-spacing: .38em;
    text-anchor: middle; fill: rgba(255, 255, 255, .14); paint-order: stroke; stroke: rgba(0, 0, 0, .12); stroke-width: 1px;
}
.rk-sealinks line { stroke: #88aebd; stroke-width: 1.6; stroke-dasharray: 5 4; opacity: .7; }

.rk-terr { stroke: #0c1316; stroke-width: 1.1; stroke-linejoin: round; transition: fill .35s ease, opacity .2s ease; }
.rk-terr.neutral { opacity: .92; }
.rk-terr.selectable, .rk-terr.target { cursor: pointer; }
.rk-terr.selectable:hover, .rk-terr.target:hover { filter: brightness(1.18); }
.rk-terr.dim { opacity: .35; }
.rk-outline { fill: none; pointer-events: none; stroke-linejoin: round; }
.rk-outline.selected { stroke: #fff4c2; stroke-width: 3.2; }
.rk-outline.target { stroke: var(--rk-amber, #e0b23c); stroke-width: 2.6; stroke-dasharray: 6 4; animation: rk-march 1s linear infinite; }
@keyframes rk-march { to { stroke-dashoffset: -20; } }
.my-turn .rk-terr.selectable:not(.selected) { stroke: rgba(255, 244, 194, .55); stroke-width: 1.5; }

.rk-mark.clickable { cursor: pointer; }
.rk-name {
    font-family: var(--font-body, Inter, sans-serif); font-size: 7.6px; font-weight: 600; text-anchor: middle;
    fill: rgba(255, 255, 255, .9); paint-order: stroke; stroke: rgba(9, 15, 18, .85); stroke-width: 2.4px; pointer-events: none;
}
.rk-badge { stroke: #fff; stroke-width: 1.6; filter: drop-shadow(0 1px 1.5px rgba(0, 0, 0, .55)); }
.rk-badge.neutral { stroke: #2a2a24; fill: #b9b49e; }
.rk-badge.blocked { fill: #2c2b18; stroke: var(--rk-uranium, #e3c13b); }
.rk-badge-trefoil { color: var(--rk-uranium, #e3c13b); }
.rk-count { font-family: var(--font-display, Montserrat, sans-serif); font-size: 11.5px; font-weight: 800; fill: var(--ci, #fff); text-anchor: middle; pointer-events: none; }
.rk-count.neutral { fill: #1d1d18; }
.rk-blocked-rounds { font-size: 9px; font-weight: 800; fill: var(--rk-uranium, #e3c13b); text-anchor: middle; paint-order: stroke; stroke: #0c1316; stroke-width: 2px; }
.rk-capital { color: #f6d55c; filter: drop-shadow(0 0 2px rgba(0, 0, 0, .8)); }
.rk-capital.draft { color: #fff4c2; opacity: .85; }
.rk-facility { color: #ffb347; filter: drop-shadow(0 0 2px rgba(0, 0, 0, .8)); }
.rk-uranium { color: var(--rk-uranium, #e3c13b); filter: drop-shadow(0 0 1.5px rgba(0, 0, 0, .9)); }
.rk-defense { color: #8fd3ff; filter: drop-shadow(0 0 1.5px rgba(0, 0, 0, .9)); }
.rk-defense text { font-size: 8px; font-weight: 800; fill: #8fd3ff; paint-order: stroke; stroke: #0c1316; stroke-width: 2px; }
.rk-stored-bomb { color: #ffb4a8; filter: drop-shadow(0 0 2px rgba(0, 0, 0, .9)); transform-box: fill-box; transform-origin: center; }
.rk-stored-bomb.armed { color: #ff5a45; animation: rk-bomb-pulse 1s ease-in-out infinite; }
@keyframes rk-bomb-pulse { 50% { transform: scale(1.25); filter: drop-shadow(0 0 5px rgba(255, 90, 69, .9)); } }
.rk-flash { opacity: 0; animation: rk-flash 1.2s ease-out; mix-blend-mode: screen; }
@keyframes rk-flash { 0% { opacity: .95; } 100% { opacity: 0; } }
.rk-blast-flash { fill: #fff3c4; opacity: 0; transform-box: fill-box; transform-origin: center; animation: rk-blast-flash 1.5s var(--d, 0ms) ease-out both; }
.rk-blast-ring { fill: none; stroke: #ffcf6b; stroke-width: 2.5; opacity: 0; transform-box: fill-box; transform-origin: center; animation: rk-blast-ring 1.8s var(--d, 0ms) ease-out both; }
.rk-blast-ring.second { stroke: #ff7a4d; animation-delay: calc(var(--d, 0ms) + 250ms); }
@keyframes rk-blast-flash { 0% { opacity: 0; transform: scale(.2); } 12% { opacity: .95; } 100% { opacity: 0; transform: scale(1.6); } }
@keyframes rk-blast-ring { 0% { opacity: .9; transform: scale(1); } 100% { opacity: 0; transform: scale(11); } }
.rk-draft { fill: #2fbf71; stroke: #0b2a18; stroke-width: .8; }
.rk-draft-text { font-size: 8px; font-weight: 800; fill: #06200f; text-anchor: middle; pointer-events: none; }

.rk-tools { position: absolute; right: .6rem; bottom: .6rem; display: flex; flex-direction: column; gap: .3rem; z-index: 2; }
.rk-tool {
    width: 40px; height: 40px; border-radius: 10px; border: 1px solid var(--line); background: rgba(15, 23, 27, .85);
    color: var(--rk-paper, #e7e3d6); font-size: 1.15rem; font-weight: 700; cursor: pointer;
}
.rk-tool:hover { background: rgba(38, 56, 66, .95); }

/* --- Panels --- */

.rk-panel-title { margin: 0 0 .5rem; font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; color: var(--rk-amber); display: flex; align-items: center; gap: .5rem; }
.rk-panel-body { display: flex; flex-direction: column; gap: .55rem; font-size: .9rem; }
.rk-section { display: flex; flex-direction: column; gap: .4rem; padding-bottom: .55rem; border-bottom: 1px solid var(--line); }
.rk-section:last-of-type { border-bottom: 0; }
.rk-section h4 { margin: 0; font-size: .82rem; letter-spacing: .03em; display: flex; align-items: center; gap: .35rem; }
.rk-row { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .6rem; }
.rk-label { display: inline-flex; align-items: center; gap: .3rem; flex: 1 1 auto; min-width: 8rem; }
.rk-label small { color: var(--muted); margin-left: .3rem; }
.rk-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .4rem; }
.rk-actions .hx-btn { margin: 0; }
.rk-hint { margin: 0; line-height: 1.55; }
.rk-hint .rk-icon, .rk-hint .rk-chip { margin-right: .25rem; }
.rk-muted { margin: 0; color: var(--muted); font-size: .85rem; }
.rk-why { margin: 0; color: #f0b56a; font-size: .8rem; display: flex; align-items: center; gap: .3rem; }
.rk-error { margin: 0 0 .4rem; padding: .4rem .6rem; border-radius: 8px; background: rgba(214, 69, 51, .16); color: var(--error, #ff7a68); font-size: .85rem; }
.rk-selected { display: flex; flex-direction: column; gap: .4rem; padding: .5rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255, 255, 255, .03); }
.rk-selected-name { font-weight: 700; }
.rk-versus { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; }
.rk-bomb-ready-row { display: flex; align-items: center; gap: .5rem; padding-top: .2rem; }

.rk-stepper { display: inline-flex; align-items: center; gap: .25rem; }
.rk-step-btn, .rk-step-max, .rk-dice-btn {
    min-width: 40px; height: 40px; padding: 0 .55rem; border-radius: 10px; border: 1px solid var(--line);
    background: var(--surface-2); color: var(--ink); font-weight: 700; font-size: 1rem; cursor: pointer;
}
.rk-step-btn:disabled, .rk-step-max:disabled { opacity: .35; cursor: default; }
.rk-step-max { font-size: .8rem; font-weight: 600; }
.rk-step-value { min-width: 2.2rem; text-align: center; font-weight: 800; font-size: 1.05rem; font-variant-numeric: tabular-nums; }
.rk-dice-pick { display: inline-flex; gap: .3rem; }
.rk-dice-btn.on { background: var(--rk-amber); color: #1a1406; border-color: transparent; }

/* --- Forschungsleiste aller Spieler --- */

.rk-players { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .45rem; }
.rk-player { border-left: 4px solid var(--c); padding: .3rem .5rem; background: rgba(255, 255, 255, .025); border-radius: 0 8px 8px 0; font-size: .82rem; }
.rk-player.active { background: color-mix(in srgb, var(--c) 18%, transparent); }
.rk-player.out { opacity: .45; }
.rk-player-head { display: flex; align-items: center; gap: .4rem; }
.rk-player-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--c); }
.rk-player-name { font-weight: 700; }
.rk-player-status { margin-left: auto; color: var(--muted); font-size: .75rem; }
.rk-player-stats, .rk-player-extra { display: flex; flex-wrap: wrap; gap: .2rem .7rem; color: var(--muted); margin-top: .15rem; align-items: center; }
.rk-research { display: flex; flex-wrap: wrap; gap: 3px; margin-top: .25rem; align-items: center; }
.rk-stage { font-size: .68rem; padding: .05rem .4rem; border-radius: 4px; background: rgba(255, 255, 255, .06); color: var(--muted); }
.rk-stage.on { background: color-mix(in srgb, var(--rk-uranium) 85%, #000); color: #1b1600; font-weight: 700; }
.rk-bomb-flag { display: inline-flex; align-items: center; gap: .2rem; font-size: .7rem; font-weight: 800; color: #fff; background: #6b2a22; padding: .05rem .4rem; border-radius: 4px; }
.rk-bomb-flag.armed { background: var(--rk-alarm); animation: rk-pulse 1.2s ease-in-out infinite; }
@keyframes rk-pulse { 50% { box-shadow: 0 0 0 4px rgba(214, 69, 51, .35); } }

.rk-strip { display: flex; gap: .3rem; overflow-x: auto; padding: .3rem .5rem; background: rgba(10, 16, 19, .9); scrollbar-width: none; }
.rk-strip-chip {
    flex: 0 0 auto; display: inline-flex; align-items: center; gap: .3rem; padding: .15rem .45rem; border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--c) 70%, transparent); background: color-mix(in srgb, var(--c) 22%, transparent); font-size: .75rem;
}
.rk-strip-chip.active { background: var(--c); color: var(--ci, #fff); }
.rk-strip-chip.out { opacity: .4; text-decoration: line-through; }
.rk-strip-name { font-weight: 700; }
.rk-strip-def { display: inline-flex; align-items: center; gap: 1px; }
.rk-pips { display: inline-flex; gap: 2px; }
.rk-pip { width: 6px; height: 6px; border-radius: 50%; background: rgba(255, 255, 255, .2); }
.rk-pip.on { background: var(--rk-uranium); }
.rk-armed { color: var(--rk-alarm); animation: rk-blink 1s steps(2, end) infinite; }
.rk-bomb-ready { color: #ffb4a8; }
@keyframes rk-blink { 50% { opacity: .4; } }

/* --- Verlauf, Endstand, Ziele --- */

.rk-log { list-style: none; margin: .4rem 0 0; padding: 0; max-height: 260px; overflow-y: auto; font-size: .78rem; color: var(--muted); }
.rk-log li { padding: .2rem 0; border-top: 1px solid rgba(255, 255, 255, .05); }
.rk-log-round { display: inline-block; min-width: 1.4rem; color: var(--rk-amber); font-weight: 700; }
.rk-result { margin: 0; font-weight: 700; display: flex; align-items: center; gap: .4rem; }
.rk-scores { width: 100%; border-collapse: collapse; font-size: .82rem; }
.rk-scores th, .rk-scores td { padding: .25rem .3rem; text-align: right; }
.rk-scores th:first-child, .rk-scores td:first-child { text-align: left; }
.rk-targets { list-style: none; margin: 0 0 .6rem; padding: 0; display: flex; flex-direction: column; gap: .5rem; }
.rk-target { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.rk-target-info { display: flex; flex-direction: column; flex: 1 1 10rem; font-size: .85rem; }
.rk-target-info small { color: var(--muted); }

/* --- Momente --- */

.rk-moment .hx-moment-body { width: min(560px, 100%); }
.rk-dice, .rk-bomb { display: flex; flex-direction: column; align-items: center; gap: 1rem; color: #f3efe2; text-align: center; }
.rk-dice-head { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .5rem; font-size: 1.05rem; }
.rk-dice-vs strong { color: #fff; }
.rk-dice-rows { display: grid; grid-template-columns: auto 48px auto; gap: .6rem; align-items: start; }
.rk-dice-col { display: flex; flex-direction: column; gap: .45rem; align-items: center; }
.rk-dice-label { font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; opacity: .7; }
.rk-die {
    width: 52px; height: 52px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center;
    font-family: var(--font-display); font-size: 1.6rem; font-weight: 800; position: relative;
    animation: rk-roll .45s calc(var(--i) * 90ms) both cubic-bezier(.2, 1.4, .4, 1);
}
.rk-die sup { font-size: .72rem; font-weight: 800; position: absolute; top: -8px; right: -8px; padding: 1px 5px; border-radius: 999px; background: #f6d55c; color: #1a1406; line-height: 1.3; }
.rk-die.attack { background: #b8352a; color: #fff; }
.rk-die.defense { background: #e7e3d6; color: #1c1c18; }
.rk-die.spare { filter: grayscale(.8) brightness(.55); }
.rk-die.win { box-shadow: 0 0 0 3px #f6d55c, 0 0 18px rgba(246, 213, 92, .55); }
@keyframes rk-roll { from { transform: rotate(-25deg) scale(.4); opacity: 0; } to { transform: none; opacity: 1; } }
.rk-dice-links { display: flex; flex-direction: column; gap: .45rem; padding-top: 1.35rem; }
.rk-link { height: 52px; display: flex; align-items: center; }
.rk-link::before { content: ""; width: 100%; height: 3px; border-radius: 2px; background: #e7e3d6; opacity: .6; }
.rk-link.attack::before { background: #f08a7f; opacity: 1; }
.rk-dice-result { display: flex; flex-direction: column; gap: .3rem; align-items: center; font-size: 1rem; }
.rk-dice-note { opacity: .75; font-size: .85rem; }
.rk-dice-banner { font-family: var(--font-display); font-size: 1.3rem; letter-spacing: .03em; color: #f6d55c; }
.rk-dice-banner.danger, .rk-bomb .danger { color: #ff8a7a; }

.rk-bomb-moment { background: radial-gradient(ellipse at 50% 35%, rgba(140, 30, 20, .55), rgba(5, 5, 5, .96) 70%); }
.rk-bomb-title { display: flex; align-items: center; gap: .5rem; font-family: var(--font-display); font-size: 1.6rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--rk-uranium, #e3c13b); }
.rk-strike { display: flex; flex-direction: column; gap: .5rem; align-items: center; padding: .7rem 1rem; border-radius: 14px; background: rgba(255, 255, 255, .05); width: 100%; }
.rk-strike-head { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .4rem; }
.rk-strike-label { font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; opacity: .75; }
.rk-strike-place { font-weight: 700; }
.rk-strike-dice { display: flex; gap: .45rem; min-height: 52px; align-items: center; }
.rk-strike-dice .rk-die { animation-delay: calc(.6s + var(--i) * 150ms); }
.rk-strike-result { font-family: var(--font-display); font-size: 1.5rem; font-weight: 800; letter-spacing: .05em; animation: rk-reveal .4s 1.3s both; }
.rk-strike.hit .rk-strike-result { color: #ff6a55; text-shadow: 0 0 18px rgba(255, 90, 60, .7); }
.rk-strike.intercepted .rk-strike-result { color: #8fd3ff; }
.rk-bomb-second { width: 100%; animation: rk-reveal .4s 1.9s both; }
.rk-bomb-second .rk-strike-result { animation-delay: 2.6s; }
.rk-bomb-outcome { font-size: 1.1rem; animation: rk-reveal .4s 2.9s both; }
@keyframes rk-reveal { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

.rk-probe { padding: 1rem; }

/* --- Handy: Karte vollflächig, Forschungsleiste als Chips oben, Panel als Sheet von unten --- */

@media (max-width: 719.98px) {
    .rk-game { grid-template-columns: minmax(0, 1fr); }
    .rk-side { position: static; padding: 0; border: 0; background: transparent; overflow: visible; }
    .rk-players-card, .rk-log-card, .rk-panel-title { display: none; }
    .rk-strip-slot { display: block; }
    .rk-turnbar { padding: .3rem .5rem; font-size: .8rem; }
    .rk-turn-right { width: 100%; justify-content: space-between; }
    /* Die Karte steht oben in voller Breite und genau so hoch wie sie ist; darunter liegt das Sheet. */
    .rk-viewport { flex: 0 0 auto; aspect-ratio: var(--rk-aspect, 1.69); }
    .rk-main { overflow: hidden; }
    .rk-side .hx-sheet { max-height: 56vh; }
    .rk-side .hx-sheet-body { max-height: calc(56vh - 48px); }
    .rk-tools { top: .35rem; right: .35rem; bottom: auto; flex-direction: row; }
    .rk-tool { width: 34px; height: 34px; font-size: 1rem; }
    .rk-side .hx-sheet { background: var(--surface); }
    .rk-name { font-size: 8.5px; }
    .rk-land { filter: none; }
    .rk-regions text { font-size: 13px; }
    .rk-die { width: 46px; height: 46px; font-size: 1.4rem; }
    .rk-link { height: 46px; }
}

@media (prefers-reduced-motion: reduce) {
    .rk-outline.target, .rk-bomb-flag.armed, .rk-armed, .rk-stored-bomb.armed { animation: none; }
    .rk-flash, .rk-blast-flash, .rk-blast-ring { animation: none; opacity: 0; }
    .rk-die, .rk-strike-result, .rk-bomb-second, .rk-bomb-outcome { animation: none; }
}

/* --- Ton an/aus in der Zugleiste --- */
.rk-sound {
    display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; min-height: 0; padding: 0; margin: 0;
    border-radius: 8px; border: 1px solid var(--line); background: transparent; color: var(--muted); cursor: pointer;
}
.rk-sound:hover { color: var(--ink); background: rgba(255, 255, 255, .05); }
.rk-sound[aria-pressed="true"] { color: var(--rk-paper, #e7e3d6); }
