.hk-zone,.hk-group{min-width:0}.hk-grid{grid-template-columns:repeat(var(--hk-w), var(--hk-cell,40px));grid-template-rows:repeat(var(--hk-h), var(--hk-cell,40px));gap:var(--hk-gap,3px);touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;display:grid;position:relative}.hk-cell{min-width:0;min-height:0}.hk-overlay{z-index:1;pointer-events:none;position:relative}.hk-item{z-index:2;min-width:0;min-height:0;font:inherit;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:0;padding:0;position:relative}.hk-item.is-shaped{grid-template-columns:repeat(var(--hk-iw), minmax(0, 1fr));grid-template-rows:repeat(var(--hk-ih), minmax(0, 1fr));gap:var(--hk-gap,3px);box-shadow:none;background:0 0;border:0;display:grid}.hk-item.is-lifted{opacity:.35}.hk-ghost{z-index:3;pointer-events:none;position:relative}.hk-drag-avatar{z-index:1000;pointer-events:none;will-change:transform;position:fixed;top:0;left:0}.hk-view.is-dragging,.hk-view.is-dragging .hk-item{cursor:grabbing}.hk-qty{z-index:1;pointer-events:none;position:absolute}:root{--bg:#e3e6e1;--panel:#f3f4f0;--sunk:#d7dbd4;--ink:#1a1e1c;--muted:#56605a;--line:#c0c6be;--accent:#f0b429;--hz-dark:#1a1e1c;--on-sev:#fff;--kraft:#cfa874;--kraft-edge:#a6814d;--kraft-ink:#3a2911;--tape:#ffffff57;--cool:#2c77a0;--shade:#5b7d43;--hot:#b96f0e;--sun:#bf3727;--ok:#2e7646;--warn:#a86308;--danger:#bf3727;--c-food:#7e5219;--c-power:#46525c;--c-air:#1f8e80;--shadow:#00000024;--f-display:"Noto Sans TC", "PingFang TC", "Microsoft JhengHei", system-ui, sans-serif;--f-body:"Noto Sans TC", "PingFang TC", "Microsoft JhengHei", system-ui, sans-serif;--f-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--hk-cell:42px;--hk-gap:3px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121514;--panel:#1b1f1d;--sunk:#252a27;--ink:#e3e6e1;--muted:#9aa39c;--line:#343b37;--kraft:#a88459;--kraft-edge:#7a5d37;--kraft-ink:#1e1508;--tape:#ffffff29;--cool:#5ba4cc;--shade:#8bad69;--hot:#e09a3e;--sun:#e5644f;--ok:#5db27a;--warn:#e09a3e;--danger:#e5644f;--c-food:#5e3d12;--c-power:#2c343b;--c-air:#2fa898;--shadow:#00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#121514;--panel:#1b1f1d;--sunk:#252a27;--ink:#e3e6e1;--muted:#9aa39c;--line:#343b37;--kraft:#a88459;--kraft-edge:#7a5d37;--kraft-ink:#1e1508;--tape:#ffffff29;--cool:#5ba4cc;--shade:#8bad69;--hot:#e09a3e;--sun:#e5644f;--ok:#5db27a;--warn:#e09a3e;--danger:#e5644f;--c-food:#5e3d12;--c-power:#2c343b;--c-air:#2fa898;--shadow:#00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width<=560px){:root{--hk-cell:36px}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font:15px/1.55 var(--f-body);-webkit-text-size-adjust:100%;margin:0}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.wrap{max-width:1240px;padding-inline:20px;padding-block:calc(22px + env(safe-area-inset-top,0px)) 48px;margin:0 auto}.kicker{font:600 12px var(--f-mono);letter-spacing:.08em;color:var(--muted)}.hz{background:repeating-linear-gradient(135deg, var(--accent) 0 8px, var(--hz-dark) 8px 16px);border-radius:1px;width:132px;height:6px;margin:8px 0 10px}h1{font:900 clamp(28px, 4.2vw, 40px) / 1.1 var(--f-display);letter-spacing:.02em;text-wrap:balance;margin:0 0 6px}.lede{color:var(--muted);max-width:62ch;margin:0}.chars{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px;display:grid}.char{text-align:left;border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:8px;align-content:start;gap:2px;padding:10px 12px 12px;display:grid}.char b{font:900 17px/1.2 var(--f-display)}.char span{color:var(--muted);font-size:12.5px;line-height:1.4}.char .mono{color:var(--ink)}.char:hover{border-color:var(--muted)}.char[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 -4px 0 var(--accent)}.layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:20px;margin-top:18px;display:grid}.stage{min-width:0}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.stat{background:var(--panel);border:1px solid var(--line);border-radius:8px;align-content:start;gap:4px;min-width:0;padding:8px 10px 10px;display:grid}.stat .k{color:var(--muted);font-size:12px}.stat .v{font:600 15px/1.25 var(--f-mono);font-variant-numeric:tabular-nums}.meter{background:var(--sunk);border-radius:2px;height:4px;overflow:hidden}.meter i{background:var(--ink);height:100%;display:block}.stat.bad .v{color:var(--danger)}.stat.bad .meter i{background:var(--danger)}.sec-h{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;margin:22px 0 10px;display:flex}.sec-h h2{font:700 16px var(--f-display);margin:0}.hint{color:var(--muted);font-size:12.5px}.sec-actions{gap:6px;display:flex}.btn-s{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:6px;padding:5px 10px;font-size:12.5px}.btn-s:hover{border-color:var(--ink)}.ups{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.up{text-align:left;border:1px dashed var(--line);cursor:pointer;background:0 0;border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:2px 10px;padding:10px 12px;display:grid}.up:hover{border-color:var(--muted)}.up .box{border:1.5px solid var(--muted);border-radius:3px;grid-row:1/span 3;width:16px;height:16px;margin-top:3px;position:relative}.up[aria-pressed=true]{border-style:solid;border-color:var(--ink);background:var(--panel)}.up[aria-pressed=true] .box{background:var(--accent);border-color:var(--ink)}.up[aria-pressed=true] .box:after{content:"";border:solid var(--hz-dark);border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.up-name{font-size:14px;font-weight:700}.up-meta{font:500 12px var(--f-mono);color:var(--muted)}.up-desc{color:var(--muted);font-size:12.5px;line-height:1.45}.up:disabled{cursor:not-allowed;opacity:.62}.up:disabled .up-desc{color:var(--danger)}.legend{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.legend-note{color:var(--muted);font-size:12px}.t-cool{--tc:var(--cool)}.t-shade{--tc:var(--shade)}.t-hot{--tc:var(--hot)}.t-sun{--tc:var(--sun)}.tchip{font:600 11px/1 var(--f-mono);white-space:nowrap;color:var(--tc);background:var(--panel);background:color-mix(in srgb, var(--tc) 12%, transparent);border:1px solid var(--tc);border-radius:3px;align-items:center;padding:4px 6px;display:inline-flex}.space{background:var(--sunk);border-radius:12px;justify-items:center;gap:12px;padding:30px 16px 16px;display:grid;position:relative;overflow-x:auto}.dir{font:600 11px var(--f-mono);letter-spacing:.06em;color:var(--muted);position:absolute;top:8px;left:12px}.hk-view{justify-content:center;align-items:center;gap:12px;display:grid}.hk-view.layout-scooter{grid-template-columns:auto auto auto;grid-template-areas:".floor.""bagL seat bagR""bagL pillion bagR"".rack."".pack."}.hk-view.layout-car{grid-template-columns:auto auto;grid-template-areas:"driver front""rear rear""trunk trunk""pack pack"}.hk-zone.is-pack{border-style:dashed;border-color:var(--ink)}.hk-view.layout-building{grid-template-columns:auto auto;grid-template-areas:"plant living";align-items:start}@media (width<=1100px){.hk-view.layout-building{grid-template-columns:auto;grid-template-areas:"plant""living"}}.hk-zone{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex-direction:column;justify-self:center;gap:6px;width:min-content;min-width:96px;padding:8px;display:flex}.hk-zone.is-disabled{background:0 0;border-style:dashed}.hk-zone-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;display:flex}.hk-zone-header b{white-space:nowrap;font-size:13px}.hk-zone.is-disabled .hk-zone-header b,.hk-zone-footer{color:var(--muted)}.hk-zone-footer{font-size:11.5px;line-height:1.4}.hk-cell{background:var(--panel);background:color-mix(in srgb, var(--tc,var(--line)) 15%, var(--panel));border:1px solid var(--line);border-color:color-mix(in srgb, var(--tc,var(--line)) 34%, transparent);border-radius:3px}.hk-cell.t-sun{background-image:repeating-linear-gradient(135deg, color-mix(in srgb, var(--sun) 22%, transparent) 0 3px, transparent 3px 7px)}.hk-cell.is-closed{background:repeating-linear-gradient(135deg, var(--line) 0 2px, transparent 2px 7px);border-color:var(--line)}.hk-zone.is-disabled .hk-cell{border:1px dashed var(--line);background:0 0}.hk-zone.is-disabled .hk-grid{cursor:pointer}.is-holding .hk-zone:not(.is-disabled) .hk-grid{cursor:copy}.hk-item{background:var(--kraft);border:1px solid var(--kraft-edge);color:var(--kraft-ink);font:700 13px/1.1 var(--f-body);box-shadow:0 1px 0 var(--shadow);border-radius:3px;justify-content:center;align-items:center;display:flex;overflow:hidden}.hk-item:before{content:"";background:var(--tape);width:8px;position:absolute;top:0;bottom:0;left:calc(50% - 4px)}.hk-item>span{z-index:1;text-align:center;padding:0 2px;position:relative}.hk-item:hover{filter:brightness(1.07)}.hk-item .cat,.hk-drag-avatar .cat{background:var(--catc);border-radius:1px;width:7px;height:7px;position:absolute;top:3px;left:3px}.cat-water{--catc:var(--cool)}.cat-food{--catc:var(--c-food)}.cat-med{--catc:var(--danger)}.cat-power{--catc:var(--c-power)}.cat-air{--catc:var(--c-air)}.cat-gear{--catc:var(--shade)}.cat-fuel{--catc:var(--accent)}.hk-item.cat-fuel .cat{background:repeating-linear-gradient(45deg, var(--accent) 0 2px, var(--hz-dark) 2px 4px);width:10px;height:10px}.hk-item .bang{z-index:1;width:13px;height:13px;font:700 10px/13px var(--f-mono);text-align:center;color:var(--on-sev);background:var(--warn);border-radius:50%;font-style:normal;display:none;position:absolute;top:2px;right:2px}.hk-item[data-level=warn],.hk-item[data-level=danger]{box-shadow:inset 0 0 0 2px var(--lc)}.hk-item[data-level=warn]{--lc:var(--warn)}.hk-item[data-level=danger]{--lc:var(--danger)}.hk-item[data-level=warn] .bang,.hk-item[data-level=danger] .bang{background:var(--lc);display:block}@keyframes flash{0%,to{transform:none}30%{transform:scale(1.14)}60%{transform:scale(.95)}}.hk-item.is-flash{animation:.6s 2 flash}.hk-ghost{border:2px dashed var(--ok);background:color-mix(in srgb, var(--ok) 18%, transparent);font:600 10px var(--f-mono);color:var(--ink);border-radius:3px;justify-content:center;align-items:center;display:flex}.hk-ghost.is-warn{border-color:var(--warn);background:color-mix(in srgb, var(--warn) 22%, transparent)}.hk-ghost.is-danger,.hk-ghost.is-bad{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 18%, transparent)}.hk-ghost.is-bad{border-style:solid}.hk-ghost.is-stack{border-style:solid;font-size:12px}.hk-item .icon,.hk-drag-avatar .icon{z-index:1;aspect-ratio:1;flex:none;width:min(26px,66%);height:auto;display:block;position:relative}.hk-item.is-wide{gap:2px}.hk-item.is-wide .icon{width:24px}.hk-item.is-tall{flex-direction:column}.hk-item .lbl{white-space:nowrap;font-size:12px}.hk-item.is-empty .icon{opacity:.35}.hk-item:has(.hk-qty)>.icon{transform:translateY(-4px)}.ico{flex:none;place-items:center;display:inline-grid}.ico .icon{width:22px;height:22px;display:block}.hk-qty{min-width:14px;font:700 10px/14px var(--f-mono);text-align:center;color:var(--panel);background:var(--ink);border-radius:3px;padding:0 3px;font-style:normal;bottom:2px;right:2px}.hk-item:has(.fill) .hk-qty{bottom:9px}.hk-item:has(.hk-qty)>span:not(.hk-qty){transform:translateY(-5px)}.hk-drag-avatar{background:var(--kraft);border:1px solid var(--kraft-edge);color:var(--kraft-ink);font:700 13px var(--f-body);opacity:.88;box-shadow:0 8px 22px var(--shadow);border-radius:4px;justify-content:center;align-items:center;display:flex}.hk-overlay.region{border:2px dashed var(--cool);border-radius:5px;margin:-3px}.hk-overlay.region span{font:600 10px/16px var(--f-mono);color:var(--cool);background:var(--panel);border-radius:3px;padding:0 4px;position:absolute;top:-9px;right:4px}.roof{background:var(--panel);border:1px solid var(--line);border-radius:8px;justify-self:stretch;gap:6px;padding:8px 10px;display:grid}.roof.is-empty{background:0 0;border-style:dashed}.roof-h{justify-content:space-between;align-items:center;gap:8px;display:flex}.roof-h b{font-size:13px}.roof-body{gap:2px;font-size:13px;display:grid}.roof-body span{color:var(--muted);font-size:12px}.side{top:calc(env(safe-area-inset-top,0px) + 12px);flex-direction:column;gap:14px;max-height:calc(100dvh - 24px);display:flex;position:sticky;overflow:auto}.shop{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px}.shop-h{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.shop-h h2{font:700 16px var(--f-display);margin:0}.hand{background:var(--sunk);border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px 8px;min-height:42px;padding:8px 10px;font-size:13px;display:flex}.hand-k{font:600 11px var(--f-mono);letter-spacing:.06em;color:var(--muted)}.hand-btns{gap:6px;margin-left:auto;display:flex}.hand-qty{align-items:center;gap:4px;display:inline-flex}.hand-qty .mono{text-align:center;min-width:52px;font-size:12px}.hand-qty button{width:28px;height:28px;font:700 15px/1 var(--f-mono);border:1px solid var(--ink);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:5px}.hand-qty button:disabled{opacity:.35;cursor:default}.hand-hint{color:var(--muted);flex-basis:100%;font-size:12px}.hand-btns button{border:1px solid var(--ink);background:var(--panel);cursor:pointer;border-radius:5px;padding:4px 8px;font-size:12px}.plist{gap:2px;margin-top:8px;display:grid}.pitem{text-align:left;cursor:grab;touch-action:pan-x;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 8px;display:grid}.pitem:hover{background:var(--sunk)}.pitem[aria-pressed=true]{border-color:var(--ink);background:var(--sunk);background:color-mix(in srgb, var(--accent) 24%, var(--panel))}.pinfo{min-width:0;display:grid}.pinfo b{font-size:13.5px}.psub{color:var(--muted);font-size:11.5px;line-height:1.4}.pmeta{font:500 11.5px/1.4 var(--f-mono);color:var(--muted);text-align:right;white-space:nowrap}.pico{color:var(--ink);justify-items:center;gap:3px;display:grid}.shape{grid-template-columns:repeat(var(--w), 5px);grid-auto-rows:5px;justify-content:center;gap:1px;display:grid}.shape i{background:var(--kraft);border:1px solid var(--kraft-edge);border-radius:1px}.report{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px}.report h2{font:700 16px var(--f-display);margin:0 0 8px}.report h2.mt{margin-top:18px}.check{border-top:1px solid var(--line);grid-template-columns:40px minmax(0,1fr);align-items:center;gap:8px;padding:8px 0;display:grid}.report h2+.check{border-top:0}.ck{font-size:13px;font-weight:700}.cv{align-items:center;gap:8px;min-width:0;font-size:13px;line-height:1.45;display:flex}.cv .mono{white-space:nowrap;font-size:12.5px}.ok{--lc:var(--ok)}.warn{--lc:var(--warn)}.danger{--lc:var(--danger)}.info{--lc:var(--muted)}.bar7{background:var(--sunk);border-radius:2px;flex:1;min-width:60px;height:10px;position:relative;overflow:hidden}.bar7 i{background:var(--lc);height:100%;display:block}.bar7:after{content:"";background:repeating-linear-gradient(90deg, transparent 0 calc(100% / 7 - 2px), var(--panel) calc(100% / 7 - 2px) calc(100% / 7));position:absolute;inset:0}.lvl{font:600 11px/1 var(--f-mono);color:var(--lc);border:1px solid var(--lc);white-space:nowrap;border-radius:3px;flex:none;padding:4px 6px}.ctext{min-width:0}.warns{gap:6px;margin:0;padding:0;list-style:none;display:grid}.w{background:var(--bg);border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;padding:7px 8px;font-size:13px;line-height:1.5;display:grid}.w.linked{cursor:pointer}.w.linked:hover{background:var(--sunk)}.w.none{color:var(--muted);background:0 0;padding-inline:0;display:block}.toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:30;background:var(--ink);max-width:calc(100% - 32px);color:var(--bg);box-shadow:0 6px 18px var(--shadow);border-radius:8px;padding:9px 14px;font-size:13.5px;position:fixed;transform:translate(-50%)}@media (width<=860px){.layout{grid-template-columns:minmax(0,1fr)}.side{max-height:none;position:static;overflow:visible}.shop{z-index:20;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));box-shadow:0 -6px 20px var(--shadow);border-width:1px 0 0;border-radius:12px 12px 0 0;position:fixed;bottom:0;left:0;right:0}.shop-h{display:none}.plist{scroll-snap-type:x proximity;overscroll-behavior-x:contain;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.pitem{border-color:var(--line);scroll-snap-align:start;flex:none;grid-template-columns:minmax(0,1fr);justify-items:start;gap:4px;width:96px}.pitem .pico{justify-items:start}.pitem .psub,.dest .psub{display:none}.shelf .psub{font-size:11.5px}.pmeta{text-align:left}.wrap{padding-bottom:210px}.toast{bottom:calc(178px + env(safe-area-inset-bottom,0px))}}@media (width<=560px){.wrap{padding-inline:16px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.space{padding:28px 8px 10px}.char b{font-size:15px}}@media (prefers-reduced-motion:reduce){.hk-item.is-flash{outline:3px solid var(--accent);animation:none}}.topbar{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px 12px;margin-top:18px;display:grid}.topbar .chars{margin-top:0}.modes{background:var(--sunk);border-radius:10px;grid-auto-flow:row;gap:4px;padding:4px;display:grid}.modes button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 14px;font-size:13.5px;font-weight:700}.modes button[aria-selected=true]{background:var(--panel);color:var(--ink);box-shadow:0 1px 2px var(--shadow), inset 0 -3px 0 var(--accent)}@media (width<=560px){.topbar{grid-template-columns:minmax(0,1fr)}.modes{grid-auto-flow:column}}.btn{border:1px solid var(--ink);background:var(--ink);color:var(--bg);cursor:pointer;border-radius:6px;flex:none;padding:6px 12px;font-size:13px;font-weight:700;line-height:1.3}.btn.ghost{background:var(--panel);color:var(--ink)}.btn.primary{background:var(--accent);border-color:var(--hz-dark);color:var(--hz-dark)}.btn.tiny{padding:4px 8px;font-size:12px;font-weight:500}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-row{flex-wrap:wrap;gap:6px;display:flex}.btn-s.restart{place-self:flex-start start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px 14px}.panel-h{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;display:flex}.panel-h h2{font:900 20px/1.2 var(--f-display);margin:0}.panel h3{font:700 14px var(--f-display);margin:0}.block{border-top:1px solid var(--line);gap:8px;margin-top:12px;padding-top:12px;display:grid}.note{color:var(--muted);margin:0;font-size:12.5px;line-height:1.5}.small{font-size:12.5px}.plain{gap:6px;margin:0;padding:0;list-style:none;display:grid}.plain li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;font-size:13px;display:flex}.shelf{margin:0;padding:0;list-style:none;display:grid}.shelf li{border-top:1px dashed var(--line);grid-template-columns:24px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:7px 0;display:grid}.shelf li:first-child{border-top:0}.sh-name,.d-name,.u-name{min-width:0;display:grid}.sh-name b,.d-name b,.u-name b{font-size:13.5px}.sh-meta{font:500 11.5px/1.4 var(--f-mono);color:var(--muted);text-align:right;white-space:nowrap}.sh-meta .out,.sh-meta .price-up{color:var(--danger)}.buy-qty{flex-wrap:wrap;align-items:center;gap:4px 6px;margin:8px 0 4px;display:flex}.buy-qty button{min-width:36px;font:600 12.5px var(--f-mono);border:1px solid var(--ink);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:5px;padding:4px 8px}.buy-qty button[aria-checked=true]{background:var(--ink);color:var(--panel)}.buy-qty .hint:last-child{flex-basis:100%;font-size:11.5px}.sh-btns,.d-btns{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.dest summary{cursor:pointer;justify-content:space-between;align-items:baseline;gap:8px;list-style:none;display:flex}.dest summary::-webkit-details-marker{display:none}.dest summary h3:before{content:"▸ ";color:var(--muted)}.dest[open] summary h3:before{content:"▾ "}.dest li{border-top:1px dashed var(--line);gap:4px;padding:6px 0;display:grid}.dest li:first-child{border-top:0}.d-btns{justify-content:flex-start}.ups-run li{border-top:1px dashed var(--line);grid-template-columns:minmax(0,1fr) auto;padding:6px 0;display:grid}.ups-run li:first-child{border-top:0}.u-why{color:var(--danger);white-space:nowrap;font-size:12px}.u-prog{width:80px;color:var(--muted);gap:2px;font-size:11.5px;display:grid}.jobs li{color:var(--muted)}.space.is-run{padding-top:16px}.hk-view.run{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:14px;display:flex}.hk-group{border:1px dashed var(--muted);border-radius:10px;gap:8px;min-width:0;padding:10px;display:grid}.hk-group-header{justify-content:space-between;align-items:baseline;gap:10px;font-size:13px;display:flex}.hk-group-header .where{font:600 11px var(--f-mono);color:var(--muted)}.hk-group-header .where.here{color:var(--ok)}.hk-group-body{justify-content:center;align-items:center;gap:12px;display:grid}.hk-group.g-home>.hk-group-body,.hk-group.g-carry>.hk-group-body{flex-wrap:wrap;justify-content:center;display:flex}.hk-group.layout-scooter>.hk-group-body{grid-template-columns:auto auto auto;grid-template-areas:".floor.""bagL seat bagR""bagL pillion bagR"".rack.";display:grid}.hk-group.layout-car>.hk-group-body{grid-template-columns:auto auto;grid-template-areas:"driver front""rear rear""trunk trunk";display:grid}.hk-group.layout-building>.hk-group-body{grid-template-columns:auto auto;grid-template-areas:"plant living""dock dock";align-items:start;display:grid}@media (width<=1100px){.hk-group.layout-building>.hk-group-body{grid-template-columns:auto;grid-template-areas:"plant""living""dock"}}.hk-zone.is-locked{opacity:.5}.hk-zone.is-locked .hk-item{pointer-events:none}.endcard{background:var(--panel);border:2px solid var(--ink);box-shadow:inset 0 6px 0 var(--accent);border-radius:10px;justify-items:start;gap:8px;margin-top:14px;padding:16px;display:grid}.endcard h2{font:900 22px/1.2 var(--f-display);margin:4px 0 0}.endcard p{margin:0}.end-checks{flex-wrap:wrap;gap:6px;display:flex}.log li{grid-template-columns:auto minmax(0,1fr);justify-content:start;align-items:start;gap:8px;font-size:12.5px;line-height:1.45;display:grid}.log .mono{color:var(--muted);padding-top:1px;font-size:11px}.log-good span:last-child{color:var(--ok)}.log-bad span:last-child{color:var(--danger)}.tmap-wrap{gap:8px;display:grid}.tmap{aspect-ratio:5/4;background-color:var(--sunk);background-image:linear-gradient(var(--bg) 2px, transparent 2px), linear-gradient(90deg, var(--bg) 2px, transparent 2px);background-position:-1px -1px;background-size:34px 34px;border-radius:8px;justify-self:center;width:100%;max-height:340px;position:relative;overflow:hidden}.tmap-roads{width:100%;height:100%;position:absolute;inset:0}.tmap-roads line{stroke:var(--muted);stroke-width:3px;stroke-linecap:round;opacity:.45}.tmap-roads line.on{stroke:var(--accent);stroke-width:5px;opacity:1}.tpin{z-index:1;border:1.5px solid var(--ink);background:var(--panel);min-height:26px;color:var(--ink);font:700 12.5px/1 var(--f-body);white-space:nowrap;cursor:pointer;box-shadow:0 1px 0 var(--shadow);border-radius:13px;align-items:center;gap:2px;padding:2px 7px;display:inline-flex;position:absolute;transform:translate(-50%,-50%)}.tpin .ico .icon{width:15px;height:15px}.tpin.is-home{border-radius:6px}.tpin.is-here{z-index:2;background:var(--ink);color:var(--panel)}.tpin.is-here:after{content:"你在這";font:600 10px/1.3 var(--f-mono);color:var(--ink);background:var(--accent);border-radius:3px;padding:1px 4px;position:absolute;top:100%;left:50%;transform:translate(-50%,3px)}.tpin.is-selected{z-index:3;box-shadow:0 0 0 3px var(--accent)}.tpin.is-far{opacity:.45}.tpin .veh{background:var(--accent);color:var(--hz-dark);border-radius:3px;margin-left:2px;padding:1px}.tcard{border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--panel);border-radius:8px;gap:6px;padding:10px 12px;display:grid}.tcard-h{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.tcard-h b{font-size:15px}.tcard-sells{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.tcard-sells .sell{align-items:center;gap:2px;font-size:12px;display:inline-flex}.tcard-sells .ico .icon{width:18px;height:18px}.tmap-hint{text-align:center}.foot{font:500 11px var(--f-mono);color:var(--muted);text-align:center;margin-top:28px}.intro-backdrop{z-index:50;background:color-mix(in srgb, var(--bg) 70%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.intro{border:2px solid var(--ink);background:var(--panel);width:min(460px,100%);max-height:calc(100dvh - 32px);box-shadow:inset 0 6px 0 var(--accent), 0 18px 40px var(--shadow);border-radius:12px;gap:10px;padding:20px;display:grid;overflow-y:auto}.intro h2{font:900 26px/1.2 var(--f-display);margin:0}.intro p{margin:0;line-height:1.65}.intro-money{font:600 13px var(--f-mono)}.guide{border:2px solid var(--ink);background:var(--panel);box-shadow:inset 4px 0 0 var(--accent);border-radius:10px;gap:8px;padding:12px 14px;display:grid}.guide-h{justify-content:space-between;align-items:center;gap:8px;display:flex}.guide-h b{font:700 15px var(--f-display)}.guide-steps{color:var(--muted);flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;font-size:12.5px;list-style:none;display:flex}.guide-steps li{align-items:center;gap:4px;display:inline-flex}.guide-steps .gnum{width:18px;height:18px;font:700 10.5px var(--f-mono);border:1.5px solid;border-radius:50%;place-items:center;display:inline-grid}.guide-steps li.is-done{color:var(--ok)}.guide-steps li.is-now{color:var(--ink);font-weight:700}.guide-steps li.is-now .gnum{background:var(--accent);border-color:var(--hz-dark);color:var(--hz-dark)}.guide-hint{gap:6px;margin:0;font-size:13px;line-height:1.6;display:grid}.guide-hint p{margin:0}.memo{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--kraft);border-radius:10px;padding:12px 14px}.memo summary{cursor:pointer;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;list-style:none;display:flex}.memo summary::-webkit-details-marker{display:none}.memo summary h2{font:700 16px var(--f-display);margin:0}.memo summary h2:before{content:"▸ ";color:var(--muted)}.memo[open] summary h2:before{content:"▾ "}.memo>.note{margin-top:8px}.memo-list{gap:8px;margin:8px 0 0;display:grid}.memo-list li{flex-wrap:nowrap;justify-content:start;align-items:start;line-height:1.55}.memo-list li.is-vague>span:last-child{color:var(--muted);font-style:italic}@media (width<=860px){.run-layout{flex-direction:column;align-items:stretch;gap:14px;display:flex}.run-layout>.stage,.run-layout>.side{display:contents}.run-layout .stats{order:1}.run-layout .endcard{order:2;margin-top:0}.run-layout .guide{order:2}.run-layout .memo,.run-layout .actions{order:3}.run-layout .stage>.sec-h{order:4;margin:4px 0 -4px}.run-layout .space{order:5}.run-layout .report{order:6}.run-layout .report.log{order:7}.run-layout .restart{order:8}.wrap:has(.run-layout){padding-bottom:110px}}.stats.six{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}.profile{margin:12px 0 0}.profile svg{width:100%;height:auto;max-height:220px;display:block}.pf-area{fill:var(--sunk)}.pf-ground{stroke:var(--line);stroke-width:1px}.pf-guide{stroke:var(--line);stroke-width:1px;stroke-dasharray:2 3}.pf-leg{stroke:var(--muted);stroke-width:2.5px;stroke-dasharray:5 4;stroke-linecap:round}.pf-leg.done{stroke:var(--ink);stroke-width:3.5px;stroke-dasharray:none}.pf-dot{fill:var(--panel);stroke:var(--ink);stroke-width:2px}.pf-stop.is-past .pf-dot{fill:var(--ink)}.pf-stop.is-next .pf-dot{stroke:var(--accent);stroke-width:3px}.pf-stop.is-here .pf-dot{fill:var(--accent);stroke:var(--hz-dark);stroke-width:2.5px}.pf-water{fill:var(--cool)}.pf-you,.pf-name,.pf-temp,.pf-alt{text-anchor:middle}.pf-you{font:700 10px var(--f-mono);fill:var(--ink)}.pf-name{font:700 13px var(--f-body);fill:var(--ink)}.pf-stop.is-future .pf-name{fill:var(--muted)}.pf-temp{font:600 12px var(--f-mono);fill:var(--tc)}.pf-alt{font:500 10.5px var(--f-mono);fill:var(--muted)}.btn.leg{text-align:left;background:var(--panel);color:var(--ink);justify-items:start;gap:2px;display:grid}.btn.leg .mono{color:var(--muted);font-size:11.5px;font-weight:500}.event{border:2px solid var(--ink);background:var(--bg);box-shadow:inset 4px 0 0 var(--accent);border-radius:10px;gap:8px;margin-top:12px;padding:14px;display:grid}.event h3{font:900 18px/1.25 var(--f-display);margin:0}.event p{margin:0;line-height:1.6}.event-choices{gap:6px;display:grid}.btn.choice{text-align:left;justify-items:start;gap:2px;padding:9px 12px;display:grid}.btn.choice .why{color:var(--danger);font-size:11.5px;font-weight:500}.btn.choice:disabled{opacity:.6}.event-result{justify-items:start;gap:6px;display:grid}.event-result .picked{color:var(--muted);font-size:12.5px}.event-result .effects{font-size:12.5px;font-weight:600}.report-lines li{justify-content:start}.hk-item .fill{background:linear-gradient(to right, var(--cool) calc(var(--fill) * 100%), var(--shadow) 0);z-index:1;border-radius:2px;height:4px;position:absolute;bottom:3px;left:3px;right:3px}.endcard.dead{box-shadow:inset 0 6px 0 var(--danger)}.result .kicker{letter-spacing:.08em}.result-who{color:var(--muted);font-size:13px}.result-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%;display:grid}.result-tiles>div{background:var(--sunk);text-align:center;border-radius:6px;gap:2px;min-width:0;padding:8px 6px;display:grid}.result-tiles .k{color:var(--muted);font-size:11px}.result-tiles b{font:700 13px var(--f-mono);overflow-wrap:anywhere}.result-left{color:var(--muted);font-size:12px}@media (width<=560px){.result-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.credits{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 20px;width:100%;display:grid}.credits h3{font:700 13px var(--f-display);color:var(--muted);margin:0 0 4px}.credits li .mono{color:var(--muted);font-size:11.5px}
