@font-face{font-family:DM;src:local('DM Sans')}*{box-sizing:border-box}body{margin:0;background:#eeeee6;color:#323d2c;font-family:DM,'Segoe UI','Microsoft YaHei',sans-serif;font-size:14px}button,select{font:inherit;color:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #a15d31;outline-offset:4px}button{border:0;background:none}button:hover{filter:brightness(.94)}[hidden]{display:none!important}header{height:91px;margin:0 38px;display:flex;align-items:center;gap:27px;border-bottom:1px solid #d0d3c5;position:relative;z-index:5}.wordmark{font-family:Georgia,serif;font-size:65px;line-height:1;letter-spacing:-5px;color:#455337;text-decoration:none;margin-top:-9px}.wordmark span{display:inline-block;font:11px 'Segoe UI';letter-spacing:0;vertical-align:top;margin:13px 0 0 5px}.edition{font-size:9px;letter-spacing:1.8px;max-width:140px;line-height:1.7;border-left:1px solid #c2c7b7;padding-left:24px;margin-top:6px}nav{display:flex;gap:28px;margin-left:auto;align-self:stretch;align-items:center}.nav{height:100%;font-size:12px;position:relative;padding:0 3px}.nav.active:after{content:'';position:absolute;bottom:-1px;height:2px;background:#4e5c40;left:0;right:0}.nav span{margin-left:13px}.round{border:1px solid #c3c8b8;border-radius:50%;width:30px;height:30px;margin-left:-15px}main{display:grid;grid-template-columns:minmax(0,1fr) 390px;min-height:770px;max-height:calc(100vh - 148px);height:calc(100vh - 148px)}.stage{position:relative;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 55% 45%,#f7f5ec 0,#edeee4 67%)}.intro{position:absolute;left:48px;top:35px;z-index:2;pointer-events:none}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:600;display:flex;align-items:center;gap:8px}.eyebrow i,.model-tag i{width:5px;height:5px;background:#7d855c;border-radius:50%;display:inline-block}.intro h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(40px,4.1vw,68px);letter-spacing:-2.5px;line-height:1.03;margin:20px 0 19px}.intro h1 em{font-weight:400;color:#7c8255}.intro p{font-size:11px;line-height:1.9;color:#77806c;margin:0}#viewport{position:absolute;inset:0}#viewport canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}#loading{position:absolute;inset:0;display:flex;gap:14px;flex-direction:column;align-items:center;justify-content:center;background:#eeeee6;z-index:5;font-size:13px}#loading small{color:#858e79}.spinner{width:32px;height:32px;border:1px solid #c4ccb6;border-top-color:#4e5c40;border-radius:50%;animation:spin 1.3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.view-tools{display:flex;position:absolute;left:50%;bottom:59px;transform:translateX(-50%);gap:2px;padding:5px;background:#f9f9f1dc;backdrop-filter:blur(10px);border:1px solid #d2d7c7;border-radius:50px;z-index:4;white-space:nowrap}.tool{font-size:14px;border-radius:25px;padding:9px 12px;color:#7b826f}.tool span{font-size:10px;margin-left:5px}.tool.active{background:#e1e5d6;color:#435334}.stage-bottom{position:absolute;bottom:22px;left:38px;right:30px;display:flex;justify-content:space-between;align-items:center;color:#7f8674}.model-tag{font-size:9px;letter-spacing:1.2px;display:flex;gap:7px;align-items:center}.orbit-hint{font-size:10px}.workspace{position:relative;border-left:1px solid #d0d3c5;background:#f6f6ef;overflow-y:auto;padding:26px 27px 18px;scrollbar-width:thin;scrollbar-color:#c4cbb7 transparent}.workspace-top{display:flex;justify-content:space-between;margin-bottom:24px;align-items:center}.workspace-top .eyebrow{font-size:8px;letter-spacing:1.4px}#sessionTag{font-size:8px;letter-spacing:1px;color:#929985}.step-heading{display:flex;gap:15px;margin-bottom:23px}.step-heading>span{font-family:Georgia,serif;font-size:43px;font-weight:400;line-height:1;color:#9a9e83;margin-top:-4px}.step-heading h2{font-size:17px;font-weight:500;margin:0 0 6px;letter-spacing:-.5px}.step-heading p{font-size:10px;color:#8a927d;margin:0;line-height:1.7}.recipe-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid #d8ddcf;padding-bottom:17px;margin-bottom:19px}.recipe-row label{font-size:10px;flex:0 0 45px}.recipe-row select{background:transparent;border:0;font-size:12px;padding:4px 18px 4px 0;width:100%;outline:none}.section-label{font-size:8px;letter-spacing:1.2px;display:flex;justify-content:space-between;margin-bottom:10px;color:#818a72}#ingredients{display:grid;grid-template-columns:1fr 1fr;gap:7px}.ingredient{border:1px solid #d5d9ca;position:relative;border-radius:5px;padding:10px 10px 10px 10px;display:flex;align-items:center;gap:10px;text-align:left;background:#fbfbf6;transition:background .2s,border .2s;min-height:58px}.ingredient .icon{width:28px;height:33px;display:grid;place-items:center;flex:none;position:relative}.ingredient .icon svg{width:27px;height:31px}.ingredient .info{display:flex;flex-direction:column;gap:4px}.ingredient strong{font-size:11px;font-weight:500}.ingredient small{font-size:9px;color:#929985}.ingredient .add{margin-left:auto;font-size:17px;color:#899374}.ingredient.added{background:#e5e9db;border-color:#c1caae}.ingredient.added .add{font-size:12px;color:#60713e}.ingredient:not(.added):hover{background:#f1f3e8;border-color:#a4b18f;transform:translateY(-1px)}.instruction{display:flex;gap:12px;padding:12px 0 7px;align-items:center;color:#8b7650}.instruction>span{font-size:20px}.instruction p{font-size:10px;line-height:1.7;margin:0}.hardware{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:19px}.hardware button{padding:8px 2px;border:1px solid #d6dccb;border-radius:3px;font-size:9px;background:#f7f8f1}.hardware button.is-on{background:#e1e6d3;border-color:#b5c09e}.display-label{font-size:8px;letter-spacing:1px;color:#838c78;display:flex;justify-content:space-between;margin-top:6px}.dial-hint{font-size:8px;letter-spacing:0;color:#8b937e}.control-area{display:flex;align-items:center;gap:11px;min-height:157px;margin:-3px 0 4px}.machine-screen{position:relative;width:248px;aspect-ratio:1.355;flex:1}.display-shape{position:absolute;width:100%;height:100%;inset:0;filter:drop-shadow(0 5px 5px #29302413)}#screenContents{position:absolute;inset:0;color:#f4edd9;font-size:10px;pointer-events:none}.screen-recipe{position:absolute;left:8.6%;top:40.7%;font-size:6px;color:#b8c0af;letter-spacing:.2px}.screen-count{position:absolute;right:5%;top:21.2%;font-size:6px;color:#b8c0af}.screen-stage{position:absolute;left:8.6%;top:49.7%;font-size:13px}.screen-time{position:absolute;left:8.6%;top:58%;font-size:30px;line-height:1.1;letter-spacing:-1px}.screen-unit{font-size:7px;color:#b8c0af;letter-spacing:0;margin-left:8px}.screen-loaf{position:absolute;right:12.8%;top:29.1%;width:18.75%;height:21.55%}.screen-bars{position:absolute;left:8.6%;top:70%;width:83%;display:flex;gap:4px;transform:rotate(-11.47deg);transform-origin:center}.screen-bars i{height:2px;flex:1;background:#424b41;border-radius:4px}.screen-bars i.done{background:#b8c0af}.screen-bars i.active{background:#e8be72}.screen-next{position:absolute;left:8.6%;top:83%;font-size:6px;color:#b8c0af}.screen-action{position:absolute;right:7%;top:67.2%;font-size:6px}.screen-saved{position:absolute;right:8%;top:49%;font-size:7px;color:#e8be72}.screen-options{position:absolute;left:9%;top:48%;display:flex;flex-direction:column;gap:5px;font-size:11px}.screen-options .focused{color:#e8be72}.screen-options span:before{content:' ';display:inline-block;width:12px}.screen-options span.focused:before{content:'›'}.dial-control{width:62px;flex:none;margin-top:20px;display:flex;flex-direction:column;align-items:center;gap:13px}.dial{width:52px;height:52px;border-radius:50%;background:radial-gradient(circle at 37% 29%,#f7efcd,#dcd5ac 65%,#b5b593 67%,#5e6a43 70%,#7d885a 78%);box-shadow:2px 3px 5px #303e262e;position:relative;transition:transform .2s}.dial:active{scale:.94}.dial span{position:absolute;width:1px;height:9px;left:25px;top:5px;background:#8c875a;transform-origin:0 21px;transition:transform .2s}.dial-control>div{display:flex;align-items:center;gap:3px}.dial-control>div span{font-size:6px;letter-spacing:1px}.dial-control>div button{font-size:14px;padding:0 5px}.crust-row{display:flex;justify-content:space-between;align-items:center;margin:0 0 14px;font-size:8px;letter-spacing:1px;color:#80896f}.crust-row>div{display:flex;gap:4px}.crust-row button{font-size:10px;border:1px solid #d0d7c3;border-radius:3px;padding:5px 11px}.crust-row button.selected{background:#dce4cc;color:#455b2c;border-color:#adb998}.primary{width:100%;padding:14px 17px;background:#53613b;color:#f7f3df;border-radius:4px;text-align:left;display:flex;align-items:center;justify-content:space-between;letter-spacing:.7px;font-size:12px}.primary:hover{background:#455431;filter:none}.primary>span{font-size:18px;line-height:1}.primary:disabled{background:#97a087;opacity:.8}.reset-row{display:flex;justify-content:space-between;align-items:flex-start;margin-top:14px;gap:5px}.reset-row span{font-size:8px;color:#9aa08e;line-height:1.7;max-width:210px}.reset-row button{font-size:9px;white-space:nowrap;padding:1px 0;color:#727e61}.speed-row{display:flex;gap:10px;align-items:center;margin-top:12px;font-size:10px}.speed-row select{border:1px solid #cbd1bd;background:#f6f7ef;padding:4px;border-radius:3px;font-size:10px}.speed-row button{margin-left:auto;font-size:10px}.hotspot{position:absolute;pointer-events:auto;transform:translate(-50%,-50%);z-index:3;display:flex;align-items:center;gap:6px;white-space:nowrap;padding:0}.hotspot .dot{width:22px;height:22px;border-radius:50%;border:1px solid #a0aa88;box-shadow:0 0 0 4px #fafbf329;background:#f7f9eee6;display:grid;place-items:center;font-size:14px;color:#596744}.hotspot .hot-label{background:#f8faefed;color:#5b674b;border:1px solid #d1d9c3;border-radius:3px;font-size:9px;padding:5px 8px;box-shadow:0 2px 10px #263b1710}.hotspot:hover .dot{background:#5b6b43;color:#fff}.hotspot.important .dot{box-shadow:0 0 0 5px #adbb7738}#hotspots{position:absolute;inset:0;pointer-events:none}#toast{position:absolute;bottom:114px;left:50%;transform:translate(-50%,12px);max-width:75%;padding:12px 20px;background:#3f4c35f0;border-radius:5px;box-shadow:0 8px 22px #2c3c2525;color:#f5f3e9;font-size:12px;line-height:1.7;opacity:0;transition:.25s;pointer-events:none;z-index:7}#toast.show{opacity:1;transform:translate(-50%,0)}#ingredientLabel{position:absolute;left:50%;top:45%;font-family:Georgia,serif;color:#6d7556;font-size:23px;pointer-events:none;opacity:0;z-index:4;transform:translate(-50%,-30px);transition:.3s}#ingredientLabel.show{opacity:1;transform:translate(-50%,-60px)}footer{height:57px;border-top:1px solid #d0d3c5;margin:0 38px;display:flex;align-items:center;justify-content:space-between;font-size:7px;letter-spacing:1.1px;color:#89917b;gap:15px}.journey{display:flex;gap:12px;align-items:center;font-size:9px;letter-spacing:0}.journey b{font-weight:400;color:#c3cbb7}.journey span{white-space:nowrap}.journey .current{color:#52663b}.journey .current:before{content:'●';font-size:6px;margin-right:5px}.journey .done{color:#79856b}dialog{border:1px solid #ccd3bf;border-radius:8px;background:#f6f6ec;color:#3e4e31;padding:43px;max-width:460px;width:calc(100% - 40px);box-shadow:0 20px 100px #2d3e2a3b}dialog::backdrop{background:#2d3c2963;backdrop-filter:blur(8px)}dialog h2{font-family:Georgia,'Microsoft YaHei',serif;font-size:35px;line-height:1.1;font-weight:400;letter-spacing:-1px;margin:23px 0}dialog h2 em{color:#8e9467}dialog ol{padding-left:17px;font-size:12px;line-height:1.9}dialog p{font-size:11px;line-height:1.9;color:#7d886e}.close{position:absolute;right:18px;top:13px;font-size:22px}.quiet{display:block;margin:15px auto 0;color:#7e8b6a;font-size:11px}.loaf-illustration{font-size:110px;color:#b67f3e;text-align:center;line-height:1.3;margin:12px}.workspace #explorePanel h2{font:32px/1.2 Georgia,serif;letter-spacing:-1px;margin:25px 0 15px}.workspace #explorePanel>p{font-size:12px;line-height:1.9;color:#828c72}#explorePanel>img{width:100%;margin:14px 0;mix-blend-mode:multiply;border-radius:4px}.explore-copy h3{font:21px Georgia,serif;margin:23px 0 8px}.explore-copy p{font-size:11px;line-height:1.9;color:#838c76}.explore-copy a{font-size:11px;color:#5c7041}.explore-copy .provenance{font-size:9px;border-top:1px solid #d5dcc7;padding-top:17px;margin-top:25px}.webgl-error{padding:30px;color:#7d4936;text-align:center;position:absolute;bottom:25%;left:20%;right:20%;background:#fff8e6}body[data-stage='4'] .intro h1 em{color:#a57a35}
@media(min-width:1550px){main{grid-template-columns:minmax(0,1fr) 430px}.workspace{padding-left:35px;padding-right:35px}.intro{top:50px;left:60px}.ingredient{min-height:66px}.control-area{min-height:190px}.workspace-top{margin-bottom:30px}.step-heading{margin-bottom:30px}}
@media(max-height:850px) and (min-width:901px){header{height:74px}main{min-height:650px;max-height:calc(100vh - 122px);height:calc(100vh - 122px)}footer{height:48px}.workspace{padding-top:19px}.workspace-top{margin-bottom:16px}.step-heading{margin-bottom:17px}.intro h1{font-size:48px}.hardware{margin-bottom:12px}.control-area{min-height:139px}.reset-row{margin-top:10px}.ingredient{min-height:53px;padding-top:8px;padding-bottom:8px}.recipe-row{margin-bottom:15px;padding-bottom:13px}}
@media(max-width:1050px){main{grid-template-columns:minmax(0,1fr) 360px}.intro{left:30px;top:30px}.intro h1{font-size:44px}.workspace{padding-left:20px;padding-right:20px}.stage-bottom{left:24px;right:24px}.orbit-hint{display:none}footer>span:last-child{display:none}.view-tools{bottom:65px}.tool{padding:9px}.tool span{display:none}}
@media(max-width:760px){header{height:73px;margin:0 20px;gap:20px}.wordmark{font-size:53px}.edition{display:none}nav{gap:16px}.round{width:27px;height:27px;margin-left:-9px}.nav{font-size:10px}main{display:flex;flex-direction:column;max-height:none;height:auto;min-height:0}.stage{height:66vh;min-height:480px}.intro{left:24px;top:25px}.intro h1{font-size:42px;margin:15px 0}.intro p{font-size:10px}.workspace{border-left:none;border-top:1px solid #d0d3c5;padding:27px 24px 25px;overflow:visible}.workspace-top{margin-bottom:25px}.control-area{max-width:390px;margin:-2px auto 0;min-height:190px}.machine-screen{max-width:290px}.display-label{margin-top:20px}.ingredient{min-height:66px}.hardware button{padding:10px 3px}.step-heading h2{font-size:19px}.view-tools{bottom:51px}.tool span{display:inline}.stage-bottom{bottom:18px}.model-tag{font-size:8px}.hotspot .hot-label{font-size:8px;padding:4px 5px}.hotspot .dot{width:19px;height:19px}footer{margin:0 20px;justify-content:center;height:65px}.journey{gap:6px;font-size:8px}footer>span{display:none}.crust-row{font-size:9px}.reset-row span{font-size:9px}.reset-row button{font-size:10px}.intro .eyebrow{font-size:8px}#toast{max-width:90%;width:max-content;font-size:11px;bottom:100px}#explorePanel>img{max-width:450px}}
@media(min-width:761px){main{min-height:0}.stage{min-height:0}}
body[data-lid='open'] .intro h1,body[data-lid='open'] .intro p{visibility:hidden}
.light-manual{border-top:1px solid #d7ddc9;border-bottom:1px solid #d7ddc9;padding:15px 0 13px;margin-bottom:20px}.manual-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.manual-heading>span{font-size:8px;color:#8a927a;letter-spacing:1px}.manual-heading>strong{font-size:11px;font-weight:500}.live-lamps{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px 12px;gap:15px}.live-lamps>span{display:flex;align-items:center;flex-direction:column;gap:8px}.live-lamps i{--lamp-level:.3;--lamp-color:#fff1c8;display:block;width:12px;height:12px;border-radius:50%;background:color-mix(in srgb,var(--lamp-color) calc(var(--lamp-level)*100%),#a1a382);box-shadow:0 0 calc(3px + var(--lamp-level)*14px) calc(var(--lamp-level)*4px) color-mix(in srgb,var(--lamp-color) calc(var(--lamp-level)*75%),transparent);border:1px solid #9da67d77}.live-lamps small{font-size:7px;color:#9b9e88}.light-manual>p{font-size:11px;line-height:1.8;margin:7px 0;color:#5e6d4c}.light-manual>p.light-meaning{color:#909780;font-size:10px;margin-top:0}.manual-action{margin:15px 0 10px}.manual-action>span{font-size:9px;color:#7e896a;letter-spacing:.5px}.manual-action p{font-size:11px;line-height:1.9;margin:5px 0 0;color:#616f50}.light-index{margin-top:14px;border-top:1px solid #dfe3d4;padding-top:10px}details>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#7d886a}details>summary::-webkit-details-marker{display:none}details[open]>summary>span{transform:rotate(45deg)}.light-index ol{list-style:none;padding:0;margin:13px 0 0}.light-index li{display:flex;gap:11px;margin:0 0 12px;padding:5px 0}.light-index li>b{font:20px Georgia,serif;color:#a0a98e;font-weight:400;min-width:22px}.light-index li strong{font-size:10px;font-weight:500}.light-index li p{font-size:9px;line-height:1.7;color:#8b947c;margin:4px 0 0}.light-index li.current>b,.light-index li.current strong{color:#697e40}.accessible-controls{margin-top:15px;border-top:1px solid #d7ddc9;padding:13px 0}.accessible-controls>.hardware{margin-top:14px}.accessible-controls .display-label{font-size:7px}.orbit-hint{font-size:9px}.light-index li:last-child{margin-bottom:0}
.manual-heading>strong{margin-left:auto}.manual-heading>button{font-size:8px;white-space:nowrap;border:1px solid #c9d1b9;border-radius:3px;padding:4px 6px;color:#75845d}.manual-heading>button[aria-pressed='true']{background:#e6ebda}
@media(max-height:850px) and (min-width:761px){.control-area{height:137px;min-height:137px;justify-content:space-around}.machine-screen{flex:none;width:185px}.crust-row{display:none}.hardware{margin-bottom:8px}.workspace-top{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Four tangible inventory slots, with no viewport-wide drop zone. */
#ingredients{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.ingredient{min-height:149px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:15px 8px 10px;gap:6px;text-align:center;border-radius:5px;cursor:grab;touch-action:none;user-select:none}
.ingredient .slot-number{position:absolute;top:10px;left:11px;font:10px Georgia,serif;color:#a6ad96}
.ingredient .icon{width:58px;height:65px;flex:none}.ingredient .icon svg{width:53px;height:61px;filter:drop-shadow(1px 4px 2px #61714d14)}
.ingredient .info{gap:3px}.ingredient strong{font-size:11px}.ingredient .slot-status{font-size:8px;color:#939f7f;letter-spacing:.5px}
.ingredient.added{opacity:.58}.ingredient.added .slot-status{color:#5e713e}.ingredient.dragging{background:#e5ead9;border-style:dashed;opacity:.4}.ingredient:not(.added):hover{transform:none}
.inventory-note{font-size:10px;line-height:1.8;color:#7d8b6a;margin:11px 0 21px}.inventory-ghost{position:fixed;left:0;top:0;z-index:1000;width:70px;height:90px;pointer-events:none;filter:drop-shadow(3px 8px 5px #34432633)}.inventory-ghost svg{width:70px;height:80px}.inventory-dragging{cursor:grabbing;user-select:none}
#extras{margin-top:8px}#extras .ingredient{width:100%;min-height:56px;flex-direction:row;gap:15px}#extras .icon,#extras svg{width:30px;height:34px}#extras .slot-number{display:none}
body:not([data-stage='0']) .inventory-note{display:none}
@media(max-width:760px){.ingredient{min-height:145px}.inventory-note{font-size:11px}}

/* The same CAD-shaped canvas drives the hardware and the accessible preview. */
.machine-screen{aspect-ratio:1.3164}.display-shape{display:none}#screenContents{inset:0}#screenMirror{display:block;width:100%;height:100%;filter:drop-shadow(0 3px 3px #23322118)}
.knob-manual{padding:17px 0 20px;border-top:1px solid #d8ddcf}.knob-manual strong{font-size:10px;line-height:1.8;display:block;font-weight:500;margin:10px 0 6px;color:#596c43}.knob-manual p{font-size:11px;line-height:1.8;margin:0 0 5px}.knob-manual small{font-size:10px;line-height:1.7;display:block;color:#8b927d}.round.muted{opacity:.5;text-decoration:line-through}
.view-tools{gap:0}.view-tools .tool{padding:9px 10px}@media(max-width:760px){.view-tools .tool{padding:8px}.view-tools .tool span{font-size:9px;margin-left:3px}}

.stage[data-view="screen"] .intro,.stage[data-view="lights"] .intro{display:none}
