.clp-game{background:#151917;color:#f7f8f2;font-family:Inter,Arial,sans-serif}
.clp-game .game-header{min-height:66px;display:flex;justify-content:space-between;align-items:center;gap:18px}
.game-header nav{display:flex;align-items:center;gap:22px;color:#e2e6dd;font-size:13px}
.game-header nav a:hover,.game-header nav a:focus-visible{color:#ffd147}
.game-main{padding:26px 0 22px}
.game-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:17px}
.game-kicker{margin:0 0 4px;color:#d2b866;font-size:11px;font-weight:700;letter-spacing:.115em;text-transform:uppercase}
.game-heading h1{margin:0;color:#f8f8f3;font-size:clamp(37px,5.5vw,68px);line-height:.95;letter-spacing:-.055em}
.game-heading h1 span{color:#ffd147}
.game-intro{max-width:400px;margin:0 0 3px;font-size:14px;line-height:1.45;color:#c8d0c7}
.game-layout{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(245px,.9fr);gap:15px;align-items:start}
.game-stage,.game-console{min-width:0;background:#212721;border:1px solid #3d463e;border-radius:12px;overflow:hidden}
.game-hud{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 17px;background:#222822}
.game-hud span,.game-overlay small{display:block;color:#afbbaf;font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.game-hud strong{font-size:clamp(16px,2vw,22px);line-height:1.16;letter-spacing:-.025em}
.game-score{text-align:right}.game-score strong{color:#ffd147;font-variant-numeric:tabular-nums}
.game-board{position:relative;background:#1a201d;overflow:hidden}
#game-canvas{display:block;width:100%;height:auto;aspect-ratio:744/468;outline-offset:-4px}
.game-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;pointer-events:none;background:#1216107d;backdrop-filter:blur(1px)}
.game-overlay[hidden]{display:none}
.game-overlay small{color:#ffde72;text-shadow:0 1px 4px #111}
.game-overlay strong{color:white;font-size:clamp(31px,4.4vw,60px);line-height:1;letter-spacing:-.05em;text-shadow:0 2px 6px #111}
.game-overlay span{color:#f1f2e9;font-size:13px;text-shadow:0 1px 3px #111}
.game-legend{display:flex;align-items:center;gap:18px;padding:9px 15px;flex-wrap:wrap;font-size:11px;color:#c8d0c5}
.game-legend span{display:inline-flex;align-items:center;gap:6px}
.game-legend i{display:inline-block}.lg-car{width:13px;height:7px;background:#ffd147;border-radius:2px}
.lg-patrol{width:13px;height:7px;background:linear-gradient(90deg,#e1e6e4 0 27%,#4c8bcb 27% 48%,#ed8178 48% 67%,#e1e6e4 67%);border-radius:2px}
.lg-stop{width:9px;height:9px;border:2px solid #ffd147;border-radius:50%}
.game-console{padding:17px}.game-actions{display:flex;align-items:stretch;gap:7px}
.game-actions button{cursor:pointer}.game-actions .btn{flex:1;justify-content:center;text-align:center;padding:11px 12px;min-height:42px}
.game-reset{background:transparent;color:#e5e8dc;border:1px solid #647064;border-radius:5px;padding:7px 10px;font-size:13px}
#game-message{margin:10px 0;font-size:13px;line-height:1.4;color:#e9ecdf;min-height:2.8em}
.game-pad{display:grid;grid-template-columns:repeat(3,48px);grid-template-rows:repeat(2,43px);gap:4px;justify-content:center}
.game-pad button{font:700 22px/1 Inter,Arial,sans-serif;border-radius:7px;background:#343d34;border:1px solid #596554;color:#f6f7eb;touch-action:none;user-select:none;-webkit-user-select:none;cursor:pointer}
.game-pad button[data-go=up]{grid-column:2}.game-pad button[data-go=left]{grid-column:1;grid-row:2}.game-pad button[data-go=down]{grid-column:2;grid-row:2}.game-pad button[data-go=right]{grid-column:3;grid-row:2}
.game-pad button.pressed{background:#ffd147;border-color:#ffd147;color:#1b211c}
#game-help,.game-rules,.game-context{font-size:12px;color:#b8c3b8;line-height:1.48}
#game-help{margin:10px 0 13px}.game-console h2{font-size:17px;letter-spacing:-.025em;margin:12px 0 5px;color:#f4f5ed}
.game-stops{counter-reset:node;margin:0;padding:0;list-style:none}
.game-stops li{counter-increment:node;display:flex;align-items:center;gap:8px;padding:5px 0;color:#c8d0c7;font-size:13px}
.game-stops li:before{content:counter(node);display:grid;place-items:center;border:1px solid #647062;border-radius:50%;width:19px;height:19px;font-size:10px}
.game-stops li[aria-current=step]{color:#ffdc72}.game-stops li[aria-current=step]:before{background:#ffd147;color:#171b16;border-color:#ffd147}
.game-stops li.done{color:#a6bca2}.game-stops li.done:before{content:"✓";color:#bedcab;border-color:#779871}
.game-rules{margin:9px 0 0}.game-context{margin:12px 0 0}
.clp-game button:focus-visible,.clp-game a:focus-visible,#game-canvas:focus-visible{outline:3px solid #ffd147;outline-offset:2px}
@media(max-width:760px){.game-layout{grid-template-columns:1fr;gap:9px}.game-heading{display:block;margin-bottom:11px}.game-main{padding:17px 0}.game-intro{margin:7px 0 0}.game-console{padding:12px 15px;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;align-items:center}.game-actions{grid-column:1;grid-row:1;flex-wrap:wrap}.game-console .game-pad{grid-column:2;grid-row:1/3;grid-template-columns:repeat(3,45px);grid-template-rows:repeat(2,45px)}#game-message{grid-column:1;grid-row:2;margin-bottom:0;min-height:0}#game-help,.game-console h2,.game-stops,.game-rules{grid-column:1/-1}.game-legend{gap:12px;font-size:10px}.game-hud{padding:8px 12px}.clp-game .game-header{min-height:54px}.game-header nav{gap:11px;font-size:12px}.game-header .brand img{max-width:117px}}
@media(max-width:460px){.game-header nav a:first-child{display:none}.game-stage,.game-console{border-radius:8px}.game-kicker{font-size:9px}.game-intro{font-size:12px}.game-pad button{font-size:20px}.game-actions .btn{font-size:12px;min-height:36px}.game-reset{font-size:11px;padding:4px 7px}.game-hud strong{font-size:15px}.game-hud span{font-size:9px}}
@media(max-width:350px){.game-console{display:block}.game-pad{margin-top:8px}}

