/* PETE'S CAR CLUB DRIVER ASSESSMENT · v4.10.4
   One minute, one black pursuit coupe, one standardised road and no stated objective. */
.driver-test-board{background:#ded7c7;color:#161616;border:5px solid #111;box-shadow:8px 8px 0 rgba(0,0,0,.35);padding:16px}
.driver-test-heading{display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:4px solid #111;padding-bottom:12px;margin-bottom:12px}
.driver-test-kicker{font:900 .72rem Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}
.driver-test-heading h2{margin:2px 0 0;font:italic 900 clamp(2rem,5vw,3.4rem)/.9 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;text-transform:uppercase}
.driver-test-stamp{flex:0 0 auto;border:4px solid #b51f25;color:#b51f25;padding:7px 12px;font:900 .78rem/1 Arial,sans-serif;letter-spacing:.08em;text-align:center;transform:rotate(3deg)}
.driver-test-rules{display:flex;gap:8px 16px;flex-wrap:wrap;margin:0 0 12px;padding:9px 11px;background:#111;color:#fff;font-size:.78rem}
.driver-test-rules strong{color:#ffd534;letter-spacing:.08em}.driver-test-rules span{opacity:.94}
.driver-game-shell{position:relative;overflow:hidden;background:#222;border:4px solid #111;aspect-ratio:16/9;min-height:320px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}
#driver-test-canvas{display:block;width:100%;height:100%;touch-action:none;background:#8fb2c4;cursor:default!important}
body.driver-game-steering .pcc-car-cursor{opacity:0!important}
body.driver-game-steering .pcc-tyre-track-layer{opacity:0!important}
.driver-hud{position:absolute;left:12px;right:12px;top:12px;display:flex;gap:8px;pointer-events:none;z-index:3}
.driver-hud>div{min-width:108px;background:rgba(0,0,0,.78);color:#fff;border:2px solid #fff;padding:6px 9px;box-shadow:3px 3px 0 rgba(0,0,0,.4)}
.driver-hud small{display:block;color:#ffd534;font:900 .58rem Arial,sans-serif;letter-spacing:.12em}.driver-hud strong{display:block;font:900 1rem Arial,sans-serif}
.driver-game-overlay{position:absolute;inset:0;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.42);z-index:5}
.driver-game-overlay.hidden{display:none}.driver-overlay-card{width:min(540px,92%);background:#f3ead4;color:#111;border:5px solid #111;padding:20px;text-align:center;box-shadow:9px 9px 0 rgba(0,0,0,.38)}
.driver-overlay-kicker{font:900 .7rem Arial,sans-serif;letter-spacing:.15em}.driver-overlay-card h3{margin:5px 0 10px;font:italic 900 clamp(1.8rem,5vw,3.1rem)/.95 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;text-transform:uppercase}.driver-overlay-card p{margin:0 auto 14px;max-width:460px;font-weight:700}.driver-start-button{border:3px solid #111;background:#ffd534;color:#111;padding:10px 15px;font:900 .9rem Arial,sans-serif;text-transform:uppercase;cursor:pointer;box-shadow:4px 4px 0 #111}.driver-start-button:active{transform:translate(2px,2px);box-shadow:2px 2px 0 #111}
.driver-controls-note{padding:10px 3px 2px;font-size:.8rem;text-align:center;letter-spacing:.01em}.driver-controls-note strong{font-weight:900}
.driver-pass-panel{margin-top:15px;background:#f3ead4;color:#111;border:5px solid #111;padding:15px;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}.driver-pass-panel[hidden]{display:none!important}.driver-pass-seal{border:5px solid #25813b;color:#25813b;padding:15px 10px;font:900 1rem/1 Arial,sans-serif;letter-spacing:.08em;transform:rotate(-4deg)}.driver-pass-panel h3{margin:0 0 4px;font:italic 900 1.8rem Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;text-transform:uppercase}.driver-pass-panel p{margin:0 0 8px}.driver-pass-actions{display:flex;flex-wrap:wrap;gap:8px}.driver-pass-actions .button{border:2px solid #111;background:#ffd534;color:#111;cursor:pointer}
.membership-locked-message{display:none;max-width:680px;margin:0 auto;padding:22px;border:4px solid currentColor;text-align:center}.pcc-form-locked .membership-locked-message{display:block}.pcc-form-locked .membership-unlocked-content{display:none!important}.short-lines{height:52px}
@media(max-width:700px){.driver-test-board{padding:9px}.driver-test-heading{align-items:flex-start}.driver-test-stamp{font-size:.65rem;padding:6px 8px}.driver-test-rules{display:grid;gap:4px}.driver-game-shell{min-height:0}.driver-hud{left:6px;right:6px;top:6px;gap:5px}.driver-hud>div{min-width:0;flex:1;padding:5px 6px}.driver-hud strong{font-size:.8rem}.driver-controls-note{font-size:.74rem}.driver-pass-panel{grid-template-columns:1fr;text-align:center}.driver-pass-seal{justify-self:center}.driver-pass-actions{justify-content:center}}
@media print{.membership-locked-message{display:none!important}.membership-sheet .short-lines{height:42px}}


/* v4.9.0 mobile game treatment: a larger portrait viewport with a centred 16:9 game picture. */
@media(max-width:700px) and (orientation:portrait){
  .driver-test-heading{flex-direction:column;gap:8px}
  .driver-test-stamp{align-self:flex-start}
  .driver-game-shell{aspect-ratio:4/3;min-height:0}
  #driver-test-canvas{
    position:absolute;
    top:0;
    left:50%;
    width:auto;
    min-width:100%;
    height:100%;
    transform:translateX(-50%);
  }
  .driver-game-overlay{padding:10px}
  .driver-overlay-card{padding:15px;width:min(500px,96%)}
  .driver-overlay-card p{font-size:.9rem}
  .driver-hud{gap:4px}
  .driver-hud>div{padding:4px;box-shadow:1px 1px 0 rgba(0,0,0,.4)}
  .driver-hud small{font-size:.52rem}
  .driver-hud strong{font-size:.75rem}
}


/* v4.10.4 readability tune for the phone assessment screen. */
@media(max-width:900px){
  .driver-test-board{padding:11px}
  .driver-test-kicker{font-size:.78rem}
  .driver-test-stamp{font-size:.72rem;line-height:1.15}
  .driver-test-rules{font-size:.86rem;line-height:1.4;padding:10px 11px}
  .driver-controls-note{font-size:.88rem;line-height:1.45}
  .driver-overlay-card p{font-size:1rem!important;line-height:1.5}
  .driver-start-button{min-height:48px;font-size:.95rem;padding:11px 16px}
  .driver-hud small{font-size:.6rem!important}
  .driver-hud strong{font-size:.88rem!important}
}
