/* AEMAZON garage: normal document flow keeps purchase controls visible in WebViews. */
:root{color-scheme:light;--g-orange:#ef602d;--g-orange-deep:#d94719;--g-orange-soft:#fff3ec;--g-ink:#202124;--g-muted:#77808e;--g-line:#e9ebef;--g-background:#f8f9fb;--g-green:#168252}
*{box-sizing:border-box}html{background:#fff;-webkit-text-size-adjust:100%}body{margin:0;color:var(--g-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif;font-size:14px;line-height:1.6}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #f9ab7d;outline-offset:3px}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{color:inherit}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}button svg,a svg{pointer-events:none}[hidden]{display:none!important}.garage-defs{position:absolute;width:0;height:0;overflow:hidden}.g-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#drag-garage{max-width:1120px;margin:0 auto;padding:0 max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}.garage-header{display:flex;gap:12px;align-items:center;min-height:86px;padding-top:env(safe-area-inset-top);border-bottom:1px solid var(--g-line)}.g-icon-button{display:inline-flex;width:38px;height:44px;align-items:center;justify-content:center;border:0;background:none;flex:none}.garage-header h1{font-size:20px;line-height:1.35;margin:0;letter-spacing:-.5px}.g-brand{font-size:10px;color:var(--g-orange);font-weight:850;letter-spacing:.7px}.point-pill{margin-left:auto;display:flex;align-items:center;gap:8px;padding:8px 13px;border-radius:22px;background:var(--g-orange-soft);color:var(--g-orange-deep);white-space:nowrap}.point-pill>span{display:flex;align-items:center;justify-content:center;width:21px;height:21px;border-radius:50%;background:var(--g-orange);color:#fff;font-size:12px;font-weight:800}.point-pill strong{font-size:15px;font-variant-numeric:tabular-nums}
.garage-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:27px 0 22px}.g-eyebrow{font-size:10px;color:var(--g-orange);font-weight:800;letter-spacing:1.2px}.garage-topline h2{font-size:25px;line-height:1.45;letter-spacing:-1px;margin:3px 0}.garage-topline p{margin:0;font-size:13px;color:var(--g-muted)}.g-race-link{display:flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:8px 13px;background:var(--g-orange-soft);border:1px solid #ffd9c7;color:var(--g-orange-deep);border-radius:12px;font-weight:750;white-space:nowrap}.g-race-link svg{width:17px;height:17px}.garage-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}.garage-vehicle-column,.garage-shop-column{min-width:0}.garage-stage{position:relative;border:1px solid var(--g-line);border-radius:22px;overflow:hidden;background:linear-gradient(155deg,#fafafa,#eeeef0);padding:20px}.garage-stage-top,.garage-stage-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.garage-stage-top>span:first-child{font-size:11px;font-weight:800;letter-spacing:1.8px;color:#686f78}.g-chip{display:inline-flex;align-items:center;min-height:25px;padding:3px 9px;background:#fff;border-radius:7px;font-size:11px;color:var(--g-muted);font-weight:650;white-space:nowrap}.g-chip.preview{color:var(--g-orange-deep);background:#ffdfcb}.g-chip.light{background:var(--g-background);color:var(--g-muted)}.garage-car{position:relative;width:100%;margin:36px 0 23px;isolation:isolate}.garage-car:before{content:"";position:absolute;left:12%;right:5%;bottom:12%;height:12%;border-radius:50%;background:#75787d;opacity:.15;filter:blur(8px);z-index:-1}.garage-car>img{display:block;width:100%;height:auto}.race-wheel{position:absolute;top:68.75%;width:14%;aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;line-height:0}.race-wheel-rear{left:18.7%}.race-wheel-front{left:79.93%}.race-wheel .wheel-rim{display:block;width:100%;height:100%;stroke:none;stroke-width:0;transform-origin:center}.garage-stage-bottom small{display:block;color:var(--g-muted);font-size:10px}.garage-stage-bottom strong{display:block;font-size:12px;font-weight:650;line-height:1.6;word-break:keep-all}.g-small-button{background:#fff;border:1px solid #e0e2e6;border-radius:9px;min-height:38px;padding:6px 10px;font-size:11px;white-space:nowrap;flex:none}
.g-panel{border:1px solid var(--g-line);border-radius:17px;background:#fff;padding:18px}.performance-panel{margin-top:18px}.g-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.g-section-heading h2{font-size:16px;margin:0;letter-spacing:-.35px}.g-section-heading h3{font-size:17px;margin:3px 0 0;letter-spacing:-.35px;line-height:1.45}.performance-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.performance-table{width:100%;border-collapse:collapse;margin-top:14px;font-size:12px;table-layout:fixed;font-variant-numeric:tabular-nums}.performance-table th,.performance-table td{padding:11px 5px;text-align:right;border-bottom:1px solid #f0f1f4;vertical-align:middle}.performance-table thead th{font-weight:500;color:var(--g-muted);font-size:11px;padding:7px 5px;background:#fafbfc}.performance-table th:first-child{width:43%;text-align:left;padding-left:0}.performance-table tbody th{font-weight:650;font-size:12px;line-height:1.5}.performance-table th small{display:block;font-size:9px;font-weight:400;color:var(--g-muted);white-space:nowrap}.performance-table td.selected-column{font-weight:750;color:var(--g-orange-deep)}.performance-table td.better{color:var(--g-green)}.performance-table td.worse{color:#a45a38}.performance-table tr:last-child td,.performance-table tr:last-child th{border-bottom:0}.g-fineprint{font-size:11px;line-height:1.7;color:var(--g-muted);margin:12px 0 0;word-break:keep-all}.garage-rules{display:flex;align-items:flex-start;gap:8px;padding:16px 3px}.garage-rules>svg{width:18px;height:18px;color:var(--g-orange);margin-top:2px}.garage-rules p{font-size:12px;margin:0;line-height:1.7;word-break:keep-all}.garage-rules p span{font-size:11px;color:var(--g-muted)}
.shop-heading{margin:2px 0 16px}.shop-heading>span{font-size:11px;color:var(--g-muted)}.garage-categories{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.garage-categories::-webkit-scrollbar{display:none}.garage-categories button{display:flex;flex:1;min-width:57px;min-height:72px;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:13px;background:var(--g-background);font-size:11px;font-weight:600;white-space:nowrap;color:#6b737e}.garage-categories button svg{width:23px;height:23px}.garage-categories button[aria-pressed=true]{background:var(--g-orange-soft);border-color:#ffbb99;color:var(--g-orange-deep)}.slot-description{font-size:12px;color:var(--g-muted);margin:11px 0 15px;min-height:20px}.garage-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.garage-item{position:relative;border:1px solid var(--g-line);border-radius:14px;min-height:120px;background:#fff;padding:13px;text-align:left}.garage-item[aria-pressed=true]{border-color:var(--g-orange);box-shadow:inset 0 0 0 1px var(--g-orange);background:#fffaf7}.item-top{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:11px}.item-stage{color:var(--g-muted);font-size:10px;font-weight:750;letter-spacing:.6px}.item-state{font-size:10px;color:var(--g-muted);padding:2px 6px;border-radius:5px;background:#f3f4f6;white-space:nowrap}.item-state.equipped{color:var(--g-orange-deep);background:#ffeadf}.item-state.owned{color:var(--g-green);background:#edf8f1}.item-name{display:block;font-size:13px;line-height:1.4;font-weight:750}.item-price{display:block;margin-top:8px;font-size:11px;color:var(--g-muted)}.item-price.buyable{color:var(--g-orange-deep);font-weight:700}.paint-swatch{display:inline-block;width:25px;height:25px;border-radius:50%;box-shadow:inset 0 0 0 1px #00000015;vertical-align:middle;margin-right:7px;background:#ebb829}.paint-white{background:#eeeef0}.paint-red{background:#c94437}.paint-blue{background:#4376a6}.paint-graphite{background:#42464a}.garage-item .item-wheel{display:block;width:31px;height:31px;margin-right:5px;float:left;background:#252a30;border-radius:50%;border:3px solid #a9adb3}.garage-item .item-wheel.sport{background:repeating-conic-gradient(#d9dfe3 0deg 15deg,#252a30 15deg 72deg)}.garage-item .item-wheel.mesh{border-color:#bd9b66;background:repeating-conic-gradient(#bd9b66 0deg 5deg,#252a30 5deg 18deg)}
.selection-panel{margin-top:16px;background:#fffcfa;border-color:#ffe2d1}.selection-panel .g-section-heading>strong{color:var(--g-orange-deep);font-size:16px;white-space:nowrap}.selection-panel>p:not(.g-fineprint){font-size:12px;color:#656b75;margin:12px 0}.selection-note{font-size:12px;font-weight:600;color:var(--g-orange-deep);margin-bottom:14px;word-break:keep-all}.selection-actions{display:flex;gap:9px}.g-button{min-height:44px;border:1px solid transparent;border-radius:11px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:750;line-height:1.45;text-align:center}.selection-actions .g-button{flex:1;min-width:0}.g-button.primary{background:var(--g-orange);color:#fff;box-shadow:0 3px 8px #ef602d18}.g-button.outline{background:#fff;border-color:#efd2c4;color:var(--g-orange-deep)}.purchase-panel{margin-top:16px;background:#fff8f2;border-color:#ffbf9e}.purchase-panel h3,.pending-panel h3{font-size:17px;line-height:1.5;margin:4px 0 12px}.purchase-panel dl{margin:12px 0}.purchase-panel dl>div{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;padding:8px 0}.purchase-panel dt{color:#646b75}.purchase-panel dd{font-weight:750;margin:0;white-space:nowrap}.purchase-panel p,.pending-panel p{font-size:12px;color:#676f7a;word-break:keep-all}.pending-panel{margin-top:16px;border-color:#eebdaa;background:#fffaf6}.pending-panel .g-button{width:100%}.garage-status{color:var(--g-green);font-size:13px;min-height:24px;margin:15px 2px 0;word-break:keep-all}.garage-status.error{color:#b7452e}.garage-message{margin:16px 0;padding:13px 15px;background:#fff1e9;border:1px solid #ffd3bf;border-radius:12px;color:#a7411e;font-size:13px;word-break:keep-all}.garage-message a{display:inline-block;font-weight:750;margin-left:8px;text-decoration:underline}.garage-loading{grid-column:1/-1;color:var(--g-muted);background:var(--g-background);padding:28px 15px;border-radius:14px;text-align:center;font-size:13px;margin:0}.garage-footer{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:32px;padding:20px 0;border-top:1px solid var(--g-line);color:#737b87;font-size:11px;font-weight:800}.garage-footer span{font-size:8px;letter-spacing:1px;font-weight:500;color:#a1a6ae}
@media(max-width:760px){#drag-garage{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));max-width:520px}.garage-header{min-height:76px;gap:6px}.garage-header h1{font-size:18px}.garage-topline{padding-top:22px}.garage-topline h2{font-size:23px}.garage-topline p{font-size:12px}.garage-layout{display:flex;flex-direction:column;gap:14px}.garage-vehicle-column,.garage-shop-column{width:100%}.garage-stage{padding:17px;border-radius:19px}.garage-car{margin:25px 0 17px}.performance-panel{margin-top:13px;padding:16px}.garage-rules{padding-bottom:6px}.shop-heading{margin-top:5px}.garage-categories button{min-width:48px;min-height:67px;padding:8px 5px}.garage-categories{gap:5px}.garage-footer{margin-top:25px}.g-section-heading h2{font-size:15px}}
@media(max-width:360px){#drag-garage{padding-left:12px;padding-right:12px}.garage-topline h2{font-size:21px}.point-pill{padding:6px 9px;gap:5px}.garage-categories button{min-width:46px}.g-panel{padding:14px}.performance-table{font-size:11px}.performance-table tbody th{font-size:11px}.g-button{padding:10px 9px;font-size:12px}.garage-stage-bottom strong{font-size:11px}.garage-stage-bottom{gap:8px}.g-small-button{font-size:10px;padding:6px 7px}}
@media(prefers-reduced-motion:no-preference){.g-button,.garage-item,.garage-categories button,.g-race-link{transition:background-color .15s,border-color .15s,box-shadow .15s}.garage-car>img{transition:filter .2s}}

.selection-panel .selected-effect{font-size:12px!important;font-weight:750;color:var(--g-ink)!important;margin:8px 0 0!important}.performance-jump{display:inline-block;margin:5px 0 12px;color:var(--g-orange-deep);font-size:11px;font-weight:650;padding:5px 0}#performance-title{scroll-margin-top:20px}

/* Vehicle selection remains in the document flow on Android WebView. */
.garage-change-vehicle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-3px 0 16px;padding:10px 12px;border:1px solid #ebd8cd;border-radius:10px;background:#ffffffbd;color:var(--g-orange-deep);font-size:12px;font-weight:700;min-height:44px}.garage-change-vehicle span{font-size:18px}.garage-stage-top #garage-vehicle-name{color:var(--g-orange-deep);font-size:12px;letter-spacing:1px}

/* Ten tuning slots stay usable without tiny controls. */
.garage-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;overflow:visible}.garage-categories button{min-width:0;min-height:67px;padding:8px 3px}.garage-stage-bottom strong{max-width:305px}.performance-table th:first-child{width:43%}@media(max-width:360px){.garage-categories{gap:5px}.garage-categories button{min-width:0;font-size:10px}.garage-categories button svg{width:21px;height:21px}}
