:root{--u:clamp(50px, 11vmin, 92px);--edge:calc(var(--u) * .34);--glass:#080a1294;--line:#ffffff57;--pad:24px;--mapSize:176px;--toolSize:40px;--t2:#ffffffb8;--t3:#ffffff7a;--card:#0e1016bd;--cardEdge:inset 0 0 0 1px #ffffff1a;--cardShadow:0 12px 32px #00000073}html,body{overscroll-behavior:none;touch-action:none;background:#05070d;height:100%;margin:0;overflow:hidden}body{color:#fff;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;font-family:PingFang HK,PingFang TC,Heiti TC,system-ui,sans-serif}canvas{display:block}button{font:inherit;color:inherit;cursor:pointer;touch-action:none;background:0 0;border:0;margin:0;padding:0}.icon{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:22px;height:22px}#trip,#toast,#menu,#nextTurn,#signalCountdown,#tools button,#forHire,#keys,.tripAsks button,#reviewTrip{background:var(--card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--cardEdge), var(--cardShadow)}@keyframes cardIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){#trip.open #tripDetail,#toast.show,#menu,#nextTurn{animation:none}#alert,#keys,#forHire,#forHire i{transition:none}}#hudLeft{left:var(--pad);top:var(--pad);max-width:min(380px, calc(100vw - var(--mapSize) - var(--pad) * 3));flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:fixed}#street{letter-spacing:.06em;text-shadow:0 1px 12px #000;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:22px;font-weight:600;line-height:1.2;overflow:hidden}#street:empty{display:none}.statusRow{align-items:center;gap:10px;min-width:0;display:flex}#forHire{border-radius:12px;flex-shrink:0;align-items:center;gap:7px;height:30px;padding:0 12px 0 10px;font-size:14px;font-weight:500;transition:color .16s ease-out;display:inline-flex}#forHire i{background:#35ffa0;border-radius:50%;width:8px;height:8px;transition:background .16s ease-out,box-shadow .16s ease-out;box-shadow:0 0 8px #35ffa0cc}#forHire[aria-pressed=false]{color:var(--t2)}#forHire[aria-pressed=false] i{background:var(--t3);box-shadow:none}#forHire:disabled{opacity:.5;cursor:default}#wallet{color:var(--t2);font-variant-numeric:tabular-nums;text-shadow:0 1px 8px #000;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}#orderStack{flex-direction:column;align-items:flex-start;gap:8px;max-width:100%;display:flex}#trip{border-radius:18px;max-width:100%;overflow:hidden}#trip[data-phase=waiting]{display:none}#trip.offer{width:300px}#tripCapsule{box-sizing:border-box;white-space:nowrap;text-align:left;touch-action:manipulation;align-items:baseline;gap:10px;max-width:100%;padding:9px 15px;display:flex}#trip.offer #tripCapsule{pointer-events:none;padding-top:12px}#tripKind{letter-spacing:.12em;flex-shrink:0;font-size:12px;font-weight:600}#tripStreet{text-overflow:ellipsis;min-width:0;font-size:14px;font-weight:600;overflow:hidden}#tripMeta{color:var(--t2);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:14px}#tripFare{font-variant-numeric:tabular-nums;flex-shrink:0;font-size:14px;font-weight:600}#tripStreet:empty,#tripMeta:empty,#tripFare:empty{display:none}#tripDetail{padding:0 15px 13px;display:none}#trip.open #tripDetail{animation:.24s ease-out cardIn;display:block}#offerRoute,#offerStats{display:none}#trip.offer #offerRoute{grid-template-rows:auto auto;grid-template-columns:12px minmax(0,1fr);gap:9px 11px;margin-top:4px;display:grid}#offerRoute svg{grid-row:1/3;width:12px;height:100%;min-height:46px}#offerRoute strong{text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:600;line-height:1.25;display:block;overflow:hidden}#offerRoute small{color:var(--t3);font-size:12px;display:block}#offerRoute small:empty{display:none}#trip.offer #offerStats{font-variant-numeric:tabular-nums;gap:20px;margin:12px 0 2px;display:flex}#offerStats b{font-size:17px;font-weight:600}#offerStats small{color:var(--t2);margin:0 3px;font-size:12px}#tripAddr,#tripHint{color:var(--t2);letter-spacing:.04em;margin-top:4px;font-size:12px;display:block}#tripAddr:empty,#tripHint:empty,#trip.offer #tripAddr{display:none}.srOnly{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}#meter{background:#100809;border-radius:8px;margin-top:7px;padding:9px 10px 7px;box-shadow:inset 0 1px 4px #000,0 0 0 1px #493033}#meter[hidden],.meterDigit[hidden]{display:none}.meterFace{color:#ff5a4f;justify-content:center;align-items:baseline;gap:8px;display:flex}.meterFace>span:first-child{font-size:13px}#meterDigits{gap:5px;padding-right:2px;display:flex}.meterDigit{width:15px;height:27px;display:inline-block;position:relative}.meterDigit i{opacity:.09;background:#ff5a4f;border-radius:1px;display:block;position:absolute}.meterDigit .a,.meterDigit .d,.meterDigit .g{clip-path:polygon(0 50%,15% 0,85% 0,100% 50%,85% 100%,15% 100%);width:11px;height:3px;left:2px}.meterDigit .a{top:0}.meterDigit .g{top:12px}.meterDigit .d{bottom:0}.meterDigit .b,.meterDigit .c,.meterDigit .e,.meterDigit .f{clip-path:polygon(50% 0,100% 15%,100% 85%,50% 100%,0 85%,0 15%);width:3px;height:10px}.meterDigit .b{top:2px;right:0}.meterDigit .c{bottom:2px;right:0}.meterDigit .f{top:2px;left:0}.meterDigit .e{bottom:2px;left:0}.meterDigit[data-dot=true]{margin-right:4px}.meterDigit[data-dot=true]:after{content:"";background:#ff5a4f;width:3px;height:3px;position:absolute;bottom:0;right:-5px}.meterDigit:is([data-digit="0"],[data-digit="2"],[data-digit="3"],[data-digit="5"],[data-digit="6"],[data-digit="7"],[data-digit="8"],[data-digit="9"]) .a,.meterDigit:is([data-digit="0"],[data-digit="1"],[data-digit="2"],[data-digit="3"],[data-digit="4"],[data-digit="7"],[data-digit="8"],[data-digit="9"]) .b,.meterDigit:is([data-digit="0"],[data-digit="1"],[data-digit="3"],[data-digit="4"],[data-digit="5"],[data-digit="6"],[data-digit="7"],[data-digit="8"],[data-digit="9"]) .c,.meterDigit:is([data-digit="0"],[data-digit="2"],[data-digit="3"],[data-digit="5"],[data-digit="6"],[data-digit="8"],[data-digit="9"]) .d,.meterDigit:is([data-digit="0"],[data-digit="2"],[data-digit="6"],[data-digit="8"]) .e,.meterDigit:is([data-digit="0"],[data-digit="4"],[data-digit="5"],[data-digit="6"],[data-digit="8"],[data-digit="9"]) .f,.meterDigit:is([data-digit="2"],[data-digit="3"],[data-digit="4"],[data-digit="5"],[data-digit="6"],[data-digit="8"],[data-digit="9"]) .g{opacity:1}#meterTravel{font-variant-numeric:tabular-nums;opacity:.8;margin-top:6px;font-size:12px;display:block}#meter.tick{animation:.25s ease-out meterTick}@keyframes meterTick{0%{filter:brightness(1.6)}to{filter:brightness()}}@media (prefers-reduced-motion:reduce){#meter.tick{animation:none}}#tripActions{align-items:center;gap:12px;margin-top:14px;display:none}#trip.offer #tripActions{display:flex}#tripActions button{letter-spacing:.1em;touch-action:manipulation;border-radius:12px;height:44px;font-weight:700}#acceptBtn{--left:1;color:#04140c;background:#35ffa0;flex:1.7;font-size:17px;position:relative}#acceptBtn:before{content:"";pointer-events:none;background:conic-gradient(#ffd60a calc(var(--left) * 360deg), #ffffff1f 0);-webkit-mask-composite:xor;border-radius:15px;padding:2.5px;position:absolute;inset:-4px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}#declineBtn{color:var(--t2);background:#ffffff12;flex:1;font-size:14px;box-shadow:inset 0 0 0 1px #ffffff1a}.tripAsks{gap:8px;display:flex}.tripAsks button{touch-action:manipulation;border-radius:12px;padding:7px 12px;font-size:14px;font-weight:500}#confirmDestination[hidden],#askReroute[hidden]{display:none}#toast{box-sizing:border-box;pointer-events:none;border-radius:12px;max-width:320px;padding:9px 13px;font-size:14px;line-height:1.4;display:none;position:relative}#toast:before{content:"";background:var(--card);clip-path:polygon(50% 0,100% 100%,0 100%);width:12px;height:6px;position:absolute;top:-6px;left:20px}#toast.show{animation:.16s ease-out cardIn;display:block}#alert{left:50%;top:var(--pad);color:#fff;box-shadow:var(--cardShadow);opacity:0;pointer-events:none;white-space:nowrap;background:#ff5a4f;border-radius:8px;padding:6px 12px;font-size:14px;font-weight:600;transition:opacity .16s ease-out,transform .16s ease-out;position:fixed;transform:translate(-50%,-6px)}#alert.show{opacity:1;transform:translate(-50%)}#reviewTrip{color:#ff5a4f;touch-action:manipulation;border-radius:12px;padding:6px 11px;font-size:12px;font-weight:500}#hudRight{right:var(--pad);top:var(--pad);flex-direction:column;align-items:flex-end;gap:24px;display:flex;position:fixed}#mapFrame{width:var(--mapSize);height:var(--mapSize);position:relative}#map{cursor:pointer;border-radius:50%;width:100%;height:100%;box-shadow:0 0 0 1.5px #ffffff47,0 8px 30px #00000080}#nextTurn{white-space:nowrap;border-radius:12px;align-items:baseline;gap:7px;padding:5px 11px;font-size:14px;animation:.16s ease-out cardIn;display:flex;position:absolute;top:calc(100% - 14px);left:50%;translate:-50%}#nextTurn[hidden]{display:none}#nextTurn b{font-size:17px;font-weight:700;line-height:1}#nextTurn span:first-of-type{font-variant-numeric:tabular-nums;font-weight:600}#nextTurn span:empty{display:none}#tools{align-items:center;gap:8px;display:flex}#tools button{width:var(--toolSize);height:var(--toolSize);border-radius:12px;place-items:center;transition:background .16s ease-out;display:grid}#tools button[aria-pressed=true],#tools button[aria-expanded=true]{background:#fff3}#tools button:disabled{opacity:.4;cursor:default}#signalCountdown{font-variant-numeric:tabular-nums;border-radius:8px;align-items:center;height:28px;padding:0 10px;font-size:12px;display:flex}#signalCountdown[hidden]{display:none}#menu{right:var(--pad);top:calc(var(--pad) * 2 + var(--mapSize) + var(--toolSize) + 8px);width:244px;max-height:calc(100% - var(--pad) * 3 - var(--mapSize) - var(--toolSize) - 8px);box-sizing:border-box;touch-action:pan-y;border-radius:18px;padding:6px;animation:.24s ease-out cardIn;position:fixed;overflow-y:auto}#menu[hidden],.menuList[hidden]{display:none}.menuItem,.menuBack{box-sizing:border-box;text-align:left;touch-action:manipulation;border-radius:12px;align-items:center;gap:12px;width:100%;height:42px;padding:0 12px;font-size:14px;font-weight:500;transition:background .16s ease-out;display:flex}.menuItem:hover,.menuItem:focus-visible,.menuBack:hover{background:#ffffff12;outline:0}.menuItem:disabled{opacity:.4;cursor:default;background:0 0}.menuItem .state{color:var(--t3);margin-left:auto;font-size:12px}.menuItem[aria-pressed=true] .state{color:#fff}#practice .state:after{content:"關"}#practice[aria-pressed=true] .state:after{content:"開"}.menuBack{gap:6px;font-weight:600}.keyHelp{margin:2px 12px 8px;font-size:13px}.keyHelp div{justify-content:space-between;gap:12px;padding:5px 0;display:flex}.keyHelp dt{font-variant-numeric:tabular-nums;font-weight:600}.keyHelp dd{color:var(--t2);text-align:right;margin:0}.keyHelp .icon{vertical-align:-4px;width:18px;height:18px}.menuCredits{color:var(--t2);padding:0 12px 10px;font-size:12px;line-height:1.5}.menuCredits p{margin:4px 0}.menuCredits a{color:#fff}.ctl{transition:transform 80ms,filter .12s;position:fixed}#wheel{left:var(--edge);bottom:var(--edge);width:calc(var(--u) * 2.3);height:calc(var(--u) * 2.3);cursor:grab;filter:drop-shadow(0 10px 16px #0009);border-radius:50%}#wheel.on{filter:drop-shadow(0 10px 16px #0009)brightness(1.12)}#wheel svg{width:100%;height:100%;display:block;overflow:visible}.pedal{border-radius:calc(var(--u) * .16);background:linear-gradient(155deg,#eef1f4 0%,#a9afb8 36%,#7b818a 62%,#c9ced5 100%);box-shadow:inset 0 1px #ffffffd9,inset 0 -4px 7px #00000061,0 0 0 1.5px #22252a,0 9px 18px #0000008c}.pedal:before{content:"";filter:drop-shadow(0 1px #fff6);background:repeating-linear-gradient(0deg,#0f1114 0 6px,#0000 6px 15px);border-radius:5px;position:absolute;inset:11% 14%}.pedal.on{filter:brightness(.74);transform:translateY(4px)scale(.975)}#gasPedal{right:var(--edge);bottom:var(--edge);width:calc(var(--u) * .95);height:calc(var(--u) * 2.15)}#brakePedal{right:calc(var(--edge) + var(--u) * 1.25);bottom:var(--edge);width:calc(var(--u) * 1.5);height:calc(var(--u) * 1.15)}#handbrake{right:calc(var(--edge) + var(--u) * 1.6);bottom:calc(var(--edge) + var(--u) * 1.42);width:calc(var(--u) * .8);height:calc(var(--u) * .8);color:#ff5a4f;background:radial-gradient(circle at 35% 26%,#41444c,#0c0d10 72%);border-radius:50%;box-shadow:0 0 0 2px #5d626a,0 0 0 3.5px #15171a,0 7px 14px #0000008c}#handbrake.on{color:#fff;background:radial-gradient(circle at 35% 26%,#ff8f85,#cf2a20 72%);box-shadow:0 0 0 2px #ffb4ad,0 0 0 3.5px #15171a,0 0 20px #ff463cd9}#handbrake svg{width:60%;height:60%;margin:20%;display:block}#cluster{left:calc(var(--edge) + var(--u) * 3.86);bottom:calc(var(--edge) + 2px);pointer-events:none;align-items:center;gap:10px;display:flex;position:fixed}#speed{font-variant-numeric:tabular-nums;text-shadow:0 2px 18px #000;white-space:nowrap;font-size:36px;font-weight:700;line-height:1}#speed small{color:var(--t2);margin-left:4px;font-size:12px;font-weight:500}#speedLimit{color:#111;font-variant-numeric:tabular-nums;background:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:14px;font-weight:700;transition:background .16s ease-out,color .16s ease-out;display:grid;box-shadow:inset 0 0 0 3.5px #ff5a4f,0 2px 10px #00000080}#speedLimit.over{color:#fff;background:#ff5a4f;box-shadow:inset 0 0 0 3px #fff,0 0 16px #ff5a4fbf}#gears{--gh:calc(var(--u) * .5);--slot:3;left:calc(var(--edge) + var(--u) * 2.62);bottom:var(--edge);width:calc(var(--u) * 1.05);grid-template-rows:repeat(4, var(--gh));border-radius:calc(var(--u) * .2);background:linear-gradient(#1f2126,#07080a);padding:7px 0;display:grid;position:fixed;box-shadow:inset 0 1px #ffffff24,0 0 0 1px #50545c,0 0 0 2.5px #111216,0 9px 18px #0000008c}#gears:before{content:"";top:calc(7px + var(--gh) * .5 - 5px);bottom:calc(7px + var(--gh) * .5 - 5px);background:#000;border-radius:5px;width:10px;margin-right:-5px;position:absolute;right:27%;box-shadow:inset 0 2px 4px #000,0 1px #fff3}#gears:after{content:"";z-index:2;pointer-events:none;right:27%;top:calc(7px + var(--gh) * (var(--slot) + .5));width:calc(var(--u) * .44);height:calc(var(--u) * .44);background:radial-gradient(circle at 36% 28%,#fff,#bcc2cb 36%,#5f656e 76%,#2a2d32);border-radius:50%;transition:top .18s cubic-bezier(.3,1.35,.5,1);position:absolute;transform:translate(50%,-50%);box-shadow:0 4px 9px #000c,inset 0 -2px 3px #00000059}#gears button{z-index:1;text-align:left;font-size:calc(var(--u) * .3);color:#5b616a;padding-left:20%;font-weight:800;transition:color .15s,text-shadow .15s;position:relative}#gears button.on{color:#fff;text-shadow:0 0 10px #ff5a4ff2,0 0 2px #ff5a4fe6}#gears button.refuse{color:#ff5a4f}#gears{cursor:grab;touch-action:none}#gears.dragging{cursor:grabbing}#gears.dragging:after{transition:none}#keys{left:50%;bottom:calc(var(--edge) + 6px);color:var(--t2);white-space:nowrap;pointer-events:none;border-radius:8px;padding:7px 12px;font-size:12px;transition:opacity .24s ease-out,visibility .24s;position:fixed;transform:translate(-50%)}#keys.hide{opacity:0;visibility:hidden}#credit{color:var(--t3);white-space:nowrap;text-shadow:0 1px 4px #000;font-size:10px;position:fixed;bottom:3px;left:8px}#credit button{font-size:inherit;color:inherit;text-underline-offset:2px;touch-action:manipulation;text-decoration:underline}#error{text-align:center;white-space:pre-wrap;place-items:center;padding:32px;font-size:15px;display:none;position:fixed;inset:0}@media (hover:none){#keys{display:none}}@media (width<=760px),(height<=480px){:root{--pad:12px;--mapSize:104px;--toolSize:34px}#hudLeft{gap:6px}#hudRight{gap:20px}#street{font-size:17px}#forHire{height:28px;font-size:13px}#trip.offer{width:280px}#tripCapsule{gap:8px;padding:8px 13px}#trip.offer #tripCapsule{padding-top:10px}#tripDetail{padding:0 13px 11px}#offerRoute strong{font-size:14px}#trip.offer #offerRoute{row-gap:5px;margin-top:2px}#offerRoute svg{min-height:36px}#trip.offer #offerStats{gap:16px;margin:8px 0 0}#offerStats b{font-size:14px}#trip.offer #tripActions{margin-top:11px}#tripActions button{height:36px}#acceptBtn{font-size:15px}#nextTurn{padding:4px 9px;font-size:13px;left:auto;right:0;translate:none}#nextTurn b{font-size:15px}#toast{max-width:280px;font-size:13px}#alert{font-size:13px}#tools .icon{width:20px;height:20px}}@media (height<=480px){#trip.offer{width:372px}#trip.offer #tripDetail{grid-template-columns:minmax(0,1fr) 112px;align-items:start;column-gap:14px;display:grid}#trip.offer #tripDetail>*{grid-column:1}#trip.offer #tripActions{flex-direction:column;grid-area:1/2/span 4;align-self:center;gap:10px;margin:0}#trip.offer #tripActions button{flex:none;width:100%}#trip.offer #declineBtn{height:30px}#menu{top:var(--pad);right:calc(var(--pad) + var(--mapSize) + 10px);max-height:calc(100% - var(--pad) * 2)}.menuItem,.menuBack{height:37px}}@media (aspect-ratio<=4/5){#hudLeft{max-width:calc(100vw - var(--mapSize) - var(--pad) * 3)}#orderStack{left:var(--pad);right:var(--pad);top:calc(var(--pad) * 2 + var(--mapSize) + var(--toolSize) + 22px);position:fixed}#trip.offer{width:100%}#cluster{left:50%;bottom:calc(var(--edge) + var(--u) * 2.5);transform:translate(-50%)}#menu{width:calc(100vw - var(--pad) * 2);max-width:300px}}#planner [aria-pressed=true]{color:#35ffa0;box-shadow:inset 0 0 0 1px #35ffa0}#planner{color:#fff;background:#0b0e14;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}body:has(#planner[open]) #app>:not(#planner){visibility:hidden}#mapCredit{opacity:.45;white-space:nowrap;pointer-events:none;font-size:9px;position:absolute;bottom:4px;left:8px}#planner::backdrop{background:0 0}#atlas{touch-action:none;cursor:grab;width:100%;height:100%}#atlas:active{cursor:grabbing}#atlas:focus-visible{outline:1px solid var(--line);outline-offset:-2px}#atlas:focus-visible+#aim{display:block}#aim{pointer-events:none;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#closeMap,#planBar,#planAlert{background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;position:absolute;box-shadow:inset 0 0 0 1px #ffffff38}#closeMap{right:var(--edge);top:var(--edge);border-radius:50%;width:42px;height:42px;font-size:19px}#planBar{bottom:max(12px,env(safe-area-inset-bottom));text-align:center;width:max-content;max-width:calc(100% - 36px);padding:10px;left:50%;transform:translate(-50%)}#planStats{font-variant-numeric:tabular-nums;margin-bottom:7px;font-size:14px;display:block}#planBar button{background:#ffffff1f;border-radius:9px;padding:8px;font-weight:600}#planBar button:disabled{opacity:.4}#planBar #usePlan{color:#04140c;background:#35ffa0}#planAlert{padding:8px 14px;top:12%;left:50%;transform:translate(-50%)}#planAlert:empty{display:none}@media (width<=430px){#planBar button{font-size:13px}}.placePanel{box-sizing:border-box;background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);touch-action:pan-y;border-radius:16px;width:max-content;max-width:min(400px,100% - 88px);max-height:calc(100% - 96px);padding:14px 16px;position:absolute;top:16px;left:16px;overflow-y:auto;box-shadow:inset 0 0 0 1px #ffffff38}.placePanel strong,.placePanel span{display:block}.placePanel strong{font-size:20px;line-height:1.4}.placePanel span{opacity:.85;margin:4px 0;font-size:14px}.placePanel button,.placePanel select{font:inherit;color:#fff;background:#ffffff1f;border:0;border-radius:9px;padding:8px 10px}.placePanel option{color:#fff;background:#11151e}.placePanel button{margin-top:8px}.placePanel ol{padding-left:20px;font-size:14px}.placeActions{gap:8px;display:flex}.studyDrive{flex-wrap:wrap;align-items:baseline;gap:6px;margin-top:12px;display:flex}.studyDrive select{min-width:0;max-width:100%}#driveToPlace{color:#04140c;background:#35ffa0}#planBar [hidden]{display:none}#planBar button{margin:2px 0}@media (height<=480px){.placePanel{max-width:290px;padding:10px 14px}.placePanel strong{font-size:17px}}#ruleReview{box-sizing:border-box;color:#fff;background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:min(360px,100% - 48px);max-height:calc(100% - 48px);box-shadow:inset 0 0 0 1px var(--line);touch-action:pan-y;border:0;border-radius:16px;padding:22px;overflow:auto}#ruleReview::backdrop{background:#000000a6}#ruleReview strong{font-size:20px}#ruleReview p{opacity:.8;font-size:14px}#ruleReview svg{width:100%;max-height:220px;display:block}#ruleReview button{background:#ffffff1f;border-radius:8px;padding:8px 10px}#ruleReview button:disabled{opacity:.35}#ruleReview .placeActions{justify-content:space-between;align-items:center;margin-top:10px}#ruleReview .reviewClose{background:0 0;position:absolute;top:8px;right:8px}@media (height<=480px){#ruleReview svg{max-height:140px}}#shiftSummary{box-sizing:border-box;color:#fff;background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:min(380px,100% - 32px);max-height:calc(100% - 32px);box-shadow:inset 0 0 0 1px var(--line);touch-action:pan-y;border:0;border-radius:16px;padding:22px;overflow-y:auto}#shiftSummary::backdrop{background:#000000a6}#shiftSummary>strong{font-size:22px}#shiftSummary dl{font-variant-numeric:tabular-nums;margin:16px 0}#shiftSummary dl>div{justify-content:space-between;gap:16px;padding:7px 0;display:flex}#shiftSummary dt{opacity:.75;flex-shrink:0}#shiftSummary dd{text-align:right;overflow-wrap:anywhere;margin:0}#shiftSummary button{background:#ffffff1f;border-radius:9px;padding:10px 12px}#shiftSummary button:disabled{opacity:.4;cursor:default}#shiftSummary .placeActions>button{flex:1}#shiftSummary #endShift:not(:disabled){color:#04140c;background:#35ffa0}#shiftSummary #resetRecords{color:#ff5a4f;margin-top:14px;font-size:13px}#shiftSummary p{color:#ff5a4f;font-size:13px}@media (height<=480px){#shiftSummary dl>div{padding:4px 0}}#signalCountdown:before{content:"";background:#35ffa0;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}#signalCountdown[data-state=red]:before{background:#ff5a4f}#signalCountdown[data-state=amber]:before{background:#ffd60a}body:has(#garage[open]) #app>:not(#garage){visibility:hidden}#garage{color:#fff;background:0 0;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}#garage[open]{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid}#garage::backdrop{background:0 0}.garageHeader{background:var(--glass);border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:16px 28px;display:flex}.garageHeader>span{letter-spacing:.12em;font-size:20px;font-weight:600}#garage button{touch-action:manipulation;background:#ffffff12;border-radius:10px;min-height:42px;padding:8px 16px;box-shadow:inset 0 0 0 1px #ffffff21}#garage button:focus-visible,#garageOrbit:focus-visible{outline-offset:-2px;outline:2px solid #35ffa0}#garage button:disabled{opacity:.5;cursor:default}#garageViewport{min-height:0;position:relative}#garageOrbit{touch-action:none;cursor:grab;position:absolute;inset:0 0 58px}#garageOrbit:active{cursor:grabbing}.garageStatus{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:absolute;inset:0}.garageStatus button{pointer-events:auto}.garageAngles{white-space:nowrap;gap:6px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.garageFooter{background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid #ffffff26;min-width:0;padding:16px 28px 10px}.garageSelection{justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;display:flex}.garageSelection strong{font-size:23px;font-weight:600;display:block}.garageSelection span{color:#b6becb;margin-top:4px;font-size:13px;display:block}#garage #useVehicle{color:#04140c;background:#35ffa0;flex-shrink:0;font-weight:700}.garageCars{touch-action:pan-x;overscroll-behavior-x:contain;gap:8px;min-width:0;padding-bottom:6px;display:flex;overflow-x:auto}#garage .garageCars button{text-align:left;touch-action:pan-x;flex:none;min-width:140px}#garage .garageCars [aria-pressed=true]{color:#35ffa0;background:#35ffa00f;box-shadow:inset 0 0 0 1px #35ffa0}.garageCars small{color:#b6becb;margin-top:4px;font-size:11px;display:block}.garageCredits{color:#b6becb;padding:5px 0;font-size:11px;display:inline-block}@media (width<=760px),(height<=480px){.garageHeader{padding:8px 14px}.garageFooter{min-width:0;padding:10px 14px 4px}.garageSelection{margin-bottom:8px}.garageSelection strong{font-size:18px}#garage .garageAngles button{min-height:36px;padding:6px 10px;font-size:13px}}@media (height<=480px) and (width>=640px){#garage[open]{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) 240px}.garageHeader{grid-column:1/-1;padding-top:4px;padding-bottom:4px}.garageHeader>span{font-size:16px}#garageViewport{grid-area:2/1}.garageFooter{border-top:0;border-left:1px solid #ffffff26;flex-direction:column;grid-area:2/2;gap:10px;padding:12px;display:flex}.garageSelection{margin:0;display:block}.garageSelection strong{font-size:16px}#garage #useVehicle{width:100%;margin-top:8px}.garageCars{touch-action:pan-y;flex-direction:column;flex:1;min-height:0;overflow:hidden auto}#garage .garageCars button{touch-action:pan-y;min-width:0;font-size:14px}.garageCredits{flex-shrink:0}}body.cockpit #wheel,body.cockpit #speed{display:none}body.cockpit .pedal{transform-origin:100% 100%;opacity:.5;transform:scale(.72)}body.cockpit .pedal.on{transform:translateY(3px)scale(.7)}body.cockpit #trip:not(.offer){display:none}#zoomBar{right:var(--edge);bottom:calc(var(--edge) + 96px);gap:8px;display:grid;position:absolute}#zoomBar button{color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0e1016bd;border-radius:12px;place-items:center;width:42px;height:42px;font-size:20px;font-weight:500;display:grid;box-shadow:inset 0 0 0 1px #ffffff1a,0 12px 32px #00000073}#zoomBar button svg{width:20px;height:20px}#planBar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0e1016bd;border-radius:18px;box-shadow:inset 0 0 0 1px #ffffff1a,0 12px 32px #00000073}#closeMap{background:#0e1016bd;border-radius:12px;box-shadow:inset 0 0 0 1px #ffffff1a,0 12px 32px #00000073}#receipt{box-sizing:border-box;text-align:left;color:#fff;background:var(--card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);width:260px;box-shadow:var(--cardEdge), var(--cardShadow);border-radius:18px;gap:8px;padding:14px 16px;animation:.24s ease-out cardIn;display:grid}#receipt .receiptTo{color:var(--t2);font-size:14px}#receipt .receiptTotal{font-variant-numeric:tabular-nums;font-size:30px;font-weight:700;line-height:1.1}#receipt dl{font-variant-numeric:tabular-nums;margin:0;font-size:12px}#receipt dl>div{justify-content:space-between;gap:12px;padding:2px 0;display:flex}#receipt dt{color:var(--t3)}#receipt dd{color:var(--t2);margin:0}#receipt .receiptStars{letter-spacing:2px;color:#ffd60a;font-size:17px}#receipt .receiptStars i{color:#fff3;font-style:normal}#receipt .receiptBar{background:#ffffff1a;border-radius:2px;height:4px;overflow:hidden}#receipt .receiptBar i{background:#35ffa0;border-radius:2px;height:100%;display:block}#receipt .receiptTags{flex-wrap:wrap;gap:6px;font-size:12px;display:flex}#receipt .receiptTags b,#receipt .receiptTags em{background:#ffffff14;border-radius:8px;padding:2px 8px;font-style:normal;font-weight:600}#receipt .receiptTags b{color:#ff5a4f;background:#ff5a4f2e}.shiftTotal{gap:4px;margin:4px 0 8px;display:grid}.shiftTotal small{color:var(--t3);font-size:12px}.shiftTotal b{font-variant-numeric:tabular-nums;font-size:38px;font-weight:700;line-height:1.1}.shiftTotal span{color:var(--t2);font-variant-numeric:tabular-nums;font-size:14px}@media (width<=760px) and (orientation:portrait){#receipt{width:100%}}#garageOrbit{inset:0}@media (orientation:portrait) and (pointer:coarse){body:after{content:"請把裝置打橫";z-index:9999;color:#f2f4f8;letter-spacing:.08em;background:#0b0e14;place-items:center;font:600 22px/1.4 system-ui,PingFang HK,sans-serif;display:grid;position:fixed;inset:0}}body.noCockpit #viewButton{display:none}
