@import url('https://fonts.googleapis.com/css2?family=Gowun+Dodum&display=swap');
:root{font-family:'Gowun Dodum',sans-serif;color:#252924;background:#f5f1e8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #df593c;outline-offset:5px}header,footer{display:flex;align-items:center;justify-content:space-between;padding:23px 4vw;font:12px sans-serif;letter-spacing:1px}header a{color:inherit;text-decoration:none;font-weight:800}header button{border:0;background:transparent;font:12px sans-serif}footer{border-top:1px solid #d7d4cb;color:#76786c;margin-top:35px}main{min-height:76vh;max-width:1140px;margin:auto;padding:25px}.eyebrow{font:12px sans-serif;letter-spacing:2px;color:#73786b}.intro{text-align:center;max-width:900px;margin:10px auto}.intro h1{font-size:clamp(48px,7vw,83px);line-height:1.15;letter-spacing:-4px;margin:24px 0}.intro h1 em{font-style:normal;color:#d64b32}.intro p{line-height:1.9;font-size:18px}.primary{background:#d85436;color:#fff;border:2px solid #252924;box-shadow:4px 5px 0 #252924;padding:14px 29px;border-radius:6px 11px 5px 9px;font-size:18px;transition:transform .15s,box-shadow .15s}.primary:hover{transform:translate(2px,2px);box-shadow:2px 3px 0 #252924}.quiet{border:0;background:transparent;text-decoration:underline;text-underline-offset:5px;padding:12px}.cast{display:flex;justify-content:center;align-items:end;gap:20px;margin:26px auto 5px}.bot{width:94px;height:115px;overflow:visible}.cast .bot:nth-child(even){transform:rotate(5deg) translateY(-9px)}.tiny{font-size:12px!important;color:#73786b}.game{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:start}.round{display:flex;align-items:center;justify-content:space-between;margin:0 0 20px;border-bottom:1px dashed #a8ad9b;padding-bottom:13px}.dots{display:flex;gap:6px}.dots i{width:9px;height:9px;border:1px solid #73786b;border-radius:50%}.dots i.done{background:#d85436;border-color:#d85436}.scene-head{display:flex;align-items:center;gap:16px}.scene-head .bot{width:64px;height:82px}.scene-head h1{font-size:30px;line-height:1.25;margin:8px 0}.scenario{font-size:17px;line-height:1.85}.choices{display:grid;gap:9px;margin-top:22px}.choice{display:flex;gap:14px;text-align:left;align-items:center;background:#fffdf7;border:1.5px solid #9aa08d;border-radius:4px 8px 4px 7px;padding:12px 15px;font-size:15px;transition:transform .15s,background .15s}.choice:hover{transform:translateX(4px);background:#eee9dc}.choice.selected{border:2px solid #252924;background:#f4db93}.choice b{font:13px monospace;color:#6f7665}.stage{position:sticky;top:20px;text-align:center}.tower-wrap{height:430px;position:relative;border-bottom:3px solid #252924;background:radial-gradient(ellipse at 50% 90%,#dedbd066,transparent 65%)}.tower{width:100%;height:100%;overflow:visible;touch-action:none}.block{cursor:grab;transition:opacity .2s}.block.locked{cursor:default;opacity:.45}.block:hover:not(.locked){filter:brightness(1.08)}.stage h2{font-size:21px;margin:16px 0 8px}.stage p{font-size:14px;line-height:1.7;max-width:360px;margin:10px auto}.tag{display:inline-block;border:1px solid #252924;border-radius:40px;padding:5px 13px;font-size:12px}.feedback{background:#fffdf7;border:1px solid #bfc3b0;padding:20px 23px;border-radius:2px 16px 4px 12px;margin-top:20px;line-height:1.8}.feedback h2{font-size:18px;margin-top:0}.reflection{font-size:18px!important}.placement{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:15px}.placement input{width:75%;accent-color:#d85436}.receipt{max-width:720px;margin:auto}.receipt h1{font-size:45px}.receipt p{line-height:1.85}.receipt details{border-top:1px dashed #a9ae9b;padding:16px 0}.receipt summary{cursor:pointer;font-size:17px}.receipt textarea{width:100%;padding:12px;font:inherit;border:1px solid #9aa08d;background:#fffdf7;min-height:70px}.end-actions{display:flex;gap:16px;flex-wrap:wrap;margin:30px 0}.end-actions a{color:inherit}.notice{min-height:24px;font-size:14px;color:#69705f}.ghost{opacity:.5;pointer-events:none}.block.locked{opacity:.45;pointer-events:none}.block:not([role="button"]){cursor:default}@media(max-width:760px){header{padding:18px}header>span{display:none}main{padding:18px}.game{grid-template-columns:1fr;gap:15px}.stage{position:static;grid-row:2}.tower-wrap{height:330px}.intro h1{letter-spacing:-2px}.cast{gap:6px}.cast .bot{width:62px;height:80px}.scene-head h1{font-size:25px}.scenario{font-size:16px}.choice{font-size:14px}.intro p{font-size:16px}footer{font-size:10px;gap:15px}.receipt h1{font-size:34px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition:none!important}}
.choice.selected:disabled{opacity:1}.another{border-top:1px dashed #bfc3b0;padding-top:12px;font-size:14px}.another summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.another p{margin:15px 0}.stage{scroll-margin-top:20px}.feedback{scroll-margin-top:20px}.tower-wrap:after{content:'THE DINNER SHIFT';position:absolute;bottom:-23px;left:0;right:0;font:10px monospace;letter-spacing:3px;color:#969987;pointer-events:none}.stage h2{margin-top:35px}.block:focus-visible{outline:none;filter:drop-shadow(0 0 4px #df593c)}
/* Each move has one clear target and an explicit confirmation. */
.stage{top:12px}.stage-instruction h2{margin:12px 0 6px;font-size:20px}.stage-instruction p{margin:0 auto 10px;font-size:13px;max-width:390px;word-break:keep-all}.tower-wrap{height:330px;border-bottom:0;background:none}.tower-wrap:after{display:none}.tower{overflow:visible}.block{transition:none;cursor:default}.block:hover:not(.locked){filter:none}.block-target,.slot-target{cursor:pointer}.block-target:focus-visible,.slot-target:focus-visible{outline:none;filter:drop-shadow(0 0 5px #d85436)}.ghost{opacity:.25;pointer-events:none}.source-gap{opacity:.25;pointer-events:none}.stage-controls{padding:0 12px 12px}.block-options{display:flex;justify-content:center;gap:8px}.block-options button{display:flex;flex:1;max-width:135px;min-height:62px;gap:6px;justify-content:center;align-items:center;flex-wrap:wrap;background:#fffdf7;border:1.5px solid #a8ad9b;border-radius:8px;padding:9px;font-size:14px}.block-options button[aria-pressed=true]{border:2px solid #d85436;background:#fff1df;box-shadow:0 0 0 2px #d8543620}.block-options button:disabled{opacity:.5;background:#e5e1d7}.block-options small{width:100%;font-size:11px}.block-options i{display:grid;place-items:center;width:23px;height:23px;border:1px solid #484c43;border-radius:4px;font:700 12px sans-serif;font-style:normal}.stage p.action-summary{min-height:36px;font-size:13px;margin:10px auto;word-break:keep-all}.stage-controls>.primary{width:100%;max-width:390px;font-size:16px;padding:12px}.primary:disabled{box-shadow:none;transform:none;opacity:.5}.transfer{display:flex;align-items:center;justify-content:center;gap:10px;background:#fffdf7;border:1px solid #d4d0c5;border-radius:8px;padding:9px;margin:8px auto 0;max-width:390px;text-align:left;font-size:11px}.transfer b{display:block;font-size:12px;margin-top:3px}.held-swatch{width:36px;height:16px;border:2px solid #d85436;flex-shrink:0;transform:skewY(-10deg)}.chosen-answer{background:#eee8da;border-left:3px solid #d85436;padding:12px 16px}.chosen-answer small{font-size:11px;color:#74776a}.chosen-answer p{margin:5px 0;font-size:16px;line-height:1.7}.chosen-options{margin-top:12px;font-size:13px}.chosen-options summary{cursor:pointer;color:#73786b}.chosen-options .choices{margin-top:12px}.is-playing{gap:35px}.stage .tiny{font-size:11px!important;max-width:390px}.stage-controls .tiny{margin-bottom:0}.stage-controls:empty{display:none}
@media(max-width:760px){.game.is-playing .stage{grid-row:1}.game.is-playing article{grid-row:2}.stage{scroll-margin-top:10px}.tower-wrap{height:290px}.stage-controls{padding:0}.stage-instruction h2{font-size:19px}.stage-instruction p{font-size:12px}.block-options button{min-height:54px}.transfer{margin-top:6px}.game.is-playing .scene-head{margin-top:20px}.round{margin-bottom:12px}.stage p.action-summary{margin:8px auto;min-height:20px}}

.transfer{min-height:48px}.transfer-empty{display:none}.stage-instruction{min-height:100px}

.intro .intro-purpose{font-size:14px;line-height:1.9;color:#73786b;max-width:620px;margin:28px auto 0;text-wrap:pretty}

.nav-title{line-height:1.7;text-wrap:balance}.nav-title span{font-weight:400;letter-spacing:0}@media(max-width:480px){.nav-title{font-size:11px;letter-spacing:.6px}}

.intro p{word-break:keep-all;overflow-wrap:break-word}
