/* ========= Minecraft Theme ========= */
/* Blocky pixel vibe — grass green + dirt brown, pixelated hearts, damage red vignette like the game */

body.minecraft {
    --accent: #7ec850;
    --accent-2: #5d8a3a;
    --bg-deep: #0d1408;
}

body.minecraft .bg-layer {
    background:
        radial-gradient(ellipse at 20% 10%, rgba(126, 200, 80, 0.1), transparent 45%),
        radial-gradient(ellipse at 80% 90%, rgba(93, 138, 58, 0.15), transparent 50%),
        linear-gradient(180deg, #0d1408 0%, #121a0c 100%);
}

body.minecraft .gradient-text {
    background: linear-gradient(135deg, #c7e9a3 0%, #7ec850 50%, #4a7326 100%);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
}
body.minecraft .btn-primary {
    background: linear-gradient(135deg, #7ec850, #5d8a3a);
    color: #0a1205;
    box-shadow: 0 8px 24px -8px rgba(126,200,80,0.55);
}
body.minecraft .logo-chip { background: linear-gradient(135deg, #7ec850, #5d8a3a); color: #0a1205; }
body.minecraft .match-code { border-color: rgba(126,200,80,0.4); background: rgba(126,200,80,0.08); }
body.minecraft .answer-btn.correct { border-color: #7ec850; background: rgba(126,200,80,0.15); }
body.minecraft .answer-btn.correct .answer-key { background: #7ec850; color: #0a1205; }
body.minecraft .result-title { background: linear-gradient(135deg, #fff, #7ec850); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }

/* Real Minecraft heart (image) instead of CSS mask */
body.minecraft .heart {
    width: 20px; height: 20px;
    background: url("../../images/mc-heart.png") center/contain no-repeat;
    -webkit-mask: none; mask: none;
    image-rendering: pixelated;
    filter: drop-shadow(1px 1px 0 rgba(0,0,0,0.4));
}
body.minecraft .heart.gone {
    filter: grayscale(100%) brightness(0.35);
    opacity: 0.55;
}

/* Hit: red damage tint on panel + block-break shake */
body.minecraft .player-panel.hit {
    animation: mc-hurt .55s steps(4);
}
@keyframes mc-hurt {
    0%   { transform: translateX(0);   filter: hue-rotate(0) brightness(1); }
    20%  { transform: translateX(-5px); filter: hue-rotate(-30deg) brightness(1.3) sepia(0.3) saturate(3); }
    40%  { transform: translateX(5px);  filter: hue-rotate(-30deg) brightness(1.1) sepia(0.3) saturate(3); }
    60%  { transform: translateX(-3px); filter: hue-rotate(-30deg) brightness(1.2) sepia(0.3) saturate(3); }
    100% { transform: translateX(0);    filter: none; }
}

/* Damage overlay: red tinted hurt-screen like in Minecraft when you take damage */
body.minecraft .damage-overlay.active {
    background:
        linear-gradient(180deg, transparent 0%, transparent 60%, rgba(255,0,0,0.25) 100%),
        radial-gradient(ellipse at center, transparent 30%, rgba(200,30,30,0.25) 60%, rgba(200,30,30,0.55) 100%);
    animation: mc-dmg .9s ease-out;
}
body.minecraft .damage-overlay.critical {
    background:
        linear-gradient(180deg, rgba(255,0,0,0.15) 0%, rgba(255,0,0,0.3) 100%),
        radial-gradient(ellipse at center, transparent 10%, rgba(200,30,30,0.6) 70%, rgba(200,30,30,0.85) 100%);
    animation: mc-low-health 1.2s ease-in-out infinite;
}
@keyframes mc-dmg {
    0%   { opacity: 0; }
    12%  { opacity: 1; }
    100% { opacity: 0; }
}
@keyframes mc-low-health {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 0.85; }
}

/* Pixel-y touch for question text */
body.minecraft .match-code {
    font-family: 'Courier New', monospace;
    text-shadow: 3px 3px 0 rgba(0,0,0,0.3);
}

/* ========= Minecraft Death Screen — 10 hearts deplete + DU BIST GESTORBEN ========= */
body.minecraft .death-screen {
    background: linear-gradient(180deg, rgba(80,0,0,0.95) 0%, rgba(30,0,0,0.98) 100%);
}
body.minecraft .ds-hearts {
    display: flex; justify-content: center; gap: 6px;
    margin-bottom: 2rem;
    flex-wrap: wrap; max-width: 440px;
}
body.minecraft .ds-hearts .mc-heart {
    display: block;
    width: 38px; height: 38px;
    background: url("../../images/mc-heart.png") center/contain no-repeat;
    image-rendering: pixelated;
    filter: drop-shadow(2px 2px 0 rgba(0,0,0,0.5));
    animation: mc-heart-deplete 0.4s ease forwards;
}
body.minecraft .ds-hearts .mc-heart:nth-child(1)  { animation-delay: 0.10s; }
body.minecraft .ds-hearts .mc-heart:nth-child(2)  { animation-delay: 0.20s; }
body.minecraft .ds-hearts .mc-heart:nth-child(3)  { animation-delay: 0.30s; }
body.minecraft .ds-hearts .mc-heart:nth-child(4)  { animation-delay: 0.40s; }
body.minecraft .ds-hearts .mc-heart:nth-child(5)  { animation-delay: 0.50s; }
body.minecraft .ds-hearts .mc-heart:nth-child(6)  { animation-delay: 0.60s; }
body.minecraft .ds-hearts .mc-heart:nth-child(7)  { animation-delay: 0.70s; }
body.minecraft .ds-hearts .mc-heart:nth-child(8)  { animation-delay: 0.80s; }
body.minecraft .ds-hearts .mc-heart:nth-child(9)  { animation-delay: 0.90s; }
body.minecraft .ds-hearts .mc-heart:nth-child(10) { animation-delay: 1.00s; }

body.minecraft .ds-title {
    color: #ff5555;
    font-family: 'Courier New', monospace;
    font-size: clamp(2rem, 7vw, 3.75rem);
    text-shadow: 4px 4px 0 #3a0808, 0 0 20px rgba(255,85,85,0.5);
    animation: mc-title-in 0.5s steps(3) 1.2s backwards;
}
body.minecraft .ds-sub {
    color: #bbbbbb;
    font-family: 'Courier New', monospace;
    letter-spacing: 0.1em;
    animation: mc-sub-in 0.5s ease 1.5s backwards;
}

@keyframes mc-heart-deplete {
    0%   { opacity: 1; transform: scale(1);
           filter: drop-shadow(2px 2px 0 rgba(0,0,0,0.5)); }
    40%  { opacity: 1; transform: scale(1.35);
           filter: drop-shadow(2px 2px 0 rgba(0,0,0,0.5)) brightness(1.4) saturate(2) hue-rotate(-20deg); }
    100% { opacity: 0.18; transform: scale(0.85);
           filter: grayscale(100%) brightness(0.3); }
}
@keyframes mc-title-in {
    0%   { opacity: 0; transform: scale(0.3); }
    100% { opacity: 1; transform: scale(1); }
}
@keyframes mc-sub-in {
    from { opacity: 0; transform: translateY(10px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ========= Minecraft Reward ========= */
body.minecraft .reward-screen { background: rgba(13,20,8,0.92); }
body.minecraft .rs-inner {
    background: linear-gradient(180deg, rgba(126,200,80,0.1), rgba(126,200,80,0.02));
    border-color: rgba(126,200,80,0.3);
}
body.minecraft .rs-label { color: #7ec850; font-family: 'Courier New', monospace; }
body.minecraft .rs-item { --rs-glow: rgba(126,200,80,0.55); border-color: rgba(126,200,80,0.3); }
body.minecraft .rs-name { color: #c7e9a3; font-family: 'Courier New', monospace; }
body.minecraft .rs-claim {
    background: linear-gradient(135deg, #7ec850, #5d8a3a);
    color: #0a1205;
    font-family: 'Courier New', monospace;
}
