/* ── DMG Handheld Theme (Game Boy) ────────────────── */
.theme-dmg {
    --bg-dark: hsl(85, 10%, 65%); /* Olive Screen */
    --surface: hsl(85, 10%, 60%);
    --surface-light: hsl(85, 10%, 70%);
    --text-main: hsl(100, 30%, 15%);
    --text-muted: hsl(100, 20%, 30%);
    --accent: hsl(100, 30%, 15%);
    
    --glass-bg: hsla(85, 10%, 60%, 0.9);
    --glass-border: hsla(100, 30%, 15%, 0.2);
    --glass-shadow: 4px 4px 0px hsla(100, 30%, 15%, 0.2);
    
    --breakfast: #0f380f;  /* Darkest Green */
    --lunch: #306230;      /* Dark Green */
    --dinner: #8bac0f;     /* Light Green */
    --snacks: #ffffff;     /* White (GameBoy highlights) */

    font-family: 'Press Start 2P', cursive;
}

.theme-dmg body {
    background-color: hsl(0, 0%, 80%); /* GameBoy Shell Grey */
    background-image: 
        radial-gradient(circle at 50% 50%, hsl(85, 10%, 75%) 0%, hsl(85, 10%, 65%) 100%);
}

.theme-dmg .app-container {
    max-width: 500px;
    margin: 20px auto;
    border: 12px solid #999;
    border-radius: 10px 10px 60px 10px;
    background: hsl(0, 0%, 85%);
    box-shadow: 10px 10px 0px #666;
    padding: 20px;
}

.theme-dmg .logo-text {
    font-size: 1.2rem;
    letter-spacing: -1px;
}

.theme-dmg .box {
    border-radius: 0;
    border: 2px solid var(--text-main);
    box-shadow: 2px 2px 0px var(--text-muted);
}

.theme-dmg .box.filled {
    background-image: radial-gradient(var(--accent) 20%, transparent 20%);
    background-size: 4px 4px;
}

.theme-dmg .stat-value {
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8rem;
}

.theme-dmg .progress-container {
    border: 2px solid var(--text-main);
    height: 12px;
    border-radius: 0;
}

/* Shorten Breakfast label for space */
.theme-dmg #meal-breakfast .meal-label {
    font-size: 0;
}

.theme-dmg #meal-breakfast .meal-label::after {
    content: 'BREAK';
    font-size: 0.65rem;
    display: inline-block;
}
