/* The cutting board stays independent. The atelier is a tactile kitchen. */
.atelier-sec{background:radial-gradient(ellipse at 30% 25%,#291b1440,transparent 65%),#100c0a;border-block:1px solid #c9a26b19}
.sushi-builder [hidden]{display:none!important}.sushi-builder{--edge:#c9a26b30}.sushi-builder button:focus-visible,.placed-ingredient:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.builder-tabs{display:flex;max-width:700px;padding:6px;margin:0 auto 40px;border:1px solid var(--edge);border-radius:16px;background:#211813}.builder-tabs button{flex:1;display:flex;align-items:center;justify-content:center;gap:12px;padding:17px 12px;border-radius:11px;color:var(--muted)}.builder-tabs button span{font:26px var(--f-jp)}.builder-tabs button b{font-size:13px}.builder-tabs [aria-selected=true]{background:var(--cream);color:#23160f}
.sim-progress{display:flex;justify-content:center;gap:clamp(14px,4vw,60px);margin-bottom:32px}.sim-progress>div{display:flex;align-items:center;gap:9px;color:#86776a;font-size:12px}.sim-progress b{display:grid;place-items:center;width:31px;height:31px;border:1px solid #c9a26b35;border-radius:50%;font-size:10px}.sim-progress .active{color:var(--cream)}.sim-progress .active b{background:var(--red);border-color:var(--red)}.sim-progress .done{color:var(--gold)}
.sim-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start}.sim-pantry{background:#1d1612;border:1px solid var(--edge);border-radius:20px;padding:22px}.sim-pantry-head small,.builder-step{font-size:10px;letter-spacing:.16em;font-weight:800;color:var(--gold)}.sim-pantry-head h3{font:700 21px var(--f-display);margin:10px 0}.sim-pantry-head p{font-size:12px;color:var(--muted);margin:0}.pantry-tabs{display:flex;border-bottom:1px solid var(--edge);gap:10px;margin:18px 0 12px}.pantry-tabs button{padding:10px 0;font-size:11px;color:var(--muted);border-bottom:2px solid transparent}.pantry-tabs [aria-pressed=true]{border-color:var(--gold);color:var(--cream)}#simPantry{display:grid;grid-template-columns:1fr 1fr;gap:7px}.pantry-item{position:relative;display:flex;flex-direction:column;align-items:center;min-height:93px;border:1px solid #ffffff0c;border-radius:10px;background:linear-gradient(145deg,#392a1f,#201813);padding:4px 7px 12px;touch-action:none;user-select:none;transition:border-color .15s,background .15s}.pantry-item svg{width:92px;height:58px}.pantry-item span{font-size:10px;line-height:1.3}.pantry-item>b{position:absolute;right:7px;top:5px;color:var(--gold);font-size:13px}.pantry-item:hover:not(:disabled){border-color:var(--gold)}.pantry-item:disabled{opacity:.45;cursor:default}.pantry-item.is-used{border-color:#c9a26b55;background:#493524}.builder-fine{font-size:10px;color:var(--muted);margin:16px 0 0}.sim-workspace{min-width:0}.sim-worktop-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 18px}.sim-worktop-head h3{font:700 clamp(18px,2vw,26px) var(--f-display);margin:8px 0 0}.sim-reset{font-size:11px;color:var(--muted);padding:8px;border-bottom:1px solid var(--edge)}
.sim-table{--roll-progress:0;position:relative;height:440px;border:10px solid #51331e;border-radius:24px;background:repeating-linear-gradient(1deg,#ffffff02 0px,#ffffff02 1px,transparent 2px,transparent 9px),repeating-linear-gradient(91deg,#ad7d47 0px,#bc8d56 36px,#a97742 100px,#be8d50 145px);box-shadow:inset 0 0 50px #40220f99,0 14px 30px #0004;overflow:hidden;isolation:isolate}.sim-table-stamp{position:absolute;left:22px;top:20px;font:700 17px/1.5 var(--f-jp);color:#44291366;text-align:center;letter-spacing:.2em;transform:rotate(-8deg)}.bamboo-mat{position:absolute;left:15%;right:15%;top:12%;bottom:15%;border:3px solid #735523;border-radius:4px;background:repeating-linear-gradient(0deg,#a67c40 0px,#d5b276 2px,#d8b882 9px,#a5793d 11px,#6d4a23 12px);box-shadow:0 7px 9px #321b1255;transform:rotate(-3deg)}.bamboo-mat::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 19%,#f4e4b3aa 19.3%,#a79b6c 19.7%,transparent 20%);pointer-events:none}.sim-sheet{position:absolute;inset:9% 9% 11%;z-index:1;transform-origin:50% 15%;transform:translateY(calc(var(--roll-progress)*28%)) scaleY(calc(1 - var(--roll-progress)*.9));opacity:calc(1 - var(--roll-progress));transition:transform .55s ease,opacity .45s;visibility:hidden}.has-base .sim-sheet{visibility:visible}.sim-nori{position:absolute;inset:0;border:2px solid #1e291d;background:repeating-linear-gradient(28deg,#34432a 0,#293821 4px,#34402a 5px,#1f2f22 8px);box-shadow:0 4px 7px #0005}.sim-rice{position:absolute;inset:4% 4% 11%;background-color:#f0e8cf;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='32'%3E%3Cg fill='%23fffcf2' stroke='%23ded5ba' stroke-width='.6'%3E%3Cellipse cx='6' cy='5' rx='5' ry='2' transform='rotate(20 6 5)'/%3E%3Cellipse cx='23' cy='6' rx='5' ry='2' transform='rotate(-24 23 6)'/%3E%3Cellipse cx='14' cy='16' rx='5' ry='2'/%3E%3Cellipse cx='34' cy='18' rx='5' ry='2' transform='rotate(30 34 18)'/%3E%3Cellipse cx='4' cy='28' rx='5' ry='2'/%3E%3Cellipse cx='25' cy='29' rx='5' ry='2' transform='rotate(-35 25 29)'/%3E%3C/g%3E%3C/svg%3E");border-radius:3%;box-shadow:0 2px 3px #0002}
#placedIngredients{position:absolute;inset:0}.placed-ingredient{position:absolute;width:75%;height:29%;transform:translate(-50%,-50%);touch-action:none;cursor:grab;z-index:3}.placed-ingredient svg{width:100%;height:100%;filter:drop-shadow(1px 3px 1px #0003)}.placed-ingredient button{position:absolute;right:0;top:28%;width:22px;height:22px;border-radius:50%;background:#1a100cd9;color:#f3e6cf;font-size:14px;line-height:1;opacity:0}.placed-ingredient:hover button,.placed-ingredient:focus-within button{opacity:1}.sim-base-action{position:absolute;inset:28% 20% 28%;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff5dcdd;border:1px dashed #634b25;border-radius:14px;color:#483019;padding:16px}.sim-base-action>span{font-size:28px}.sim-base-action b{font-size:13px}.sim-base-action small{font-size:11px;margin-top:4px;color:#816244}.roll-grip{position:absolute;z-index:4;bottom:6%;left:24%;right:24%;display:flex;align-items:center;gap:8px;justify-content:center;background:#594025;color:#f9ead1;border:1px solid #dec39488;border-radius:50px;padding:9px 15px;touch-action:none;font-size:10px;box-shadow:0 3px 4px #0003}.roll-grip>i{height:3px;width:20px;background:#dec394;border-radius:4px}.roll-grip:disabled{opacity:.45}.sim-chopsticks{position:absolute;right:5%;top:13%;height:65%;width:12px;border-inline:4px solid #452b17;transform:rotate(12deg);box-shadow:2px 0 #d4a569}.sim-sauce-bowl{position:absolute;bottom:4%;left:3%;width:54px;height:54px;border:7px solid #302a25;border-radius:50%;background:radial-gradient(ellipse at 40% 30%,#583518,#1b0d04);box-shadow:2px 5px 8px #0005,inset 0 2px 2px #bca58944}.sim-caption{display:flex;align-items:center;gap:9px;padding:14px 2px}.sim-caption p{font-size:12px;color:var(--muted);margin:0;flex:1}.sim-caption>b{font-size:11px;color:var(--gold);white-space:nowrap}.sim-live-dot{width:6px;height:6px;border-radius:50%;background:#92ad65;flex:none}.sim-recipe{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:20px;border:1px solid var(--edge);background:#211813;border-radius:14px}.sim-recipe small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--gold)}.sim-recipe p{font-size:12px;line-height:1.6;margin:5px 0 0}.sim-recipe>.btn{font-size:12px;flex:none;padding:13px 18px}.builder-price-note{font-size:11px;color:var(--muted);margin:13px 2px}.builder-error{font-size:12px;color:#ffaba6;min-height:1em;margin:8px 0}.ingredient-ghost{position:fixed;left:0;top:0;width:130px;height:80px;z-index:300;pointer-events:none;filter:drop-shadow(0 10px 5px #0007)}
.sim-finished-roll{position:absolute;z-index:3;inset:27% 8%;display:flex;align-items:center;opacity:var(--roll-progress);transform:scale(calc(.6 + var(--roll-progress)*.4));transition:opacity .5s,transform .65s}.whole-roll{position:relative;width:100%;height:63%;border-radius:55px 40px 40px 55px;background:repeating-linear-gradient(15deg,#fff9eb 0,#eee3cb 2px,#fff8e9 5px);box-shadow:0 12px 10px #0004,inset 0 -20px 20px #a8905866,inset 0 12px 15px #fff9}.whole-roll.outer-nori{background:repeating-linear-gradient(15deg,#283628 0,#3e4e32 3px,#283525 5px)}.whole-roll.outer-salmon{background:repeating-linear-gradient(65deg,#fb9d6e 0,#f28250 24px,#ffdfb5 26px,#f48f5e 29px)}.whole-roll.outer-tuna{background:repeating-linear-gradient(65deg,#bd2440 0,#d04352 25px,#e59999 27px,#bf283c 29px)}.whole-roll.outer-eel{background:repeating-linear-gradient(95deg,#5d2f15 0,#8f542a 25px,#3a1a09 28px)}.whole-roll.outer-tempura{background:repeating-radial-gradient(ellipse at 30% 30%,#e7b455 0px,#ba8031 3px,#e1ae51 7px)}.whole-roll.outer-sesame{background:repeating-radial-gradient(ellipse,#e5cf8d 0px,#b6a066 2px,#f0e1b4 5px)}.roll-end{position:absolute;right:-6%;top:-33%;width:40%;height:160%;display:flex;align-items:center}.roll-end img{width:100%;height:100%;object-fit:contain}.roll-glaze{display:none;position:absolute;inset:10% 15% 15% 8%;border-radius:25px;background:repeating-linear-gradient(65deg,transparent 0,transparent 14px,#3c1c09 15px,#5f3211 19px,transparent 21px);opacity:.85}.roll-glaze.on{display:block}.is-finished .sim-sheet{visibility:hidden}.is-finished .roll-grip{display:none}.builder-result{display:grid;grid-template-columns:1fr auto;align-items:center;gap:15px;background:#1c2417;border:1px solid #aab97455;padding:24px;border-radius:17px}.builder-result-name span{display:block;font-weight:800}.builder-result-name small,.builder-result>div>span{font-size:11px;color:var(--muted);display:block}.builder-result strong{font:700 30px var(--f-display);color:var(--gold)}.builder-allergens{grid-column:1/-1;font-size:11px;color:var(--muted);margin:0}.builder-result>.btn{grid-column:1/-1;font-size:12px}
.set-intro{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:25px}.set-intro h3{font:700 clamp(24px,3vw,36px) var(--f-display);margin:10px 0}.set-intro p{font-size:13px;color:var(--muted);margin:0}.set-price-badge{border-left:1px solid var(--edge);padding-left:30px;min-width:160px}.set-price-badge>span,.set-price-badge small{display:block;font-size:11px;color:var(--muted)}.set-price-badge b{font:700 40px var(--f-display);color:var(--gold);white-space:nowrap}.set-tiers{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin-bottom:30px}.set-tier{border:1px solid var(--edge);border-radius:12px;padding:13px 8px;background:#231b16}.set-tier span,.set-tier b{display:block}.set-tier span{font-size:10px;color:var(--muted)}.set-tier b{font-size:16px;margin-top:4px}.set-tier[aria-pressed=true]{background:var(--cream);color:#23160f;border-color:var(--cream)}.set-tier[aria-pressed=true] span{color:#6c5440}.set-tier:disabled{opacity:.3}.set-studio-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:30px;align-items:start}.set-filter-row{display:grid;gap:12px;margin-bottom:17px}#setBuilderFilters{display:flex;flex-wrap:wrap;gap:5px}#setBuilderFilters button{font-size:10px;border:1px solid var(--edge);border-radius:30px;padding:7px 11px;color:var(--muted)}#setBuilderFilters [aria-pressed=true]{color:var(--cream);border-color:var(--gold)}.set-filter-row input{width:100%;background:#211813;border:1px solid var(--edge);border-radius:10px;padding:12px 15px;font-size:12px;outline-color:var(--gold)}.set-catalog{display:grid;grid-template-columns:1fr 1fr;gap:10px}.set-roll-card{display:flex;align-items:center;gap:10px;min-width:0;border:1px solid #c9a26b20;background:#211813;border-radius:13px;padding:12px}.set-roll-card.is-selected{border-color:#c9a26b99;background:#322418}.set-roll-art{width:42%;flex:none}.set-roll-art img{width:100%;aspect-ratio:1.2;object-fit:contain}.set-roll-info{min-width:0;flex:1}.set-roll-card h4{font-size:11px;line-height:1.4;margin:0}.set-roll-card p{font-size:10px;color:var(--muted);margin:3px 0 8px}.set-roll-card button{font-size:10px;font-weight:700;color:var(--gold);text-align:left}.set-roll-card button:disabled{opacity:.45;color:var(--muted)}.set-roll-card select{width:100%;font-size:10px;background:#1a120d;color:var(--cream);border:1px solid var(--edge);border-radius:5px;padding:4px;margin-bottom:7px}.set-pagination{display:flex;align-items:center;justify-content:center;gap:24px;font-size:11px;color:var(--muted);margin-top:20px}.set-pagination button{border:1px solid var(--edge);border-radius:50%;width:34px;height:34px;color:var(--cream)}.set-pagination button:disabled{opacity:.25}.set-service{position:sticky;top:100px}.set-selection-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.set-selection-head h4{font-size:12px;margin:0}.set-selection-head button{font-size:10px;color:var(--muted)}.set-serving-tray{position:relative;padding:42px 20px 40px;background:linear-gradient(145deg,#382a21,#15100d 50%,#30231b);border:9px solid #4c3220;border-radius:16px;box-shadow:inset 0 0 0 2px #ab7e4444,inset 0 0 45px #0005,0 12px 20px #0004}.tray-wordmark{position:absolute;left:18px;top:12px;font-size:10px;letter-spacing:.3em;color:#c9a26b99}.tray-wordmark small{font-size:7px;letter-spacing:.15em;margin-left:10px}.set-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.set-slot{position:relative;min-height:108px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #c9a26b30;border-radius:9px;background:#fff4df03}.slot-number{font:700 24px var(--f-display);color:#c9a26b25}.set-slot small{font-size:9px;color:#c9a26b66;margin-top:4px}.set-slot.is-filled{border-color:transparent;background:radial-gradient(ellipse,#f9edcb0a,transparent 70%)}.set-slot img{width:90%;height:78px;object-fit:contain;animation:serve-in .3s ease-out}.set-slot p{font-size:9px;line-height:1.3;text-align:center;margin:0 0 4px;color:var(--muted)}.set-slot>button{position:absolute;right:2px;top:2px;width:24px;height:24px;background:#ffffff0c;color:var(--muted);border-radius:50%;z-index:2}.tray-ginger{position:absolute;bottom:6px;left:24px;color:#dc9a89;font-size:29px;line-height:1}.tray-wasabi{position:absolute;bottom:12px;right:25px;width:25px;height:17px;border-radius:50% 50% 30% 30%;background:repeating-linear-gradient(70deg,#a1b36b 0,#becb88 2px,#9aaf65 4px);box-shadow:0 3px 3px #0005}.set-limits{padding:14px 0;font-size:10px;color:var(--muted)}.set-limits b{display:block;color:var(--gold);font-size:10px;margin-top:5px}.set-checkout{border-top:1px solid var(--edge);padding-top:16px}.set-checkout>span{font-size:13px;display:block}.set-checkout>small{font-size:10px;color:var(--gold);display:block;margin:5px 0}.set-checkout .btn{width:100%;display:flex;justify-content:space-between;font-size:12px;margin-top:13px}.set-checkout .btn b{font-size:16px}.sushi-builder button:disabled{cursor:default}.sushi-builder .btn:disabled{opacity:.35}.catalog-error{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:300;background:#3a201a;padding:18px;border:1px solid var(--gold);border-radius:14px;display:flex;gap:20px;font-size:13px}.catalog-error button{color:var(--gold)}@keyframes serve-in{from{transform:translateY(-12px) scale(.85);opacity:0}to{transform:none;opacity:1}}
@media(max-width:1050px){.sim-layout{grid-template-columns:230px minmax(0,1fr)}.sim-pantry{padding:17px}.sim-table{height:390px}.set-studio-layout{gap:18px}.set-catalog{grid-template-columns:1fr}.set-roll-art{width:32%;max-width:100px}.sim-recipe{align-items:flex-start;flex-direction:column;gap:14px}.sim-recipe>.btn{width:100%}}
@media(max-width:760px){.atelier-sec .wrap{width:calc(100% - 28px)}.builder-tabs{margin-bottom:24px}.builder-tabs button{padding:13px 7px;gap:7px}.builder-tabs button b{font-size:11px}.builder-tabs button span{font-size:21px}.sim-progress{gap:8px;justify-content:space-between}.sim-progress>div{gap:5px;font-size:9px}.sim-progress b{width:25px;height:25px;font-size:9px}.sim-layout{display:flex;flex-direction:column;gap:15px}.sim-workspace{width:100%;order:0}.sim-pantry{width:100%;order:1;padding:16px}.sim-pantry-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.sim-pantry-head small{display:none}.sim-pantry-head h3{font-size:17px;margin:0}.sim-pantry-head p{font-size:10px;flex-basis:100%}.pantry-tabs{margin-top:10px;padding:0}#simPantry{grid-template-columns:repeat(3,1fr)}.pantry-item{min-height:80px}.pantry-item svg{height:47px}.sim-worktop-head h3{font-size:17px}.sim-worktop-head .builder-step{font-size:8px}.sim-reset{font-size:9px}.sim-table{height:330px;border-width:7px;border-radius:18px}.bamboo-mat{left:10%;right:13%;top:16%;bottom:20%}.sim-base-action{inset:28% 13%}.sim-base-action b{font-size:11px}.sim-table-stamp{font-size:12px;top:12px;left:14px}.sim-chopsticks{right:5%;width:9px;border-inline-width:3px}.sim-sauce-bowl{width:39px;height:39px;border-width:5px}.roll-grip{left:18%;right:18%;bottom:7%;padding:7px;font-size:9px}.sim-caption{padding:12px 1px}.sim-caption p{font-size:10px}.sim-recipe{padding:14px;gap:10px}.sim-recipe p{font-size:11px}.placed-ingredient button{opacity:1;width:20px;height:20px;font-size:12px}.builder-price-note{font-size:10px}.set-intro{gap:12px}.set-intro h3{font-size:20px}.set-intro p{font-size:11px}.set-price-badge{min-width:102px;padding-left:14px}.set-price-badge b{font-size:28px}.set-price-badge>span{font-size:9px}.set-tiers{grid-template-columns:repeat(4,1fr);gap:6px}.set-tier{padding:10px 5px}.set-tier b{font-size:14px}.set-studio-layout{display:flex;flex-direction:column}.set-service{position:static;order:0;width:100%}.set-selection{order:1;width:100%}.set-serving-tray{padding:38px 12px 32px;border-width:7px}.set-slot{min-height:95px}.set-slot img{height:65px}.set-catalog{grid-template-columns:1fr 1fr;gap:7px}.set-roll-card{flex-direction:column;gap:4px;align-items:stretch;padding:10px}.set-roll-art{width:100%;max-width:none}.set-roll-art img{height:80px;aspect-ratio:auto}.set-roll-card h4{font-size:11px}.set-roll-card button{min-height:34px}.set-selection-head h4{font-size:11px}.set-intro .builder-step{font-size:8px}}
@media(prefers-reduced-motion:reduce){.sim-sheet,.sim-finished-roll{transition:none}.set-slot img{animation:none}}
.roll-end{right:-3%;top:-5%;height:110%;width:18%;border-radius:50%;border:2px solid #b6a783;background:repeating-linear-gradient(15deg,#fff9eb 0,#eee3cb 2px,#fff8e9 5px);box-shadow:inset 2px 0 6px #0002;transform:rotate(-2deg)}
.face-core{position:absolute;inset:20%;border:4px solid #243220;border-radius:50%;background:#f4ead0}.face-core i{position:absolute;width:36%;height:31%;border-radius:35%;box-shadow:inset 0 1px 2px #fff9}
.set-slot.is-filled{min-height:124px}.set-slot img{height:100px}
@media(max-width:760px){
.atelier-sec{padding-block:65px}.atelier-sec .sec-head{margin-bottom:25px}.atelier-sec .sec-sub{font-size:12px;margin-top:18px}.atelier-sec .h2{font-size:32px}
.sim-pantry{order:0;position:sticky;top:69px;z-index:10;padding:10px 12px;background:#211812;border-radius:12px;box-shadow:0 5px 8px #0003}.sim-workspace{order:1}.sim-pantry-head p,.sim-pantry>.builder-fine{display:none}.sim-pantry-head h3{font-size:12px}.pantry-tabs{position:absolute;right:12px;top:4px;border:0;margin:0;gap:14px}.pantry-tabs button{font-size:10px;padding:7px 0}#simPantry{display:flex;overflow-x:auto;gap:7px;margin-top:10px;padding-bottom:4px;scrollbar-width:thin;scrollbar-color:#c9a26b44 transparent}.pantry-item{flex:0 0 82px;min-height:72px;touch-action:pan-x}.pantry-item svg{height:41px;width:69px}.pantry-item span{font-size:9px}
.sim-layout{gap:16px}.sim-progress{margin-bottom:15px}.sim-worktop-head{margin-bottom:12px}.sim-table{height:330px}.set-slot.is-filled{min-height:108px}.set-slot img{height:80px}
}

.set-roll-actions{display:flex;align-items:center;gap:7px;margin-top:8px}.set-roll-actions button{display:grid;place-items:center;min-width:34px;min-height:34px;border:1px solid var(--edge);border-radius:7px;text-align:center;font-size:18px;line-height:1}.set-roll-actions span{min-width:17px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums}.set-roll-limit{display:block;font-size:9px;line-height:1.4;color:var(--muted);margin-top:7px}
