/* ── Tema Claro (padrão) ───────────────────────────────────────────────────── */
:root {
    --background: hsl(0 0% 100%);
    --foreground: hsl(240 10% 3.9%);
    --card: hsl(0 0% 100%);
    --card-foreground: hsl(240 10% 3.9%);
    --popover: hsl(0 0% 100%);
    --popover-foreground: hsl(240 10% 3.9%);
    /* Cores de marca: sobrescritas por platform-theme.php */
    --primary: #888888;
    --primary-hover: #777777;
    --primary-foreground: hsl(0 0% 98%);
    --secondary: hsl(240 4.8% 95.9%);
    --muted: hsl(240 4.8% 95.9%);
    --muted-foreground: hsl(240 3.8% 46.1%);
    --accent: hsl(240 4.8% 95.9%);
    --accent-foreground: hsl(240 5.9% 10%);
    --border: hsl(240 5.9% 90%);
    --input: hsl(0 0% 100%);
    --ring: hsl(240 5.9% 10%);
    --destructive: hsl(0 84.2% 60.2%);
    --destructive-foreground: hsl(0 0% 98%);
    --radius: 0.5rem;
    --sidebar-width: 80px;
    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.08);
    --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.12);
    --content-bg: hsl(240 4.8% 95.9% / 0.4);
    --transition: color 0.15s cubic-bezier(0.4, 0, 0.2, 1),
        background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1),
        border-color 0.15s cubic-bezier(0.4, 0, 0.2, 1),
        opacity 0.15s cubic-bezier(0.4, 0, 0.2, 1),
        transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ── Tema Escuro ───────────────────────────────────────────────────────────── */
.dark {
    --background: #050816;
    --foreground: #ffffff;
    --card: #111827;
    --card-foreground: #ffffff;
    --popover: #111827;
    --popover-foreground: #ffffff;
    --primary: #3b82f6;
    --primary-hover: #2563eb;
    --primary-foreground: #ffffff;
    --secondary: #0e1525;
    --muted: #0e1525;
    --muted-foreground: #94a3b8;
    --accent: #0e1525;
    --accent-foreground: #ffffff;
    --border: #1e293b;
    --input: #0e1525;
    --ring: #3b82f6;
    --destructive: 0 84% 60%;
    --destructive-foreground: #ffffff;
    --success: #10b981;
    --warning: #f59e0b;
    --danger: #ef4444;
    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
    --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.35);
    --content-bg: color-mix(in srgb, #0e1525 40%, transparent);
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html,
body {
    margin: 0;
    height: 100%;
    overflow: hidden;
}

body {
    font-family: "Ubuntu", -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 16px;
    line-height: 1.5;
    background: var(--background);
    color: var(--foreground);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input,
select,
textarea {
    font: inherit;
}

[hidden] {
    display: none !important;
}
