/* V51 — site QA + usability polish */

/* Prevent long desktop navigation from colliding on common 13–15 inch laptop widths. */
@media (min-width:1181px) and (max-width:1360px){
  .nav{min-height:72px!important;height:auto!important;flex-wrap:wrap!important;gap:10px!important;padding:10px 18px!important}
  .nav .brand{margin-right:auto!important}
  .nav #menuBtn{display:block!important;order:2!important;width:42px!important;height:42px!important;flex:0 0 42px!important;border:1px solid rgba(168,85,247,.34)!important;border-radius:12px!important;background:rgba(17,12,28,.72)!important}
  .nav .rr-nav-extra{order:3!important;margin-left:0!important;flex:0 0 auto!important}
  .nav .rr-search-launch{order:4!important;flex:0 0 auto!important;max-width:132px!important}
  .nav nav,.nav #menu{display:none!important;order:5!important;width:100%!important;margin:0!important;padding:12px 0 4px!important;border-top:1px solid rgba(255,255,255,.08)!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important;max-height:70vh!important;overflow:auto!important}
  .nav nav.open,.nav #menu.open{display:flex!important}
  .nav nav a,.nav #menu a{display:block!important;width:100%!important;padding:10px 12px!important;border-radius:10px!important;font-size:14px!important;white-space:normal!important}
}

/* Anchor targets should never disappear under the sticky header. */
section[id], article[id], .gbk-section[id]{scroll-margin-top:108px}

/* Form/readability polish. */
input,select,textarea,button{font:inherit}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb,#a855f7 42%,transparent);outline-offset:2px}
html[data-theme="light"] body{color:#17131c}
html[data-theme="light"] .lead,html[data-theme="light"] .rr-section-copy,html[data-theme="light"] .directory-note,html[data-theme="light"] .note{color:#5d5564!important}

/* GBK directory — desktop clarity. */
.directory .table-wrap{overflow:auto;overscroll-behavior-inline:contain}
.directory table{table-layout:auto}
.directory th{position:sticky;top:0;z-index:2;letter-spacing:.04em}
.directory td:first-child b{font-size:13px}
.directory .dir-strengths:empty,.directory .code:empty{display:none}
.directory-actions .dossier-btn{font-weight:800}
.directory-empty td{text-align:center!important;padding:26px!important;color:#999!important}

/* GBK directory — true mobile record cards instead of a squeezed table. */
@media (max-width:760px){
  .directory .filters{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .directory .filters input,.directory .filters select{width:100%!important;min-height:52px!important;box-sizing:border-box!important}
  .directory .filters label{min-height:48px;display:flex;align-items:center;gap:10px;padding:0 4px}
  .directory .table-wrap{overflow:visible!important;border:0!important;border-radius:0!important}
  .directory table,.directory tbody,.directory tr,.directory td{display:block!important;width:100%!important;min-width:0!important;box-sizing:border-box!important}
  .directory table{min-width:0!important;border-collapse:separate!important}
  .directory thead{display:none!important}
  .directory tr{margin:0 0 16px!important;border:1px solid #4a2a57!important;border-radius:16px!important;background:#0d0b12!important;overflow:hidden!important}
  .directory td{position:relative!important;padding:12px 14px 12px 46%!important;border-top:1px solid #28202c!important;min-height:48px!important;font-size:13px!important}
  .directory td:first-child{border-top:0!important;padding:16px 14px!important}
  .directory td:not(:first-child)::before{content:attr(data-label);position:absolute;left:14px;top:12px;width:38%;font-size:10px;line-height:1.25;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:#ad8fbb}
  .directory td:first-child b{font-size:18px!important;color:#fff}
  .directory td:first-child small{font-size:11px!important;margin-top:5px!important}
  .directory .cas-copy{margin:2px 4px 2px 0!important;padding:7px 8px!important}
  .directory-actions{min-width:0!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .directory-actions .dossier-btn{min-height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;white-space:normal!important;font-size:12px!important}
  .directory-empty{border:1px dashed #4a2a57!important}
  .directory-empty td{padding:24px!important}
  .directory-empty td::before{display:none!important}
  html[data-theme="light"] .directory tr{background:#fff!important;border-color:#d9c8e5!important;box-shadow:0 10px 24px rgba(50,30,70,.06)}
  html[data-theme="light"] .directory td{border-color:#eadff0!important;color:#221a27!important}
  html[data-theme="light"] .directory td:first-child b{color:#1b1420!important}
  html[data-theme="light"] .directory td:not(:first-child)::before{color:#755f80!important}
}

/* Compact header controls on phones. */
@media (max-width:520px){
  .rr-search-label{display:none!important}
  .nav .rr-search-launch{width:46px!important;max-width:46px!important;padding:0!important;justify-content:center!important}
  .nav .rr-theme{width:46px!important;height:46px!important}
  .nav .rr-account{padding:11px 14px!important}
}
