/* Shared layout contract for existing and new views. */
:root { --qu-content-width: 760px; }
.qu-navigation > .container-fluid { gap: .5rem 1.5rem; }
.qu-navigation .navbar-brand { display: flex; align-items: center; min-width: 0; white-space: normal; }
.qu-navigation .navbar-brand img { flex: 0 0 auto; }
.qu-account-navigation { align-items: center; gap: .25rem .75rem; }
.qu-account-navigation > .nav-item { display: flex; align-items: center; position: relative; }
.qu-account-navigation > .nav-item > .nav-link { display: flex; align-items: center; min-height: 44px; }
.qu-account-navigation [aria-current="page"] { font-weight: 600; }
.qu-account-navigation .dropdown-menu { position: absolute; }
.qu-skip-link { position: fixed; top: .5rem; left: .5rem; z-index: 10000; padding: .75rem 1rem; background: #fff; color: #075cba; transform: translateY(-200%); }
.qu-skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 2px solid #0d6efd; outline-offset: 3px; }
#main-content:focus { outline: none; }
.qu-page { margin: 1.5rem auto 2.5rem; }
.qu-page--form { width: 100%; }
/* Match the existing col-md-8 form column, including its Bootstrap gutters. */
@media (min-width: 768px) { .qu-page--form { width: calc(66.666667% - .5rem); } }
.qu-page-heading { margin-bottom: 2rem; }
.qu-page-heading h1 { padding-bottom: 0; margin-bottom: .75rem; }
.qu-page-heading p { margin-bottom: 0; max-width: 48rem; }
.qu-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; margin-top: 2rem; }
.qu-page .form-label, .qu-page legend { font-size: 1rem; }
.qu-page legend { float: none; width: auto; }
.form-control:not(.form-control-sm), .form-select:not(.form-select-sm) { min-height: 44px; }
.btn:not(.btn-sm) { min-height: 44px; }
.qu-page .btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.qu-page .validation-summary-errors { margin-bottom: 1.5rem; }
.qu-select-wrap { position: relative; display: block; }
.qu-select-wrap select.form-select { appearance: none; background-image: none; }
.qu-select-chevron, .qu-select-wrap::after { position: absolute; width: .5rem; height: .5rem; right: 1rem; top: calc(50% - .35rem); border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); pointer-events: none; }
.qu-select-wrap::after { content: ""; }
.qu-select-wrap:has(> .qu-select-chevron)::after { display: none; }
html[data-darkreader-scheme="dark"] .qu-select-chevron, html[data-darkreader-scheme="dark"] .qu-select-wrap::after { color: #c9c9c9; }
@media (max-width: 575.98px) {
 .qu-navigation > .container-fluid { align-items: flex-start; }
 .qu-navigation .navbar-brand { font-size: 1rem; margin-right: 0; }
 .qu-account-navigation { flex-direction: row; flex-wrap: nowrap; justify-content: space-between; width: 100%; gap: .25rem .75rem; font-size: .875rem; }
 .qu-page { margin-top: 1rem; }
 .qu-page-heading { margin-bottom: 1.5rem; }
 .qu-page h1 { font-size: 1.65rem; overflow-wrap: anywhere; }
 .qu-actions > .btn { flex: 1 1 auto; }
}
.qu-page-heading h1 { overflow-wrap: anywhere; }

.qu-user-name { max-width: 25vw; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 575.98px) { .qu-user-name { max-width: 7rem; } }
.input-group > .qu-select-wrap { flex: 1 1 auto; width: 1%; min-width: 0; }
