/* MENUON — Sistema Visual Unificado dos Terminais */
:root {
    --menuon-bg-main: #121212;
    --menuon-bg-surface: #1A1F26;
    --menuon-bg-elevated: #222933;
    --menuon-border: rgba(255, 255, 255, 0.09);
    --menuon-border-strong: rgba(255, 255, 255, 0.16);
    --menuon-text: #F8FAFC;
    --menuon-text-muted: #A0AAB5;
    --menuon-accent: #FF6600;
    --menuon-accent-hover: #FF7B24;
    --menuon-accent-soft: rgba(255, 102, 0, 0.14);
    --menuon-success: #10B981;
    --menuon-warning: #F59E0B;
    --menuon-danger: #EF4444;
    --menuon-font-display: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --menuon-font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --menuon-font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, .menuon-wordmark {
    font-family: var(--menuon-font-display);
}

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

:focus-visible {
    outline: 2px solid var(--menuon-accent);
    outline-offset: 2px;
}

/* Alinhamento tabular para preços, totais, cronômetros e tabelas */
table,
td,
th,
input[type="number"],
.valor,
.num,
.total-txt,
.input-preco-linha,
.relogio-espera,
.numero-posicao-grande,
[id^="relogioEspera_"] {
    font-variant-numeric: tabular-nums;
}

.relogio-espera,
.badge-pin .num,
.input-pin,
.input-pin-garcom {
    font-family: var(--menuon-font-mono);
}

button {
    transition: background-color 150ms cubic-bezier(0.16, 1, 0.3, 1),
                border-color 150ms cubic-bezier(0.16, 1, 0.3, 1),
                color 150ms cubic-bezier(0.16, 1, 0.3, 1),
                opacity 150ms cubic-bezier(0.16, 1, 0.3, 1),
                transform 120ms cubic-bezier(0.16, 1, 0.3, 1);
}

button:active:not(:disabled) {
    transform: translateY(1px);
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}
