:root{font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif;color:#3d3028;background:#fff9ed;font-synthesis:none;--ink:#3d3028;--muted:#8c7b65;--line:#e8dcc7;--tomato:#d97460;--green:#587d68;--paper:#fffdf5;--gold:#d2ad66}*{box-sizing:border-box}body{margin:0;min-width:360px;background:radial-gradient(ellipse at 90% 10%,#f2e7cd88,transparent 60%),#fff9ed}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0}button:disabled{cursor:default;opacity:.46}button svg{width:20px;height:20px;flex-shrink:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b38d44;outline-offset:3px}button{transition:background .18s,transform .18s}button:not(:disabled):active{transform:translateY(1px)}.site-header{height:105px;display:flex;align-items:center;justify-content:space-between;padding:0 5.4%;border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center}.brand>svg{width:42px;height:42px;color:var(--tomato)}.brand>span{font-family:STSong,SimSun,serif;font-size:21px;font-weight:700;letter-spacing:2px}.brand small{display:block;font-family:system-ui,sans-serif;font-size:8px;letter-spacing:3.1px;margin-top:6px;color:#a48862}nav,.game-actions{display:flex;align-items:center;gap:28px}.text-btn{background:none;color:#79664f;display:inline-flex;gap:8px;align-items:center;padding:10px 0;font-size:13px}.text-btn:hover{color:#b65f4c}.icon-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:transparent;display:inline-flex;align-items:center;justify-content:center;color:#715d48}.icon-btn:hover{background:#f1e4c9}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:47px;padding:13px 23px;border-radius:9px;font-size:14px;font-weight:600}.primary{background:var(--green);color:#fff9ed;box-shadow:0 3px #385c4914}.primary:hover:not(:disabled){background:#486e59}.secondary{background:#fffaf0;border:1px solid #dfd0b5;color:#766045}.secondary:hover:not(:disabled),.secondary.selected{background:#f4e6c8;border-color:#b69764}.home-grid{max-width:1580px;margin:0 auto;min-height:calc(100vh - 166px);display:grid;grid-template-columns:.89fr 1.11fr;align-items:center;padding:48px 5.4% 40px;gap:5.5%}.eyebrow{display:flex;align-items:center;gap:9px;letter-spacing:2.8px;font-size:10px;font-weight:600;color:#9a805e}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#7f9c78;box-shadow:0 0 0 4px #7f9c7815}.hero-copy h1{font-family:STSong,SimSun,serif;font-size:clamp(50px,5.3vw,83px);line-height:1.3;letter-spacing:3px;font-weight:600;margin:25px 0 19px}.accent{color:var(--tomato)}.lead{color:#8a765d;line-height:1.9;font-size:16px}.feature-pills{display:flex;gap:17px;align-items:center;font-size:10px;color:#9b896c;margin:25px 0}.feature-pills>span{display:flex;gap:5px;align-items:center}.feature-pills svg{height:16px;width:16px}.entry-card{max-width:440px;background:#fffdf688;padding:23px;border:1px solid #e7dac2;border-radius:15px}.entry-card>label{font-size:11px;color:#957b5b}.name-row{display:flex;align-items:center;gap:13px;margin:9px 0 16px}input:not([type=checkbox]):not([type=range]):not([type=file]),select{background:#fffbf2;border:1px solid #decfb5;border-radius:7px;color:var(--ink);padding:13px 12px;min-width:0;width:100%;font-size:13px}.name-row input{flex:1}.swatches{display:flex;gap:7px}.swatch{background:var(--swatch);border:3px solid #fff8e9;outline:1px solid transparent;width:23px;height:23px;min-width:23px;border-radius:50%}.swatch.selected{outline-color:#a5865c}.entry-actions{display:flex;gap:10px}.entry-actions .primary{flex:1;padding-left:12px;padding-right:12px;gap:10px}.entry-actions .secondary{padding-left:15px;padding-right:15px}.micro{font-size:11px;color:#a08c71;line-height:1.8}.entry-card .micro{text-align:center;margin:14px 0 0}.how-link{margin-top:18px;font-size:11px;gap:35px}.hero-scene{position:relative;padding:25px 0 0}.scene-label{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;border:1px solid #dbc8a5;border-bottom:0;border-radius:21px 21px 0 0;background:#f2e3c9;color:#997d56;font-size:11px;letter-spacing:3px}.tiny-stars{color:#bd9760;font-size:15px;letter-spacing:5px}.scene-canvas{border:1px solid #dbc8a5;padding:13px;background:#f6ecd7;border-radius:0 0 21px 21px;transform:rotate(-1deg);box-shadow:0 20px 50px #8e6c3b10}.scene-canvas canvas{display:block;width:100%;aspect-ratio:20/12;border-radius:12px}.scene-caption{display:flex;align-items:center;justify-content:center;gap:20px;margin:30px 0;color:#a68860}.scene-caption svg{height:23px;width:23px;transform:rotate(12deg);color:#c5957b}.handwritten{font-family:KaiTi,STKaiti,serif;font-size:18px}.scene-note{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;line-height:2;color:#a18b6d;font-size:11px}.scene-note b{font-weight:500;color:#7d684e;font-size:13px}.home-footer{display:flex;justify-content:space-between;max-width:1580px;margin:auto;padding:20px 5.4%;border-top:1px solid var(--line);color:#b29d7d;font-size:10px;letter-spacing:1px}.small-window{display:none}.invitation{font-size:11px;color:#7a8c66}.invitation button{font-size:11px;background:none;color:var(--green);text-decoration:underline}.lobby{max-width:1320px;margin:auto;padding:35px 5%}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}.section-heading h1{font-family:STSong,SimSun,serif;font-size:38px;letter-spacing:3px;margin:12px 0}.section-heading p{font-size:13px;color:#9a866a}.lamp{font-family:inherit;font-size:14px;color:#b68b42;letter-spacing:0}.invite-box{border-left:1px solid var(--line);padding-left:35px;display:flex;flex-direction:column;align-items:center;gap:7px}.invite-box small{color:#9d8668;letter-spacing:3px;font-size:10px}.room-code{font-family:monospace;background:none;color:#65826a;font-size:29px;letter-spacing:6px;padding:0}.invite-box .text-btn{font-size:11px}.invite-box svg{height:16px;width:16px}.lobby-columns{display:grid;grid-template-columns:340px 1fr;gap:40px}.partners h2{font-size:15px;display:flex;justify-content:space-between;align-items:center;margin:0 0 15px}.partners h2 span{font:11px monospace;color:#a59173}.player-card{display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:13px;background:#fffdf6;padding:17px 14px;margin-bottom:12px;min-height:100px}.player-card h3{font-size:14px;margin:0 0 7px}.player-card p{font-size:10px;color:#a18b6c;margin:0}.player-card.is-ready{border-color:#a8bea1}.avatar{position:relative;display:flex;align-items:center;flex-direction:column;width:42px;min-width:42px;height:65px;justify-content:flex-end}.chef-hat{font-size:17px;color:var(--apron);background:#fffaf0;border:1px solid #e7dbc2;border-radius:12px 12px 4px 4px;position:absolute;top:0;width:36px;text-align:center;z-index:2}.chef-face{font:15px monospace;letter-spacing:5px;padding-left:5px;background:#efd0aa;border-radius:13px;width:33px;height:27px;text-align:center;margin-bottom:-5px}.apron{background:var(--apron);color:#fff9ec;font-size:9px;border-radius:8px 8px 4px 4px;width:35px;height:24px;text-align:center;padding-top:7px}.status-pill{font-size:9px;border-radius:20px;background:#f1e8d4;color:#a18a64;padding:4px 7px;margin-left:auto;white-space:nowrap}.status-pill.green{color:#5d8067;background:#e9efdf}.you{font:9px sans-serif;color:#9b886b;margin-left:8px}.empty{border-style:dashed;background:transparent}.empty-avatar{width:42px;text-align:center;font-size:26px;color:#cdb995}.empty h3{font-weight:400;color:#a18a68}.soft-panel{background:#f4ecd9;padding:17px;border-radius:12px;margin-top:20px}.check-row{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.7}.check-row input{accent-color:#6f8a6c;width:15px;height:15px}.soft-panel p{font-size:10px;color:#a18b6c;line-height:1.9}.tag{font-size:9px;background:#fff9e9;padding:5px 9px;border-radius:12px;color:#8b7657}.appearance-line{display:flex;align-items:center;gap:8px;margin:19px 0;font-size:11px;color:#9b8465}.appearance-line .text-btn{font-size:10px;margin-left:auto}.partner-actions{display:flex;align-items:center;justify-content:space-between}.partner-actions .primary,.partner-actions .secondary{min-width:165px}.danger{color:#b47969}.control-note{margin-top:20px;font-size:10px;color:#a08c6d;line-height:2.6}kbd{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:2px 5px;border:1px solid #ddceb1;border-bottom-width:2px;border-radius:4px;background:#fffaf0;color:#8c7656;font:10px system-ui}.mode-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);padding-bottom:12px}.mode-tabs button{padding:8px 13px;border-radius:6px;background:transparent;font-size:12px;color:#9b8466}.mode-tabs button.active{background:#e8eddd;color:#5c7a62}.level-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:17px}.level-card{display:flex;gap:12px;align-items:center;text-align:left;background:#fffdf4;border:1px solid var(--line);border-radius:9px;padding:14px 12px;color:var(--ink);min-height:77px}.level-card.selected{border-color:#7d9a79;background:#f0f2e6;box-shadow:0 0 0 1px #7d9a7955}.level-number{font:24px Georgia,serif;color:#b7a17f}.level-card b{font-size:11px;font-weight:500;display:block}.level-card small{display:block;font-size:9px;margin-top:7px;color:#ab9372}.level-arrow{margin-left:auto;color:#9f8d6e}.level-card.locked{opacity:.43}.level-description{padding:17px 0 10px}.level-description b{font-family:serif;font-size:14px;letter-spacing:1px;font-weight:500;color:#8d7353}.level-description p{font-size:10px;color:#a48b69;line-height:1.8}.start-row{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;border-top:1px solid var(--line);padding-top:17px}.start-row label{font-size:9px;color:#a18a69;display:block;margin-bottom:7px}.start-row select{min-width:230px;font-size:11px;padding:10px}.start-row .primary{white-space:nowrap}.mode-description{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px 10px}.mode-description h2{font-family:serif;font-size:25px;font-weight:500;margin:15px 0}.mode-description p{font-size:12px;color:#9a8261;line-height:2}.mode-description small{color:#a18b6b;font-size:10px;margin-top:12px}.large-illustration svg{height:80px;width:80px;color:#be9c67}.theme-buttons{display:flex;gap:8px;margin-bottom:16px}.theme-buttons button{min-height:35px;padding:7px 15px;font-size:11px}.menu-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.menu-chip{display:flex;gap:5px;align-items:center;padding:5px 8px;border:1px solid var(--line);border-radius:7px;color:#988163;font-size:10px;background:#fffcf3}.menu-chip.selected{background:#eaf0e3;border-color:#91a488;color:#597352}.food-icon{width:38px;height:38px;object-fit:contain}.menu-chip .food-icon{width:24px;height:24px}.game-shell{height:100vh;display:flex;flex-direction:column;overflow:hidden}.game-header{height:75px;min-height:75px;display:flex;align-items:center;justify-content:space-between;padding:0 25px;border-bottom:1px solid var(--line)}.game-header .brand>span{font-size:17px}.game-header .brand>svg{width:32px;height:32px}.game-header .brand small{font-size:6px;letter-spacing:2.7px}.shift-title{display:flex;flex-direction:column;align-items:center;gap:6px}.shift-title>span{font-size:13px;color:#776047}.shift-title>small{font-size:9px;color:#a78f6d}.game-actions{gap:12px}.connection{display:flex;align-items:center;gap:8px;font-size:10px;color:#93856c}.game-actions .icon-btn{width:32px;height:32px}.game-actions svg{width:16px;height:16px}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px;max-width:1640px;width:100%;margin:0 auto;padding:16px 24px 9px;flex:1;min-height:0}.world-column{display:flex;flex-direction:column;min-width:0;align-items:center}.shift-stats{display:flex;align-items:center;gap:27px;width:100%;height:57px;flex-shrink:0}.shift-stats>div{display:flex;align-items:center;gap:10px}.shift-stats small{font-size:9px;color:#a38b68}.shift-stats strong{font-size:22px;font-family:Georgia,serif;font-weight:400;color:#6f5a41;font-variant-numeric:tabular-nums}.shift-stats .coop-block{display:block;margin-left:auto;width:145px}.coop-meter{height:5px;border-radius:5px;background:#e7dcc1;margin-top:8px;overflow:hidden}.coop-meter span{display:block;height:100%;background:#d1aa60;transition:width .3s}#dish-count{font-size:10px;color:#a48e6d}.canvas-wrap{position:relative;width:100%;max-height:calc(100vh - 218px);aspect-ratio:20/12;min-height:0;flex-shrink:1;border-radius:17px;box-shadow:0 8px 25px #83643d10;overflow:hidden;background:#dfd0b1}.canvas-wrap canvas{display:block;width:100%;height:100%;object-fit:contain;outline:none}.game-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:13px 4px 7px;font-size:10px;color:#a08a68}.game-bottom>span:first-child{color:#8a7250;max-width:48%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.game-message{height:23px;color:#a27a48;font-size:11px;text-align:center;padding:3px}.order-sidebar{display:flex;flex-direction:column;min-height:0;overflow-y:auto;padding-right:2px}.order-heading{display:flex;align-items:center;justify-content:space-between;height:57px;min-height:57px}.order-heading h2{font-size:14px;font-weight:500;margin:0}.order-heading>span{font-size:10px;color:#a88e68}.order-card{border:1px solid var(--line);background:#fffdf6;border-radius:10px;padding:12px;margin-bottom:10px}.order-card.banquet{border-color:#d8ad7a;background:#fff4de}.order-top{display:flex;gap:9px;align-items:center}.order-top small{color:#b29a75;font-size:8px;letter-spacing:1px}.order-top h3{font-size:12px;margin:5px 0 0;font-weight:500}.order-card p{font-size:9px;line-height:1.8;color:#9c8666;margin:8px 0 9px}.patience{height:4px;background:#ede3cd;border-radius:5px;overflow:hidden}.patience>span{height:100%;display:block;transition:width .1s}.no-rush{font-size:9px;color:#8da082}.target-panel{padding:15px 0;border-top:1px solid var(--line);margin-top:10px}.target-panel small{font-size:8px;letter-spacing:2px;color:#ad9470}.target-panel b{font-size:12px;display:block;font-weight:500;margin:8px 0}.target-panel p{font-size:10px;line-height:1.9;color:#a28a65;margin:0}.side-bottom{margin-top:auto;padding-top:10px}.side-bottom .text-btn{font-size:11px}.side-bottom p{font-size:9px;color:#b09a78}.side-bottom svg{width:17px;height:17px}.side-bottom .secondary{font-size:10px;min-height:35px;padding:8px 13px}.empty-orders{font-size:12px;line-height:2;background:#f3ebd7;padding:20px;border-radius:10px;color:#9d8762}.tutorial-card{background:#eef0e1;border-radius:10px;padding:14px;margin:10px 0}.tutorial-card h3{font-size:12px;line-height:1.8;font-weight:500;margin:7px 0}.tutorial-card p,.tutorial-card small{font-size:9px;line-height:1.9;color:#8b9b79}.tutorial-card .text-btn{font-size:10px}#phase-overlay{display:none;position:absolute;inset:0;align-items:center;justify-content:center;background:#fff7e459;backdrop-filter:blur(4px);z-index:5}#phase-overlay.visible{display:flex}.countdown{display:flex;flex-direction:column;align-items:center;gap:15px}.countdown strong{font:85px Georgia,serif;color:#5c7b60}.countdown span{font-size:14px;color:#806c4e}.pause-card{background:#fffaf0ed;border:1px solid #dfcba5;padding:35px;min-width:330px;max-width:90%;border-radius:20px;display:flex;flex-direction:column;gap:13px;align-items:center;text-align:center;box-shadow:0 10px 35px #4b39251a}.pause-card h2{font:25px SimSun,serif;margin:0}.pause-card p{font-size:11px;color:#9e8662;margin:0;line-height:1.8}.pause-card small{font-size:10px;color:#9c8669}.pause-card .eyebrow{font-size:8px}.pause-card .primary{font-size:12px;min-height:42px}.pause-card .text-btn{padding:2px}.results-page,.after-page{max-width:1000px;margin:35px auto;text-align:center;padding:15px 35px}.results-page>.eyebrow,.after-page>.eyebrow{justify-content:center}.result-stars{display:flex;justify-content:center;gap:9px;margin:25px 0 10px;color:#e5d8bb}.result-stars svg{width:45px;height:45px;fill:currentColor;stroke-width:1}.result-stars .earned{color:#d8af5e}.results-page h1,.after-page h1{font-family:STSong,SimSun,serif;font-size:38px;font-weight:500;letter-spacing:2px;margin:19px 0}.results-page .lead,.after-page .lead{font-size:14px}.result-names{display:flex;justify-content:center;gap:20px;align-items:center;margin:25px 0}.result-names>span:not(.amp){font-size:12px;color:var(--apron);background:#fffaf0;border:1px solid var(--line);border-radius:20px;padding:7px 15px}.amp{color:#b1a17e;font:22px Georgia,serif}.result-metrics{display:flex;justify-content:center;gap:70px;margin:25px 0;padding:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.result-metrics strong{font:34px Georgia,serif;color:#8a734f;display:block;margin-bottom:8px}.result-metrics small{font-size:10px;color:#a58e6a}.result-buttons{display:flex;justify-content:center;align-items:center;gap:12px;margin:30px 0}.after-page{padding-top:40px}.after-symbol{display:block;margin:30px auto;color:#cd9b7d}.after-symbol svg{width:60px;height:60px}.after-choices{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:35px 0}.ending-table{background:#d3ab7a;border-radius:45px;max-width:420px;margin:25px auto;padding:17px 40px;display:flex;gap:50px;justify-content:center;flex-wrap:wrap;box-shadow:0 7px #b28c60}.table-plate{background:#fcf6de;border-radius:50%;padding:5px 15px;box-shadow:0 2px #c0b298}.table-plate img{width:60px;height:60px}.ending-table>span{font:11px serif;color:#795b3d;width:100%}.modal-backdrop{position:fixed;inset:0;background:#4a3b2c44;backdrop-filter:blur(6px);z-index:30;display:flex;justify-content:center;align-items:center;padding:25px}.modal{position:relative;background:#fffbf1;border:1px solid #e3d2b2;box-shadow:0 25px 100px #4635222b;border-radius:20px;width:600px;max-width:100%;max-height:90vh;overflow:auto;padding:35px}.modal.wide{width:960px}.modal-close{position:absolute;right:18px;top:17px;width:30px;height:30px}.modal-close svg{width:14px;height:14px}.modal h2{font-family:STSong,SimSun,serif;font-size:28px;font-weight:500;letter-spacing:1px;margin:18px 0}.modal>p{font-size:12px;color:#9b8463;line-height:1.9}.modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.modal label{color:#947b58}.modal form{display:flex;flex-direction:column;gap:13px;margin-top:23px}.modal form>label{font-size:11px}.recipe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:22px}.recipe-card{padding:16px 12px;background:#fffdf5;border:1px solid var(--line);border-radius:10px;position:relative}.recipe-food{width:70px;height:70px;display:block;margin:3px auto 14px}.recipe-card>span{font:9px monospace;position:absolute;top:12px;left:11px;color:#c7ae86}.recipe-card h3{font-size:12px;font-weight:500;margin:0 0 9px}.recipe-card p{font-size:10px;color:#a08a66;line-height:1.9;min-height:58px}.recipe-card small{font-size:8px;background:#f4ecdb;display:inline-block;padding:4px 5px;margin:0 3px 4px 0;border-radius:4px;color:#ac956f}.recipe-card .check-row{font-size:10px}.help-list{padding-left:25px;margin:25px 0}.help-list li{padding:0 0 12px 7px;color:#8e7653}.help-list b{font-size:13px}.help-list p{font-size:11px;line-height:1.9;color:#a08a68}.range-row{display:flex;align-items:center;gap:20px;margin:20px 0;font-size:12px}.range-row input{flex:1;accent-color:#7e976f}.key-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:24px}.key-button{display:flex;align-items:center;justify-content:space-between;padding:10px;background:#f5eddb;border:1px solid #e6d8bc;border-radius:6px;font-size:10px;color:#a08a68}.file-label input{display:none}.file-label{cursor:pointer;font-size:12px}.album-list{margin:20px 0;max-height:45vh;overflow-y:auto}.album-row{display:flex;gap:20px;border-bottom:1px solid var(--line);padding:14px 0;align-items:center}.album-row>span{font:23px Georgia,serif;color:#c6af88}.album-row b{font-size:12px;font-weight:500}.album-row p,.album-row small{font-size:10px;color:#ac9470;margin:5px 0}.album-row small{color:#9b815c}#toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,15px);background:#64543fed;color:#fff6df;font-size:12px;line-height:1.8;max-width:80vw;padding:13px 22px;border-radius:12px;opacity:0;pointer-events:none;transition:all .2s;z-index:99;box-shadow:0 8px 25px #5b412822}#toast.show{transform:translate(-50%);opacity:1}.reduced *,.reduced *:before,.reduced *:after{transition:none!important;animation:none!important}@media(min-width:1600px){.game-header{padding:0 45px}.play-layout{padding-top:25px;gap:32px;grid-template-columns:minmax(0,1fr) 290px}.order-card{padding:17px}.order-top h3{font-size:14px}.order-card p{font-size:11px}.canvas-wrap{max-height:calc(100vh - 230px)}}@media(max-width:1280px){.site-header{height:85px}.home-grid{padding-top:30px;padding-bottom:25px}.hero-copy h1{font-size:58px}.entry-card{padding:17px}.scene-caption{margin:22px 0}.lobby{padding-top:25px}.lobby-columns{grid-template-columns:290px 1fr;gap:28px}.partners .player-card{padding:13px 10px}.level-card{padding:12px 9px;gap:8px;min-height:70px}.level-number{font-size:21px}.start-row select{min-width:200px}.play-layout{gap:17px;padding-left:17px;padding-right:17px;grid-template-columns:minmax(0,1fr) 235px}.shift-stats{gap:17px}.shift-stats .coop-block{width:125px}.order-card{padding:10px}.game-header{padding:0 17px}}@media(max-height:780px){.site-header{height:83px}.home-grid{padding-top:25px;padding-bottom:20px}.hero-copy h1{font-size:59px;margin:17px 0 12px}.hero-copy .lead{font-size:14px}.feature-pills{margin:17px 0}.entry-card{padding:17px}.how-link{margin-top:10px}.lobby{padding-top:23px}.section-heading{margin-bottom:18px}.section-heading h1{font-size:31px;margin:10px 0}.player-card{min-height:87px;padding-top:10px;padding-bottom:10px}.soft-panel{margin-top:15px;padding:12px}.control-note{margin-top:13px}.level-card{min-height:67px;padding-top:11px;padding-bottom:11px}.mode-description{min-height:325px}.game-header{height:65px;min-height:65px}.play-layout{padding-top:8px}.canvas-wrap{max-height:calc(100vh - 195px)}.shift-stats,.order-heading{height:50px;min-height:50px}.game-bottom{padding-top:9px}.results-page{margin-top:15px}.results-page h1{font-size:31px}.result-stars{margin-top:15px}.result-metrics{margin:15px 0;padding:20px}.after-page{padding-top:20px}.order-card{margin-bottom:8px}.target-panel{padding-top:10px}.side-bottom{padding-top:4px}.modal{max-height:92vh}}@media(max-width:1050px){.home-grid{grid-template-columns:1fr 1fr;gap:30px}.hero-copy h1{font-size:52px}.scene-note{font-size:9px}.handwritten{font-size:14px}.hero-copy .eyebrow{font-size:8px;letter-spacing:2px}.entry-actions .secondary{padding-left:10px;padding-right:10px}.entry-actions .primary{font-size:12px}.game-header .brand small,.connection{display:none}.shift-title small{font-size:8px}.lobby-columns{grid-template-columns:260px 1fr;gap:20px}.level-grid{gap:7px}.mode-tabs button{font-size:10px;padding:8px}.level-card b{font-size:10px}.start-row .primary{font-size:12px;padding:12px}.start-row select{min-width:185px}.recipe-grid{grid-template-columns:repeat(2,1fr)}.game-bottom{font-size:9px}.shift-stats strong{font-size:19px}.shift-stats{gap:13px}#dish-count{display:none}}@media(max-width:850px),(max-height:550px){.small-window{display:flex;position:fixed;z-index:25;inset:auto 10px 10px;align-items:center;justify-content:space-between;gap:15px;background:#f5e8c8;box-shadow:0 3px 15px #70553633;border:1px solid #d0b88e;border-radius:12px;padding:18px;font-size:12px}.small-window .secondary{font-size:10px;padding:7px;min-height:30px}.home-grid{grid-template-columns:1fr;max-width:600px}.hero-scene{display:none}.lobby-columns{grid-template-columns:1fr}.site-header nav{gap:13px}.brand>span{font-size:16px}.brand>svg{width:30px;height:30px}.lobby .invite-box{padding-left:15px}.lobby .section-heading h1{font-size:25px}.play-layout{grid-template-columns:1fr 190px;gap:9px;padding-left:8px;padding-right:8px}.game-header .brand{display:none}.game-header{height:55px;min-height:55px}.recipe-grid{grid-template-columns:repeat(2,1fr)}.modal{padding:25px}.results-page h1,.after-page h1{font-size:27px}.result-metrics{gap:30px}.result-buttons{flex-wrap:wrap}}.canvas-wrap{max-width:calc((100vh - 218px) * 1.666667);flex-shrink:0}.lead,.micro,.player-card p,.soft-panel p,.control-note,.level-card small,.level-description p,.mode-description p,.mode-description small,.start-row label,.appearance-line,.order-card p,.order-top small,.target-panel p,.target-panel small,.side-bottom p,.game-bottom,.recipe-card p,.recipe-card small,.help-list p,.modal>p,.album-row p,.album-row small,.scene-note,.feature-pills,.how-link{color:#806c51}@media(max-height:780px){.canvas-wrap{max-width:calc((100vh - 195px) * 1.666667)}}@media(min-width:1600px){.canvas-wrap{max-width:calc((100vh - 230px) * 1.666667)}}.roof-memory{background:linear-gradient(#fff9edb8,#fff9ede8 65%,#fff9eda8),url(/roof-memory.svg) center top/cover fixed;min-height:100vh}.roof-memory .results-page,.roof-memory .after-page{background:#fff9edc9;border:1px solid #eadcc5;border-radius:24px;padding:12px 24px;backdrop-filter:blur(3px)}.table-plate small{display:block;font-size:10px;line-height:1.5;padding:0 0 7px}:root{--night:#182c31;--cream:#f3e7c9;--brass:#d4b879;--forest:#385f51;--line:#d5bf9840}body{background:#172d30;color:#f1e6cb}button,input,select{font-family:inherit}button{transition:filter .18s,transform .18s,background .18s}button:hover:not(:disabled){filter:brightness(1.1)}button:disabled{opacity:.42}.primary{background:linear-gradient(#d4ad6d,#bc8d50);color:#292f29;border:1px solid #edcd91;box-shadow:0 3px #6c4c2f,0 5px 18px #0002;font-weight:700}.primary:hover:not(:disabled){background:linear-gradient(#e2bb7a,#cc9e61)}.secondary{background:#f4e7cd;color:#514333;border-color:#dac9a7;box-shadow:0 2px #0002}.text-btn{color:#dccaa4}.icon-btn{color:#f5dfb4;border-color:#d4bd8055}.icon-btn:hover{background:#486654}.eyebrow{color:#a59d73}.micro,.lead{color:#b9bba2}kbd{background:#183e3440;border-color:#85806a;color:inherit}.site-header{height:76px;border:0;background:#17352ed9;padding:0 4%}.brand{color:#f2e5c7}.brand>svg{color:#d8a55b}.brand small{color:#bea67b}.site-header nav{gap:25px}.modal-backdrop{background:#0c2326b5;backdrop-filter:blur(10px)}.modal{background:linear-gradient(135deg,#fcf3e0,#eae0c7);border:1px solid #d8c397;box-shadow:0 20px 90px #0006;color:#423a2d;border-radius:18px}.modal .text-btn,.modal .icon-btn{color:#6e634a}.modal .icon-btn{border-color:#bca47a66}.modal>p,.modal .lead,.modal label,.modal .micro{color:#786847}.modal h2{color:#403b2f}.modal .recipe-card p,.modal .recipe-card small{color:#6c614c}.modal .recipe-card{background:#fff8e9;border-color:#d6c4a0}.modal .recipe-card h3{color:#40372e}.modal .recipe-card small{background:#e9ddbf}.modal .eyebrow{color:#8c7855}.modal .check-row{color:#6f674f}.modal .file-label{color:#514333}.modal-close{border-color:#9b875755}.modal .key-button{background:#e9dfc8;border-color:#d1c3a6;color:#5d533e}.modal .help-list p{color:#74684b}.modal .help-list b{color:#4f4b38}#toast{background:#f0e2bfd9;color:#3e3a2d;border:1px solid #c4a46c;box-shadow:0 8px 40px #0005}.title-screen{height:100svh;min-height:650px;position:relative;isolation:isolate;overflow:hidden;background:#162832 url(/art/title-evening-v2.png) center/cover no-repeat}.title-screen:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0b1a2be8 0%,#0c202bc7 25%,#0e25302b 57%,transparent 78%)}.title-vignette{position:absolute;inset:0;z-index:-1;background:linear-gradient(#07172444,transparent 30%,transparent 65%,#071824bb);box-shadow:inset 0 0 150px #06141e99}.title-nav{position:absolute;top:25px;left:40px;right:40px;display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:2px;color:#d2c5a5}.title-nav>div{display:flex;gap:26px}.title-nav .text-btn{font-size:12px;color:#f0dfba}.title-menu{position:absolute;left:9%;top:50%;transform:translateY(-46%);width:390px;max-width:39vw}.title-kicker{font:9px Georgia,serif;letter-spacing:3.5px;color:#d8ba78}.title-menu h1{font:500 clamp(35px,4vw,61px)/1.3 "STSong","SimSun",serif;letter-spacing:9px;color:#f8e8bd;margin:25px 0 18px;text-shadow:0 3px 20px #0008}.title-menu h1>span{display:block;font-size:1.55em;letter-spacing:20px;color:#f1d28b}.title-menu h1>em{font:italic 21px Georgia,serif;display:block;letter-spacing:2px;margin-top:8px;color:#d0bc91}.title-line{font:15px/1.95 SimSun,serif;letter-spacing:2px;color:#dcd6b9;margin:17px 0 25px}.title-entry{width:315px;max-width:100%}.title-entry>label{font-size:10px;letter-spacing:1px;color:#c0baa2}.title-entry .name-row{gap:12px;margin:10px 0 14px}.title-entry input:not([type=checkbox]){background:#102a2cc2;color:#f5e3bc;border-color:#bea57788;height:41px;border-radius:5px;box-shadow:inset 0 2px 6px #0004}.title-entry input::placeholder{color:#a4aa98}.title-entry .swatch{width:19px;height:19px;border-width:2px;outline-color:#edcb87}.title-entry .start-story{width:100%;justify-content:space-between;border-radius:5px;font-size:15px;min-height:46px;letter-spacing:2px}.start-story>span{font:20px Georgia,serif}.title-entry>.secondary{width:100%;margin-top:10px;background:#1a3838bc;color:#e8d4a6;border-color:#bc9d6466;border-radius:5px;font-size:13px;letter-spacing:2px;min-height:40px;box-shadow:0 4px 15px #0002}.title-extras{display:flex;gap:22px;margin-top:12px}.title-extras .text-btn{font-size:10px;letter-spacing:1px;color:#c5c1a5}.title-progress{font-size:10px;color:#b7b79c;letter-spacing:2px;margin-top:10px}.title-entry .invitation{color:#edc88a;font-size:10px}.title-entry .invitation button{display:block;color:#fff1c7;background:none;margin-top:5px}.title-footer{position:absolute;bottom:22px;left:40px;right:40px;display:flex;justify-content:space-between;color:#c1b897;font-size:9px;letter-spacing:2px}.title-postcard{position:absolute;right:5%;bottom:14%;padding:20px 25px;border-left:1px solid #ffdfa378;color:#f5dbab;transform:rotate(-3deg);text-shadow:0 2px 12px #000}.title-postcard>span{font:12px SimSun,serif;letter-spacing:5px}.title-postcard p{font:15px/1.8 SimSun,serif}.title-embers{position:absolute;inset:0;z-index:-1;pointer-events:none}.title-embers>i{position:absolute;width:3px;height:3px;border-radius:50%;background:#ffd988;box-shadow:0 0 12px #ffbc56;left:calc(45% + var(--i)*4%);bottom:calc(8% + var(--i)*6%);animation:ember 8s linear infinite;animation-delay:calc(var(--i)*-.7s)}@keyframes ember{0%,to{opacity:0;transform:translateY(15px)}50%{opacity:.65;transform:translateY(-25px)}}.lobby-v2{min-height:100svh;background:radial-gradient(ellipse at 60% 0%,#51706455,transparent 70%),#1c3739 url(/roof-memory.svg) bottom/cover fixed;background-blend-mode:normal,multiply;color:#eddfbd}.lobby-top{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 3.5%;background:#183432df;border-bottom:1px solid #a4997155;gap:25px}.lobby-wordmark{font:21px SimSun,serif;letter-spacing:4px;white-space:nowrap}.lobby-wordmark>small{font:7px Georgia,serif;letter-spacing:3px;display:block;margin-top:7px;color:#bca274}.lobby-top .invite-box{display:flex;align-items:center;gap:14px;border:0;background:none;padding:0}.invite-box>small{font-size:9px;letter-spacing:2px;color:#abb498}.room-code{color:#f0d496;background:transparent;font:24px Georgia,serif;letter-spacing:4px;padding:5px}.invite-box .secondary{background:#27493ecc;border:1px solid #9a9c6a66;color:#e7d4ab;min-height:34px;font-size:10px;border-radius:4px;padding:8px 12px}.lobby-tools{display:flex;gap:22px}.lobby-tools .text-btn{font-size:11px}.lobby-body{display:grid;grid-template-columns:270px minmax(0,1fr);gap:32px;max-width:1500px;margin:auto;padding:26px 3.5% 22px}.partners{background:linear-gradient(#294b40de,#1c3833eb);border:1px solid #a1986344;border-radius:12px;padding:22px 17px;align-self:start;box-shadow:0 15px 35px #0a25282a}.partners>.eyebrow{font-size:8px;letter-spacing:2px;color:#a9b295}.partners>h1{font:27px SimSun,serif;letter-spacing:3px;font-weight:400;color:#eddfb8;margin:16px 0 8px}.partner-intro{font-size:10px;line-height:1.8;color:#a9b79c;margin:0 0 16px}.player-card{background:#edf0d40a;border:1px solid #9aab8050;border-radius:8px;min-height:90px;padding:10px 8px;margin-bottom:10px;gap:8px}.player-card.is-ready{background:#6877483d;border-color:#c4b57588}.player-card h3{font-size:12px;color:#eadcba;margin:0 0 8px;font-weight:500;max-width:95px;overflow:hidden;text-overflow:ellipsis}.player-card .you{font-size:8px;margin-left:5px;color:#b3c1a2}.player-card p{font-size:9px;color:#abb89d;margin:0}.player-card .status-pill{font-size:8px;padding:4px 6px;background:#adc19b1a;color:#c4d1ad;border:0;white-space:nowrap}.player-card.empty{border-style:dashed;background:none}.waiting-chair{font-size:24px;color:#759480;width:52px;text-align:center}.appearance-line{display:flex;align-items:center;gap:8px;margin:16px 0;font-size:9px;color:#adb799}.appearance-line .swatch{width:19px;height:19px;border:2px solid #d8d5ac;outline:0}.appearance-line .swatch.selected{box-shadow:0 0 0 2px #d5b776}.appearance-line .text-btn{font-size:9px;margin-left:auto;padding:0}.sweet-choice{font-size:10px;margin-top:18px;color:#dfcfab;gap:6px}.sweet-choice input{accent-color:#e1b680}.sweet-note{font-size:8px;line-height:1.7;color:#9cad91;margin:8px 0 20px}.ready-button{width:100%;font-size:13px;min-height:43px;letter-spacing:2px}.leave-button{display:block;margin:4px auto 0;font-size:9px;color:#a5b297}.partner-controls{border-top:1px solid #a7b08b33;display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin-top:16px;padding-top:13px}.partner-controls kbd{font-size:8px;padding:3px;color:#cfdbbb}.partner-controls small{font-size:8px;color:#a6b597;margin-right:8px}.selection{min-width:0}.mode-tabs{display:flex;gap:5px;padding:4px;background:#18312c9c;border:1px solid #aa9e6e44;border-radius:8px;margin-bottom:14px}.mode-tabs button{flex:1;padding:12px 5px;color:#aabb9f;font-size:12px;background:none;border-radius:5px;border:1px solid transparent}.mode-tabs button.active{background:#d2b47a;color:#293d31;box-shadow:0 3px 9px #0002}.chapter-tabs{display:flex;gap:0;background:#21453e;border:1px solid #b5a47155;border-radius:8px 8px 0 0;overflow:hidden}.chapter-tabs button{flex:1;background:transparent;color:#b9c3a5;padding:12px 10px;border-right:1px solid #b5a47122;font-size:11px}.chapter-tabs button small{font:10px Georgia,serif;margin-right:10px;color:#b3b48f}.chapter-tabs button.active{background:#456c55;color:#f3e3b7}.town-map{height:305px;position:relative;overflow:hidden;border:1px solid #c3af7a55;border-top:0;background:#63876c}.map-landscape{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.town-map.region-1 .map-landscape{filter:brightness(.84) hue-rotate(13deg)}.town-map.region-2 .map-landscape{filter:brightness(.67) hue-rotate(25deg)}.map-region-name{position:absolute;top:16px;left:22px;pointer-events:none}.map-region-name>small{font:16px SimSun,serif;color:#ffefbf;letter-spacing:2px;text-shadow:0 2px 6px #163831}.map-region-name>p{font-size:9px;color:#dbe2bb;margin:6px 0 0}.map-stop{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-40%);background:none;color:#fff0c5;text-align:center;width:135px;padding:0;text-shadow:0 2px 5px #264534}.map-stop:active:not(:disabled){transform:translate(-50%,-40%)}.map-stop:disabled{opacity:.58}.map-stop.locked{filter:saturate(.5)}.map-stop>b{display:block;font-size:10px;font-weight:500;background:#213a32d6;border-radius:5px;padding:4px 6px;margin:6px auto 0;width:max-content;max-width:135px;line-height:1.5;box-shadow:0 3px 5px #0002}.map-stop>small{display:block;font-size:9px;color:#f1d393;margin-top:4px}.map-building{width:59px;height:43px;display:block;position:relative;margin:auto;background:#dec29a;border-radius:3px;box-shadow:5px 6px #3c533c55;border-bottom:6px solid #ac8762}.map-building>.roof{position:absolute;left:-6px;top:-17px;width:71px;height:23px;background:repeating-linear-gradient(90deg,#9d684a 0 8px,#b17a53 8px 10px);clip-path:polygon(13% 0,85% 0,100% 100%,0 100%)}.map-building>.shop-window{position:absolute;left:9px;top:12px;width:17px;height:17px;border:3px solid #98704d;background:#ffe7a1;box-shadow:0 0 18px #fbe997a1}.map-building>.shop-door{position:absolute;right:9px;top:9px;width:16px;height:28px;background:#5f7860;border:2px solid #b28d60}.map-building>em{position:absolute;top:-20px;right:-18px;background:#d0b77e;color:#2d3c30;border:2px solid #fff1bb;font:12px Georgia,serif;padding:5px;border-radius:50%;width:28px;height:28px;box-shadow:0 3px 8px #0004}.house-B{background:#d1c19c}.house-B>.roof{background:repeating-linear-gradient(90deg,#3b6c64 0 8px,#507f73 8px 10px)}.house-C{background:#ded0b0}.house-C>.roof{background:#45636c;clip-path:polygon(0 60%,100% 60%,100% 100%,0 100%)}.map-stop.selected .map-building{box-shadow:0 0 0 3px #f0d389,0 0 30px #fee59988,5px 6px #3c533c55}.map-stop.selected>b{background:#e4c98b;color:#293b2c;text-shadow:none}.map-preview{display:flex;align-items:center;gap:20px;padding:14px 19px;background:#1e3b34;border:1px solid #bdad7a55;border-top:0;border-radius:0 0 8px 8px;min-height:90px}.map-preview small{font-size:8px;letter-spacing:1px;color:#93ac8e}.map-preview h3{font:19px SimSun,serif;letter-spacing:1px;margin:8px 0;color:#f1dfb2}.map-preview p{font-size:10px;margin:0;color:#aab99a;line-height:1.5}.preview-foods{margin-left:auto;display:flex;gap:4px;flex-wrap:wrap;max-width:200px;justify-content:flex-end}.preview-foods>span{background:#f3e9cae8;border:1px solid #d4bc8e;padding:1px;border-radius:5px;height:37px}.preview-foods img{width:32px;height:32px}.shift-duration{font:12px Georgia,serif;color:#d9c185;white-space:nowrap}.decor-strip{display:flex;gap:7px;align-items:center;margin:15px 0 13px}.decor-strip>small{font-size:9px;color:#9eb395;margin-right:5px}.decor-chip{font-size:9px;padding:7px 11px;background:#213e34;color:#abb99b;border:1px solid #839b7055;border-radius:4px}.decor-chip.selected{background:#6e7950;color:#f0dfb6;border-color:#d3b66b99}.lobby-bottom .start-row{margin:0;padding:0;display:flex;align-items:center;justify-content:space-between;gap:20px}.start-row>div{display:flex;gap:15px;align-items:center}.start-row label{font-size:10px;color:#aabd9f;white-space:nowrap}.start-row select{background:#203f36;color:#ead9af;border-color:#9ba77b66;width:215px;min-width:200px;font-size:11px;padding:11px}.start-row .primary{min-width:180px;justify-content:space-between;font-size:14px}.mode-world{min-height:423px;background:radial-gradient(ellipse at 50% 0,#54745688,transparent),#274a3c;border:1px solid #b2aa6d55;border-radius:10px;padding:27px;text-align:center;position:relative;overflow:hidden}.mode-world h2{font:28px SimSun,serif;letter-spacing:2px;color:#f0dfb6;margin:26px 0 14px}.mode-world p{font-size:12px;line-height:1.9;color:#b6c0a3}.mode-world>small{font-size:10px;color:#aeb99d}.world-stamp{font:9px Georgia,serif;letter-spacing:4px;color:#cfb97c}.mode-world .theme-buttons{justify-content:center;margin:20px 0}.theme-buttons .secondary{font-size:10px;min-height:34px;padding:7px 12px;background:#183c32;color:#e0d3ad;border-color:#79947366}.theme-buttons .selected{background:#8e9863;color:#f7ebcc}.mode-world .menu-buttons{justify-content:center;margin:20px auto 15px;max-width:600px}.mode-world .menu-chip{background:#e8e0c6;color:#465342;border:1px solid #b6be9b;font-size:10px;padding:7px 10px}.mode-world .menu-chip.selected{background:#c9d0a0;color:#233d2b;border-color:#f0d28b;box-shadow:0 0 0 1px #d4b576}.duo-portraits{display:flex;justify-content:center;gap:45px;margin:35px 0 10px;transform:scale(1.7);height:75px}.tutorial-world h2{margin-top:35px}.tutorial-steps{display:flex;justify-content:center;gap:17px;margin:25px 0;color:#d7c894;font-size:10px}.chef-portrait{width:51px;height:64px;position:relative;flex-shrink:0;margin-right:2px;filter:drop-shadow(0 3px 1px #102a2733)}.portrait-head{position:absolute;top:18px;left:12px;width:29px;height:27px;background:#edc49f;border-radius:50%;z-index:2;box-shadow:inset -3px -3px #cf9b7866}.portrait-head>i{position:absolute;width:3px;height:4px;top:10px;left:7px;border-radius:50%;background:#493a32}.portrait-head>i:nth-child(2){left:19px}.portrait-head>b{position:absolute;bottom:1px;left:11px;color:#a46d53;font-size:13px;font-weight:400}.portrait-hat{position:absolute;left:7px;top:6px;width:38px;height:20px;background:#fff4d8;border-radius:50% 50% 5px 5px;text-align:center;color:var(--apron);z-index:3;font-size:13px;border-bottom:5px solid var(--apron)}.portrait-hat:before{content:"";position:absolute;left:10px;top:-7px;width:20px;height:15px;background:#fff4d8;border-radius:50%;z-index:-1}.portrait-body{position:absolute;bottom:0;left:10px;width:33px;height:27px;border-radius:12px 12px 7px 7px;background:var(--apron);border:5px solid #e9dcc0;border-top:0;text-align:center}.portrait-body>small{font:7px sans-serif;display:block;color:#fff4ce;margin-top:10px}.portrait-body:before,.portrait-body:after{content:"";position:absolute;top:0;width:8px;height:15px;border-radius:5px;background:#e8bb95}.portrait-body:before{left:-10px}.portrait-body:after{right:-10px}body[data-scene=game]{overflow:hidden;background:#172f31}.game-shell{background:radial-gradient(ellipse at center,#35534b,#162c30 90%);height:100svh}.game-header{height:63px;min-height:63px;border-bottom:1px solid #b4a87744;background:#15332ebf;padding:0 24px;box-shadow:0 3px 16px #0b232633}.game-header .brand>span{font-size:16px;color:#f1e0b5}.game-header .brand small{color:#b9a87e}.game-header .brand>svg{color:#d4ae6b}.game-header .shift-title>span{font-size:14px;color:#e9d4a6;letter-spacing:1px}.game-header .shift-title>small{color:#a4b298;font-size:9px}.game-header .connection{color:#afc09f;font-size:9px}.game-header .live-dot{background:#c1d28e}.game-header .game-actions .icon-btn{background:#244839;color:#e8d2a4;border-color:#9ea17355}.play-layout{max-width:none;grid-template-columns:minmax(0,1fr) 235px;gap:16px;padding:9px 16px;align-items:start}.world-column{min-height:0;justify-content:center}.shift-stats{height:45px;min-height:45px;padding:0 12px;background:#213f35b3;border:1px solid #88966a33;border-radius:8px 8px 0 0}.shift-stats small{font-size:8px;color:#a8b699}.shift-stats strong{font:24px Georgia,serif;color:#ebd7a4}.shift-stats>div{gap:9px}.shift-stats .coop-block{width:160px}.coop-meter{background:#14352d;height:5px;margin-top:6px}.coop-meter span{background:linear-gradient(90deg,#8caa73,#ebcb76)}#dish-count{color:#b3bd9b;font-size:9px}.canvas-wrap{width:100%;height:auto;aspect-ratio:14/9;max-width:calc((100svh - 181px)*1.555556);max-height:calc(100svh - 181px);background:#233f3c;border-radius:2px 2px 10px 10px;box-shadow:0 12px 35px #0b20274d,0 0 0 1px #a49b6f44;flex:none;overflow:hidden}.canvas-wrap canvas{width:100%;height:100%;object-fit:contain}.world-column .game-bottom{width:100%;font-size:9px;line-height:1.7;padding:9px 8px 5px;color:#c2c6a6}.game-bottom>span:first-child{color:#e5d4a6;font-size:10px}.game-bottom kbd{background:#d8c8a51c;border-color:#959c703d;color:#ede0bc}.game-message{min-height:22px;height:auto;font-size:10px;color:#e8c988;padding:2px 5px}.order-sidebar{height:calc(100svh - 82px);background:#1b3832a6;padding:0 11px 9px;border:1px solid #ad9e6c44;border-radius:9px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#7a8a5c #213f35}.order-heading{height:45px;min-height:45px;color:#eee0bd;border-bottom:1px solid #9da37533;margin-bottom:12px}.order-heading h2{font:16px SimSun,serif;letter-spacing:2px}.order-heading>span{font-size:9px;color:#b3b797}.order-card{position:relative;isolation:isolate;background:linear-gradient(110deg,#f6ebd1,#e6d9b6);border:1px solid #e1c997;border-radius:3px 3px 7px 7px;padding:12px 11px;margin-bottom:13px;box-shadow:0 4px #0a272833,0 8px 12px #0a272822;color:#443c2f}.order-card:before{content:"";position:absolute;top:-4px;left:30px;right:30px;height:5px;background:#a58c5e66;clip-path:polygon(0 0,100% 0,100% 100%,0 100%);z-index:-1}.ticket-pin{position:absolute;width:28px;height:8px;left:calc(50% - 14px);top:-5px;background:#bd9b61;border:1px solid #735c3c;border-radius:2px;box-shadow:0 2px 2px #0003}.order-card.banquet{background:linear-gradient(135deg,#f2d294,#ead7aa);border-color:#d7b169}.order-card .food-icon{height:44px;width:44px;filter:drop-shadow(0 3px 2px #785e3444)}.order-top{gap:8px}.order-top small{font-size:8px;color:#877353;letter-spacing:0}.order-top h3{font-size:12px;font-weight:700;color:#453d2f;margin:5px 0 0;line-height:1.6}.order-card p{font-size:9px;line-height:1.85;color:#786746;margin:8px 0 10px}.patience{height:5px;background:#d9cbac}.patience>span{background:#78926b}.order-card .no-rush{color:#647e56;font-size:9px}.target-panel{border-top:1px solid #aeb38144;padding:12px 0 9px;margin-top:8px}.target-panel small{font-size:8px;color:#9aae8f;letter-spacing:2px}.target-panel b{font-size:12px;color:#e7d3a2;margin:8px 0}.target-panel p{font-size:9px;line-height:1.9;color:#b0bda0}.side-bottom{padding-top:6px;margin-top:auto}.side-bottom .text-btn{font-size:10px;color:#d0d0a9}.side-bottom p{font-size:8px;color:#97ad8d;line-height:1.7}.side-bottom .secondary{font-size:9px;min-height:29px;padding:5px 9px;margin:2px}.tutorial-card{background:#5b76544d;border:1px solid #a8ad6b55;padding:12px;border-radius:6px;margin:10px 0}.tutorial-card h3{font-size:11px;color:#efe0b9;line-height:1.8}.tutorial-card p,.tutorial-card small{font-size:9px;color:#bdc7a4}.tutorial-card .text-btn{font-size:9px}.empty-orders{background:#4a654d66;color:#bdc5a1;border:1px dashed #7f9b6a66;font-size:10px;padding:14px}.empty-orders b{font-size:12px;color:#d6d4ab}#phase-overlay{background:#102c2bb3;backdrop-filter:blur(7px)}.pause-card{background:linear-gradient(#f2e5c9,#dfd0ae);border-color:#d2b876;box-shadow:0 15px 60px #0005;color:#493d2d}.pause-card h2{color:#4a3f30}.pause-card .eyebrow{color:#988252}.pause-card p{color:#7e6d4e}.pause-card .text-btn{color:#6f664c}.countdown{color:#ead9ad;text-align:center;gap:0;padding:25px}.countdown small{font-size:10px;letter-spacing:5px;color:#c7b985}.countdown h2{font:32px SimSun,serif;letter-spacing:4px;margin:18px 0 12px;color:#f5e5bd}.countdown p{font-size:12px;letter-spacing:1px;color:#b6c4a5}.countdown strong{color:#f0cd80;font:72px Georgia,serif;margin-top:12px;text-shadow:0 0 30px #f9ce6544}.finale-screen{position:relative;max-width:1200px;margin:auto;color:#ecdcb7;padding:0 25px 20px}.finale-heading{text-align:center;position:absolute;z-index:2;top:22px;left:0;right:0;pointer-events:none}.finale-heading>small{font:9px Georgia,serif;letter-spacing:5px;color:#d7c68f}.finale-heading h1{font:31px SimSun,serif;letter-spacing:4px;margin:14px 0 9px;color:#f8e6ba;text-shadow:0 3px 15px #122e3d}.finale-heading p{font-size:10px;color:#bec9b1;letter-spacing:2px}.ending-world{aspect-ratio:14/9;max-height:calc(100svh - 231px);max-width:calc((100svh - 231px)*1.55556);margin:auto;position:relative;overflow:hidden;border-radius:0 0 15px 15px;box-shadow:0 10px 50px #0004}.ending-world canvas{display:block;width:100%;height:100%;object-fit:contain}.finale-footer{display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap;padding-top:19px}.finale-footer .ending-table{background:transparent;box-shadow:none;margin:0;padding:0;gap:9px;max-width:none;border-radius:0}.finale-footer .ending-table:before{display:none}.finale-footer .table-plate{display:flex;align-items:center;border-radius:7px;padding:1px 8px;background:#294b3a;border:1px solid #8c996155;box-shadow:none;gap:5px}.finale-footer .table-plate img{width:32px;height:32px}.finale-footer .table-plate small{color:#dacb9d;font-size:9px;padding:0}.finale-stats{font-size:9px;color:#a6b69b;display:flex;gap:15px}.finale-stats b{color:#e4c68a;font:17px Georgia,serif;margin-left:6px}.finale-footer .result-buttons{margin:0;gap:10px}.finale-footer .result-buttons .primary,.finale-footer .result-buttons .secondary{min-height:36px;font-size:10px;padding:9px 14px}.finale-footer .result-buttons p{font-size:10px;color:#a9b79b}@media(max-height:780px){.finale-heading{top:17px}.finale-heading h1{font-size:25px;margin:10px 0}.finale-heading>small{font-size:8px}.finale-footer{gap:15px;padding-top:13px}.finale-stats{display:none}.ending-world{max-height:calc(100svh - 201px);max-width:calc((100svh - 201px)*1.55556)}}.lobby-top .invite-box{flex-direction:row}.map-stop>b{font-size:11px;max-width:150px;padding:5px 7px}.map-stop>small{font-size:10px}.map-region-name>small{font-size:17px}.map-region-name>p{font-size:10px}.order-card p{font-size:10px;line-height:1.85}.order-top h3{font-size:13px}.target-panel p{font-size:10px;line-height:1.8}.target-panel small{font-size:9px}.side-bottom p,.shift-stats small{font-size:10px}.game-bottom>span:first-child{font-size:11px}.game-message{font-size:11px}.title-screen .title-entry input:not([type=checkbox]):not([type=range]):not([type=file]){background:#102a2cdd;color:#f5e3bc;border-color:#bea57788;height:41px;box-shadow:inset 0 2px 6px #0004}body[data-scene=results],body[data-scene=after]{background:linear-gradient(#0b2636ad,#0e2c28d9),url(/art/title-evening-v2.png) center/cover fixed}.results-page,.after-page{background:#193d33ed;border:1px solid #c1ac704d;border-radius:12px;color:#eadbb5;box-shadow:0 15px 75px #0004;max-width:900px;margin:23px auto;padding:24px 35px}.roof-memory .results-page,.roof-memory .after-page{background:#1a3b31ed;border-color:#a59f6955;padding:18px 35px}.results-page h1,.after-page h1{color:#f0dfb4}.results-page .lead,.after-page .lead{color:#b4c1a0}.result-stars{color:#536346;margin:10px 0}.result-stars .earned{color:#edc578;filter:drop-shadow(0 0 8px #f7da6677)}.result-names{margin:15px 0}.result-names>span:not(.amp){color:#f5e2b7;background:#31523d;border-color:#a1a07166;font-size:11px}.result-metrics{border-color:#a69d5e44;margin:15px 0;padding:17px;gap:65px}.result-metrics strong{font-size:30px;color:#e5c586}.result-metrics small{font-size:9px;color:#acbc98}.result-buttons{margin:20px 0 8px}.result-buttons .primary,.result-buttons .secondary{font-size:12px}.ending-table{background:#a57c50;box-shadow:0 7px #675039,0 12px 20px #0003;gap:32px;padding:18px 28px;position:relative}.ending-table:before{content:"";position:absolute;left:50%;top:25px;width:8px;height:34px;background:#efe4bc;border-radius:3px;box-shadow:0 -7px 8px #ffe58f}.ending-table>span{color:#f4e1b7}.table-plate{background:#e7dfbd;box-shadow:0 3px 1px #6b694444}.table-plate small{color:#665032;font-size:9px}.after-symbol{color:#e1b677;margin:20px auto}.after-choices .secondary.selected{background:#cbb57b}.after-page .micro{color:#aebd9c}.after-page .text-btn{color:#d8d0a6}.achievement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.achievement{background:#e8ddc3;border:1px solid #cab995;border-radius:8px;text-align:center;padding:17px 10px;filter:saturate(.4);opacity:.7}.achievement.earned{background:radial-gradient(ellipse at top,#fff3cd,#e1d0a5);border-color:#b69b5d;filter:none;opacity:1}.achievement>span{font:34px Georgia,serif;color:#967e4c;display:block;margin:5px}.achievement.earned>span{color:#9c712c;filter:drop-shadow(0 2px 5px #d3ac5a77)}.achievement h3{font-size:13px;margin:10px 0;color:#4b4433}.achievement p{font-size:10px;line-height:1.8;color:#857454;min-height:18px}.achievement>small{font-size:9px;color:#90774c}.guestbook-heading{font:20px SimSun,serif;border-top:1px solid #b49d6b66;padding-top:23px;margin-top:25px}.guestbook{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:20px}.guestbook>article{display:flex;gap:13px;align-items:center;padding:15px;border:1px solid #c3b18d;border-radius:8px;opacity:.65;background:#e7ddc6}.guestbook>article.met{opacity:1;background:#f5ead1}.guest-portrait{background:var(--guest);width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font:19px SimSun,serif;color:#fff3d3;flex-shrink:0;border:3px solid #dfc89a}.guestbook h3{font-size:12px;color:#554735;margin:0 0 7px}.guestbook h3 small{font-size:8px;font-weight:400;margin-left:7px;color:#99815d}.guestbook p{font-size:10px;line-height:1.8;margin:0;color:#877451}.story-prose{font-size:13px!important;line-height:2.2!important}.album-row{border-color:#ccb79355}.album-row b{color:#534632}.album-row p,.album-row small{color:#887354}.album-row>span{color:#af8f56}.reduced .title-embers{display:none}.reduced .title-screen{background-attachment:initial}@media(min-width:1600px){.play-layout{grid-template-columns:minmax(0,1fr) 270px;padding:13px 24px;gap:20px}.canvas-wrap{max-height:calc(100svh - 190px);max-width:calc((100svh - 190px)*1.555556)}.order-card{padding:17px}.order-top h3{font-size:14px}.order-card p{font-size:11px}.order-sidebar{height:calc(100svh - 90px)}.lobby-body{padding-top:36px;gap:40px;grid-template-columns:300px 1fr}.town-map{height:400px}.partners{padding:25px}.map-preview{padding:20px}.mode-world{min-height:527px}.title-menu{left:10%;width:430px}.title-entry{width:350px}.title-menu h1{font-size:65px}.title-line{font-size:17px}.title-entry .start-story{height:52px}.title-entry>.secondary{height:46px}}@media(max-height:780px){.title-screen{min-height:600px}.title-nav{top:18px}.title-menu{top:49%;transform:translateY(-45%)}.title-menu h1{font-size:38px;margin:15px 0 12px;letter-spacing:7px}.title-menu h1>span{font-size:1.55em;letter-spacing:15px}.title-menu h1>em{font-size:17px}.title-line{font-size:13px;line-height:1.8;margin:14px 0 17px}.title-entry>label{font-size:9px}.title-entry .name-row{margin:7px 0 10px}.title-entry .start-story{min-height:42px}.title-entry>.secondary{margin-top:8px;min-height:36px;padding:8px}.title-extras{margin-top:5px}.title-progress{font-size:9px;margin-top:7px}.title-postcard{bottom:13%;right:4%}.lobby-top{height:63px}.lobby-body{padding-top:18px;gap:23px;grid-template-columns:250px minmax(0,1fr)}.partners{padding:17px 14px}.partners>h1{margin-top:11px;font-size:25px}.player-card{min-height:83px}.appearance-line{margin:12px 0}.sweet-choice{margin-top:12px}.sweet-note{margin-bottom:14px}.town-map{height:280px}.map-preview{min-height:80px;padding:11px 15px}.mode-world{min-height:393px;padding:20px}.mode-world h2{font-size:26px}.decor-strip{margin:11px 0}.mode-tabs button{padding:10px 4px;font-size:11px}.game-header{height:57px;min-height:57px}.play-layout{padding-top:7px;gap:13px;grid-template-columns:minmax(0,1fr) 218px}.canvas-wrap{max-height:calc(100svh - 170px);max-width:calc((100svh - 170px)*1.555556)}.shift-stats{height:42px;min-height:42px}.order-sidebar{height:calc(100svh - 72px);padding:0 10px 8px}.order-heading{height:42px;min-height:42px;margin-bottom:10px}.order-card{padding:10px;margin-bottom:12px}.order-card p{margin:6px 0 8px;font-size:8px}.order-top .food-icon{width:36px;height:36px}.order-top h3{font-size:11px}.target-panel{padding:9px 0}.target-panel p{font-size:9px;line-height:1.7}.side-bottom .text-btn{font-size:9px}.results-page,.after-page{margin:15px auto;padding:15px 30px}.results-page h1{font-size:28px;margin:12px 0}.result-stars svg{width:34px;height:34px}.result-names{margin:12px 0}.ending-table{margin:15px auto}.result-metrics{gap:65px}.roof-memory .results-page{padding:12px 25px}.site-header{height:65px}}@media(max-width:1280px){.lobby-body{gap:18px;padding-left:2%;padding-right:2%;grid-template-columns:238px minmax(0,1fr)}.lobby-top{padding:0 2%;gap:15px}.lobby-wordmark{font-size:18px}.lobby-tools{gap:15px}.town-map{height:275px}.map-preview p{font-size:9px}.preview-foods{max-width:170px}.preview-foods img{width:28px;height:28px}.preview-foods>span{height:33px}.map-preview{gap:12px}.start-row select{min-width:190px;width:190px}.start-row .primary{min-width:157px}.play-layout{grid-template-columns:minmax(0,1fr) 208px;padding-left:12px;padding-right:12px;gap:12px}.game-header{padding:0 16px}.game-header .brand>span{font-size:14px}.game-header .brand small{font-size:5px}.game-header .connection{display:none}.shift-stats{gap:19px;padding:0 8px}.shift-stats .coop-block{width:135px}.title-menu{left:7%;max-width:42vw}.title-footer,.title-nav{left:28px;right:28px}.map-stop{width:125px}.map-stop>b{font-size:9px}.map-region-name>small{font-size:14px}.decor-chip{padding:6px 8px;font-size:8px}}@media(max-width:1000px){.title-menu{left:7%;max-width:52vw}.title-screen:before{background:linear-gradient(90deg,#0c1d2bed,#10272bbd 42%,#12282e33 80%)}.title-postcard{display:none}.title-footer>span:nth-child(2){display:none}.lobby-body{grid-template-columns:210px 1fr;gap:15px}.lobby-tools .text-btn{font-size:9px}.lobby-wordmark{font-size:15px}.chapter-tabs button{font-size:9px}.chapter-tabs button small{display:none}.map-stop>b{font-size:8px}.map-stop{width:100px}.map-building{transform:scale(.85)}.map-preview{flex-wrap:wrap}.preview-foods{margin-left:0}.map-preview>div:first-child{width:100%}.shift-duration{margin-left:auto}.lobby-bottom .start-row{gap:10px}.start-row>div{display:block}.start-row label{display:block;margin-bottom:7px}.start-row select{width:170px;min-width:170px}.decor-strip{flex-wrap:wrap}.play-layout{grid-template-columns:minmax(0,1fr) 180px;gap:8px;padding-left:8px;padding-right:8px}.game-header .brand{display:none}.game-header .shift-title{align-items:flex-start}.shift-stats #dish-count{display:none}.order-top h3{font-size:10px}.order-card p{font-size:8px}.order-top .food-icon{width:30px;height:30px}.world-column .game-bottom{font-size:8px;flex-wrap:wrap}.game-bottom>span:first-child{max-width:100%}.game-bottom>span:last-child{display:none}.guestbook{grid-template-columns:1fr}.achievement-grid{grid-template-columns:1fr 1fr}.canvas-wrap{max-height:calc(100svh - 170px);max-width:calc((100svh - 170px)*1.555556)}}@media(max-width:750px){.title-menu{max-width:80vw;left:10%;width:350px}.title-nav>span{font-size:8px}.title-nav>div{gap:13px}.title-nav .text-btn{font-size:9px}.lobby-body{display:block}.partners{margin-bottom:16px}.lobby-tools,.lobby-top .invite-box .secondary{display:none}.town-map{height:270px}.play-layout{grid-template-columns:minmax(0,1fr) 170px}.game-header .shift-title>span{font-size:11px}.game-header .shift-title>small{font-size:8px}.shift-stats small{font-size:7px}.shift-stats strong{font-size:17px}.shift-stats .coop-block{width:80px}.shift-stats{gap:10px}.recipe-grid{grid-template-columns:repeat(2,1fr)}}
