.mochi-brand{display:inline-flex;align-items:center;justify-content:center;--brand-width: 10em;width:var(--brand-width);max-width:100%;min-width:0;font-size:inherit;line-height:0}.mochi-brand>img{display:block;flex:0 1 auto;width:var(--brand-width);max-width:100%;height:auto;-o-object-fit:contain;object-fit:contain}.welcome-nav>.welcome-brand{flex:1 1 0;min-width:0;max-width:320px}.welcome-nav .mochi-brand{--brand-width: 320px}.cargo-brand.mochi-brand{width:auto;height:auto;max-width:100%;font-size:28px}.cargo-header .cargo-brand.mochi-brand{--brand-width: 220px;width:auto;height:auto;font-size:24px}@media(max-width:1024px),(hover:none)and (pointer:coarse){.cargo-header .cargo-brand.mochi-brand{--brand-width: 180px}}@media(max-width:640px){.cargo-brand.mochi-brand{font-size:22px}}.error-page{min-height:100dvh;width:100%;overflow:auto;display:flex;flex-direction:column;align-items:center;padding:24px;background:var(--cargo-canvas);color:var(--cargo-text);font-family:Nunito,ui-rounded,SF Pro Rounded,system-ui,sans-serif}.error-page-header{width:100%;max-width:1080px}.error-page-header .mochi-brand{font-size:28px}.error-page-header a{display:inline-flex;border-radius:8px}.error-page-card{width:100%;max-width:560px;margin:auto;padding:32px 24px;text-align:center}.error-page-art{position:relative;height:224px;max-width:360px;margin:0 auto 24px;border-radius:50%;background:var(--cargo-control)}.error-page-code{display:block;color:var(--cargo-selected-text);opacity:.22;font-size:clamp(88px,22vw,128px);font-weight:900;line-height:1.2;letter-spacing:.04em}.error-page-art img{position:absolute;bottom:0;left:50%;transform:translate(-50%);-o-object-fit:contain;object-fit:contain}.error-page-eyebrow{color:var(--cargo-primary);font-size:14px;font-weight:800;margin:0 0 8px}.error-page h1{font-size:28px;font-weight:900;line-height:1.25;margin:0}.error-page-description{max-width:400px;margin:12px auto 0;font-size:16px;line-height:1.6;color:var(--cargo-muted)}.error-page-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px}.error-page-actions a,.error-page-actions button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--cargo-border);border-radius:8px;padding:10px 16px;background:var(--cargo-surface);color:var(--cargo-text);font-size:14px;font-weight:800;text-decoration:none;cursor:pointer}.error-page-actions .error-page-primary{background:var(--cargo-primary);border-color:var(--cargo-primary);color:var(--cargo-on-primary)}.error-page-actions a:hover,.error-page-actions button:hover{background:var(--cargo-hover)}.error-page-actions .error-page-primary:hover{background:var(--cargo-primary-hover)}.error-page a:focus-visible,.error-page button:focus-visible{outline:3px solid var(--cargo-focus);outline-offset:4px}.error-page-footer{text-align:center;font-size:14px;color:var(--cargo-muted);padding-bottom:env(safe-area-inset-bottom)}@media(max-width:480px){.error-page{padding:16px}.error-page-card{padding:32px 0}.error-page h1{font-size:24px}.error-page-art{height:200px}}body:has(.error-page){overflow:auto}.app-theme .cargo-dialog.package-dialog{padding:0;max-height:calc(100dvh - 32px);overflow:hidden}.package-dialog[open]{display:flex;flex-direction:column}.package-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px;border-bottom:1px solid var(--cargo-border);flex-shrink:0}.package-heading h2{margin:0;font-size:20px;font-weight:900;line-height:1.3}.package-eyebrow{margin:0 0 4px;font-size:10px;font-weight:800;letter-spacing:1px;color:var(--cargo-muted)}.package-body{padding:24px;overflow-y:auto;min-height:0}.package-context{display:flex;align-items:center;gap:12px;padding:12px;background:var(--cargo-control);border-radius:var(--cargo-radius-card);margin-bottom:16px}.package-context img{width:42px;height:52px;-o-object-fit:contain;object-fit:contain;flex-shrink:0}.package-context p{margin:4px 0 0;color:var(--cargo-muted)}.package-feature{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;padding:24px;background:var(--cargo-info-bg);border-radius:var(--cargo-radius-card)}.package-feature-copy{min-width:0}.package-feature-copy h3{font-size:28px;font-weight:900;line-height:1.25;margin:12px 0}.package-feature-copy p{margin:0}.package-feature-copy .package-badge{font-size:12px;font-weight:800;color:var(--cargo-info-text)}.package-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:16px;background:var(--cargo-control);border-radius:var(--cargo-radius-card)}.package-preview img{width:100%;height:90px;-o-object-fit:contain;object-fit:contain}.package-explore-heading{font-size:16px;font-weight:800;margin:24px 0 12px}.package-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.package-option{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;padding:12px 8px;min-width:0}.package-option img{width:70px;max-width:100%;height:56px;-o-object-fit:contain;object-fit:contain}.package-option strong{font-size:12px;overflow-wrap:anywhere}.package-body>.cargo-feedback{margin-top:16px}.package-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 24px;border-top:1px solid var(--cargo-border);flex-shrink:0}.package-footer p{margin:0;font-size:14px}.package-footer p+p{color:var(--cargo-muted);margin-top:4px}.package-footer button{flex-shrink:0}.premium-star{position:absolute;right:6px;top:4px;color:#946500;font-size:18px;line-height:1}.map-decoration-catalog>button,.artifact-picker-tile{position:relative}@media(max-width:560px){.package-heading,.package-body{padding:16px}.package-feature{grid-template-columns:1fr;gap:16px;padding:16px}.package-feature-copy h3{font-size:24px}.package-preview{grid-template-columns:repeat(4,minmax(0,1fr));padding:8px}.package-preview img{height:70px}.package-options{grid-template-columns:repeat(2,minmax(0,1fr))}.package-footer{padding:12px 16px;flex-direction:column;align-items:stretch;gap:12px}}@media(max-height:500px){.package-heading{padding:12px 16px}.package-eyebrow{display:none}.package-footer{padding:12px 16px}}.language-flag-picker{position:relative;display:inline-flex;flex-shrink:0}.language-flag-picker>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);pointer-events:none;z-index:1;border-radius:2px}.language-flag-picker select:is(.cargo-language-picker,.welcome-language-picker){width:68px;min-width:68px;min-height:44px;color:transparent;cursor:pointer}.language-flag-picker select option{color:#514b5b;background:#fffdfb}@media(max-width:1024px),(pointer:coarse){.language-flag-picker select:is(.cargo-language-picker,.welcome-language-picker){min-height:48px}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display: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-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-4{left:1rem}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-4{top:1rem}.isolate{isolation:isolate}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-11{height:2.75rem}.h-14{height:3.5rem}.h-28{height:7rem}.h-\[125px\]{height:125px}.h-auto{height:auto}.h-full{height:100%}.min-h-0{min-height:0px}.min-h-screen{min-height:100vh}.w-11{width:2.75rem}.w-16{width:4rem}.w-64{width:16rem}.w-\[210px\]{width:210px}.w-\[min\(384px\,94vw\)\]{width:min(384px,94vw)}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}.cursor-crosshair{cursor:crosshair}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.\!resize{resize:both!important}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.scroll-smooth{scroll-behavior:smooth}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[12px\]{border-radius:12px}.rounded-\[14px\]{border-radius:14px}.rounded-\[22px\]{border-radius:22px}.rounded-\[28px\]{border-radius:28px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-\[3px\]{border-width:3px}.border-\[4px\]{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-t{border-top-width:1px}.border-\[\#ddd2e6\]{--tw-border-opacity: 1;border-color:rgb(221 210 230 / var(--tw-border-opacity, 1))}.border-\[\#e7e2e9\]{--tw-border-opacity: 1;border-color:rgb(231 226 233 / var(--tw-border-opacity, 1))}.border-cyan-300{--tw-border-opacity: 1;border-color:rgb(103 232 249 / var(--tw-border-opacity, 1))}.border-pink-100{--tw-border-opacity: 1;border-color:rgb(252 231 243 / var(--tw-border-opacity, 1))}.border-pink-200{--tw-border-opacity: 1;border-color:rgb(251 207 232 / var(--tw-border-opacity, 1))}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-white\/80{border-color:#fffc}.bg-\[\#edf4e9\]{--tw-bg-opacity: 1;background-color:rgb(237 244 233 / var(--tw-bg-opacity, 1))}.bg-\[\#faf5ed\]{--tw-bg-opacity: 1;background-color:rgb(250 245 237 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-pink-50{--tw-bg-opacity: 1;background-color:rgb(253 242 248 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/45{background-color:#ffffff73}.bg-white\/90{background-color:#ffffffe6}.bg-white\/95{background-color:#fffffff2}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-white{--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/25{--tw-gradient-from: rgb(255 255 255 / .25) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-pink-50{--tw-gradient-to: #fdf2f8 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-6xl{font-size:3.75rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.leading-relaxed{line-height:1.625}.text-indigo-900{--tw-text-opacity: 1;color:rgb(49 46 129 / var(--tw-text-opacity, 1))}.text-indigo-950{--tw-text-opacity: 1;color:rgb(30 27 75 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-purple-800{--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.text-purple-900{--tw-text-opacity: 1;color:rgb(88 28 135 / var(--tw-text-opacity, 1))}.shadow-\[0_0_0_1px_\#e782b1\]{--tw-shadow: 0 0 0 1px #e782b1;--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-kawaii{--tw-shadow: 0 14px 34px rgba(176, 103, 151, .18);--tw-shadow-colored: 0 14px 34px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.medal-celebration{--medal-accent: #cba75e;position:fixed;top:160px;left:50%;z-index:60;width:min(340px,calc(100vw - 32px));padding:72px 24px 20px;border:1px solid var(--medal-accent);border-radius:14px;background:#fffdfb;color:#514b5b;font-family:Nunito,ui-rounded,system-ui,sans-serif;text-align:center;box-shadow:0 8px 28px #60536e26;transform:translate(-50%);transform-origin:center 30%;animation:medal-pop .45s cubic-bezier(.2,.8,.3,1) both}.medal-celebration-bronze{--medal-accent: #bf916f}.medal-celebration-silver{--medal-accent: #aab3bf}.medal-celebration-platinum{--medal-accent: #a99ac8}.medal-celebration-close{position:absolute;top:8px;right:8px;padding:8px}.medal-celebration-art{position:absolute;top:-72px;left:calc(50% - 72px);width:144px;height:144px;pointer-events:none;animation:medal-art-pop .55s 80ms both}.medal-celebration-art img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.medal-celebration-label{margin:4px 0 6px;color:#9470b1;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.medal-celebration h2{margin:0;font-size:22px;font-weight:900;line-height:1.2;overflow-wrap:anywhere}.medal-celebration-tier{display:table;margin:10px auto 14px;padding:3px 14px;border:1px solid var(--medal-accent);border-radius:20px;background:#faf6ef;font-size:12px;font-weight:800}.medal-celebration-stars{position:absolute;color:var(--medal-accent);font-size:24px;animation:medal-star-pop .75s .15s both}.medal-celebration-stars:nth-child(1){top:18px;left:-24px}.medal-celebration-stars:nth-child(2){top:65px;left:-12px;color:#ba9ace;font-size:16px}.medal-celebration-stars:nth-child(3){top:12px;right:-20px;color:#ba9ace;font-size:16px}.medal-celebration-stars:nth-child(4){top:60px;right:-26px}.medal-celebration-leaving{animation:medal-out .25s ease-in both}@keyframes medal-pop{0%{opacity:0;transform:translate(-50%) scale(.65)}65%{opacity:1;transform:translate(-50%) scale(1.045)}to{transform:translate(-50%) scale(1)}}@keyframes medal-art-pop{0%{opacity:0;transform:scale(.6) rotate(-8deg)}65%{opacity:1;transform:scale(1.08) rotate(3deg)}to{transform:scale(1) rotate(0)}}@keyframes medal-star-pop{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.2)}to{opacity:0;transform:scale(.8) translateY(-12px)}}@keyframes medal-out{to{opacity:0;transform:translate(-50%) scale(.9)}}@media(max-width:560px){.medal-celebration{top:190px}}@media(prefers-reduced-motion:reduce){.medal-celebration,.medal-celebration-art{animation:none}.medal-celebration-stars{display:none}.medal-celebration-leaving{opacity:0}}.medals-dialog{width:min(1240px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.medals-heading,.medal-progress-copy{display:flex;justify-content:space-between;align-items:center;gap:12px}.medals-heading h2{font-size:1.5rem;font-weight:900}.medals-heading p,.medals-status,.medals-error{margin:8px 0}.medals-scroll{overflow:auto;max-height:calc(100dvh - 160px);margin-top:16px}.medals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px;list-style:none;padding:0}.medal-card{min-width:0;padding:14px;border:1px solid #e7e2e9;border-radius:12px;background:#fff}.medal-card h3{font-weight:800;margin:8px 0}.medal-art{position:relative;width:140px;max-width:100%;aspect-ratio:1;margin:auto}.medal-art img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.medal-card-locked .medal-art{filter:grayscale(1);opacity:.55}.medal-tier{font-size:.75rem;font-weight:800}.medal-description{margin:8px 0 12px;font-size:.85rem}.medal-progress-copy,.medal-progress-value{font-size:.75rem}.medal-card progress{width:100%;accent-color:#9470b1}.medal-progress-value{margin-top:4px}.revenue-popup-anchor{position:absolute;z-index:100000;pointer-events:none;transform:translate(-50%,-100%)}.revenue-popup{display:flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid #fbbf2466;border-radius:999px;background:#252139f2;color:#fde68a;font-size:14px;font-weight:800;white-space:nowrap;box-shadow:0 4px 12px #17112640;animation:revenue-rise 3s ease-out forwards}@keyframes revenue-rise{0%{opacity:0;transform:translateY(-18px) scale(.8)}10%{opacity:1;transform:translateY(-24px) scale(1.05)}18%{transform:translateY(-28px) scale(1)}65%{opacity:1}to{opacity:0;transform:translateY(-80px) scale(1)}}@media(prefers-reduced-motion:reduce){.revenue-popup{animation-name:revenue-fade}}@keyframes revenue-fade{0%,65%{opacity:1}to{opacity:0}}:root{font-family:Nunito,ui-rounded,SF Pro Rounded,system-ui,sans-serif;color:#514b5b;background:#f7f5f1;font-synthesis:none;text-rendering:optimizeLegibility}html,body,#root{width:100%;min-width:320px;height:100%;margin:0}body{overflow:hidden}button,input,select{font:inherit}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#d2cbd7 transparent}button,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #9471ae;outline-offset:3px}.soft-outline{filter:drop-shadow(0 1px 0 rgba(105,76,112,.18))}.cargo-app{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.cargo-header{display:block;padding:0;border-bottom:1px solid #e7e2e9;background:#fffdfb;margin-bottom:8px;flex-shrink:0}.cargo-brand{width:180px;height:96px;max-width:100%;-o-object-fit:contain;object-fit:contain;flex-shrink:0}.cargo-header .cargo-brand{width:120px;height:64px}.cargo-header-main{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;padding:8px 16px}.cargo-header-account{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.cargo-header-navigation{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:6px 16px;background:#f1e9f7;border-top:1px solid #e7e2e9}.cargo-gameplay-controls{display:contents;border:0;margin:0;padding:0}.cargo-gameplay-controls:disabled .cargo-map-surface{pointer-events:none}.cargo-play-time{margin-left:auto;display:flex;align-items:center;gap:9px;padding:2px 4px}.cargo-play-time>svg{color:#9471ae}.cargo-play-time>div{display:flex;flex-direction:column}.cargo-play-time>div>span{font-size:11px;color:#827989}.cargo-play-time strong{font-size:19px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2}.cargo-play-time.is-low strong{color:#9c620f}.cargo-play-time.is-exhausted strong{color:#827989}.cargo-play-time-reset{max-width:210px;font-size:12px}.cargo-header-navigation .cargo-toolbar-badge{position:static;font-size:11px}.cargo-header-tools{flex-wrap:wrap}.cargo-stats{display:flex;align-items:center;flex:1;justify-content:flex-end;gap:6px 12px}.cargo-stat{display:flex;align-items:center;gap:5px;white-space:nowrap}.cargo-stat>span{font-size:11px;color:#827989}.cargo-stat strong{font-size:13px;font-weight:800}.cargo-stat small{font-size:10px;color:#827989}.cargo-top-toolbar .cargo-icon-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:auto;gap:6px;min-width:34px;height:34px;min-height:34px;padding:0 10px;flex-shrink:0}.cargo-language-picker{max-width:100%;min-height:44px;padding:0 8px;font:inherit;font-size:16px;color:var(--cargo-text);background:var(--cargo-surface);border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-control)}.cargo-language-picker:focus-visible{outline:2px solid var(--cargo-focus);outline-offset:2px}.cargo-toolbar-badge{position:absolute;top:-5px;right:-5px;min-width:15px;padding:0 3px;border-radius:8px;background:#e9def2;color:#583b70;font-size:9px;line-height:15px}.cargo-workspace{position:relative;display:flex;flex:1;min-height:0;gap:14px;padding:0 16px 16px}.cargo-sidebar{width:clamp(260px,23vw,310px);flex-shrink:0;display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding:0 3px 4px 0}.cargo-sidebar>*{flex-shrink:0}.cargo-panel,.kawaii-panel,.cargo-dialog{min-width:0;padding:16px;border:1px solid #e7e2e9;border-radius:14px;background:#fffdfb;color:#514b5b;box-shadow:none;overflow-wrap:anywhere}.cargo-toolbar{display:flex;align-items:center;gap:16px;flex:0 0 100%;min-width:0;padding:8px 12px;border:1px solid #e7e2e9;border-radius:12px;background:#fffdfb}.cargo-toolbar-heading h2{margin:0;font-size:14px;font-weight:800}.cargo-button{min-height:38px;padding:8px 12px;border:1px solid #e5dfe9;border-radius:8px;background:#f7f4f9;color:#60536e;font-size:12px;font-weight:700;cursor:pointer;transition:background-color .15s}.cargo-button:hover{background:#eee7f3}.cargo-primary,.cargo-button[aria-pressed=true]{background:#e9def2;border-color:#ba9ace;color:#583b70}.cargo-button:disabled{opacity:.5;cursor:not-allowed}.cargo-signout,.cargo-generate{background:transparent;border-color:transparent}.cargo-generate{margin-top:auto;color:#827989}.cargo-world-divider{border:0;border-top:1px solid #e9e3ed}@media(min-width:641px){.route-tutorial-launch .cargo-header-button-label{display:inline}}.cargo-modal-heading,.mochi-family-heading,.route-tutorial-heading{position:sticky;top:-16px;z-index:5;background:inherit}.mochi-family-heading .industry-close,.cargo-left-panel-heading .industry-close{position:static;flex-shrink:0}.character-details>.industry-close{position:sticky;top:10px;float:right;margin:10px 10px -48px 0;z-index:5}.cargo-toolbar-body{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;min-width:0;flex:1}.cargo-toolbar-modes{display:flex;gap:6px}.cargo-toolbar-hint{order:1;margin:0;font-size:11px;line-height:1.5;font-weight:500;color:#827989}.cargo-toolbar .cargo-button span{font-size:9px;font-weight:500;margin-top:2px}.cargo-tool-grid{display:flex;flex-wrap:wrap;gap:6px}.cargo-tool{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;gap:0 6px;align-items:center;padding:8px 4px;min-height:46px;border:1px solid transparent;border-radius:8px;text-align:left;font-size:12px;font-weight:700;color:#60536e}.cargo-tool:hover{background:#f7f4f9}.cargo-tool[aria-pressed=true]{background:#eee5f5;border-color:#ba9ace}.cargo-tool img,.cargo-tool>svg{width:34px;height:40px;grid-row:1 / 3;-o-object-fit:contain;object-fit:contain}.cargo-tool-price{font-size:10px;font-weight:500;color:#827989}.cargo-sidebar .kawaii-panel>div:first-child{padding:0 0 10px;background:transparent;border:0}.cargo-sidebar .kawaii-panel :is(h3,dt,dd,p,button){color:#514b5b}.cargo-sidebar .kawaii-panel h3{font-size:14px;font-weight:800}.cargo-sidebar .kawaii-panel dl{padding:0;font-size:12px}.cargo-sidebar .kawaii-panel dl>div{gap:12px;border-color:#eee9f0}.cargo-sidebar .kawaii-panel dd{text-align:right}.cargo-sidebar .kawaii-panel dt{font-weight:500;color:#827989}.cargo-sidebar .kawaii-panel>section{padding:0;font-size:12px}.cargo-sidebar .kawaii-panel button{background:#f7f4f9}.cargo-sidebar .kawaii-panel button:hover{background:#eee7f3}.cargo-app .map-view{border:1px solid #dddfe0;border-radius:14px;box-shadow:none}.cargo-app .map-view button[title],.cargo-app .map-zoom-button{border:1px solid #e7e2e9;border-radius:10px;color:#60536e;box-shadow:0 2px 8px #514b5b0a;font-weight:600}.cargo-minimap{width:clamp(145px,14vw,190px);padding:5px;background:#fffdfbe6;border:1px solid #e7e2e9;border-radius:12px}.industry-pop-in{position:absolute;z-index:40;top:12px;right:12px;bottom:12px;width:min(460px,calc(100% - 24px));overflow:hidden;border:1px solid #e7e2e9;border-radius:16px;background:#fffdfb;box-shadow:0 12px 40px #514b5b26;animation:industry-enter .18s ease-out}.industry-pop-in-scroll{height:100%;overflow-y:auto;overscroll-behavior:contain}.industry-close.industry-decorate{position:absolute;top:10px;right:56px;z-index:1;background:#fffdfb}.industry-close[hidden],.industry-decorate[hidden]{display:none}.industry-close.industry-decorate.is-decorated{color:#583b70;background:#e9def2;border-color:#ba9ace}.industry-decorate.is-decorated:after{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:#735290}.cargo-map-surface{position:relative;display:flex;flex:1;min-width:0;min-height:0}.cargo-map-preserved{display:flex;flex:1;min-width:0;min-height:0}.industry-decoration-unavailable{margin:12px 16px 0;padding:10px;border-radius:8px;background:#f5edf9;font-size:13px}.industry-decoration-editor{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;background:#cfe5a3;height:100%;overflow:hidden}.industry-decoration-editor .scenery-details-panel{width:min(240px,calc(100% - 24px));bottom:auto;max-height:calc(100% - 24px);padding-top:64px}.scenery-resident-heading,.scenery-selected-artifact{display:flex;align-items:center;gap:10px;min-width:0}.scenery-resident-heading>div,.scenery-selected-artifact>div{min-width:0;overflow-wrap:anywhere}.scenery-resident-heading img{width:40px;height:40px;-o-object-fit:contain;object-fit:contain}.industry-decoration-editor .scenery-resident-heading h3{margin:0}.scenery-selected-artifact{padding-top:12px;border-top:1px solid #e7dceb}.scenery-selected-artifact img{width:44px;height:44px;-o-object-fit:contain;object-fit:contain;flex:none}.scenery-selected-artifact strong{font-size:14px}.scenery-done,.scenery-mobile-title{display:none}.scenery-add-artifact.cargo-button,.artifact-picker-action.cargo-button{background:#79568f;border-color:#79568f;color:#fffdfb;min-height:44px}.artifact-picker.cargo-dialog{width:min(780px,calc(100vw - 40px));max-width:none;height:min(760px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);padding:0;overflow:hidden;border:1px solid #e7dceb;border-radius:20px;background:#fffdfb;color:#51445e}.artifact-picker[open]{display:flex;flex-direction:column}.artifact-picker::backdrop{background:#31263d80}.artifact-picker-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 20px 12px}.artifact-picker-heading h2{font-size:20px;font-weight:900}.artifact-picker-heading p{margin:0 0 4px;overflow-wrap:anywhere}.artifact-picker-heading button{flex:none;min-width:44px;min-height:44px}.artifact-picker-filters{display:flex;flex-wrap:wrap;gap:8px;padding:0 20px}.artifact-picker-filters label{flex:1;min-width:0}.artifact-picker-filters .artifact-picker-search{flex-basis:100%}.artifact-picker-filters input,.artifact-picker-filters select,.map-decoration-shop input:not([type=checkbox]),.map-decoration-shop select{width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid #dfd1e7;border-radius:10px;background:#fffdfb;color:#51445e;font:inherit;font-size:16px}.artifact-picker-count{padding:10px 20px;margin:0;font-size:12px}.artifact-picker .artifact-picker-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-content:start;gap:10px;overflow-y:auto;flex:1;min-height:0;padding:2px 20px 16px;border-radius:0}.artifact-picker .artifact-picker-grid article{display:block;background:none;padding:0}.artifact-picker-tile{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 5px;border:1px solid #e7dceb;border-radius:12px;background:#fffaf3;color:#51445e;font-size:12px;text-align:center;touch-action:manipulation}.artifact-picker-tile:hover{background:#f5edf9}.artifact-picker-tile[aria-pressed=true]{border-color:#79568f;box-shadow:inset 0 0 0 1px #79568f;background:#efe3f5}.artifact-picker-grid .artifact-picker-tile img{width:100%;height:68px;-o-object-fit:contain;object-fit:contain}.artifact-picker-name{overflow-wrap:anywhere;font-weight:700}.artifact-picker-empty{grid-column:1 / -1;padding:20px 0}.artifact-picker-footer{flex:none;padding:12px 20px 20px;border-top:1px solid #e7dceb;background:#fffdfb;max-height:45%;overflow-y:auto}.artifact-picker-footer>p:empty{display:none}.artifact-picker-footer>p{margin:0 0 8px;font-size:13px}.artifact-picker-selection{display:flex;align-items:center;gap:12px;min-width:0;margin-bottom:10px}.artifact-picker-selection img{width:44px;height:44px;-o-object-fit:contain;object-fit:contain}.artifact-picker-selection>div{min-width:0;overflow-wrap:anywhere}.artifact-picker-selection p{margin:2px 0 0;font-size:12px}.artifact-picker-action{width:100%}@media(max-width:640px){.industry-decoration-editor .scenery-mobile-title{display:block;position:absolute;top:22px;left:12px;z-index:2;max-width:calc(100% - 140px);padding:10px 12px;margin:0;border-radius:12px;background:#fffdfbef;color:#51445e;font-weight:800}.artifact-picker.cargo-dialog{position:fixed;top:0;right:0;bottom:0;left:0;margin:0;width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}.artifact-picker-heading{padding:max(12px,env(safe-area-inset-top)) 16px 12px}.artifact-picker-filters{padding:0 16px}.artifact-picker-count{padding:10px 16px}.artifact-picker .artifact-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:2px 16px 12px;gap:8px}.artifact-picker-grid .artifact-picker-tile img{height:64px}.artifact-picker-footer{padding:10px 16px max(12px,env(safe-area-inset-bottom))}.industry-decoration-editor .scenery-details-panel{left:0;right:0;top:auto;bottom:0;width:100%;max-height:42%;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-radius:18px 18px 0 0;gap:8px;background:#fffdfb}.scenery-details-panel .scenery-resident-heading{display:none}.scenery-details-panel .scenery-selected-artifact{order:0;border:0;padding:0}.scenery-selected-artifact>div{flex:1}.scenery-selected-artifact p{display:none}.scenery-done{display:block;min-height:44px}.scenery-details-panel .decoration-controls{order:1;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:8px}.scenery-details-panel .decoration-controls label{flex:1;min-width:0}.scenery-details-panel .decoration-controls input{min-width:0;width:100%;min-height:44px}.scenery-details-panel .decoration-controls button{min-height:44px}.scenery-details-panel>[role=status]{order:2;margin:0}.scenery-details-panel .scenery-add-artifact{order:3}.industry-decoration-editor .decoration-stage{bottom:var(--scenery-sheet-height, 150px)}.industry-decoration-editor:has(.scenery-details-panel[data-details-folded=true]) .decoration-stage{bottom:0}.scenery-controls>.industry-close{min-width:44px;min-height:44px}}@media(max-height:500px)and (min-width:641px){.artifact-picker.cargo-dialog{height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.artifact-picker-heading{padding:8px 16px}.artifact-picker-heading p{display:none}.artifact-picker-filters{flex-wrap:nowrap;padding:0 16px}.artifact-picker-filters .artifact-picker-search{flex:2}.artifact-picker-count{padding:6px 16px}.artifact-picker-grid .artifact-picker-tile img{height:44px}.artifact-picker-footer{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 16px}.artifact-picker-selection{flex:1;margin:0}.artifact-picker-action{width:auto;min-width:150px}.artifact-picker-footer>p:not(:empty){flex-basis:100%;margin:0}}.scenery-details-panel{position:absolute;z-index:2;top:12px;right:12px;width:min(300px,calc(100% - 24px));bottom:12px;overflow-y:auto;padding:16px;border:1px solid #e7e2e9;border-radius:16px;background:#fffdfbef;box-shadow:0 12px 40px #514b5b26;display:flex;flex-direction:column;gap:12px}.scenery-details-panel h3{padding-right:0;margin-bottom:40px}.industry-decoration-editor h3{font-weight:900}.industry-decoration-editor p{font-size:13px}.decoration-stage{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#789b58 #d4eac0;touch-action:none;cursor:grab;container-type:size}.decoration-stage:active{cursor:grabbing}.decoration-canvas{position:relative;width:max(1280px,100cqw,calc(100cqh * 16 / 9));aspect-ratio:16 / 9;background:#cfe5a3;overflow:hidden}.decoration-background{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;pointer-events:none}.decoration-missing{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#eee7f3}.decoration-artifact{position:absolute;padding:0;border:2px solid transparent;background:transparent;touch-action:none;cursor:grab;pointer-events:none}.decoration-move-handle{position:absolute;bottom:0;left:50%;transform:translate(-50%);display:grid;place-items:center;width:36px;height:36px;border:2px solid #fffdfb;border-radius:50%;background:#fffdfbef;color:#79568f;box-shadow:0 1px 5px #514b5b50;pointer-events:auto;touch-action:none;cursor:grab}.decoration-artifact.is-selected .decoration-move-handle,.decoration-artifact:focus-visible .decoration-move-handle{background:#79568f;color:#fffdfb;z-index:2}.decoration-artifact:disabled .decoration-move-handle{pointer-events:none;opacity:.5}.decoration-move-handle:active{cursor:grabbing}@media(pointer:coarse),(max-width:640px){.decoration-move-handle{width:44px;height:44px}}.decoration-artifact img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;pointer-events:none}.decoration-artifact.is-selected,.decoration-artifact:focus-visible{border-color:#945ec2;outline:2px solid white}.decoration-artifact.is-selected{pointer-events:auto}.decoration-artifact:active{cursor:grabbing}.decoration-resize-handle{position:absolute;top:-8px;right:-8px;width:18px;height:18px;border:2px solid white;border-radius:4px;background:#945ec2;box-shadow:0 1px 4px #514b5b60;cursor:nesw-resize;touch-action:none;pointer-events:auto}.decoration-resize-handle:focus-visible{outline:2px solid #583b70;outline-offset:2px}.decoration-controls{display:flex;flex-direction:column;align-items:stretch;gap:12px}.decoration-controls label{display:flex;align-items:center;gap:10px}.decoration-shop{flex:none;border-radius:16px;background:#fffdfbe6;display:flex;flex-direction:column;gap:8px;overflow:visible;padding:8px;overscroll-behavior:contain}.decoration-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.decoration-filters button[aria-pressed=true]{background:#f9d6a5;border-color:#946147}.decoration-shop article{min-width:0;display:flex;flex-direction:row;align-items:center;gap:6px;padding:10px;border-radius:12px;background:#f5edf9;font-size:13px}.decoration-shop img{width:84px;height:64px;-o-object-fit:contain;object-fit:contain}.decoration-hint{color:#756981}.details-panel-fold-button.industry-close{right:56px}.industry-pop-in:has(>.industry-decorate)>.details-panel-fold-button,.character-details:has(>.industry-decorate)>.details-panel-fold-button,.industry-pop-in:has(.truck-locate)>.details-panel-fold-button{right:102px}.scenery-details-panel h3{padding-right:0}[data-details-folded=true]{display:none!important;position:absolute!important;top:12px!important;right:12px!important;left:auto!important;bottom:auto!important;width:46px!important;min-width:0!important;max-width:46px!important;height:46px!important;min-height:0!important;max-height:46px!important;padding:0!important;overflow:hidden!important}[data-details-folded=true]>:not(.details-panel-fold-button){display:none!important}[data-details-folded=true]>.details-panel-fold-button{right:4px!important;top:4px!important}.character-details[data-details-folded=true]{position:fixed!important;top:140px!important;margin:0!important}.scenery-controls{position:absolute;z-index:3;top:22px;right:22px;display:flex;flex-direction:row;gap:8px}.scenery-controls>.scenery-close{order:1}.industry-decoration-editor:has(.scenery-details-panel[data-details-folded=true]) .scenery-controls{flex-direction:column}.industry-decoration-editor:has(.scenery-details-panel[data-details-folded=true]) .scenery-close{order:0}.scenery-controls>.industry-close{width:38px;height:38px;flex:none}.scenery-controls>.industry-close,.details-panel-fold-button.details-panel-rail{position:static}[data-map-controls]>.details-panel-rail{width:44px;height:44px}.details-panel-fold-fallback.details-panel-rail{position:fixed;top:140px;right:12px}.map-view:has(.industry-pop-in:not([data-details-folded=true])) [data-map-controls]>.map-zoom-button,body:has(.character-details[open]:not([data-details-folded=true])) [data-map-controls]>.map-zoom-button{display:none}@media(max-width:640px){.scenery-details-panel{width:min(260px,calc(100% - 24px));padding:12px}.decoration-controls{flex-wrap:wrap}}.industry-close{display:grid;place-items:center;padding:0;height:38px;position:absolute;z-index:1;top:10px;right:10px;width:38px;background:#fffdfb;font-size:22px;line-height:1}.industry-scene{aspect-ratio:16 / 9;background:#eee7f3}.industry-scene img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.town-scene{aspect-ratio:5 / 2}.industry-scene-placeholder{display:flex;height:100%;flex-direction:column;align-items:center;justify-content:center;color:#82718f;background:linear-gradient(135deg,#eee7f3,#f5eee4)}.industry-scene-placeholder>span{font-size:36px}.industry-scene-placeholder p{font-weight:800}.scene-characters{padding:10px 24px;border-bottom:1px solid #e7e2e9;color:#756981;font-size:12px;line-height:1.8}.scene-character-link{min-height:28px;color:#735290;font-weight:700;text-decoration:underline;text-underline-offset:3px}.scene-character-link:hover{color:#4d3265}.scene-character-link:focus-visible{outline:2px solid #9d7bb6;outline-offset:3px;border-radius:3px}.character-details{position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;width:min(380px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:0;border:1px solid #e7e2e9;border-radius:20px;background:#fffdfb;color:#514b5b;box-shadow:0 12px 48px #514b5b40}.character-details::backdrop{background:#30273e66}.character-portrait{width:100%;height:260px;padding:28px;-o-object-fit:contain;object-fit:contain;background:#f3eee6}.character-details-copy{padding:20px 24px 24px}.character-details-label{color:#82718f;font-size:12px}.character-details h2{margin-bottom:14px;font-size:28px;font-weight:900}.character-details dl{display:grid;gap:8px;margin-bottom:16px;font-size:14px}.character-details dl>div{display:grid;grid-template-columns:90px 1fr;gap:12px}.character-details dt{color:#82718f}.character-details dd{font-weight:700}.character-details-copy>p:last-child{font-size:14px;line-height:1.6}.industry-pop-in section{padding:24px;overflow-wrap:anywhere}.industry-pop-in h3{font-size:24px}@keyframes industry-enter{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@media(max-width:640px){.industry-pop-in{top:8px;right:8px;bottom:8px;width:min(460px,calc(100% - 16px))}.industry-pop-in section{padding:18px}}@media(prefers-reduced-motion:reduce){.industry-pop-in{animation:none}}.cargo-minimap>div{border:0;border-radius:8px}.cargo-minimap canvas{height:110px}.cargo-login{background:#f7f5f1}.cargo-login .cargo-panel{padding:28px}.cargo-login .cargo-brand{align-self:center}.cargo-login input{border:1px solid #d8cede}.vehicle-panel{font-size:12px}.vehicle-panel h2{font-size:14px;font-weight:800}.vehicle-catalog{display:grid;gap:8px;margin-top:12px}.vehicle-fleet{position:relative;margin-top:12px;overflow-anchor:none}.vehicle-fleet-entry{position:absolute;top:0;left:0;width:100%}.vehicle-card{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #eee9f0}.vehicle-fleet-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px;border-radius:8px;text-align:left}.vehicle-fleet-row:hover{background:#faf7fc}.vehicle-fleet-row:focus-visible{outline:2px solid #9866b5;outline-offset:-2px}.vehicle-fleet-row>span{color:#827989;white-space:nowrap}.vehicle-fleet-row>.vehicle-fleet-description{flex:1;min-width:0;white-space:normal}.vehicle-fleet-description>strong{color:#352c41}.vehicle-fleet-wagons{display:flex;flex-wrap:wrap;gap:2px;margin-top:4px}.vehicle-fleet-wagon-art{width:32px;height:30px;flex-shrink:0}.vehicle-card:first-child{padding-top:0}.vehicle-card:last-child{border-bottom:0}.vehicle-card small{display:block;color:#827989}.vehicle-panel .cargo-button{min-height:34px;padding:6px 10px}.vehicle-placement{display:grid;gap:8px;margin-top:12px;padding:12px;border:1px solid #cdb6df;border-radius:10px;background:#faf7fc}.vehicle-placement select{display:block;width:100%;margin-top:4px;padding:8px;border:1px solid #ddd3e4;border-radius:8px;background:#fff}.route-ticket-vehicle{display:flex;align-items:center;gap:12px}.route-ticket-art{width:64px;height:60px;-o-object-fit:contain;object-fit:contain}.route-ticket-endpoints{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vehicle-panel .route-ticket-endpoint{display:grid;gap:6px;padding:14px;text-align:left;min-height:150px}.route-ticket-letter{color:#75518e;font-size:28px;font-weight:800}.route-ticket-label{text-transform:uppercase;letter-spacing:.06em;font-size:11px}.route-ticket-hint,.route-ticket-instruction{font-size:12px;color:#60536e}.route-ticket-footer{border-top:2px dashed #ddd3e4;margin-top:4px;padding-top:14px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.route-ticket-footer p{width:100%}@media(max-width:380px){.route-ticket-endpoints{grid-template-columns:1fr}}@media(max-width:760px){.cargo-stats{gap:12px}.cargo-stat{grid-template-columns:auto}.cargo-stat>span{display:none}.cargo-stat small{grid-column:1}}@media(max-width:640px){body{overflow:auto}.cargo-app{height:auto;min-height:100dvh;overflow:visible}.cargo-header{padding:0}.cargo-header-main{padding:4px 10px;gap:6px 10px}.cargo-header-navigation{padding:6px 10px}.cargo-header-button-label{display:none}.cargo-top-toolbar .cargo-icon-button{padding:0 8px}.cargo-header .cargo-brand{width:120px;height:64px}.cargo-stats{flex:1;justify-content:flex-end;gap:10px;flex-wrap:wrap}.cargo-stat strong{font-size:11px}.cargo-signout{padding:6px;font-size:11px}.cargo-workspace{flex-direction:column;padding:0 8px 8px;gap:10px}.map-view{order:-1;flex:none;height:58dvh;min-height:320px}.cargo-sidebar{width:100%;overflow:visible;padding:0}.cargo-panel,.kawaii-panel{padding:14px}.cargo-toolbar{align-items:flex-start;gap:8px;padding:8px}.cargo-toolbar-heading{padding-top:10px}.cargo-minimap{width:135px;right:8px;bottom:8px}.cargo-minimap canvas{height:80px}}@media(prefers-reduced-motion:reduce){.cargo-button{transition:none}}.industry-tabs{display:flex;gap:4px;padding:4px;background:#f1ecf5;border-radius:12px}.industry-tabs button{flex:1;min-width:0;padding:10px 4px;border-radius:9px;font-size:12px;font-weight:800;color:#82718f}.industry-tabs button>span{display:flex;justify-content:center;font-size:20px;margin-bottom:3px}.industry-tabs button[aria-selected=true]{background:#fffdfb;color:#684681;box-shadow:0 2px 5px #514b5b14}.industry-tab-content{padding-top:8px}.industry-tab-content>*+*{margin-top:16px}.industry-muted{font-size:12px;color:#827989;line-height:1.6}.industry-goods-flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.industry-goods-flow>div{padding:12px;background:#f8f5fa;border-radius:12px}.industry-goods-flow h4,.industry-recipe h5{margin-bottom:8px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#82718f}.cargo-goods{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.cargo-good{display:inline-flex;gap:7px;align-items:center;min-width:0;font-size:12px}.cargo-good strong{display:block;font-weight:700}.cargo-good small{display:block;color:#827989;font-size:11px}.cargo-good-icon{width:40px;height:40px;flex:0 0 40px;-o-object-fit:contain;object-fit:contain}.cargo-good-fallback{display:grid;place-items:center;background:#eee7f3;border-radius:10px}.industry-storage-row{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:8px;border-bottom:1px solid #eee9f0;padding-bottom:8px;font-size:12px}.industry-storage-row strong{margin-left:auto;text-align:right}.industry-storage-label{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 10px;margin-bottom:7px}.industry-storage-body{min-width:0}.industry-production-card{display:grid;gap:12px;padding:16px;border:1px solid #e7e2e9;border-radius:14px;background:#faf7fc}.industry-production-card h4{display:flex;align-items:center;gap:8px;font-weight:800;color:#684681}.industry-progress{display:block;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:8px;overflow:hidden;border:0;border-radius:8px;background:#eee7f3;color:#9975b3}.industry-progress::-webkit-progress-bar{background:#eee7f3;border-radius:8px}.industry-progress::-webkit-progress-value{background:#9975b3;border-radius:8px}.industry-progress::-moz-progress-bar{background:#9975b3;border-radius:8px}.industry-progress-warning{color:#bd863c}.industry-progress-warning::-webkit-progress-value{background:#bd863c}.industry-progress-warning::-moz-progress-bar{background:#bd863c}.industry-storage-warning{margin-top:5px}.minimap-legend{display:block;width:100%;min-height:38px;padding:var(--cargo-space-2, 8px) var(--cargo-space-1, 4px);border:0;background:transparent;color:var(--cargo-primary, #73508c);font-size:13px;font-weight:700;line-height:1.4;text-align:center;text-decoration:underline;text-underline-offset:3px}.minimap-legend:hover{color:var(--cargo-primary-hover, #604077)}@media(max-width:640px),(pointer:coarse){[data-station-labels]>button:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;min-width:44px;min-height:44px;transform:translate(-50%,-50%)}.minimap-legend{min-height:44px}}.industry-recipe{padding:16px;border:1px solid #e7e2e9;border-radius:14px}.industry-recipe>p:first-child{text-transform:capitalize}.industry-recipe-flow{display:grid;margin-top:14px;gap:8px}.industry-recipe-flow>div{background:#f8f5fa;border-radius:10px;padding:12px}.industry-flow-arrow{text-align:center;color:#ab8ebd;font-size:22px}.industry-buddies{display:grid;gap:12px}.industry-buddy{display:block;width:100%;border:1px solid #e7e2e9;border-radius:14px;overflow:hidden;text-align:left;transition:border-color .15s,background .15s}.industry-buddy:hover{border-color:#b59ac9;background:#faf7fc}.industry-buddy-heading{display:flex;align-items:center;gap:12px;padding:12px;background:#f5f1f8;font-weight:800}.industry-buddy-heading small{display:block;margin-top:3px;font-size:11px;font-weight:500;color:#827989}.industry-buddy-art{display:grid;place-items:center;width:76px;height:76px;flex-shrink:0;border-radius:12px;background:#e9eee4;padding:6px;overflow:hidden}.industry-buddy-art svg{width:100%;height:100%;display:block}.industry-buddy-art>span{font-size:36px;color:#82718f}.industry-buddy-jump{margin-left:auto}.industry-buddy-goods{display:block;padding:10px 14px 12px}.industry-buddy-goods>small{display:block;margin-bottom:5px;color:#827989}.cargo-good .cargo-good-warning,.industry-storage-warning{display:block;color:#956120;font-size:11px;font-weight:700}.map-zoom-button{padding:0}.cargo-header-tools{display:flex;gap:6px}.cargo-stats{flex-wrap:wrap}.cargo-left-panel{position:absolute;z-index:45;top:12px;left:28px;bottom:28px;width:min(360px,calc(100% - 56px));display:flex;flex-direction:column;border:1px solid #e7e2e9;border-radius:16px;background:#fffdfb;box-shadow:0 12px 40px #514b5b26;overflow:hidden}.cargo-left-panel[hidden]{display:none}.cargo-left-panel-heading{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e7e2e9}.cargo-left-panel-heading h2{font-size:18px;font-weight:800}.cargo-left-panel-content{min-height:0;padding:16px;overflow-y:auto;overscroll-behavior:contain}.cargo-left-panel-content>*+*{margin-top:16px}.cargo-left-panel .cargo-panel,.cargo-left-panel .cargo-toolbar{padding:0;border:0;background:transparent}.cargo-left-panel .cargo-toolbar-heading{display:none}.cargo-left-panel .cargo-toolbar-body{flex-direction:column;align-items:stretch}.cargo-left-panel .cargo-toolbar-modes>*{flex:1}.cargo-left-panel .cargo-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.cargo-build-group+.cargo-build-group{border-top:1px solid #e9e3ed;padding-top:12px}.cargo-build-group-title{margin:0 0 6px;font-size:11px;font-weight:700;color:#827989}.truck-dialog{width:min(460px,calc(100% - 32px));max-height:85dvh;padding:0;overflow-y:auto;border-radius:16px;box-shadow:0 12px 40px #514b5b26}.truck-dialog::backdrop{background:#36253e66}.truck-scene{position:relative;display:grid;place-items:center;aspect-ratio:16 / 9;overflow:hidden}.vehicle-scene-road{background:#a9c58a}.vehicle-scene-water{background:#83cbd7}.vehicle-scene-background{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.truck-scene .truck-detail-art{position:relative;width:60%;height:180px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 12px 10px #514b5b26)}.vehicle-model-heading{display:flex;align-items:center;gap:14px}.vehicle-model-art{width:80px;height:76px;flex-shrink:0}.vehicle-purchase-art{width:100%;height:130px;padding:8px;border-radius:10px;background:#f1ecf5}.vehicle-fleet-art{width:52px;height:50px;flex-shrink:0}.train-wagon-panel{min-width:0}.train-wagon-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.train-wagon-heading-actions{display:flex;align-items:center;gap:10px}.train-wagon-edit{display:grid;place-items:center;min-width:38px;padding:8px}.train-consist{display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:14px 0;list-style:none}.train-coupled-wagon{display:grid;justify-items:center;gap:3px;width:76px;min-width:0;text-align:center;font-size:11px}.train-coupled-wagon strong{max-width:100%;overflow-wrap:anywhere}.train-coupled-art{width:72px;height:52px}.train-coupled-wagon .industry-progress{height:4px}.train-cargo-summary{display:flex;flex-wrap:wrap;gap:6px 14px;color:#8b8098;font-size:12px}.train-catalog-heading{margin:22px 0 12px}.train-wagon-catalog{border-top:1px solid #e7e2e9}.train-wagon-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #e7e2e9}.train-catalog-art{width:58px;height:48px;flex-shrink:0}.train-wagon-model{display:grid;gap:3px;flex:1;min-width:0}.train-wagon-price{display:grid;text-align:right;font-variant-numeric:tabular-nums}.train-wagon-price span{color:#8b8098;font-size:11px}.train-wagon-row .cargo-button{flex-shrink:0}.train-wagon-footer{display:flex;align-items:center;gap:12px;margin-top:16px}.train-wagon-footer p{flex:1;min-width:0;margin:0}@media(max-width:420px){.train-wagon-row{flex-wrap:wrap;gap:8px}.train-catalog-art{width:44px;height:42px}.train-wagon-model{flex-basis:calc(100% - 60px)}.train-wagon-price{display:flex;gap:4px;margin-left:52px;margin-right:auto}}.truck-status{position:absolute;left:18px;bottom:14px;padding:5px 12px;border-radius:20px;background:#fffdfb;font-size:12px;font-weight:800;text-transform:capitalize}.truck-heading{padding:20px 24px 0}.truck-heading h2{font-size:24px}.truck-details{display:grid;gap:16px;padding:20px 24px 24px;font-size:13px}.truck-route{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.train-route-destination{min-width:0;padding:10px 12px;border:1px solid #c9b9de;border-radius:12px;background:#f2ebfa;color:#513476}.train-route-destination small{font-weight:700;margin-bottom:3px}.train-route-destination strong{font-size:16px;overflow-wrap:anywhere}.truck-route small,.truck-route strong{display:block}.truck-removal p{margin-bottom:12px}.truck-locate{right:56px}.vehicle-details .cargo-icon-button{display:grid;place-items:center;width:38px;height:38px;padding:0;flex:0 0 38px}.truck-route-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.truck-full-route{margin-top:12px}.truck-full-route summary{color:#60536e;cursor:pointer}.truck-next-station{width:100%;margin-top:16px}.truck-actions-footer{border-top:1px solid #e5dfe9;padding-top:16px}.truck-remove{background:transparent;color:#a63d48}.truck-remove:hover{background:#fff0f1}@media(max-width:640px){.cargo-app{height:100dvh;overflow:hidden}.cargo-workspace .map-view{flex:1;height:auto;min-height:0}.cargo-left-panel{left:16px;bottom:auto;max-height:55%;width:min(360px,calc(100% - 32px))}}.route-tutorial-reminder{position:fixed;left:16px;bottom:16px;z-index:40;width:min(340px,calc(100vw - 32px));max-height:min(460px,calc(100dvh - 120px));overflow-y:auto;padding:16px;border:2px solid #dbc4ed;border-radius:20px;background:#fffafc;box-shadow:0 8px 24px #4d286c22}.route-tutorial-reminder h2{margin-top:8px}.route-tutorial-reminder p{margin:8px 0 12px;font-size:.85rem}.route-tutorial-reminder .cargo-button{padding:6px 10px;font-size:.8rem}.industry-list-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:12px;font-size:.85rem;font-weight:700}.industry-list-filters select{min-width:0;width:100%;padding:8px;border:1px solid #dbc4ed;border-radius:10px;background:#fff;color:#59356e}.vehicle-model-info{min-width:0;display:grid;gap:4px}.vehicle-model-purchase{display:flex;align-items:center;justify-content:space-between;gap:8px}.vehicle-type-choice{display:grid;gap:12px}.mochi-family-dialog{width:min(860px,calc(100% - 2rem));max-height:85dvh;overflow-y:auto;background:#fffaf1;border-color:#e8d8df}.mochi-family-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.75rem}.mochi-family-intro{margin-top:.4rem;color:#876197;font-size:.875rem}.mochi-family-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:1.5rem;padding:.35rem}.mochi-family-card{padding:.75rem .75rem 1.25rem;border:1px solid #e8d8df;border-radius:.4rem;background:#fff;text-align:center;box-shadow:0 3px 8px #61495f12;transform:rotate(-1deg)}.mochi-family-card:nth-child(2n){transform:rotate(1deg)}.mochi-family-mystery .mochi-family-portrait{display:grid;place-items:center;color:#a57426;font-size:5rem;font-weight:900;background:#fff2da}.mochi-family-portrait{height:180px;padding:.75rem;margin-bottom:.75rem;border-radius:.25rem;background:#f6eaf6}.mochi-family-card:nth-child(3n+2) .mochi-family-portrait{background:#fff2da}.mochi-family-card:nth-child(3n) .mochi-family-portrait{background:#eaf3ed}.mochi-family-card img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.mochi-family-card dl{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem .75rem;font-size:.875rem}.mochi-family-card dl div{display:flex;gap:.3rem;margin-top:.35rem}.mochi-family-card dt{font-weight:800;color:#876197}.mochi-family-card .mochi-family-personality{flex-basis:100%;flex-direction:column;align-items:center;margin-top:.6rem}.mochi-family-personality dd{border-radius:.75rem;padding:.3rem .75rem;background:#f6eaf6;color:#61495f}@media(max-width:480px){.mochi-family-list{gap:1rem}.mochi-family-card,.mochi-family-card:nth-child(2n){transform:none}}.cargo-button.cargo-danger{background:#c6283c;border-color:#a71d30;color:#fff}.cargo-button.cargo-danger:hover{background:#a71d30}.truck-removal{display:flex;flex-wrap:wrap;gap:.75rem}.truck-removal p{flex-basis:100%}.truck-removal .cargo-danger{order:2}.mochi-family-detail{padding:.75rem;border-color:#e8d8df;border-radius:.4rem;background:#fffaf1}.mochi-family-detail .character-portrait{height:240px;background:#f6eaf6}.mochi-family-detail .character-details-copy{padding:.75rem;transform:none}.mochi-family-detail dl{display:flex;margin-bottom:0}.mochi-family-detail dl>div{display:flex;gap:.3rem}.mochi-family-detail .character-details-label{margin-bottom:.4rem}.map-view>.overflow-auto{touch-action:pan-x pan-y}body.frontpage-body{overflow:auto;background:#fffdfb}.tutorial-speaker{display:flex;align-items:center;gap:8px;margin-top:8px;color:#713f75}.tutorial-speaker img{width:64px;height:64px;-o-object-fit:contain;object-fit:contain;border-radius:50%;background:#fce7f3}.tutorial-speaker span{font-size:.8rem}.tutorial-click-hint{padding:8px;background:#fef3c7;border-radius:10px;font-weight:800}.tutorial-success{color:#166534;font-weight:800}.tutorial-map-target{animation:tutorial-glow 1.2s ease-in-out infinite alternate}@keyframes tutorial-glow{0%{opacity:.6}to{opacity:1}}@media(prefers-reduced-motion:reduce){.tutorial-map-target{animation:none}}.route-tutorial-reminder{left:auto;right:16px;z-index:50}@media(max-width:640px){.route-tutorial-reminder{max-height:min(340px,calc(100dvh - 180px));padding:12px}.tutorial-speaker img{width:40px;height:40px}}.tutorial-toolbar-list{display:grid;gap:10px;margin:12px 0}.tutorial-toolbar-list li{display:flex;align-items:flex-start;gap:10px}.tutorial-toolbar-list svg{flex-shrink:0;margin-top:2px;color:#9561a4}.tutorial-toolbar-list li p{margin:2px 0 0}.map-build-toolbar{position:absolute;top:12px;left:12px;z-index:35;width:-moz-max-content;width:max-content;max-width:calc(100% - 84px);max-height:35%;overflow:auto;padding:6px;border:1px solid #e7d7ec;border-radius:16px;background:#fffdfbf5;box-shadow:0 6px 20px #514b5b24}.map-build-toolbar-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.map-build-toolbar-group{padding-right:6px;border-right:1px solid #eadfee}.map-build-toolbar-group-buttons{display:flex;gap:4px;flex-wrap:wrap}.map-build-toolbar .cargo-tool{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:4px;border:1px solid transparent;flex-shrink:0}.map-build-toolbar .cargo-tool img,.map-build-toolbar .cargo-tool>svg{width:34px;height:34px;grid-row:auto}.map-build-toolbar .cargo-tool:focus-visible{outline:2px solid #9561a4;outline-offset:1px}.map-build-toolbar .cargo-tool:disabled{opacity:.45}@media(max-width:640px){.map-build-toolbar .cargo-tool{width:36px;height:36px;min-height:36px}.map-build-toolbar .cargo-tool img,.map-build-toolbar .cargo-tool>svg{width:28px;height:28px}}.tutorial-click-hint{display:block;width:100%;text-align:left;cursor:pointer;border:1px solid #f3d477;font-size:.85rem}.tutorial-click-hint:hover{background:#fde68a}.tutorial-click-hint:focus-visible,.tutorial-toolbar-list li:focus-visible{outline:2px solid #d97706;outline-offset:3px}.tutorial-toolbar-list li{padding:4px;border-radius:8px}.tutorial-toolbar-list li:hover,.tutorial-toolbar-list li:focus{background:#fef3c7}[data-toolbar-button].tutorial-toolbar-target{outline:3px solid #f59e0b;outline-offset:3px;background:#fef3c7;box-shadow:0 0 0 7px #fbbf2440}@media(max-width:560px){.medals-dialog{padding:12px}.medals-heading h2{font-size:1.2rem}.medals-heading p{font-size:.8rem;margin:4px 0}.medals-scroll{margin-top:8px;max-height:calc(100dvh - 130px)}.medals-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.medal-card{padding:8px}.medal-art{width:64px}.medal-card h3{font-size:.85rem;margin:4px 0}.medal-description{font-size:.75rem;margin:4px 0 6px}.medal-progress-copy{gap:4px;flex-wrap:wrap}}.route-tutorial-industry-open{left:16px;right:auto}@media(max-width:800px){.route-tutorial-industry-open{bottom:8px;max-height:150px;width:calc(100vw - 32px)}.route-tutorial-industry-open .tutorial-speaker{display:none}.cargo-map:has(.industry-pop-in){--tutorial-space: 170px}body:has(.route-tutorial-industry-open) .industry-pop-in{bottom:170px}}.cargo-header-account{margin-left:auto}.cargo-header-left{margin-left:0}[data-promo-play]{line-height:1}[data-promo-play]>span{line-height:1}@media(max-width:640px){.cargo-header-main>.cargo-brand{order:1}.cargo-header-main>.cargo-stats{order:2}.cargo-header-main>.cargo-header-left{flex:1 0 calc(100% - 100px)}.cargo-top-toolbar .cargo-header-navigation{position:relative;min-width:0;flex-wrap:nowrap;gap:2px;padding:4px 8px}.cargo-top-toolbar .cargo-header-tools{flex-wrap:nowrap;gap:2px}.cargo-top-toolbar .cargo-header-navigation .cargo-icon-button{width:40px;min-width:40px;height:40px;min-height:40px;padding:0}.cargo-header-navigation .cargo-toolbar-badge{position:absolute;top:0;right:-1px;font-size:9px;padding:0 3px;pointer-events:none}.cargo-top-toolbar .cargo-play-time{gap:3px;padding:0;flex-shrink:0}.cargo-play-time>svg{width:14px;height:14px}.cargo-play-time>div>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.cargo-play-time strong{font-size:14px}.cargo-play-time-reset{position:absolute;top:calc(100% + 4px);right:6px;z-index:55;padding:8px 12px;border-radius:8px;background:#fffdfb;box-shadow:0 4px 12px #514b5b26}}.cargo-profile-panel{position:absolute;right:12px;top:12px;z-index:40;width:min(360px,calc(100% - 24px));max-height:calc(100% - 24px);overflow-y:auto;border:2px solid #e7e2e9;border-radius:20px;background:#fff8fc;box-shadow:0 12px 32px #70556d26}.cargo-button.cargo-account-secondary{background:transparent;border-color:#cfc3da;color:#60536e}.cargo-button.cargo-account-secondary:hover{background:#eee7f3}.cargo-button.cargo-account-warning{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;border-color:#e0aa60;background:#fff0d6;color:#85420e}.cargo-button.cargo-account-warning:hover{background:#ffe3b2}.cargo-account-warning svg{flex-shrink:0}.route-tutorial-heading{padding-right:36px}.tutorial-task{padding:10px 12px;border-left:4px solid #9561a4;border-radius:8px;background:#f3eafa;font-weight:800}.tutorial-actions{display:flex;flex-wrap:wrap;gap:8px}.tutorial-actions>.flex{width:100%}@media(max-width:800px){.route-tutorial-reminder,.route-tutorial-industry-open{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));width:auto;max-height:min(360px,48dvh);padding:10px 12px;display:flex;flex-direction:column;overflow:hidden}.route-tutorial-reminder .tutorial-speaker{display:none}.route-tutorial-reminder[data-tutorial-step=welcome],.route-tutorial-reminder[data-tutorial-step=toolbar]{max-height:min(420px,65dvh)}.route-tutorial-reminder .tutorial-welcome-actions{display:grid;grid-template-columns:1fr 1fr}.tutorial-welcome-actions>:first-child{grid-column:1 / -1}.tutorial-content{overflow-y:auto;min-height:0;overscroll-behavior:contain}.route-tutorial-reminder .tutorial-actions{flex-shrink:0;padding-top:8px;border-top:1px solid #dbc4ed;background:#fffafc}.app-theme .route-tutorial-reminder .cargo-button,.app-theme .route-tutorial-reminder button.tutorial-click-hint{min-height:44px}.route-tutorial-reminder h2{font-size:1rem}.route-tutorial-reminder p{margin:6px 0 8px}body:has(.route-tutorial-industry-open) .industry-pop-in{bottom:calc(var(--tutorial-panel-height, 0px) + 16px + env(safe-area-inset-bottom));max-height:min(340px,44dvh)}body:has(.route-tutorial-industry-open) .industry-scene{height:100px;min-height:0}body:has(.route-tutorial-industry-open) .industry-scene img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.route-tutorial-industry-open{max-height:min(260px,34dvh)}.route-tutorial-industry-open .tutorial-content>p:not(.tutorial-task):not(.tutorial-success),.route-tutorial-industry-open .tutorial-click-hint{display:none}}.route-tutorial-reminder>.details-panel-fold-button{right:10px;z-index:6}.cargo-toolbar-warning{color:#a84b17;display:inline-flex}@media(max-width:640px){.cargo-toolbar-warning{position:absolute;bottom:0;right:0;border-radius:50%;background:#fff4c9;pointer-events:none}.cargo-toolbar-warning svg{width:14px;height:14px}}.town-construction{position:absolute;left:25%;right:25%;bottom:18%;display:flex;flex-direction:column;align-items:center;padding:2px;border-radius:4px;background:#fff4c9e6;border:1px solid #8a5b19;font-size:16px}.town-construction progress{width:100%;height:5px;accent-color:#b7791f}.home-resident-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:25px;height:29px;padding:2px;border:2px solid #946147;border-radius:50% 50% 50% 3px;background:#fff9eb;box-shadow:0 2px 4px #50372455;z-index:2}.home-resident-pin img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.home-resident-details{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.home-resident-details>img{width:45px;height:55px;-o-object-fit:contain;object-fit:contain}.map-water-glints{animation:map-water-glimmer 7s ease-in-out infinite}@keyframes map-water-glimmer{0%,to{opacity:.25}45%{opacity:.85}65%{opacity:.4}}@media(prefers-reduced-motion:reduce){.map-water-glints{animation:none;opacity:.6}}.cargo-route-planner{display:grid;gap:14px}.route-readiness{padding:16px 0;border-top:1px solid #efcadc;border-bottom:1px solid #efcadc;color:#512345;min-width:0}.route-readiness h3{font-weight:700;font-size:16px;line-height:1.4;margin:0 0 10px}.route-readiness ul{list-style:none;padding:0;margin:0}.route-readiness li{display:flex;gap:10px;padding:5px 0;font-size:14px;line-height:1.5}.route-readiness li>span{flex:none;font-weight:800;color:#3a6b46}.route-readiness-warning{margin-top:12px}.route-readiness-warning p{margin:0 0 12px;font-size:14px;line-height:1.5}.route-readiness-warning .cargo-button{min-height:44px;white-space:normal;width:100%}.cargo-route-planner fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:14px}.cargo-route-planner legend{font-weight:800;margin-bottom:10px}.cargo-route-goods{display:flex;flex-wrap:wrap;gap:8px}.cargo-route-goods .cargo-button{display:inline-flex;align-items:center;gap:6px;min-height:44px}.cargo-route-goods [aria-pressed=true]{background:#f4dce9;border-color:#944c7a}.cargo-route-field{display:grid;gap:6px;font-weight:700;min-width:0}.cargo-route-field select{width:100%;min-width:0;min-height:48px;font:inherit;font-size:16px;color:#512345;background:#fff9f4;border:2px solid #efcadc;border-radius:12px;padding:10px}.cargo-route-wagon-notice{margin:0;color:#67465f;font-size:14px;line-height:1.5}.cargo-route-actions{display:grid;gap:10px;background:#fffdfb;padding-top:12px;padding-bottom:env(safe-area-inset-bottom,0px)}.cargo-route-actions>.cargo-button:not(.cargo-primary){border-color:transparent;background:transparent;font-weight:500}.cargo-route-actions .cargo-button{min-height:48px;white-space:normal}.map-decoration-shop{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:12px;padding:16px}.map-decoration-shop h2,.map-decoration-shop h3{font-weight:800}.map-decoration-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.map-decoration-catalog button{display:flex;flex-direction:column;align-items:center;padding:10px}.map-decoration-catalog img{width:64px;height:72px;-o-object-fit:contain;object-fit:contain}.map-decoration-shop input:not([type=checkbox]),.map-decoration-shop select{display:block}.map-decoration-shop select{text-overflow:ellipsis}.map-decoration-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.map-decoration-tabs [aria-pressed=true]{background:#f4dce9;border-color:#944c7a}.map-decoration-placement{display:grid;gap:12px}.map-decoration-placement .cargo-button{min-height:44px}.map-decoration-selection-art{width:100%;height:110px;-o-object-fit:contain;object-fit:contain}.map-decoration-notice{color:#356047;background:#eef8ef;padding:10px;border-radius:10px}.map-decoration-move-cue{position:absolute;display:none;pointer-events:none;border:2px dashed #8658a3;border-radius:50%;background:#eedbff66}.map-decoration-move-cue span{position:absolute;bottom:100%;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:5px;padding:5px 9px;border-radius:10px;background:#fffdfb;color:#59356e;box-shadow:0 2px 8px #35203c33;white-space:nowrap;font-size:12px;font-weight:700;z-index:1}.map-decoration-move-cue svg{width:16px;height:16px}.map-decoration-instance[data-move-ready] .map-decoration-move-cue,.map-decoration-instance[data-dragging] .map-decoration-move-cue{display:block}.map-decoration-instance[data-move-ready]>img,.map-decoration-instance[data-dragging]>img{filter:drop-shadow(0 0 4px #8658a3)}@media(hover:hover){.map-decoration-instance[data-movable]:hover>img{filter:drop-shadow(0 0 4px #8658a3)}.map-decoration-instance[data-movable]:hover .map-decoration-move-cue{display:block}}.backdrop\:bg-purple-950\/40::backdrop{background-color:#3b076466}.last\:border-0:last-child{border-width:0px}.last\:pb-0:last-child{padding-bottom:0}.hover\:bg-pink-100:hover{--tw-bg-opacity: 1;background-color:rgb(252 231 243 / var(--tw-bg-opacity, 1))}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.focus\:bg-white\/20:focus{background-color:#fff3}.focus-visible\:outline:focus-visible{outline-style:solid}.focus-visible\:outline-2:focus-visible{outline-width:2px}.focus-visible\:outline-indigo-500:focus-visible{outline-color:#6366f1}.enabled\:hover\:scale-105:hover:enabled{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.enabled\:hover\:bg-pink-50:hover:enabled{--tw-bg-opacity: 1;background-color:rgb(253 242 248 / var(--tw-bg-opacity, 1))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.app-theme .missions-scene{height:140px;position:relative;overflow:hidden;border-radius:var(--cargo-radius-card);margin-bottom:var(--cargo-space-4);background:var(--cargo-control)}.app-theme .missions-scene-background{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.app-theme .missions-scene-character{position:absolute;right:8px;bottom:0;width:104px;height:132px;-o-object-fit:contain;object-fit:contain}.app-theme .missions-story{padding:var(--cargo-space-3);background:var(--cargo-info-bg);color:var(--cargo-info-text);border-radius:var(--cargo-radius-card);font-size:14px;line-height:1.5;margin-bottom:var(--cargo-space-3)}.app-theme .missions-description{font-size:14px;line-height:1.5}.app-theme .missions-objective strong{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.app-theme .missions-objective .cargo-good-icon{width:32px;height:32px;-o-object-fit:contain;object-fit:contain}.app-theme .missions-locate{display:inline-flex;align-items:center;gap:8px;margin-bottom:var(--cargo-space-4)}@media(max-width:560px){.app-theme .missions-scene{height:130px}.app-theme .missions-scene-character{width:92px;height:114px}}.app-theme .cargo-dialog.missions-dialog{max-height:calc(100dvh - 32px);padding:0;overflow:hidden}.app-theme .missions-dialog[open]{display:flex;flex-direction:column}.app-theme .cargo-dialog .missions-heading{margin:0;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid var(--cargo-border);flex-shrink:0}.app-theme .missions-heading h2{font-size:20px;font-weight:900;margin:0}.app-theme .missions-heading p{margin:4px 0 0;color:var(--cargo-muted);font-size:14px}.app-theme .missions-filters{display:flex;flex-wrap:wrap;gap:8px;padding:12px 24px;flex-shrink:0}.app-theme .missions-filters button:last-child{margin-left:auto}.app-theme .missions-dialog>.cargo-feedback{margin:0 16px 12px;flex-shrink:0}.app-theme .missions-body{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2fr);min-height:0;overflow:auto;border-top:1px solid var(--cargo-border)}.app-theme .missions-list{padding:12px;display:flex;flex-direction:column;gap:8px;overflow:auto;min-height:0;max-height:65dvh;border-right:1px solid var(--cargo-border)}.app-theme .missions-list-item{display:flex;flex-direction:row;align-items:center;gap:8px;text-align:left;flex-shrink:0;white-space:normal;overflow-wrap:anywhere}.app-theme .missions-list-portrait{width:44px;height:56px;flex-shrink:0;-o-object-fit:contain;object-fit:contain}.app-theme .missions-list-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.app-theme .missions-list-copy strong{font-size:14px}.app-theme .missions-list-item span{font-size:12px;font-weight:400}.app-theme .missions-detail{padding:24px;min-width:0;overflow:auto;max-height:65dvh;font-size:14px}.app-theme :is(.missions-back,.missions-list-chevron,.missions-list-progress,.missions-mobile-locate){display:none}.app-theme .missions-detail-heading{display:flex;align-items:center;gap:12px;margin-bottom:16px}.app-theme .missions-detail-heading img{width:64px;height:72px;-o-object-fit:contain;object-fit:contain}.app-theme .missions-detail-heading p{margin:0;color:var(--cargo-muted)}.app-theme .missions-detail-heading h3{margin:4px 0 0;font-size:20px;font-weight:800;overflow-wrap:anywhere}.app-theme .missions-objectives{display:grid;gap:16px;margin:24px 0}.app-theme .missions-objective>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.app-theme .missions-objective span{font-variant-numeric:tabular-nums;color:var(--cargo-muted)}.app-theme .missions-objective progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:var(--cargo-radius-control);overflow:hidden;display:block;width:100%;height:8px;accent-color:var(--cargo-primary);margin:8px 0}.app-theme .missions-objective progress::-webkit-progress-bar{background:var(--cargo-control)}.app-theme .missions-objective progress::-webkit-progress-value{background:var(--cargo-primary)}.app-theme .missions-objective progress::-moz-progress-bar{background:var(--cargo-primary)}.app-theme .missions-reward{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px;border-radius:12px;background:var(--cargo-info-bg);color:var(--cargo-info-text)}.app-theme .missions-reward+.cargo-feedback{margin-top:var(--cargo-space-3)}.app-theme .missions-note{color:var(--cargo-muted);font-size:12px;margin-top:12px}.app-theme .missions-decoration-reward{display:inline-flex;align-items:center;gap:8px;min-width:0;overflow-wrap:anywhere}.app-theme .missions-decoration-reward img{width:56px;height:64px;flex-shrink:0;-o-object-fit:contain;object-fit:contain}.app-theme .missions-list-item .missions-decoration-reward img{width:32px;height:36px}.app-theme .missions-reward{align-items:center}.app-theme .missions-message{padding:12px 24px;font-size:14px}@media(max-width:560px){.app-theme .cargo-dialog .missions-heading{padding:16px}.app-theme .missions-filters{padding:8px 16px}.app-theme .missions-filters button:last-child{margin-left:0}.app-theme .missions-body{display:flex;flex-direction:column;flex:1;overflow:hidden}.app-theme .missions-list{max-height:none;flex:1;border-right:0;border-bottom:0;overscroll-behavior:contain}.app-theme .missions-detail{display:none;max-height:none;padding:0;overflow:hidden;flex:1;min-height:0}.app-theme .missions-dialog{height:calc(100dvh - 32px)}.app-theme .missions-show-detail .missions-detail{display:flex;flex-direction:column}.app-theme .missions-show-detail :is(.missions-list,.missions-filters,.missions-heading>div){display:none}.app-theme .missions-show-detail .missions-back{display:inline-flex;align-items:center;gap:8px}.app-theme .missions-detail-scroll{padding:16px;overflow:auto;overscroll-behavior:contain;min-height:0;flex:1}.app-theme .missions-detail-actions{flex-shrink:0;padding:12px 16px;margin:0;border-top:1px solid var(--cargo-border)}.app-theme .missions-detail-actions:has(>.missions-claim-pending:only-child){display:none}.app-theme .missions-detail-actions>button{width:100%}.app-theme .missions-detail-actions .missions-mobile-locate{display:inline-flex;justify-content:center;align-items:center;gap:8px}.app-theme :is(.missions-claim-pending,.missions-detail-scroll .missions-locate,.missions-detail-scroll .missions-objective button){display:none}.app-theme .missions-list-chevron{display:inline-flex;margin-left:auto}.app-theme .missions-list-copy{flex:1}.app-theme .missions-list-progress,.app-theme .missions-list-progress>span{display:block}.app-theme .missions-list-progress progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:8px;overflow:hidden;display:block;width:100%;height:7px;margin-top:4px;accent-color:var(--cargo-primary)}.app-theme .missions-list-progress progress::-webkit-progress-bar{background:var(--cargo-control)}.app-theme .missions-list-progress progress::-webkit-progress-value{background:var(--cargo-primary)}.app-theme .missions-list-progress progress::-moz-progress-bar{background:var(--cargo-primary)}}.app-theme .vehicle-overview-status{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--cargo-info-bg);color:var(--cargo-info-text);font-size:12px;font-weight:800;text-align:center}.app-theme .vehicle-overview-status[data-status=moving]{background:var(--cargo-success-bg);color:var(--cargo-success-text)}.app-theme .vehicle-overview-status[data-status=blocked]{background:var(--cargo-error-bg);color:var(--cargo-error-text)}.app-theme .vehicle-overview-status[data-status=waiting_for_rail]{background:var(--cargo-warning-bg);color:var(--cargo-warning-text)}.app-theme .vehicle-overview-transport{display:flex;flex-wrap:wrap;gap:var(--cargo-space-2);margin-top:var(--cargo-space-4)}.app-theme .vehicle-overview-group{margin:var(--cargo-space-4) 0 var(--cargo-space-2);padding:var(--cargo-space-3);background:var(--cargo-control);color:var(--cargo-text);border-radius:var(--cargo-radius-control);font-size:14px;font-weight:800;overflow-wrap:anywhere}.app-theme .vehicle-overview-cargo-progress{display:block;width:min(100%,240px);height:8px;margin-bottom:var(--cargo-space-2);border:0;border-radius:8px;overflow:hidden;background:var(--cargo-control);accent-color:var(--cargo-primary)}.app-theme .vehicle-overview-cargo-progress::-webkit-progress-bar{background:var(--cargo-control)}.app-theme .vehicle-overview-cargo-progress::-webkit-progress-value{background:var(--cargo-primary);border-radius:8px}.app-theme .vehicle-overview-cargo-progress::-moz-progress-bar{background:var(--cargo-primary);border-radius:8px}.app-theme .vehicle-overview-heading{flex-wrap:wrap}.app-theme .vehicle-overview-heading-controls{display:flex;flex:1;min-width:0;flex-wrap:wrap;align-items:center;gap:var(--cargo-space-2)}.app-theme .vehicle-overview-count{margin:0 auto 0 0;color:var(--cargo-muted);font-size:14px}.app-theme .vehicle-overview-heading-controls .vehicle-overview-transport{margin-top:0}.app-theme .vehicle-overview-buy{display:inline-flex;align-items:center;justify-content:center;gap:var(--cargo-space-2);flex-shrink:0;white-space:nowrap}.app-theme .vehicle-overview-buy>svg{flex-shrink:0}@media(max-width:640px){.app-theme .vehicle-overview-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--cargo-space-2);align-items:center}.app-theme .vehicle-overview-heading-controls{display:contents}.app-theme .vehicle-overview-count{grid-column:1;grid-row:1}.app-theme .vehicle-overview-buy{grid-column:2;grid-row:1;width:44px;min-height:44px;padding:8px}.app-theme .vehicle-overview-buy>span{display:none}.app-theme .vehicle-overview-heading-controls .vehicle-overview-transport{grid-column:1 / -1;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.app-theme .vehicle-overview-transport .cargo-button{min-width:0;min-height:44px;padding:8px 4px;overflow-wrap:anywhere}}.app-theme .cargo-left-panel.cargo-vehicle-overview-page{left:var(--cargo-panel-edge);right:var(--cargo-panel-edge);width:auto;max-width:none;max-height:none;background:var(--cargo-surface)}.app-theme .vehicle-overview-filters{display:grid;grid-template-columns:minmax(200px,2fr) repeat(4,minmax(120px,1fr));gap:12px;margin-top:16px}.app-theme .vehicle-overview-filters label{display:grid;gap:4px;min-width:0;font-size:14px;font-weight:700}.app-theme .vehicle-overview-filters :is(input,select){width:100%;min-width:0;min-height:44px;padding:8px 12px;border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-control);background:var(--cargo-surface);color:var(--cargo-text);font:inherit;font-size:16px}.app-theme .vehicle-overview-results{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0}.app-theme .vehicle-overview-results p{margin-right:auto}.app-theme .vehicle-overview .vehicle-fleet-row{border:1px solid var(--cargo-border);background:var(--cargo-surface);color:var(--cargo-text);min-height:100px}.app-theme .vehicle-overview .vehicle-fleet-row:hover{background:var(--cargo-hover)}.app-theme .vehicle-overview .vehicle-fleet-row>span{color:var(--cargo-text)}.app-theme .vehicle-overview .vehicle-fleet-description>strong{color:var(--cargo-text)}.app-theme .vehicle-overview-route,.app-theme .vehicle-overview-load{display:block;font-size:14px;overflow-wrap:anywhere;color:var(--cargo-muted);margin-top:4px}@media(max-width:900px){.app-theme .vehicle-overview-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.app-theme .vehicle-overview-filters label:first-child{grid-column:1 / -1}}@media(min-width:1000px){.app-theme .vehicle-overview .vehicle-fleet-row{gap:var(--cargo-space-6);padding:var(--cargo-space-4)}.app-theme .vehicle-overview .vehicle-fleet-description{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,1fr) minmax(180px,1fr);-moz-column-gap:var(--cargo-space-6);column-gap:var(--cargo-space-6);row-gap:var(--cargo-space-2);align-items:center}.app-theme .vehicle-overview .vehicle-fleet-description>strong{grid-column:1;grid-row:1}.app-theme .vehicle-overview .vehicle-fleet-wagons{grid-column:1;grid-row:2}.app-theme .vehicle-overview-route{grid-column:2;grid-row:1 / 3;margin:0}.app-theme .vehicle-overview-load{grid-column:3;grid-row:1 / 3;margin:0}.app-theme .vehicle-overview-cargo-progress{width:100%}.app-theme .vehicle-overview .vehicle-fleet-row>span:last-child{flex:0 0 120px;white-space:normal;text-align:right}}@media(max-width:640px){.app-theme .cargo-left-panel.cargo-vehicle-overview-page{max-height:none}.app-theme .vehicle-overview .vehicle-fleet-row{flex-wrap:wrap;gap:8px}.app-theme .vehicle-overview .vehicle-fleet-row>.vehicle-fleet-description{flex-basis:calc(100% - 100px)}.app-theme .vehicle-overview .vehicle-fleet-row>span:last-child{white-space:normal}}.app-theme .cargo-toolbar-extra{display:contents}.app-theme .cargo-mobile-more,.app-theme .cargo-toolbar-extra-heading{display:none}.app-theme .map-build-toolbar{top:var(--cargo-panel-edge);left:var(--cargo-panel-edge);width:480px;max-width:calc(100% - 84px);max-height:calc(100% - 24px);padding:var(--cargo-space-4);box-sizing:border-box;border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-panel);background:var(--cargo-surface);color:var(--cargo-text);box-shadow:var(--cargo-shadow-floating)}.app-theme .map-build-heading{display:flex;align-items:center;gap:8px;margin-bottom:12px}.app-theme .map-build-heading h2{font-size:18px;margin:0;flex:1}.app-theme .map-build-current,.app-theme .map-build-change,.app-theme .map-build-categories{display:none}.app-theme .map-build-toolbar-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.app-theme .map-build-toolbar-group{padding:0;border:0;min-width:0}.app-theme .map-build-toolbar-group h3{font-size:14px;margin:0 0 8px;font-weight:800}.app-theme .map-build-toolbar-group-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.app-theme .map-build-toolbar .cargo-tool{width:auto;min-width:0;height:auto;min-height:76px;display:flex;flex-direction:column;gap:4px;padding:8px;font-size:13px;line-height:1.3;border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-control);background:var(--cargo-control);color:var(--cargo-text)}.app-theme .map-build-toolbar .cargo-tool:hover{background:var(--cargo-hover)}.app-theme .map-build-toolbar .cargo-tool[aria-pressed=true]{background:var(--cargo-selected);color:var(--cargo-selected-text);border-color:var(--cargo-selected-border)}.app-theme .map-build-toolbar .cargo-tool>svg{width:28px;height:28px;flex-shrink:0}.app-theme .map-build-toolbar .cargo-tool-label{min-width:0;width:100%;min-height:2.6em;display:grid;place-items:center;overflow-wrap:anywhere;text-align:center}.app-theme .map-build-toolbar .cargo-tool-price{font-size:11px;text-align:center}.app-theme .map-build-guidance{grid-column:1 / -1;order:1;margin:0;padding-top:12px;border-top:1px solid var(--cargo-border);font-size:14px}@media(max-width:1024px),(hover:none)and (pointer:coarse){.app-theme .map-build-toolbar{top:auto;bottom:calc(var(--cargo-panel-edge) + env(safe-area-inset-bottom));width:auto;right:var(--cargo-panel-edge);max-width:none;max-height:35dvh;padding:8px;display:flex;flex-direction:column;overflow:hidden}.app-theme .map-build-heading{margin-bottom:8px;flex-shrink:0}.app-theme .map-build-heading h2{font-size:16px}.app-theme .map-build-heading .cargo-button{min-height:44px}.app-theme .map-build-picker{min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:3px}.app-theme .map-build-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-bottom:8px;flex-shrink:0}.app-theme .map-build-categories .cargo-button{min-height:44px;padding:8px 4px}.app-theme .map-build-toolbar-tools{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;overflow:auto;min-height:0;padding:3px}.app-theme .map-build-toolbar-group[data-active=false],.app-theme .map-build-toolbar-group h3{display:none}.app-theme .map-build-toolbar-group-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.app-theme .map-build-toolbar .cargo-tool{min-height:44px;flex-direction:row;flex-wrap:wrap;justify-content:center}.app-theme .map-build-toolbar .cargo-tool>svg{width:24px;height:24px}.app-theme .map-build-toolbar .cargo-tool-price{width:100%}.app-theme .map-build-guidance{margin-top:8px;padding-top:8px}.app-theme .map-build-toolbar.is-collapsed .map-build-picker,.app-theme .map-build-toolbar.is-collapsed h2{display:none}.app-theme .map-build-toolbar.is-collapsed .map-build-heading{margin:0}.app-theme .map-build-toolbar.is-collapsed .map-build-current{display:block;flex:1;min-width:0;font-size:13px;font-weight:800}.app-theme .map-build-toolbar.is-collapsed .map-build-change{display:block}}@media(max-width:640px)and (max-height:400px){.app-theme .map-build-toolbar:not(.is-collapsed) .map-build-heading{margin:0;height:0}.app-theme .map-build-toolbar:not(.is-collapsed) h2{display:none}.app-theme .map-build-toolbar:not(.is-collapsed) .cargo-close{position:absolute;top:8px;right:8px}.app-theme .map-build-categories{margin-right:52px;margin-bottom:4px}}.app-theme{--cargo-safe-top: env(safe-area-inset-top, 0px);--cargo-safe-right: env(safe-area-inset-right, 0px);--cargo-safe-bottom: env(safe-area-inset-bottom, 0px);--cargo-safe-left: env(safe-area-inset-left, 0px);--cargo-canvas: #f7f5f1;--cargo-surface: #fffdfb;--cargo-text: #514b5b;--cargo-muted: #756b7c;--cargo-border: #e7e2e9;--cargo-control: #f7f4f9;--cargo-hover: #eee7f3;--cargo-primary: #73508c;--cargo-primary-hover: #604077;--cargo-on-primary: #ffffff;--cargo-selected: #e9def2;--cargo-selected-border: #9471ae;--cargo-selected-text: #583b70;--cargo-focus: #9471ae;--cargo-info-bg: #f1eaf7;--cargo-info-text: #583b70;--cargo-success-bg: #eef8ef;--cargo-success-text: #30613e;--cargo-success-border: #b7d6be;--cargo-warning-bg: #fff0d6;--cargo-warning-text: #85420e;--cargo-warning-border: #e0aa60;--cargo-error-bg: #fff0f1;--cargo-error-text: #a71d30;--cargo-error-border: #e6b3bc;--cargo-danger: #c6283c;--cargo-danger-hover: #a71d30;--cargo-space-1: 4px;--cargo-space-2: 8px;--cargo-space-3: 12px;--cargo-space-4: 16px;--cargo-space-6: 24px;--cargo-space-8: 32px;--cargo-radius-control: 8px;--cargo-radius-card: 12px;--cargo-radius-panel: 16px;--cargo-panel-edge: 12px;--cargo-shadow-floating: 0 12px 40px #514b5b26;--cargo-backdrop: #36253e66;--cargo-dialog-compact: 448px;--cargo-dialog-standard: 560px;--cargo-dialog-collection: 860px;color:var(--cargo-text);background:var(--cargo-canvas)}.app-theme :is(.cargo-panel,.kawaii-panel,.cargo-dialog){padding:var(--cargo-space-4);border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-panel);background:var(--cargo-surface);color:var(--cargo-text)}.app-theme :is(.cargo-header,.cargo-left-panel-heading){border-color:var(--cargo-border);background:var(--cargo-surface)}.app-theme .cargo-workspace{gap:var(--cargo-space-4)}.app-theme .cargo-header-main{gap:var(--cargo-space-2) var(--cargo-space-4)}.app-theme :is(.cargo-header-navigation,.cargo-toolbar-modes,.cargo-tool-grid){gap:var(--cargo-space-2)}.app-theme :is(.cargo-toolbar,.cargo-minimap,.medal-card){border-color:var(--cargo-border);border-radius:var(--cargo-radius-card)}.app-theme .cargo-app .map-view{border-color:var(--cargo-border);border-radius:var(--cargo-radius-panel);background:#f3ecde url(/art/map-background-warm-atlas.webp) center / cover no-repeat}.app-theme .cargo-button{min-height:38px;padding:var(--cargo-space-2) var(--cargo-space-3);border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-control);background:var(--cargo-control);color:var(--cargo-text);font-size:13px;font-weight:700;line-height:1.4}.app-theme .cargo-button:hover{background:var(--cargo-hover)}.app-theme :is(.cargo-button[aria-pressed=true],.cargo-tool[aria-pressed=true]){border-color:var(--cargo-selected-border);background:var(--cargo-selected);color:var(--cargo-selected-text);box-shadow:inset 0 0 0 1px var(--cargo-selected-border)}.app-theme .cargo-button.cargo-primary{border-color:var(--cargo-primary);background:var(--cargo-primary);color:var(--cargo-on-primary);box-shadow:none}.app-theme .cargo-button.cargo-primary:hover{border-color:var(--cargo-primary-hover);background:var(--cargo-primary-hover)}.app-theme .cargo-button.cargo-danger{border-color:var(--cargo-danger-hover);background:var(--cargo-danger);color:var(--cargo-on-primary)}.app-theme .cargo-button.cargo-danger:hover{background:var(--cargo-danger-hover)}.app-theme :is(.cargo-signout,.cargo-generate,.cargo-button.cargo-account-secondary){background:transparent}.app-theme .cargo-button.cargo-account-warning{border-color:var(--cargo-warning-border);background:var(--cargo-warning-bg);color:var(--cargo-warning-text)}.app-theme .cargo-button.cargo-account-warning:hover{background:#ffe3b2}.app-theme .cargo-button:disabled{opacity:.5;cursor:not-allowed}.app-theme :is(button,input,select,textarea,summary,a):focus-visible{outline:3px solid var(--cargo-focus);outline-offset:3px}.app-theme :is(.cargo-toolbar-hint,.cargo-tool-price,.industry-muted,.decoration-hint){color:var(--cargo-muted)}.app-theme :is(.cargo-dialog,.cargo-profile-panel,.cargo-login){font-size:14px;line-height:1.5}.app-theme :is(.cargo-dialog,.cargo-profile-panel,.cargo-login) .cargo-button{min-height:44px;font-size:14px}.app-theme :is(.cargo-login,.cargo-profile-panel,.cargo-route-field) :is(input:not([type=hidden]),select),.app-theme .artifact-picker-search input{min-width:0;min-height:44px;padding:var(--cargo-space-2) var(--cargo-space-3);border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-control);background:var(--cargo-surface);color:var(--cargo-text);font-size:16px}.app-theme input[readonly]{background:var(--cargo-control);color:var(--cargo-muted)}.app-theme input[aria-invalid=true]{border-color:var(--cargo-error-text)}.app-theme .cargo-route-field select{min-height:48px;width:100%}.app-theme .cargo-dialog{max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;box-shadow:var(--cargo-shadow-floating)}.app-theme .cargo-dialog::backdrop{background:var(--cargo-backdrop)}.app-theme .cargo-dialog-compact{width:min(var(--cargo-dialog-compact),calc(100vw - 32px))}.app-theme .cargo-dialog.cargo-dialog-collection{width:min(var(--cargo-dialog-collection),calc(100vw - 32px))}.app-theme :is(.tips-dialog,.truck-dialog){width:min(var(--cargo-dialog-standard),calc(100vw - 32px));max-width:var(--cargo-dialog-standard)}.app-theme .tips-dialog{padding:var(--cargo-space-6)}.app-theme .tips-dialog h2{font-size:20px}.app-theme .tips-bubble{border:1px solid var(--cargo-border)}.app-theme .truck-dialog{padding:0}.app-theme .mochi-family-dialog{width:min(var(--cargo-dialog-collection),calc(100vw - 32px))}.app-theme .medals-dialog{width:min(1240px,calc(100vw - 32px));height:min(820px,calc(100dvh - 32px))}.app-theme .medals-cabinet{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;flex:1;min-height:0;margin-top:16px}.app-theme .medals-collection{display:flex;flex-direction:column;min-width:0;min-height:0}.app-theme .medals-filters{display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0;padding-bottom:12px}.app-theme .medals-collection .medals-scroll{flex:1;margin:0;overscroll-behavior:contain;scrollbar-gutter:stable;padding:4px}.app-theme .medals-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr));gap:8px;margin:0;align-content:start}.app-theme .medal-tile{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;min-width:0;padding:12px 8px;border:1px solid transparent;border-radius:var(--cargo-radius-card);background:transparent;color:var(--cargo-text);font:inherit}.app-theme .medal-tile:hover{background:var(--cargo-hover)}.app-theme .medal-tile[aria-pressed=true]{background:var(--cargo-control);border-color:var(--cargo-selected-border)}.app-theme .medal-tile .medal-art{width:104px}.app-theme .medal-tile-name{font-size:14px;font-weight:800;line-height:1.35;min-height:38px;display:flex;align-items:center;text-align:center;overflow-wrap:anywhere}.app-theme .medals-detail{min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;border-left:1px solid var(--cargo-border);padding-left:24px}.app-theme .medals-detail-list{margin:0;padding:0;list-style:none}.app-theme .medals-detail .medal-card{padding:0;border:0;background:transparent;border-radius:0}.app-theme .medals-detail .medal-art{width:180px;margin:8px auto 16px}.app-theme .medals-detail h3{font-size:18px;margin:8px 0}.app-theme .medals-detail .medal-description{font-size:14px;color:var(--cargo-muted)}.app-theme .medals-detail progress{accent-color:var(--cargo-primary);height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:8px;overflow:hidden;background:var(--cargo-border)}.app-theme .medals-detail progress::-webkit-progress-bar{background:var(--cargo-border)}.app-theme .medals-detail progress::-webkit-progress-value{background:var(--cargo-primary);border-radius:8px}.app-theme .medals-detail progress::-moz-progress-bar{background:var(--cargo-primary);border-radius:8px}.app-theme .medal-tier:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;background:var(--medal-tier-color, var(--cargo-border))}.app-theme .medal-tier-bronze{--medal-tier-color: #bf916f}.app-theme .medal-tier-silver{--medal-tier-color: #aab3bf}.app-theme .medal-tier-gold{--medal-tier-color: #cba75e}.app-theme .medal-tier-platinum{--medal-tier-color: #a99ac8}.app-theme .medal-milestones{list-style:none;margin:24px 0 0;padding:16px 0 0;border-top:1px solid var(--cargo-border);display:grid;gap:16px}.app-theme .medal-milestones li{display:flex;justify-content:space-between;gap:8px;font-size:12px;font-variant-numeric:tabular-nums}.app-theme .medal-milestones li>span:first-child{display:flex;align-items:center;gap:8px}.app-theme .medal-milestones li>span:last-child{text-align:right}.app-theme .medal-milestones [data-earned]{font-weight:800}.app-theme .medal-milestone-dot{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--cargo-control);color:var(--cargo-selected-text);flex-shrink:0}.app-theme .medals-empty{padding:16px;color:var(--cargo-muted)}@media(max-width:760px){.app-theme .medals-cabinet{grid-template-columns:minmax(0,1fr) 218px;gap:16px}.app-theme .medals-detail{padding-left:16px}.app-theme .medals-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.app-theme .medals-cabinet{display:flex;flex-direction:column-reverse;gap:12px}.app-theme .medals-collection{flex:1}.app-theme .medals-detail{flex-shrink:0;max-height:42%;padding:0 0 12px;border-left:0;border-bottom:1px solid var(--cargo-border)}.app-theme .medals-detail .medal-art{width:80px;float:left;margin:0 12px 4px 0}.app-theme .medals-detail h3{font-size:16px;margin:0 0 4px}.app-theme .medals-detail .medal-description{margin:4px 0 8px}.app-theme .medal-milestones{clear:both;grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0 0;padding-top:8px;gap:8px}.app-theme .medal-milestones li{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:4px;min-width:0}.app-theme .medal-milestones li>span:last-child{padding-left:28px;text-align:left;overflow-wrap:anywhere}.app-theme .medal-tile{display:grid;grid-template-rows:auto minmax(38px,1fr) auto;justify-items:center;height:100%}.app-theme .medal-tile .medal-tier{align-self:end}.app-theme .medal-tile .medal-art{width:84px}.app-theme .medals-filters .cargo-button{flex:1;padding:8px}}.app-theme :is(.mochi-family-dialog,.medals-dialog)[open]{display:flex;flex-direction:column;overflow:hidden}.app-theme :is(.mochi-family-heading,.medals-heading){flex-shrink:0;margin-bottom:0}.app-theme :is(.mochi-family-scroll,.medals-scroll){min-height:0;overflow:auto;max-height:none;margin-top:var(--cargo-space-4)}.app-theme .artifact-picker.cargo-dialog{width:min(var(--cargo-dialog-collection),calc(100vw - 32px));max-width:calc(100vw - 32px);height:min(760px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border-radius:var(--cargo-radius-panel);overflow:hidden}.app-theme .play-time-ended-dialog{padding:0 var(--cargo-space-6) var(--cargo-space-6)}.app-theme .cargo-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--cargo-space-4);margin-bottom:var(--cargo-space-4)}.app-theme :is(.cargo-modal-heading,.mochi-family-heading,.medals-heading,.artifact-picker-heading){gap:var(--cargo-space-4)}.app-theme :is(.cargo-dialog-heading,.cargo-modal-heading) h2{font-size:20px;font-weight:900;line-height:1.3}.app-theme .cargo-dialog-description{margin-top:var(--cargo-space-3);color:var(--cargo-muted);font-size:14px;line-height:1.5}.app-theme .cargo-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--cargo-space-3);margin-top:var(--cargo-space-6)}.app-theme .cargo-close{display:inline-grid;place-items:center;flex-shrink:0;min-width:44px;min-height:44px;padding:var(--cargo-space-2)}.app-theme .industry-close{min-width:44px;min-height:44px}.app-theme .character-details-actions{position:sticky;top:0;z-index:5;display:flex;justify-content:flex-end;gap:var(--cargo-space-2);height:44px;margin-bottom:-44px}.app-theme .character-details-actions>.industry-close{position:static;flex-shrink:0;margin:0}.app-theme :is(.cargo-left-panel,.industry-pop-in,.cargo-profile-panel){top:var(--cargo-panel-edge);bottom:var(--cargo-panel-edge);max-height:calc(100% - 24px);border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-panel);background:var(--cargo-surface);box-shadow:var(--cargo-shadow-floating)}.app-theme .cargo-left-panel{left:var(--cargo-panel-edge);width:min(360px,calc(100% - 24px))}.app-theme :is(.industry-pop-in,.cargo-profile-panel){right:var(--cargo-panel-edge)}.app-theme .cargo-profile-panel{bottom:auto}.app-theme .cargo-left-panel-heading{min-height:64px;padding:var(--cargo-space-2) var(--cargo-space-4)}.app-theme .cargo-left-panel :is(.cargo-panel,.cargo-toolbar){padding:0;border:0;background:transparent}.app-theme .cargo-route-planner,.app-theme .cargo-route-planner fieldset{gap:var(--cargo-space-4)}.app-theme .route-readiness{border-color:var(--cargo-border);color:var(--cargo-text)}.app-theme .route-readiness li>span{color:var(--cargo-success-text)}.app-theme .cargo-feedback{--feedback-bg: var(--cargo-info-bg);--feedback-text: var(--cargo-info-text);--feedback-border: var(--cargo-selected-border);display:flex;align-items:flex-start;gap:var(--cargo-space-2);padding:var(--cargo-space-3);border:1px solid var(--feedback-border);border-radius:var(--cargo-radius-card);background:var(--feedback-bg);color:var(--feedback-text);font-size:14px;line-height:1.5;overflow-wrap:anywhere}.app-theme .cargo-feedback-success{--feedback-bg: var(--cargo-success-bg);--feedback-text: var(--cargo-success-text);--feedback-border: var(--cargo-success-border)}.app-theme .cargo-feedback-warning{--feedback-bg: var(--cargo-warning-bg);--feedback-text: var(--cargo-warning-text);--feedback-border: var(--cargo-warning-border)}.app-theme .cargo-feedback-error{--feedback-bg: var(--cargo-error-bg);--feedback-text: var(--cargo-error-text);--feedback-border: var(--cargo-error-border)}.app-theme .cargo-feedback-icon{display:grid;place-items:center;flex:0 0 20px;width:20px;height:20px;margin-top:1px;border:1px solid currentColor;border-radius:50%;font-size:13px;font-weight:900}.app-theme .cargo-feedback-content{flex:1;min-width:0}.app-theme .cargo-global-feedback{position:fixed;left:50%;bottom:max(16px,env(safe-area-inset-bottom));z-index:50;display:flex;align-items:center;width:-moz-max-content;width:max-content;max-width:calc(100% - 32px);border:1px solid var(--cargo-error-border);border-radius:var(--cargo-radius-panel);background:var(--cargo-error-bg);box-shadow:var(--cargo-shadow-floating);transform:translate(-50%)}.app-theme .cargo-global-feedback .cargo-feedback{flex:1;border:0;background:transparent}.app-theme .cargo-global-feedback .cargo-close{margin-right:var(--cargo-space-1);color:var(--cargo-error-text)}@media(max-width:1024px),(pointer:coarse){.app-theme :is(.cargo-button,.cargo-top-toolbar .cargo-icon-button,.map-zoom-button){min-width:44px;min-height:44px;height:auto}}@media(max-width:640px){.app-theme .cargo-workspace{gap:var(--cargo-space-2)}.app-theme .cargo-left-panel{bottom:auto;max-height:55%}.app-theme .cargo-header-main{padding:var(--cargo-space-1) var(--cargo-space-2)}.app-theme .cargo-header-navigation{padding:var(--cargo-space-2)}.app-theme .cargo-top-toolbar .cargo-header-navigation{display:grid;grid-template-columns:repeat(4,minmax(44px,1fr));gap:var(--cargo-space-1)}.app-theme .cargo-top-toolbar .cargo-header-tools{display:contents}.app-theme .cargo-top-toolbar .cargo-header-navigation .cargo-icon-button{width:100%}.app-theme .cargo-play-time{grid-column:1 / -1}}@media(min-width:480px)and (max-width:640px){.app-theme .cargo-top-toolbar .cargo-header-navigation{grid-template-columns:repeat(8,minmax(44px,1fr))}}@media(max-height:500px)and (min-width:641px){.app-theme .cargo-header-button-label{display:none}.app-theme .cargo-header-main{flex-wrap:nowrap}}@media(prefers-reduced-motion:reduce){.app-theme *,.app-theme *:before,.app-theme *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(max-width:1024px),(hover:none)and (pointer:coarse){.app-theme{--cargo-mobile-dock-height: calc(76px + var(--cargo-safe-bottom))}.app-theme .cargo-app{padding-bottom:var(--cargo-mobile-dock-height);box-sizing:border-box}.app-theme .cargo-top-toolbar .cargo-header-navigation{display:flex;flex-wrap:wrap}.app-theme .cargo-top-toolbar .cargo-header-tools{position:fixed;z-index:45;inset:auto 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;height:var(--cargo-mobile-dock-height);padding:8px 8px calc(12px + var(--cargo-safe-bottom));border-top:1px solid var(--cargo-border);background:var(--cargo-surface)}.app-theme .cargo-top-toolbar .cargo-header-tools>.cargo-icon-button{position:relative;display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0;min-height:56px;height:56px;padding:4px 0;font-size:12px;line-height:1.25}.app-theme .cargo-top-toolbar .cargo-header-tools>.cargo-icon-button>svg{flex-shrink:0}.app-theme .cargo-header-tools>.cargo-icon-button .cargo-toolbar-badge{position:absolute;top:0;right:0;font-size:9px;pointer-events:none}.app-theme .cargo-header-tools .cargo-header-button-label{display:block}.app-theme .cargo-header-tools>.cargo-button .cargo-header-button-label{max-width:100%;overflow-wrap:anywhere}.app-theme .cargo-toolbar-extra{display:contents}.app-theme .cargo-toolbar-extra>.cargo-button{display:none}.app-theme .cargo-header-tools.is-more-open .cargo-toolbar-extra{position:absolute;bottom:calc(100% + 8px);left:12px;right:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:55dvh;overflow-y:auto;overscroll-behavior:contain;padding:12px;border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-panel);background:var(--cargo-surface);box-shadow:var(--cargo-shadow-floating)}.app-theme .cargo-header-tools.is-more-open .cargo-toolbar-extra>.cargo-button{display:flex;justify-content:flex-start;gap:8px;min-width:0;width:100%;height:auto;min-height:44px;padding:8px;white-space:normal}.app-theme .cargo-header-tools.is-more-open .cargo-toolbar-extra-heading{display:flex;grid-column:1 / -1;align-items:center;justify-content:space-between;gap:8px}.app-theme .cargo-toolbar-extra .cargo-toolbar-badge{position:static;margin-left:auto}.app-theme .cargo-global-feedback{bottom:calc(var(--cargo-mobile-dock-height) + 16px)}}.app-theme .cargo-game-menu{display:contents}.app-theme .cargo-game-menu-toggle,.app-theme .cargo-game-menu-heading,.app-theme .cargo-header-play-time{display:none}@media(min-width:1025px)and (hover:hover),(min-width:1025px)and (pointer:fine){.app-theme .cargo-header-main>.cargo-stats{order:1}.app-theme .cargo-game-menu>.cargo-header-account:not(.cargo-header-left){order:2}}@media(max-width:1024px),(hover:none)and (pointer:coarse){.app-theme .cargo-header-main{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:4px 8px;min-height:60px;padding:var(--cargo-space-1) var(--cargo-space-2)}.app-theme .cargo-header-main>.cargo-brand{order:0;flex:1;min-width:0;width:auto;height:auto;justify-content:flex-start;grid-column:1;grid-row:1}.app-theme .cargo-header .cargo-brand.mochi-brand{font-size:22px}.app-theme .cargo-header-main>.cargo-stats{order:0;flex:0 1 auto;margin:0;width:auto;display:contents}.app-theme .cargo-header-main>.cargo-stats .cargo-stat>span,.app-theme .cargo-header-main>.cargo-stats .cargo-stat>small{display:none}.app-theme .cargo-header-main>.cargo-stats .cargo-stat{padding:0;border:0;grid-column:2;grid-row:1}.app-theme .cargo-header-main>.cargo-stats .cargo-stat:first-child{display:flex;grid-column:1;grid-row:2;min-width:0;gap:6px}.app-theme .cargo-header-main>.cargo-stats .cargo-stat:first-child strong{font-size:12px;white-space:normal}.app-theme .cargo-header-main>.cargo-stats .cargo-stat:first-child small{display:flex}.app-theme .cargo-header-play-time{display:block;grid-column:2 / 4;grid-row:2;justify-self:end;min-width:0}.app-theme .cargo-header-play-time .cargo-play-time{padding:0;gap:6px;flex-wrap:wrap;justify-content:flex-end}.app-theme .cargo-header-play-time .cargo-play-time strong{font-size:14px}.app-theme .cargo-header-play-time .cargo-play-time-reset{max-width:150px}.app-theme :is(.route-tutorial-reminder,.route-tutorial-industry-open){bottom:calc(var(--cargo-mobile-dock-height) + 8px);z-index:40}.app-theme .cargo-header-main>.cargo-stats strong{font-size:13px;white-space:nowrap}.app-theme .cargo-game-menu-toggle{display:flex;flex:0 0 44px;padding:8px;grid-column:3;grid-row:1}.app-theme .cargo-game-menu{display:none}.app-theme .is-game-menu-open .cargo-game-menu{position:absolute;z-index:45;top:calc(100% + 8px);right:12px;display:flex;flex-direction:column;gap:12px;width:min(300px,calc(100vw - 24px));max-height:calc(100dvh - var(--cargo-mobile-dock-height) - 84px);overflow-y:auto;padding:12px;border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-panel);background:var(--cargo-surface);box-shadow:var(--cargo-shadow-floating)}.app-theme .cargo-game-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.app-theme .cargo-game-menu .cargo-header-account{display:flex;flex-wrap:wrap;gap:8px;margin:0}.app-theme .cargo-game-menu .cargo-header-account>.cargo-button{flex:1 1 100%;justify-content:flex-start}.app-theme .cargo-game-menu .cargo-header-button-label{display:inline}.app-theme .cargo-game-menu-tutorial{width:100%}.app-theme .cargo-game-menu-tutorial .route-tutorial-launch{width:100%;justify-content:flex-start}.app-theme .cargo-top-toolbar .cargo-header-navigation{display:contents}.app-theme .cargo-game-menu .cargo-language-picker{width:100%}.app-theme .cargo-header-navigation:not(:has(.route-tutorial-launch,.cargo-play-time)){padding:0;border-top:0}}.app-theme .mission-celebration{--medal-accent: var(--cargo-selected-border);display:flex;flex-direction:column;padding:16px 24px 20px;border-radius:var(--cargo-radius-panel);background:var(--cargo-surface);box-shadow:var(--cargo-shadow-floating);max-height:calc(100dvh - 192px);overflow:hidden}.app-theme .mission-celebration .medal-celebration-art{position:relative;top:auto;left:auto;flex:0 0 128px;width:128px;height:128px;margin:0 auto 8px}.app-theme .mission-celebration [role=status]{min-height:0;overflow-y:auto}.app-theme .mission-celebration>.cargo-primary{flex-shrink:0;align-self:center;margin-top:16px}.app-theme .mission-celebration-description{margin:16px 0;font-size:14px;line-height:1.5}body:has(.medal-celebration:not(.mission-celebration)) .mission-celebration{visibility:hidden}@media(max-height:600px){.app-theme .mission-celebration{top:16px;max-height:calc(100dvh - 32px)}.app-theme .mission-celebration .medal-celebration-art{flex-basis:88px;width:88px;height:88px}}.app-theme .vehicle-route-timeline{display:block;list-style:none;padding:0;margin:16px 0 0}.app-theme .vehicle-route-stop{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:8px 12px;font-size:14px}.app-theme .vehicle-route-stop:first-child:before{content:"";position:absolute;left:17px;top:24px;bottom:-24px;width:1px;background:var(--cargo-selected-border)}.app-theme .vehicle-route-node{position:relative;display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--cargo-selected-border);border-radius:50%;background:var(--cargo-surface);font-weight:800}.app-theme .vehicle-route-stop:last-child .vehicle-route-node,.app-theme .vehicle-route-stop:last-child .vehicle-route-stop-status{background:var(--cargo-selected);color:var(--cargo-selected-text)}.app-theme .vehicle-route-stop-label{min-width:0;overflow-wrap:anywhere}.app-theme .vehicle-route-stop-label small{font-size:14px;color:var(--cargo-muted)}.app-theme .vehicle-route-stop-status{display:inline-block;margin-top:4px;font-size:12px;color:var(--cargo-muted)}.app-theme .vehicle-route-stop:last-child .vehicle-route-stop-status{padding:2px 8px;border-radius:999px;font-weight:800}.app-theme .vehicle-route-locate{display:flex;align-items:center;justify-content:center;gap:4px;min-height:44px}.app-theme .vehicle-route-transit{grid-column:2 / -1;margin:4px 0 16px;color:var(--cargo-selected-text);font-weight:800;overflow-wrap:anywhere}.app-theme .vehicle-route-repeat{display:flex;align-items:flex-start;gap:8px;margin:12px 0 0;color:var(--cargo-muted);font-size:14px;overflow-wrap:anywhere}.app-theme .vehicle-route-repeat svg{flex-shrink:0}@media(max-width:640px){.app-theme .vehicle-route-locate{width:44px;padding:0}.app-theme .vehicle-route-locate>span{display:none}}.app-theme .cargo-left-panel[hidden]{display:none}.app-theme .train-consist,.app-theme .train-wagon-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--cargo-space-2);border:0}.app-theme .train-wagon-catalog{grid-template-columns:repeat(4,minmax(0,1fr))}.app-theme :is(.train-coupled-wagon,.train-wagon-placeholder,.train-wagon-row){display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--cargo-space-1);width:auto;min-width:0;padding:var(--cargo-space-2) var(--cargo-space-1);border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-card);background:var(--cargo-control);text-align:center;overflow-wrap:anywhere;font-size:12px}.app-theme .train-wagon-placeholder{justify-content:center;min-height:120px;border-style:dashed;color:var(--cargo-muted);background:transparent}.app-theme :is(.train-coupled-art,.train-catalog-art){width:min(72px,100%);height:52px;flex-shrink:0}.app-theme .train-wagon-model{flex:1;flex-basis:auto;width:100%}.app-theme .train-wagon-price{display:block;white-space:nowrap;margin:0;text-align:center}.app-theme :is(.train-coupled-wagon,.train-wagon-row) .cargo-button{width:100%;min-width:0;padding-inline:4px;white-space:normal;overflow-wrap:anywhere}.app-theme .train-coupled-wagon .industry-progress{width:100%}.app-theme :is(.cargo-tool-price,.cargo-stat strong,.missions-reward strong,.medal-celebration-tier){white-space:nowrap}.app-theme .world-picker{width:min(540px,calc(100vw - 32px));overflow-y:auto}.app-theme .world-picker-list{display:grid;gap:var(--cargo-space-2);margin-block:var(--cargo-space-4)}.app-theme .world-picker-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--cargo-space-2);padding:var(--cargo-space-2);border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-card);min-width:0}.app-theme .world-picker-row[data-current=true]{background:var(--cargo-selected);border-color:var(--cargo-selected-border);color:var(--cargo-selected-text)}.app-theme .world-picker-identity{flex:1 1 0;min-width:0;min-height:48px;display:flex;flex-direction:column;justify-content:center;padding:4px 8px;border:0;border-radius:var(--cargo-radius-control);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.app-theme .world-picker-identity strong{overflow-wrap:anywhere;font-size:14px}.app-theme .world-picker-identity small{font-size:12px;color:var(--cargo-muted)}.app-theme .world-picker-identity:focus-visible{outline:2px solid var(--cargo-focus);outline-offset:2px}.app-theme .world-picker-identity:disabled{opacity:.5;cursor:default}.app-theme .world-picker-intro{margin:8px 0 0;color:var(--cargo-muted);font-size:14px}.app-theme .world-picker-count{color:var(--cargo-muted);font-size:12px;text-align:right}.app-theme .world-picker-more{flex-shrink:0;width:48px;padding:0;background:transparent;border-color:transparent}.app-theme .world-picker-open{flex-shrink:0;white-space:nowrap;background:transparent;border-color:transparent}.app-theme .world-picker-options{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:8px;padding-top:8px;border-top:1px solid var(--cargo-border)}.app-theme .world-picker-name{display:grid;gap:var(--cargo-space-2);font-size:14px}.app-theme .world-picker-name input{min-width:0;min-height:44px;padding:8px 12px;font-size:16px;color:var(--cargo-text);background:var(--cargo-surface);border:1px solid var(--cargo-border);border-radius:var(--cargo-radius-control)}.app-theme .world-picker-loading{margin:auto;padding:var(--cargo-space-4);display:grid;gap:var(--cargo-space-3)}@media(max-width:1024px),(pointer:coarse){.app-theme :is(.cargo-button,.cargo-close,.industry-close,.map-zoom-button),.app-theme .cargo-top-toolbar .cargo-icon-button,.app-theme .cargo-top-toolbar .cargo-close,.app-theme .cargo-game-menu .route-tutorial-launch,.app-theme .map-build-toolbar .cargo-button,.app-theme .cargo-header-tools.is-more-open .cargo-toolbar-extra>.cargo-button{min-width:48px;min-height:48px;touch-action:manipulation}.app-theme :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){min-height:48px;font-size:16px}.app-theme .cargo-app{padding-top:var(--cargo-safe-top);padding-left:var(--cargo-safe-left);padding-right:var(--cargo-safe-right);box-sizing:border-box}.app-theme :is(.cargo-dialog,.cargo-dialog.missions-dialog){max-width:calc(100vw - 32px - (2*max(var(--cargo-safe-left),var(--cargo-safe-right))));max-height:calc(100dvh - 32px - (2*max(var(--cargo-safe-top),var(--cargo-safe-bottom))));overscroll-behavior:contain}.app-theme :is(.cargo-game-menu,.cargo-toolbar-extra,.map-build-toolbar-tools,.cargo-left-panel-content){overscroll-behavior:contain;scroll-padding-block:12px}}@media(max-width:1024px),(hover:none)and (pointer:coarse){.app-theme .cargo-header-main{grid-template-columns:minmax(0,1fr) auto 48px}.app-theme .cargo-top-toolbar .cargo-header-tools{padding-left:calc(8px + var(--cargo-safe-left));padding-right:calc(8px + var(--cargo-safe-right))}.app-theme .is-game-menu-open .cargo-game-menu{max-height:calc(100dvh - var(--cargo-mobile-dock-height) - var(--cargo-safe-top) - 100px);max-width:calc(100vw - 24px - var(--cargo-safe-left) - var(--cargo-safe-right))}.app-theme .cargo-header-tools.is-more-open .cargo-toolbar-extra{left:max(12px,var(--cargo-safe-left));right:max(12px,var(--cargo-safe-right));width:auto;max-width:420px;margin-left:auto;max-height:min(55dvh,calc(100dvh - var(--cargo-mobile-dock-height) - var(--cargo-safe-top) - 24px))}}@media(max-height:500px)and (max-width:1024px),(max-height:500px)and (hover:none)and (pointer:coarse){.app-theme .map-build-toolbar{max-height:min(55dvh,calc(100dvh - var(--cargo-mobile-dock-height) - var(--cargo-safe-top) - 112px))}.app-theme .map-build-toolbar:not(.is-collapsed) .map-build-heading{margin:0;height:0}.app-theme .map-build-toolbar:not(.is-collapsed) h2{display:none}.app-theme .map-build-toolbar:not(.is-collapsed) .cargo-close{position:absolute;top:8px;right:8px}.app-theme .map-build-categories{flex-shrink:0;margin-right:56px;margin-bottom:4px}}.app-theme .vehicle-stop-editor{padding:0}.app-theme .vehicle-route-map-picker{position:fixed;z-index:45;top:calc(80px + var(--cargo-safe-top, 0px));left:var(--cargo-panel-edge);width:min(360px,calc(100vw - 24px));padding:var(--cargo-space-4);display:grid;gap:var(--cargo-space-3);box-shadow:var(--cargo-shadow-floating)}.app-theme .vehicle-route-map-picker p{margin:0;font-size:14px}.app-theme .vehicle-stop-editor form{display:flex;flex-direction:column;max-height:calc(100dvh - 32px - var(--cargo-safe-top, 0px) - var(--cargo-safe-bottom, 0px));min-height:0}.app-theme .vehicle-stop-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-theme header.vehicle-stop-heading{padding:16px;border-bottom:1px solid var(--cargo-border);flex-shrink:0}.app-theme .vehicle-stop-heading h2{font-size:20px;font-weight:900;margin:0}.app-theme .vehicle-stop-heading .cargo-button{display:inline-flex;flex-direction:row;align-items:center;gap:8px}.app-theme .vehicle-stop-heading h3{font-size:16px;font-weight:800;margin:0}.app-theme .vehicle-stop-heading p{margin:4px 0 0;color:var(--cargo-muted);font-size:14px}.app-theme .vehicle-stop-content{padding:16px;overflow-y:auto;overscroll-behavior:contain;min-height:0}.app-theme .vehicle-stop-list{list-style:none;padding:0;margin:12px 0}.app-theme .vehicle-stop-row{border-bottom:1px solid var(--cargo-border);padding:16px 0}.app-theme .vehicle-stop-summary{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px}.app-theme .vehicle-stop-summary strong{font-size:14px;overflow-wrap:anywhere}.app-theme .vehicle-stop-summary p{margin:4px 0 0;font-size:14px;color:var(--cargo-muted);line-height:1.5}.app-theme .vehicle-stop-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--cargo-selected);color:var(--cargo-selected-text);font-weight:800}.app-theme .vehicle-stop-fields{display:grid;gap:12px;margin-top:16px}.app-theme .vehicle-stop-fields label{display:grid;gap:4px;font-size:14px;font-weight:700;min-width:0}.app-theme .vehicle-stop-fields select{width:100%;min-width:0;min-height:48px;background:var(--cargo-surface);border:1px solid var(--cargo-border);border-radius:8px;padding:8px 12px;font-size:16px;color:var(--cargo-text)}.app-theme .vehicle-stop-reorder{display:flex;flex-wrap:wrap;gap:8px}.app-theme .vehicle-stop-reorder button{flex:1}.app-theme .vehicle-stop-loop{display:flex;align-items:center;gap:8px;margin:12px 0 0;font-size:14px}.app-theme .vehicle-stop-content>.cargo-feedback{margin-top:12px}.app-theme .vehicle-stop-footer{display:flex;gap:12px;padding:16px;border-top:1px solid var(--cargo-border);flex-shrink:0}.app-theme .vehicle-stop-footer button{flex:1}@media(max-width:1024px),(pointer:coarse){.app-theme .vehicle-stop-editor button{min-height:48px}}.app-theme .cargo-map-advice{position:absolute;top:var(--cargo-panel-edge);left:50%;transform:translate(-50%);z-index:20;width:min(340px,calc(100% - 112px));pointer-events:none}.app-theme .cargo-save-status,.app-theme .cargo-save-status>[role=img]{display:inline-flex;align-items:center;justify-content:center}.app-theme .cargo-save-status[data-save-state=saved]{color:var(--cargo-success-text)}.app-theme .cargo-save-status[data-save-state=pending]{color:var(--cargo-warning-text)}.app-theme .cargo-save-status[data-save-state=failed]{color:var(--cargo-error-text)}.app-theme .cargo-save-status>[role=img]:focus-visible{outline:2px solid var(--cargo-focus);outline-offset:3px;border-radius:4px}.app-theme .cargo-save-status[data-save-state=failed] button{color:inherit}
