/* Melhoria para dispositivos touch */
@media (hover: none) and (pointer: coarse) {
    .tooth-area, .tooth-id-button, button, .btn {
        min-height: 44px !important;
        min-width: 44px !important;
    }
    .tooth-area { min-height: 20px !important; min-width: 20px !important; }
    .tooth-area:hover { transform: none; box-shadow: none; }
    .tooth-area:active, .tooth-id-button:active {
        transform: scale(0.95);
        transition: transform 0.1s ease;
    }
}

:root {
    /* ── cPod Brand Palette ───────────────────────────────── */
    --cpod-primary:       #1F5C59;   /* teal escuro */
    --cpod-purple:        #C333F3;   /* roxo */
    --cpod-blue:          #33C3F3;   /* azul claro */
    --cpod-mint:          #33F3C3;   /* mint */
    --cpod-bg:            #F0FAF9;   /* fundo levemente esverdeado */
    --cpod-surface:       #FFFFFF;
    --cpod-text:          #1A2E2D;
    --cpod-text-muted:    #4A7A77;
    --cpod-border:        #AECFCD;

    /* ── System tokens ────────────────────────────────────── */
    --primary:              var(--cpod-primary);
    --primary-foreground:   #FFFFFF;
    --secondary:            #E8F5F4;
    --secondary-foreground: var(--cpod-text);
    --muted:                #EDF6F5;
    --muted-foreground:     var(--cpod-text-muted);
    --accent:               #DFF2F1;
    --accent-foreground:    var(--cpod-primary);
    --destructive:          #EF4444;
    --destructive-foreground: #FFFFFF;
    --success:              var(--cpod-mint);
    --warning:              var(--cpod-purple);
    --background:           var(--cpod-bg);
    --foreground:           var(--cpod-text);
    --card:                 var(--cpod-surface);
    --card-foreground:      var(--cpod-text);
    --border:               var(--cpod-border);
    --input:                var(--cpod-border);
    --ring:                 var(--cpod-primary);
    --radius:               0.5rem;

    /* ── Tooth status ─────────────────────────────────────── */
    --tooth-normal:         #FFFFFF;
    --tooth-with-procedure: var(--cpod-primary);
    --tooth-absent:         #9CA3AF;
    --tooth-in-treatment:   var(--cpod-purple);
    --tooth-treated:        var(--cpod-mint);
    --tooth-planning:       var(--cpod-blue);
    --tooth-border:         var(--cpod-border);
    --tooth-hover:          #DFF2F1;

    /* ── Shadows ──────────────────────────────────────────── */
    --shadow-sm: 0 1px 2px 0 rgba(31,92,89,0.08);
    --shadow:    0 2px 6px rgba(31,92,89,0.10);
    --shadow-md: 0 4px 12px rgba(31,92,89,0.15);
    --shadow-lg: 0 10px 24px rgba(31,92,89,0.18);
}

:root[data-contrast="high"] {
    --cpod-primary:       #083331;
    --cpod-purple:        #7A119D;
    --cpod-blue:          #005A9C;
    --cpod-mint:          #008C6A;
    --cpod-bg:            #FFFFFF;
    --cpod-surface:       #FFFFFF;
    --cpod-text:          #111111;
    --cpod-text-muted:    #2B2B2B;
    --cpod-border:        #111111;

    --secondary:            #F0F0F0;
    --muted:                #F7F7F7;
    --accent:               #E2F0FF;
    --warning:              #7A119D;
    --background:           #FFFFFF;
    --foreground:           #111111;
    --card:                 #FFFFFF;
    --card-foreground:      #111111;
    --border:               #111111;
    --input:                #111111;
    --ring:                 #111111;

    --tooth-normal:         #FFFFFF;
    --tooth-with-procedure: #083331;
    --tooth-absent:         #595959;
    --tooth-in-treatment:   #7A119D;
    --tooth-treated:        #008C6A;
    --tooth-planning:       #005A9C;
    --tooth-border:         #111111;
    --tooth-hover:          #D9ECFF;

    --shadow-sm: 0 1px 2px 0 rgba(0,0,0,0.12);
    --shadow:    0 2px 6px rgba(0,0,0,0.16);
    --shadow-md: 0 4px 12px rgba(0,0,0,0.2);
    --shadow-lg: 0 10px 24px rgba(0,0,0,0.24);
}
