/* GR product skin: existing game geometry/controls remain unchanged. */
:root{--bg:#f4f6fa;--panel:#fff;--line:#d6deea;--muted:#566579;--mint:#245ce6;--cyan:#245ce6;--white:#17202d;--red:#b93838;--paper:#f5f7fa;--ink:#17202d}
body{font-family:system-ui,"Noto Sans KR","Malgun Gothic",sans-serif;letter-spacing:0;color:var(--white);background:var(--bg)}
header{height:72px;padding:0 24px}.brand{font-weight:750;letter-spacing:0;font-size:22px}.brand small{letter-spacing:.06em;font-size:9px}.brand-icon{background:var(--mint);color:#fff;transform:none;border-radius:12px;font-size:17px;font-weight:850}
.icon-btn{min-width:44px;height:44px;background:#fff;color:var(--white)}
button,a,input,select,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--mint);outline-offset:3px}
h1,h2,h3,p,small,button{word-break:keep-all;overflow-wrap:break-word}h1,h2,h3,.intro{text-wrap:balance}
.overlay,.overlay:has(.home-screen){background:var(--bg);backdrop-filter:none}
.modal{background:var(--panel);border:1px solid var(--line);border-radius:22px;box-shadow:0 8px 28px #1b315414;color:var(--white)}
.modal h1,.modal h2{letter-spacing:0;line-height:1.3}.modal .intro,.tiny,.best,.stage-desc,.control-note,.modal p,.modal small{color:var(--muted)}
.primary,.home-screen #soloPlay{background:var(--mint);color:#fff;border:0;box-shadow:none;min-height:48px;font-weight:700}
.primary small,.primary span,.home-screen #soloPlay small,.home-screen #soloPlay span{color:#fff}
.secondary,.text-button,.pause-button,.rank-tabs button,.mode-tabs button{background:#fff;color:var(--white);border:1px solid var(--line);min-height:44px}
.secondary:hover,.icon-btn:hover{background:#edf2ff}.primary:hover{filter:brightness(.95)}
.home-screen .resume-card,.solo-screen .resume-card{background:var(--mint);color:#fff!important;border-color:var(--mint)}
.home-screen .resume-card small,.solo-screen .resume-card small{color:#fff}
.solo-screen:has(#continueRide) #newSolo,.home-screen:has(#continueRide) #soloPlay{background:#edf2ff;color:var(--mint);border:1px solid var(--line)}
.home-settings>summary{color:var(--muted);border-color:var(--line);min-height:44px;display:flex;align-items:center;justify-content:center}
.home-hero{background:#e9efff}.home-hero::after{background:linear-gradient(0deg,#122544e8,transparent 90%)}
.home-hero .home-heading{text-shadow:none}.home-hero .home-heading .game-name,.home-heading .game-name em{color:#fff!important;font-weight:750;letter-spacing:0;font-size:clamp(1.7rem,5vw,2.2rem)!important;line-height:1.35}
.home-hero .eyebrow,.home-hero .home-heading p{color:#fff}.home-screen .mode-card span{font-weight:700}
.home-screen .mode-card{border-radius:14px}.home-screen #multiPlay,.home-screen #menuRanking{padding:14px 8px;background:#f5f7fc}
.delivery-card,.stat,.guide-dock,.dispatch-panels .support-notice,.dispatch-panels .bonus-offer{background:#fff;border-color:var(--line);box-shadow:none;color:var(--white)}
.controls-title,.controls-title b{color:var(--white)}.key{background:#edf2ff;color:var(--mint);border:1px solid #ccd8f6;border-bottom:3px solid #bdcef3}.key small{color:#40547b}.key:active,.key.pressed{background:#d8e3ff}
.brake-button{background:#fff;color:var(--white);border-color:var(--line);min-height:44px}.stage-number{color:#8090ab}.live-pill{background:#edf2ff;color:var(--mint)}
.guide-dock .tutorial-coach strong,.guide-dock .junction,.junction strong,.memory-guide strong,.fork-coach strong{color:var(--white)}
.guide-dock .tutorial-coach p,.guide-dock .tutorial-coach small,.junction span,.memory-guide p,.fork-coach span,.fork-coach small{color:var(--muted)}
.tutorial-action{background:var(--mint);border-color:var(--mint);color:#fff}.guide-dock .overview-caption strong{color:var(--mint)!important}
.feedback-strip .toast{color:var(--white)}.feedback-strip .toast.bad{color:var(--red)}
.start-options select,.modal input:not([type=checkbox]),.modal select{background:#fff;color:var(--white);border:1px solid #8190a4;border-radius:10px;min-height:44px}
.device-options button,.rider-style-options button,.travel-choice,.theme-choice,.mode-choice{background:#f4f6fa;color:var(--white);border-color:var(--line);min-height:44px}
.device-options button[aria-pressed=true],.rider-style-options button[aria-pressed=true],.travel-choice[aria-pressed=true],.theme-choice[aria-pressed=true]{background:#edf2ff;color:var(--mint);border-color:var(--mint);box-shadow:none}
.vehicle-grid .travel-choice{background:#f4f6fa;border-color:var(--line);color:var(--white)}.vehicle-grid .travel-choice span{color:var(--white)}.vehicle-grid .travel-choice[aria-pressed=true]{background:#edf2ff;border-color:var(--mint);box-shadow:none}
.result-stats div,.howto div{background:#f4f6fa;color:var(--muted);border-color:var(--line)}.result-stats b,.howto b{color:var(--white)}
.site-links a,.legacy-records{color:var(--mint)}.footer{color:var(--muted)}
.modal .learn-game{background:#edf2ff;border:1px solid var(--line);box-shadow:none;color:var(--mint)}
.modal .learn-game strong,.modal .learn-game b,.modal .learn-game span{color:var(--mint)}
.modal .learn-game small,.modal .text-back,.home-screen .copyright{color:var(--muted)}
.modal .back-link{color:var(--muted);min-height:44px}
.game-area .tutorial-coach,.guide-dock .tutorial-coach{background:#fff!important;color:var(--white);border-color:var(--line)!important}
.game-area .tutorial-coach strong,.guide-dock .tutorial-coach strong{color:var(--white)!important}
.game-area .tutorial-coach p,.game-area .tutorial-coach small{color:var(--muted)!important}
.header-right .icon-btn{width:44px;min-width:44px;height:44px;white-space:nowrap;font-size:14px}
.guide-dock.floating-guide{background:#fff;border-color:var(--line);box-shadow:0 4px 16px #17202d18}
.selection-footer{background:#fff;border-color:var(--line)}
.selection-footer .device-options,.selection-footer .device-options small{color:var(--muted)}
.map-tools button{min-height:44px;background:#fff;color:var(--ink);border-color:var(--line)}
.roadgrit-embedded>.footer,.roadgrit-embedded>header .brand,.roadgrit-embedded>header .tag{display:none}
.roadgrit-embedded>header{height:52px;justify-content:flex-end;padding:4px 12px}
.roadgrit-embedded>header .page-navigation{position:static;display:flex}
.roadgrit-embedded>header .page-navigation button{min-height:44px}
.roadgrit-embedded .overlay,.roadgrit-embedded .overlay:has(.home-screen){top:56px!important}
.roadgrit-embedded .layout{padding-top:8px}
@media(max-width:639px){header{height:64px;padding:0 14px}.brand{font-size:18px;gap:8px}.header-right{gap:4px}.brand small{display:none}.layout{padding-inline:12px}.modal:has(>.home-screen){border-radius:18px}.home-screen #soloPlay span{font-size:20px}.home-screen #multiPlay span,.home-screen #menuRanking span{font-size:16px}.home-screen #multiPlay small,.home-screen #menuRanking small{font-size:11px}.home-hero>img{height:195px}.roadgrit-embedded .overlay:has(.home-screen){top:8px}}
.page-navigation button{background:#fff;border-color:var(--line);color:var(--ink)}
.map-viewport .ride-feedback.compact-hit{width:92px}.map-viewport .ride-feedback.compact-hit b{font-size:19px}.map-viewport .ride-feedback.compact-hit.high-combo b{font-size:21px}.map-viewport .ride-feedback.compact-hit.hit-miss b{font-size:14px}
@media(max-width:650px){.mobile-playing .controls-title{min-height:44px;display:flex;align-items:center;gap:3px}.mobile-playing .pause-button{height:44px;min-height:44px;top:0}body.mobile-playing.roadgrit-embedded{height:var(--gr-viewport-height,100vh)}.mobile-playing.roadgrit-embedded .layout{height:calc(var(--gr-viewport-height,100vh) - 52px)}}
@media(max-width:650px) and (max-height:640px){.mobile-playing .guide-dock.floating-guide{width:calc(100% - 20px);padding:6px 8px 26px}.mobile-playing .floating-guide .tutorial-coach strong{font-size:13px}.mobile-playing .floating-guide .tutorial-coach p{font-size:10px;line-height:1.35;margin-top:4px!important}.mobile-playing .floating-guide .tutorial-action{height:42px}}
@media(prefers-reduced-motion:reduce){button{transition:none}.coach-pulse,.coach-pulse .tutorial-action{animation:none}}
