/* Bootstrap components use the three existing Kadr palettes. */
:root, [data-bs-theme] {
    --bs-body-font-family: "Segoe UI", Arial, sans-serif;
    --bs-body-color: var(--ink);
    --bs-body-bg: var(--bg);
    --bs-border-color: var(--line);
    --bs-secondary-color: var(--muted);
    --bs-tertiary-bg: var(--surface-high);
    --bs-secondary-bg: var(--surface);
    --bs-emphasis-color: var(--ink);
    --bs-link-color: var(--ink);
    --bs-link-hover-color: var(--accent);
    --bs-primary: var(--accent);
    --bs-border-radius: var(--radius);
}
.container { max-width: none; padding-inline: 0; }
.film-grid.row { margin-bottom: 0; }
.film-grid > .col { min-width: 0; }
.film-card { height: 100%; }
.button.btn { --bs-btn-color: var(--ink); --bs-btn-hover-color: var(--ink); --bs-btn-hover-bg: var(--surface-high); --bs-btn-hover-border-color: var(--outline); --bs-btn-active-color: var(--ink); --bs-btn-active-bg: var(--surface-high); --bs-btn-active-border-color: var(--outline); }
.button-primary.btn { --bs-btn-color: var(--accent-dark); --bs-btn-hover-color: var(--accent-dark); --bs-btn-hover-bg: var(--accent); --bs-btn-hover-border-color: var(--accent); --bs-btn-active-color: var(--accent-dark); --bs-btn-active-bg: var(--accent); --bs-btn-active-border-color: var(--accent); }
.btn:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; box-shadow: none; }
.form-control:focus, .form-select:focus { box-shadow: none; border-color: var(--accent); }
.form-check-input { flex-shrink: 0; margin-top: 0; padding: 0; background-color: var(--input-bg); border-color: var(--outline); }
.form-check-input:checked { background-color: var(--accent); border-color: var(--accent); }
[data-theme="dark"] .form-check-input:checked[type="checkbox"] { --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%2326310b' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e"); }
.form-check-input:focus { border-color: var(--accent); box-shadow: none; }
.form-check-input:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
.table { --bs-table-color: var(--ink); --bs-table-bg: transparent; --bs-table-border-color: var(--line); margin-bottom: 0; }
.table > :not(caption) > * > * { padding: 18px 20px; box-shadow: none; }
.table > thead > tr > th { color: var(--muted); }
.theme-trigger { background: transparent; }
.theme-trigger.dropdown-toggle::after { display: none; }
.theme-trigger[aria-expanded="true"] { background: var(--surface-high); }
.theme-menu.dropdown-menu { --bs-dropdown-color: var(--ink); --bs-dropdown-bg: var(--surface); --bs-dropdown-border-color: var(--line); --bs-dropdown-link-color: var(--ink); --bs-dropdown-link-hover-color: var(--ink); --bs-dropdown-link-hover-bg: var(--surface-high); }
.theme-option.dropdown-item:focus, .theme-option.dropdown-item:active { color: var(--ink); background: var(--surface-high); }
@media(max-width:600px) { .table > :not(caption) > * > * { padding: 15px 14px; } }
