/* Ketchup, nicotine paper, stamped enamel. A kitchen party, with room to play. */
:root{--cream:#f4e4bd;--gold:#e7b455;--muted:#c9b99a;color-scheme:dark}
#game-view{position:relative;z-index:1}.top,.tools,.party-strip,.utility-tools,.ticket,.controls,.grip-button,.room-badge,.subtitle,#interact,#crosshair,#audience-status,#chef-guide,.touch{z-index:3}
body{font-family:Bahnschrift,'Trebuchet MS',sans-serif;background:#221a16}
button{border-radius:2px;background:#2b211c;border:1px solid #ad937151;box-shadow:0 2px 0 #100c0b66;transition:background .15s,transform .15s}
button:hover{background:#554031}button:active{transform:translateY(1px)}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #eaa94d;outline-offset:3px}
.top{top:22px;left:26px;gap:20px;pointer-events:none}.brand{font-family:Impact,'Arial Black',sans-serif;font-size:32px;letter-spacing:.6px;line-height:1;color:#f4e4bd;transform:rotate(-2deg);text-shadow:2px 3px #201711}.brand span{color:#e9ad48}.brand small{display:block;font:8px/2.2 Consolas,monospace;letter-spacing:.9px;text-shadow:none}.mode{font:9px/1.5 Consolas,monospace;border:0;border-left:2px solid #b8492c;border-radius:0;background:#211710b3;padding:4px 10px}.mode strong{color:#e8bf78}
.tools{top:22px;right:26px;gap:6px}.tools button{font:12px Bahnschrift,sans-serif;padding:11px 13px;background:#251c16ed}.tools button:hover{background:#59422e}.tools kbd{font:9px Consolas,monospace;color:#b7a382;margin-left:8px}.tools .invite-cta{background:#af3826;border-color:#d65a38;font-weight:700}.tools .invite-cta:hover{background:#d0492e}.invite-cta span{border-left:1px solid #ed967459;margin-left:10px;padding-left:10px;font:11px Consolas,monospace}.party-strip{position:absolute;top:75px;right:26px;display:flex;align-items:center;gap:14px;color:#e4cb9f;font:9px Consolas,monospace;letter-spacing:1.5px;text-shadow:0 1px 3px #000}.party-strip #party-seats{display:flex;gap:4px}.party-strip i{width:7px;height:9px;background:#342820cc;border:1px solid #b59a7066}.party-strip i.occupied{background:#e3af56;border-color:#f7d393}
.utility-tools{position:absolute;left:26px;bottom:57px;display:flex;gap:5px}.utility-tools button{font:10px Consolas,monospace;padding:7px 10px;background:#271c16e6}.utility-tools .speaking{background:#5c6539}.ticket{top:126px;left:26px;width:208px;padding:16px 15px 14px;background:linear-gradient(115deg,#dfcc9a,#f0deb1 80%);color:#3e2e20;border:none;border-top:5px solid #b89d6b;border-radius:0;box-shadow:3px 5px 0 #17100b4d;transform:rotate(-1deg);clip-path:polygon(0 0,100% 0,100% 97%,95% 100%,90% 97%,85% 100%,80% 97%,75% 100%,70% 97%,65% 100%,60% 97%,55% 100%,50% 97%,45% 100%,40% 97%,35% 100%,30% 97%,25% 100%,20% 97%,15% 100%,10% 97%,5% 100%,0 97%);pointer-events:none}.ticket .eyebrow{font:8px Consolas,monospace;letter-spacing:1.1px;color:#9b3a28}.ticket h2{font:600 18px/1.15 Bahnschrift,sans-serif;margin:12px 0}.ticket p{font:11px/1.55 Consolas,monospace;color:#604b32}.ticket #session{border-top:1px dashed #ac946c;font-size:9px;margin:12px 0 3px;padding-top:9px;color:#826a48}.steps{gap:4px;margin-top:13px}.steps i{height:3px;background:#bba572}.steps i.done{background:#a83726}
.controls{left:26px;bottom:18px;gap:12px;padding:7px 10px;border:0;border-radius:2px;background:#211812d9;font:10px Consolas,monospace;color:#d9c7a7}.controls kbd{font-size:10px;background:#fff0c60e;border-color:#d8c29840}.grip-button{position:absolute;bottom:18px;right:26px;font:11px Consolas,monospace;background:#221911eb;padding:10px 15px}.room-badge{position:absolute;right:26px;top:101px;max-width:330px;font:9px Consolas,monospace;color:#d9c199;border-left:3px solid #b3492d;background:#2b1f17e8;padding:8px 10px}.room-code{font:700 34px Consolas,monospace;letter-spacing:5px}.invite-line{padding:12px;background:#d4bb87;overflow-wrap:anywhere;font:12px Consolas,monospace}.room-ledger{max-height:180px;overflow:auto}.room-log{padding:7px 0;border-bottom:1px dashed #b49768}.room-status{font:12px/1.6 Consolas,monospace}
#map,.map-label{display:none}#crosshair{display:block;width:5px;height:5px;border:1px solid #fff9df;background:#fbebc080;box-shadow:0 0 3px #000}.subtitle{bottom:145px;max-width:560px;background:#241b16ee;border:0;border-left:3px solid #b94a2d;border-radius:0;padding:12px 18px;opacity:0;transition:opacity .3s}.subtitle.speaking{opacity:1}.subtitle b{font:9px Consolas,monospace;color:#dfaa58}.subtitle p{font:14px/1.4 Bahnschrift,sans-serif;margin-top:6px;color:#eee0be}#interact{bottom:97px;background:#e3bf7b;border:1px solid #f0d6a3;border-radius:2px;font:12px Consolas,monospace;color:#392717;box-shadow:3px 3px #21160bcc}#audience-status{position:absolute;bottom:61px;right:26px;background:#221911d6;color:#ccb892;font:9px Consolas,monospace;padding:7px 9px;pointer-events:none}
.intro-screen{background:linear-gradient(90deg,#20130ff7 0%,#20130fe6 24%,#20130f70 52%,transparent 85%);padding:8vw}.intro-copy{max-width:560px}.intro-copy .eyebrow{font:10px Consolas,monospace;letter-spacing:1.7px;color:#d1ae73}.intro-copy h1{font:112px/.89 Impact,'Arial Black',sans-serif;letter-spacing:-1px;margin:25px 0 24px;transform:rotate(-3deg);text-transform:uppercase;text-shadow:5px 6px #55251a}.intro-copy h1 span{color:#e5b254}.intro-copy p{font:18px/1.55 Bahnschrift,sans-serif;color:#decda9}.intro-copy .fine{font:10px/1.8 Consolas,monospace;color:#bda381}.intro-copy .primary{margin-top:7px;background:#b63825;border:1px solid #df7045;box-shadow:4px 4px #100e0a;border-radius:1px;font:17px Impact,sans-serif;letter-spacing:1px;padding:15px 28px}.intro-copy .primary:hover{background:#d84629}.intro-stamp{display:inline-block;margin:2px 0 18px;padding:8px 13px;border:2px solid #c45635;color:#cf6a47;font:9px Consolas,monospace;transform:rotate(3deg)}.intro-stamp strong{font-size:12px}.intro-copy .primary{display:block}
body:not(.playing) :is(.ticket,.tools,.utility-tools,.party-strip,.controls,.grip-button,#audience-status,.room-badge){visibility:hidden}
.modal{background:#140c09a3;backdrop-filter:none;padding:25px}.sheet{background:#e7d3a6;color:#3c2b1c;border:1px solid #c4a779;border-top:7px solid #98422a;border-radius:2px;box-shadow:9px 10px 0 #140d0980;padding:25px 28px}.sheet header{border-bottom:1px dashed #a58a5a;padding-bottom:14px;margin-bottom:14px}.sheet h1{font:32px/1.05 Impact,sans-serif;letter-spacing:.3px}.sheet .eyebrow{font:10px Consolas,monospace;color:#9b4028}.sheet .close{background:transparent;color:#644029;border:0;font:20px Consolas,monospace;box-shadow:none}.sheet .intro,.sheet .field,.sheet .review-row span,.sheet .card p{color:#645032}.sheet .intro{font-size:14px;line-height:1.6}.sheet .card{border:0;border-top:1px dashed #b29a6d;background:#ccb58238;border-radius:0;margin-top:16px;padding:16px 0}.sheet button{background:#4b3625;border:1px solid #59432b;color:#f5e8c4;font:12px Consolas,monospace}.sheet button:hover{background:#6d4930}.sheet button.primary{background:#ad3825;border-color:#a23222}.sheet input,.sheet textarea,.sheet select{background:#f2e4c1;color:#382719;border:1px solid #af9164;border-radius:2px;color-scheme:light}.sheet .notice{background:#cfb78444;color:#715b37;border:1px solid #b79a6155;font:11px/1.6 Consolas,monospace}.sheet .score{color:#a03926}.sheet .bar{background:#c4ab76}.sheet .bar span{background:#a34429}.sheet .message{color:#963723}.sheet a{color:#883e28}.sheet .review-row{border-color:#c7af81}.sheet .coin-art{border-radius:2px}.modal.activity{background:none;justify-content:flex-end;padding-right:26px}.modal.activity .sheet{width:300px;margin:0}.modal.activity .score{font-size:36px}.modal.activity .intro{font-size:12px}.toast{background:#efd9a5;color:#50351f;border:1px solid #98703b;border-left:4px solid #b74628;border-radius:1px;font:12px Consolas,monospace;max-width:70vw}.touch{bottom:104px}#loading{background:#211713}#loading h2{font:40px Impact,sans-serif;color:#ddb169}
#camera-tray{position:absolute;bottom:99px;left:26px;width:320px;padding:16px;background:#2e2017f5;border-top:3px solid #b74729;z-index:9;font:11px Consolas,monospace}#camera-tray .camera-options{display:flex;gap:4px;margin:12px 0}#camera-tray button{padding:7px;font-size:10px}#camera-tray label{display:block}#camera-tray input{padding:0;margin-top:9px}#camera-tray p{color:#bea988;font-size:10px;line-height:1.6}
body.tv-focus .modal{z-index:30;background:#130e0bf5;padding:18px 30px 68px}body.tv-focus .sheet{width:min(1180px,96vw);max-height:calc(100vh - 90px);padding:14px 20px;background:#251b15;color:#f0dfba;border:1px solid #7c5939}body.tv-focus .sheet h1{font-size:25px}body.tv-focus .sheet header{padding-bottom:8px;margin-bottom:8px;border-color:#6d4a30}body.tv-focus .sheet .close{color:#efdcb5}body.tv-focus .sheet .eyebrow{color:#c59a57}.tv-focus-bar{display:flex;gap:8px;align-items:center;margin-bottom:10px;font:11px Consolas,monospace}.tv-focus-bar span{margin-right:auto}.tv-focus-bar button{padding:7px 11px}#tv-focus-stage{height:min(58vh,640px);width:100%;background:#090807;display:grid;place-items:center}#tv-focus-canvas{height:100%;width:100%;object-fit:contain;max-height:58vh}.tv-focus-note{font:10px/1.5 Consolas,monospace;color:#bdab8d;margin:9px 0 0}.tv-exit{position:fixed;bottom:19px;left:50%;transform:translateX(-50%);z-index:35;background:#ad3825;padding:12px 22px;font:12px Consolas,monospace}#world-tv-player iframe{display:block}
@media(max-width:1100px){.top .mode{display:none}.tools button{padding:10px;font-size:11px}.ticket{width:180px}.ticket h2{font-size:16px}.controls{font-size:9px;gap:8px}.intro-copy h1{font-size:94px}}
@media(max-width:780px){.top{top:15px;left:15px}.brand{font-size:24px}.brand small{font-size:6px}.tools{top:16px;right:15px;max-width:65vw;flex-wrap:wrap;justify-content:flex-end}.tools button{font-size:10px;padding:7px 9px}.tools kbd{display:none}.party-strip{top:96px;right:15px;font-size:8px}.room-badge{top:119px;right:15px;max-width:225px;font-size:8px}.ticket{top:114px;left:15px;width:145px;padding:11px}.ticket h2{font-size:14px}.ticket .eyebrow{font-size:7px}.ticket p{font-size:9px}.ticket #session{display:none}.utility-tools{bottom:61px;left:15px}.utility-tools button{font-size:9px;padding:6px}.controls{display:none}.grip-button{bottom:17px;right:15px}#audience-status{bottom:94px;right:15px;font-size:8px;max-width:210px}.subtitle{bottom:153px;max-width:75vw}.subtitle p{font-size:12px}#interact{bottom:104px}.touch{bottom:17px;left:15px}.intro-copy h1{font-size:76px}.intro-copy .eyebrow{max-width:260px;font-size:8px}.intro-copy p{font-size:15px}.intro-stamp{display:none}.sheet{padding:17px}.sheet h1{font-size:26px}body.tv-focus .modal{padding:12px 8px 65px}body.tv-focus .sheet{padding:12px}.tv-focus-bar{flex-wrap:wrap}.tv-focus-bar span{flex-basis:100%}.tv-focus-note{font-size:9px}.tv-focus-bar button{font-size:10px}body.tv-focus .sheet h1{font-size:20px}}
@media(prefers-reduced-motion:reduce){button,.subtitle{transition:none}}
#chef-guide{position:absolute;right:26px;bottom:113px;width:255px;background:#281b13eb;border-left:3px solid #e1ad50;padding:13px 15px;box-shadow:2px 3px 0 #150e0977;pointer-events:auto}#chef-guide .eyebrow{font:8px Consolas,monospace;color:#dba450;letter-spacing:1px}#guide-title{display:block;margin-top:7px;font:600 14px Bahnschrift,sans-serif;color:#f0dfb5}#guide-tip{font:11px/1.55 Bahnschrift,sans-serif;margin:7px 0;color:#ccba96}.guide-bearing{display:flex;align-items:center;gap:8px;font:10px Consolas,monospace;color:#edc67b}#guide-arrow{display:inline-block;font-size:20px;line-height:1}#guide-help{padding:5px 7px;font:9px Consolas,monospace;margin-left:auto}.lesson-steps{padding-left:25px}.lesson-steps li{padding:10px 8px;color:#7b6543}.lesson-steps li strong{display:block;font-size:14px}.lesson-steps li span{font:12px/1.5 Bahnschrift,sans-serif;display:block;margin-top:3px}.lesson-steps li.current{color:#892f1e;background:#c5a87955}.lesson-steps li.done{opacity:.65}@media(max-width:780px){#chef-guide{right:15px;bottom:126px;width:210px;padding:10px}#guide-title{font-size:12px}#guide-tip{font-size:10px}.utility-tools{gap:3px}.utility-tools button{padding:6px 7px}.subtitle{bottom:290px}}
/* World-anchored chef speech stays above WebGL and below station dialogs. */
#chef-bubble{position:fixed;z-index:4;pointer-events:none;width:265px;padding:12px 16px;transform:translate(-50%,-100%);background:#f5dfae;color:#342219;border:3px solid #483124;border-radius:13px;box-shadow:4px 5px 0 #291c2070;text-align:center;font-weight:800;font-size:16px;line-height:1.25}
#chef-bubble:after{content:"";position:absolute;left:48%;top:100%;border:10px solid transparent;border-top-color:#483124}
#chef-bubble small{display:block;color:#975331;font-size:9px;letter-spacing:1px;margin-bottom:6px}
#chef-bubble.furious{border-color:#a43820;transform:translate(-50%,-100%) rotate(-2deg)}
#chef-bubble.furious:after{border-top-color:#a43820}
.wallet-status{overflow-wrap:anywhere;font-size:13px}.field select{padding:12px;background:#ecdfb7;color:#32271c;border:1px solid #958363}
