/* Route and rewards extend the burgundy/gold truck, with game-sized touch controls. */
.adventure-screen .community-content{padding:10px 14px 26px;max-width:780px;color:#322519;background:#fff8e9ed;border-radius:20px 20px 0 0;overscroll-behavior:contain}
.adventure-screen .panel-bg{filter:blur(3px) brightness(.5)}
.adventure-screen button,.adventure-screen select,.adventure-modal button,.adventure-modal select{touch-action:manipulation}
.adventure-screen h2{font-size:20px;margin:0 0 6px;line-height:1.2}.adventure-screen p{line-height:1.5}.adventure-intro{font-size:14px;margin:10px 0 17px;color:#69533c}.adventure-status{font-size:14px;line-height:1.5}.adventure-status:empty{display:none}
.route-controls{position:relative;z-index:3}.route-modes,.route-shortcuts,.adventure-tabs{display:flex;gap:6px;margin:0 0 9px}.route-modes button,.adventure-tabs button,.route-shortcuts button{flex:1;min-width:0;border:1px solid #c7b695;background:#f6ead1;color:#653622;padding:10px 6px;border-radius:10px;font-size:14px;font-weight:800;min-height:42px}.route-modes button[aria-selected=true],.adventure-tabs button[aria-selected=true]{background:#802b37;color:#fff5dd;border-color:#802b37;box-shadow:0 3px 0 #57202b}.route-shortcuts button{background:#fffdf6;font-size:13px}.route-chapters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:12px 0}.route-chapters button{background:#e9ddc4;border:2px solid transparent;border-radius:10px;padding:8px 4px;min-width:0;font-size:12px;font-weight:800;line-height:1.3;color:#4c3822}.route-chapters button[aria-selected=true]{border-color:#c4912d;background:#ffefb0}.route-chapters span{display:block;font-size:23px;margin-bottom:4px}.route-chapters small{display:block;font-size:12px;font-weight:500;margin-top:3px}.route-event{padding:10px 12px;background:#ffe49a;border:1px solid #cb9b3a;border-radius:10px;font-size:14px;line-height:1.4}
.route-map{border-radius:18px;overflow:hidden;position:relative;background:#c9d5a8;box-shadow:0 8px 20px #32231926}.route-scene{height:210px;background-size:cover;background-position:center;position:relative}.route-scene>div{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:24px 20px;color:#fff;background:linear-gradient(transparent,#201513bd)}.route-scene h2{font-size:30px;color:#fff}.route-scene small{font-size:13px;letter-spacing:.05em;text-transform:uppercase}.route-scene span{font-size:14px}.route-trail{position:relative;background:linear-gradient(#d6dfb3,#b1c692 60%,#d4deb8);margin-top:-1px}.route-trail svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.road-edge{fill:none;stroke:#f7e9c7;stroke-width:24;stroke-linecap:round}.road-line{fill:none;stroke:#b8a480;stroke-width:3;stroke-dasharray:8 8}.route-node{position:absolute;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50%;border:3px solid #fff2c2;background:linear-gradient(#db9c33,#a8571e);box-shadow:0 5px 0 #743c21,0 8px 10px #29441840;color:#fff7da;padding:0;font-size:24px;font-weight:900;z-index:1}.route-node.is-current{background:linear-gradient(#ffda58,#dc9a26);color:#572c17;outline:4px solid #fff5c8;outline-offset:5px;animation:node-glow 2.2s ease-in-out infinite}.route-node.is-won{background:linear-gradient(#a24c53,#712531)}.route-node.is-locked{background:#74856b;border-color:#bfc7aa;box-shadow:0 4px 0 #526448;opacity:.8;font-size:19px}.node-stars{position:absolute;bottom:-20px;left:-8px;width:72px;letter-spacing:1px;text-align:center;font-size:17px;line-height:20px;color:#e3b532;text-shadow:0 1px 1px #3c3a18,1px 0 #3c3a18}.route-node>small{position:absolute;left:68px;top:18px;padding:5px 8px;border-radius:7px;background:#fffae6;color:#66472c;box-shadow:0 3px 6px #0002;font-size:12px;white-space:nowrap;max-width:110px}.route-node:nth-of-type(6n+4)>small{left:auto;right:68px}@keyframes node-glow{50%{outline-color:#f5bd4f;box-shadow:0 5px 0 #ab6b2a,0 0 25px #ffef98}}
.adventure-wallet{display:flex;justify-content:space-between;align-items:center;background:#3b2a25;color:#fff6dd;border-radius:12px;padding:13px 16px;margin:0 0 13px;font-size:14px}.adventure-wallet strong{font-size:24px;color:#ffda75}.adventure-card{background:#fffcf3;border:1px solid #cbb897;border-radius:14px;padding:16px;margin:12px 0;box-shadow:0 3px 0 #bb986524}.adventure-card p{font-size:14px;margin:4px 0 12px}.upgrade-card{display:grid;grid-template-columns:46px minmax(0,1fr);gap:9px}.upgrade-icon{font-size:36px}.upgrade-card .buy-button{grid-column:2;justify-self:start;margin-top:6px;min-height:42px;font-size:15px}.upgrade-card strong{font-size:13px;color:#8d5223}.upgrade-pips{display:flex;gap:5px;margin:9px 0}.upgrade-pips i{height:7px;width:34px;background:#ddd3bd;border-radius:6px}.upgrade-pips .on{background:#daa22d}.adventure-tabs button{font-size:13px;padding:10px 5px}.cosmetic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cosmetic-card{margin:0;display:flex;flex-direction:column;align-items:center;gap:7px;min-height:130px;color:#523b28}.cosmetic-card>span{font-size:28px}.cosmetic-card b{font-size:15px}.cosmetic-card small{font-size:12px}.cosmetic-card.is-equipped{border:2px solid #b88728;background:#fff1c0}.cosmetic-card:disabled{opacity:.6}.outfit-preview{display:flex;flex-direction:column;align-items:center;position:relative;padding:20px 12px;gap:8px}.outfit-preview>img{height:114px;width:95px;object-fit:cover;object-position:50% 8%;border-radius:18px;border:3px solid #802b37;background:#ddd3b7}.outfit-preview>strong{font-size:22px}.outfit-preview>span{font-size:14px}.outfit-preview[data-frame=gold]>img,.player-card[data-frame=gold]>.profile-avatar{border:4px solid #dba12b;box-shadow:0 0 0 3px #fff3b5}.outfit-preview[data-frame=festival]>img,.player-card[data-frame=festival]>.profile-avatar{border:4px solid #943987;box-shadow:0 0 0 3px #efbc5d,0 0 18px #a954a888}.outfit-preview[data-hat=hat]::after,.outfit-preview[data-hat=crown]::after{content:'👨‍🍳';position:absolute;top:-3px;font-size:34px}.outfit-preview[data-hat=crown]::after{content:'👑'}.player-card[data-hat=hat]::after,.player-card[data-hat=crown]::after{content:'👨‍🍳';position:absolute;top:0;left:37px;font-size:27px}.player-card[data-hat=crown]::after{content:'👑'}.player-card{position:relative}.player-card [data-open-wardrobe]{font-size:13px;color:#79333b;padding:3px 0}.regular-card{display:flex;align-items:center;gap:16px}.regular-card>img{width:66px;height:90px;object-fit:cover;object-position:50% 8%;border-radius:12px;background:#dde1cb}.regular-card span{display:block;font-size:14px;color:#7c3b32}.regular-card p{margin:0 0 8px}.adventure-heading{margin:28px 0 13px!important}.challenge-card{display:grid;grid-template-columns:1fr;gap:12px}.challenge-card .buy-button{justify-self:start;min-height:40px}.challenge-card progress{display:block;width:100%;height:12px;accent-color:#c78b2c;margin:9px 0}.challenge-card small{font-size:13px}.weekly-ranks{padding:0;list-style:none;margin:15px 0}.weekly-ranks li{display:flex;gap:12px;align-items:center;background:#fffcf0;padding:13px 10px;border-bottom:1px solid #d9c9aa;font-size:15px}.weekly-ranks li>b{color:#af751d;width:24px}.weekly-ranks li>span{flex:1;overflow-wrap:anywhere}.weekly-ranks small{font-size:12px;font-weight:500}.rank-empty{color:#806b50}.adventure-modal{width:min(94vw,440px);max-height:90dvh;overflow-y:auto;padding:25px 20px;text-align:center}.adventure-modal p{font-size:15px;line-height:1.5}.adventure-modal h2{font-size:27px}.adventure-modal label{display:block;font-size:15px;text-align:left;margin:15px 0}.adventure-modal select{display:block;width:100%;margin-top:6px;padding:9px;min-height:42px}.adventure-modal .game-button{margin:10px 0;min-height:48px}.adventure-modal .game-button strong{font-size:16px}.adventure-modal .text-button{color:#843540}.adventure-modal .practice-check{display:flex;gap:8px;align-items:center}.mini-kicker{font-size:12px;letter-spacing:.16em;color:#a36c25;font-weight:800}.mini-intro-icon{font-size:68px;margin:18px 0}.timing-track{height:58px;position:relative;background:#442d26;border-radius:10px;overflow:hidden;margin:30px 0}.timing-target{position:absolute;left:40%;width:20%;inset-block:0;background:#dba43b;border-inline:2px dashed #fff2a1}.timing-track>i{position:absolute;top:5px;bottom:5px;width:5px;background:#fff;border-radius:3px;transform:translateX(-50%);box-shadow:0 0 12px #fff}.memory-sequence{display:flex;justify-content:center;align-items:center;min-height:84px;gap:4px}.memory-sequence img{width:17%;max-width:62px;animation:memory-pop .5s both}.memory-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.memory-choices button{padding:6px 2px;border-radius:9px;border:1px solid #bfa887;background:#fff9e8;min-width:0}.memory-choices img{width:100%;height:44px;object-fit:contain}.memory-choices span{font-size:10px;overflow-wrap:anywhere}.bonus-entry{margin:8px 0!important;min-height:46px!important}.bonus-entry strong{font-size:15px!important}@keyframes memory-pop{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}
.workshop-link{align-self:flex-start;position:relative;margin-top:12px;font-size:14px;min-height:42px;white-space:nowrap}
body[data-location]:not([data-location=village]) #gameScreen>.kitchen-bg{background-image:var(--location-image);background-size:cover;background-position:center top}
body[data-location]:not([data-location=village]) .service-window{background-image:var(--location-image);background-size:cover;background-position:center}
#gameScreen .fryer-row:has(.fryer[data-fryer="2"]:not([hidden])),.mp-fryers:has([data-mp-fryer="2"]:not([hidden])){grid-template-columns:repeat(3,minmax(0,1fr))}
.fryer[hidden]{display:none!important}.screen.is-active.is-practice .hud-progress::before{content:'OEFENEN';font-size:10px;font-weight:800;color:#ffd979;margin-right:5px}.screen.is-active.is-practice #mpProgress::before{content:'OEFENEN · '}
#multiGame .team-bar{position:relative;flex-wrap:wrap;padding-right:42px}#teamMessageButton{position:absolute;right:0;top:0;width:36px;height:25px;border:0;border-radius:6px;background:#fff1cd;font-size:17px;color:#63352b}.team-chat-menu{position:absolute;right:2px;top:30px;width:min(255px,90vw);z-index:18;background:#fff8e9;border:1px solid #baa77f;border-radius:12px;padding:7px;box-shadow:0 6px 15px #0005}.team-chat-menu button{display:block;width:100%;padding:11px 8px;min-height:42px;border:0;border-bottom:1px solid #e6d8bb;background:transparent;text-align:left;color:#63352b;font-size:14px}.team-message{font-size:11px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:70%;color:#6b321f;background:#ffe8ad;border-radius:5px;padding:2px 5px}.team-message:empty{display:none}#teamMate:has(+.team-message:not(:empty)){display:none}.practice-lobby{display:flex;gap:8px;align-items:center;font-size:13px;color:#563f29}.practice-lobby input{width:19px;height:19px}.truck-spec{font-size:12px;color:#755132;margin:0}.is-practice #mpMoney{color:#b3ad9b}#eventForm input[type=checkbox]{width:21px;min-height:21px;vertical-align:middle;margin-right:8px}
@media(min-width:700px){.upgrade-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.upgrade-card{margin:0}.cosmetic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.challenge-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.route-scene{height:250px}.route-chapters button{font-size:14px}.route-chapters small{font-size:13px}.regular-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.regular-card{margin:0;gap:10px}}
@media(max-width:360px){.route-shortcuts button{font-size:12px}.adventure-screen .community-content{padding-inline:9px}.route-node{width:54px;height:54px}.route-node>small{display:none}.adventure-tabs{gap:4px}.adventure-tabs button{font-size:12px}.adventure-screen h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){.route-node,.memory-sequence img{animation:none}}

.node-lock{position:absolute;top:-6px;right:-8px;font-size:15px;font-style:normal}.route-node.is-locked{font-size:22px}

#publicPlayerBody{position:relative}#publicPlayerBody[data-frame=gold]>.public-avatar{border:4px solid #dba12b}#publicPlayerBody[data-frame=festival]>.public-avatar{border:4px solid #943987;box-shadow:0 0 0 3px #efbc5d}#publicPlayerBody[data-hat=hat]::after,#publicPlayerBody[data-hat=crown]::after{content:'👨‍🍳';position:absolute;top:-18px;left:calc(50% - 18px);font-size:30px}#publicPlayerBody[data-hat=crown]::after{content:'👑'}
/* A complete customer receipt stays readable without its own scrollbar. */
#serviceWindow .mp-order{max-height:none;overflow:visible}
@media(max-width:380px){#serviceWindow .mp-order{padding:5px 3px}#serviceWindow .mp-order-line{margin:2px 0}#serviceWindow .mp-order-line span{font-size:11px}#serviceWindow .mp-order-line small{font-size:10px}#serviceWindow .mp-order-line img{width:20px;height:23px}}
#multiGame .team-bar{flex-wrap:nowrap}.team-message{flex:1;min-width:0;max-width:none}#myRole{white-space:nowrap}
