/* audit fixes (v13): owned by helper C. Loads last. Non-scene issues only. */

/* A1 nav glass: content showed through the pill; raise opacity, keep blur */
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .nav-in{background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.02)),rgba(10,14,12,.68)}
  [data-nav].is-scrolled .nav-in{background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.02)),rgba(10,14,12,.8)}
}

/* A2 contrast (WCAG AA 4.5:1 on #070a08 / #151a17) */
.ch .fine{color:#8c938f}
.log .d{color:rgba(255,255,255,.58)}
.fine,.fcols h4{color:#8c938f}
.fcols h4{color:rgba(255,255,255,.62)}
form label small,form label span,label .opt,.opt,[class*=optional]{color:#8c938f}
::placeholder{color:#8c938f;opacity:1}

/* A3 touch targets: 44px minimum on touch / tablet widths; tablets can still be mouse */
@media (max-width:1024px),(pointer:coarse){
  .logo{position:relative}
  .logo::after,.burger::after{content:"";position:absolute;inset:-8px}
  .tabb,.itab{min-height:44px;height:44px}
  .tabs,.itabs{gap:12px}
  .cpb{min-height:44px;height:44px}
  .badge{min-height:44px;height:44px;padding:0 14px}
  .pill-dark,.pill-light{min-height:44px}
  .pill-caret{width:44px;height:44px}
  .fl summary{min-height:44px;padding:10px 0;align-items:center}
  .links a{padding:12px}
  .fcols a{display:inline-flex;align-items:center;min-height:44px;line-height:21px}
  .fcols div{gap:0}
}

/* A4 footer links: 4px gaps and tiny rows */
@media (max-width:860px){
  .fcols{gap:8px 32px}
  .fcols div{width:calc(50% - 16px);min-width:120px}
  .fcols a{font-size:15px}
}

/* A5 phone text sizes: body copy at least 16px */
@media (max-width:640px){
  .tpun,.then,.trust span,.leaf span,.leaf p,.fine,.fcols h4{font-size:16px;line-height:1.5}
  .copy,.foot small,.foot .cp{font-size:14px}
  .trust li span,.guides p,.faq p{font-size:16px}
}

/* A6 line length: cap running prose at ~72ch */
.then,.tpun,.dl p,.faq p,.fl p,.guides p{max-width:72ch}
.dl p,.guides p{margin-left:auto;margin-right:auto}

/* A7 horizontal overflow guard (scrollbar-induced 15px at desktop) */
html{overflow-x:clip}
body{overflow-x:clip}

/* A8 focus visibility */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #6fe0ae;outline-offset:3px;border-radius:8px}

/* A9 tap highlight and safe-area padding */
a,button,summary{-webkit-tap-highlight-color:rgba(111,224,174,.15)}
.foot{padding-bottom:max(80px,env(safe-area-inset-bottom))}

/* A10 comfortable scroll anchoring under floating nav */
section[id],[id].ch{scroll-margin-top:88px}

/* A11 specificity fixes for the optional label and fake composer placeholder */
.field label span{color:#8c938f;font-size:13px}
.field label{font-size:15px}
@media (max-width:640px){.field label{font-size:16px}.field label span{font-size:14px}}
.logo{position:relative}
.logo::after{content:"";position:absolute;inset:-8px}
.comp .ph{color:#8c938f}
/* desktop (mouse): 24px+ targets with breathing room; footer links padded not crammed */
@media (min-width:1025px){
  .fcols a{display:inline-block;padding:5px 0}
  .fcols div{gap:0}
  .badge{height:40px}
  .tabb,.itab{height:40px}
  .fl summary{padding:12px 0}
}

/* parent: scene items from audit-v13 */
.story .ch .ch-t p{max-width:min(420px,46ch)}
.pcomp .ph{color:rgba(255,255,255,.62)}
/* parent: tap ripple sits behind the Approve label */
.tp-ok{isolation:isolate}
.tp-ok .tp-rip{z-index:-1}

/* v16 FAQ */
.faq .fqh{align-self:start;position:sticky;top:104px}
.faq .fqs{margin-top:16px;color:var(--mut);font-size:17px;line-height:26px;max-width:360px}
.faq .fqs a{color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.3)}
.faq .fqs a:hover{text-decoration-color:#fff}
.fl summary{font-size:17px;line-height:26px;padding-right:4px}
.fl details p{margin-top:10px;color:var(--mut);max-width:56ch;font-size:16px;line-height:25px}
.fl details p code{font:400 14px/1 "xGeist Mono","Geist Mono",monospace;color:var(--soft);background:rgba(255,255,255,.06);padding:2px 6px;border-radius:6px}
@media(max-width:860px){.faq .fqh{position:static}.faq{gap:28px}}

/* footer lockup: same proportions as the heading (logo = .72em cap height, .08em gap) */
.fbrand .fb{gap:0;font-size:36px;line-height:1;align-items:baseline}
.fbrand .fb .fbm{width:.792em;height:.72em;margin-right:.18em;flex:none}
.fbrand .fb b{font-size:1em;font-weight:500;letter-spacing:-.3px}
@media(max-width:860px){.fbrand .fb{font-size:32px}}
