/**
 * HyperGestor Design System
 * Tokens OKLCH (conteúdo) + sidebar escura do menu existente.
 */

:root {
    --hg-radius: 0.75rem;
    --hg-radius-md: calc(var(--hg-radius) - 2px);
    --hg-radius-sm: calc(var(--hg-radius) - 4px);

    --hg-background: oklch(0.985 0.003 240);
    --hg-foreground: oklch(0.18 0.02 260);
    --hg-card: oklch(1 0 0);
    --hg-card-foreground: oklch(0.18 0.02 260);
    --hg-popover: oklch(1 0 0);
    --hg-popover-foreground: oklch(0.18 0.02 260);

    /* Brand: laranja Hyper */
    --hg-primary: oklch(0.72 0.18 50);
    --hg-primary-foreground: oklch(1 0 0);
    --hg-primary-hover: color-mix(in oklch, oklch(0.72 0.18 50) 90%, black);
    --hg-secondary: oklch(0.965 0.005 250);
    --hg-secondary-foreground: oklch(0.22 0.03 260);
    --hg-muted: oklch(0.96 0.005 250);
    --hg-muted-foreground: oklch(0.55 0.02 260);
    --hg-accent: oklch(0.96 0.04 60);
    --hg-accent-foreground: oklch(0.45 0.13 50);
    --hg-destructive: oklch(0.62 0.22 27);
    --hg-destructive-foreground: oklch(1 0 0);
    --hg-border: oklch(0.92 0.008 250);
    --hg-input: oklch(0.92 0.008 250);
    --hg-ring: oklch(0.72 0.18 50);
    --hg-brand: oklch(0.72 0.18 50);
    --hg-brand-foreground: oklch(1 0 0);

    /* Sidebar escura (menu HyperGestor — não alterar com o protótipo) */
    --hg-sidebar: hsl(20 6% 10%);
    --hg-sidebar-foreground: hsl(0 0% 98%);
    --hg-sidebar-primary: oklch(0.72 0.18 50);
    --hg-sidebar-primary-foreground: oklch(1 0 0);
    --hg-sidebar-accent: hsl(20 6% 16%);
    --hg-sidebar-accent-foreground: hsl(0 0% 98%);
    --hg-sidebar-accent-strong: color-mix(in oklch, oklch(0.72 0.18 50) 18%, transparent);
    --hg-sidebar-border: hsl(0 0% 100% / 0.1);
    --hg-sidebar-ring: oklch(0.72 0.18 50);
    --hg-sidebar-muted: hsl(0 0% 100% / 0.55);

    --hg-chart-1: oklch(0.72 0.18 50);
    --hg-chart-2: oklch(0.65 0.14 180);
    --hg-chart-3: oklch(0.6 0.18 350);
    --hg-chart-4: oklch(0.8 0.15 85);
    --hg-chart-5: oklch(0.55 0.18 290);

    /* Status agenda — iguais ao prototipo-rafaela (OKLCH) */
    --hg-status-agendado: oklch(0.6 0.16 55);
    --hg-status-agendado-bg: oklch(0.97 0.04 65);
    --hg-status-agendado-border: oklch(0.82 0.12 60);
    --hg-status-confirmado: oklch(0.5 0.18 250);
    --hg-status-confirmado-bg: oklch(0.96 0.03 250);
    --hg-status-confirmado-border: oklch(0.78 0.14 250);
    --hg-status-compareceu: oklch(0.5 0.16 150);
    --hg-status-compareceu-bg: oklch(0.96 0.05 150);
    --hg-status-compareceu-border: oklch(0.78 0.16 150);
    /* Extensões LINX no mesmo idioma visual do protótipo */
    --hg-status-recebido: var(--hg-status-compareceu);
    --hg-status-recebido-bg: var(--hg-status-compareceu-bg);
    --hg-status-recebido-border: var(--hg-status-compareceu-border);
    --hg-status-os-aberta: oklch(0.45 0.2 265);
    --hg-status-os-aberta-bg: oklch(0.96 0.04 265);
    --hg-status-os-aberta-border: oklch(0.78 0.14 265);
    --hg-status-entrega: oklch(0.5 0.16 300);
    --hg-status-entrega-bg: oklch(0.96 0.04 300);
    --hg-status-entrega-border: oklch(0.78 0.12 300);
    --hg-status-nao-compareceu: oklch(0.55 0.22 27);
    --hg-status-nao-compareceu-bg: oklch(0.96 0.04 27);
    --hg-status-nao-compareceu-border: oklch(0.8 0.16 27);
    /* Temperatura da anotação — matizes copiados do protótipo, não da intuição
       térmica: lá Quente é vermelho, Morno é azul e Frio é laranja. Reaproveitam
       as famílias de status (nao-compareceu, confirmado, agendado) para o drawer
       manter um só vocabulário de cor. */
    --hg-temp-quente: oklch(0.55 0.22 27);
    --hg-temp-quente-bg: oklch(0.96 0.04 27);
    --hg-temp-quente-border: oklch(0.8 0.16 27);
    --hg-temp-morno: oklch(0.5 0.18 250);
    --hg-temp-morno-bg: oklch(0.96 0.03 250);
    --hg-temp-morno-border: oklch(0.78 0.14 250);
    --hg-temp-frio: oklch(0.6 0.16 55);
    --hg-temp-frio-bg: oklch(0.97 0.04 65);
    --hg-temp-frio-border: oklch(0.82 0.12 60);
    --hg-status-bloqueado: oklch(0.32 0.03 270);
    --hg-status-bloqueado-bg: oklch(0.93 0.01 270);
    --hg-status-bloqueado-border: oklch(0.7 0.03 270);
    --hg-status-indisponivel: oklch(0.6 0.01 260);
    --hg-status-indisponivel-bg: oklch(0.96 0.005 260);
    --hg-status-fora-expediente: var(--hg-status-indisponivel);
    --hg-status-fora-expediente-bg: var(--hg-status-indisponivel-bg);
    --hg-status-fora-expediente-border: oklch(0.78 0.01 260);
    --hg-drop-ok: oklch(0.65 0.18 150);
    --hg-drop-bad: oklch(0.6 0.22 27);

    --hg-font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --hg-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

    /* Compat: aliases HSL (componentes antigos) — aponta para os mesmos valores visuais */
    --hg-hsl-background: 220 20% 97%;
    --hg-hsl-foreground: 222 47% 11%;
    --hg-hsl-primary: 30 95% 55%;
    --hg-hsl-primary-foreground: 0 0% 100%;
    --hg-hsl-muted: 220 14% 96%;
    --hg-hsl-muted-foreground: 215 16% 47%;
    --hg-hsl-border: 220 13% 91%;
    --hg-hsl-sidebar: 20 6% 10%;
    --hg-hsl-sidebar-foreground: 0 0% 98%;
    --hg-hsl-brand: 30 100% 51%;
}

.hg-scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.hg-scrollbar-hide::-webkit-scrollbar {
    display: none;
}

.hg-scrollbar-thin {
    scrollbar-width: thin;
    scrollbar-color: color-mix(in oklab, var(--hg-muted-foreground) 30%, transparent) transparent;
}

.hg-scrollbar-thin::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.hg-scrollbar-thin::-webkit-scrollbar-thumb {
    background: color-mix(in oklab, var(--hg-muted-foreground) 25%, transparent);
    border-radius: 9999px;
}
