:root{color-scheme:light;font-family:PingFang SC,Microsoft YaHei,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#263241;background:#efe7d7;--ink: #263241;--muted: #687386;--paper: #fff8e8;--line: #d6bc8d;--floor: #f2d7a5;--green: #16885c;--blue: #3478f6;--red: #d64c3c;--gold: #d79418;--shadow: rgba(78, 58, 34, .2)}*{box-sizing:border-box}html,body{height:100%;overflow:hidden}body{margin:0;min-width:320px}button{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid rgba(52,120,246,.36);outline-offset:2px}.launch-shell,.game-shell{height:100svh;display:grid;place-items:center;overflow:hidden;background:linear-gradient(#ffffff73,#ffffff73),repeating-linear-gradient(90deg,#ddcfb6 0 1px,transparent 1px 34px),repeating-linear-gradient(0deg,#ddcfb6 0 1px,transparent 1px 34px),#efe7d7}.launch-card,.game-screen{width:min(100%,430px);height:min(100svh,900px);overflow:hidden;background:linear-gradient(180deg,#fffaf0,#f5e6c9);box-shadow:0 18px 44px var(--shadow)}.launch-card{display:grid;align-content:start;gap:14px;padding:26px;overflow-y:auto}.launch-card h1{margin:0;font-size:44px;line-height:1.02;font-weight:950;letter-spacing:0}.launch-copy{margin:0;color:var(--muted);font-size:16px;line-height:1.65;font-weight:750}.home-challenge{display:grid;gap:10px;padding:18px;border:2px solid rgba(138,96,47,.28);border-radius:20px;background:#ffffffe6;box-shadow:0 5px #7e4a1c1f}.home-challenge>strong{font-size:25px;line-height:1.1;font-weight:950}.home-challenge>p,.home-note{margin:0;color:var(--muted);font-size:13px;line-height:1.5;font-weight:800}.home-stage-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.home-stage-stats span{min-width:0;padding:8px 5px;border-radius:10px;background:#f4e6cb;color:#60441f;font-size:10px;font-weight:900;text-align:center}.home-challenge>button{min-height:50px;border:0;border-radius:14px;background:var(--ink);color:#fff;font-weight:950}.home-note{text-align:center}.stage-list{display:grid;gap:10px}.stage-card{display:grid;grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:10px;padding:12px;border:2px solid rgba(138,96,47,.24);border-radius:14px;background:#fff}.stage-card>div{min-width:0}.stage-card strong,.stage-card p,.stage-card small{display:block}.stage-card strong{margin-top:2px;font-size:17px;font-weight:950}.stage-card p{margin:4px 0;color:var(--muted);font-size:12px;line-height:1.35;font-weight:750}.stage-card small{color:#936325;font-size:10px;font-weight:850}.stage-card button{min-height:44px;border:0;border-radius:12px;background:var(--ink);color:#fff;font-weight:950}.stage-card.is-locked{opacity:.54}.stage-card button:disabled{background:#c7c0b4}.launch-rules{display:grid;gap:8px}.launch-rules span{padding:10px 12px;border:2px solid rgba(138,96,47,.24);border-radius:14px;background:#fff;font-weight:900}.launch-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.launch-actions button,.fund-pool button,.pool-head button,.order-ticket button{border:0;border-radius:13px;font-weight:950}.launch-actions button{min-height:48px;background:var(--ink);color:#fff}.launch-actions button+button{background:#efe4d0;color:#60441f}.game-screen{position:relative;display:grid;grid-template-rows:74px auto minmax(0,1fr);gap:8px;padding:10px}.fund-pool,.order-pool,.employee-pool{border:2px solid rgba(138,96,47,.28);border-radius:18px;background:#ffffffd1;box-shadow:0 3px #7e4a1c24}.fund-pool{display:grid;grid-template-columns:minmax(0,1fr) 92px;grid-template-areas:"main action" "side action";column-gap:8px;row-gap:4px;align-items:center;padding:8px}.fund-pool.is-cash-warning{border-color:#d79418b8;background:linear-gradient(180deg,#fff9e0f5,#ffffffe0);box-shadow:0 3px #965f1533,0 0 0 3px #d794181f}.fund-pool.is-cash-danger{border-color:#d64c3cb3;background:linear-gradient(180deg,#fff5eef5,#ffffffe0);box-shadow:0 3px #b5362b38,0 0 0 3px #d64c3c1a}.fund-pool.is-cash-danger{animation:cash-warning-pulse 1.1s ease-in-out infinite}.fund-main{grid-area:main;min-width:0}.fund-label{display:flex;align-items:center;justify-content:space-between;gap:8px}.fund-side{grid-area:side;min-width:0;display:flex;flex-wrap:wrap;gap:3px 8px;align-items:baseline}.mini-label,.fund-main span,.fund-side span{color:#936325;font-size:11px;font-weight:950}.fund-main span{display:flex;align-items:center;gap:5px}.cash-beacon{width:8px;height:8px;display:none;flex:0 0 auto;border-radius:50%}.is-cash-warning .cash-beacon,.is-cash-danger .cash-beacon{display:inline-block}.is-cash-warning .cash-beacon{background:var(--gold);box-shadow:0 0 0 4px #d7941829,0 0 12px #d794189e}.is-cash-danger .cash-beacon{background:var(--red);box-shadow:0 0 0 4px #d64c3c29,0 0 12px #d64c3cbf}.is-cash-danger .cash-beacon{animation:cash-beacon-blink .82s ease-in-out infinite}.fund-main strong{display:block;overflow:hidden;font-size:26px;line-height:1;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.is-cash-danger .fund-main strong{color:var(--red)}.is-cash-warning .fund-main strong{color:#a86100}.fund-side em{color:var(--muted);font-size:12px;font-style:normal;font-weight:850}.cash-alert{font-size:11px;font-weight:950;line-height:1}.is-cash-warning .cash-alert{color:#a86100}.is-cash-danger .cash-alert{color:var(--red)}.fund-pool>.work-button{grid-area:action;min-height:44px;background:var(--ink);color:#fff}.game-home-button{min-height:22px;padding:0 8px;border-radius:999px!important;background:#efe4d0;color:#60441f;font-size:10px;font-weight:950}@keyframes cash-warning-pulse{0%,to{box-shadow:0 3px #b5362b38,0 0 0 3px #d64c3c1a}50%{box-shadow:0 3px #b5362b38,0 0 0 6px #d64c3c2e}}@keyframes cash-beacon-blink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.78)}}@keyframes action-glow{0%,to{box-shadow:0 5px 14px #3d2b182e,inset 0 0 0 1px #60441f1f}50%{box-shadow:0 6px 16px #3d2b1833,0 0 0 3px #ffd66633,inset 0 0 0 1px #60441f1a}}@keyframes action-twinkle{0%,52%,to{opacity:0;transform:scale(.72) rotate(0)}64%{opacity:1;transform:scale(1.08) rotate(16deg)}76%{opacity:.38;transform:scale(.9) rotate(22deg)}}@keyframes action-sheen{0%,48%,to{opacity:0;transform:translate(-42%) rotate(.001deg)}60%{opacity:.42}78%{opacity:0;transform:translate(42%) rotate(.001deg)}}@keyframes tutorial-target-pulse{0%,to{box-shadow:0 0 0 3px #ffb23f61,0 0 18px #ffb23f73;transform:translateY(0)}50%{box-shadow:0 0 0 6px #ffb23f3d,0 0 26px #ffb23fb8;transform:translateY(-2px)}}.is-tutorial-target{position:relative;z-index:4;outline:3px solid #ffb23f;outline-offset:1px;animation:tutorial-target-pulse 1.05s ease-in-out infinite}.is-tutorial-dimmed{opacity:.38;filter:saturate(.45)}.order-pool{min-height:204px;display:grid;grid-template-rows:auto auto;align-content:start;padding:8px}.pool-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.pool-head>div:first-child{min-width:0}.pool-head h2{margin:0;overflow:hidden;font-size:14px;line-height:1.1;font-weight:950;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.pool-head button{min-height:31px;padding:0 8px;background:#efe4d0;color:#60441f;font-size:11px}.pool-head button:disabled{opacity:.48}.order-row{min-height:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto;align-items:stretch;gap:6px;overflow:visible;padding:1px}.order-empty{grid-column:1 / -1;min-height:0;display:grid;place-items:center;align-content:center;gap:8px;padding:18px;border:2px dashed #d6bc8d;border-radius:13px;background:#fff8d9c2;color:var(--muted);text-align:center}.order-empty strong{color:var(--ink);font-size:20px;font-weight:950}.order-empty span{font-size:12px;font-weight:850}.order-ticket{min-width:0;min-height:0;display:grid;grid-template-rows:auto auto;align-content:start;gap:6px;align-items:start;padding:6px;border:2px solid #dcc8a8;border-left:5px solid #c7d0dc;border-radius:13px;background:#fff;overflow:visible}.order-ticket.can-accept{border-left-color:var(--green)}.order-ticket.is-accepted{border-left-color:var(--gold);background:#fff8d9}.ticket-copy{min-width:0;min-height:0;display:grid;grid-template-rows:auto auto;gap:5px;align-content:start;overflow:visible}.ticket-top{min-width:0}.ticket-top span{display:block;overflow:hidden;font-size:11px;line-height:1.15;font-weight:950}.ticket-need{min-width:0;display:grid;align-content:start;gap:2px;overflow:visible}.need-chip{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:stretch;max-width:100%;gap:2px;padding:2px 4px;border-radius:7px;background:#eef4fa;color:#3a4655;font-size:8.5px;line-height:1.05;font-weight:900;text-align:left;white-space:nowrap}.need-chip>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.need-chip em{min-width:24px;padding:1px 2px;border-radius:999px;background:#fff;color:var(--red);font-style:normal;text-align:center}.need-chip.is-ok em{color:var(--green)}.ticket-action{min-width:0;min-height:38px;width:100%;height:auto;align-self:start;display:grid;place-items:center;align-content:center;gap:2px;padding:4px 3px;background:var(--green);color:#fff;line-height:1}.ticket-action strong,.ticket-action span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket-action strong{font-size:10px;font-weight:950}.ticket-action span{font-size:11px;font-weight:950}.ticket-action:disabled{background:#d5dde6;color:#718096}.order-ticket.is-accepted .ticket-action:disabled{background:var(--gold);color:#fff}.employee-pool{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;padding:9px}.employee-pool-actions{min-width:0;min-height:29px;display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end;align-items:center;margin:5px 2px 0}.employee-pool-actions button{position:relative;min-width:0;min-height:29px;max-width:116px;overflow:hidden;padding:0 12px;border:0;border-radius:999px;background:#efe4d0f0;box-shadow:0 5px 14px #3d2b182e,inset 0 0 0 1px #60441f1f;color:#60441f;font-size:10px;font-weight:950;line-height:1;text-overflow:ellipsis;white-space:nowrap}.employee-pool-actions .dismiss-button{background:#ffe1dcf5;color:#a83224}.employee-pool-actions .shrink-button{background:#e3f3ecf5;color:#14714d}.employee-pool-actions .expand-button{background:#fff2c8f7;color:#815000}.employee-pool-actions button:disabled{opacity:.52;box-shadow:0 3px 8px #3d2b181a,inset 0 0 0 1px #60441f1a}.employee-pool-actions button:not(:disabled){animation:action-glow 2.1s ease-in-out infinite}.employee-pool-actions button:not(:disabled):before{content:"";position:absolute;top:6px;right:9px;width:4px;height:4px;border-radius:50%;background:#fffffff2;box-shadow:-8px 8px 0 -1px #ffffffb3,-14px -1px 0 -1.5px #ffffff9e;opacity:0;animation:action-twinkle 1.8s ease-in-out infinite}.employee-pool-actions button:not(:disabled):after{content:"";position:absolute;inset:-70% -100%;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.52) 48%,transparent 58%);opacity:0;transform:translate(-42%);animation:action-sheen 2.6s ease-in-out infinite;pointer-events:none}.desk-grid{min-height:0;display:grid;grid-template-columns:repeat(var(--desk-columns, 4),minmax(0,1fr));grid-auto-rows:minmax(44px,1fr);gap:7px;overflow:auto;overscroll-behavior:contain;padding:8px;border:2px solid rgba(166,111,47,.3);border-radius:16px;background:linear-gradient(90deg,rgba(255,255,255,.46),transparent 34%),repeating-linear-gradient(0deg,rgba(118,80,35,.08) 0 2px,transparent 2px 74px),var(--floor)}.desk-card{min-width:0;min-height:44px;display:grid;place-items:center;align-content:center;gap:1px;padding:4px 3px;border:2px solid color-mix(in srgb,var(--accent, #c9b28a),#1f2937 12%);border-radius:13px;background:#fff6df;box-shadow:0 3px color-mix(in srgb,var(--accent, #c9b28a),#000000 12%);text-align:center}button.desk-card{cursor:pointer}.desk-card.is-selected{transform:translateY(-2px);box-shadow:0 0 0 4px #3478f633,0 5px color-mix(in srgb,var(--accent),#000000 18%)}.desk-card.is-assigned{opacity:.56;filter:grayscale(.3)}.desk-card.is-empty{border-style:dashed;background:#ffffff75;color:#a0855c;box-shadow:none}.merge-ghost{position:fixed;z-index:900;display:grid;place-items:center;align-content:center;gap:1px;padding:4px 3px;pointer-events:none;border:2px solid color-mix(in srgb,var(--accent, #c9b28a),#1f2937 12%);border-radius:13px;background:#fff6df;box-shadow:0 10px 22px #33251433;text-align:center;animation:merge-fly .56s cubic-bezier(.18,.84,.2,1) forwards}.work-ghost{position:fixed;z-index:950;pointer-events:none;text-align:center;animation:work-fly .62s cubic-bezier(.2,.82,.18,1) forwards}.work-ghost.is-worker{display:grid;place-items:center;align-content:center;gap:1px;padding:4px 3px;border:2px solid color-mix(in srgb,var(--accent, #c9b28a),#1f2937 12%);border-radius:13px;background:#fff6df;box-shadow:0 10px 22px #33251433}.work-ghost.is-order{display:grid;align-content:center;justify-items:center;gap:3px;padding:6px;border:2px solid #d6bc8d;border-left:5px solid var(--gold);border-radius:13px;background:#fff8d9;color:var(--ink);box-shadow:0 12px 26px #33251438;animation-name:work-cash-fly}.worker-token{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;font-size:10px;font-weight:950}.merge-ghost strong,.merge-ghost em,.work-ghost strong,.work-ghost em{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.merge-ghost strong{font-size:10px;font-weight:950}.work-ghost.is-order strong{font-size:11px;font-weight:950}.merge-ghost em,.work-ghost em{color:var(--muted);font-size:9px;font-style:normal;font-weight:850}.work-ghost.is-order em{color:var(--green);font-size:12px;font-weight:950}@keyframes merge-fly{0%{opacity:.96;transform:translateZ(0) scale(1)}72%{opacity:.9;transform:translate3d(calc(var(--merge-x) * .88),calc(var(--merge-y) * .88),0) scale(.62)}to{opacity:0;transform:translate3d(var(--merge-x),var(--merge-y),0) scale(.2)}}@keyframes work-fly{0%{opacity:.98;transform:translateZ(0) scale(1)}78%{opacity:.92;transform:translate3d(calc(var(--flight-x) * .92),calc(var(--flight-y) * .92),0) scale(.48)}to{opacity:0;transform:translate3d(var(--flight-x),var(--flight-y),0) scale(.18)}}@keyframes work-cash-fly{0%{opacity:0;transform:translateZ(0) scale(.92)}16%{opacity:1;transform:translateZ(0) scale(1.04)}82%{opacity:.9;transform:translate3d(calc(var(--flight-x) * .9),calc(var(--flight-y) * .9),0) scale(.42)}to{opacity:0;transform:translate3d(var(--flight-x),var(--flight-y),0) scale(.12)}}.desk-card strong,.desk-card em,.desk-card>span:not(.worker-token){max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desk-card strong{font-size:10px;font-weight:950}.desk-card em{color:var(--muted);font-size:9px;font-style:normal;font-weight:850}.rank-progress{width:min(52px,88%);height:5px;overflow:hidden;border-radius:999px;background:#2632411f;box-shadow:inset 0 0 0 1px #26324114}.rank-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--accent, #4aa8ff),#ffffff 12%),var(--accent, #4aa8ff))}.rank-progress.is-max i{background:linear-gradient(90deg,#ffb23f,#ffe27a)}.message-line{min-height:18px;margin:3px 2px 0;overflow:hidden;color:var(--muted);font-size:12px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.is-game-over{box-shadow:inset 0 0 0 3px #d84a3a40,0 18px 44px var(--shadow)}.work-confirm-layer{position:absolute;inset:0;z-index:990;display:grid;place-items:center;padding:22px;background:#26324161;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.work-confirm-card{width:min(100%,340px);display:grid;gap:12px;padding:18px;border:2px solid rgba(97,59,32,.2);border-radius:18px;background:#fffaf0;box-shadow:0 18px 38px #26324142}.work-confirm-card h2,.work-confirm-card p{margin:0}.stage-intro-card{text-align:center}.stage-intro-card h2{font-size:26px}.stage-intro-goal{display:grid;gap:5px;padding:13px;border-radius:14px;background:#f4e6cb;text-align:left}.stage-intro-goal strong{color:#936325;font-size:11px;font-weight:950}.stage-intro-goal span{color:var(--ink);font-size:14px;line-height:1.4;font-weight:950}.stage-intro-goal em{color:var(--muted);font-size:12px;font-style:normal;line-height:1.4;font-weight:850}.tutorial-layer{z-index:995}.tutorial-card{text-align:left}.tutorial-detail{padding:11px 12px;border-radius:13px;background:#f4e6cb;color:#60441f;font-size:12px;line-height:1.5;font-weight:850}.modal-home-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:9px}.modal-home-actions button{min-height:46px;border:0;border-radius:13px;background:var(--ink);color:#fff;font-weight:950}.modal-home-actions button.secondary{background:#efe4d0;color:#60441f}.work-confirm-card h2{color:var(--ink);font-size:22px;line-height:1.12;font-weight:950;letter-spacing:0}.work-confirm-card p{color:var(--muted);font-size:13px;line-height:1.5;font-weight:850}.work-confirm-cost,.dismiss-advice,.ad-aid{display:grid;gap:4px;padding:11px 12px;border-radius:13px}.work-confirm-cost{background:#f4e6cb}.work-confirm-cost span,.dismiss-advice strong,.ad-aid strong{color:#936325;font-size:11px;font-weight:950}.work-confirm-cost strong{color:var(--ink);font-size:25px;line-height:1;font-weight:950}.work-confirm-cost em,.dismiss-advice span,.ad-aid span{color:var(--muted);font-size:12px;font-style:normal;line-height:1.45;font-weight:850}.dismiss-advice{border:2px solid rgba(216,76,60,.18);background:#ffe9e4}.dismiss-advice strong{color:#a83224}.dismiss-advice button{min-height:34px;margin-top:3px;border:0;border-radius:11px;background:var(--red);color:#fff;font-size:12px;font-weight:950}.dismiss-advice.is-muted{border-color:#8a602f2e;background:#f7edda}.dismiss-advice.is-muted strong{color:#936325}.ad-aid{border:2px solid rgba(215,148,24,.22);background:#fff3c9}.ad-aid>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:3px}.ad-aid button{min-height:34px;border:0;border-radius:11px;background:#d79418;color:#fff;font-size:12px;font-weight:950}.ad-aid button:disabled{background:#d9cfba;color:#7f735f}.work-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.work-confirm-actions.is-three{grid-template-columns:.72fr 1fr 1fr}.work-confirm-actions button{min-height:42px;border:0;border-radius:13px;font-weight:950}.work-confirm-actions .secondary{background:#efe4d0;color:#60441f}.work-confirm-actions .danger{background:var(--ink);color:#fff}.game-over-layer{position:absolute;inset:0;z-index:1000;display:grid;place-items:center;padding:22px;background:#26324173;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.game-over-card{width:min(100%,330px);display:grid;gap:14px;padding:22px;border:2px solid rgba(97,59,32,.2);border-radius:18px;background:#fffaf0;box-shadow:0 18px 38px #26324142;text-align:center}.game-over-card h2,.game-over-card p{margin:0}.game-over-card h2{color:var(--red);font-size:34px;line-height:1;font-weight:950;letter-spacing:0}.stage-clear-card h2{color:var(--green)}.game-over-card p{color:var(--ink);font-size:15px;line-height:1.55;font-weight:850}.game-over-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.game-over-card dl div{min-width:0;padding:10px 8px;border-radius:12px;background:#f4e6cb}.game-over-card dt,.game-over-card dd{margin:0}.game-over-card dt{color:#936325;font-size:11px;font-weight:950}.game-over-card dd{color:var(--ink);font-size:17px;font-weight:950}.game-over-card button{min-height:46px;border:0;border-radius:13px;background:var(--ink);color:#fff;font-weight:950}.stage-result-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stage-result-actions button.secondary{background:#efe4d0;color:#60441f}@media(min-width:700px){.launch-card,.game-screen{border:2px solid rgba(138,96,47,.28);border-radius:28px}}@media(max-width:380px){.game-screen{gap:7px;padding:8px;grid-template-rows:74px auto minmax(0,1fr)}.fund-pool{grid-template-columns:minmax(0,1fr) 86px}.fund-main strong{font-size:22px}.order-ticket{padding:5px}.ticket-top span,.ticket-action span{font-size:11px}.ticket-action{min-height:36px;height:auto}.need-chip{font-size:8px;padding:2px 3px}.desk-grid{gap:6px;padding:7px}.employee-pool-actions{min-height:27px;gap:4px;margin-top:4px}.employee-pool-actions button{min-height:27px;max-width:106px;padding:0 10px;font-size:9px}}@media(prefers-reduced-motion:reduce){.is-tutorial-target,.employee-pool-actions button:not(:disabled),.employee-pool-actions button:not(:disabled):before,.employee-pool-actions button:not(:disabled):after{animation:none}}
