/* Shared dialog language for the garage and the driving assessment. */
.overlay,#veil,#pause-layer{background:radial-gradient(ellipse at 50% 25%,#30403c66,transparent 70%),#080d10c9;backdrop-filter:blur(12px);padding:clamp(16px,4vw,48px);overflow:auto;overscroll-behavior:contain;}
#veil,#pause-layer{align-items:safe center;}
.modal,#sheet.game-dialog,#pause-layer .game-dialog{position:relative;width:min(720px,100%);max-width:720px;max-height:calc(100dvh - 48px);overflow:auto;padding:clamp(24px,4vw,44px);border:1px solid #aabbad30;border-radius:20px;background:linear-gradient(145deg,#263034,#192125 65%);box-shadow:0 32px 100px #0008,inset 0 1px #ffffff08;text-align:left;touch-action:pan-y;user-select:text;scrollbar-width:thin;scrollbar-color:#65736c #1b2527;}
.modal:before,.game-dialog:before{content:'';display:block;width:40px;height:4px;background:#ef5146;border-radius:9px;margin-bottom:23px;}
.dialog-kicker,.modal .eyebrow,#pause-layer .dialog-kicker{display:flex;gap:10px;align-items:center;margin:0 0 13px;color:#bbc5bd;font:600 10px/1.5 Arial,sans-serif;letter-spacing:2px;text-transform:uppercase;}
.dialog-kicker span{color:#ef8b79;border:1px solid #ef8b7938;border-radius:5px;padding:3px 7px;letter-spacing:1px;}
#sheet.game-dialog h1,#pause-layer .game-dialog h1,.modal h2{font:700 clamp(30px,4vw,48px)/1.04 Arial,sans-serif;letter-spacing:-1.8px;text-transform:none;margin:0 0 18px;color:#f2f0e8;}
#sheet.game-dialog h1 em{color:#c5cbbb;font-weight:400;font-style:italic;}
#sheet.game-dialog p,.game-dialog p,.modal p{font-size:14px;line-height:1.7;color:#b6c0bb;margin:0 0 20px;max-width:62ch;}
.briefing{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0;}
.briefing-card{padding:17px 18px;border:1px solid #ffffff15;border-radius:12px;background:#10191e50;display:flex;align-items:center;gap:15px;}
.briefing-card>strong{font:italic 36px/1 Arial;color:#e8eadf;letter-spacing:-1px;}
.briefing-card b{display:block;color:#e1e7db;font-size:12px;margin-bottom:4px;}.briefing-card small{font-size:11px;line-height:1.5;color:#9facab;display:block;}
.briefing-card .brief-limit{display:grid;place-items:center;border:5px solid #df544d;background:#f5f1e8;color:#172028;min-width:46px;height:46px;border-radius:50%;font:700 22px Arial;letter-spacing:-1px;}
#sheet .keys{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 24px;}
#sheet .key{display:flex;flex-direction:column;gap:8px;align-items:flex-start;border:0;border-radius:9px;padding:12px;background:#ffffff05;color:#aab8b1;font:11px Arial;}
#sheet .key b{font:500 12px Arial;letter-spacing:.5px;color:#e0e7df;}
.dialog-actions,.btnrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-top:22px;border-top:1px solid #ffffff15;}
.game-dialog .btn,.game-dialog .dialog-back,.modal .primary,.modal .secondary{min-height:48px;border-radius:9px;padding:14px 20px;font:600 13px/1.4 Arial;display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:25px;text-decoration:none;cursor:pointer;}
.game-dialog .btn,.modal .primary{background:#ef5146;color:#fff;border:1px solid transparent;}.game-dialog .btn:hover,.modal .primary:hover{background:#ff6558;}
.game-dialog .dialog-back,.game-dialog .btn.ghost,.modal .secondary{background:transparent;border:1px solid #ffffff24;color:#c4cfc5;}.game-dialog .dialog-back:hover,.game-dialog .btn.ghost:hover,.modal .secondary:hover{background:#ffffff08;border-color:#ffffff45;}
.dialog-actions .btn{flex:1;}#pause-layer .dialog-actions a{margin:0;display:inline-flex;}
#sheet.game-dialog .dialog-note{font:11px/1.6 Arial;color:#899c96;margin:20px 0 0;}.modal .primary{margin-top:25px;}.modal .secondary{margin-top:9px;}
#sheet .results-title{font-size:17px;margin:25px 0 12px;color:#e1e6db;letter-spacing:-.3px;}#sheet #scoreHead{gap:20px;align-items:center;margin:0 0 24px;}#scoreBig{padding:16px 22px;background:#0f191e80;border-radius:12px;font-size:40px;}#scoreVerdict{font-size:22px;letter-spacing:-.6px;text-transform:none;}#byTopic{border-color:#ffffff15;border-radius:10px;}#byTopic .trow{padding:12px 14px;border-color:#ffffff0b;font-size:13px;}#mistakes .mist{border-radius:0 8px 8px 0;background:#ef514609;padding:13px 16px;}#mistakes .mist .h{font:600 14px/1.4 Arial;}#mistakes .mist .b{font-size:13px;line-height:1.65;}#mistakes .mist .l{line-height:1.5;}
.modal .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border:0;padding:0;}.stats>div{padding:18px 12px;border:1px solid #ffffff15;border-radius:10px;background:#ffffff04;}.stats span{display:block;margin-top:6px;}
@media(max-width:540px){.modal,#sheet.game-dialog,#pause-layer .game-dialog{padding:25px 22px;border-radius:16px;max-height:calc(100dvh - 32px);}#sheet.game-dialog h1,#pause-layer .game-dialog h1,.modal h2{font-size:34px;letter-spacing:-1.2px;}.briefing{gap:8px;margin:20px 0;}.briefing-card{padding:13px 11px;gap:10px;}.briefing-card>strong{font-size:29px;}.briefing-card small{font-size:10px;}#sheet .keys{grid-template-columns:repeat(2,1fr);}.dialog-actions{align-items:stretch;}.dialog-actions .btn,.dialog-actions .dialog-back{width:100%;}.modal .stats{gap:6px;}.stats>div{padding:14px 8px;}.modal .stats strong{font-size:26px;}}
@media(prefers-reduced-motion:reduce){.modal,.game-dialog{scroll-behavior:auto;}}

.game-dialog:focus{outline:none;}
.dialog-open .drive-toolbar,.dialog-open #speedbox,.dialog-open #topbar,.dialog-open #touch,.dialog-open #mapBox,.dialog-open #town-limit,.dialog-open .concept-label{visibility:hidden;}

#pause-layer .game-dialog>p{font-size:14px;letter-spacing:0;line-height:1.7;}

.overlay .modal{max-height:100%;}
