/* Store preparation: branding and optional cosmetics stay outside play controls. */
.brand-mark{overflow:hidden;transform:none;background:#f5f0e6;box-shadow:0 3px 10px #aa8d7a20}
.brand-mark img{width:100%;height:100%;object-fit:cover;display:block}
.launch-screen{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#f5f0e6;padding:24px max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));color:#283f35;text-align:center}
.launch-screen[hidden]{display:none!important}.launch-screen img{width:min(220px,46vw);height:auto;border-radius:44px;box-shadow:0 14px 34px #6c59341c}
.launch-screen h2{font-family:Georgia,serif;font-size:36px;letter-spacing:-1.5px}.launch-screen h2 span{color:#cc806f}.launch-screen p{color:#7c8972;font-size:13px}.launch-screen .eyebrow{margin-top:8px}
.modal-illustration.brand-illustration{height:110px;width:110px;margin:12px auto;border-radius:26px;overflow:hidden;background:#f5f0e6}.brand-illustration img{display:block;width:100%;height:100%;object-fit:cover}
.cafe-shop{margin:0 0 22px;padding:16px;border:1px solid #dfdfcb;border-radius:18px;background:#fffaf0;color:#526b45}.cafe-shop[hidden]{display:none!important}
.cafe-shop h3{font-size:15px}.shop-caption{font-size:11px;line-height:1.6;margin:6px 0 12px;color:#7a866b}.shop-preview-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.shop-preview{min-height:58px;padding:9px 5px;border:1px solid #dce1ce;border-radius:12px;background:#f0f3e7;color:#61764f;font-size:10px;font-weight:650;line-height:1.4}.shop-preview span{display:block;font-size:17px;margin-bottom:3px}.shop-preview[disabled]{opacity:.6}
.shop-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.shop-actions button{min-height:44px;padding:9px 12px;border:1px solid #cbd7be;border-radius:11px;background:#edf2e5;color:#536f4d;font-size:11px;font-weight:650}.shop-actions .shop-purchase{background:#536f4d;color:#fffaf0;border-color:#536f4d;flex:1}
.shop-status{font-size:11px;line-height:1.6;margin-top:10px;min-height:18px;color:#7d866e}.shop-links{display:flex;flex-wrap:wrap;gap:6px 12px;border-top:1px solid #e3e4d5;padding-top:12px;margin-top:12px}.shop-links a,.shop-links button{color:#67785a;font:inherit;font-size:10px;line-height:1.6;text-decoration:underline;background:none;border:0;min-height:36px;padding:5px 0;text-align:left}.shop-links [hidden]{display:none!important}
.level-sheet .release-links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:16px 0 0;font-size:10px}.release-links a{color:#738164;min-height:36px;padding:8px 4px}
@media(max-width:360px){.cafe-shop{padding:12px}.shop-preview{font-size:9px}.shop-actions{gap:6px}.shop-actions button{font-size:10px;padding:8px}.modal-illustration.brand-illustration{width:90px;height:90px}}
@media(max-height:500px){.modal-illustration.brand-illustration{width:64px;height:64px;margin:8px auto}.launch-screen{gap:9px}.launch-screen img{width:130px}.launch-screen h2{font-size:28px}}
.language-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 16px;color:#61764f;font-size:12px;font-weight:700;}
.language-picker select{font:inherit;color:#283f35;border:1px solid #d9dfce;border-radius:12px;background:#fcfaf4;padding:9px 13px;min-height:40px;}
.welcome-language{margin:-7px 0 12px;}
.shape-icon{width:27px;height:23px;fill:#f3e6ca;stroke:#9b805b;stroke-width:.15;stroke-linejoin:round}.shape-tag{display:flex;align-items:center;gap:5px;padding:3px 7px;border:1px solid #e1d4b9;border-radius:10px;font-size:9px;color:#8c7651;background:#fbf6e9}.shape-tag[hidden]{display:none}.shape-tag .shape-icon{width:22px;height:18px}.stage-meta{flex-wrap:wrap;justify-content:flex-end}.campaign-tools{display:grid;grid-template-columns:1fr 1fr;gap:7px 9px;margin:18px 0 8px;padding:12px;border-radius:15px;background:#f1f4e9;border:1px solid #dbe3cc}.campaign-tools label{grid-column:1 / -1;font-size:10px;font-weight:700;color:#738563}.campaign-tools select,.campaign-tools button{min-height:44px;max-width:100%;min-width:0;font:inherit;font-size:10px;padding:8px;border:1px solid #cbd7bd;border-radius:10px;background:#fffdf4;color:#58704b}.campaign-tools button{font-weight:700;background:#59794e;color:#fffdf4;border-color:#59794e}.campaign-group[hidden]{display:none}.expanded-level .shape-icon{display:block;margin:8px 0 0;width:30px;height:25px}.expanded-level .level-name{margin-top:6px}.level-difficulty{display:block;font-size:8px;font-weight:400;color:#8e997d;margin-top:5px}.expanded-level{min-height:137px;background:#f8f5e9}.expanded-level.active{background:#fff0d6}.expanded-level.complete{background:#e8f0dd}
@media(max-width:620px){.shape-tag{font-size:8px;padding:2px 5px}.shape-tag .shape-icon{width:20px;height:16px}.intro-service .stage-meta{max-width:140px}.expanded-level{min-height:137px}.campaign-tools{padding:10px}.campaign-tools select,.campaign-tools button{font-size:9px}.stage-heading:has(.shape-tag:not([hidden])){position:relative;top:auto;left:auto;right:auto;padding:11px 14px 5px;gap:9px}.stage-heading:has(.shape-tag:not([hidden])) h2{font-size:17px;max-width:205px}.stage-heading:has(.shape-tag:not([hidden])) .stage-meta{max-width:132px}.shell:not(.intro-service) #stage{height:clamp(245px,35svh,335px)}}
.customer-card{display:flex;gap:11px;align-items:center;padding:10px 12px;background:#f6eddf;border:1px solid #e8d8c1;border-radius:16px;margin-bottom:12px;min-width:0}
.customer-portrait{flex-shrink:0;width:38px;height:38px;display:grid;place-items:center;border-radius:14px;background:#e9cbb1;color:#64573e;font-size:27px;box-shadow:inset 0 -3px #d6b58b55}
.customer-card .eyebrow{font-size:7px;letter-spacing:1.3px}.customer-card strong{font-size:12px;margin-left:6px}.customer-card p{font-size:11px;line-height:1.4;margin:4px 0 0;color:#665f4c}.customer-card #customer-response{display:block;font-size:10px;color:#657c4e;margin-top:3px}.customer-card #customer-response:empty{display:none}.customer-card.is-served{border-color:#b8cd9c;background:#edf3e3}
.tutorial-coach{display:flex;gap:10px;align-items:center;padding:11px;background:#f0f4e6;border:1px solid #bccb9f;border-radius:15px;margin-bottom:13px;min-width:0}.tutorial-coach[hidden]{display:none}.tutorial-direction{font-size:27px;font-weight:700;color:#75914f;width:27px;flex-shrink:0}.tutorial-content{flex:1;min-width:0}.tutorial-content small{display:block;font-size:7px;letter-spacing:1px;color:#7d8e64}.tutorial-content strong{display:block;font-size:12px;margin-top:3px;line-height:1.35}.tutorial-content p{font-size:10px;line-height:1.4;margin-top:4px;color:#6d7f57}#tutorial-skip{flex-shrink:0;min-width:40px;min-height:44px;padding:6px;border:0;background:transparent;font-size:10px;color:#7c8b66;text-decoration:underline}
.coach-focus{outline:3px solid #a8be73;outline-offset:3px;box-shadow:0 0 0 7px #a8be7320!important}.order-card .food-family{display:block;font-size:8px;color:#8d957d;margin-top:4px;font-weight:400;line-height:1.3}.menu-section{margin:0 0 22px}.menu-section h3{font-size:15px;color:#526b45}.menu-section>p{font-size:10px;line-height:1.5;color:#899378;margin:7px 0 12px}.menu-discovery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.menu-food{display:flex;flex-direction:column;align-items:center;padding:9px 3px;border:1px dashed #dedfcf;border-radius:13px;background:#faf8f0;color:#879176}.menu-food svg{width:31px;height:31px;opacity:.4}.menu-food strong{font-size:9px;margin-top:4px}.menu-food span{font-size:8px;margin-top:3px}.menu-food.discovered{border-style:solid;background:#f0f4e6;border-color:#d4dec1;color:#58764d}.menu-food.discovered svg{opacity:1}
@media(max-width:620px){.customer-card{padding:8px 10px;margin-bottom:10px;gap:8px}.customer-portrait{width:31px;height:31px;font-size:23px}.customer-card p{font-size:10px}.tutorial-coach{padding:8px;gap:8px;margin-bottom:11px}.tutorial-content strong{font-size:11px}.tutorial-content p{font-size:9px}.order-card .food-family{grid-column:1 / -1;text-align:center;font-size:7px;margin-top:5px}.menu-discovery{grid-template-columns:repeat(3,minmax(0,1fr))}.menu-food{padding:9px}.menu-food strong{font-size:11px}.menu-food span{font-size:9px}}
@media(max-width:620px) and (max-height:700px){.customer-card,.tutorial-coach{grid-column:1 / -1;margin:0}.control-section{grid-row:auto;grid-column:2}.order-section{grid-row:auto}.clamp-status{grid-row:auto}.customer-card p{font-size:9px}.customer-portrait{width:27px;height:27px;font-size:21px}.order-card .food-family{font-size:6px}.tutorial-content p{font-size:8px}.tutorial-content strong{font-size:10px}}
@media(min-width:621px) and (max-width:1100px) and (max-height:500px){.customer-card,.tutorial-coach{grid-column:1 / -1;margin:0;padding:6px 8px}.customer-card p{font-size:9px}.customer-portrait{width:25px;height:25px;font-size:20px}.tutorial-content p{font-size:8px}.tutorial-content strong{font-size:10px}.order-section{grid-row:auto}.control-section{grid-row:auto}.clamp-status{grid-row:auto}.action-row{grid-row:auto}}
@media(max-width:620px){.intro-service #stage{height:clamp(230px,34svh,310px)}.has-guide #stage{height:clamp(210px,28svh,260px)}.intro-service .stage-heading{position:relative;top:auto;left:auto;right:auto;padding:11px 14px 5px}.intro-service .stage-heading h2{font-size:17px;margin-top:3px}.intro-service .stage-heading .eyebrow{font-size:7px}.dashboard{grid-template-rows:auto auto auto auto auto}.customer-card{grid-column:1 / -1;grid-row:1;margin:0}.tutorial-coach{grid-column:1 / -1;grid-row:2;margin:0}.order-section{grid-column:1;grid-row:3}.control-section{grid-column:2;grid-row:3 / span 2}.clamp-status{grid-column:1;grid-row:4}.clamp-status:not([hidden]){display:flex}.clamp-status button{min-height:44px}.action-row{grid-column:1 / -1;grid-row:5}.order-card .food-family{grid-column:2;text-align:left;margin-top:2px}.order-card .order-name,.order-card .order-state{grid-column:2}.table-tip{display:none}.customer-card strong{font-size:11px}.customer-card p{margin-top:2px}}
@media(max-width:620px) and (max-height:700px){.intro-service #stage{height:clamp(180px,31svh,230px)}.has-guide #stage{height:clamp(180px,29svh,210px)}.order-card .food-family{display:none}.order-card .order-state{grid-column:3}.order-card svg{grid-row:1}.customer-card{padding:5px 7px}.tutorial-coach{padding:5px 7px}.tutorial-direction{font-size:22px;width:22px}}
@media(min-width:621px) and (max-width:1100px) and (max-height:500px){.dashboard{grid-template-rows:auto auto auto auto auto}.customer-card{grid-row:1}.tutorial-coach{grid-row:2}.order-section{grid-row:3}.control-section{grid-row:3 / span 2}.clamp-status{grid-row:4}.action-row{grid-row:5}}

/* Atelier finish: shared cream, forest and brass; geometry/control sizes unchanged. */
:root{--ink:#233f36;--muted:#667b6d;--green:#315e4d;--coral:#bd7761;--line:#deded2;background:#f4efe6}
body{background:radial-gradient(ellipse at 10% 0,#e5ede5 0,transparent 48%),linear-gradient(145deg,#f7f3eb,#eee5d8);color:var(--ink)}
.brand h1{font-family:Georgia,'Times New Roman',serif;font-size:30px;letter-spacing:-1.4px}
.brand .eyebrow{color:#7d715b}.brand-mark{border:1px solid #d6c5ab;box-shadow:0 4px 10px #5d46221a}
.levels-button{background:#fffdf7;border-color:#d0d9cd;color:#315e4d;box-shadow:0 2px 0 #dedfd2;font-weight:750}
.icon-button{background:#fffdf7;border-color:#deded2}
.journey{color:#657766}.journey-track{height:4px;background:#dddccb}.journey-track span{background:linear-gradient(90deg,#3e735a,#bea265)}
.stage-wrap{background:#e9e4d8;border:1px solid #c9c8b5;box-shadow:0 12px 28px #493c2514,inset 0 1px #fff;border-radius:24px}
.stage-heading{background:linear-gradient(110deg,#fffcf4f5,#f7f5e9eb);border-bottom:1px solid #dad8c4}
.stage-heading h2{color:#264b3d;font-family:Georgia,'Times New Roman',serif;letter-spacing:-.6px}
.stage-heading .eyebrow{color:#87704c}.safe-tag{background:#e7efdf;color:#426447;border:1px solid #cbdabd;box-shadow:none}.shape-tag{background:#fff4de;color:#806543;border-color:#dcc6a0}
.stage-footer{background:#fffaf0;color:#56644b;border-top:1px solid #d9d5bf}.stage-footer button{color:#315e4d;font-weight:750}
.toast{background:#fffcf5f2;border:1px solid #dcd4b8;color:#4d6548;box-shadow:0 4px 12px #473b2a17}
.dashboard{background:linear-gradient(135deg,#fffefa,#fcf8ef);border:1px solid #ded8c8;box-shadow:0 10px 24px #58462c0d,inset 0 1px #fff;border-radius:24px}
.customer-card{background:linear-gradient(110deg,#f3e5d2,#fcf6ec);border-color:#e0cdb1;box-shadow:inset 0 1px #fff8ed}
.customer-portrait{background:linear-gradient(145deg,#f2d4ad,#cf9c72);color:#644930;border:1px solid #d0ae86;box-shadow:inset 0 2px #fff0d688,0 2px 3px #674b2610}
.customer-card strong{color:#3a5644}.customer-card p{color:#645b49}
.tutorial-coach{background:#edf3e9;border-color:#c0d0b2}.tutorial-content small{color:#586e46}.tutorial-content p{color:#516b49}
.order-card{background:#fffdf6;border-color:#e1d8c4;box-shadow:inset 0 1px #fff,0 2px 4px #70583108}
.order-card .order-name{color:#3d5c47;font-weight:750}.order-card .order-state{color:#68785c}.order-card .food-family{color:#757562}
.order-card.clamped{background:#fff0c9;border-color:#bc9954;box-shadow:inset 0 1px #fff6df,0 0 0 2px #cba65717}.order-card.delivered{background:#e7f0df;border-color:#b5cea3;opacity:1}
.service-goal{background:#f6eedb;border-color:#ded0ac;color:#776844}.service-goal-copy small{color:#88764e}.service-goal-copy span{color:#655c43}
.joystick-pad{background:radial-gradient(circle at 45% 35%,#f6f8ef,#e3e9d7 70%);border-color:#c5d0b6;box-shadow:inset 0 2px 5px #fff,inset 0 -4px 7px #96a67e22,0 4px 8px #55603b12}
.joystick-pad .pad-ring{background:#e6eddb99;border-color:#cbd7bb}.joystick-pad .support-dot{background:radial-gradient(circle at 32% 25%,#8eaa76 0,#547447 55%,#3c5c36 100%);box-shadow:inset 0 1px #cfe0b680,0 5px 8px #3b522d40,0 0 0 6px #59774415}
.control-strength{color:#627650}.clamp-status strong{color:#4f6543}
.balance-button,.reset-button{border-color:#d3d6c3;background:#edf2e5;color:#426246;box-shadow:inset 0 1px #fff,0 2px 0 #d7deca}
.primary-button,#service-next{background:linear-gradient(135deg,#396a53,#254c3e);border:1px solid #284f3d;color:#fff9e9;box-shadow:inset 0 1px #91ab8d60,0 4px 0 #183b2d,0 7px 14px #26483724}
.primary-button:active:not(:disabled){box-shadow:inset 0 1px #91ab8d60,0 2px 0 #183b2d;transform:translateY(2px)}
.modal-card,.level-sheet{background:#fffdf6;border:1px solid #d9cfba;box-shadow:0 22px 60px #293c2f30,inset 0 1px #fff}
.modal-card h2,.sheet-heading h2{color:#315b45;font-family:Georgia,'Times New Roman',serif}.modal-kicker{color:#967a4d}.modal-card p{color:#596851}
.chapter-heading{color:#42634d}.level-card{background:linear-gradient(145deg,#fffdf6,#f0f2e8);border-color:#d6ddca;box-shadow:inset 0 1px #fff,0 3px 5px #5a5b3610}.level-card strong{color:#385e45;font-family:Georgia,'Times New Roman',serif}
.level-card.active{background:linear-gradient(140deg,#fff1cf,#f4e1b4);border-color:#b99753;box-shadow:0 0 0 2px #b9975320}.level-card.complete{background:linear-gradient(140deg,#edf5e2,#deebd2);border-color:#b6cda3}
.service-win{background:#fffaf0f5;border-color:#b9c99f;box-shadow:0 8px 28px #334c2d26}.service-win strong{color:#315b45;font-family:Georgia,'Times New Roman',serif}
@media(max-width:620px){
  .brand h1{font-size:27px}.brand .eyebrow{letter-spacing:1.1px}
  .stage-heading h2{font-size:22px}.intro-service .stage-heading h2{font-size:20px}
  .customer-card strong{font-size:12px}.customer-card p{font-size:11px;line-height:1.45}
  .tutorial-content strong{font-size:12px}.tutorial-content p{font-size:10px;line-height:1.45}
  .order-card .order-name{font-size:12px}.order-card .order-state{font-size:9px}.order-card .food-family{font-size:8px}
  .order-heading .eyebrow{font-size:8px;letter-spacing:1px}.service-goal-copy span{font-size:10px;line-height:1.45}
  .control-strength{font-size:9px}.stage-footer{font-size:10px}.page-footer{color:#6e795f}
}
@media(max-width:360px){.brand h1{font-size:24px}.order-card .order-name{font-size:11px}.order-card .order-state{font-size:8px}.stage-heading h2{font-size:19px}}
@media(max-width:620px) and (max-height:700px){.customer-card p{font-size:10px}.tutorial-content p{font-size:9px}.order-card .order-name{font-size:10px}.order-card .order-state{font-size:8px}.stage-footer{font-size:9px}}
.customer-portrait{overflow:hidden}.customer-portrait svg{display:block;width:100%;height:100%;padding-top:2px}
#expert-tables{grid-column:1 / -1;background:#315c48;border-color:#315c48}
@media(min-width:621px){.orders:has(.order-card:nth-child(4)){display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
