:root{color-scheme:dark;--bg:#101214;--surface:#1a1d20;--surface2:#23272a;--line:#303538;--text:#f6f3ed;--muted:#9a9f9e;--accent:#d5bb83;--danger:#f39898;--green:#9fceb1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Manrope,system-ui,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}a{color:inherit;text-decoration:none}img{max-width:100%}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,5vw,44px);line-height:1.15;letter-spacing:-1.2px}h2{font-size:23px;letter-spacing:-.6px}h3{font-size:17px}p{line-height:1.7}label{display:block}small{color:var(--muted)}.shell{max-width:1240px;padding:32px 24px;margin:auto}.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px}.row{display:flex;align-items:center;gap:12px}.row.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:18px}.grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.muted{color:var(--muted)}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:46px;border:1px solid transparent;border-radius:12px;padding:12px 20px;background:var(--accent);color:#191a18;font-weight:800;transition:background .15s,transform .15s}.button:hover:not(:disabled){background:#e3cda0}.button.secondary{background:var(--surface2)}.button.ghost,.button.secondary{border-color:var(--line);color:var(--text)}.button.ghost{background:transparent}.button.danger{background:#392528;color:var(--danger);border-color:#63383c}.field{width:100%;background:#121517;color:var(--text);border:1px solid #3c4143;border-radius:10px;min-height:46px;padding:12px 14px}textarea.field{resize:vertical}.badge{font-size:11px;font-weight:700;border-radius:7px;padding:6px 9px;background:var(--surface2);border:1px solid var(--line);white-space:nowrap}.error,.success{padding:14px 16px;border-radius:12px;line-height:1.6;border:1px solid}.error{background:#352124;border-color:#694146;color:#f2b5b5}.success{background:#1c3127;border-color:#365e48;color:#b4d8bd}.empty{text-align:center;border:1px dashed var(--line);padding:40px 24px;border-radius:16px;color:var(--muted);line-height:1.7}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tabs button{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:12px 16px;color:var(--muted)}.tabs button.active{color:var(--accent);border-color:var(--accent)}.page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:10px;color:var(--accent);font-weight:800}.venue-name{text-transform:none}.logo{font-size:24px;font-weight:800;letter-spacing:-1.2px}.logo span{color:var(--accent)}.home{min-height:100dvh;background:radial-gradient(ellipse at 75% 15%,#322d23,transparent 55%);display:flex;flex-direction:column}.home-nav{display:flex;justify-content:space-between;align-items:center;padding:32px 0}.home-hero{max-width:840px;margin:80px 0}.home-hero h1{font-size:clamp(40px,8vw,86px);letter-spacing:-3px;margin-bottom:24px}.home-hero .intro{font-size:18px;color:#b5b6ae;max-width:570px}.home-steps{margin-top:50px;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.home-step{border-top:1px solid #4b4434;padding:22px 0}.home-step b{display:block;color:var(--accent);margin-bottom:12px}.home-footer{border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:12px}.guest-wrap{max-width:1220px;margin:auto;padding:0 26px 125px}.guest-top{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:28px 0 24px;border-bottom:1px solid var(--line)}.guest-top .place-pill{display:flex;gap:10px;align-items:center;padding:10px 14px;border:1px solid #524936;background:#29251d;border-radius:12px}.place-pill svg{color:var(--accent);flex-shrink:0}.place-pill small{display:block;font-size:10px;margin-bottom:3px}.place-pill b{font-size:13px}.guest-navigation{display:flex;gap:28px;margin:26px 0 32px;border-bottom:1px solid var(--line)}.guest-navigation button{padding:0 0 16px;color:var(--muted);background:none;border:0;border-bottom:2px solid transparent;font-weight:700}.guest-navigation button.active{color:var(--text);border-bottom-color:var(--accent)}.guest-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:26px}.guest-heading h1{font-size:36px;margin:7px 0 10px}.guest-heading p{margin:0;color:var(--muted)}.connection{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted)}.connection i{display:block;width:6px;height:6px;background:var(--green);border-radius:50%}.connection.offline i{background:var(--danger)}.service-bar{display:flex;gap:10px;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:16px;margin-bottom:28px;align-items:center}.service-bar .service-label{margin-right:auto;display:flex;align-items:center;gap:12px}.service-label strong{display:block;margin-bottom:3px}.service-label small{font-size:11px}.service-bar .button{min-height:42px;padding:10px 15px;font-size:12px}.categories{position:-webkit-sticky;position:sticky;top:0;display:flex;gap:8px;overflow-x:auto;margin:0 -2px 26px;padding:10px 2px;z-index:3;background:var(--bg);scrollbar-width:none}.categories::-webkit-scrollbar{display:none}.categories button{border:1px solid var(--line);border-radius:25px;background:var(--surface);color:#b5b8b4;padding:12px 19px;white-space:nowrap;font-size:12px;font-weight:700}.categories button.active{background:var(--accent);border-color:var(--accent);color:#201e19}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px}.product{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden}.product-photo{height:210px;position:relative;background:radial-gradient(ellipse at 45% 50%,#39382f,#262726 55%,#202324);display:grid;place-items:center}.product-photo img{width:100%;height:100%;object-fit:cover}.product-photo .product-symbol{font-size:64px;opacity:.8;filter:grayscale(25%)}.product-photo .badge{position:absolute;top:14px;left:14px;background:#171b1ae0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.product-body{padding:19px;display:flex;flex-direction:column;flex:1 1}.product-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.product-title h3{margin:0 0 9px;font-size:17px}.product-body p{color:#9da39f;font-size:12px;line-height:1.6;margin-bottom:12px}.product-composition{font-size:10px!important;color:#777f7a!important;margin-bottom:16px!important}.product-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:7px}.product-price{font-size:19px;font-weight:800}.product-footer .button{padding:10px 15px;min-height:41px;font-size:12px}.cart-sticky{position:fixed;bottom:0;left:0;right:0;z-index:10;background:#151819ed;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid #41433a;padding:17px max(20px,calc((100vw - 1168px)/2)) max(17px,env(safe-area-inset-bottom));display:flex;gap:20px;align-items:center}.cart-sticky .cart-count{width:44px;height:44px;background:#302b20;color:var(--accent);display:grid;place-items:center;border-radius:12px;font-weight:800}.cart-sticky .cart-info{margin-right:auto}.cart-info small{display:block;margin-top:4px}.cart-sticky .button{min-width:240px}.overlay{position:fixed;inset:0;background:#000a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:30;display:flex;align-items:center;justify-content:center;padding:20px}.dialog{max-width:580px;width:100%;max-height:90dvh;overflow:auto;background:var(--surface);border:1px solid #44483e;border-radius:22px;padding:26px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:22px}.dialog-head h2{margin:4px 0 8px}.icon-button{width:42px;height:42px;border:1px solid var(--line);border-radius:11px;display:grid;place-items:center;background:var(--surface2);color:var(--text);flex-shrink:0}.modifier-group{margin:24px 0}.modifier-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.modifier-title small{font-size:10px}.modifier-option{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:11px;margin-bottom:8px;padding:13px;min-height:47px;cursor:pointer}.modifier-option.selected{background:#2e2b22;border-color:#81704e}.modifier-option input{accent-color:var(--accent);width:17px;height:17px;flex-shrink:0}.modifier-option span{margin-right:auto}.modifier-option b{font-size:12px;color:var(--accent)}.dialog-bottom{margin-top:24px;justify-content:space-between;gap:16px}.dialog-bottom,.quantity{display:flex;align-items:center}.quantity{gap:12px}.quantity button{width:36px;height:36px;background:var(--surface2);border:1px solid var(--line);border-radius:9px;color:var(--text);font-size:18px}.quantity b{min-width:14px;text-align:center}.cart-line{border-top:1px solid var(--line);padding:18px 0}.cart-line h3{font-size:14px;margin:0 0 7px}.cart-line .row{align-items:flex-start}.cart-line-details{flex:1 1}.cart-line small{font-size:11px;display:block;margin:5px 0}.cart-line-bottom{margin-top:12px;align-items:center}.cart-line-bottom,.cart-summary{display:flex;justify-content:space-between}.cart-summary{margin:24px 0 18px;font-size:19px;font-weight:800}.cart-checkout{width:100%}.order-card{margin-bottom:18px;border:1px solid var(--line);border-radius:18px;padding:22px;background:var(--surface)}.order-head{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:16px}.order-head h3{margin:0}.order-meta{color:var(--muted);font-size:11px;margin-bottom:16px}.order-item{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:14px 0;font-size:13px}.order-item small{display:block;font-size:11px;margin:4px 0}.order-total{display:flex;justify-content:space-between;padding-top:16px;margin-top:18px;border-top:1px solid var(--line);font-weight:800}.task-progress{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.call-status{border-left:2px solid var(--accent);padding:10px 14px;background:#29271f;border-radius:0 10px 10px 0;margin:12px 0;font-size:12px}.payment-wrap{max-width:580px;margin:48px auto;padding:0 20px}.payment-icon{width:64px;height:64px;display:grid;place-items:center;background:#332e22;color:var(--accent);border-radius:19px;font-size:28px;margin-bottom:24px}.payment-actions{display:flex;flex-direction:column;gap:12px;margin-top:28px}.payment-amount{font-size:40px;font-weight:800;letter-spacing:-1px;margin:20px 0}.payment-note{font-size:11px;color:var(--muted);line-height:1.7;margin-top:22px}.loading{min-height:70dvh;display:grid;place-items:center;color:var(--muted)}.toast{position:fixed;top:18px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);padding:14px 22px;border:1px solid #615438;background:#302b21;border-radius:13px;color:var(--text);z-index:45;font-size:12px;box-shadow:0 12px 40px #0006}@media(max-width:950px){.product-grid{grid-template-columns:repeat(2,1fr)}.service-bar{flex-wrap:wrap}.service-label{width:100%;margin-bottom:4px}}@media(max-width:600px){.shell{padding:22px 16px}.home-nav{padding:18px 0}.home-nav .button{padding:10px 13px;font-size:11px}.home-hero{margin:65px 0}.home-steps{grid-template-columns:1fr}.home-hero h1{letter-spacing:-1.7px}.guest-wrap{padding:0 16px 108px}.guest-top{padding:18px 0}.logo{font-size:21px}.place-pill{padding:8px 10px!important}.place-pill svg{display:none}.place-pill b{font-size:11px}.guest-navigation{margin:21px 0 24px;gap:24px}.guest-heading{display:block}.guest-heading h1{font-size:30px}.guest-heading .connection{margin-top:12px}.guest-heading p{font-size:12px}.service-bar{padding:14px;gap:8px;margin-bottom:16px}.service-bar .button{flex:1 1;padding:10px;font-size:10px}.service-label strong{font-size:12px}.service-label small{font-size:10px}.categories{margin-bottom:18px}.categories button{padding:11px 17px}.product-grid{gap:12px}.product-photo{height:145px}.product-photo .product-symbol{font-size:45px}.product-body{padding:13px}.product-title h3{font-size:14px}.product-body p{font-size:10px;line-height:1.6}.product-composition{display:none}.product-footer{flex-wrap:wrap;gap:9px}.product-price{font-size:16px}.product-footer .button{width:100%;min-height:37px;font-size:11px}.product-photo .badge{font-size:9px;padding:5px 7px;top:10px;left:10px}.cart-sticky{gap:12px;padding:12px 16px max(12px,env(safe-area-inset-bottom))}.cart-sticky .cart-count{width:38px;height:38px;font-size:12px}.cart-sticky .cart-info{font-size:12px}.cart-sticky .cart-info small{font-size:9px}.cart-sticky .button{min-width:0;font-size:12px;padding:12px 16px}.overlay{align-items:flex-end;padding:0}.dialog{max-height:92dvh;border-radius:22px 22px 0 0;padding:23px 19px max(23px,env(safe-area-inset-bottom))}.dialog-head h2{font-size:22px}.order-card{padding:18px 15px}.order-head{align-items:flex-start}.order-head .badge{white-space:normal;max-width:145px;text-align:right}.payment-wrap{margin-top:26px}.panel{padding:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}