/* Only functional layout and integration styles; Bootstrap owns component appearance. */
.form-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:1.5rem;align-items:start}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1rem 0}
.metrics strong{display:block}
.auth-panel{max-width:500px;margin:3rem auto}
.logo-preview{display:flex;align-items:center;justify-content:center;min-height:160px;margin:1rem 0}
.logo-preview img{max-width:100%;max-height:140px}
.qr-code{background:white;padding:12px;width:fit-content;max-width:100%}
.qr-code svg{max-width:240px;width:100%;height:auto}
.validation-summary-valid{display:none}
.field-validation-error{display:block;color:var(--bs-danger-text-emphasis)}
.mail-body{white-space:pre-wrap;font:inherit}
.filters .form-control{max-width:410px}
.filters .select2-container{max-width:100%}
/* Select2 is not a Bootstrap component: match Bootstrap's default input metrics and theme. */
.select2-container--default .select2-selection--single{height:calc(2.25rem + 2px);border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius);background:var(--bs-body-bg)}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:2.25rem;padding-left:.75rem;color:var(--bs-body-color)}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:2.25rem}
.select2-dropdown,.select2-search__field{background:var(--bs-body-bg);color:var(--bs-body-color);border-color:var(--bs-border-color)}
.select2-container--default .select2-results__option--selected{background:var(--bs-secondary-bg)}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:var(--bs-primary);color:white}
.select2-selection--single:focus-visible,.select2-container--open .select2-selection--single{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}
@media(max-width:767.98px){.form-layout,.metrics{grid-template-columns:1fr}}
.htmx-indicator{display:none}.htmx-request .htmx-indicator{display:inline-block}.form-progress-spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin 1s linear infinite;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}
/* Explicit user-approved exception: restore the earlier navigation layout. */
.topbar{background:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color);padding:24px 4%;display:flex;align-items:center;justify-content:space-between;gap:26px}
.brand{font-size:24px;font-weight:750;color:var(--bs-body-color);display:flex;align-items:center;gap:8px;letter-spacing:-1px;text-decoration:none}
.brand:hover{color:var(--bs-body-color)}
.brand-icon{display:inline-flex;background:var(--bs-primary);color:white;width:40px;height:40px;border-radius:13px;align-items:center;justify-content:center;font-size:30px}
.brand-muted{font-size:13px;letter-spacing:0;font-weight:400;color:var(--bs-secondary-color)}
.topbar-nav{display:flex;gap:23px;align-items:center;flex-wrap:wrap}
.topbar-nav form{margin:0}
.topbar-link,.topbar-logout{font-size:14px;font-weight:400;color:var(--bs-secondary-color);text-decoration:none}
.topbar-link:hover,.topbar-logout:hover{color:var(--bs-body-color);text-decoration:underline}
.topbar-logout{border:0;background:none;padding:0}
@media(max-width:800px){.topbar{align-items:flex-start;flex-direction:column;padding:18px}.topbar-nav{gap:15px}}
