:root{--maui-color-primary:#2563eb;--maui-color-primary-fg:#fff;--maui-color-border:#d1d5db;--maui-color-fg:#111827;--maui-color-muted-fg:#6b7280;--maui-color-danger:#dc2626;--maui-color-danger-bg:#fef2f2;--maui-color-surface:#fff;--maui-radius:6px;--maui-spacing:.5rem;--maui-font-size:1rem}.maui-button{padding:var(--maui-spacing) calc(var(--maui-spacing) * 2);border-radius:var(--maui-radius);background-color:var(--maui-color-primary);color:var(--maui-color-primary-fg);font-size:var(--maui-font-size);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.maui-button:disabled{opacity:.6;cursor:not-allowed}.maui-input,.maui-textarea{width:100%;padding:var(--maui-spacing);border-radius:var(--maui-radius);border:1px solid var(--maui-color-border);color:var(--maui-color-fg);font-size:var(--maui-font-size);background-color:var(--maui-color-surface);display:block}.maui-textarea{resize:vertical;min-height:6rem}.maui-card{border-radius:calc(var(--maui-radius) * 2);border:1px solid var(--maui-color-border);background-color:var(--maui-color-surface);padding:calc(var(--maui-spacing) * 3)}.maui-loading-state{align-items:center;gap:var(--maui-spacing);color:var(--maui-color-muted-fg);display:flex}.maui-error-state{gap:var(--maui-spacing);border-radius:var(--maui-radius);border:1px solid var(--maui-color-danger);background-color:var(--maui-color-danger-bg);color:var(--maui-color-danger);padding:calc(var(--maui-spacing) * 2);flex-direction:column;display:flex}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif}
@font-face{font-family:"Baloo 2";src:url(/fonts/baloo-2/Baloo2-VF.ttf)format("truetype");font-weight:400 800;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter/Inter-VF.ttf)format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Shrikhand;src:url(/fonts/shrikhand/Shrikhand-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Righteous;src:url(/fonts/righteous/Righteous-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Limelight;src:url(/fonts/limelight/Limelight-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Poiret One;src:url(/fonts/poiret-one/PoiretOne-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DotGothic16;src:url(/fonts/dotgothic16/DotGothic16-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Lobster;src:url(/fonts/lobster/Lobster-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--pe-bg:#14161c;--pe-surface:#1d2028;--pe-surface-2:#272b35;--pe-line:#ffffff1a;--pe-text:#f3f4f8;--pe-text-dim:#b3b8c4;--pe-success:#3dbb76;--pe-danger:#e0453a;--pe-danger-text:#f2776d;--pe-gold:#f2c14e;--pe-star-off:#3a3f4b;--pe-target:#d93a2f;--pe-target-dark:#8f2018;--pe-exit:#f6c32a;--pe-exit-glow:#f6c32a80;--pe-event:#34b6f0;--pe-boss:#ff9f1c;--pe-threat:#ff9f1c;--pe-enemy:#e5233b;--pe-enemy-ink:#1a0b0e;--pe-font-ui:"Inter", system-ui, sans-serif;--pe-font-display:"Baloo 2", system-ui, sans-serif;--pe-fs-xs:12px;--pe-fs-sm:14px;--pe-fs-md:16px;--pe-fs-lg:20px;--pe-fs-xl:24px;--pe-fs-2xl:32px;--pe-fs-3xl:44px;--pe-lh-tight:1.1;--pe-lh:1.45;--pe-sp-1:4px;--pe-sp-2:8px;--pe-sp-3:12px;--pe-sp-4:16px;--pe-sp-5:24px;--pe-sp-6:32px;--pe-r-sm:8px;--pe-r-md:12px;--pe-r-lg:20px;--pe-r-xl:28px;--pe-r-pill:999px;--pe-r-vehicle:calc(var(--cell,40px) * .22);--pe-sh-1:0 1px 2px #0006;--pe-sh-2:0 6px 18px #0008;--pe-sh-lift:0 8px 14px #0009;--pe-dur-fast:.12s;--pe-dur-base:.2s;--pe-dur-slow:.35s;--pe-dur-exit:.6s;--pe-ease:cubic-bezier(.2, .8, .2, 1);--th-bg:#14161c;--th-bg-2:#272b35;--th-ground:#3b4250;--th-ground-line:#4a5262;--th-marking:#e9ecf2;--th-border:#22262e;--th-outline:#0d0f13;--th-accent:#f2c14e;--th-accent-ink:#14161c;--th-car-1:#4f8fd6;--th-car-2:#3fae7a;--th-car-3:#9b6ad0;--th-car-4:#4cc3d1;--th-car-5:#e8e4d8;--th-car-6:#7d8696;--th-car-7:#e08a3c;--th-car-8:#8bc34a;--th-font-accent:var(--pe-font-display);--tow-classique-body:#2a63d4;--tow-classique-trim:#0e2459;--tow-classique-accent:#f1f5ff;--tow-rouillee-body:#a9582b;--tow-rouillee-trim:#4b2915;--tow-rouillee-plate:#c27a3f;--tow-rouillee-rust:#6f3416;--tow-rouillee-smoke:#6d6a66;--tow-monstrueuse-body:#15151b;--tow-monstrueuse-trim:#2a2a33;--tow-monstrueuse-accent:#d9202f;--tow-jumelles-a:#12a898;--tow-jumelles-b:#d4398f;--tow-jumelles-trim:#1b2b3d;--tow-grue-body:#aab3c0;--tow-grue-trim:#2c333c;--tow-grue-arm:#cfd6df;--tow-grue-accent:#11151a}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--pe-bg);color:var(--pe-text);font-family:var(--pe-font-ui);font-size:var(--pe-fs-md);line-height:var(--pe-lh);margin:0}h1,h2,h3,h4,p{margin:0}button{font:inherit;color:inherit}svg{display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.pe-icon{flex:none;width:1.25em;height:1.25em}.pe-stage{isolation:isolate;background:linear-gradient(170deg, var(--th-bg), var(--th-bg-2));position:relative}.pe-backdrop{z-index:-1;position:absolute;inset:0;overflow:hidden}.pe-backdrop svg{width:100%;height:100%}.pe-accent{font-family:var(--th-font-accent)}body.pe-ready [data-show-state]:not(.is-shown){display:none}.pe-btn{justify-content:center;align-items:center;gap:var(--pe-sp-2);min-height:44px;padding:0 var(--pe-sp-5);border-radius:var(--pe-r-pill);cursor:pointer;font-family:var(--pe-font-display);font-weight:700;font-size:var(--pe-fs-md);transition:transform var(--pe-dur-fast) var(--pe-ease), opacity var(--pe-dur-base);background:0 0;border:2px solid #0000;line-height:1;display:inline-flex}.pe-btn:active,.pe-btn.is-pressed{transform:scale(.97)}.pe-btn--primary{background:var(--th-accent);color:var(--th-accent-ink);box-shadow:var(--pe-sh-1)}.pe-btn--secondary{border-color:var(--pe-line);background:var(--pe-surface-2);color:var(--pe-text)}.pe-btn--ghost{color:var(--pe-text-dim)}.pe-btn--icon{background:var(--pe-surface-2);width:44px;color:var(--pe-text);box-shadow:var(--pe-sh-1);padding:0}.pe-btn--icon .pe-icon{width:22px;height:22px}.pe-btn:disabled,.pe-btn.is-disabled{opacity:.4;cursor:not-allowed}.pe-btn:focus-visible{outline:3px solid var(--pe-gold);outline-offset:2px}.pe-stars{gap:2px;display:inline-flex}.pe-star{color:var(--pe-star-off)}.pe-star.is-on{color:var(--pe-gold)}.pe-stars--sm .pe-star{width:12px;height:12px}.pe-stars--md .pe-star{width:20px;height:20px}.pe-stars--lg{gap:6px}.pe-stars--lg .pe-star{width:40px;height:40px}.pe-stars--pop .pe-star.is-on{animation:pe-pop var(--pe-dur-slow) var(--pe-ease) both;animation-delay:calc(var(--i) * .12s)}@keyframes pe-pop{0%{transform:scale(0)}70%{transform:scale(1.25)}to{transform:scale(1)}}.pe-badge{border-radius:var(--pe-r-pill);font-size:var(--pe-fs-xs);letter-spacing:.06em;text-transform:uppercase;background:var(--pe-surface-2);color:var(--pe-text);border:1px solid var(--pe-line);align-items:center;gap:4px;padding:2px 10px;font-weight:700;line-height:1.5;display:inline-flex}.pe-badge .pe-icon{width:12px;height:12px}.pe-badge--event{background:var(--pe-event);color:var(--pe-bg);border-color:#0000}.pe-badge--boss{color:var(--pe-bg);background:repeating-linear-gradient(135deg, var(--pe-boss) 0 8px, color-mix(in srgb, var(--pe-boss) 70%, var(--pe-bg)) 8px 16px);border-color:#0000}.pe-badge--soon{color:var(--pe-text-dim);background:0 0;border-style:dashed}.pe-badge--diff-facile{color:var(--pe-success);border-color:var(--pe-success);background:0 0}.pe-badge--diff-moyen{color:var(--pe-gold);border-color:var(--pe-gold);background:0 0}.pe-badge--diff-difficile{color:var(--pe-boss);border-color:var(--pe-boss);background:0 0}.pe-badge--diff-expert{color:var(--pe-danger-text);border-color:var(--pe-danger);background:0 0}.pe-hud{align-items:center;gap:var(--pe-sp-3);padding:var(--pe-sp-3) var(--pe-sp-4);background:var(--pe-surface);border-radius:var(--pe-r-lg);border:1px solid var(--pe-line);box-shadow:var(--pe-sh-1);grid-template-columns:1fr auto 1fr;min-height:64px;display:grid}.pe-hud__level{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.pe-hud__level b{font-family:var(--pe-font-display);font-size:var(--pe-fs-lg);line-height:var(--pe-lh-tight)}.pe-hud__moves{flex-direction:column;align-items:center;gap:2px;display:flex}.pe-hud__moves-n{font-family:var(--pe-font-display);font-weight:800;font-size:var(--pe-fs-xl);line-height:var(--pe-lh-tight)}.pe-hud__moves-n small{color:var(--pe-text-dim);font-size:var(--pe-fs-md);font-weight:600}.pe-hud__pause{justify-self:end}.pe-hud--warn .pe-hud__moves-n>span{color:var(--pe-danger)}.pe-hud__intent{align-items:center;gap:var(--pe-sp-2);padding:var(--pe-sp-2) var(--pe-sp-3);border-radius:var(--pe-r-md);background:color-mix(in srgb, var(--pe-threat) 16%, transparent);color:var(--pe-threat);font-weight:600;font-size:var(--pe-fs-sm);grid-column:1/-1;display:flex}.pe-hud:not(.pe-hud--boss) .pe-hud__intent{display:none}.pe-node{flex-direction:column;align-items:center;gap:4px;display:inline-flex}.pe-node__dot{background:var(--pe-surface-2);border:3px solid var(--pe-line);width:52px;height:52px;color:var(--pe-text);font-family:var(--pe-font-display);font-weight:800;font-size:var(--pe-fs-lg);border-radius:50%;place-items:center;display:grid;position:relative}.pe-node--done .pe-node__dot{background:var(--th-accent);color:var(--th-accent-ink);border-color:var(--th-accent)}.pe-node--current .pe-node__dot{border-color:var(--th-accent);animation:2.4s ease-in-out infinite pe-node-pulse}@keyframes pe-node-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--th-accent) 60%, transparent)}50%{box-shadow:0 0 0 9px #0000}}.pe-node--locked{opacity:.4}.pe-node--event .pe-node__dot{border-radius:var(--pe-r-pill);border-color:var(--pe-event);grid-auto-flow:column;gap:4px;width:76px}.pe-node--event.pe-node--done .pe-node__dot{background:var(--pe-event);border-color:var(--pe-event);color:var(--pe-bg)}.pe-node--boss .pe-node__dot{border-color:var(--pe-boss);width:73px;height:73px}.pe-node--boss.pe-node--done .pe-node__dot{background:var(--pe-boss);color:var(--pe-bg)}.pe-node__dot .pe-icon{width:24px;height:24px}.pe-node--boss .pe-node__dot .pe-icon{width:38px;height:38px}.pe-veil{z-index:20;padding:var(--pe-sp-4);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0c108c;place-items:center;display:grid;position:absolute;inset:0}.pe-veil--fixed{position:fixed}.pe-modal{width:min(100%,340px);padding:var(--pe-sp-5);align-items:center;gap:var(--pe-sp-3);text-align:center;background:var(--pe-surface);border:1px solid var(--pe-line);border-radius:var(--pe-r-xl);box-shadow:var(--pe-sh-2);flex-direction:column;display:flex}.pe-modal__icon{background:var(--pe-surface-2);width:64px;height:64px;color:var(--pe-success);border-radius:50%;place-items:center;display:grid}.pe-modal__icon .pe-icon{width:34px;height:34px}.pe-modal--lost .pe-modal__icon{color:var(--pe-danger)}.pe-modal__title{font-family:var(--th-font-accent);font-size:var(--pe-fs-2xl);line-height:var(--pe-lh-tight)}.pe-modal__sub{color:var(--pe-text-dim);font-size:var(--pe-fs-sm)}.pe-modal__slot{justify-content:center;width:100%;display:flex}.pe-modal__actions{gap:var(--pe-sp-2);width:100%;margin-top:var(--pe-sp-2);flex-direction:column;display:flex}.pe-modal__actions .pe-btn{width:100%}.pe-toast{align-items:center;gap:var(--pe-sp-2);padding:var(--pe-sp-3) var(--pe-sp-4);border-radius:var(--pe-r-pill);background:var(--pe-surface-2);border:1px solid var(--pe-line);box-shadow:var(--pe-sh-2);font-weight:600;font-size:var(--pe-fs-sm);display:inline-flex}.pe-toast--boss{border-color:var(--pe-boss);color:var(--pe-boss)}.pe-worldcard{border-radius:var(--pe-r-lg);background:var(--pe-surface);border:1px solid var(--pe-line);box-shadow:var(--pe-sh-1);flex-direction:column;display:flex;position:relative;overflow:hidden}.pe-worldcard__thumb{background:linear-gradient(170deg, var(--th-bg), var(--th-bg-2));height:112px;position:relative;overflow:hidden}.pe-worldcard__thumb .pe-backdrop{z-index:0}.pe-worldcard__boss{right:var(--pe-sp-3);bottom:calc(var(--pe-sp-3) * -1);z-index:2;background:var(--pe-surface);border:2px solid var(--pe-boss);width:44px;height:44px;color:var(--pe-boss);border-radius:50%;place-items:center;display:grid;position:absolute}.pe-worldcard__body{justify-content:space-between;align-items:center;gap:var(--pe-sp-3);padding:var(--pe-sp-4);display:flex}.pe-worldcard__city{font-family:var(--th-font-accent);font-size:var(--pe-fs-xl);line-height:var(--pe-lh-tight)}.pe-worldcard__year{color:var(--pe-text-dim);font-size:var(--pe-fs-sm)}.pe-worldcard__score{font-weight:700;font-size:var(--pe-fs-sm);color:var(--pe-gold);align-items:center;gap:4px;display:inline-flex}.pe-worldcard__score .pe-icon{width:16px;height:16px}.pe-worldcard--locked .pe-worldcard__thumb{filter:grayscale()brightness(.5)}.pe-worldcard--locked .pe-worldcard__body{opacity:.55}.pe-worldcard--locked:after{content:"";pointer-events:none;background:linear-gradient(#0000 40%,#00000040);position:absolute;inset:0}.pe-worldcard__lock{left:var(--pe-sp-3);top:var(--pe-sp-3);z-index:3;background:var(--pe-surface);width:36px;height:36px;color:var(--pe-text);border-radius:50%;place-items:center;display:grid;position:absolute}.pe-worldcard--done{border-color:var(--pe-success)}.pe-worldcard__done{left:var(--pe-sp-3);top:var(--pe-sp-3);z-index:3;background:var(--pe-success);width:32px;height:32px;color:var(--pe-bg);border-radius:50%;place-items:center;display:grid;position:absolute}.pe-board{width:fit-content;max-width:100%;color:var(--pe-text);margin:0 auto;padding-inline:12px;position:relative;overflow-x:clip}.pe-board__top{display:none}.pe-exit__decor{pointer-events:none;position:absolute;left:0;overflow:visible}.pe-board__decor-art{display:block;position:absolute;transform:rotate(90deg)}.pe-sign{border-radius:var(--pe-r-sm) var(--pe-r-sm) 0 0;background:var(--pe-exit);color:var(--pe-bg);font-size:var(--pe-fs-xs);letter-spacing:.08em;align-items:center;gap:6px;padding:2px 10px;font-weight:800;display:inline-flex}.pe-sign svg{width:14px;height:14px}.pe-board__viewport{position:relative}.pe-board--camera .pe-board__viewport{overscroll-behavior:contain;border-radius:14px;overflow:auto}.pe-board__frame{border:8px solid var(--th-border);background:var(--th-ground);box-shadow:var(--pe-sh-2);border-radius:14px;flex:none;position:relative}.pe-board__grid{position:relative}.pe-cells{display:grid;position:absolute;inset:0}.pe-cell{background:var(--th-ground);box-shadow:inset 0 0 0 1px var(--th-ground-line)}.pe-exitline{border-top:2px dashed var(--pe-exit);opacity:.4;pointer-events:none;height:0;position:absolute;left:0;right:0}.pe-exit__gap{background:var(--th-ground);z-index:5;width:8px;position:absolute;left:100%}.pe-exit{z-index:6;border-radius:0 var(--pe-r-sm) var(--pe-r-sm) 0;background:var(--pe-exit);width:18px;color:var(--pe-bg);box-shadow:0 0 10px var(--pe-exit-glow);place-items:center;animation:1.6s ease-in-out infinite pe-exit-pulse;display:grid;position:absolute;left:calc(100% - 2px)}.pe-exit svg{width:12px;height:12px}@keyframes pe-exit-pulse{0%,to{box-shadow:0 0 4px var(--pe-exit-glow);filter:brightness()}50%{box-shadow:0 0 16px 4px var(--pe-exit-glow);filter:brightness(1.18)}}.pe-board--exit .pe-exit{box-shadow:0 0 20px 6px var(--pe-exit-glow)}.pe-rails{pointer-events:none;display:flex;position:absolute}.pe-rails i{background:var(--th-outline);opacity:.55;position:absolute}.pe-rails--h i{height:2px;left:0;right:0}.pe-rails--h i:first-child{top:28%}.pe-rails--h i:nth-child(2){top:72%}.pe-rails--v i{width:2px;top:0;bottom:0}.pe-rails--v i:first-child{left:28%}.pe-rails--v i:nth-child(2){left:72%}.pe-rails:after{content:"";background:var(--th-marking);opacity:.35;position:absolute}.pe-rails--h:after{height:2px;top:calc(50% - 1px);left:0;right:0}.pe-rails--v:after{width:2px;top:0;bottom:0;left:calc(50% - 1px)}.pe-range{border-radius:var(--pe-r-vehicle);pointer-events:none;background:#ffffff1f;position:absolute}.pe-wall{position:absolute}.pe-wall__art{width:100%;height:100%;position:absolute;inset:0}.pe-vehicle{transform-origin:0 0;pointer-events:none;position:absolute;top:0;left:0}.pe-vehicle__art{left:var(--inset);top:var(--inset);width:calc(100% - 2 * var(--inset));height:calc(100% - 2 * var(--inset));transition:transform var(--pe-dur-fast) var(--pe-ease), filter var(--pe-dur-fast);position:absolute}.pe-vehicle__hl{left:var(--inset);right:var(--inset);top:var(--inset);height:calc((100% - 2 * var(--inset)) / 3);border-radius:var(--pe-r-vehicle) var(--pe-r-vehicle) 0 0;background:#ffffff2e;position:absolute}.pe-vehicle__lisere{inset:var(--inset);border:2px solid var(--pe-gold);border-radius:var(--pe-r-vehicle);position:absolute}.pe-vehicle__chev{width:calc(var(--cell) * .5);height:calc(var(--cell) * .5);color:var(--pe-gold);filter:drop-shadow(0 0 1px var(--th-outline));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pe-axis{width:calc(var(--cell) * .32);height:calc(var(--cell) * .32);color:#ffffffeb;filter:drop-shadow(0 0 1px var(--th-outline));position:absolute;top:50%}.pe-axis--fwd{right:calc(var(--inset) + 2px);transform:translateY(-50%)}.pe-axis--back{left:calc(var(--inset) + 2px);transform:translateY(-50%)rotate(180deg)}.pe-vehicle--h.is-lift .pe-vehicle__art{filter:drop-shadow(0 8px 14px #0009);transform:translateY(-2px)}.pe-vehicle--v.is-lift .pe-vehicle__art{filter:drop-shadow(8px 0 14px #0009);transform:translate(-2px)}.pe-vehicle.is-lift{z-index:4;will-change:transform}.pe-vehicle.is-blocked .pe-vehicle__art{transform:translate(3px)}.pe-vehicle.is-boss .pe-vehicle__art{overflow:visible}.pe-vehicle.is-boss:not(.pe-ghost) .pe-vehicle__art{filter:drop-shadow(0 0 1.5px var(--pe-enemy)) drop-shadow(0 0 1.5px var(--pe-enemy)) drop-shadow(0 0 7px var(--pe-enemy))}.pe-threat{pointer-events:none;background:repeating-linear-gradient(45deg, color-mix(in srgb, var(--pe-threat) 18%, transparent) 0 5px, transparent 5px 10px);position:absolute}.pe-ghost .pe-vehicle__art{opacity:.35}.pe-ghost:before{content:"";inset:var(--inset);z-index:1;border:2px dashed var(--pe-threat);border-radius:var(--pe-r-vehicle);background:repeating-linear-gradient(45deg, color-mix(in srgb, var(--pe-threat) 30%, transparent) 0 4px, transparent 4px 8px);position:absolute}.pe-arrows{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.pe-arrows line{stroke:var(--pe-threat);stroke-width:3px;stroke-linecap:round}.pe-arrows polygon{fill:var(--pe-threat)}.pe-reticle{color:var(--pe-threat);pointer-events:none;position:absolute}.pe-reticle svg{width:100%;height:100%}.pe-cone{pointer-events:none;position:absolute}.pe-cone i{background:var(--pe-threat);box-shadow:inset 0 0 0 calc(var(--cell) * .09) #ffffffd9, 0 0 0 2px var(--th-outline);border-radius:50%;position:absolute;inset:16%}.pe-cone b{color:#fff;text-shadow:0 0 2px var(--th-outline);font-size:11px;font-weight:800;position:absolute;bottom:0;right:2px}.pe-cone.is-ghost{opacity:.5}.pe-board--frozen .pe-board__frame{filter:saturate(.4)}.pe-chrome{z-index:1000;border-radius:var(--pe-r-md);border:1px solid var(--pe-line);opacity:.5;max-width:calc(100vw - 16px);transition:opacity var(--pe-dur-base);background:#0a0c10db;flex-wrap:nowrap;align-items:flex-start;gap:6px;padding:6px;display:flex;position:fixed;bottom:8px;right:8px}.pe-chrome:hover,.pe-chrome:focus-within,.pe-chrome:not(.is-collapsed){opacity:1}.pe-chrome__body{flex-wrap:wrap;flex:1 1 0;gap:6px;min-width:0;display:flex}.pe-chrome__toggle{flex:none;place-items:center;width:44px;display:grid;padding:0!important}.pe-chrome__toggle svg{width:16px;height:16px}.pe-chrome.is-collapsed{border-radius:var(--pe-r-pill);opacity:.6;gap:0;padding:0}.pe-chrome.is-collapsed .pe-chrome__body{display:none}.pe-chrome.is-collapsed{bottom:2px;right:2px}.pe-chrome.is-collapsed .pe-chrome__toggle{width:44px;height:44px;min-height:44px}body.pe-has-back .pe-chrome{max-height:80vh;top:0;bottom:auto;overflow-y:auto}body.pe-has-back .pe-chrome.is-collapsed{top:0;bottom:auto;right:4px}body.pe-chrome-pad{padding-bottom:56px}.pe-chrome__group{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.pe-chrome__label{letter-spacing:.08em;text-transform:uppercase;color:var(--pe-text-dim);padding:0 4px;font-size:10px}.pe-chrome button{border-radius:var(--pe-r-pill);border:1px solid var(--pe-line);background:var(--pe-surface-2);min-height:44px;color:var(--pe-text);font-size:var(--pe-fs-xs);cursor:pointer;padding:0 12px}.pe-chrome button[aria-pressed=true]{background:var(--pe-gold);color:var(--pe-bg);border-color:#0000}
html,body{min-height:100%}body{overflow-x:hidden}:where(.pe-game) a{color:inherit;text-decoration:none}.app{min-height:100dvh;overflow-x:clip}.screen{gap:var(--pe-sp-3);width:100%;max-width:480px;min-height:100dvh;padding:var(--pe-sp-3) var(--pe-sp-4) var(--pe-sp-5);flex-direction:column;margin:0 auto;display:flex;position:relative;overflow-x:clip}.panel{border:1px solid var(--pe-line);border-radius:var(--pe-r-lg);padding:var(--pe-sp-3) var(--pe-sp-4);background:#0a0c10a8}.topbar{align-items:center;gap:var(--pe-sp-3);display:flex}.topbar .grow,.grow{flex:1;min-width:0}.ttl{font-family:var(--th-font-accent);font-size:var(--pe-fs-xl);line-height:var(--pe-lh-tight);overflow-wrap:anywhere}.ttl--display{font-family:var(--pe-font-display)}.sub{color:var(--pe-text-dim);font-size:var(--pe-fs-sm)}.center{text-align:center}.flip .pe-icon{transform:rotate(180deg)}.pe-btn .pe-icon{width:20px;height:20px}.pe-game .pe-btn--icon{min-width:44px;min-height:44px}.pe-game .pe-btn{min-height:44px}.ico{display:inline-flex}.boardwrap{margin-inline:calc(var(--pe-sp-4) * -1);justify-content:center;display:flex}.boardhost{touch-action:none;width:100%}.worlds{gap:var(--pe-sp-4);flex-direction:column;display:flex}.worlds a.pe-worldcard{transition:transform var(--pe-dur-fast) var(--pe-ease)}.worlds a.pe-worldcard:active{transform:scale(.985)}.worlds .pe-worldcard__body{padding-top:var(--pe-sp-5)}.worlds .pe-worldcard__boss{top:90px;bottom:auto}.worlds .thumbhost{margin-top:-8px;position:absolute;inset:0}.worlds .pe-worldcard__score{white-space:nowrap}.worlds .thumbhost .pe-sign{display:none}.worlds .thumbhost>.pe-board{transform-origin:50% 0;transform:scale(.9)}.pe-worldcard--now{border-color:var(--th-accent)}.pe-worldcard__now{left:var(--pe-sp-3);top:var(--pe-sp-3);z-index:3;position:absolute}.total{justify-content:space-between;align-items:center;gap:var(--pe-sp-3);display:flex}.total b{font-family:var(--pe-font-display);font-size:var(--pe-fs-xl)}.teaser{align-items:center;gap:var(--pe-sp-3);border-style:dashed;display:flex}.teaser .pe-icon{width:32px;height:32px;color:var(--pe-text-dim)}.teaser b{font-family:var(--pe-font-display);font-weight:700}.map{padding:var(--pe-sp-2) 0;grid-template-columns:repeat(3,1fr);grid-auto-rows:104px;place-items:center;display:grid;position:relative}.map svg.path{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.map .pe-node{z-index:1;text-decoration:none;position:relative}.map .pe-node__dot{box-shadow:var(--pe-sh-1)}.map .cap{color:var(--pe-text);text-align:center;max-width:96px;font-size:11px;line-height:1.1}.map .pe-node--locked .cap{opacity:.9}.route{overscroll-behavior:contain;scroll-behavior:auto;max-height:52dvh;padding-block:0;position:relative;overflow-y:auto}.route .map{padding:var(--pe-sp-2) 0 var(--pe-sp-4)}.map .citybanner{border-radius:var(--pe-r-pill);background:color-mix(in srgb, var(--th-accent) 22%, transparent);border:1px solid var(--th-accent);width:100%;font-size:var(--pe-fs-sm);text-align:center;z-index:1;grid-column:1/-1;align-self:end;padding:6px 12px;font-weight:700}.map .citybanner small{color:var(--pe-text-dim);font-weight:400}.milestones{gap:var(--pe-sp-2) var(--pe-sp-3);font-size:var(--pe-fs-sm);flex-wrap:wrap;display:flex}.milestones span{align-items:center;gap:8px;display:inline-flex}.nextcity h3,.boss-preview h3{font-family:var(--pe-font-display);font-size:var(--pe-fs-lg);line-height:1.1}.nextcity p,.boss-preview p{font-size:var(--pe-fs-sm);color:var(--pe-text-dim)}.legend{gap:var(--pe-sp-2) var(--pe-sp-3);font-size:var(--pe-fs-xs);color:var(--pe-text-dim);flex-wrap:wrap;align-items:center;display:flex}.boss-preview{align-items:center;gap:var(--pe-sp-3);border-color:var(--pe-boss);display:flex}.boss-preview .mini{border-radius:var(--pe-r-md);background:var(--th-ground);flex:none;width:150px;height:124px;position:relative;overflow:hidden}.boss-preview .mini .pe-board{transform-origin:50% 0;margin-top:-8px;transform:scale(.82)}.boss-preview .mini .pe-sign{display:none}.pe-node__dot .lk{background:var(--pe-surface);width:22px;height:22px;color:var(--pe-text);border:2px solid var(--pe-line);border-radius:50%;place-items:center;display:grid;position:absolute;top:-4px;right:-4px}.big{align-items:center;gap:var(--pe-sp-4);display:flex}.big .num{font-family:var(--pe-font-display);font-weight:800;font-size:var(--pe-fs-3xl);line-height:1}.big .num small{font-size:var(--pe-fs-lg);color:var(--pe-text-dim);font-weight:600}.big .pe-icon{width:48px;height:48px;color:var(--pe-gold)}.wrow{gap:var(--pe-sp-2);flex-direction:column;display:flex}.wrow .head{justify-content:space-between;align-items:baseline;gap:var(--pe-sp-2);display:flex}.wrow .nm{font-family:var(--th-font-accent);font-size:var(--pe-fs-lg);line-height:1.1}.wrow .pe-worldcard__score{white-space:nowrap}.wlist{gap:var(--pe-sp-3);flex-direction:column;display:flex}.wlist a.panel{min-height:44px;display:block}.wlist a.panel.is-lock{opacity:.55}.stats{gap:var(--pe-sp-2);text-align:center;grid-template-columns:repeat(3,1fr);display:grid}.stats b{font-family:var(--pe-font-display);font-size:var(--pe-fs-xl);line-height:1.1;display:block}.stats span{font-size:var(--pe-fs-xs);color:var(--pe-text-dim)}.cells{gap:var(--pe-sp-2);grid-template-columns:repeat(3,1fr);display:grid}.cellp{padding:var(--pe-sp-2) var(--pe-sp-1);border-radius:var(--pe-r-md);background:var(--pe-surface-2);border:1px solid var(--pe-line);text-align:center;flex-direction:column;align-items:center;gap:2px;min-height:76px;display:flex}.cellp b{font-family:var(--pe-font-display);font-size:var(--pe-fs-lg);align-items:center;gap:4px;line-height:1.1;display:inline-flex}.cellp b .pe-icon{width:16px;height:16px}.cellp small{color:var(--pe-text-dim);font-size:11px;line-height:1.2}.cellp.event{border-color:var(--pe-event)}.cellp.boss{border-color:var(--pe-boss)}.cellp.locked{opacity:.4}.cellp.cur{border-color:var(--th-accent)}.screen--pause{overflow:hidden}.stagearea{flex-direction:column;flex:1;justify-content:flex-start;display:flex}.screen--pause .pe-veil{align-items:end;padding:0}.sheet{border-radius:var(--pe-r-xl) var(--pe-r-xl) 0 0;width:100%;padding-bottom:var(--pe-sp-5);text-align:left;border-bottom:0;align-items:stretch}.sheet .grab{border-radius:var(--pe-r-pill);background:var(--pe-star-off);align-self:center;width:44px;height:5px}.sheet h2{font-family:var(--th-font-accent);font-size:var(--pe-fs-2xl);line-height:var(--pe-lh-tight);text-align:center}.sheet .actions{gap:var(--pe-sp-2);flex-direction:column;display:flex}.sheet .actions .pe-btn{width:100%}.row-set{align-items:center;gap:var(--pe-sp-3);min-height:56px;padding:var(--pe-sp-2) 0;border-top:1px solid var(--pe-line);display:flex}.row-set:first-of-type{border-top:0}.row-set .pe-icon{width:24px;height:24px;color:var(--pe-text-dim)}.row-set .lbl{flex:1;min-width:0}.row-set .lbl b{font-weight:600;display:block}.row-set .lbl span{font-size:var(--pe-fs-xs);color:var(--pe-text-dim)}.sw{border-radius:var(--pe-r-pill);cursor:pointer;background:0 0;border:0;flex:none;width:52px;height:44px;position:relative}.sw:before{content:"";border-radius:var(--pe-r-pill);background:var(--pe-star-off);width:52px;height:32px;transition:background var(--pe-dur-base);position:absolute;top:6px;left:0}.sw:after{content:"";background:var(--pe-text);width:24px;height:24px;transition:transform var(--pe-dur-base) var(--pe-ease);border-radius:50%;position:absolute;top:10px;left:4px}.sw[aria-checked=true]:before{background:var(--th-accent)}.sw[aria-checked=true]:after{background:var(--th-accent-ink);transform:translate(20px)}.sw:focus-visible{outline:3px solid var(--pe-gold);outline-offset:2px}body.reduce-motion *,body.reduce-motion :before,body.reduce-motion :after{transition:none!important;animation:none!important}.stub-note{text-align:center}
