/* ===== Dark theme (black & graphite) ===== */
        .dark { color-scheme: dark; }
        .dark body { background-color: #0d0d0d; color: #f5f5f5; }

        /* Surfaces */
        .dark [class~="bg-white"] { background-color: #1a1a1a; }
        .dark [class~="bg-gray-50"] { background-color: #242424; }
        .dark [class~="bg-gray-50/50"] { background-color: #242424; }
        .dark [class~="bg-gray-50/30"] { background-color: #242424; }
        .dark [class~="bg-gray-100"] { background-color: #2a2a2a; }
        .dark [class~="bg-gray-200"] { background-color: #2a2a2a; }
        .dark [class~="bg-[#f4f6f8]"] { background-color: #0d0d0d; }
        .dark [class~="bg-[#f4f6f8]/80"] { background-color: rgba(13,13,13,0.8); }
        .dark [class~="bg-[#fafafa]"] { background-color: #242424; }
        .dark [class~="bg-[#faf6f0]"] { background-color: #242424; }
        .dark [class~="focus:bg-white"]:focus { background-color: #1a1a1a; }

        /* Charcoal used as background: badge visible, backdrop black */
        .dark [class~="bg-charcoal"] { background-color: #3a3a3a; }
        .dark [class~="bg-charcoal/40"] { background-color: rgba(0,0,0,0.6); }

        /* Text */
        .dark [class~="text-charcoal"] { color: #f5f5f5; }
        .dark [class~="text-gray-800"] { color: #f0f0f0; }
        .dark [class~="text-gray-600"] { color: #c4c4c4; }
        .dark [class~="text-gray-500"] { color: #9a9a9a; }
        .dark [class~="text-gray-400"] { color: #8a8a8a; }
        .dark [class~="text-gray-300"] { color: #6a6a6a; }
        .dark [class~="text-muted"] { color: #9a9a9a; }

        /* Borders */
        .dark [class~="border-gray-100"] { border-color: #2a2a2a; }
        .dark [class~="border-gray-100/50"] { border-color: #2a2a2a; }
        .dark [class~="border-gray-100/80"] { border-color: #2a2a2a; }
        .dark [class~="border-gray-100/30"] { border-color: #2a2a2a; }
        .dark [class~="border-gray-100/20"] { border-color: #2a2a2a; }
        .dark [class~="border-gray-200"] { border-color: #3a3a3a; }
        .dark [class~="border-gray-200/80"] { border-color: #3a3a3a; }
        .dark [class~="border-gray-50"] { border-color: #2a2a2a; }
        .dark [class~="border-gray-300"] { border-color: #3a3a3a; }

        /* Divide */
        .dark [class~="divide-gray-50"] > * + * { border-color: #2a2a2a; }

        /* Accent tints bumped for visibility on dark */
        .dark [class~="bg-accent/5"] { background-color: color-mix(in srgb, var(--accent) 7.84%, transparent); }
        .dark [class~="bg-accent/10"] { background-color: color-mix(in srgb, var(--accent) 14.9%, transparent); }
        .dark [class~="bg-accent/20"] { background-color: color-mix(in srgb, var(--accent) 20%, transparent); }

        /* Accent full and text-on-accent: ensure the Tailwind CDN
           shorthand (rgb(... / var(--tw-bg-opacity, 1))) resolves to
           the configured accent color in dark mode too. */
        .dark [class~="bg-accent"] { background-color: var(--accent); }
        .dark [class~="text-onAccent"] { color: var(--on-accent, #fff); }
        .dark [class~="hover:brightness-90"]:hover { filter: brightness(0.95); }
        .dark [class~="border-accent/30"] { border-color: color-mix(in srgb, var(--accent) 30%, transparent); }
        .dark [class~="text-accent"] { color: var(--accent); }

        /* Footer action bar: flat, no card, just background color. */
        .footer-action-bar { background-color: #ffffff; }
        .footer-action-card { background-color: transparent; border: none; box-shadow: none; }
        .dark .footer-action-bar { background-color: #0d0d0d; }
        .dark .footer-action-card { background-color: transparent; border: none; box-shadow: none; }

        /* Hover/focus state variants */
        .dark [class~="hover:bg-gray-50"]:hover { background-color: #242424; }
        .dark [class~="hover:bg-gray-100"]:hover { background-color: #2a2a2a; }
        .dark [class~="hover:bg-gray-200"]:hover { background-color: #2a2a2a; }
        .dark [class~="hover:bg-gray-50/50"]:hover { background-color: #242424; }
        .dark [class~="hover:border-gray-200/80"]:hover { border-color: #3a3a3a; }
        .dark [class~="hover:text-gray-500"]:hover { color: #9a9a9a; }
        .dark [class~="hover:text-charcoal"]:hover { color: #f5f5f5; }

        /* Native widgets */
        .dark input, .dark textarea, .dark select { color-scheme: dark; }

        /* Nav (admin) */
        .dark .nav-btn { color: #9a9a9a; }
        .dark .nav-btn .icon-wrapper { color: #9a9a9a; }
        .dark .nav-active { color: #f5f5f5 !important; }
        .dark .nav-active span { color: #f5f5f5 !important; }

        /* Nav (public cardápio) */
        .dark .pub-nav-btn { color: #9a9a9a; }
        .dark .pub-nav-btn .icon-wrapper { color: #9a9a9a; }
        .dark .pub-nav-active { color: #f5f5f5 !important; }
        .dark .pub-nav-active span { color: #f5f5f5 !important; }

        /* Theme toggle icon swap */
        .theme-toggle .icon-moon { display: block; }
        .theme-toggle .icon-sun { display: none; }
        .dark .theme-toggle .icon-moon { display: none; }
        .dark .theme-toggle .icon-sun { display: block; }
