*{box-sizing:border-box} :root{--cream:#f7f0e6;--paper:#fffdf9;--ink:#35231d;--brown:#3b261e;--maroon:#5a1725;--peach:#f3b49b;--yellow:#f4d66e;--sage:#cbd8c2;--muted:#8b7a70;--line:#e9ded1;--shadow:0 18px 55px #3b261e14}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;padding-bottom:80px}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}.header{height:78px;max-width:1200px;margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--brown)}.brand-symbol{height:42px;width:42px;border-radius:14px 14px 14px 4px;background:var(--brown);color:var(--yellow);display:grid;place-items:center;font:800 25px "Plus Jakarta Sans";position:relative}.brand-symbol span{font-size:10px;position:absolute;right:5px;top:4px}.brand-name{font:800 15px "Plus Jakarta Sans";letter-spacing:2px}.brand-name small{display:block;font:600 9px "DM Sans";letter-spacing:4px;margin-top:3px}.header-right{display:flex;align-items:center;gap:17px}.open-status{font-size:11px;color:#718265;font-weight:700}.open-status i{display:inline-block;width:7px;height:7px;background:#82a56d;border-radius:50%;margin-right:6px}.outlet-chip{background:#fffaf3;border:1px solid var(--line);border-radius:99px;padding:11px 15px;color:var(--ink);font-size:12px;font-weight:700}.bag-button{background:var(--brown);color:white;border-radius:99px;padding:9px 10px 9px 17px;font-weight:700;font-size:12px}.bag-button b{display:inline-grid;place-items:center;background:var(--yellow);color:var(--brown);width:24px;height:24px;border-radius:50%;margin-left:8px}
.wrap{max-width:1144px;margin:0 auto;padding:20px 28px 65px}.hero{min-height:345px;border-radius:28px;background:var(--peach);position:relative;overflow:hidden;display:flex;align-items:center;padding:42px 7%}.hero-content{position:relative;z-index:2;max-width:510px}.kicker{font-size:10px;font-weight:800;letter-spacing:2px;color:#765447}.kicker span{font-size:15px;margin-right:6px}.hero h1{font:800 clamp(42px,5vw,65px)/1.02 "Plus Jakarta Sans";letter-spacing:-3px;margin:18px 0 13px}.hero h1 em,.menu-heading h2 em,.checkout-card h2 em{font-style:normal;color:var(--maroon)}.hero p{max-width:390px;line-height:1.65;color:#654a40;font-size:14px}.hero-bottom{display:flex;gap:20px;flex-wrap:wrap;margin-top:27px;font-size:11px;font-weight:700;color:#765447}.hero-visual{position:absolute;right:7%;top:0;width:390px;height:100%}.orb{position:absolute;width:270px;height:270px;border-radius:50%;background:#f8d56f;right:55px;top:38px}.drink{position:absolute;z-index:2;right:125px;top:76px;width:135px;height:230px;transform:rotate(7deg)}.drink-body{position:absolute;top:24px;left:7px;width:120px;height:190px;background:linear-gradient(90deg,#f7e6c9,#fff5df 50%,#ead5b8);border:3px solid #fff9ed;border-radius:18px 18px 28px 28px;box-shadow:14px 18px 24px #603d2b30;overflow:hidden}.drink-lid{position:absolute;top:16px;left:0;width:135px;height:18px;border-radius:7px;background:#fffaf0;border:3px solid #e9d9c4;z-index:3}.drink-straw{position:absolute;z-index:4;top:-20px;left:80px;width:9px;height:75px;background:var(--maroon);border-radius:5px;transform:rotate(7deg)}.drink-logo{position:absolute;top:43px;left:44px;width:34px;height:34px;border:2px solid var(--brown);border-radius:50%;display:grid;place-items:center;font:800 20px Georgia;color:var(--brown)}.drink-label{position:absolute;top:82px;width:100%;text-align:center;font:800 12px "Plus Jakarta Sans";letter-spacing:2px;color:var(--brown)}.drink-label small{font-size:8px;letter-spacing:3px}.drink-liquid{position:absolute;bottom:0;left:0;right:0;height:37px;background:#b17c50;opacity:.5}.hero-sticker{position:absolute;z-index:3;background:var(--brown);color:var(--yellow);font:800 10px/1.35 "Plus Jakarta Sans";letter-spacing:1px;padding:12px 14px;border-radius:50%;text-align:center}.sticker-top{right:12px;top:40px;transform:rotate(12deg)}.sticker-bottom{left:4px;bottom:32px;background:var(--sage);color:var(--brown);transform:rotate(-10deg)}.star{position:absolute;color:var(--maroon);font-size:35px}.star-a{top:35px;left:40px}.star-b{right:0;bottom:45px;font-size:25px}
.order-bar{margin:20px 0 55px;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:16px 22px;display:flex;align-items:center;gap:32px}.outlet-select{display:flex;align-items:center;gap:10px;flex:1}.mini-icon{width:36px;height:36px;display:grid;place-items:center;background:var(--sage);border-radius:12px;font-size:20px}.outlet-select label,.order-mode>span,.table-label span{font-size:9px;letter-spacing:1.4px;color:var(--muted);font-weight:800;display:block}.outlet-select select{display:block;border:0;background:transparent;color:var(--ink);font-weight:700;font-size:12px;outline:0;margin-top:3px;max-width:100%}.order-mode{min-width:215px}.mode-switch{display:flex;background:#f3ece2;padding:4px;border-radius:99px;margin-top:6px}.mode-switch button{background:transparent;color:#77685f;border-radius:99px;padding:8px 13px;font-size:11px;font-weight:700}.mode-switch button.active{background:var(--brown);color:white;box-shadow:0 3px 8px #3b261e25}.table-label{border-left:1px solid var(--line);padding-left:28px}.table-label b{display:block;font-size:13px;margin-top:5px}
.menu-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:23px}.kicker.dark{color:#9a7662}.menu-heading h2{font:800 37px "Plus Jakarta Sans";letter-spacing:-1.5px;margin:7px 0 4px}.menu-heading p{font-size:12px;color:var(--muted);margin:0}.menu-heading p span{color:#d17e66}.menu-aside{text-align:right;font-size:9px;line-height:1.6;letter-spacing:1.5px;color:#a18d7e;font-weight:800}.menu-aside b{display:block;font-size:24px;color:var(--maroon)}.category-row{display:flex;gap:9px;overflow:auto;padding:3px 0 17px;scrollbar-width:none}.category-row::-webkit-scrollbar{display:none}.category{white-space:nowrap;background:transparent;border:1px solid #ded1c3;color:#77675e;border-radius:99px;padding:10px 17px;font-size:11px;font-weight:700}.category.active{background:var(--brown);border-color:var(--brown);color:#fff}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.product-card{background:var(--paper);border:1px solid var(--line);border-radius:19px;padding:10px;box-shadow:0 6px 20px #3b261e08;transition:transform .2s,box-shadow .2s;min-width:0}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.product-art{height:155px;border-radius:13px;position:relative;display:grid;place-items:center;overflow:hidden}.product-art:before{content:"";position:absolute;width:130px;height:130px;border-radius:50%;background:#ffffff70}.cup-mini{width:66px;height:100px;position:relative;z-index:1;border:4px solid #fff9ed;border-radius:9px 9px 17px 17px;background:linear-gradient(90deg,#c08b60,#e3bd8e 60%,#a96f49);box-shadow:8px 10px 16px #38251e30;transform:rotate(5deg)}.cup-mini:before{content:"";position:absolute;left:-8px;right:-8px;top:-7px;height:12px;border-radius:5px;background:#fff8eb;border:2px solid #e8d9c4}.cup-mini:after{content:"N";position:absolute;top:31px;left:0;right:0;text-align:center;font:800 23px Georgia;color:#fff4df}.art-tag{position:absolute;left:9px;top:9px;background:#fffaf0d9;border-radius:99px;padding:5px 8px;font-size:8px;font-weight:800;letter-spacing:.8px}.product-info{padding:12px 5px 4px}.product-info h3{font:800 14px "Plus Jakarta Sans";margin:0 0 5px}.product-info p{font-size:10px;line-height:1.45;color:var(--muted);min-height:29px;margin:0 0 13px}.product-bottom{display:flex;align-items:center;justify-content:space-between}.price{font-size:13px;font-weight:800}.add{width:32px;height:32px;border-radius:11px;background:var(--brown);color:white;font-size:21px;line-height:1}.add:hover{background:var(--maroon)}.loading{grid-column:1/-1;padding:40px;text-align:center;color:var(--muted);background:#fffaf4;border-radius:16px}
footer{max-width:1144px;margin:0 auto;padding:20px 28px 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.footer-brand{font-weight:800;letter-spacing:2px;color:var(--brown)}.mobile-cart{display:none}.scrim,.modal-scrim{position:fixed;inset:0;background:#21150fc0;z-index:10;opacity:0;pointer-events:none;transition:.25s}.scrim.show,.modal-scrim.show{opacity:1;pointer-events:auto}.drawer{position:fixed;z-index:11;right:0;top:0;height:100dvh;width:min(430px,100%);background:var(--paper);padding:27px;display:flex;flex-direction:column;transform:translateX(105%);transition:transform .28s ease}.drawer.show{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;align-items:start}.drawer-head h2,.checkout-card h2{font:800 28px "Plus Jakarta Sans";margin:6px 0}.drawer-head h2 span{color:var(--maroon)}.close{width:34px;height:34px;border-radius:50%;background:#f1e9df;font-size:23px;color:var(--brown)}.cart-lines{overflow:auto;flex:1;padding:20px 0}.empty{text-align:center;color:var(--muted);padding:50px 10px;font-size:13px}.cart-line{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}.cart-line strong{font-size:13px}.cart-line small{display:block;color:var(--muted);margin-top:4px}.qty{display:flex;align-items:center;gap:9px}.qty button{width:25px;height:25px;border-radius:8px;background:#f0e7dc;color:var(--brown);font-weight:800}.drawer-foot{border-top:1px solid var(--line);padding-top:18px}.sumline{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-size:13px}.sumline b{font-size:16px}.cta{width:100%;padding:15px 18px;background:var(--brown);color:white;border-radius:13px;font-weight:800;display:flex;justify-content:space-between}.cta:hover{background:var(--maroon)}.modal-scrim{z-index:20;display:grid;place-items:center;padding:20px}.checkout-card{width:min(440px,100%);max-height:90dvh;overflow:auto;background:var(--paper);border-radius:22px;padding:28px;position:relative}.modal-close{position:absolute;right:20px;top:20px}.checkout-card h2{margin:8px 0 20px}.checkout-card label{display:block;font-size:11px;font-weight:800;margin:13px 0;color:#75645a}.checkout-card input,.checkout-card select,.checkout-card textarea{display:block;width:100%;margin-top:7px;border:1px solid var(--line);border-radius:10px;background:#fffaf4;padding:12px;color:var(--ink);outline-color:var(--peach);font-size:13px}.checkout-card textarea{min-height:70px;resize:vertical}.checkout-card label small{font-weight:500;color:var(--muted)}.total{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.fine{font-size:10px;color:var(--muted);line-height:1.5}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--brown);color:white;border-radius:99px;padding:12px 18px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:30}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:800px){.wrap{padding:12px 18px 50px}.header{padding:0 18px;height:68px}.open-status{display:none}.hero{min-height:330px;padding:32px 7%;align-items:flex-start}.hero h1{font-size:46px}.hero-visual{right:-100px;opacity:.9;transform:scale(.8);transform-origin:right center}.hero-content{max-width:65%}.hero p{font-size:12px}.hero-bottom{display:grid;gap:7px;font-size:10px}.order-bar{margin:15px 0 42px;padding:13px;gap:12px;flex-wrap:wrap}.outlet-select{flex-basis:100%}.order-mode{flex:1;min-width:0}.table-label{padding-left:14px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-art{height:145px}.menu-heading h2{font-size:31px}.menu-aside{font-size:8px}footer{padding:18px;gap:10px;flex-wrap:wrap}.mobile-cart{display:block;position:fixed;z-index:8;bottom:12px;left:14px;right:14px}.mobile-cart button{width:100%;background:var(--brown);color:white;border-radius:15px;padding:13px 16px;display:flex;justify-content:space-between;box-shadow:0 8px 30px #2a160f40;font-size:12px;font-weight:800}.bag-button{display:none}}
@media(max-width:420px){.hero-visual{right:-155px;opacity:.72}.hero-content{max-width:82%}.hero h1{font-size:40px}.hero{min-height:315px}.table-label{font-size:10px}.menu-aside{display:none}.product-art{height:125px}.product-info h3{font-size:12px}.product-info p{font-size:9px}.outlet-chip{padding:9px 10px;font-size:10px}}

.qr-frame{width:220px;height:220px;margin:18px auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;display:grid;place-items:center}.qr-frame img{width:100%;height:100%;object-fit:contain}.payment-meta{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);padding:10px 0;border-bottom:1px solid var(--line)}.payment-meta b{color:var(--ink)}.payment-card .fine{text-align:center;line-height:1.55}

.account-button{background:#fffaf3;border:1px solid var(--line);border-radius:99px;padding:10px 14px;color:var(--brown);font-size:11px;font-weight:800}.auth-tabs{display:flex;gap:7px;background:#f3ece2;padding:4px;border-radius:12px;margin:16px 0}.auth-tabs button{flex:1;padding:10px;border-radius:9px;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.auth-tabs button.active{background:white;color:var(--brown);box-shadow:0 2px 8px #3b261e12}.auth-card{max-width:440px}.auth-error{color:#a12c37;font-size:11px;min-height:16px;line-height:1.5}.menu-count{display:block;margin-top:7px;color:var(--muted);font-size:9px;letter-spacing:1px;font-weight:800}.employee-link{border:0;background:transparent;color:var(--muted);font-size:10px;text-decoration:underline}.header-right{gap:10px}
@media(max-width:800px){.account-button{padding:8px 10px;font-size:10px}.header-right{gap:7px}.outlet-chip{max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

.outlet-status-banner{margin:0 0 16px;padding:14px 16px;border:1px solid #d8c5a8;border-radius:14px;background:#fff7e9;color:var(--brown);font-size:12px;line-height:1.5}.outlet-status-banner strong{display:block;font-size:13px;margin-bottom:3px}.outlet-status-banner.maintenance{background:#f8eceb;border-color:#e4c5c2;color:#762c31}.add:disabled{opacity:.35;cursor:not-allowed}
.open-status.is-closed{color:#9b3943}.open-status.is-closed i{background:#b44852}
