@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@500;600;700&family=Noto+Sans+JP:wght@400;600;700;800&display=swap";:root{font-family:Noto Sans JP,sans-serif;color:#2e2e2e;background:#fff;font-synthesis:none;--ink:#2e2e2e;--orange:#ed9f2e;--green:#747f4a;--cream:#feefc2;--line:#e5ded3;--red:#e16061;--rose:#e99186}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{color:inherit}.app-shell{min-height:100vh;padding-bottom:120px}.store-header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px max(5vw,24px);background:#fff;border-bottom:1px solid var(--line)}.store-header h1{margin:2px 0 4px;font-size:clamp(20px,3vw,30px);letter-spacing:-.03em}.store-header p{margin:0;color:#6d675e;font-size:12px}.eyebrow{margin:0 0 5px!important;color:var(--orange)!important;font-family:DM Sans,sans-serif;font-size:11px!important;font-weight:700;letter-spacing:.18em}.friend-state{display:grid;grid-template-columns:auto minmax(125px,auto) auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid #b8d1c8;border-radius:14px;background:#eef8f4}.friend-state>span{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:#06c755;color:#fff;font-size:11px;font-weight:800}.friend-state div{display:grid;gap:1px}.friend-state b{font-size:12px}.friend-state small{font-size:10px;color:#557066}.friend-state button{border:0;border-radius:9px;padding:9px 11px;background:#06c755;color:#fff;font-size:11px;font-weight:800;cursor:pointer}.friend-state.connected{grid-template-columns:auto auto}.hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;min-height:230px;padding:52px max(8vw,30px);color:var(--ink);background:var(--cream);border-bottom:3px solid var(--orange)}.hero:after{content:"";position:absolute;width:330px;height:330px;right:-60px;top:-130px;border:75px solid rgba(255,255,255,.055);border-radius:50%}.hero h2{max-width:600px;margin:8px 0 10px;font-size:clamp(34px,6vw,62px);line-height:1.12;letter-spacing:-.06em}.hero p{margin:0;color:#68665f}.hero .eyebrow{color:var(--red)!important}.hero-mark{align-self:center;font-family:DM Sans;font-size:78px;font-weight:700;color:#e1606129;letter-spacing:-.1em}.menu-source{display:flex;align-items:center;justify-content:flex-end;gap:12px;width:min(1100px,90vw);margin:18px auto 0}.menu-source span{border-radius:99px;padding:6px 10px;background:#eee;color:#777;font:700 9px DM Sans;letter-spacing:.12em}.menu-source span.live{background:#e8f6ee;color:#247147}.menu-source button{border:0;background:transparent;color:#777;font-size:10px;text-decoration:underline;cursor:pointer}.section-tabs{display:flex;gap:10px;width:min(1100px,90vw);margin:20px auto -20px;overflow:auto}.section-tabs button{min-width:145px;display:grid;gap:3px;border:1px solid var(--orange);border-radius:12px;padding:11px 14px;background:#fff;text-align:left;cursor:pointer}.section-tabs button.active{background:var(--orange)}.section-tabs b{font-size:12px}.section-tabs small{font-size:9px;color:#746e66}.section-tabs button.active small{color:#4d3b20}.menu-area{width:min(1100px,90vw);margin:0 auto;padding:55px 0}.menu-section{margin-bottom:58px}.section-heading{display:flex;align-items:center;gap:13px;margin-bottom:22px}.section-heading span{color:var(--orange);font-family:DM Sans;font-size:12px;font-weight:800}.section-heading h2{margin:0;font-size:24px}.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.menu-card{position:relative;display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:16px;width:100%;border:1px solid #e6e0d7;border-radius:18px;padding:13px;background:#fff;text-align:left;box-shadow:0 7px 24px #2d271e0d;cursor:pointer;transition:.18s ease}.menu-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #2d271e1a}.food-visual,.product-visual{display:grid;place-items:center;background-color:#f7d5a7;background-position:center;background-size:cover;font-size:50px}.food-visual{width:100px;height:100px;border-radius:13px}.menu-copy{display:grid;gap:5px}.menu-copy b{font-size:16px}.menu-copy small{display:-webkit-box;overflow:hidden;color:#797168;font-size:11px;line-height:1.6;-webkit-line-clamp:2;-webkit-box-orient:vertical}.menu-copy strong{color:var(--red);font-family:DM Sans;font-size:15px}.menu-card i{align-self:end;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--orange);color:var(--ink);font-style:normal}.cart-bar{position:fixed;z-index:8;left:50%;bottom:24px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;width:min(520px,calc(100vw - 28px));padding:14px 18px;border:0;border-radius:16px;background:var(--ink);color:#fff;box-shadow:0 14px 40px #1814114d;transform:translate(-50%);cursor:pointer}.cart-bar>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--orange);font-size:12px}.cart-bar b{text-align:left}.cart-bar strong{color:#f5c38f}.overlay{position:fixed;z-index:20;top:0;right:0;bottom:0;left:0;display:grid;place-items:end center;padding-top:30px;background:#1b181485;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sheet{position:relative;width:min(620px,100%);max-height:92vh;overflow:auto;border-radius:25px 25px 0 0;padding:34px max(24px,5vw);background:#fff;box-shadow:0 -20px 70px #00000038}.sheet h2{margin:4px 0 12px;font-size:30px;letter-spacing:-.04em}.sheet>p:not(.eyebrow){color:#716b63;line-height:1.7}.close{position:absolute;right:22px;top:20px;width:38px;height:38px;border:0;border-radius:50%;background:#f1eee8;font-size:24px;cursor:pointer}.product-visual{width:110px;height:110px;margin-bottom:22px;border-radius:22px}.options{display:grid;gap:9px;margin:25px 0}.options>b{margin-bottom:3px}.options label,.payment-list label{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:14px;cursor:pointer}.options label.selected,.payment-list label.selected{border:2px solid var(--orange);padding:13px;background:#fff8f0}.options input,.payment-list input{accent-color:var(--orange)}.options label span{flex:1}.options label strong{font-size:11px;color:#777}.primary{width:100%;border:0;border-radius:13px;padding:16px 20px;background:var(--orange);color:#fff;font-weight:800;cursor:pointer}.primary:disabled{opacity:.42;cursor:not-allowed}.cart-lines{display:grid;gap:5px;margin:22px 0}.cart-lines article{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #eee9e2}.cart-lines article>span{font-size:30px}.cart-lines article>div:nth-child(2){display:grid;gap:2px}.cart-lines small{color:#817b73;font-size:11px}.cart-lines strong{font-size:13px}.stepper{display:grid;grid-template-columns:30px 24px 30px;align-items:center;text-align:center}.stepper button{height:30px;border:0;border-radius:8px;background:#eeeae3;cursor:pointer}.total-row{display:flex;justify-content:space-between;align-items:end;margin:18px 0 22px}.total-row strong{font-family:DM Sans;font-size:25px}.notice{padding:12px;border-radius:10px;background:#fff2dd;color:#8c551f!important;font-size:12px}.back{border:0;padding:0 0 18px;background:transparent;color:#756f67;font-size:12px;cursor:pointer}.capacity-note{padding:10px 12px;border-radius:10px;background:#f5f2ec;font-size:11px}.capacity-note span{color:#928a81}.slot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0 28px}.slot-grid button{display:grid;gap:4px;border:1px solid var(--line);border-radius:11px;padding:12px 7px;background:#fff;cursor:pointer}.slot-grid button.selected{border:2px solid var(--orange);padding:11px 6px;background:#fff8ef}.slot-grid button:disabled{opacity:.35}.slot-grid b{font-size:12px}.slot-grid small{color:#837c73;font-size:9px}.checkout-sheet h3{font-size:15px}.payment-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.payment-list label{display:grid;justify-items:center}.payment-list label span{font-family:DM Sans;font-weight:800}.payment-list label b{font-size:11px}.authorization-note{margin:20px 0;padding:15px;border-left:3px solid var(--green);background:#eff5f2}.authorization-note b{font-size:12px}.authorization-note p{margin:5px 0 0;color:#68736e;font-size:10px;line-height:1.6}.order-overlay{place-items:center}.status-sheet{border-radius:25px;text-align:center}.status-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 20px;border-radius:50%;background:#eee8df;color:#6d665f;font-size:34px;font-weight:800}.status-accepted{background:#e1f1ea;color:#26704f}.status-rejected,.status-canceled{background:#f8e9e5;color:var(--red)}.status-sheet dl{display:grid;margin:25px 0;border-top:1px solid var(--line)}.status-sheet dl div{display:flex;justify-content:space-between;padding:12px 3px;border-bottom:1px solid var(--line);font-size:12px}.status-sheet dt{color:#817a72}.status-sheet dd{margin:0;font-weight:700}.timeline{display:grid;grid-template-columns:16px 1fr 16px 1fr 16px;align-items:center;margin:30px 15px 10px}.timeline i{height:16px;border:2px solid #ccc;border-radius:50%}.timeline i.done{border-color:var(--green);background:var(--green)}.timeline span{height:2px;background:#ddd}.timeline div{margin-top:8px;color:#7d766f;font-size:9px}.timeline div:nth-of-type(1){grid-column:1}.timeline div:nth-of-type(2){grid-column:3}.timeline div:nth-of-type(3){grid-column:5}.notifications{margin:25px 0;padding:15px;border-radius:12px;background:#f6f3ee;text-align:left}.notifications b{font-size:11px}.notifications p{margin:6px 0;color:#5f6f68;font-size:10px}.prototype-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px;padding-top:18px;border-top:1px dashed #c9c1b7}.prototype-actions small{grid-column:1/-1;color:#90887f}.prototype-actions button,.danger{border:0;border-radius:10px;padding:13px;background:var(--green);color:#fff;font-weight:700;cursor:pointer}.prototype-actions .danger,.danger{background:var(--red)}.prototype-actions .text{grid-column:1/-1;background:transparent;color:#766f67;text-decoration:underline}.danger.outline{width:100%;background:#fff;color:var(--red);border:1px solid var(--red)}.not-found{display:grid;place-items:center;align-content:center;min-height:100vh;padding:25px;text-align:center}.not-found h1{margin:0}.not-found a{margin-top:20px;color:var(--orange)}.option-heading{display:flex;align-items:center;justify-content:space-between}.option-heading span{border-radius:99px;padding:4px 8px;background:#eee;color:#777;font-size:9px}.option-heading span.required{background:var(--rose);color:#fff}.options label.selected,.payment-list label.selected{background:var(--cream)}.primary{color:var(--ink)}.options label{position:relative}.options label input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.option-check{display:grid;place-items:center;flex:none;width:24px;height:24px;border:2px solid #c9c4bb;border-radius:7px;background:#fff;color:var(--ink);font-style:normal}.options label.selected .option-check{border-color:var(--orange);background:var(--orange)}.options label.selected .option-check:after{content:"✓";display:block;color:#2e2e2e;font-family:Arial,sans-serif;font-size:16px;font-weight:900;line-height:1}.options label:focus-within{outline:3px solid rgba(237,159,46,.22);outline-offset:2px}.option-choice{display:flex;align-items:center;gap:10px;width:100%;border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff;text-align:left;cursor:pointer}.option-choice>span{flex:1}.option-choice>strong{color:#777;font-size:11px}.option-choice.selected,.option-choice[aria-pressed=true]{border:2px solid var(--orange);padding:13px;background:var(--cream)}.option-choice.selected .option-check,.option-choice[aria-pressed=true] .option-check{border-color:var(--orange);background:var(--orange)}.option-choice.selected .option-check:after,.option-choice[aria-pressed=true] .option-check:after{content:"✓";display:block;color:#2e2e2e;font-family:Arial,sans-serif;font-size:16px;font-weight:900;line-height:1}.option-choice:focus-visible{outline:3px solid rgba(237,159,46,.28);outline-offset:2px}.cart-image{display:grid;place-items:center;width:45px;height:45px;border-radius:9px;background-color:#f4d2a4;background-position:center;background-size:cover}.menu-message,.menu-error{display:grid;justify-items:center;gap:10px;padding:70px 20px;border-radius:18px;background:#f8f6f2;text-align:center}.menu-error{background:#fff0ee;color:var(--red)}.menu-error p{margin:0;font-size:11px}.spinner{width:30px;height:30px;border:3px solid #eee;border-top-color:var(--orange);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-overlay{place-items:center}.login-sheet{width:min(440px,calc(100% - 28px));border-radius:24px}.login-sheet label{display:grid;gap:6px;margin:14px 0;color:#6f6962;font-size:11px}.login-sheet input{width:100%;border:1px solid var(--line);border-radius:11px;padding:13px;font-size:16px}.login-sheet>small{display:block;margin-top:12px;color:#8d867e;font-size:9px;line-height:1.6}.login-error{padding:10px;border-radius:9px;background:#fff0ee;color:var(--red)!important;font-size:11px}@media(max-width:700px){.store-header{align-items:flex-start;padding:18px}.store-header>div:first-child>p:last-child{display:none}.friend-state{grid-template-columns:auto 1fr}.friend-state button{grid-column:1/-1}.hero{min-height:220px;padding:45px 25px}.hero-mark{display:none}.menu-area{width:calc(100vw - 30px);padding-top:38px}.menu-grid{grid-template-columns:1fr}.menu-card{grid-template-columns:82px 1fr auto}.food-visual{width:82px;height:82px;font-size:42px}.sheet{padding:30px 20px}.slot-grid{grid-template-columns:repeat(2,1fr)}.payment-list{grid-template-columns:1fr}.payment-list label{display:flex;justify-items:initial}.order-overlay{place-items:end center}.status-sheet{border-radius:25px 25px 0 0}}
