/* Restaurant presentation, scoped to the current Midnight Kitchen. */
.chaos-page[data-midnight=true]{--cream:#f0e2c1;--muted:#a8b597;--ink:#101f19;--copper:#dcaf72;background:var(--ink);height:100svh;min-height:320px;font-family:Arial,'PingFang SC','Microsoft YaHei',sans-serif}
[data-midnight=true] .chaos-header{height:64px;padding:0 22px;background:none;border:0}
[data-midnight=true] .chaos-header>a{font-size:13px;letter-spacing:.02em}
[data-midnight=true] .chaos-header>a span{font:8px/1.5 Arial,sans-serif;letter-spacing:0}
[data-midnight=true] .chaos-wordmark{font:italic 23px Georgia,serif}
[data-midnight=true] .chaos-header nav{gap:4px}
[data-midnight=true] .chaos-header button{border:0;min-width:44px;min-height:44px;background:transparent}
[data-midnight=true] .chaos-board{inset:0;width:100%;height:100%;overflow:hidden}
[data-midnight=true] .chaos-board canvas{width:100%;height:100%}
[data-midnight=true] .chaos-gate{inset:0;align-items:flex-end;justify-content:center;background:linear-gradient(transparent 38%,#0b15121a 48%,#0b1512df 100%);padding:0 20px max(32px,env(safe-area-inset-bottom));pointer-events:none}
[data-midnight=true] .chaos-gate>div{border:0;box-shadow:none;background:none;text-align:center;padding:0;max-width:100%;width:540px;pointer-events:auto}
[data-midnight=true] .chaos-gate h1{font-size:clamp(38px,6vw,64px);line-height:1.1;letter-spacing:-.045em;margin:0 0 18px;text-shadow:0 2px 20px #0b1512}
[data-midnight=true] .chaos-gate h1 em{color:var(--cream)}
[data-midnight=true] .chaos-gate p{font-size:13px;color:#e5d9b9;line-height:1.7;margin:0 0 22px}
[data-midnight=true] .chaos-primary{background:#dcaf72;border:1px solid #e4c18b;border-radius:2px;box-shadow:0 3px #876442;font-size:15px;padding:14px 25px;min-height:49px;transition:transform .15s,background .15s}
[data-midnight=true] .chaos-primary:hover{background:#e8c58d}
[data-midnight=true] .chaos-primary:active{transform:translateY(2px);box-shadow:0 1px #876442}
[data-midnight=true] .recipe-book-entry{border:0!important;background:none!important;font:10px/1.4 Arial,sans-serif!important;letter-spacing:.12em;margin:14px auto 0!important;padding:12px!important;min-height:44px;opacity:.82}
[data-midnight=true] .recipe-book-entry span{font:11px monospace;letter-spacing:0;margin-left:10px}
[data-midnight=true][data-mode=paused] .chaos-gate{align-items:center;background:#0b1512c9}
[data-midnight=true][data-mode=paused] .chaos-gate h1{font-size:38px}
[data-midnight=true][data-mode=playing] .chaos-header,[data-midnight=true][data-mode=replay] .chaos-header{height:58px;padding:0 8px 0 18px;pointer-events:none}
[data-midnight=true][data-mode=playing] .chaos-header>a,[data-midnight=true][data-mode=replay] .chaos-header>a{opacity:.36;font-size:11px;pointer-events:auto}
[data-midnight=true]:is([data-mode=playing],[data-mode=replay]) .chaos-header>a span,[data-midnight=true]:is([data-mode=playing],[data-mode=replay]) .chaos-wordmark,[data-midnight=true]:is([data-mode=playing],[data-mode=replay]) .chaos-header [data-kpin=help],[data-midnight=true]:is([data-mode=playing],[data-mode=replay]) .chaos-header [data-kpin=audio]{display:none}
[data-midnight=true] .chaos-header [data-kpin=pause]{pointer-events:auto;opacity:.72;font-size:18px}
[data-midnight=true] .timed-hud{top:max(64px,env(safe-area-inset-top));left:20px;transform:none;width:calc(100% - 40px);max-width:480px;text-shadow:0 1px 9px #071810;transition:opacity .25s}
[data-midnight=true] .timed-top{align-items:flex-start;min-height:45px}
[data-midnight=true] .timed-top b{margin:7px 0 0;font-size:12px;font-weight:400;letter-spacing:.035em;color:#e7ddc2}
[data-midnight=true] .timed-timer{gap:3px;flex-direction:column;align-items:center;min-width:38px}
[data-midnight=true] .timed-timer time{font:36px/.95 'Courier New',monospace;letter-spacing:-2px}
[data-midnight=true] .timed-timer small{font:8px/1.3 monospace;letter-spacing:.13em;color:#b5bda5}
[data-midnight=true] .timed-tray{background:none;border-radius:0;padding:5px 0 0;gap:9px;justify-content:flex-start;align-items:center;max-width:calc(100% - 28px)}
[data-midnight=true] .timed-tray>span{display:flex;gap:1px;min-width:0;opacity:.3;align-items:center}
[data-midnight=true] .timed-tray>span.has-food{opacity:1}
[data-midnight=true] .timed-tray img{display:block;width:27px;height:27px;object-fit:contain}
[data-midnight=true] .timed-tray b{font:10px monospace;font-weight:400}
[data-midnight=true] .timed-tray .rare{padding:0;border:0}
[data-midnight=true] .timed-tray .rare:not(.has-food){display:none}
[data-midnight=true]:is([data-mode=intro],[data-mode=paused],[data-mode=result]) .timed-hud,[data-midnight=true]:is([data-phase=cooking],[data-phase=plating]) .timed-hud{display:none}
[data-midnight=true] .chaos-touch-zones{inset:40% 0 0;z-index:3}
[data-midnight=true] .chaos-touch-zones button{border:0!important;background:none!important;box-shadow:none!important}
[data-midnight=true]:is([data-mode=intro],[data-mode=paused],[data-mode=result]) .chaos-touch-zones{display:none}
.midnight-tap{position:absolute;z-index:5;pointer-events:none;transform:translate(-50%,-100%);text-align:center;color:#f0e2c1;text-shadow:0 2px 6px #071a13;animation:midnight-tap 1.2s ease-in-out infinite}
.midnight-tap b{display:block;font:16px/1 monospace;letter-spacing:.09em}
.midnight-tap span{display:block;font:10px/1.8 Arial,sans-serif;margin-top:5px}
.midnight-event{position:absolute;z-index:5;pointer-events:none;transform:translate(-50%,-100%);width:max-content;max-width:180px;text-align:center;color:#e4c68e;font:10px/1.7 Arial,sans-serif;white-space:pre-line;text-shadow:0 2px 8px #04190c,0 1px 3px #04190c;animation:midnight-event .22s ease-out}
[data-midnight=true] .timed-finale{background:none;border:0;bottom:8%;width:90%;padding:0;pointer-events:none;text-shadow:0 2px 20px #091a12}
[data-midnight=true] .timed-finale h2{font-size:26px;text-wrap:balance;margin:8px 0;line-height:1.25}
[data-midnight=true] .timed-finale p{font:11px/1.5 Arial,sans-serif;color:#d2c7a8}
[data-midnight=true][data-last-seconds=true] .timed-timer{color:#f1ba80}
/* The first result screen is a dish and a punchline; the notebook starts below it. */
.chaos-page[data-midnight=true][data-mode=result]{height:auto;min-height:100svh;overflow:visible;touch-action:pan-y;padding:0}
[data-midnight=true][data-mode=result] .chaos-board{position:absolute;margin:0;min-height:0;height:100svh;width:66%;left:-4%;right:auto;top:0}
[data-midnight=true] .chaos-result{position:relative;padding:0!important;inset:auto!important;width:100%;max-width:none!important;max-height:none!important;transform:none!important;overflow:visible!important;background:none;border:0;box-shadow:none;padding:0;margin:0}
.midnight-result-hero{margin-left:65%;width:31%;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:100px 0 70px}
[data-midnight=true] .chaos-overline{font:9px/1.6 Arial,sans-serif;letter-spacing:.11em;color:#a9b79c}
[data-midnight=true] .chaos-result h1{font:600 clamp(35px,4.1vw,65px)/1.12 Arial,'PingFang SC',sans-serif;letter-spacing:-.045em;text-wrap:balance;margin:20px 0 17px;color:var(--cream)}
[data-midnight=true] .recipe-formal-name{font-size:13px!important;line-height:1.7;color:#cbb68a;letter-spacing:0!important;margin:0 0 26px}
[data-midnight=true] .chaos-result-actions{width:100%;display:flex;flex-direction:column;gap:13px;margin:0}
[data-midnight=true] .chaos-result-actions button{min-height:46px}
[data-midnight=true] .midnight-again{border:0;border-bottom:1px solid #b5c29d44;border-radius:0;background:none;font-size:14px;padding:11px 2px;box-shadow:none;color:#d0d2b4}
.midnight-below{border:0;background:none;padding:0;font-size:10px;color:#a7b89c;margin-top:26px;min-height:30px;text-decoration:none}
.midnight-details{position:relative;max-width:760px;margin:0 auto;padding:65px 26px 90px;text-align:left;border-top:1px solid #bdc4a633;scroll-margin-top:20px}
.midnight-story blockquote{margin:16px 0!important;background:none!important;padding:0!important;font-size:25px!important;color:#e5d1a5;line-height:1.5}
.midnight-story p{font:14px/1.9 Arial,sans-serif;color:#aebd9e}
[data-midnight=true] .recipe-flavors{margin:30px 0 20px;padding:16px 0;border-color:#a8b39338}
[data-midnight=true] .recipe-portions span{display:flex;align-items:center;gap:5px}
[data-midnight=true] .recipe-portions img{width:25px;height:25px}
[data-midnight=true] .chaos-process{font:11px/1.8 monospace!important;color:#acba9b;border:0!important}
[data-midnight=true] .chaos-result-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin:25px 0 0}
[data-midnight=true] .chaos-result-links button{min-height:44px;background:none;border:0;border-bottom:1px solid #b5c29d44;font-size:12px;padding:8px 0;color:#c8d0b0}
/* A small illustrated menu, built from the actual model family. */
#modal.midnight-menu-modal{width:min(880px,calc(100% - 24px));max-width:880px;max-height:92svh;border:1px solid #d2ba883f;border-radius:2px;background:#eee2c7;color:#254032;padding:32px 32px 28px;box-shadow:0 20px 100px #0008}
.midnight-menu-modal .modal-close{position:sticky;top:0;float:right;background:#eee2c7;color:#284133;border:1px solid #7d8c6666;z-index:2}
.midnight-menu-head{text-align:center;padding:10px 0 30px;border-bottom:2px solid #355741}
.midnight-menu-head>p{font:italic 20px Georgia!important;margin:0 0 13px!important;color:#4b634b}
.midnight-menu-head h2{font:italic clamp(30px,5vw,48px)/1.1 Georgia!important;margin:0 0 17px!important;color:#203d2d}
.midnight-menu-head>span{font:15px monospace;display:block}
.midnight-menu-head small{display:block;margin-top:9px;font-size:11px;color:#6b7860}
.midnight-menu-modal .recipe-book{display:block;margin:0}
.menu-spread{margin:30px 0 38px}
.menu-spread h3{font:13px Arial,sans-serif;display:flex;align-items:baseline;gap:14px;border-bottom:1px solid #6b785f55;padding-bottom:12px}
.menu-spread h3>span{font:20px Georgia,serif;letter-spacing:.1em;color:#254d37}
.menu-spread>div{display:grid;grid-template-columns:repeat(3,1fr);gap:25px 18px}
.midnight-menu-modal .recipe-book-item{border:0;border-bottom:1px dotted #84917477;border-radius:0;padding:0 0 12px;background:none}
.midnight-menu-modal .recipe-book-item summary{display:block;position:relative;min-height:0;padding:12px 0 0;list-style:none}
.midnight-menu-modal .recipe-book-item summary img{display:block;object-fit:contain;width:100%;aspect-ratio:1;background:transparent;mix-blend-mode:multiply}
.midnight-menu-modal .recipe-book-item.locked img{filter:brightness(0);opacity:.17}
.midnight-menu-modal .recipe-book-item strong{font-size:14px;line-height:1.5;letter-spacing:0;text-wrap:balance;min-height:22px;color:#23432e}
.midnight-menu-modal .recipe-book-item small{font-size:10px;line-height:1.6;color:#69765b;margin-top:5px}
.midnight-menu-modal .recipe-book-item summary>b{font-size:9px;line-height:1.5;display:block;margin-top:10px;font-weight:400;color:#727b64}
.menu-number{font:10px monospace!important;color:#667755!important;position:absolute;top:10px;left:0}
.midnight-menu-modal .recipe-book-item p{font-size:11px!important;line-height:1.7!important;padding-top:12px;color:#536b4a!important}
.midnight-menu-foot{font-size:11px;line-height:1.8;color:#647557;text-align:center;border-top:2px solid #355741;padding:23px 0 0}
#modal.midnight-share-modal{background:#142b20;color:#eadfbd;border:1px solid #9aad8277;border-radius:2px}
.midnight-share-modal h2{color:#f0e2c1}.midnight-share-modal p{color:#c4c9ac}.midnight-share-modal .modal-close{color:#f0e2c1}.midnight-share-modal .share-url-input{background:#0d2016;color:#b9c9a6;border:1px solid #657859}
@keyframes midnight-tap{50%{opacity:.35;transform:translate(-50%,-94%)}}
@keyframes midnight-event{from{opacity:0;transform:translate(-50%,-80%)}to{opacity:1;transform:translate(-50%,-100%)}}
@media(min-width:701px){[data-midnight=true] .timed-hud{left:50%;transform:translateX(-50%);width:min(430px,45vw)}[data-midnight=true] .chaos-gate{align-items:center;justify-content:flex-start;padding-left:6vw;background:linear-gradient(90deg,#0b1512b3,transparent 60%)}[data-midnight=true] .chaos-gate>div{width:430px;text-align:left}[data-midnight=true] .recipe-book-entry{margin-left:0!important;padding-left:0!important}}
@media(max-width:700px){[data-midnight=true] .chaos-header{height:55px;padding:0 16px}[data-midnight=true] .chaos-wordmark{font-size:18px}[data-midnight=true] .chaos-header [data-kpin=audio],[data-midnight=true] .chaos-header [data-kpin=help]{display:none}[data-midnight=true] .chaos-gate{padding-bottom:max(28px,env(safe-area-inset-bottom))}[data-midnight=true] .chaos-gate h1{font-size:43px}[data-midnight=true][data-mode=result] .chaos-board{width:100%;left:0;height:51svh;top:35px}[data-midnight=true] .midnight-result-hero{margin:0;padding:52svh 24px 32px;width:100%;min-height:100svh;justify-content:flex-start;text-align:center;align-items:center}[data-midnight=true] .chaos-result h1{font-size:clamp(28px,8vw,38px);margin:15px 0 11px;max-width:410px}[data-midnight=true] .recipe-formal-name{font-size:12px!important;margin-bottom:20px}[data-midnight=true] .chaos-result-actions{max-width:380px;gap:7px}[data-midnight=true] .chaos-result-actions button{font-size:14px;min-height:46px}[data-midnight=true] .midnight-below{margin-top:18px;font-size:10px}.midnight-details{padding:40px 24px 65px}.midnight-story blockquote{font-size:21px!important}#modal.midnight-menu-modal{padding:22px 18px}.menu-spread>div{grid-template-columns:repeat(2,1fr);gap:20px 14px}.midnight-menu-head{padding:15px 0 25px}.midnight-menu-modal .recipe-book-item strong{font-size:13px}}
@media(max-width:360px){[data-midnight=true] .timed-hud{left:12px;width:calc(100% - 24px)}[data-midnight=true] .timed-tray{gap:4px}[data-midnight=true] .timed-tray img{width:24px;height:24px}[data-midnight=true] .chaos-gate h1{font-size:36px}[data-midnight=true] .chaos-gate p{font-size:11px}[data-midnight=true] .midnight-result-hero{padding-inline:18px}[data-midnight=true] .chaos-overline{font-size:8px;letter-spacing:.05em}}
@media(max-height:650px) and (max-width:700px){[data-midnight=true][data-mode=result] .chaos-board{height:44svh;top:30px}[data-midnight=true] .midnight-result-hero{padding-top:45svh;min-height:100svh}[data-midnight=true] .chaos-result h1{font-size:28px;margin:10px 0}[data-midnight=true] .recipe-formal-name{margin-bottom:14px}[data-midnight=true] .midnight-below{margin-top:10px}[data-midnight=true] .chaos-gate{padding-bottom:16px}[data-midnight=true] .chaos-gate h1{font-size:34px;margin-bottom:12px}[data-midnight=true] .chaos-gate p{margin-bottom:16px}}
@media(min-width:701px) and (max-height:520px){[data-midnight=true] .timed-hud{left:18px;transform:none;width:220px;top:62px}[data-midnight=true] .chaos-gate h1{font-size:32px}[data-midnight=true] .chaos-gate{padding-left:5vw}[data-midnight=true] .midnight-result-hero{padding-top:70px;padding-bottom:35px;margin-left:62%;width:34%}[data-midnight=true] .chaos-result h1{font-size:30px}[data-midnight=true] .chaos-result-actions button{min-height:44px}[data-midnight=true] .recipe-formal-name{margin-bottom:13px}}
@media(prefers-reduced-motion:reduce){.midnight-tap,.midnight-event{animation:none}[data-midnight=true] *{transition:none!important;scroll-behavior:auto!important}}

[data-midnight=true] .timed-hud::before{content:"";position:absolute;z-index:-1;inset:-70px -22px -28px;background:linear-gradient(#0b1512bd,#0b151255 62%,transparent);pointer-events:none}
@media(min-width:701px){[data-midnight=true] .chaos-gate h1{font-size:58px}}
@media(min-width:701px) and (max-height:520px){[data-midnight=true] .chaos-gate h1{font-size:36px}}

[data-midnight=true] .chaos-result h1>span{display:inline-block}
[data-midnight=true] .chaos-result-actions>button.midnight-again{border:0;border-bottom:1px solid #b5c29d44;border-radius:0;background:none;padding:10px 2px}

/* Enamel restaurant: tangible controls, quieter HUD, food under a pass light. */
.chaos-page[data-midnight=true]{--cream:#eee1c5;--muted:#9fac9e;--ink:#10221f;--copper:#c4a270;background:var(--ink)}
[data-midnight=true] .chaos-header{padding-inline:26px;color:#dfd5ba}
[data-midnight=true] .chaos-wordmark{font-size:21px;letter-spacing:-.035em;text-align:center;text-shadow:0 2px 10px #06120e}
[data-midnight=true] .chaos-wordmark small{display:block;font:9px/1.8 'PingFang SC',sans-serif;letter-spacing:.25em;color:#bbbfaa}
[data-midnight=true] .chaos-header>a{font-weight:500}
[data-midnight=true] .chaos-header button:focus-visible,[data-midnight=true] button:focus-visible{outline:2px solid #edd29f;outline-offset:4px}
[data-midnight=true] .chaos-primary{position:relative;border-radius:7px;border:1px solid #b49b6b;background:linear-gradient(#e1c897,#bfa071);color:#1e322b;box-shadow:inset 0 1px #f4e0b5,inset 0 -2px #9d7d54,0 5px 16px #0004;font-weight:600;font-size:14px;letter-spacing:.04em;padding:15px 32px;min-height:50px}
[data-midnight=true] .chaos-primary:hover{background:linear-gradient(#ead3a5,#cbb183)}
[data-midnight=true] .chaos-primary:active{box-shadow:inset 0 2px 4px #7e654466,0 1px 6px #0004;transform:translateY(2px)}
[data-midnight=true] .chaos-gate{background:linear-gradient(transparent 32%,#0a191823 49%,#091815ed 90%)}
.midnight-open-sign{display:inline-flex;align-items:center;gap:8px;font:9px/1.5 monospace;letter-spacing:.12em;color:#c8bc9e;margin-bottom:18px}
.midnight-open-sign i{width:5px;height:5px;border-radius:50%;background:#b0b997;box-shadow:0 0 10px #c4ce9955}
[data-midnight=true] .chaos-gate h1{font-weight:500;line-height:1.15;letter-spacing:-.04em}
[data-midnight=true] .chaos-gate h1 em{font-style:normal;color:#d6be91}
[data-midnight=true] .chaos-gate p{color:#bdc2af}
[data-midnight=true] .recipe-book-entry{font-size:11px!important;letter-spacing:.06em;color:#c0c7b6}
[data-midnight=true] .timed-hud{top:max(68px,env(safe-area-inset-top));left:24px;width:calc(100% - 48px)}
.midnight-flavor-label{display:block;font:7px/1.5 monospace;letter-spacing:.15em;color:#b1b7a2;opacity:.85}
[data-midnight=true] .timed-top b{display:block;margin-top:4px;font-size:13px;letter-spacing:.02em;font-weight:500}
[data-midnight=true] .timed-timer{position:relative;padding:0 0 0 15px;border-left:1px solid #d9c9a433}
[data-midnight=true] .timed-timer time{font-size:34px;font-variant-numeric:tabular-nums;color:#ecdcbb}
[data-midnight=true] .timed-tray{padding-top:6px;gap:9px}
[data-midnight=true] .timed-tray img{width:29px;height:29px;filter:drop-shadow(0 2px 3px #0005)}
[data-midnight=true] .timed-tray b{font-size:10px;color:#d3c9b1}
[data-midnight=true] .timed-hud::before{inset:-75px -26px -20px;background:linear-gradient(#061512d9,#0b1a1766 55%,transparent)}
.midnight-event{font-size:11px;color:#e5c98f;letter-spacing:.025em}
[data-midnight=true] .chaos-result h1{font-weight:500;letter-spacing:-.035em;line-height:1.2}
[data-midnight=true] .chaos-overline{letter-spacing:.1em;color:#a7b5a7}
[data-midnight=true] .chaos-overline b{font:10px/1 monospace;color:#d6bf93;border-left:1px solid #b5a580;margin-left:12px;padding-left:12px}
[data-midnight=true] .recipe-formal-name{color:#b6bca9}
[data-midnight=true] .midnight-below{color:#aebcae}
[data-midnight=true] .chaos-result-actions{max-width:330px}
[data-midnight=true] .midnight-again{color:#c9d0bc}
[data-midnight=true] .midnight-details{border-color:#b4bb9c2c}
#modal.midnight-menu-modal{background:#e7ddc5;border-radius:8px;box-shadow:0 25px 90px #0009,inset 0 0 0 5px #d8c7a53d}
.midnight-menu-modal .modal-close{border-radius:50%;width:44px;height:44px}
.midnight-menu-modal .recipe-book-item summary img{mix-blend-mode:normal}
#modal.midnight-share-modal{background:#152d26;border:1px solid #a5916855;border-radius:9px}
@media(min-width:701px){[data-midnight=true] .timed-hud{left:50%;width:min(430px,45vw)}[data-midnight=true] .chaos-gate{background:linear-gradient(90deg,#081713dc,transparent 68%)}[data-midnight=true] .chaos-gate>div{width:450px}.midnight-open-sign{margin-bottom:26px}}
@media(max-width:700px){[data-midnight=true] .chaos-header{padding-inline:18px}[data-midnight=true] .chaos-wordmark{font-size:18px}[data-midnight=true] .chaos-wordmark small{font-size:8px}[data-midnight=true] .chaos-gate h1{font-size:40px;margin-bottom:14px}[data-midnight=true] .chaos-gate p{font-size:12px;margin-bottom:20px}[data-midnight=true] .chaos-primary{min-width:195px}[data-midnight=true] .chaos-result-actions{max-width:330px}[data-midnight=true] .midnight-result-hero{padding-top:52svh}[data-midnight=true] .chaos-result h1{font-size:clamp(27px,7.6vw,36px)}}
@media(max-width:360px){[data-midnight=true] .timed-hud{left:15px;width:calc(100% - 30px)}[data-midnight=true] .timed-tray{gap:5px}[data-midnight=true] .timed-tray img{width:25px;height:25px}[data-midnight=true] .chaos-gate h1{font-size:34px}.midnight-open-sign{margin-bottom:12px}}
@media(max-height:650px) and (max-width:700px){[data-midnight=true] .midnight-result-hero{padding-top:45svh}[data-midnight=true] .chaos-result h1{font-size:27px}[data-midnight=true] .chaos-gate h1{font-size:33px}.midnight-open-sign{margin-bottom:10px}}
@media(min-width:701px) and (max-height:520px){[data-midnight=true] .timed-hud{left:18px;width:220px}[data-midnight=true] .chaos-gate h1{font-size:34px}.midnight-open-sign{margin-bottom:14px}}

/* Bistro: a brass kitchen timer and a quiet, physical catch indicator. */
[data-midnight=true] .timed-hud{display:grid;grid-template-columns:1fr;gap:2px}
[data-midnight=true] .timed-top{min-height:48px}
[data-midnight=true] .timed-timer{border:1px solid #b0996266;border-radius:9px;padding:7px 9px 5px;background:linear-gradient(135deg,#354538ec,#142c23f0);box-shadow:inset 0 1px #e9d4a32e,0 4px 12px #0005;min-width:67px;position:absolute;right:0;top:-6px}
[data-midnight=true] .timed-timer time{font:32px/.95 'Courier New',monospace;letter-spacing:-1px}
[data-midnight=true] .timed-timer small{font:9px/1.4 'PingFang SC',sans-serif;letter-spacing:.04em;color:#c5bea5}
.midnight-streak{width:170px;position:relative;display:flex;gap:9px;align-items:center;padding:3px 0 8px;color:#d6cbaa;pointer-events:none}
.midnight-streak b{font:11px/1.3 'PingFang SC',sans-serif;white-space:nowrap}
.midnight-streak span{font:8px/1.4 'PingFang SC',sans-serif;white-space:nowrap;color:#aab7a6}
.midnight-streak i{position:absolute;bottom:1px;left:0;width:100%;height:2px;background:#b7b58d2e}
.midnight-streak i:after{content:'';display:block;height:100%;width:var(--progress,0%);background:#d8bb80;transition:width .18s}
[data-midnight=true][data-charged=true] .midnight-streak b{color:#f4cc80}
[data-midnight=true] .timed-tray{padding-top:2px}
[data-midnight=true] .timed-top>div:first-child{padding-right:80px}
.midnight-flavor-label{font:9px/1.4 'PingFang SC',sans-serif;letter-spacing:.13em}
[data-midnight=true][data-opening=true] .timed-hud{opacity:0}
[data-midnight=true] .chaos-gate p{max-width:310px;margin-inline:auto;text-wrap:balance}
[data-midnight=true][data-mode=result]{background:radial-gradient(ellipse at 29% 27%,#24433655,transparent 48%),#10221f}
[data-midnight=true] .chaos-result-actions .chaos-primary{letter-spacing:0}
.midnight-menu-head h2{font-family:'Songti SC','Noto Serif SC',serif!important;font-style:normal!important}
@media(min-width:701px){[data-midnight=true] .chaos-gate p{margin-inline:0}[data-midnight=true] .timed-hud{width:min(430px,45vw)}}
@media(max-width:360px){[data-midnight=true] .timed-hud{top:57px}.midnight-streak{width:156px;gap:6px}.midnight-streak span{font-size:8px}[data-midnight=true] .timed-timer{min-width:59px;padding:6px}[data-midnight=true] .timed-timer time{font-size:29px}}
@media(min-width:701px) and (max-height:520px){[data-midnight=true] .timed-hud{width:235px}}

/* Chef's pass: one lit target in the world, a quiet shift ledger outside play. */
.chef-mission{position:relative;padding:2px 80px 4px 0;color:#e6d1a5}
.chef-mission b{font:11px/1.4 'PingFang SC',sans-serif;letter-spacing:.08em}
.chef-mission i{font:13px/1 monospace;font-style:normal;margin-left:9px;letter-spacing:3px;color:#d3ad6c}
.chef-mission span{display:block;font:11px/1.5 'PingFang SC',sans-serif;color:#b5c4b6;margin-top:3px}
.chef-mission em{position:absolute;right:0;bottom:7px;font:11px monospace;color:#d9c8a4}
.chef-mission[data-ready=true] span{color:#efcc82}
[data-midnight=true] .club-entry-row{display:flex;gap:18px;justify-content:center;margin-top:13px}
[data-midnight=true] .club-entry-row button,[data-midnight=true] .club-result-actions button{background:transparent;border:0;border-bottom:1px solid #d4c39f44;border-radius:0;color:#d5ccae;font:12px/1.5 'PingFang SC',sans-serif;min-height:44px;padding:7px 0}
[data-midnight=true] .recipe-book-entry{display:inline-block!important;margin:4px 9px!important;min-height:35px;padding:5px!important}
[data-midnight=true] .club-result-strip{display:flex;gap:16px;align-items:center;margin-top:14px;border-top:1px solid #d1ba8733;padding-top:11px;text-align:left;color:#e3d0a7}
.club-result-strip>b{font:26px/1 'Courier New',monospace}.club-result-strip>b small{font:10px sans-serif;margin-left:4px}.club-result-strip>span{font-size:12px}.club-result-strip>span small{display:block;font-size:10px;color:#9eafa3;margin-top:5px}
[data-midnight=true] #club-result-status{font:10px/1.6 'PingFang SC',sans-serif;margin:8px 0 0;color:#b1c0ad}
[data-midnight=true] .club-result-actions{display:flex;flex-wrap:wrap;gap:0 16px;justify-content:center}
[data-midnight=true] .club-result-actions button{font-size:11px;min-height:36px}
[data-midnight=true] .club-result-actions .club-hidden{display:none}
#modal.midnight-club-modal{background:#e7ddc5;color:#203c31;border:1px solid #9b885f;border-radius:7px;max-width:540px;padding:30px 25px;box-shadow:0 20px 80px #0008}
.midnight-club-modal .modal-close{color:#234437;min-height:44px;min-width:44px}
.club-paper h2{font:500 28px/1.25 'Songti SC','Noto Serif SC',serif!important;letter-spacing:-.02em;margin:6px 0 16px!important;color:#214135}
.club-paper p{font:13px/1.8 'PingFang SC',sans-serif!important;color:#56654e;margin:14px 0}
.club-eyebrow{font:10px/1.4 monospace!important;letter-spacing:.13em;color:#6c765e!important}
.club-paper .button{background:transparent;border:1px solid #91a085;border-radius:5px;color:#284a39;font:13px/1.4 'PingFang SC',sans-serif;min-height:44px;margin:7px 0}
.club-paper .button.primary{background:#284b3d;color:#f2e5c2;border-color:#254535;box-shadow:inset 0 1px #62826a}
.club-my-rank{padding:17px 0;border-bottom:2px solid #2c4a39;font-size:12px}.club-my-rank b{display:block;margin-top:5px}
.club-board{padding:0;list-style:none;margin:0}.club-board li{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid #a0aa913d}.club-board li>b{font:italic 23px Georgia;width:28px;text-align:center}.club-board li>div{flex:1;min-width:0}.club-board strong{font-size:13px;display:block}.club-board small{display:block;font-size:10px;font-weight:400;line-height:1.7;color:#63745b}.club-board span{font-size:11px;color:#63745b}.club-board em{font:20px 'Courier New',monospace;text-align:right}.club-board .is-me{background:#cad0b77a;margin-inline:-10px;padding-inline:10px}
.club-fine{display:block;font:11px/1.8 'PingFang SC',sans-serif;color:#64745a;margin-top:17px}.club-empty{padding:40px 15px;text-align:center;font:16px/1.8 'Songti SC',serif;color:#4c664e;border-bottom:1px solid #a0aa9155}
.club-discovery{border-left:2px solid #8f7650;padding-left:12px;font-size:11px!important}.club-discovery strong{display:block;font-size:13px}
.club-stats{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid #8f9d8055;padding:22px 0;gap:12px}.club-stats b{display:block;font:25px monospace;color:#294c39}.club-stats span{display:block;font-size:11px;color:#69755d;margin-top:7px}
.club-check{display:flex;gap:10px;align-items:flex-start;font:12px/1.7 'PingFang SC',sans-serif;margin:19px 0 5px}.club-check input{accent-color:#294c39;width:19px;height:19px;flex:0 0 auto;margin:1px 0}
.club-paper textarea{box-sizing:border-box;display:block;width:100%;min-height:98px;resize:vertical;background:#f3ead5;color:#294734;border:1px solid #93a183;border-radius:4px;padding:14px;font:14px/1.6 monospace;overflow-wrap:anywhere;margin:15px 0}
.club-paper .text-button{min-height:44px;color:#516b52}
@media(min-width:701px){[data-midnight=true] .club-entry-row{justify-content:flex-start}[data-midnight=true] .recipe-book-entry:first-child{margin-left:0!important}}
@media(max-width:700px){[data-midnight=true][data-mode=result] .chaos-board{height:43svh}[data-midnight=true] .midnight-result-hero{padding-top:44svh}[data-midnight=true] .chaos-result h1{font-size:clamp(26px,7vw,34px);margin-top:9px}[data-midnight=true] .midnight-below{margin-top:9px}[data-midnight=true] .recipe-formal-name{margin-bottom:12px}}
@media(max-height:650px) and (max-width:700px){[data-midnight=true] .midnight-result-hero{padding-top:37svh}[data-midnight=true][data-mode=result] .chaos-board{height:36svh}[data-midnight=true] .chaos-gate h1{font-size:29px}.midnight-open-sign{margin-bottom:8px}[data-midnight=true] .chaos-gate p{margin-bottom:12px}}
[data-midnight=true][data-version="18"] .chef-mission>b,[data-midnight=true][data-version="18"] .chef-mission>i{display:none}
[data-midnight=true][data-version="18"] .chef-mission{padding-bottom:1px}
[data-midnight=true][data-version="18"] .midnight-streak{padding:1px 0 4px}
[data-midnight=true][data-version="18"] .midnight-streak span{display:none}
.club-recent{border-top:1px solid #a0aa9155}.club-recent a{display:block;padding:12px 0;border-bottom:1px solid #a0aa9155;color:#294c39;font:13px/1.6 'PingFang SC',sans-serif;text-decoration:none}.club-recent small{display:block;color:#67775e;font-size:11px}
[data-midnight=true] .midnight-event{max-width:min(230px,70vw);white-space:normal;text-align:center;line-height:1.55;text-shadow:0 1px 5px #10221f}

/* Leave a real gutter between the dinner vignette and the result caption. */
@media(max-width:700px){[data-midnight=true][data-mode=result] .chaos-board{top:30px;height:39svh}}
@media(max-height:650px) and (max-width:700px){[data-midnight=true][data-mode=result] .chaos-board{top:27px;height:32svh}}

/* Small brass cues and a folded next-shift ticket share the restaurant palette. */
.encore-lane{position:absolute;z-index:5;transform:translate(-80%,-5%);display:flex;align-items:center;gap:5px;pointer-events:none;color:#f1d19a;text-shadow:0 1px 8px #091812;background:#10221fcc;border:1px solid #c4a27066;border-radius:4px;padding:6px 8px}
.encore-lane i{font:27px/1 Georgia,serif;font-style:normal}.encore-lane span{font:10px/1.45 'PingFang SC',sans-serif}
.encore-promotion{position:absolute;z-index:6;left:50%;top:32%;transform:translateX(-50%);width:max-content;max-width:80%;padding:13px 22px 14px;text-align:center;pointer-events:none;background:linear-gradient(120deg,#1c312aee,#10221fee);border-block:1px solid #c4a27099;box-shadow:0 7px 20px #06100a33;color:#eeddb6}
.encore-promotion small{display:block;font:9px/1.4 'PingFang SC',sans-serif;letter-spacing:.17em;color:#abb9a5}.encore-promotion b{display:block;font:18px/1.6 'PingFang SC',sans-serif;letter-spacing:.06em}.encore-promotion span{display:block;font:12px/1.5 'PingFang SC',sans-serif;color:#e4bc7b}
.encore-target{position:absolute;top:auto;bottom:max(17px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);white-space:nowrap;background:#10221fe6;border:1px solid #c4a27044;border-radius:4px;color:#e6d1a5;font:11px/1.5 'PingFang SC',sans-serif;padding:7px 12px;pointer-events:none;z-index:5}
.encore-goal{width:100%;margin-top:22px;padding:16px 0 0;border-top:1px solid #c4a27044;color:#ded3b6;text-align:left}
.encore-goal>small,.encore-comparison>small,.encore-invite>small{display:block;color:#aebba9;font:9px/1.5 'PingFang SC',sans-serif;letter-spacing:.09em}
[data-midnight=true] .encore-goal h2{font:15px/1.5 'PingFang SC',sans-serif;margin:8px 0 3px;color:#e5ce9f}
[data-midnight=true] .encore-goal p{font:11px/1.7 'PingFang SC',sans-serif;margin:0;color:#aebbab}
[data-midnight=true] .encore-goal button,[data-midnight=true] .encore-comparison button{border:0;border-bottom:1px solid #bda37266;background:none;border-radius:0;color:#e2c78f;padding:8px 0;font:12px/1.5 'PingFang SC',sans-serif;min-height:44px;text-align:left}
.encore-goal details{margin-top:5px;font-size:10px;color:#9ead9f}.encore-goal summary{cursor:pointer;padding:8px 0}.encore-goal details p{max-width:340px}
.encore-invite{border-left:2px solid #c4a270;padding:3px 12px;margin:3px 0 17px;text-align:left}.encore-invite b{display:block;font:16px/1.6 'PingFang SC',sans-serif;color:#e6d1a5}.encore-invite span{display:block;font:10px/1.5 'PingFang SC',sans-serif;color:#b6c1ae;max-width:280px}
.encore-comparison{width:100%;margin-top:17px;text-align:left;border-top:1px solid #c4a27044;padding-top:13px}
[data-midnight=true] .encore-comparison h2{font:17px/1.5 'PingFang SC',sans-serif;color:#ead5a7;margin:6px 0}
[data-midnight=true] .encore-comparison p{font:13px/1.6 'PingFang SC',sans-serif;margin:0 0 4px}.encore-comparison>span{font:11px/1.6 'PingFang SC',sans-serif;color:#adbaa5;display:block}
.encore-share .encore-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.encore-share .encore-choices button{border:1px solid #ad997666;background:#142920;color:#e2d0a8;border-radius:5px;padding:13px 12px;text-align:left;min-height:82px}
.encore-share .encore-choices button[aria-pressed=true]{border-color:#e4c184;background:#294033;box-shadow:inset 0 0 0 1px #c4a27077}
.encore-choices b{font-size:15px;display:block}.encore-choices span{font:11px/1.5 'PingFang SC',sans-serif;display:block;color:#b9c2ab;margin-top:6px}
.encore-share blockquote{margin:14px 0 20px;border-left:2px solid #c4a270;padding:7px 0 7px 15px;font:16px/1.7 'PingFang SC',sans-serif;color:#ecd9ac}.encore-share .button{margin-top:8px}.encore-share-note{font-size:11px!important;line-height:1.7!important}.encore-share textarea{font-size:11px;max-height:75px}
#modal.midnight-share-modal .button{background:transparent;color:#eeddb6;border:1px solid #c4a27066;border-radius:5px;box-shadow:none;min-height:48px}
#modal.midnight-share-modal .button.primary{background:linear-gradient(#e0c797,#b99e70);color:#18362b;border-color:#dfc795;box-shadow:inset 0 1px #f7e6c4,inset 0 -2px #6e592755}
#modal.midnight-share-modal .button:focus-visible,.encore-share button:focus-visible{outline:2px solid #f0d395;outline-offset:3px}
#modal.midnight-share-modal .button:disabled{opacity:.6;cursor:wait}
.encore-share .club-eyebrow{color:#aebba9!important}
@media(max-width:700px){.encore-promotion{top:31%;padding:10px 15px}.encore-goal{max-width:330px}.encore-invite{width:100%;max-width:330px}.encore-invite b{font-size:14px}.encore-invite span{font-size:10px}.encore-comparison{max-width:330px}.encore-target{font-size:10px;max-width:90%;white-space:normal}}
@media(min-width:701px) and (max-height:600px){.encore-promotion{top:28%;left:65%;font-size:12px}.encore-target{left:40%}}
@media(prefers-reduced-motion:no-preference){.encore-promotion:not([hidden]){animation:encore-stamp .24s ease-out}@keyframes encore-stamp{from{opacity:0;transform:translate(-50%,-4px)}to{opacity:1;transform:translate(-50%,0)}}}
