/* The garage is a fixed, full-viewport layer and it scrolls now. `inset:0`
   measures the large viewport - the one with the phone's address bar hidden -
   so with the bar showing the layer is taller than the screen and the whole
   thing drags around under your thumb. dvh is the viewport you can actually
   see, so it cannot. vh first for anything that does not know dvh. */
#garage.garage-refresh{height:100vh;height:100dvh;width:100%;max-width:100%;font-family:system-ui,sans-serif;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:0 0 env(safe-area-inset-bottom);background:linear-gradient(0deg,#05121bd9,transparent 65%);color:#e9f6ff}
html,body{width:100%;max-width:100%;overscroll-behavior-x:none}
@media(max-width:650px){#garage.garage-refresh .garage-bottom{left:0;right:auto;min-width:0}#garage.garage-refresh .garage-identity{min-width:0}#garage.garage-refresh #playerName{max-width:min(30vw,140px)}}
#garage.garage-refresh .brand{color:#f1f8ff}#garage.garage-refresh #sledTag{color:#c9e6f6}#garage.garage-refresh #sledDetail{color:#d1e6f3}#garage.garage-refresh .stat strong{color:#effaff}#garage.garage-refresh .modes i{display:none}#garage.garage-refresh .modes a,#garage.garage-refresh .modes button{clip-path:none;flex-direction:row}#garage.garage-refresh .drag-track-picker label{flex:0 0 78px;max-width:78px;white-space:normal;font:800 10px/1.5 system-ui,sans-serif}#garage.garage-refresh #garageCredits{display:flex;flex-direction:column;gap:2px;padding:8px 12px;background:#071e2dcc;border:1px solid #547285;border-radius:7px}#garage.garage-refresh .garage-launch-actions button{clip-path:none}#garage.garage-refresh #start{gap:4px}#garage.garage-refresh #start .primary-go{display:none}
.garage-refresh .masthead{position:relative;display:block;padding:20px 30px;gap:0}.garage-identity{display:flex;align-items:center;gap:18px}.garage-refresh .brand{font-family:system-ui,sans-serif;letter-spacing:.3px;font-size:22px}.garage-refresh #playerName{display:block;max-width:200px;min-width:44px;min-height:44px;font-size:13px;margin:0;border:1px solid #6e8d9f;background:#132b3be8;color:#d7edff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.garage-refresh #playerName[hidden]{display:none}.garage-refresh #garageCredits{margin-left:auto;display:block;min-width:95px}.garage-refresh #garageCredits small{font-size:10px;color:#d6e7f1}.garage-refresh #garageCredits strong{font:800 19px/1.3 system-ui,sans-serif;color:#e1ffbd}.garage-refresh .garage-options{display:flex;gap:8px;margin-top:12px;justify-content:flex-end}.garage-refresh .garage-options button{min-height:44px;min-width:44px;font:800 12px/1.2 system-ui,sans-serif;background:#0b2235e8;border:1px solid #5a7d93;padding:10px 14px;border-radius:7px}.garage-refresh #inspect{pointer-events:none;cursor:default;touch-action:auto}.garage-refresh .garage-bottom{gap:20px}.garage-refresh .sled-info,.garage-refresh .garage-actions{padding:20px;background:#0b2132f2;border:1px solid #5a7689;border-radius:12px}.garage-refresh #sledName{font:800 28px/1.15 system-ui,sans-serif;color:#fff;letter-spacing:-.5px}.garage-refresh .sled-heading{gap:8px}.garage-refresh .sled-heading button{min-height:44px;min-width:44px;border:1px solid #5e859c;background:#213b4f;color:#fff;border-radius:7px}.garage-refresh #stats{margin-top:14px}.garage-refresh .stat{font-size:11px;color:#c6deee}.garage-refresh .stat strong{font:800 17px/1.4 system-ui,sans-serif;color:#e7f6ff}.garage-refresh .modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 12px}.garage-refresh .modes a,.garage-refresh .modes button{min-height:54px;min-width:44px;font:800 12px/1.25 system-ui,sans-serif;background:#1c384b;padding:10px 6px;border:1px solid #64869b;color:#e6f7ff;border-radius:7px;display:flex;align-items:center;justify-content:center;text-align:center;gap:4px}.garage-refresh .modes [aria-pressed=true]{color:#daff9b;background:#264b42;border-color:#b5ef91}.garage-refresh .modes .mode-no{display:none}.garage-refresh .drag-track-picker{display:flex;align-items:center;gap:10px;margin:0 0 12px;position:static}.garage-refresh .drag-track-picker label{font-size:11px;max-width:90px;color:#cfe6f5;line-height:1.5}.garage-refresh .drag-track-picker select{min-height:48px;width:100%;flex:1;background:#eaf4fb;color:#132b39;border:1px solid #82a4b9;font:700 13px system-ui,sans-serif;border-radius:7px;padding:7px;min-width:0}.garage-launch-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.garage-refresh #start,.garage-refresh #testTune{width:100%;height:58px;min-height:58px;font:900 13px/1.3 system-ui,sans-serif;border-radius:8px;margin:0;padding:10px;display:flex;justify-content:center;align-items:center;gap:6px}.garage-refresh #start{color:#102519;background:linear-gradient(125deg,#d5ff91,#9ce5b0);border:1px solid #e2ffb9}.garage-refresh #testTune{background:#233d52;border:1px solid #829bad;color:#fff;flex-direction:column;gap:2px}.garage-refresh #testTune small{font-size:10px;color:#c4dfef}.garage-refresh #challengesOpen{min-height:44px;margin:0 0 12px;border:1px solid #526f82;background:#132f44;font-size:11px}.garage-refresh .daily-best{position:static;display:grid;grid-template-columns:1fr auto;padding:12px 14px;margin:0 0 14px;border:1px solid #c3df82;background:linear-gradient(130deg,#183a35,#162b39);border-radius:9px;gap:4px 12px}.garage-refresh .daily-best[hidden]{display:none}.garage-refresh .daily-best-crown{font:800 10px/1.4 system-ui,sans-serif;color:#e0ffad;letter-spacing:.5px}.garage-refresh #dailyBestTime{font:900 24px/1 system-ui,sans-serif;color:#f5ffd9;grid-column:2;grid-row:1/3}.garage-refresh #dailyBestWho{font:700 11px/1.4 system-ui,sans-serif;color:#d1e8f6;white-space:normal}.daily-pass-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}.daily-pass-actions button{min-height:44px;min-width:44px;font:800 12px system-ui,sans-serif;color:#f4ffde;border:1px solid #708e6d;background:#244438;border-radius:6px}.garage-settings-window{max-width:540px;width:calc(100vw - 28px);padding:22px;border:1px solid #7593a7;background:#102839;font-family:system-ui,sans-serif;border-radius:14px}.garage-settings-window header{display:flex;align-items:center;justify-content:space-between;gap:12px}.garage-settings-window h2{font-size:28px;margin:6px 0}.garage-settings-window section{border-top:1px solid #52738b;margin-top:20px;padding-top:10px}.garage-settings-window h3{font-size:18px}.garage-settings-window p{font-size:14px;line-height:1.6;color:#d4e5ef}.garage-settings-window button{min-height:48px;min-width:44px;padding:12px 18px;background:#2b4c63;border:1px solid #90b1c5;color:#fff;font:800 13px system-ui,sans-serif;border-radius:7px}.garage-refresh button:focus-visible,.garage-refresh a:focus-visible{outline:3px solid #ffdf8e;outline-offset:2px}
@media(max-width:650px){.garage-refresh .masthead{padding:14px 14px 0;background:linear-gradient(#071925ee,#07192577)}.garage-identity{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px}/* One row: the game, who you are, what you have. The brand takes the
   flexible column and wraps inside it on a narrow phone rather than
   pushing the other two onto a line of their own. */.garage-refresh .brand{grid-column:1;grid-row:1;font-size:14px;line-height:1.2;max-width:none;white-space:normal;min-width:0;overflow-wrap:anywhere}.garage-refresh #playerName{grid-column:2;grid-row:1;font-size:12px;min-height:44px;height:44px;width:fit-content;max-width:38vw;padding:8px 10px}.garage-refresh #garageCredits{grid-column:3;grid-row:1;min-width:76px;text-align:right}.garage-refresh #garageCredits strong{font-size:18px}.garage-refresh .garage-options{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:6px;margin-top:9px}.garage-refresh .garage-options button{font-size:10px;padding:8px 4px;letter-spacing:0;width:100%}.garage-refresh #inspect{position:relative;inset:auto!important;height:256px;width:calc(100% - 28px);margin:0 14px}.garage-refresh .reference-card,.garage-refresh .edition{display:none}.garage-refresh .garage-bottom{position:relative;inset:auto;padding:0 14px 16px;display:flex;flex-direction:column;gap:10px;width:100%;margin:0;transform:none}.garage-refresh .sled-info,.garage-refresh .garage-actions{width:100%;padding:12px}.garage-refresh .sled-info{flex:none}.garage-refresh .sled-heading{display:grid;grid-template-columns:44px minmax(0,1fr) 44px 44px;gap:6px}.garage-refresh #sledName{font-size:19px;white-space:normal;line-height:1.15}.garage-refresh #sledIndex{font-size:10px;letter-spacing:.5px;margin-bottom:7px}.garage-refresh #sledTag{font:700 11px/1.4 system-ui,sans-serif;margin-top:6px}.garage-refresh #sledDetail{display:none}.garage-refresh #stats{margin:9px 0 0;gap:8px}.garage-refresh .stat{font-size:10px}.garage-refresh .stat strong{font-size:14px}.garage-refresh .modes a,.garage-refresh .modes button{font-size:11px;min-height:50px}.garage-refresh #challengesOpen{font-size:11px;margin-bottom:10px}.garage-refresh .drag-track-picker{gap:8px;margin-bottom:10px}.garage-refresh .drag-track-picker select{font-size:11px}.garage-refresh .garage-actions{flex:none}.garage-refresh #start,.garage-refresh #testTune{height:54px;min-height:54px;font-size:12px}.garage-refresh .hint{display:none}.garage-refresh .daily-best{margin-bottom:10px}.garage-refresh .service-card{font-size:12px}.garage-settings-window{padding:18px}}
@media (max-height:600px) and (min-width:651px){#garage.garage-refresh .masthead{position:relative;inset:auto;padding:12px 18px;z-index:1}#garage.garage-refresh .garage-bottom{position:relative!important;inset:auto!important;transform:none!important;margin:20px 18px;display:grid;grid-template-columns:1fr 1fr;align-items:start;width:calc(100% - 36px);height:auto;max-height:none;padding:0}#garage.garage-refresh .garage-actions,#garage.garage-refresh .sled-info{position:static;width:100%;max-width:none;min-width:0}#garage.garage-refresh #inspect{height:170px;position:relative;inset:auto!important;width:70%;margin:0 auto}}
/* A quickest-today that only exists on this phone is not a board record,
   and must not look like one. */
.garage-refresh .daily-best.local-only{border-color:#d9b36a}
.garage-refresh .daily-best.local-only .daily-best-crown{color:#ffd79a}
/* Signed out: nothing ridden in this state can reach the board, so it has
   to read as a warning rather than as a name. */
.garage-refresh #playerName.signed-out{border-color:#d9a06a;color:#ffd0a6;background:#2a1d14e8}

