:root,[data-bs-theme="light"]{--app-bg:#f5f7fb;--app-surface:#fff;--app-surface-alt:#edf2f8;--app-text:#18263c;--app-muted:#52627b;--app-border:#dce4ef;--app-accent:#4458db;--app-success:#13754a;--app-danger:#b4233b;--bs-body-bg:var(--app-surface);--bs-body-color:var(--app-text);--bs-secondary-color:var(--app-muted);--bs-tertiary-bg:var(--app-surface-alt);--bs-border-color:var(--app-border)}
[data-bs-theme="dark"]{color-scheme:dark;--app-bg:#0d1422;--app-surface:#151f30;--app-surface-alt:#1d2b40;--app-text:#e5eaf3;--app-muted:#aab8cf;--app-border:#34445f;--app-accent:#a6afff;--app-success:#6fdfad;--app-danger:#ff9daf}
body{color:var(--app-text);background-color:var(--app-bg)}
dialog{color:var(--app-text);background:var(--app-surface)}
dialog::backdrop{background:rgb(8 15 30 / .6);backdrop-filter:blur(3px)}
.text-muted,.text-body-secondary{color:var(--app-muted)!important}
.divider-text{color:var(--app-muted)}
[data-bs-theme="light"] .btn-outline-info{--bs-btn-color:#08758a;--bs-btn-border-color:#08758a}
[data-bs-theme="dark"] body{background:var(--app-bg);color:var(--app-text)}
[data-bs-theme="dark"] :is(.bg-white,.bg-light,.glass-card,.calendar-card,.form-card,.section-card,.modal-content,.dropdown-menu,.ui-datepicker,.daterangepicker){background-color:var(--app-surface)!important;color:var(--app-text)}
[data-bs-theme="dark"] :is(.text-dark,.text-black){color:var(--app-text)!important}
[data-bs-theme="dark"] :is(.bg-warning,.text-bg-warning,.bg-info,.text-bg-info) :is(.text-dark,.text-black),[data-bs-theme="dark"] :is(.bg-warning,.text-bg-warning,.bg-info,.text-bg-info):is(.text-dark,.text-black){color:#111827!important}
[data-bs-theme="dark"] :is(.bg-dark,.bg-primary,.bg-danger,.bg-success) .text-white{color:#fff!important}
[data-bs-theme="dark"] :is(.account-heading,.section-title,.profile-meta,.profile-header,.form-card legend,.form-card label){color:var(--app-text)}
[data-bs-theme="dark"] :is(.card,.form-card,.calendar-card,.glass-card){border-color:var(--app-border);box-shadow:0 12px 32px rgb(0 0 0 / .15)}
[data-bs-theme="dark"] :is(input,textarea,select,.form-control,.form-select){color:var(--app-text);background-color:var(--app-surface);border-color:var(--app-border)}
[data-bs-theme="dark"] :is(input,textarea)::placeholder{color:var(--app-muted);opacity:1}
[data-bs-theme="dark"] :is(.table,.table-light){--bs-table-color:var(--app-text);--bs-table-bg:var(--app-surface);--bs-table-border-color:var(--app-border);--bs-table-striped-bg:var(--app-surface-alt);--bs-table-striped-color:var(--app-text);--bs-table-hover-color:var(--app-text);--bs-table-hover-bg:var(--app-surface-alt)}
[data-bs-theme="dark"] :is(.daterangepicker .calendar-table,.daterangepicker .calendar-time,.datepicker-dropdown){background:var(--app-surface);color:var(--app-text)}
[data-bs-theme="dark"] .daterangepicker td.off{background:var(--app-surface-alt);color:var(--app-muted)}
[data-bs-theme="dark"] :is(.alert-info,.alert-warning,.alert-danger,.alert-success) a{color:inherit;text-decoration:underline}
[data-bs-theme="dark"] :is(.fc,.fc-theme-standard){--fc-page-bg-color:var(--app-surface);--fc-neutral-bg-color:var(--app-surface-alt);--fc-neutral-text-color:var(--app-muted);--fc-border-color:var(--app-border);--fc-list-event-hover-bg-color:var(--app-surface-alt)}
[data-bs-theme="dark"] :is(.login-card,.error-container,.dog-mascot-pill,.btn-action-secondary){background:var(--app-surface);color:var(--app-text);border-color:var(--app-border)}
[data-bs-theme="dark"] .brand-header{background:var(--app-surface-alt);color:var(--app-text);border-color:var(--app-border)}
[data-bs-theme="dark"] .brand-header :is(h1,h2,h3){color:var(--app-text)!important}
[data-bs-theme="dark"] :is(.divider-text,.error-container .description){color:var(--app-muted)}
[data-bs-theme="dark"] .fc :is(.fc-col-header-cell,.fc-list-day-cushion){background:var(--app-surface-alt);color:var(--app-text)}
[data-bs-theme="dark"] .fc .fc-daygrid-week-number{background:var(--app-surface-alt);color:var(--app-muted)}
.nav[aria-label="Profilflikar"]{flex-wrap:wrap}.nav[aria-label="Profilflikar"] .nav-link{min-height:44px}
@media(min-width:1400px) and (max-width:1700px){.workshop-header .navbar>.container-fluid{flex-wrap:wrap}.workshop-header .navbar .navbar-collapse{flex-basis:100%;margin-top:.5rem}}
:focus-visible{outline:3px solid var(--app-accent);outline-offset:3px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
