/* PDV PLUS · Onda 8 · harmonização leve das superfícies públicas.
 * Não altera a estrutura das vitrines Bootstrap 3/5; fornece somente tokens,
 * foco, alvos de toque, redução de movimento e o link de salto compartilhado.
 */
:root {
    --pdv-public-accent: var(--main, #5b5ce2);
    --pdv-public-focus: #3b5bdb;
    --pdv-public-text: #172033;
    --pdv-public-muted: #5f6b7a;
    --pdv-public-surface: #ffffff;
    --pdv-public-radius: 12px;
    --pdv-public-shadow: 0 12px 32px rgba(23, 32, 51, .10);
}

.pdv-public-surface {
    color: var(--pdv-public-text);
    font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.pdv-public-surface img {
    max-width: 100%;
}

.pdv-public-surface a,
.pdv-public-surface button,
.pdv-public-surface input,
.pdv-public-surface select,
.pdv-public-surface textarea {
    touch-action: manipulation;
}

.pdv-public-surface button,
.pdv-public-surface [role="button"],
.pdv-public-surface input[type="submit"],
.pdv-public-surface input[type="button"] {
    min-height: 40px;
}

.pdv-public-surface :focus-visible {
    outline: 3px solid var(--pdv-public-focus) !important;
    outline-offset: 3px !important;
    box-shadow: none !important;
}

.pdv-public-skip-link {
    position: fixed;
    z-index: 100000;
    top: 10px;
    left: 10px;
    padding: 10px 14px;
    border-radius: 8px;
    color: #fff !important;
    background: #172033;
    box-shadow: var(--pdv-public-shadow);
    font-weight: 700;
    text-decoration: none;
    transform: translateY(-160%);
    transition: transform .16s ease;
}

.pdv-public-skip-link:focus {
    transform: translateY(0);
}

#conteudo-principal:focus {
    outline: none;
}

.pdv-public-surface .text-muted,
.pdv-public-surface .help-block {
    color: var(--pdv-public-muted) !important;
}

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

@media (forced-colors: active) {
    .pdv-public-surface :focus-visible {
        outline: 3px solid CanvasText !important;
    }
}
