/* Shared controls; loaded in the first important layer to retire raised legacy controls. */
@layer qualitySurface {
 html body.baudoku-ui :is(.topbar,.office,.report-form,.direct-page) :is(button,a.button) {
  box-shadow:none!important;transform:none!important;min-height:44px!important;
  border-radius:10px!important;line-height:1.35!important;
 }
 html body.baudoku-ui :is(.office,.report-form,.direct-page) .button-primary {
  background:#1459bf!important;color:#fff!important;border-color:#1459bf!important;
 }
 html body.baudoku-ui .topbar nav a[aria-current="page"] {
  background:#17283c!important;color:white!important;border-color:#17283c!important;
 }
 html body.baudoku-ui .topbar nav a {
  box-shadow:none!important;transform:none!important;
 }
 html body.baudoku-ui :focus-visible {outline:3px solid #1459bf!important;outline-offset:3px!important;}
 @media(min-width:1200px) {
  html body.baudoku-ui:has(#main-navigation) {padding-left:240px!important;}
  html body.baudoku-ui .topbar {min-height:76px!important; padding:16px 24px!important;display:flex!important;flex-wrap:wrap!important;}
  html body.baudoku-ui .topbar .brand {position:fixed!important;left:16px!important;top:14px!important;width:208px!important;z-index:30!important;}
  html body.baudoku-ui .topbar .brand img {width:36px!important;height:48px!important;}
  html body.baudoku-ui .topbar .brand b {font-size:16px!important;}
  html body.baudoku-ui .topbar .brand small {font-size:12px!important;}
  html body.baudoku-ui .topbar .mobile-menu-button {display:none!important;}
  html body.baudoku-ui .topbar #main-navigation,
  html body.baudoku-ui .topbar #main-navigation.is-open {
   position:fixed!important;display:block!important;left:0!important;top:80px!important;bottom:0!important;
   width:240px!important;max-height:none!important;overflow-y:auto!important;background:#fff!important;
   padding:12px!important;border-right:1px solid #d7e1eb!important;z-index:25!important;
  }
  html body.baudoku-ui .topbar #main-navigation .nav-group {background:transparent!important;border:0!important;padding:8px 0!important;}
  html body.baudoku-ui .topbar #main-navigation .nav-links {display:grid!important;grid-template-columns:1fr!important;gap:4px!important;}
  html body.baudoku-ui .topbar #main-navigation .nav-links a {text-align:left!important;justify-content:flex-start!important;font-size:14px!important;padding:10px 12px!important;}
  html body.baudoku-ui .topbar .nav-location {width:100%!important;margin:0!important;}
 }
}
body.baudoku-ui {--ui-ink:#17283c;--ui-blue:#1459bf;--ui-border:#d7e1eb;}
.quality-menu-panel {display:contents;}
.quality-menu-close {display:none;}
@layer qualitySurface {
 @media(max-width:1199px) {
  body.quality-menu-open {overflow:hidden!important;}
  body.quality-menu-open::before {content:"";position:fixed;inset:0;background:#17283c88;z-index:60;}
  body.quality-menu-open .quality-menu-panel {display:block!important;position:fixed;inset:16px;z-index:61;background:#fff;border-radius:14px;padding:16px;overflow-y:auto;overscroll-behavior:contain;}
  body.quality-menu-open .quality-menu-close {display:block!important;margin:0 0 12px auto;}
  html body.quality-menu-open .topbar #main-navigation.is-open {display:grid!important;max-height:none!important;overflow:visible!important;width:100%!important;}
 }
}
body.baudoku-ui :is(.page,.page-head,.form-grid,.section-heading,.card) {min-width:0;}
body.baudoku-ui h1 {overflow-wrap:anywhere;line-height:1.15;}
body.baudoku-ui :is(input,select,textarea) {max-width:100%;box-sizing:border-box;}
.form-error-summary {border:2px solid #b42318;border-radius:10px;background:#fff4f2;padding:18px;margin:16px 0;color:#7a271a;}
.form-error-summary h2 {font-size:20px;margin:0 0 8px;}
.form-error-summary a {color:inherit;font-weight:650;text-decoration:underline;}
.project-search {display:block;margin-bottom:8px;width:100%;min-height:44px;}
.direct-filters,.pagination {display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:20px 0;}
.direct-filters a,.pagination a {padding:10px 16px;min-height:44px;box-sizing:border-box;border:1px solid #d7e1eb;border-radius:10px;text-decoration:none;color:#17283c;background:#fff;}
.direct-filters a[aria-current] {background:#17283c;color:#fff;}
.direct-dot.status-new {background:#1459bf;}
.direct-dot.status-taken {background:#b77906;}
.direct-dot.status-done {background:#21876b;}
.guide-zoom img {max-width:100%;height:auto;}
@media(max-width:600px) {
 body.baudoku-ui h1 {font-size:clamp(26px,7vw,32px)!important;}
 body.baudoku-ui .page {padding:18px 14px 32px!important;}
 body.baudoku-ui .report-form .form-card {padding:18px 14px!important;}
 body.baudoku-ui .page-head {margin-bottom:18px!important;}
 body.baudoku-ui .report-assistant {padding:16px!important;}
 body.baudoku-ui .report-assistant p {font-size:15px;line-height:1.45;}
 body.baudoku-ui .report-form .section-heading {gap:10px;}
}
@media(prefers-reduced-motion:reduce) {body.baudoku-ui *,body.baudoku-ui *::before,body.baudoku-ui *::after {scroll-behavior:auto!important;transition:none!important;animation:none!important;}}

.direct-dot.status-answered {background:#6850a1;}
.office .office-person {padding:22px;}
.office .office-person h2 {font-size:20px;margin-bottom:14px;}
.office .office-person .office-actions {gap:8px;margin-top:16px;}
.ai-launch {margin:16px 0;padding:18px;}
@media(max-width:600px) {
 .ai-launch {display:block!important;padding:16px!important;}
 .ai-launch .ai-launch-icon {display:none!important;}
 .ai-launch h2 {font-size:21px!important;}
 .ai-launch p {font-size:15px!important;line-height:1.5!important;margin:8px 0!important;}
 .ai-launch .ai-open {width:100%;margin-top:8px;}
 .home-workspace {display:flex!important;flex-direction:column!important;gap:20px!important;}
 .home-shortcuts {order:-1;}
 .home-action-grid {grid-template-columns:1fr!important;}
}

.mobile-shortcuts {display:none;}
@media(min-width:1000px) {
 .report-form .form-grid {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
 .office .people-list {display:grid;grid-template-columns:1fr;gap:10px;}
 .office .people-list .office-person {display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,1.2fr) 130px minmax(220px,1.4fr);gap:16px;align-items:center;padding:16px 20px;}
 .office .people-list .office-person :is(h2,p,.office-actions) {margin:0;}
 .office .people-list .office-person .office-actions {justify-content:flex-end;}
}
@media(max-width:600px) {
 .mobile-shortcuts {display:flex;gap:8px;padding:10px 14px;flex-wrap:wrap;background:#fff;border-bottom:1px solid #d7e1eb;}
 .mobile-shortcuts a {display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;box-sizing:border-box;text-decoration:none;color:#17283c;border:1px solid #d7e1eb;border-radius:10px;flex:1;}
 .mobile-shortcuts a[aria-current] {background:#17283c;color:#fff;}
 .office .office-person {padding:18px;}
 .office .office-person .office-actions a {width:auto;}
}
