/* Fase 3P: terminación visual común y accesible. */
:root {
    --eforms-black: #111111;
    --eforms-yellow: #fdc500;
    --eforms-surface: #ffffff;
    --eforms-bg: #f4f6f8;
    --eforms-border: #dde2e7;
    --eforms-radius: 12px;
    --eforms-shadow: 0 8px 24px rgba(17, 17, 17, .08);
}

body { background-color: var(--eforms-bg); }

.container, .container-fluid { scroll-margin-top: 76px; }

.card {
    border: 1px solid var(--eforms-border);
    border-radius: var(--eforms-radius);
    box-shadow: 0 3px 14px rgba(17, 17, 17, .05);
}

.card-header {
    border-bottom-color: var(--eforms-border);
    font-weight: 600;
}

.btn { border-radius: 8px; font-weight: 600; min-height: 40px; }
.btn-warning, .btn-primary {
    background: var(--eforms-yellow);
    border-color: var(--eforms-yellow);
    color: var(--eforms-black);
}
.btn-warning:hover, .btn-primary:hover {
    background: #e7b500;
    border-color: #e7b500;
    color: var(--eforms-black);
}

.form-control, .form-select {
    border-color: #cfd5db;
    border-radius: 8px;
    min-height: 42px;
}
.form-control:focus, .form-select:focus, .btn:focus-visible, a:focus-visible {
    border-color: var(--eforms-yellow);
    box-shadow: 0 0 0 .22rem rgba(253, 197, 0, .28);
    outline: 0;
}

.table { --bs-table-striped-bg: rgba(17, 17, 17, .025); }
.table thead th {
    background: #202226;
    color: #fff;
    border-bottom: 3px solid var(--eforms-yellow);
    white-space: nowrap;
}

.alert { border-radius: 10px; border-left-width: 4px; }
.badge { letter-spacing: .01em; }

@media (max-width: 767.98px) {
    .card { border-radius: 10px; }
    .card-body { padding: 1rem; }
    .table-responsive { border-radius: 9px; }
    .btn { width: auto; min-height: 44px; }
    .modal-dialog { margin: .75rem; }
}

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