:root{--bg:#0e0c12;--paper:#f6e4c4;--brass:#e3b23c;--ink:#2a2236;--wood:#2a1c12;--coral:#d45b4a;--cream:#f7f0e4;--sa-t:env(safe-area-inset-top,0px);--sa-b:env(safe-area-inset-bottom,0px);--vw:844px;--vh:390px}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);touch-action:none;-webkit-user-select:none;user-select:none;height:100%;font-family:PingFang SC,Hiragino Sans GB,system-ui,sans-serif;overflow:hidden}#stage{background:#16141c;grid-template-rows:auto 1fr auto;grid-template-columns:1fr;width:100%;height:100%;display:grid;position:absolute;inset:0;transform:none}#workbench{background:#121014;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative}#c{touch-action:none;max-width:100%;max-height:100%;display:block}body[data-orient=port] #c{width:100%;max-width:none;height:100%;max-height:none;position:absolute;inset:0}body[data-orient=land] #minimap{display:none}#minimap{pointer-events:auto;z-index:4;background:#100c0ab8;border:1px solid #6a5638;width:168px;height:78px;position:absolute;bottom:8px;left:8px}#topbar{pointer-events:auto;z-index:5;flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;padding:6px 8px;display:flex;position:relative}#title{color:var(--paper);letter-spacing:.12em;text-shadow:0 1px #000;white-space:nowrap;font-size:14px;font-weight:700}#order{flex:1;justify-content:center;align-items:center;gap:4px;list-style:none;display:flex}.order-node{min-width:44px;height:44px;color:var(--paper);background:#2a241c;border:1px solid #6a5638;border-radius:4px;padding:0 8px;font-size:13px;font-weight:700}.order-node[data-state=done]{background:#3d5a2c;border-color:#8bc46a}.order-node[data-state=now]{border-color:var(--brass);background:#5a4630;box-shadow:0 0 0 2px #e3b23c73}.order-arrow{color:var(--paper);opacity:.7;font-size:12px}#cost{color:var(--paper);text-shadow:0 1px 3px #000;white-space:nowrap;font-size:13px;font-weight:700}#job{flex-direction:column;gap:4px;min-width:160px;display:flex}#commissions{pointer-events:auto;z-index:3;flex-wrap:wrap;gap:4px;max-width:100%;display:flex}.comm-btn{flex-direction:column;padding:0 6px;font-size:10px;font-weight:700;line-height:1.15;display:inline-flex}.comm-last{opacity:.85;font-size:10px;font-weight:500;display:block}.comm-btn[data-on="1"]{border-color:var(--brass);background:#5a4630;box-shadow:0 0 0 2px #e3b23c73}#goal{max-width:360px;color:var(--paper);pointer-events:none;text-shadow:0 1px 3px #000;background:#18100ac7;border:1px solid #6a5638;border-radius:4px;padding:4px 8px;font-size:12px;font-weight:600}#skin{gap:4px;margin-left:4px;display:flex}.skin-btn{min-width:44px;height:44px;padding:0 8px;font-size:11px;font-weight:700}#power{gap:4px;margin-left:auto;display:flex}#power:before{content:"力度";opacity:.7;color:inherit;align-self:center;font-size:11px}.hud-btn,.dock-btn,.pal-btn,.power-btn{min-width:44px;height:44px;color:var(--paper);background:#2a241c;border:1px solid #6a5638;border-radius:4px;padding:0 10px;font-size:12px}.pal-btn{align-items:center;gap:4px;padding:0 7px;font-size:11px;font-weight:600;display:inline-flex}.cost-badge{background:var(--brass);color:#2a1c12;text-align:center;border-radius:9px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px}.power-btn,.hud-btn{opacity:.88;background:#1c1814;border-color:#4a3c2c;font-size:11px;font-weight:500}.power-btn[data-on="1"],.dock-btn[data-on="1"],.pal-btn[data-on="1"],.hud-btn[data-on="1"]{border-color:var(--brass);opacity:1;background:#5a4630}.power-btn[data-on="1"]{background:#3a3024;border-color:#8a7038}.dock-btn[data-primary="1"]{border-color:var(--brass);background:#6a4a20;font-weight:700}.dock-btn:disabled,.pal-btn:disabled,.power-btn:disabled,.hud-btn:disabled{opacity:.4}#details{width:min(360px,90%);max-height:160px;color:var(--paper);pointer-events:auto;background:#18100ae0;border:1px solid #6a5638;border-radius:4px;padding:8px 10px;font-size:12px;line-height:1.45;overflow:auto}#coach{pointer-events:auto;z-index:3;background:#18100ad1;border:1px solid #6a5638;border-radius:4px;align-items:center;gap:8px;max-width:280px;padding:6px 8px;display:flex;position:absolute;top:10px;left:10px}#stale{color:#f7f0e4;z-index:4;pointer-events:none;background:#502010e6;border-radius:4px;max-width:240px;padding:6px 8px;font-size:12px;font-weight:600;position:absolute;top:8px;right:8px}#settings{z-index:8;pointer-events:auto;background:#18100af0;border:1px solid #6a5638;border-radius:4px;flex-wrap:wrap;gap:6px;max-width:420px;padding:8px;display:flex;position:absolute;top:56px;right:8px}#coach[hidden],#details[hidden],#outcome[hidden],#turn[hidden],#stale[hidden],#settings[hidden]{display:none}#hint,#outcome-text{color:var(--paper);text-shadow:0 1px 4px #000;flex:1;font-size:12px}#outcome{pointer-events:auto;z-index:4;background:#18100ae6;border:1px solid #6a5638;border-radius:4px;max-width:min(380px,100% - 188px);padding:8px 10px;position:absolute;bottom:10px;left:10px}#outcome-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}#stage[data-art=official] #hint,#stage[data-art=official] #outcome-text,#stage[data-art=official] .order-arrow{color:var(--wood);text-shadow:0 1px #fff6e4d9,0 0 8px #f6e4c4b3}#stage[data-art=official] #coach,#stage[data-art=official] #details,#stage[data-art=official] #outcome{color:var(--wood);background:#f6e4c4e0;border-color:#8a6a38}#stage[data-art=official] #coach #hint,#stage[data-art=official] #outcome-text{color:var(--wood)}#stage[data-skin=scene_v1]{--paper:#f7f0e4;--brass:#c4a35a;--wood:#4a2e18;--coral:#d45b4a}#stage[data-skin=scene_v1] #hint,#stage[data-skin=scene_v1] #outcome-text,#stage[data-skin=scene_v1] .order-arrow{color:var(--wood);text-shadow:0 1px #f7f0e4e6}#stage[data-skin=scene_v1] .order-node[data-state=now],#stage[data-skin=scene_v1] .skin-btn[data-on="1"],#stage[data-skin=scene_v1] .dock-btn[data-primary="1"]{border-color:var(--coral);box-shadow:0 0 0 2px #d45b4a59}#stage[data-skin=scene_v1] #coach,#stage[data-skin=scene_v1] #details,#stage[data-skin=scene_v1] #outcome{border-color:var(--brass);color:var(--wood);background:#f7f0e4e6}#stage[data-guide=route] .order-node,#stage[data-guide=pick] #palette,#stage[data-guide=place] #palette,#stage[data-guide=tweak] #dock,#stage[data-guide=fire] .dock-btn[data-primary="1"]{box-shadow:0 0 0 2px #e3b23cb3}#drawer{pointer-events:auto;z-index:5;background:#120e0cf0;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px 10px;display:flex}body[data-phase=shot] #drawer,body[data-phase=replay] #drawer{opacity:0;pointer-events:none;min-height:0;max-height:0;padding-top:0;padding-bottom:0;overflow:hidden}#palette,#dock,#selected-tools,#power{flex-wrap:wrap;align-items:center;gap:6px;max-width:none;height:auto;display:flex;position:static}#selected-tools:empty{display:none}@media (width>=820px){body[data-orient=land] #topbar{grid-template-columns:max-content max-content 1fr max-content max-content;grid-template-areas:"title commissions order cost settings""goal goal goal goal goal";align-items:center;gap:0 6px;min-height:0;padding:1px 8px;display:grid}body[data-orient=land] #title{grid-area:title}body[data-orient=land] #order{grid-area:order}body[data-orient=land] #cost{grid-area:cost}body[data-orient=land] #btn-settings{grid-area:settings}body[data-orient=land] #job{display:contents}body[data-orient=land] #commissions{flex-wrap:nowrap;flex-shrink:0;grid-area:commissions}body[data-orient=land] #goal{-webkit-line-clamp:unset;-webkit-box-orient:unset;white-space:nowrap;grid-area:goal;min-width:0;max-width:none;max-height:none;padding:0 8px;font-size:12px;line-height:1.2;display:block;overflow:visible}body[data-orient=land] #drawer{flex-wrap:nowrap;gap:4px;min-width:0;padding:6px 8px}body[data-orient=land] #palette,body[data-orient=land] #selected-tools,body[data-orient=land] #power,body[data-orient=land] #dock{flex-wrap:nowrap;flex-shrink:0;gap:4px}body[data-orient=land] .pal-btn{white-space:nowrap;flex-shrink:0;padding:0 4px}body[data-orient=land] #palette{scrollbar-width:thin;flex-shrink:1;min-width:0;overflow-x:auto}}body[data-orient=port] #title{letter-spacing:.04em;font-size:12px}body[data-orient=port] #topbar{gap:4px}body[data-orient=port] #goal{max-width:min(320px,92vw);font-size:11px}#turn{display:none}#cta{color:#fff6e4;letter-spacing:.08em;text-shadow:0 2px #5a2a10,0 0 24px #ffb43cb3;pointer-events:none;background:linear-gradient(#0000 30%,#0c080e26 54%,#0c080ed1 100%);justify-content:center;align-items:flex-end;padding-bottom:88px;font-size:42px;font-weight:800;display:flex;position:fixed;inset:0}#cta[hidden]{display:none}@media (prefers-reduced-motion:reduce){#stage[data-guide=route] .order-node,#stage[data-guide=pick] #palette,#stage[data-guide=place] #palette,#stage[data-guide=tweak] #dock,#stage[data-guide=fire] .dock-btn[data-primary="1"]{box-shadow:0 0 0 2px var(--brass)}}
