.v3-integrated{min-width:1180px}.v3-integrated .old-demo{display:inline-flex;align-items:center;text-decoration:none}.v3-integrated .day-dashboard{grid-template-columns:80px minmax(220px,1.4fr) repeat(2,minmax(105px,.65fr)) minmax(190px,1fr) repeat(2,minmax(145px,.85fr))}.v3-integrated .demo-layout{grid-template-columns:260px minmax(680px,1fr) 330px;max-width:1900px}.v3-integrated .restaurant-stage.v3-canvas-stage{padding:0;min-height:520px;background:#122d3c;overflow:hidden;border:4px solid #513732;box-shadow:inset 0 0 0 3px #c18a58}.canvas-wrap{width:100%;height:100%;min-height:520px;overflow:auto;display:flex;align-items:flex-start;justify-content:center;background:#0b1c26}.canvas-wrap canvas{display:block;flex:none;image-rendering:pixelated;image-rendering:crisp-edges}.canvas-wrap.scale-2 canvas{width:1280px;height:832px}.canvas-wrap.scale-3 canvas{width:1920px;height:1248px}.stage-scale{display:flex!important;align-items:center;gap:5px}.stage-scale button{border:1px solid #784631;background:#fff4df;color:#5d3829;border-radius:7px;padding:5px 9px;font-weight:900}.stage-scale button.active{background:#ef8e48;color:#fff}.roster-v3{display:grid;gap:6px}.roster-v3 .staff-card{display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:8px;padding:7px 8px;border:1px solid #e6ccb1;background:#fffaf0;border-radius:9px}.roster-v3 .staff-card i{width:22px;height:22px;border-radius:7px;background:var(--c);box-shadow:inset 0 0 0 2px #ffffff88}.roster-v3 .staff-card b{font-size:11px;color:#553b2f}.roster-v3 .staff-card small{display:block;font-size:9px;color:#947a69}.roster-v3 .staff-card em{font-style:normal;font-size:10px;color:#368467}.v3-integrated .shift-card dd{font-size:13px}.v3-control{min-height:525px}.panel-view{display:none}.panel-view.active{display:block}.job-list-v3{display:grid;gap:7px;max-height:360px;overflow:auto}.job-list-v3 .job{padding:9px;border-radius:9px;border:1px solid #edd0b4;border-left:5px solid #efa953;background:#fffaf1;color:#553b2f}.job-list-v3 .job.claimed{border-left-color:#4dbb86}.job-list-v3 .job.overdue{border-left-color:#e65762;background:#fff0ef}.job-list-v3 .job b{display:flex;justify-content:space-between;font-size:11px}.job-list-v3 .job small{display:block;margin-top:3px;color:#967d6c;font-size:9px}.job-list-v3 .empty,.empty-state{padding:20px 5px;text-align:center;color:#9b8272;font-size:11px}.control-note{font-size:11px;line-height:1.5;color:#856e61}.assignment{display:grid;gap:7px;margin:16px 0 8px;font-size:11px;font-weight:900;color:#765847}.assignment select{padding:10px;border:1px solid #d7b895;border-radius:8px;background:#fffaf0;color:#553b2f;font-weight:800}.staff-gacha-banner{display:grid;gap:8px;padding:13px;background:linear-gradient(145deg,#4d285c,#7c4263);border-radius:12px;color:#fff}.staff-gacha-banner small{color:#f3dbe6}.staff-gacha-banner button,.panel-action{border:0;border-radius:8px;padding:10px;background:#f2a04e;color:#fff;font-weight:900}.menu-grey-list{display:grid;gap:8px}.menu-grey-list div{padding:11px;border-radius:9px;background:#fff8eb;border:1px solid #ead0b2;color:#614332;font-size:11px;font-weight:800}.phase-screen{position:absolute;inset:0;z-index:2;padding:30px;background:linear-gradient(155deg,#e8f6f2 0,#f8ead5 100%);overflow:auto}.phase-screen-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:16px;max-width:850px;margin:0 auto}.phase-screen-card{min-height:180px;padding:18px;border:2px solid #a97551;border-radius:16px;background:#fffaf0;box-shadow:0 8px 0 #c99a6f;color:#594034}.phase-screen-card .phase-icon{font-size:38px}.phase-screen-card h3{margin:9px 0 5px}.phase-screen-card p{font-size:11px;line-height:1.45;color:#8a7161}.phase-screen-card button{border:0;border-radius:8px;padding:9px 13px;background:#ea9150;color:#fff;font-weight:900}.v3-integrated .restaurant-stage{position:relative}.v3-integrated .quick-demo{z-index:7}.debug-drawer{position:fixed;right:16px;bottom:92px;width:260px;max-height:370px;overflow:auto;z-index:20;background:#111827eF;border:1px solid #76d7ab;color:#c7f5d8;border-radius:10px;padding:10px;box-shadow:0 14px 35px #0007}.debug-drawer pre{font:10px/1.5 ui-monospace,Consolas,monospace;white-space:pre-wrap}.v3-integrated .toast{z-index:30}.v3-integrated .control-tabs button{font-size:10px}.v3-integrated #loop-status{font-size:9px;font-weight:900;color:#24865d}.v3-integrated .objective-list div{font-size:10px;padding:6px 8px}.v3-integrated .phase-tabs button.active{transform:translateY(-2px)}
@media(max-width:1350px){.v3-integrated .demo-layout{grid-template-columns:230px minmax(640px,1fr) 285px}.v3-integrated .day-dashboard{grid-template-columns:70px 1.3fr repeat(5,1fr)}}
.roster-v3 .staff-avatar{width:26px;height:32px;background-repeat:no-repeat;background-size:72px 32px;background-position:left bottom;image-rendering:pixelated}.roster-v3 .staff-card.has-art i{display:none}

.phase-screen-card.is-selected{border-color:#268c73;background:#effdf4;box-shadow:0 8px 0 #82b9a0}.phase-screen-card button:disabled{background:#b7b2a8;cursor:default}.phase-choice-detail{max-width:850px;margin:24px auto 0;padding:16px 18px;border:2px solid #ad805e;border-radius:14px;background:#fffaf0;color:#5a4033;box-shadow:0 5px 0 #c9a589}.phase-choice-detail p{margin:0 0 12px;color:#5a4033;font-size:13px;line-height:1.55}.phase-choice-detail label{display:inline-flex;align-items:center;gap:9px;margin:0 9px 9px 0;font-weight:800}.phase-choice-detail select{padding:9px;border:1px solid #b98d69;border-radius:7px;background:#fff;color:#523b31}.phase-choice-detail button{margin:0 9px 9px 0;padding:10px 13px;border:0;border-radius:8px;background:#e9904c;color:#fff;font-weight:900;cursor:pointer}.phase-choice-detail button:disabled{background:#b7b2a8;cursor:default}

.staff-gacha-banner{position:relative;overflow:hidden;padding:14px!important;background:linear-gradient(155deg,#3b2458 0%,#783d70 52%,#b75f73 100%)!important;border:2px solid #f4bd69;box-shadow:inset 0 0 0 2px #ffffff18,0 7px 0 #44243c}.staff-gacha-banner:before,.staff-gacha-banner:after{content:"";position:absolute;border-radius:50%;background:#ffffff12}.staff-gacha-banner:before{width:120px;height:120px;right:-45px;top:-45px}.staff-gacha-banner:after{width:80px;height:80px;left:-35px;bottom:-30px}.gacha-head{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-start}.gacha-head span{display:block;color:#ffd98e;font:900 8px/1.2 ui-monospace,Consolas,monospace;letter-spacing:1.5px}.gacha-head strong{display:block;margin-top:3px;font:900 18px/1.05 system-ui,sans-serif;text-shadow:0 2px 0 #351a40}.gacha-steam{font-style:normal;font-size:32px;color:#fff4cf;animation:gachaSteam 1.6s ease-in-out infinite}.gacha-vat{position:relative;z-index:2;width:118px;height:78px;margin:6px auto 3px;border:4px solid #39213f;border-radius:52% 52% 30% 30%;background:linear-gradient(#ffcf72,#e36e55 62%,#7f345c);box-shadow:inset 0 0 0 4px #ffd9a5,0 5px 0 #2f1b36}.gacha-vat:before,.gacha-vat:after{content:"";position:absolute;top:18px;width:23px;height:35px;border:4px solid #39213f;background:#e49759}.gacha-vat:before{left:-24px;border-radius:10px 0 0 10px}.gacha-vat:after{right:-24px;border-radius:0 10px 10px 0}.vat-glass{position:absolute;left:31px;top:14px;width:48px;height:42px;border:3px solid #39213f;border-radius:50%;background:radial-gradient(circle at 38% 32%,#fff 0 7%,#8be6ee 10% 28%,#2e7898 31% 62%,#24405d 65%);box-shadow:inset 0 0 0 3px #d9ffff}.vat-glass b{display:grid;place-items:center;height:100%;font-size:21px;color:#fff;text-shadow:0 2px #39213f}.gacha-vat .dial{position:absolute;right:7px;top:3px;width:18px;height:18px;border:3px solid #39213f;border-radius:50%;background:#fff3c7}.gacha-vat .dial:after{content:"";position:absolute;width:2px;height:7px;left:6px;top:2px;background:#e45657;transform:rotate(35deg);transform-origin:bottom}.gacha-vat em{position:absolute;left:33px;bottom:-1px;font:900 7px ui-monospace;color:#ffe8aa;letter-spacing:1px}.gacha-machine.is-spinning .gacha-vat{animation:gachaShake .12s linear infinite}.gacha-machine.is-spinning .vat-glass b{animation:gachaRoll .35s steps(2,end) infinite}.gacha-machine.is-spinning .dial:after{animation:gachaDial .22s linear infinite}.gacha-rates{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.gacha-rates span{padding:4px 1px;border-radius:6px;text-align:center;font:900 8px ui-monospace;color:#281b32}.rank-a{background:#cbd5e1}.rank-s{background:#7dd3fc}.rank-sr{background:#c4a7ff}.rank-ssr{background:linear-gradient(90deg,#ffd36a,#ff87cf,#92eaff)}.gacha-pity{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}.gacha-pity span{padding:5px 7px;border-radius:7px;background:#23172c88;color:#fce7d1;font:800 8px ui-monospace}.gacha-pity b{float:right;color:#fff}.gacha-actions{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:2px}.staff-gacha-banner .gacha-actions button{display:grid;gap:1px;padding:8px 5px!important;border:2px solid #ffe3a6!important;background:linear-gradient(#ffb75e,#ef784e)!important;box-shadow:0 3px 0 #933c4f;font-size:10px}.staff-gacha-banner .gacha-actions button:last-child{background:linear-gradient(#ff8dcc,#a85fde)!important}.gacha-actions button small{font-size:7px;color:#54253a}.gacha-demo-note{position:relative;z-index:2;text-align:center;font-size:8px!important;color:#ffe7bd!important}.gacha-collection{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding:8px 9px;border:1px dashed #d8ad83;border-radius:9px;background:#fff8ea;color:#72503d;font-size:9px}.gacha-collection b{font-size:12px;color:#ae5271}.gacha-modal[hidden]{display:none!important}.gacha-modal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:30px;background:#171021d9;backdrop-filter:blur(4px)}.gacha-reveal{width:min(900px,92vw);max-height:88vh;overflow:auto;padding:20px;border:3px solid #f5c66c;border-radius:20px;background:radial-gradient(circle at 50% 0,#81447a 0,#392849 42%,#20192e 100%);box-shadow:0 20px 80px #000b,inset 0 0 0 3px #ffffff14;color:#fff}.gacha-reveal-head{display:flex;justify-content:space-between;align-items:center}.gacha-reveal-head span{color:#ffd779;font:900 10px ui-monospace;letter-spacing:2px}.gacha-reveal-head h2{margin:4px 0 12px;font-size:25px}.gacha-reveal-head button{align-self:flex-start;width:36px;height:36px;border:2px solid #f5d7a0;border-radius:50%;background:#ffffff18;color:#fff;font-size:23px;cursor:pointer}.gacha-results{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:10px}.gacha-results.single{grid-template-columns:minmax(200px,280px);justify-content:center}.gacha-result-card{position:relative;min-height:190px;overflow:hidden;border:3px solid var(--rank-color);border-radius:15px;background:linear-gradient(160deg,var(--rank-bg),#251c34 76%);box-shadow:0 8px 0 #0e0a16,0 0 28px var(--rank-glow);animation:gachaCardIn .42s cubic-bezier(.2,1.5,.4,1) both;animation-delay:var(--delay)}.gacha-card-art{height:118px;background-position:center bottom;background-repeat:no-repeat;background-size:contain;image-rendering:pixelated;filter:drop-shadow(0 5px 4px #0008)}.gacha-card-fallback{height:118px;display:grid;place-items:center;font:900 46px system-ui;color:#fff8;text-shadow:0 4px #0004}.gacha-card-copy{padding:9px;background:#17121fcc}.gacha-card-copy b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gacha-card-copy small{display:block;margin-top:3px;color:#ddcadf;font-size:8px}.gacha-rank-badge{position:absolute;left:7px;top:7px;padding:4px 7px;border-radius:7px;background:var(--rank-color);color:#28192e;font:1000 10px ui-monospace;box-shadow:0 2px 0 #20142b}.gacha-new{position:absolute;right:-24px;top:10px;width:82px;padding:4px 0;transform:rotate(35deg);background:#ffe070;color:#713446;text-align:center;font:1000 8px ui-monospace}.gacha-duplicate{color:#ffd276!important}.gacha-again{display:block;margin:18px auto 0;padding:10px 22px;border:2px solid #ffe4a9;border-radius:10px;background:linear-gradient(#ffb75e,#ef784e);color:#fff;font-weight:1000;box-shadow:0 4px 0 #7c3850}.gacha-result-card.rank-A{--rank-color:#cbd5e1;--rank-bg:#64748b;--rank-glow:#cbd5e155}.gacha-result-card.rank-S{--rank-color:#7dd3fc;--rank-bg:#176b8c;--rank-glow:#56d8ff88}.gacha-result-card.rank-SR{--rank-color:#c4a7ff;--rank-bg:#7047a5;--rank-glow:#b596ff99}.gacha-result-card.rank-SSR{--rank-color:#ffd36a;--rank-bg:#b84d83;--rank-glow:#ffb4ecaa}.gacha-result-card.rank-SSR:after{content:"✦";position:absolute;right:9px;bottom:7px;color:#fff3a8;font-size:24px;animation:gachaSpark 1s ease-in-out infinite alternate}@keyframes gachaSteam{50%{transform:translateY(-5px) scale(1.1);opacity:.5}}@keyframes gachaShake{25%{transform:translateX(-3px) rotate(-1deg)}75%{transform:translateX(3px) rotate(1deg)}}@keyframes gachaRoll{50%{filter:hue-rotate(150deg)}}@keyframes gachaDial{to{transform:rotate(360deg)}}@keyframes gachaCardIn{from{opacity:0;transform:translateY(35px) scale(.75) rotate(-3deg)}to{opacity:1;transform:none}}@keyframes gachaSpark{to{transform:scale(1.35) rotate(15deg);filter:drop-shadow(0 0 8px #fff)}}@media(max-width:1350px){.gacha-results{grid-template-columns:repeat(5,minmax(90px,1fr))}.gacha-result-card{min-height:170px}.gacha-card-art,.gacha-card-fallback{height:100px}}

.upgrade-level-cost{margin:3px 0 10px;padding:8px 10px;border:1px solid #efd09e;border-radius:9px;background:#fff8e7;color:#73513c;font-size:10px}.upgrade-level-cost b{color:#c56b35}.upgrade-list{display:grid;gap:8px}.upgrade-card{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;border:1px solid #dfc5a8;border-radius:11px;background:linear-gradient(135deg,#fffdf6,#f5ead7);box-shadow:0 3px 0 #d6b798}.upgrade-card>span{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#dceddf;font-size:18px}.upgrade-card b{display:block;color:#5a4033;font-size:11px}.upgrade-card small{display:block;margin-top:2px;color:#927564;font-size:8px}.upgrade-card button{border:0;border-radius:7px;padding:7px 8px;background:#4aa788;color:#fff;font:900 8px ui-monospace;box-shadow:0 2px 0 #246d5c}.upgrade-card.is-upgraded{border-color:#68b896;background:linear-gradient(135deg,#f0fff7,#dcefe2)}.upgrade-card.is-upgraded>span{background:#9fdbc1}.upgrade-card.is-upgraded button{background:#9baaa3;box-shadow:none}.upgrade-price-note{margin:10px 0 8px;color:#9b6d4e;font:800 8px/1.45 ui-monospace}.panel-action.secondary{width:100%;background:#6e7186!important}.decor-test{display:grid;gap:5px;margin-top:14px;padding-top:12px;border-top:1px dashed #d4b99c}.decor-test>b{color:#684a3a;font-size:11px}.decor-test>small{color:#9c8170;font-size:8px}.decor-test .panel-action{margin-top:3px}

/* Cohesive HI3 staff roster + tall gacha reveal */
.roster-v3 .staff-avatar{width:26px;height:32px;background-size:104px 312px;background-position:0 0;filter:drop-shadow(0 2px 1px #31203355)}
.assignment-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.assignment-grid .assignment{gap:4px;margin:0;font-size:9px}.assignment-grid .assignment select{min-width:0;padding:7px;font-size:9px}
.staff-codex{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:252px;margin-top:9px;padding-right:3px;overflow:auto}.staff-codex-card{position:relative;min-width:0;padding:0 0 6px;overflow:hidden;border:2px solid var(--rank-color);border-radius:9px;background:#251b35;color:#fff;text-align:left;box-shadow:0 3px 0 #130d1d;cursor:pointer}.staff-codex-card>span{display:block;height:63px;background-position:center 20%;background-repeat:no-repeat;background-size:cover}.staff-codex-card b,.staff-codex-card small{display:block;margin:4px 5px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-codex-card b{font-size:8px}.staff-codex-card small{margin-top:1px;color:#dacfe0;font-size:7px}.staff-codex-card em{position:absolute;left:4px;top:4px;padding:2px 4px;border-radius:4px;background:var(--rank-color);color:#24162c;font:1000 7px ui-monospace}.staff-codex-card.rank-A,.gacha-detail.rank-A{--rank-color:#cbd5e1}.staff-codex-card.rank-S,.gacha-detail.rank-S{--rank-color:#7dd3fc}.staff-codex-card.rank-SR,.gacha-detail.rank-SR{--rank-color:#c4a7ff}.staff-codex-card.rank-SSR,.gacha-detail.rank-SSR{--rank-color:#ffd36a}
.gacha-reveal{width:min(1500px,96vw)}.gacha-result-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px;align-items:stretch}.gacha-results{display:flex;gap:9px;overflow-x:auto;overflow-y:hidden;padding:16px 5px 20px;scroll-snap-type:x mandatory}.gacha-results.single{display:flex;justify-content:center}.gacha-result-card{flex:0 0 126px;min-height:346px;border-width:2px;border-radius:62px 62px 16px 16px;scroll-snap-align:center;background:radial-gradient(circle at 50% 12%,#ffffff66 0 2%,transparent 26%),linear-gradient(180deg,var(--rank-bg),#171321 80%);box-shadow:0 10px 0 #0d0914,0 0 30px var(--rank-glow),inset 0 0 24px #ffffff25;cursor:pointer;transition:transform .18s ease,filter .18s ease}.gacha-result-card:hover,.gacha-result-card:focus-visible{transform:translateY(-8px) scale(1.025);filter:brightness(1.12);outline:none}.gacha-beam{position:absolute;inset:-20% 24% 28%;transform:perspective(120px) rotateX(-12deg);background:linear-gradient(90deg,transparent,#fff8,transparent);filter:blur(5px);opacity:.55}.gacha-card-art{position:relative;height:218px;margin-top:10px;background-position:center 22%;background-size:cover;filter:drop-shadow(0 7px 5px #0008)}.gacha-card-copy{position:absolute;inset:auto 0 0;min-height:133px;padding:13px 9px 9px;background:linear-gradient(transparent,#140f1df2 18%)}.gacha-card-copy b{padding-top:9px;font-size:11px;text-align:center}.gacha-card-copy>small{font-size:7px;text-align:center}.gacha-rank-hero{display:block;margin:-1px 0 2px;color:var(--rank-color);font:1000 28px/.9 Georgia,serif;text-align:center;text-shadow:0 0 12px var(--rank-glow),0 2px #000}.gacha-skill-line{height:18px;overflow:hidden;color:#fff0c8!important;line-height:1.3}.gacha-new{z-index:5;right:18px;top:6px;width:auto;padding:4px 7px;transform:none;border-radius:7px;box-shadow:0 0 11px #ffd95f}.gacha-detail{display:grid;grid-template-rows:205px 1fr;min-height:346px;overflow:hidden;border:2px solid var(--rank-color);border-radius:18px;background:#16101f;box-shadow:0 0 28px var(--rank-color)}.gacha-detail[hidden]{display:none}.gacha-detail-art{background-position:center 18%;background-repeat:no-repeat;background-size:cover}.gacha-detail>div:last-child{padding:13px 15px;background:linear-gradient(#271b37,#140f1e)}.gacha-detail h3{margin:5px 0 2px;font-size:20px}.gacha-detail p{margin:3px 0 10px;color:#ddcfdf;font-size:9px;line-height:1.4}.gacha-detail b{color:#ffd994;font:900 8px ui-monospace;letter-spacing:1px}.gacha-detail-rank{display:inline-block;padding:3px 7px;border-radius:6px;background:var(--rank-color);color:#25172d;font:1000 11px ui-monospace}
@media(max-width:1350px){.gacha-result-layout{grid-template-columns:1fr 235px}.gacha-result-card{flex-basis:112px}.gacha-detail{min-width:0}.staff-codex{grid-template-columns:repeat(2,minmax(0,1fr))}}

.panel-view[data-panel-view="decor"]{max-height:570px;padding-right:3px;overflow-y:auto}.decor-shop-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:9px}.decor-shop-head span{display:block;color:#c76b49;font:900 8px ui-monospace;letter-spacing:1.5px}.decor-shop-head h2{margin:2px 0 0;color:#563b30;font-size:17px}.decor-shop-head>b{padding:5px 7px;border-radius:7px;background:#eee3d4;color:#7b6253;font:900 8px ui-monospace}.decor-shop{display:grid;gap:7px}.decor-shop-card{display:grid;grid-template-columns:55px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px;border:1px solid #e0c5a8;border-radius:11px;background:linear-gradient(135deg,#fffdf7,#f6ead9);box-shadow:0 3px 0 #d2b290}.decor-shop-card.is-placed{border-color:#54ae8b;background:linear-gradient(135deg,#effff6,#dff1e8);box-shadow:0 3px 0 #80b79e}.decor-shop-art{width:55px;height:55px;background-position:center;background-repeat:no-repeat;background-size:contain;image-rendering:pixelated;filter:drop-shadow(0 3px 2px #2f203144)}.decor-shop-card span{display:inline-block;padding:2px 5px;border-radius:5px;background:#d5f2ea;color:#23755d;font:900 7px ui-monospace}.decor-shop-card:nth-child(n+3) span{background:#ffe0dc;color:#bf4d54}.decor-shop-card b,.decor-shop-card small{display:block}.decor-shop-card b{margin-top:3px;color:#583d31;font-size:10px}.decor-shop-card small{margin-top:2px;color:#927667;font-size:7px;line-height:1.3}.decor-shop-card button{max-width:70px;border:0;border-radius:7px;padding:7px 6px;background:#d87b4a;color:#fff;font:900 7px/1.15 ui-monospace;box-shadow:0 2px 0 #8b4934}.decor-shop-card.is-placed button{background:#4aa786;box-shadow:0 2px 0 #2b705a}.decor-divider{display:flex;align-items:center;gap:8px;margin:15px 0 10px;color:#9a7b69;font:900 7px ui-monospace;letter-spacing:1px}.decor-divider:before,.decor-divider:after{content:"";height:1px;flex:1;background:#ddc2a6}
.decor-shop-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-bottom:5px}.decor-shop-tools select,.decor-shop-tools button{min-width:0;border:1px solid #d7b795;border-radius:8px;padding:7px;background:#fffaf0;color:#664735;font:900 8px ui-monospace}.decor-shop-tools button{border-color:#4da486;background:#4da486;color:#fff;box-shadow:0 2px 0 #2b705b}.decor-shop-tools button.active{background:#ea7c4d;border-color:#ea7c4d;box-shadow:0 2px 0 #98482f}.decor-drag-help{margin:5px 0 8px;color:#8e7162;font-size:8px;line-height:1.35}.decor-shop-card em{display:inline-block;margin-left:3px;padding:2px 4px;border-radius:5px;background:linear-gradient(90deg,#8760cb,#d35c9b);color:#fff;font:900 6px ui-monospace;font-style:normal}.decor-shop-card.kind-yatta span{background:#ffe0dc;color:#bf4d54}.decor-shop-card.kind-balance span{background:#fff0b5;color:#966a11}.decor-shop-card.kind-tech span{background:#dbe9ff;color:#3c69a8}.decor-shop-card.tier-rare{border-color:#c7a8e7;background:linear-gradient(135deg,#fffaff,#eee1f6);box-shadow:0 3px 0 #aa87c4}.decor-shop-card.tier-rare button{background:#8e65bb;box-shadow:0 2px 0 #5f3f83}.decor-shop-card.tier-rare.is-placed button{background:#4aa786;box-shadow:0 2px 0 #2b705a}.decor-editing{cursor:grab;touch-action:none}.decor-editing:active{cursor:grabbing}
.table-shop-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;color:#6b4b38;font-size:9px}.table-shop-head button{border:1px solid #a66f4c;border-radius:8px;padding:7px 9px;background:#b9784b;color:#fff;font:900 8px ui-monospace;cursor:pointer}.table-shop-head button.active{background:#e0744b}.table-shop{display:grid;gap:7px}.table-shop-card{display:grid;grid-template-columns:58px minmax(0,1fr);gap:7px;padding:7px;border:1px solid #d7b999;border-radius:10px;background:#fff9ec}.table-shop-card img{width:58px;height:54px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 2px #50372355)}.table-shop-info strong,.table-shop-info small,.table-shop-info span{display:block}.table-shop-info strong{color:#573b30;font-size:10px}.table-shop-info small{margin:3px 0;color:#8d715e;font-size:7px}.table-shop-info span{color:#36775f;font:900 7px ui-monospace}.table-shop-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:5px}.table-shop-actions button{border:0;border-radius:6px;padding:5px 8px;background:#b9784b;color:white;font:900 8px ui-monospace;cursor:pointer}.table-shop-actions button[data-table-action="place"]{background:#3f9d7b}.table-shop-actions button[data-table-action="store"]{background:#7e82a7}.table-shop-actions button:disabled{background:#c9bfb1;color:#8e857b;cursor:default}.staff-slot-list{display:grid;gap:6px}.staff-slot-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px;border:1px solid #ddc4aa;border-radius:8px;background:#fff8eb}.staff-slot-row b,.staff-slot-row small{display:block}.staff-slot-row b{color:#603e34;font-size:10px}.staff-slot-row small{margin-top:2px;color:#8b705f;font-size:8px}.staff-slot-row button{border:0;border-radius:7px;padding:7px;background:#5cae91;color:#fff;font:900 8px ui-monospace;cursor:pointer}.staff-slot-row button:disabled{background:#b8b5b0;color:#fff;cursor:default}

/* Morning expedition: playable ingredient collection before cooking. */
.expedition-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:850px;margin:0 auto 12px;padding:10px 13px;border:2px solid #ad805e;border-radius:10px;background:#fffaf0;color:#5a4033;font-size:12px;font-weight:800}
.expedition-picker label{display:flex;align-items:center;gap:8px;white-space:nowrap}
.expedition-picker select{padding:7px;border:1px solid #b98d69;border-radius:7px;background:#fff;color:#523b31;font-weight:800}
.expedition-picker span{color:#6c746f;text-align:right}
.phase-screen-card[style*="--map-art"]{position:relative;overflow:hidden;background:linear-gradient(#fffaf0dc,#fffaf0f2),var(--map-art) center/cover}
.expedition{max-width:980px;margin:0 auto;color:#f3f4ee;font-family:system-ui,sans-serif}
.phase-screen:has(.expedition){padding:14px;background:#101c29}
.expedition-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:10px}
.expedition-head small{color:#9fdfd6;font-size:10px;font-weight:900;letter-spacing:1.4px}
.expedition-head h2{margin:2px 0;font-size:22px}
.expedition-head p{margin:0;color:#c5d5d6;font-size:12px}
.expedition-head button,.expedition-controls button{border:1px solid #b7d7d1;border-radius:8px;padding:9px 12px;background:#274b58;color:#f7f5ea;font-weight:900;cursor:pointer}
.expedition-head button{flex:none}
.expedition-hud{display:flex;justify-content:space-between;gap:10px;margin:8px 0;padding:7px 12px;border:1px solid #567580;background:#19313c;font-size:12px;font-weight:900}
.expedition-hud b{color:#f57878;letter-spacing:3px}
.expedition-canvas{display:block;width:100%;height:auto;max-height:430px;border:2px solid #91bdb8;background:#263b54;image-rendering:pixelated}
.expedition-controls{display:flex;align-items:center;gap:9px;margin-top:8px}
.expedition-controls button{min-width:92px;touch-action:none;user-select:none}
.expedition-controls button:active{background:#c75d66}
.expedition-controls span{margin-left:auto;color:#bbced1;font-size:11px}
.expedition-message{min-height:24px;margin-top:7px;color:#f2d7a0;font-size:12px;font-weight:800}
@media(max-width:900px){.expedition-head p{display:none}.expedition-controls{flex-wrap:wrap}.expedition-controls span{width:100%;margin-left:0}.expedition-controls button{flex:1}}

.menu-grey-list div{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:9px;padding:7px}
.menu-grey-list img{width:48px;height:48px;object-fit:cover;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 0 #c99a6f}
.menu-grey-list b,.menu-grey-list small{display:block}
.menu-grey-list small{margin-top:3px;color:#9a7862;font-size:9px}

/* Day flow: phase tabs show progress; Rush only opens from the kitchen plan. */
.phase-screen[hidden],.canvas-wrap[hidden],.expedition-controls[hidden],.expedition-result[hidden],.cooking-game-controls[hidden],.cooking-game-result[hidden]{display:none!important}
.phase-tabs button:disabled{cursor:default;opacity:.72;filter:saturate(.78)}
.phase-tabs button.active:disabled{opacity:1;filter:none}
.prep-board{max-width:920px;margin:0 auto;color:#563e32}
.trend-banner{display:grid;grid-template-columns:minmax(0,1fr) 92px 150px;align-items:center;gap:16px;margin-bottom:16px;padding:15px 18px;border:2px solid #4e8f83;border-radius:15px;background:linear-gradient(135deg,#e8fff6,#fff4d8);box-shadow:0 6px 0 #8bbeb0}
.trend-banner small,.cooking-batch-head small{color:#25806b;font:1000 9px ui-monospace,Consolas,monospace;letter-spacing:1.3px}
.trend-banner h2,.cooking-batch-head h2{margin:4px 0 3px;font-size:22px}.trend-banner p,.cooking-batch-head p{margin:0;color:#786557;font-size:11px;line-height:1.5}
.trend-banner img{width:84px;height:84px;object-fit:cover;border:4px solid #fff;border-radius:50%;box-shadow:0 4px 0 #d5aa77}
.trend-banner>b{padding:10px;border-radius:10px;background:#378d78;color:#fff;font-size:11px;line-height:1.45;text-align:center}
.prep-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.8fr);gap:16px;align-items:start}
.prep-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:8px}.prep-section-title b{font:1000 10px ui-monospace,Consolas,monospace;letter-spacing:1px}.prep-section-title span{color:#8c7667;font-size:9px}
.prep-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.prep-dish-card{display:grid;grid-template-columns:68px minmax(0,1fr);gap:10px;padding:10px;border:2px solid #d6b798;border-radius:13px;background:#fffaf0;box-shadow:0 4px 0 #c9a98b}.prep-dish-card.is-trend{border-color:#45a78d;background:#effff7;box-shadow:0 4px 0 #74bba4}
.prep-dish-card>img{width:68px;height:68px;object-fit:cover;border:3px solid #fff;border-radius:12px;box-shadow:0 2px 0 #bd916d}.prep-dish-card span{color:#b06b3f;font:900 8px ui-monospace}.prep-dish-card h3{margin:3px 0;font-size:12px}.prep-dish-card p{min-height:27px;margin:0;color:#8c7262;font-size:8px;line-height:1.35}.prep-dish-card b{display:block;margin-top:4px;color:#39806b;font-size:8px}
.prep-dish-actions{grid-column:1/-1;display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:7px}.prep-dish-actions button{height:30px;border:0;border-radius:8px;background:#e9894b;color:#fff;font-size:18px;font-weight:1000;box-shadow:0 2px 0 #a75b39}.prep-dish-actions button:disabled{background:#c7beb4;box-shadow:none}.prep-dish-actions strong{text-align:center;font-size:10px}
.prep-inventory{padding:13px;border:2px solid #b98e69;border-radius:13px;background:#fff9ed;box-shadow:0 5px 0 #c9a98b}.prep-inventory ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.prep-inventory li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px;padding:7px;border-radius:8px;background:#f2eadb;font-size:9px}.prep-inventory li.is-missing{background:#ffe5df;color:#a34442}.prep-inventory li button{grid-column:1/-1;border:0;border-radius:6px;padding:6px;background:#ce6550;color:#fff;font:900 8px ui-monospace}.prep-inventory>p{margin:10px 0 0;color:#7f695c;font-size:9px;line-height:1.5}.prep-lock{width:100%;margin-top:12px;border:0;border-radius:9px;padding:11px;background:#3c9a7c;color:#fff;font-weight:1000;box-shadow:0 3px 0 #246850}.prep-lock:disabled{background:#aaa49c;box-shadow:none}
.cooking-batch-head{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;gap:14px;margin-bottom:14px;padding:14px 18px;border:2px solid #b58362;border-radius:14px;background:#fff8e9;box-shadow:0 5px 0 #d0ad8c}.cooking-batch-head img{width:86px;height:86px;object-fit:cover;border:4px solid #fff;border-radius:50%;box-shadow:0 3px 0 #c18f69}.cooking-steps{grid-template-columns:repeat(3,minmax(150px,1fr));max-width:none}.cooking-steps .phase-screen-card{min-height:145px}
.warmer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0}.warmer-grid>div{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:9px;padding:8px;border:2px solid #d0ae86;border-radius:11px;background:#fffaf0}.warmer-grid img{width:58px;height:58px;object-fit:cover;border-radius:10px}.warmer-grid b,.warmer-grid small{display:block}.warmer-grid b{font-size:10px}.warmer-grid small{margin-top:3px;color:#3d8a72;font-size:9px}.warmer-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}
.open-restaurant-box{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:16px 18px;border:3px solid #cc6945;border-radius:14px;background:linear-gradient(135deg,#fff0d7,#ffd9c5);box-shadow:0 6px 0 #9f4e39}.open-restaurant-box span{max-width:520px;font-size:11px;line-height:1.5}.open-restaurant-box button,.rush-summary>button{flex:none;border:2px solid #fff4cd;border-radius:10px;padding:13px 20px;background:linear-gradient(#f39a52,#d85c43);color:#fff;font-weight:1000;box-shadow:0 4px 0 #8f3d34;cursor:pointer}
.rush-summary{max-width:760px;margin:15px auto;padding:22px;border:2px solid #a77959;border-radius:16px;background:#fff9ec;box-shadow:0 8px 0 #bd9371;color:#553c31;text-align:center}.rush-summary h2{margin:0 0 15px}.rush-summary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.rush-summary-stats>b{padding:15px;border-radius:11px;background:#44304f;color:#ffd98b;font-size:24px}.rush-summary-stats small{display:block;margin-top:4px;color:#e8dce7;font-size:8px}.rush-summary>button{margin-top:12px}
.expedition-result{margin:12px auto 0;padding:17px;border:2px solid #e7bd68;border-radius:14px;background:linear-gradient(145deg,#243746,#172630);box-shadow:0 6px 0 #09141c;color:#fff}.expedition-result>small{color:#ffd576;font:1000 9px ui-monospace;letter-spacing:1.4px}.expedition-result h3{margin:4px 0 12px;font-size:20px}.expedition-loot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.expedition-loot>div{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:8px;padding:7px;border:1px solid #68848a;border-radius:9px;background:#ffffff0c}.expedition-loot img{width:48px;height:48px;object-fit:contain}.expedition-loot b,.expedition-loot small{display:block}.expedition-loot b{font-size:10px}.expedition-loot small{margin-top:2px;color:#ffe09b;font-size:12px}.expedition-result>button{display:block;margin:14px auto 0;border:2px solid #fff0bc;border-radius:9px;padding:11px 18px;background:#e68348;color:#fff;font-weight:1000;box-shadow:0 3px 0 #8c482f}
@media(max-width:1350px){.prep-layout{grid-template-columns:minmax(0,1.4fr) 250px}.prep-menu{grid-template-columns:1fr}.trend-banner{grid-template-columns:minmax(0,1fr) 76px 132px}.trend-banner img{width:70px;height:70px}}

/* Cooking Mama-style preparation minigames. */
.phase-screen:has(.cooking-game){padding:14px;background:linear-gradient(150deg,#e9f7ec,#f7dfbd)}
.cooking-game{max-width:930px;margin:0 auto;color:#553b31;font-family:system-ui,sans-serif}
.cooking-game-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}
.cooking-game-goal{display:flex;align-items:center;gap:12px}.cooking-game-goal img{width:72px;height:72px;object-fit:cover;border:4px solid #fff;border-radius:50%;box-shadow:0 4px 0 #c78e62}.cooking-game-goal small{color:#3e8f75;font:1000 9px ui-monospace,Consolas,monospace;letter-spacing:1.3px}.cooking-game-goal h2{margin:2px 0;font-size:23px}.cooking-game-goal p{margin:0;color:#8a6f60;font-size:10px}
.cooking-game-head>button{border:2px solid #9b6d50;border-radius:9px;padding:9px 12px;background:#fff9ec;color:#6d4735;font-weight:1000;box-shadow:0 3px 0 #c49a77}
.cooking-game-brief{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 13px;border:2px solid #6f9e88;border-bottom:0;border-radius:12px 12px 0 0;background:#effff6;font-size:11px}.cooking-game-brief span{flex:none;padding:5px 8px;border-radius:7px;background:#3e9176;color:#fff;font:1000 9px ui-monospace}
.cooking-game-meter{height:13px;padding:3px;border:2px solid #6f9e88;border-top:0;background:#d8e8dc}.cooking-game-meter i{display:block;width:0;height:100%;border-radius:8px;background:linear-gradient(90deg,#53c691,#f1ce55,#f08054);transition:width .12s ease}
.cooking-grade-track{display:flex;justify-content:center;gap:7px;padding:7px 10px;border:2px solid #6f9e88;border-top:0;background:#fff9e9}.cooking-grade-track i{display:grid;width:20px;height:20px;place-items:center;border:2px solid #c8b7a2;border-radius:50%;background:#eee6da;color:#fff;font:1000 12px/1 system-ui;box-shadow:0 2px 0 #b59c83;transition:.18s ease}.cooking-grade-track i.perfect{border-color:#258765;background:#4fc58b;box-shadow:0 2px 0 #258765,0 0 10px #4fc58b99;transform:scale(1.08)}.cooking-grade-track i.good{border-color:#c58a27;background:#f2c84b;box-shadow:0 2px 0 #c58a27}.cooking-grade-track i.burnt{border-color:#aa3e38;background:#ef6656;box-shadow:0 2px 0 #aa3e38}
.cooking-canvas-wrap{position:relative;overflow:hidden;border:3px solid #6e4b3e;border-top:0;border-radius:0 0 16px 16px;background:#ecd0aa;box-shadow:0 7px 0 #a86f4e}
.cooking-canvas-wrap canvas{display:block;width:100%;height:auto;max-height:410px;touch-action:none;cursor:crosshair;image-rendering:pixelated}
.cooking-game-result{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:7px;background:#1f1830dc;color:#fff;text-align:center;animation:cookingResultIn .28s ease both}.cooking-game-result b{color:#ffe279;font:1000 30px/1 system-ui;text-shadow:0 3px 0 #8c4d52,0 0 20px #fff}.cooking-game-result span{font-size:12px}.cooking-game-result.grade-perfect b{color:#72f0b4}.cooking-game-result.grade-good b{color:#ffe279}.cooking-game-result.failed b{color:#ff927b}.cooking-game-result button{margin-top:8px;border:2px solid #fff0bf;border-radius:9px;padding:10px 19px;background:#ed824c;color:#fff;font-weight:1000;box-shadow:0 3px 0 #873e31}
.cooking-game-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:14px}.cooking-game-controls span{padding:9px 13px;border-radius:9px;background:#fff8ea;color:#704b39;font:1000 10px ui-monospace;box-shadow:0 3px 0 #c7a17e}.cooking-game-controls button{min-width:145px;border:2px solid #fff0c5;border-radius:10px;padding:12px 16px;background:linear-gradient(#f3a452,#e66f45);color:#fff;font-weight:1000;box-shadow:0 4px 0 #934631;touch-action:none;user-select:none}.cooking-game-controls button:active{transform:translateY(3px);box-shadow:0 1px 0 #934631}
.cooking-game-controls .cooking-lock{background:linear-gradient(#65c99a,#2f9b76);box-shadow:0 4px 0 #216c56;transform:scale(1.05)}.cooking-game-controls .cooking-lock:active{transform:translateY(3px) scale(1.05);box-shadow:0 1px 0 #216c56}
.cooking-game-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;padding:8px 12px;border:1px dashed #b48663;border-radius:9px;background:#fff8e8;color:#765846;font-size:9px}.cooking-game-foot b{color:#ce6442;font-size:13px}.cooking-game-foot em{font-style:normal}
.cooking-steps .phase-screen-card.is-complete{border-color:#5ba683;background:#e9faef;box-shadow:0 8px 0 #88b89f}.cooking-steps .phase-screen-card.is-complete .phase-icon{color:#3b9270}
@keyframes cookingResultIn{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}
@media(max-width:900px){.cooking-game-controls{flex-wrap:wrap}.cooking-game-controls span{order:-1;width:100%;text-align:center}.cooking-game-controls button{flex:1}.cooking-game-foot{align-items:flex-start;flex-direction:column}}
