/* AFM Ride UI: local vectors and CSS; no external game framework or font. */
#oyun{--game-rim:#708456;--game-deep:#17251e;--game-gold:#f5cf7c;--game-text:#fcecd8}
.game-icon{width:22px;height:22px;display:inline-block;flex:0 0 22px;vertical-align:middle;pointer-events:none}
#oyun .game-card{border:3px solid #65794c;border-radius:20px;background:linear-gradient(135deg,#2c3e29,#16241e);box-shadow:0 8px 0 #253821,0 13px 0 #6e351128,0 26px 55px #26311c30;isolation:isolate}
#oyun .garage-head{background:linear-gradient(115deg,#3a502f,#253724);border-bottom:2px solid #62784b;padding:20px 24px;flex-wrap:wrap}
#oyun .garage-head .game-name{font-size:18px;font-weight:950;font-style:italic;letter-spacing:.03em;color:var(--cream)}
#oyun .garage-head p{font-size:12px;color:#d0dbbb}
#oyun .wallet,#oyun .shop-wallet{padding:10px 14px;border:1px solid #bba363;border-bottom-width:3px;background:#262c1e;border-radius:8px;color:#edcf8b;font-size:10px;letter-spacing:.08em}
#oyun .wallet strong,#oyun .shop-wallet strong{font-size:23px;font-variant-numeric:tabular-nums;color:#ffe5a3}
#oyun .coin-mark{display:inline-grid;place-items:center;width:24px;height:24px;border:2px solid #e5b65e;border-radius:50%;background:#987126;color:#ffedb7;font-size:17px;margin-right:3px}
#oyun .visit-shop{background:none;border-color:#97af79;color:#dce8cd;font-size:11px;box-shadow:0 3px 0 #142716}
#oyun .bike-picker{gap:12px;padding:18px 24px 23px}
#oyun .bike-choice{border:2px solid #51684c;border-radius:12px;background:linear-gradient(#334931,#243629);box-shadow:0 4px 0 #0d2017;transition:transform .15s,border-color .15s}
#oyun .bike-choice.is-selected{border-color:#c9e492;box-shadow:0 0 0 1px #23331e,0 4px 0 #8caa59}
#oyun .bike-choice-image{height:126px;padding:14px 8px 3px;background:radial-gradient(ellipse at 50% 85%,#80996766,transparent 62%),repeating-linear-gradient(0deg,#ffffff04 0 1px,transparent 1px 22px),linear-gradient(135deg,#40563c,#20342b);border-bottom:1px solid #68795e}
#oyun .bike-choice-info{padding:12px 12px 10px;gap:7px;min-height:68px}
#oyun .bike-choice-info strong{font-size:12px;letter-spacing:.02em;color:#fff1d9}
#oyun .bike-product-link{color:#c3d1b6;font-size:10px}
#oyun .bike-choice.is-locked .bike-choice-image{opacity:.8;filter:saturate(.65)}
#oyun .bike-choice-image{display:block;width:100%;height:164px;overflow:hidden}
#oyun .bike-choice-image svg{display:block;width:100%;height:100%;overflow:hidden}
#oyun .player-bike img{position:absolute;bottom:0;max-width:none;object-fit:fill;transform:none}
#oyun .bike-lock-badge{border-radius:4px;background:#292e23;color:#f3deb5;border-color:#ab9975;font-size:9px}
#oyun .bike-unlock-hint{font-size:10px;color:#c9d2bc;min-height:31px}
#oyun :is(.game-primary,.bike-choice-button,.run-actions button,.game-controls button,.dialog-actions button){position:relative;display:inline-flex;justify-content:center;align-items:center;gap:9px;border:1px solid #c4d997;border-bottom:2px solid #526c32;border-radius:8px;min-height:48px;color:#20331a;background:linear-gradient(#d6e9ab,#9cbc67);box-shadow:inset 0 2px 0 #f2ffd07a,0 4px 0 #3b542a,0 6px 9px #05150c55;font-size:12px;font-weight:900;letter-spacing:.025em;text-shadow:0 1px #e9f2d477;transition:transform .12s,box-shadow .12s,filter .12s;cursor:pointer}
#oyun :is(.game-primary,.bike-choice-button,.run-actions button,.game-controls button,.dialog-actions button):not(:disabled):active,#oyun .game-controls button.is-held{transform:translateY(3px);box-shadow:inset 0 2px 5px #24301555,0 1px 0 #3b542a}
@media(hover:hover){#oyun :is(.game-primary,.bike-choice-button,.run-actions button,.game-controls button,.dialog-actions button):not(:disabled):hover{filter:brightness(1.09)}}
#oyun :is(button,a):focus-visible{outline:3px solid #99dbff;outline-offset:4px}
#oyun .bike-choice-button{margin:0 10px 12px;font-size:11px;min-height:42px;padding:8px 6px}
#oyun .bike-choice-button:disabled,#oyun .bike-choice.is-locked .bike-choice-button:disabled{background:#33432d;border-color:#758267;color:#c8d4b9;box-shadow:inset 0 1px #849c4f33;opacity:1;text-shadow:none;cursor:not-allowed}
#oyun .bike-choice.is-selected .bike-choice-button{background:#c3d896;color:#263b22;border-color:#9aba68;cursor:default}
#oyun .game-toolbar{padding:16px 24px 12px;gap:12px;background:#15251e;border-top:1px solid #607447;flex-wrap:wrap}
#oyun .game-toolbar>.game-name{font-size:10px;letter-spacing:.08em;color:#b9c9aa}
#oyun .game-toolbar>.game-name strong{color:#f9e9cc}
#oyun .game-stats{gap:7px;margin-left:auto;flex-wrap:wrap}
#oyun .game-stats>span{display:grid;gap:2px;position:relative;min-width:64px;padding:6px 10px;border:1px solid #52674b;border-radius:6px;background:#26392b;font-size:8px;color:#bfceae;letter-spacing:.1em;line-height:1.25}
#oyun .game-stats strong{font-size:20px;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:#fff0d7}
#oyun .game-stats small{position:absolute;right:8px;bottom:9px;font-size:8px}
#oyun .game-stats .round-coins{border-color:#9b8854;color:#f1cc7e}
#oyun .game-stats .round-coins strong{color:#ffe5a3}
#oyun .sound-toggle{display:flex;align-items:center;gap:6px;min-height:44px;background:#253c32;border:1px solid #7a9575;border-bottom:3px solid #0a1c15;border-radius:7px;font-size:9px;color:#e0efd3}
#oyun .sound-toggle[aria-pressed=false]{color:#b9c0ae;background:#242e28}
#oyun .sound-toggle[aria-pressed=false] .game-icon{opacity:.4}
#oyun .energy-row{padding:8px 24px 14px;background:#15251e;color:#c8e7f5;letter-spacing:.08em}
#oyun .energy-row>span{display:flex;align-items:center;gap:5px;font-size:9px}
#oyun .energy-row .game-icon{width:16px;height:16px;flex-basis:16px;color:#a0ddff}
#oyun .energy-track{height:14px;border:2px solid #5b7d8c;border-radius:4px;background:#0c212e;padding:1px;position:relative}
#oyun .energy-track:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 2px),#15251e 0 10%);pointer-events:none}
#oyun .energy-track span{border-radius:1px;background:linear-gradient(#b5edff,#499ed9)}
#oyun .ride-missions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 24px 16px;background:#15251e}
#oyun .ride-missions>span{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:8px 10px;background:#273b2d;border:1px solid #567048;border-radius:5px;color:#cfddc2;font-size:10px;line-height:1.4}
#oyun .ride-missions b{white-space:nowrap;color:#fcecd8;font-size:12px}
#oyun .ride-missions .is-complete{border-color:#a9c67c;color:#def6b8;background:#355135}
#oyun .game-stage{border-block:3px solid #718257}
#oyun .game-overlay{background:linear-gradient(115deg,#0e241bec,#132e20ca);padding:22px}
#oyun .overlay-badge{border:1px solid #9bb872;border-radius:4px;padding:6px 10px;color:#d4e8ae;font-size:9px;letter-spacing:.14em;background:#27432dcc}
#oyun .game-overlay h3{font-weight:950;font-style:italic;text-transform:uppercase;font-size:clamp(27px,3.3vw,43px);letter-spacing:-.025em;line-height:1.07;text-shadow:0 3px #06180d;margin:15px 0 10px;max-width:650px}
#oyun .game-overlay p{max-width:510px;color:#dae5ce;font-size:12px;line-height:1.6;margin-bottom:17px}
#oyun #start-game{font-size:17px;text-transform:uppercase;min-width:215px;min-height:57px;padding:12px 26px;transform:none}
#oyun #start-game .game-icon{width:25px;height:25px;flex-basis:25px}
#oyun .ride-result{margin:16px 0 0;border-top:1px solid #7d9766;padding-top:10px;font-size:11px;color:#eed795}
#oyun .stage-theme,#oyun .stage-goal{border-radius:4px;background:#162b21ed;border-color:#bacba6;color:#f5eacb}
#oyun .combo-label{background:linear-gradient(135deg,#206b94,#0c486f);border:1px solid #95dfff;border-bottom:3px solid #063453;border-radius:5px;font-size:11px;font-style:italic}
#oyun .boost-hud{background:#10283bee;border:1px solid #91cce2;border-radius:5px;box-shadow:0 3px 0 #0b192e}
#oyun .boost-track{border-radius:2px;height:6px}
#oyun .game-footer{background:#263b2d;padding:17px 24px 19px;border-bottom:1px solid #57734d}
#oyun kbd{display:inline-grid;place-items:center;font:800 9px "Segoe UI",sans-serif;letter-spacing:0;min-width:20px;height:20px;padding:2px 4px;color:#dce8cc;background:#12231a;border:1px solid #8ca072;border-bottom:3px solid #607745;border-radius:4px}
#oyun .game-footer>span{line-height:2.3;letter-spacing:.035em;font-size:9px}
#oyun .game-controls{gap:8px}
#oyun .game-controls button{height:54px;min-height:54px;min-width:76px;background:linear-gradient(#506446,#364c31);border-color:#8da174;border-bottom-color:#21341d;color:#f9ebd4;box-shadow:inset 0 1px #d1e5b355,0 4px 0 #112719;text-shadow:none}
#oyun .game-controls button span{font-size:9px}
#oyun .game-controls #throttle-button{background:linear-gradient(#d9efa7,#93b952);color:#24391b;border-color:#d0e398}
#oyun .game-controls #brake-button{background:linear-gradient(#935932,#6e3511);border-color:#c58b60;color:#ffe7cf}
#oyun .game-controls #jump-button{background:linear-gradient(#5c93ad,#2c627c);border-color:#9acee7;color:#e1f7ff}
#oyun .game-controls #left-button,#oyun .game-controls #right-button{min-width:40px}
#oyun .run-actions{padding:18px 24px 14px;grid-template-columns:1.3fr 1fr 1fr 1fr auto;gap:10px}
#oyun .run-actions button{font-size:11px;padding:10px;background:linear-gradient(#415636,#2b402b);border-color:#839767;border-bottom-color:#0f2416;color:#f0e4c9;text-shadow:none;box-shadow:inset 0 1px #b4ce9344,0 4px 0 #102218}
#oyun .run-actions #open-garage{background:linear-gradient(#d3e49e,#9dbc67);color:#25371c;border-color:#c6d990;text-shadow:none}
#oyun .run-actions kbd{margin-left:auto}
#oyun .run-actions button:disabled{opacity:.45;transform:none;box-shadow:none;cursor:default}
#oyun .run-actions .reset-action{border:0;background:none;box-shadow:none;color:#d3baa3;font-size:10px;text-decoration:underline;text-underline-offset:4px;font-weight:600}
#oyun .resume-symbol,#oyun #pause-game[aria-pressed=true] .pause-symbol{display:none}
#oyun #pause-game[aria-pressed=true] .resume-symbol{display:inline-block}
#oyun .run-help{font-size:10px;color:#bbcbb0;padding:0 24px 20px}
#oyun .ride-dialog{border:3px solid #819565;border-radius:16px;box-shadow:0 8px 0 #172b1d,0 28px 100px #000a;background:#1e3227;color:#f9e9ce}
#oyun .ride-dialog .eyebrow{font-size:10px;color:#c4daa0;letter-spacing:.1em}
#oyun .ride-dialog h3{font-weight:950;font-style:italic;text-transform:uppercase;letter-spacing:-.025em;font-size:clamp(24px,4vw,32px)}
#oyun .garage-dialog{background:radial-gradient(ellipse at top right,#3e5538,#1e3227 70%)!important}
#oyun .garage-dialog>p:not(.eyebrow){font-size:12px;color:#d2ddc5}
#oyun .ride-dialog .shop-picker{padding:6px 0 20px}
#oyun .ride-dialog .game-primary{min-height:52px;padding:12px 24px;font-size:14px;text-transform:uppercase}
#oyun .shop-bottom{padding-bottom:5px;background:#1e3227}
#oyun .shop-content{background:#1e3227}
#oyun .shop-status:empty{display:none}
#oyun .shop-status{border-left:3px solid #b2d681;padding-left:10px;line-height:1.5}
#oyun .reset-dialog .danger-button{background:linear-gradient(#a15638,#6e3511);color:#fff1df;border-color:#d58d65;box-shadow:0 4px 0 #391a0b;text-shadow:none}
@media(max-width:1000px){#oyun .game-toolbar>.game-name{width:100%}#oyun .game-stats{margin-left:0;width:100%;justify-content:space-between}#oyun .run-actions{grid-template-columns:repeat(4,minmax(0,1fr))}#oyun .run-actions .reset-action{grid-column:1/-1;min-height:30px}#oyun .run-actions kbd{display:none}}
@media(max-width:600px){#oyun .garage-head{padding:16px;gap:12px}#oyun .garage-head .game-name{font-size:16px}#oyun .garage-head p{font-size:10px}#oyun .wallet{padding:8px;font-size:9px}#oyun .wallet strong{font-size:19px}#oyun .coin-mark{display:none}#oyun .bike-picker{padding:14px 12px 19px;gap:10px}#oyun .bike-choice-image{height:131px}#oyun .bike-choice-info{padding:10px 8px;min-height:67px}#oyun .bike-choice-info strong{font-size:10px}#oyun .bike-choice-button{font-size:10px;margin-inline:7px}#oyun .game-toolbar{padding:12px}#oyun .game-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}#oyun .game-stats>span{min-width:0;padding:6px 8px;font-size:8px}#oyun .game-stats strong{font-size:18px}#oyun .sound-toggle{justify-content:center;font-size:8px;padding:6px}#oyun .energy-row{padding:4px 12px 12px}#oyun .ride-missions{padding:0 12px 12px;gap:5px}#oyun .ride-missions>span{flex-direction:column;align-items:flex-start;padding:6px;font-size:9px}#oyun .ride-missions b{font-size:11px}#oyun .game-stage{height:335px}#oyun .game-overlay{padding:18px 14px}#oyun .game-overlay h3{font-size:27px}#oyun .game-overlay p{font-size:11px;margin-bottom:13px;line-height:1.5}#oyun .overlay-badge{font-size:8px}#oyun #start-game{min-height:50px;font-size:15px;min-width:200px}#oyun .game-footer{padding:14px 12px 18px}#oyun .game-controls{gap:7px}#oyun .game-controls button{min-width:0;height:54px}#oyun .run-actions{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px 12px 12px;gap:10px}#oyun .run-actions #open-garage{grid-column:auto}#oyun .run-actions button{font-size:10px;gap:6px;padding:9px 6px}#oyun .run-actions .game-icon{width:18px;height:18px;flex-basis:18px}#oyun .run-help{padding:0 14px 16px;font-size:10px}#oyun .ride-dialog .game-primary{padding:10px 13px;font-size:12px;min-width:140px}#oyun .shop-bottom>span{font-size:9px}#oyun .garage-dialog .shop-picker{grid-template-columns:repeat(2,minmax(0,1fr))}#oyun .garage-dialog .bike-choice{max-width:none}}
@media(prefers-reduced-motion:reduce){#oyun :is(button,.bike-choice,.energy-track span){transition:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#oyun .afm-radio{display:flex;align-items:center;gap:18px;padding:16px 24px;background:linear-gradient(120deg,#4c3925,#282e21);border-block:1px solid #887c52;color:#f4e1b9}
#oyun .radio-brand{display:flex;align-items:center;gap:10px;flex-shrink:0}
#oyun .radio-brand strong{font-size:13px;font-weight:900;font-style:italic;letter-spacing:.1em}
#oyun .radio-brand small{display:block;margin-top:4px;font-size:7px;letter-spacing:.14em;color:#cebe96}
#oyun .radio-disc{display:grid;place-items:center;width:36px;height:36px;border:3px solid #bda479;border-radius:50%;background:repeating-radial-gradient(circle,#25382b 0 3px,#52644c 4px 5px);color:#ecdcb0;font-size:16px}
#oyun .is-playing .radio-disc{animation:radio-spin 7s linear infinite}
@keyframes radio-spin{to{transform:rotate(360deg)}}
#oyun .radio-track{flex:1;min-width:120px}
#oyun .radio-track select{font:800 12px "Segoe UI",sans-serif;width:100%;max-width:240px;border:1px solid #9e956c;border-radius:5px;padding:8px;background:#202e24;color:#ffebbf}
#oyun #radio-status{display:block;font-size:9px;color:#d2ccb3;margin-top:5px;line-height:1.4}
#oyun .radio-controls{display:flex;gap:6px}
#oyun .radio-controls button{min-width:38px;min-height:44px;border:1px solid #b4a577;border-bottom:3px solid #5e4a2f;border-radius:6px;background:linear-gradient(#ead2a2,#b3a278);color:#25311d;font-size:12px;font-weight:900;cursor:pointer;box-shadow:0 2px 0 #14251a}
#oyun #radio-toggle{min-width:100px;padding:8px}
#oyun .radio-controls button:active{transform:translateY(2px);box-shadow:none}
#oyun .radio-volume{width:105px;flex-shrink:0}
#oyun .radio-volume>span{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.1em}
#oyun .radio-volume input{width:100%;min-height:24px;margin:4px 0 0;accent-color:#c6df8c;cursor:pointer}
@media(max-width:850px){#oyun .afm-radio{display:grid;grid-template-columns:1fr 1fr;gap:13px 18px}#oyun .radio-track{min-width:0}#oyun .radio-controls{justify-content:flex-start}#oyun .radio-volume{width:100%}}
@media(max-width:600px){#oyun .afm-radio{padding:14px 12px;gap:12px}#oyun .radio-brand{gap:6px}#oyun .radio-brand strong{font-size:11px}#oyun .radio-brand small{font-size:6px;letter-spacing:.05em}#oyun .radio-disc{width:30px;height:30px;flex-shrink:0}#oyun .radio-controls{gap:4px;grid-column:1/-1;justify-content:center}#oyun .radio-volume{grid-column:1/-1}#oyun .radio-volume input{min-height:28px}#oyun .radio-track select{font-size:11px;padding:8px 5px}#oyun #radio-status{font-size:8px}}
@media(prefers-reduced-motion:reduce){#oyun .is-playing .radio-disc{animation:none}}
#oyun .game-controls #nitro-button{background:linear-gradient(#52b8d6,#236c98);border-color:#b0edff;color:#e5fbff;min-width:84px}
#oyun .game-controls #nitro-button:disabled{background:#294959;border-color:#547a8a;color:#a8c3cc;box-shadow:0 3px 0 #142c3e;cursor:default}
#oyun .game-stage.is-nitro .player-bike{filter:drop-shadow(-14px 0 10px #60d8ffbb)}
#oyun .game-stage.is-nitro .boost-hud{border-color:#a7efff;box-shadow:0 0 15px #62cfee66}
@media(max-width:600px){#oyun .game-controls #nitro-button{min-width:0}#oyun .game-controls button span{font-size:8px}#oyun .game-controls .game-icon{width:20px;height:20px;flex-basis:20px}}
