*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{margin:0;padding:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:#fff8f3;color:#1f1f1f}body,main{min-height:100vh}header{position:relative;z-index:1000;width:100%;padding:14px 8%;background:#d71920;color:#ffffff}.header-content{width:100%;max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.logo-link{display:inline-flex;align-items:center;text-decoration:none}.site-logo{display:block;width:76px;height:auto;object-fit:contain}.desktop-nav{display:flex;align-items:center;gap:24px}.desktop-nav a{color:#ffffff;text-decoration:none;font-weight:700}.desktop-nav a:hover{color:#ffc400}.account-menu-wrap{position:relative}.account-menu-trigger{padding:8px 0;background:transparent;color:#ffffff;font-size:inherit}.account-menu-trigger:hover{color:#ffc400;transform:none}.account-menu-dropdown{position:absolute;top:calc(100% + 10px);right:0;z-index:20;min-width:190px;padding:8px;display:grid;grid-gap:3px;gap:3px;background:#ffffff;border-radius:12px;box-shadow:0 12px 28px rgba(0,0,0,.18)}.account-menu-dropdown a,.account-menu-dropdown button{display:block;width:100%;padding:10px 12px;border-radius:8px;background:transparent;color:#333333;font-size:14px;font-weight:700;text-align:left;text-decoration:none}.account-menu-dropdown a:hover,.account-menu-dropdown button:hover{background:#fff1ec;color:#d71920;transform:none}.account-page{min-height:100vh;background:#fff8f3}.account-header{padding:15px 20px;background:#d71920}.account-header-inner,.account-shell{width:100%;max-width:1080px;margin:0 auto}.account-header-inner{display:flex;align-items:center;justify-content:space-between}.account-brand,.account-header-link{color:#ffffff;font-weight:900;text-decoration:none}.account-back:hover,.account-header-link:hover{color:#ffc400}.account-logout-mobile{display:none}.account-shell{padding:42px 20px 80px}.account-back{display:inline-block;margin-bottom:28px;color:#d71920;font-weight:800;text-decoration:none}.account-profile-card{display:flex;align-items:center;gap:20px;padding:28px;background:#ffffff;border:1px solid #f0ddd4;border-radius:22px;box-shadow:0 12px 30px rgba(75,34,16,.06)}.account-avatar{width:72px;height:72px;display:grid;flex:0 0 auto;place-items:center;border-radius:50%;background:#ffc400;color:#7b1c13;font-size:24px;font-weight:900}.account-profile-heading{flex:1 1}.account-kicker{color:#d71920;font-size:12px;font-weight:900;letter-spacing:1px}.account-page-title,.account-profile-heading h1{margin:6px 0;color:#d71920}.account-profile-heading p{margin:4px 0;color:#666666}.account-secondary-button{background:#fff1ec;color:#d71920}.account-secondary-button:hover{background:#ffe4da}.account-edit-card,.account-info-card{margin-top:22px;padding:25px;background:#ffffff;border:1px solid #f0ddd4;border-radius:18px}.account-edit-card h2,.account-info-card h2{margin-top:0;color:#7b1c13}.account-edit-card label{display:grid;grid-gap:7px;gap:7px;margin:13px 0;color:#555555;font-weight:800}.account-edit-card input{width:100%;padding:13px 14px;border:1px solid #e3cfc5;border-radius:10px;font:inherit}.account-edit-card input:focus{outline:2px solid #ffc400;border-color:#d71920}.account-message{margin:18px 0;padding:13px 15px;border-radius:10px;background:#fff1ec;color:#7b1c13;font-weight:700}.account-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-top:25px}.account-tile{min-height:125px;display:flex;flex-direction:column;gap:10px;padding:20px;background:#ffffff;border:1px solid #f0ddd4;border-radius:16px;color:#333333;text-decoration:none}.account-tile:hover{border-color:#ffc400;transform:translateY(-2px)}.account-tile strong{color:#d71920}.account-tile span{color:#666666;font-size:14px;line-height:1.4}.account-tile-disabled{opacity:.65}.account-logout-button{margin-top:28px;background:#d71920;color:#ffffff}.account-page-intro{color:#666666}.account-empty{margin-top:25px;padding:45px 25px;text-align:center;background:#ffffff;border:1px solid #f0ddd4;border-radius:18px}.account-empty-icon{font-size:40px}.account-primary-link{display:inline-block;margin-top:12px;padding:13px 20px;border-radius:10px;background:#ffc400;color:#1f1f1f;font-weight:900;text-decoration:none}.account-address-list{display:grid;grid-gap:14px;gap:14px;margin-top:24px}.account-address-card{display:flex;justify-content:space-between;gap:20px;padding:20px;background:#ffffff;border:1px solid #f0ddd4;border-radius:16px}.account-address-card strong{color:#d71920}.account-address-card p{margin:8px 0;color:#555555;line-height:1.5}.account-address-card small{color:#777777}.account-address-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.account-address-actions button{padding:9px 11px;font-size:13px}.account-address-actions button:disabled{background:#f3e8e2;color:#8d766d;cursor:default;transform:none}.account-form-row{display:grid;grid-template-columns:2fr 1fr;grid-gap:14px;gap:14px}.account-form-actions{display:flex;align-items:center;gap:10px}.account-coming-soon{color:#d71920;font-weight:800}.authenticated-location-strip{padding:18px 20px;background:#fff8f3;border-bottom:1px solid #f0ddd4}.authenticated-location-content{width:100%;max-width:1080px;margin:0 auto;display:flex;align-items:center;gap:18px}.authenticated-greeting{color:#d71920;font-size:24px;font-weight:900}.authenticated-address-button{padding:9px 13px;border:1px solid #f0c6b8;border-radius:10px;background:#ffffff;color:#7b1c13;font-size:16px;font-weight:800}.authenticated-address-button:hover{transform:none;border-color:#d71920}.menu-toggle{display:none;width:46px;height:46px;padding:10px;border:0;border-radius:10px;background:transparent;cursor:pointer}.menu-toggle:hover{transform:none;background:rgba(255,255,255,.1)}.menu-toggle span{display:block;width:26px;height:3px;margin:5px auto;border-radius:10px;background:#ffffff}.mobile-menu{display:none}section{width:100%;padding:70px 20px}.section-content{width:100%;max-width:1100px;margin:0 auto;text-align:center}.hero-label,.section-label{display:inline-block;margin-bottom:12px;color:#d71920;font-size:14px;font-weight:900;letter-spacing:1px}.section-content h2{max-width:700px;margin:0 auto 36px;font-size:38px;line-height:1.15}.hero{min-height:72vh;display:flex;align-items:center;justify-content:center;background:#fff8f3;text-align:center}.hero-content{width:100%;max-width:1000px;margin:0 auto}.hero h1{max-width:900px;margin:0 auto;color:#d71920;font-size:64px;line-height:1.05}.hero p{max-width:720px;margin:24px auto;font-size:20px;line-height:1.5}button{border:0;border-radius:12px;padding:16px 28px;background:#ffc400;color:#1f1f1f;font-size:17px;font-weight:800;cursor:pointer;transition:.2s ease}button:hover{transform:translateY(-2px)}button:disabled{cursor:wait;opacity:.75}.location-main-button{max-width:560px}.location-main-button span{margin-right:7px}.saved-location{margin-top:14px;color:#666666;font-size:14px;font-weight:700}.restaurants{background:#ffffff}.categories{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px}.categories div{min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#fff8f3;border:1px solid #f1e2da;border-radius:18px;font-size:44px;transition:.2s ease;cursor:pointer}.categories div:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,0,0,.08)}.categories strong{font-size:18px}.featured{background:#fff8f3;padding-bottom:90px}.restaurant-grid{width:100%;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.restaurant-card{overflow:hidden;background:#ffffff;border:1px solid #eeeeee;border-radius:20px;text-align:left;box-shadow:0 6px 20px rgba(0,0,0,.06);transition:.2s ease;cursor:pointer}.restaurant-card:hover{transform:translateY(-5px);box-shadow:0 14px 35px rgba(0,0,0,.1)}.restaurant-image{height:180px;display:flex;align-items:center;justify-content:center;background:#f3e6dc;font-size:70px}.restaurant-info{padding:22px}.restaurant-info h3{margin:0 0 8px;font-size:21px}.restaurant-info p{margin:0 0 12px;color:#666666;font-size:15px}.restaurant-info span{color:#333333;font-size:14px;font-weight:700}.offers{background:#ffffff;padding-bottom:90px}.offers-grid{width:100%;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.offer-card{padding:32px;background:#fff8f3;border:1px solid #f1e2da;border-radius:20px;text-align:left}.offer-badge{display:inline-block;margin-bottom:20px;padding:8px 14px;background:#d71920;color:#ffffff;border-radius:50px;font-size:13px;font-weight:900}.offer-card h3{margin:0 0 10px;font-size:23px}.offer-card p{min-height:48px;margin:0 0 24px;color:#555555;line-height:1.5}.offer-card button{padding:12px 20px}footer{width:100%;padding:60px 8% 25px;background:#d71920;color:#ffffff}.footer-content{width:100%;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 2fr;grid-gap:70px;gap:70px}.footer-brand{display:flex;flex-direction:column;align-items:flex-start}.footer-logo{display:block;width:180px;height:auto;margin-bottom:12px}.footer-brand p{margin:0;color:rgba(255,255,255,.85)}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:40px;gap:40px}.footer-links h4{margin:0 0 18px}.footer-links a{display:block;margin-bottom:12px;color:rgba(255,255,255,.85);text-decoration:none;font-size:14px}.footer-links a:hover{color:#ffc400}.footer-bottom{width:100%;max-width:1200px;margin:45px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.25)}.footer-bottom p{margin:0;color:rgba(255,255,255,.75);font-size:13px}.location-overlay{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.58)}.location-modal{width:100%;max-width:590px;max-height:90vh;overflow-y:auto;padding:30px;background:#ffffff;border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.25)}.location-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.location-modal-label{display:block;margin-bottom:5px;color:#d71920;font-size:12px;font-weight:900;letter-spacing:1px}.location-modal-header h2{margin:0;font-size:30px;line-height:1.15}.location-close{flex:0 0 auto;width:42px;height:42px;padding:0;background:#f4f4f4;color:#333333;border-radius:50%;font-size:28px;line-height:1}.location-close:hover{transform:none;background:#eeeeee}.location-description{margin:16px 0 22px;color:#666666;line-height:1.5}.location-option{width:100%;display:flex;align-items:center;gap:16px;margin-bottom:14px;padding:18px;background:#ffffff;border:2px solid #eeeeee;border-radius:16px;text-align:left}.location-option:hover{transform:none;border-color:#d71920}.location-option.primary{background:#fff8f3;border-color:#f4d7ce}.location-option-icon{flex:0 0 auto;font-size:30px}.location-option strong{display:block;margin-bottom:4px;font-size:16px}.location-option small{display:block;color:#777777;font-size:13px;font-weight:500;line-height:1.4}.address-form{margin-top:18px}.address-back{margin-bottom:20px;padding:0;background:transparent;color:#d71920;font-size:14px}.address-back:hover{transform:none}.form-row{display:flex;gap:14px}.form-field{display:flex;flex:1 1;flex-direction:column;gap:7px;margin-bottom:14px;color:#333333;font-size:14px;font-weight:800;text-align:left}.form-field-large{flex:3 1}.form-field-small{flex:1 1}.form-field input{width:100%;min-width:0;padding:14px;border:1px solid #dddddd;border-radius:11px;outline:none;background:#ffffff;color:#1f1f1f;font-size:16px}.form-field input:focus{border-color:#d71920;box-shadow:0 0 0 3px rgba(215,25,32,.08)}.save-address-button{width:100%;margin-top:6px}.location-message{margin-top:18px;padding:13px 15px;background:#fff8f3;border:1px solid #f2d8ce;border-radius:12px;color:#444444;font-size:14px;font-weight:700;line-height:1.4}.auth-page{min-height:100vh;justify-content:center;padding:40px 20px;background:radial-gradient(circle at top,rgba(255,196,0,.16),transparent 34%),#fff8f3}.auth-container,.auth-page{display:flex;align-items:center}.auth-container{width:100%;max-width:520px;flex-direction:column}.auth-logo-link{display:inline-flex;margin-bottom:22px}.auth-logo{display:block;width:165px;height:auto}.auth-card{width:100%;padding:34px;background:#ffffff;border:1px solid #f0e4dd;border-radius:24px;box-shadow:0 18px 50px rgba(0,0,0,.08)}.auth-label{display:block;margin-bottom:8px;color:#d71920;font-size:12px;font-weight:900;letter-spacing:1px;text-align:center}.auth-card h1{margin:0;color:#1f1f1f;font-size:34px;line-height:1.15;text-align:center}.auth-description{max-width:420px;margin:14px auto 26px;color:#666666;font-size:15px;line-height:1.5;text-align:center}.auth-form{gap:15px}.auth-form,.auth-form label{display:flex;flex-direction:column}.auth-form label{gap:7px;color:#333333;font-size:14px;font-weight:800}.auth-form input{width:100%;padding:14px 15px;border:1px solid #dddddd;border-radius:11px;outline:none;background:#ffffff;color:#1f1f1f;font-size:16px;transition:.2s ease}.auth-form input:focus{border-color:#d71920;box-shadow:0 0 0 3px rgba(215,25,32,.08)}.password-field{position:relative;display:block}.password-field input{padding-right:50px}.password-toggle{position:absolute;top:50%;right:10px;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;transform:translateY(-50%);background:transparent;color:#666666}.password-toggle:focus-visible,.password-toggle:hover{transform:translateY(-50%);background:#fff1ec;color:#d71920}.auth-submit{width:100%;margin-top:5px}.auth-message{margin-top:18px;padding:13px 15px;background:#fff8f3;border:1px solid #f2d8ce;border-radius:12px;color:#444444;font-weight:700;line-height:1.4}.auth-links,.auth-message{font-size:14px;text-align:center}.auth-links{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:24px;color:#666666}.auth-links a{color:#d71920;font-weight:800;text-decoration:none}.auth-links a:hover{text-decoration:underline}.auth-back{margin-top:20px;color:#666666;font-size:14px;font-weight:700;text-decoration:none}.auth-back:hover{color:#d71920}@media (max-width:900px){.categories{grid-template-columns:repeat(2,1fr)}.offers-grid,.restaurant-grid{grid-template-columns:1fr;max-width:600px;margin-left:auto;margin-right:auto}.section-content h2{font-size:32px}.footer-content{grid-template-columns:1fr;gap:40px}}@media (max-width:768px){header{padding:6px 20px}.site-logo{width:54px}.desktop-nav{display:none}.menu-toggle{display:block}.mobile-menu{position:absolute;top:100%;left:0;width:100%;display:flex;flex-direction:column;background:#d71920;border-top:1px solid rgba(255,255,255,.2);box-shadow:0 12px 25px rgba(0,0,0,.18);max-height:0;overflow:hidden;opacity:0;visibility:hidden;transition:max-height .3s ease,opacity .25s ease}.mobile-menu.open{max-height:320px;opacity:1;visibility:visible}.mobile-menu a{text-decoration:none}.mobile-menu a,.mobile-menu button{width:100%;padding:17px 22px;border-bottom:1px solid rgba(255,255,255,.12);color:#ffffff;font-weight:700;text-align:left}.mobile-menu button{border-radius:0;background:transparent;font-size:16px}.mobile-menu button:hover{transform:none;background:rgba(255,255,255,.1)}.hero{min-height:68vh;padding:55px 20px}.hero h1{font-size:42px}.hero p{font-size:18px}footer{padding-left:20px;padding-right:20px}.footer-links{grid-template-columns:1fr 1fr}.location-modal{padding:22px;border-radius:20px}.location-modal-header h2{font-size:25px}.auth-page{padding:28px 16px}.auth-card{padding:26px 22px;border-radius:20px}.auth-card h1{font-size:29px}.auth-logo{width:145px}.account-profile-card{align-items:flex-start;flex-wrap:wrap}.account-secondary-button{width:100%}.account-grid{grid-template-columns:1fr}.account-address-card{flex-direction:column}.account-address-actions{width:100%}.account-address-actions button{flex:1 1}.account-form-row{grid-template-columns:1fr;gap:0}.authenticated-location-strip{padding:14px 20px}.authenticated-location-content{align-items:flex-start;flex-direction:column;gap:7px}.authenticated-greeting{font-size:20px}.authenticated-address-button{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (max-width:520px){section{padding:55px 16px}.categories{grid-template-columns:1fr 1fr;gap:12px}.categories div{min-height:125px;font-size:36px}.categories strong{font-size:16px}.hero h1{font-size:36px}.hero p{font-size:16px}.section-content h2{font-size:28px}.footer-logo{width:150px}.footer-links{grid-template-columns:1fr}.location-overlay{align-items:flex-end;padding:0}.location-modal{max-height:92vh;border-radius:24px 24px 0 0}.form-row{flex-direction:column;gap:0}.location-main-button{width:100%;padding-left:18px;padding-right:18px}.auth-card{padding:24px 18px}}.admin-shell{min-height:100vh;background:#fff8ec;color:#351b12}.admin-nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 5%;background:#8f2018;color:#fff}.admin-nav a{color:#fff;text-decoration:none}.admin-nav button{margin-left:auto}.admin-content{max-width:1100px;margin:0 auto;padding:2rem 5%}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:1rem;gap:1rem}.admin-grid article,.admin-list article{background:#fff;border:1px solid #f0d7b1;border-radius:14px;padding:1rem;display:flex;justify-content:space-between;gap:1rem}.admin-grid strong{font-size:2rem;display:block}.admin-grid span,.admin-list small{display:block;color:#735f50}.admin-form{display:flex;gap:.7rem;flex-wrap:wrap;margin:1rem 0 2rem}.admin-card input,.admin-form input,.admin-form select,.admin-list select{padding:.7rem;border:1px solid #d8b993;border-radius:8px;background:#fff}.admin-card button,.admin-form button{background:#d63a25;color:#fff;border:0;border-radius:8px;padding:.75rem 1rem;font-weight:700}.admin-list{display:grid;grid-gap:.7rem;gap:.7rem}.admin-card{max-width:420px;margin:10vh auto;background:#fff;padding:2rem;border-radius:18px;box-shadow:0 8px 30px #5d2c1b22}.admin-card form{display:grid;grid-gap:1rem;gap:1rem}.admin-card label{display:grid;grid-gap:.3rem;gap:.3rem}.empty-state,.restaurant-page{max-width:900px;margin:3rem auto;padding:0 5%}.restaurant-page{min-height:70vh}.empty-state{background:#fff8ec;padding:2rem;border-radius:16px}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#8f2018;color:#fff;display:flex;flex-direction:column;padding:1.4rem 1rem;z-index:20;box-shadow:4px 0 18px #42100d22}.admin-brand{display:flex;align-items:center;gap:.7rem;padding:.3rem .6rem 2rem;font-size:1rem;line-height:1.1}.admin-brand img{width:44px;height:44px;object-fit:contain;background:#fff;border-radius:10px}.admin-sidebar nav{display:grid;grid-gap:.35rem;gap:.35rem}.admin-sidebar nav a{display:flex;align-items:center;gap:.75rem;color:#ffe9d2;text-decoration:none;padding:.8rem .85rem;border-radius:9px;font-weight:600}.admin-sidebar nav a.active,.admin-sidebar nav a:hover{background:#b72d20;color:#fff}.admin-sidebar nav a span{width:1.3rem;text-align:center;color:#ffd25c}.admin-future{display:grid;grid-gap:.5rem;gap:.5rem;margin:2rem .85rem;color:#edc1a5;font-size:.88rem}.admin-future small{color:#ffd25c;text-transform:uppercase;font-weight:700}.admin-logout{margin-top:auto;background:transparent;color:#fff;border:1px solid #ffffff55;border-radius:8px;padding:.7rem;text-align:left}.admin-topbar{position:fixed;top:0;left:248px;right:0;height:58px;background:#fff;border-bottom:1px solid #ead9c8;display:flex;justify-content:space-between;align-items:center;padding:0 2rem;z-index:10;color:#735f50}.admin-topbar button{background:none;border:0;color:#8f2018;font-weight:700}.admin-content{margin-left:248px;padding:5.5rem 4% 3rem;max-width:none}.admin-menu-toggle{display:none}.admin-form,.admin-grid,.admin-list{max-width:1100px}.admin-shell>p{margin-left:248px;padding:2rem}@media (max-width:760px){.admin-sidebar{transform:translateX(-105%);transition:transform .2s ease}.admin-menu-open .admin-sidebar{transform:translateX(0)}.admin-menu-toggle{display:block;position:fixed;top:12px;left:12px;z-index:30;background:#8f2018;color:#fff;border:0;border-radius:7px;padding:.55rem .7rem}.admin-topbar{left:0;padding-left:4.2rem}.admin-content{margin-left:0;padding:5rem 1rem 2rem}.admin-shell>p{margin-left:0}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form button,.admin-form input,.admin-form select{width:100%}}.restaurant-admin-list article{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,260px);align-items:start}.restaurant-admin-list .catalog-identity,.restaurant-admin-list .catalog-state,.restaurant-admin-list .restaurant-admin-actions,.restaurant-admin-list .restaurant-location-details,.restaurant-admin-list .restaurant-location-feedback{min-width:0}.restaurant-admin-list .restaurant-admin-actions,.restaurant-admin-list .restaurant-location-details,.restaurant-admin-list .restaurant-location-feedback{grid-column:1/-1}.restaurant-admin-list .restaurant-admin-actions{width:100%}.restaurant-status-feedback{grid-column:1/-1;margin:0;padding:.75rem;border-radius:8px;background:#fff8ec;overflow-wrap:anywhere}.restaurant-status-feedback.admin-error{color:#8f2018;background:#fff0ec}.restaurant-status-feedback.admin-success{color:#245b32;background:#edf8ef}.restaurant-location-feedback{flex-basis:100%;margin:0;padding:.75rem;border-radius:8px;background:#fff8ec;overflow-wrap:anywhere}.restaurant-location-feedback.admin-error{color:#8f2018;background:#fff0ec}.restaurant-location-feedback.admin-success{color:#245b32;background:#edf8ef}.admin-content,.admin-topbar{width:auto}.admin-editor>header{color:#39261c}.admin-editor footer{background:transparent;color:inherit}.catalog-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem}.catalog-heading h1{margin:.25rem 0}.catalog-heading p{color:#735f50}.catalog-primary{background:#8f2018!important;color:white!important;border-color:#8f2018!important}.admin-catalog button,.admin-catalog select,.admin-editor button{min-height:44px;border:1px solid #ddc9b8;border-radius:8px;padding:.6rem .85rem;cursor:pointer}.admin-catalog button:disabled,.admin-editor button:disabled{opacity:.55;cursor:wait}.catalog-summary{display:flex;flex-wrap:wrap;gap:1rem;margin:1.5rem 0}.catalog-summary>span{background:white;border:1px solid #ead9c8;border-radius:12px;padding:1rem}.catalog-summary strong{font-size:1.4rem;margin-right:.4rem}.catalog-identity{flex:1 1;min-width:0;overflow-wrap:anywhere}.catalog-identity small,.catalog-identity strong,.catalog-state small{display:block}.catalog-actions,.catalog-tags{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.catalog-tags{margin-top:.65rem}.catalog-badge{display:inline-block;padding:.3rem .55rem;border-radius:6px;background:#f5ede4;font-size:.8rem}.catalog-state{max-width:260px;overflow-wrap:anywhere}.category-admin-list{display:grid;grid-gap:.75rem;gap:.75rem}.category-admin-list article{display:flex;align-items:center;gap:1rem;padding:1rem;background:white;border:1px solid #ead9c8;border-radius:12px}.category-icon{font-size:1.7rem}.catalog-empty{padding:2rem;text-align:center;border:1px dashed #ddc9b8;border-radius:12px}.admin-editor{box-sizing:border-box;width:min(740px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid #ead9c8;border-radius:16px;color:#39261c;background:#fffaf5;overflow:auto}.admin-editor::-webkit-backdrop{background:#24160fb3}.admin-editor::backdrop{background:#24160fb3}.admin-editor>header{position:-webkit-sticky;position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;background:#fffaf5;padding:1rem 1.5rem;border-bottom:1px solid #ead9c8}.admin-editor h2{margin:.25rem 0}.admin-editor form{padding:1.5rem}.admin-editor fieldset{min-width:0;border:0;padding:0;margin:0 0 1rem}.admin-editor label{display:grid;grid-gap:.4rem;gap:.4rem;margin-bottom:.9rem;font-size:.9rem}.admin-editor input:not([type=checkbox]),.admin-editor select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:.65rem;border:1px solid #ddc9b8;border-radius:8px;background:white;font:inherit}.admin-editor .editor-section{padding:1rem 0;border-bottom:1px solid #ead9c8;margin-bottom:1rem}.admin-editor legend{font-weight:700}.editor-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.category-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.category-chips label{display:flex;align-items:center;gap:.5rem;border:1px solid #ddc9b8;border-radius:8px;padding:.6rem;min-height:44px;margin:0}.category-chips .selected{background:#fff0df;border-color:#8f2018}.editor-hours{display:grid;grid-template-columns:80px 1fr 1fr;grid-gap:.6rem;gap:.6rem;margin:.5rem 0;align-items:center}.editor-hours label{display:flex;gap:.5rem;margin:0}.admin-editor footer{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem}.admin-editor [role=alert]{color:#8f2018}.admin-editor :focus-visible{outline:3px solid #b56e24;outline-offset:2px}@media(max-width:600px){.catalog-heading{align-items:flex-start;flex-direction:column}.catalog-heading>button{width:100%}.category-admin-list article{flex-wrap:wrap}.category-admin-list .catalog-actions{width:100%}.catalog-state{max-width:100%}.admin-editor form,.admin-editor>header{padding:1rem}.editor-grid{grid-template-columns:1fr;gap:0}.catalog-summary{gap:.5rem}.catalog-summary>span{flex:1 1;padding:.75rem;font-size:.8rem}.restaurant-admin-list article{grid-template-columns:minmax(0,1fr);gap:1rem}.restaurant-admin-list .catalog-identity,.restaurant-admin-list .catalog-state,.restaurant-admin-list .restaurant-admin-actions,.restaurant-admin-list .restaurant-location-details,.restaurant-admin-list .restaurant-location-feedback{grid-column:1}.editor-hours{grid-template-columns:60px 1fr 1fr;gap:.3rem}}.menu-section{margin:2rem 0}.menu-product-list{display:grid;grid-gap:1rem;gap:1rem}.menu-product{padding:1rem;background:#fff;border:1px solid #ead9c8;border-radius:12px}.menu-product img{max-width:120px;max-height:100px;object-fit:cover;float:right;border-radius:8px}.menu-product-unavailable{opacity:.6}.menu-unavailable{display:block;color:#8f2018;font-weight:700}.menu-options{margin-top:1rem;padding-top:.75rem;border-top:1px solid #ead9c8}.menu-options ul{margin:.4rem 0;padding-left:1.2rem}.customer-home{background:#fffaf5;color:#30231e}.customer-home-shell>.tz-shell-header{display:none}.customer-home-shell>.tz-shell-main{width:100%;max-width:none;padding:0}.customer-home-shell{min-height:100dvh}.address-manager button,.customer-address-dialog button,.customer-home button{min-height:44px;border:0;border-radius:10px;padding:8px 12px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.address-manager button:hover,.customer-address-dialog button:hover,.customer-home button:hover{transform:none}.address-manager button:disabled,.customer-home button:disabled{opacity:.55;cursor:wait}.address-manager :focus-visible,.customer-address-dialog :focus-visible,.customer-address-page a:focus-visible,.customer-home :focus-visible{outline:3px solid #ae151b;outline-offset:3px}.customer-home .customer-header{padding:8px 20px;background:#d71920}.customer-home .header-content{max-width:1080px}.customer-home .site-logo{width:48px;height:48px;object-fit:contain}.customer-home .account-menu-trigger{background:transparent;color:white}.customer-home .menu-toggle{min-width:44px;padding:8px}.customer-home .account-menu-dropdown button{background:transparent;color:#30231e}.customer-mobile-menu{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px;padding-top:8px}.customer-mobile-menu a,.customer-mobile-menu button{display:flex;align-items:center;padding:10px;min-height:44px;text-decoration:none;color:white;background:transparent}.customer-home-content{width:min(1080px,calc(100% - 40px));margin:0 auto}.customer-home .authenticated-location-strip{margin:0;padding:18px 0 12px;background:none;border:0;display:grid;grid-gap:2px;gap:2px}.customer-home .authenticated-greeting{font-size:14px;font-weight:400;color:#67544b}.customer-home .authenticated-address-button{max-width:100%;width:-moz-fit-content;width:fit-content;min-height:44px;padding:5px 0;background:transparent;color:#30231e;font-size:17px;font-weight:700;text-align:left;white-space:normal;overflow-wrap:anywhere}.authenticated-address-button span{color:#b7141b;padding-left:5px}.temporary-location-strip{padding:18px 0 12px}.temporary-location-strip h1{margin:0 0 5px;font-size:20px}.temporary-location-strip button{background:transparent;padding-left:0;color:#ae151b;text-align:left}.customer-feedback{padding:12px 0;font-size:14px}.customer-empty button,.customer-feedback button{background:#ffedc6;color:#6b340b}.customer-discovery{padding:0}.customer-search{display:flex;align-items:center;gap:9px;min-height:46px;padding:0 13px;border:1px solid #e6d9ce;border-radius:13px;background:#fff}.customer-search>span{font-size:28px;color:#8b7165}.customer-search input{width:100%;height:44px;padding:0;border:0;background:transparent;font:inherit;font-size:16px;color:#30231e;min-width:0}.customer-search:focus-within{outline:2px solid #d71920;outline-offset:2px}.customer-search input:focus{outline:none}.search-scope{display:block;font-size:11px;color:#766153;margin-top:5px}.customer-nearby{margin:16px 0 10px;display:flex;align-items:baseline;gap:12px}.customer-nearby h1{margin:0;font-size:20px;line-height:1.3}.customer-nearby p{margin:0;font-size:13px;color:#766153}.customer-categories{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;padding:3px 2px 9px;scrollbar-width:thin}.customer-home .customer-categories button{display:flex;align-items:center;gap:6px;flex:0 0 auto;padding:7px 13px;background:#fff;border:1px solid #e8dcd0;border-radius:14px;font-size:13px;min-height:46px;color:#574238}.customer-categories button span{font-size:21px;line-height:1}.customer-home .customer-categories button[aria-pressed=true]{background:#fff0c8;border-color:#e9bc43;color:#762d11;box-shadow:inset 0 -2px #efc95b}.customer-restaurants{padding:10px 0 28px;scroll-margin-top:12px}.customer-list-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;margin-bottom:6px}.customer-list-heading h2{margin:0;font-size:18px}.customer-home .customer-list-heading button{background:transparent;color:#ad131a;padding:6px;font-size:12px}.customer-restaurant-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,260px));justify-content:start;grid-gap:16px;gap:16px}.customer-restaurant-card{display:flex;align-items:center;gap:12px;min-width:0;padding:13px;background:white;border:1px solid #eadfd6;border-radius:14px;box-shadow:0 2px 6px #47261305;text-decoration:none;color:inherit;display:grid;grid-template-columns:1fr;grid-gap:0;gap:0;overflow:hidden;padding:0;border-radius:18px;box-shadow:0 8px 24px #47261312;transition:transform .18s ease,box-shadow .18s ease}.customer-restaurant-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px #4726131f}.customer-restaurant-logo{order:0;width:100%;height:auto;aspect-ratio:4/3;border-radius:0;background:linear-gradient(135deg,#ffedc6,#f4c66b);font-size:30px}.customer-restaurant-card>div:last-of-type{display:grid;grid-gap:6px;gap:6px;padding:14px 15px 16px}.customer-restaurant-card h3{font-size:17px}.customer-restaurant-card p{font-size:13px}.restaurant-arrow{display:none}.customer-restaurants{padding-top:16px}.customer-discovery{padding:14px 0 4px;border-radius:20px;background:linear-gradient(135deg,#fff4e5,#fffaf5)}.customer-search{min-height:52px;border-radius:16px;box-shadow:0 6px 18px #4726130a}.customer-nearby{margin:18px 14px 10px}.customer-categories{padding-left:14px;padding-right:14px}.customer-home .authenticated-location-strip{padding-top:16px}.customer-home .authenticated-address-button{font-size:18px}.customer-list-heading h2{font-size:22px}.customer-restaurant-card:hover{border-color:#d7aa94}.customer-restaurant-logo{width:58px;height:58px;flex-shrink:0;border-radius:12px;background:#fff0cc;display:grid;place-items:center;color:#ba171d;font-size:20px;font-weight:800}.customer-restaurant-logo img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.customer-restaurant-card h3{margin:0 0 5px;font-size:15px;overflow-wrap:anywhere;line-height:1.3}.customer-restaurant-card p{margin:0 0 5px;font-size:12px;color:#766153}.customer-restaurant-card .restaurant-closed,.customer-restaurant-card .restaurant-open{font-size:11px;color:#316142;font-weight:700}.customer-restaurant-card .restaurant-closed{color:#796348}.restaurant-arrow{margin-left:auto;font-size:22px;color:#b8a394}.customer-empty{margin:0;padding:18px;background:#fff;border:1px dashed #e0cbbb;border-radius:14px;font-size:14px;line-height:1.5;color:#70574b}.customer-empty p{margin:5px 0 8px}.customer-empty a{color:#ad131a}.customer-home .customer-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:22px max(20px,calc((100% - 1080px) / 2));background:#f5ebe1;color:#70574b;font-size:12px}.customer-footer a{color:#a31319}.customer-address-shell{max-width:660px;margin:0 auto;padding:18px 20px 40px}.customer-address-page .account-header{padding:6px 20px}.customer-address-page .account-back{display:inline-flex;align-items:center;min-height:44px;margin:0 0 10px;font-size:14px}.customer-address-dialog{width:min(540px,calc(100% - 24px));max-height:min(760px,calc(100dvh - 32px));border:1px solid #eadbd0;padding:24px 20px 20px;border-radius:20px;background:#fffaf5;color:#30231e;overflow-y:auto;box-shadow:0 24px 80px #30190f33}.customer-address-dialog::-webkit-backdrop{background:#22170f88}.customer-address-dialog::backdrop{background:#22170f88}.customer-address-dialog .address-dialog-close{position:absolute;right:8px;top:6px;min-width:44px;background:transparent;color:#76594b;font-size:26px}.address-manager{font-size:14px;color:#30231e}.address-manager h2{margin:0 36px 16px 0;font-size:21px;line-height:1.3}.address-manager h2:focus{outline:none}.address-manager>p{line-height:1.5}.address-list{display:grid;grid-gap:10px;gap:10px}.address-card{padding:13px 14px 5px;border:1px solid #e8d9cb;border-radius:13px;background:#fff}.address-card-title{display:flex;gap:8px;justify-content:space-between;align-items:center}.address-card-title strong{font-size:14px;overflow-wrap:anywhere}.address-primary-badge{flex-shrink:0;padding:4px 7px;border-radius:6px;background:#fff1c9;color:#765009;font-size:10px;font-weight:700}.address-card p{font-size:14px;line-height:1.4;margin:7px 0 3px;overflow-wrap:anywhere}.address-card small{font-size:12px;color:#766153;line-height:1.5}.address-actions{display:flex;gap:2px;flex-wrap:wrap;margin-left:-9px;margin-top:2px}.address-manager .address-actions button{padding:8px 9px;font-size:12px;color:#a4161b;background:transparent}.address-manager .address-actions button:hover{background:#fff0e9}.address-manager .address-add{margin-top:14px;width:100%;background:#ffdc72;color:#572906}.address-choices{display:grid;grid-gap:10px;gap:10px}.address-manager .address-choices>button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;text-align:left;padding:12px 14px;background:white;border:1px solid #e4d5c6}.address-manager .address-back{color:#8b3525;background:transparent;border:0;font-weight:400}.address-gps{display:grid;grid-gap:10px;gap:10px}.address-gps p{line-height:1.6}.address-gps button{background:#ffebbd;color:#622e10}.address-notice{margin:0 0 12px;padding:10px 12px;background:#edf5ec;border:1px solid #d1e2cf;border-radius:10px;color:#2e5731;font-size:13px;line-height:1.5}.address-notice.error{background:#fff0ec;border-color:#efc5bb;color:#a02020}.address-notice button{display:block;background:transparent;color:inherit}.compact-address-form fieldset{margin:0;padding:0;border:0;display:grid;grid-gap:12px;gap:12px;min-width:0}.compact-address-form label{display:block;min-width:0;font-size:12px;font-weight:700;line-height:1.5}.compact-address-form label small{font-weight:400}.compact-address-form input,.compact-address-form select{display:block;width:100%;min-width:0;height:44px;margin-top:4px;border:1px solid #ddcebf;border-radius:9px;padding:8px 10px;color:#30231e;background:white;font:inherit;font-size:16px;font-weight:400}.compact-address-form input[readonly]{background:#f5eee6;color:#806b5f}.address-form-row{display:grid;grid-template-columns:minmax(0,1fr) 75px;grid-gap:10px;gap:10px}.address-form-row.street-row{grid-template-columns:minmax(0,1fr) 90px}.address-form-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:5px}.address-manager .address-form-actions button{background:#f0e6dc;color:#634637}.address-manager .address-save{background:#d71920!important;color:#fff!important;flex:1 1}.address-manager .address-danger{background:#b8171d!important;color:white!important}.address-confirm p{line-height:1.6}.address-temporary-note{color:#766153;font-size:12px;margin-bottom:0}@media (max-width:760px){.customer-home .customer-header{padding:6px 16px}.customer-home .site-logo{width:44px;height:44px}.customer-home-content{width:calc(100% - 32px)}.customer-home .authenticated-location-strip{padding:12px 0 8px;gap:0}.customer-home .authenticated-greeting{font-size:13px}.customer-home .authenticated-address-button{font-size:16px;min-height:44px}.customer-nearby{display:block;margin:13px 0 8px}.customer-nearby h1{font-size:18px;margin-bottom:3px}.customer-nearby p{font-size:12px}.customer-home .customer-categories button{flex-direction:column;gap:5px;min-width:68px;min-height:64px;padding:8px 10px;font-size:11px;border-radius:13px}.customer-categories{gap:7px;margin-right:-16px;padding-right:16px}.customer-categories button span{font-size:22px}.customer-restaurants{padding-top:5px}.customer-list-heading h2{font-size:17px}.customer-restaurant-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.customer-restaurant-card{min-height:94px;padding:12px;grid-template-columns:124px minmax(0,1fr);min-height:110px}.customer-restaurant-logo{height:100%;aspect-ratio:auto}.customer-restaurant-card>div:last-of-type{padding:13px}.customer-home .customer-discovery{margin-inline:-4px;padding-top:10px}.customer-list-heading h2{font-size:20px}.customer-home .customer-footer{padding:18px 16px}.customer-address-dialog{padding:24px 16px 16px;border-radius:18px}.address-manager h2{font-size:19px}.customer-address-shell{padding:10px 16px 30px}}@media (min-width:761px) and (max-width:1020px){.customer-restaurant-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:769px){.customer-mobile-menu{display:none}}:root{--tz-color-red-700:#9f1d24;--tz-color-red-600:#c9232b;--tz-color-yellow-500:#f5b700;--tz-color-cream-50:#fff8f1;--tz-color-cream-100:#f6ede5;--tz-color-white:#ffffff;--tz-color-brown-950:#2b1d18;--tz-color-brown-700:#735f56;--tz-color-neutral-200:#e6d8cd;--tz-color-green-700:#2e7d4f;--tz-color-amber-700:#a86600;--tz-color-danger-700:#b42318;--tz-color-blue-700:#1f6feb;--tz-color-brand:var(--tz-color-red-600);--tz-color-brand-strong:var(--tz-color-red-700);--tz-color-accent:var(--tz-color-yellow-500);--tz-color-background:var(--tz-color-cream-50);--tz-color-surface:var(--tz-color-white);--tz-color-surface-muted:var(--tz-color-cream-100);--tz-color-text:var(--tz-color-brown-950);--tz-color-text-muted:var(--tz-color-brown-700);--tz-color-border:var(--tz-color-neutral-200);--tz-color-success:var(--tz-color-green-700);--tz-color-warning:var(--tz-color-amber-700);--tz-color-danger:var(--tz-color-danger-700);--tz-color-focus:var(--tz-color-blue-700);--tz-font-family-base:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--tz-font-family-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--tz-type-display-size:3rem;--tz-type-display-line:1.08;--tz-type-display-weight:800;--tz-type-h1-size:2.25rem;--tz-type-h1-line:1.15;--tz-type-h1-weight:800;--tz-type-h2-size:1.75rem;--tz-type-h2-line:1.2;--tz-type-h2-weight:750;--tz-type-h3-size:1.375rem;--tz-type-h3-line:1.25;--tz-type-h3-weight:700;--tz-type-body-large-size:1.125rem;--tz-type-body-large-line:1.55;--tz-type-body-size:1rem;--tz-type-body-line:1.5;--tz-type-caption-size:.8125rem;--tz-type-caption-line:1.4;--tz-type-label-size:.875rem;--tz-type-label-line:1.35;--tz-type-label-weight:650;--tz-space-1:4px;--tz-space-2:8px;--tz-space-3:12px;--tz-space-4:16px;--tz-space-5:20px;--tz-space-6:24px;--tz-space-8:32px;--tz-space-10:40px;--tz-space-12:48px;--tz-space-16:64px;--tz-space-20:80px;--tz-radius-small:8px;--tz-radius-medium:12px;--tz-radius-large:16px;--tz-radius-hero:24px;--tz-radius-pill:999px;--tz-shadow-subtle:0 1px 3px rgba(43,29,24,.08);--tz-shadow-card:0 8px 24px rgba(43,29,24,.10);--tz-shadow-floating:0 20px 48px rgba(43,29,24,.18);--tz-z-base:0;--tz-z-sticky:10;--tz-z-navigation:100;--tz-z-overlay:500;--tz-z-dialog:1000;--tz-z-toast:1100;--tz-breakpoint-xs:480px;--tz-breakpoint-sm:768px;--tz-breakpoint-md:1024px;--tz-breakpoint-lg:1280px;--tz-breakpoint-xl:1440px;--tz-gutter-mobile:16px;--tz-gutter-tablet:24px;--tz-gutter-desktop:32px;--tz-gutter-wide:40px;--tz-container-mobile:100%;--tz-container-tablet:720px;--tz-container-desktop:1200px;--tz-container-wide:1440px;--tz-grid-gap:var(--tz-space-6);--tz-touch-target:44px;--tz-control-height-small:36px;--tz-control-height-medium:44px;--tz-control-height-large:52px;--tz-control-padding-inline:var(--tz-space-4);--tz-control-border-width:1px;--tz-image-placeholder:var(--tz-color-surface-muted);--tz-safe-top:env(safe-area-inset-top,0px);--tz-safe-right:env(safe-area-inset-right,0px);--tz-safe-bottom:env(safe-area-inset-bottom,0px);--tz-safe-left:env(safe-area-inset-left,0px)}@media (max-width:767px){:root{--tz-type-display-size:2.25rem;--tz-type-h1-size:1.875rem;--tz-type-h2-size:1.5rem;--tz-type-h3-size:1.25rem}}:where(:focus-visible){outline:3px solid var(--tz-color-focus,#1f6feb);outline-offset:3px}.tz-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tz-skip-link{position:fixed;top:var(--tz-space-2,8px);left:var(--tz-space-2,8px);z-index:var(--tz-z-toast,1100);transform:translateY(-180%);padding:var(--tz-space-2,8px) var(--tz-space-4,16px);border-radius:var(--tz-radius-small,8px);background:var(--tz-color-text,#2b1d18);color:var(--tz-color-surface,#fff);font-weight:var(--tz-type-label-weight,650)}.tz-skip-link:focus-visible{transform:translateY(0)}.tz-safe-area{padding:var(--tz-safe-top) var(--tz-safe-right) var(--tz-safe-bottom) var(--tz-safe-left)}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.tz-button,.tz-checkbox-input,.tz-control,.tz-icon-button{font:inherit}.tz-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--tz-space-2);min-width:var(--tz-touch-target);min-height:var(--tz-control-height-medium);padding:0 var(--tz-control-padding-inline);border:var(--tz-control-border-width) solid transparent;border-radius:var(--tz-radius-medium);font-size:var(--tz-type-label-size);font-weight:var(--tz-type-label-weight);line-height:1;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.tz-button:hover:not(:disabled){transform:translateY(-1px)}.tz-button:active:not(:disabled){transform:translateY(0)}.tz-button:disabled{cursor:not-allowed;opacity:.55}.tz-button-small{min-height:var(--tz-control-height-small);padding-inline:var(--tz-space-3);font-size:var(--tz-type-caption-size)}.tz-button-medium{min-height:var(--tz-control-height-medium)}.tz-button-large{min-height:var(--tz-control-height-large);padding-inline:var(--tz-space-6);font-size:var(--tz-type-body-size)}.tz-button-primary{background:var(--tz-color-brand);color:var(--tz-color-surface)}.tz-button-primary:hover:not(:disabled){background:var(--tz-color-brand-strong)}.tz-button-secondary{background:var(--tz-color-surface);border-color:var(--tz-color-brand);color:var(--tz-color-brand-strong)}.tz-button-secondary:hover:not(:disabled),.tz-button-tertiary{background:var(--tz-color-surface-muted)}.tz-button-tertiary{color:var(--tz-color-text)}.tz-button-tertiary:hover:not(:disabled){background:var(--tz-color-border)}.tz-button-ghost{background:transparent;color:var(--tz-color-brand-strong)}.tz-button-ghost:hover:not(:disabled){background:var(--tz-color-surface-muted)}.tz-button-destructive{background:var(--tz-color-danger);color:var(--tz-color-surface)}.tz-button-destructive:hover:not(:disabled){background:var(--tz-color-brand-strong)}.tz-button-link{min-width:0;padding-inline:0;background:transparent;color:var(--tz-color-brand-strong);text-decoration:underline}.tz-button-icon{display:inline-flex;align-items:center}.tz-button-spinner{width:1em;height:1em;border:2px solid;border-right:2px solid transparent;border-radius:var(--tz-radius-pill);animation:tz-spin .7s linear infinite}.tz-icon-button{display:inline-grid;place-items:center;padding:0;border:1px solid transparent;border-radius:var(--tz-radius-medium);background:transparent;color:var(--tz-color-text);cursor:pointer}.tz-icon-button,.tz-icon-button-small{width:var(--tz-touch-target);height:var(--tz-touch-target)}.tz-icon-button-large{width:var(--tz-control-height-large);height:var(--tz-control-height-large)}.tz-icon-button:hover:not(:disabled){background:var(--tz-color-surface-muted)}.tz-icon-button:active:not(:disabled){background:var(--tz-color-border)}.tz-icon-button:disabled{cursor:not-allowed;opacity:.55}.tz-icon-button-destructive{color:var(--tz-color-danger)}.tz-field{display:grid;grid-gap:var(--tz-space-2);gap:var(--tz-space-2);min-width:0}.tz-field-label{color:var(--tz-color-text);font-size:var(--tz-type-label-size);font-weight:var(--tz-type-label-weight);line-height:var(--tz-type-label-line)}.tz-field-required{color:var(--tz-color-danger)}.tz-field-description,.tz-field-message{margin:0;font-size:var(--tz-type-caption-size);line-height:var(--tz-type-caption-line)}.tz-field-description{color:var(--tz-color-text-muted)}.tz-field-error-message{color:var(--tz-color-danger)}.tz-field-success-message{color:var(--tz-color-success)}.tz-control{display:block;width:100%;min-width:0;min-height:var(--tz-control-height-medium);padding:0 var(--tz-space-3);border:var(--tz-control-border-width) solid var(--tz-color-border);border-radius:var(--tz-radius-medium);background:var(--tz-color-surface);color:var(--tz-color-text);font-size:var(--tz-type-body-size);line-height:var(--tz-type-body-line);transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.tz-control-small{min-height:var(--tz-control-height-small);font-size:var(--tz-type-caption-size)}.tz-control-large{min-height:var(--tz-control-height-large);padding-inline:var(--tz-space-4)}.tz-control:hover:not(:disabled){border-color:var(--tz-color-text-muted)}.tz-control:focus{outline:none;border-color:var(--tz-color-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--tz-color-focus) 18%,transparent)}.tz-control:disabled{background:var(--tz-color-surface-muted);color:var(--tz-color-text-muted);cursor:not-allowed}.tz-control-invalid{border-color:var(--tz-color-danger)}.tz-control-success{border-color:var(--tz-color-success)}.tz-textarea{min-height:96px;padding-block:var(--tz-space-3);resize:vertical}.tz-select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.tz-checkbox{display:inline-flex;align-items:flex-start;gap:var(--tz-space-2);min-height:var(--tz-touch-target);padding-block:var(--tz-space-2);color:var(--tz-color-text);cursor:pointer}.tz-checkbox-input{flex:0 0 auto;width:20px;height:20px;margin:2px 0 0;accent-color:var(--tz-color-brand)}.tz-checkbox-invalid{color:var(--tz-color-danger)}.tz-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 var(--tz-space-2);border-radius:var(--tz-radius-pill);font-size:var(--tz-type-caption-size);font-weight:var(--tz-type-label-weight);line-height:1;white-space:nowrap}.tz-badge-small{min-height:20px;font-size:11px}.tz-badge-medium{min-height:24px}.tz-badge-neutral{background:var(--tz-color-surface-muted);color:var(--tz-color-text-muted)}.tz-badge-success{background:color-mix(in srgb,var(--tz-color-success) 12%,white);color:var(--tz-color-success)}.tz-badge-warning{background:color-mix(in srgb,var(--tz-color-warning) 14%,white);color:var(--tz-color-warning)}.tz-badge-danger{background:color-mix(in srgb,var(--tz-color-danger) 12%,white);color:var(--tz-color-danger)}.tz-badge-accent{background:var(--tz-color-accent);color:var(--tz-color-text)}.tz-badge-brand{background:color-mix(in srgb,var(--tz-color-brand) 12%,white);color:var(--tz-color-brand-strong)}.tz-text{margin:0;color:var(--tz-color-text)}.tz-text-bodyLarge{font-size:var(--tz-type-body-large-size);line-height:var(--tz-type-body-large-line)}.tz-text-body{font-size:var(--tz-type-body-size);line-height:var(--tz-type-body-line)}.tz-text-caption{font-size:var(--tz-type-caption-size);line-height:var(--tz-type-caption-line)}.tz-text-label{font-size:var(--tz-type-label-size);font-weight:var(--tz-type-label-weight);line-height:var(--tz-type-label-line)}.tz-text-muted{color:var(--tz-color-text-muted)}.tz-text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tz-heading{margin:0;color:var(--tz-color-text)}.tz-heading-display{font-size:var(--tz-type-display-size);font-weight:var(--tz-type-display-weight);line-height:var(--tz-type-display-line)}.tz-heading-h1{font-size:var(--tz-type-h1-size);font-weight:var(--tz-type-h1-weight);line-height:var(--tz-type-h1-line)}.tz-heading-h2{font-size:var(--tz-type-h2-size);font-weight:var(--tz-type-h2-weight);line-height:var(--tz-type-h2-line)}.tz-heading-h3{font-size:var(--tz-type-h3-size);font-weight:var(--tz-type-h3-weight);line-height:var(--tz-type-h3-line)}.tz-grid,.tz-inline,.tz-stack{min-width:0;gap:var(--tz-layout-gap,var(--tz-space-4))}.tz-stack{display:flex;flex-direction:column}.tz-inline{display:flex;align-items:center;flex-wrap:wrap}.tz-grid{display:grid;grid-template-columns:repeat(var(--tz-grid-columns-mobile,var(--tz-grid-columns,1)),minmax(0,1fr))}.tz-container{width:min(var(--tz-container-max,var(--tz-container-customer)),calc(100% - (2 * var(--tz-container-gutter, var(--tz-gutter-mobile)))));margin-inline:auto}.tz-container-customer{--tz-container-max:var(--tz-container-customer)}.tz-container-partner{--tz-container-max:var(--tz-container-partner)}.tz-container-admin{--tz-container-max:var(--tz-container-admin)}.tz-divider{margin:0;border:0;background:var(--tz-color-border)}.tz-divider-horizontal{width:100%;height:1px}.tz-divider-vertical{width:1px;height:100%;align-self:stretch}.tz-image{position:relative;display:block;width:100%;aspect-ratio:var(--tz-image-ratio,4/3);overflow:hidden;background:var(--tz-image-placeholder)}.tz-image img,.tz-image-placeholder{display:block;width:100%;height:100%}.tz-image img{object-position:center}.tz-image-placeholder{display:grid;place-items:center;color:var(--tz-color-text-muted)}.tz-price{display:inline-flex;align-items:baseline;gap:var(--tz-space-2);color:var(--tz-color-text);font-weight:750}.tz-price-previous{color:var(--tz-color-text-muted);font-size:.875em;font-weight:400}.tz-price-promotional>span:last-child{color:var(--tz-color-danger)}@keyframes tz-spin{to{transform:rotate(1turn)}}@media (min-width:768px){.tz-container{--tz-container-gutter:var(--tz-gutter-tablet)}.tz-grid{grid-template-columns:repeat(var(--tz-grid-columns-tablet,var(--tz-grid-columns-mobile,1)),minmax(0,1fr))}}@media (min-width:1024px){.tz-container{--tz-container-gutter:var(--tz-gutter-desktop)}.tz-grid{grid-template-columns:repeat(var(--tz-grid-columns-desktop,var(--tz-grid-columns-tablet,1)),minmax(0,1fr))}.tz-button-large{min-height:var(--tz-control-height-large)}}@media (min-width:1280px){.tz-container{--tz-container-gutter:var(--tz-gutter-wide)}.tz-grid{grid-template-columns:repeat(var(--tz-grid-columns-wide,var(--tz-grid-columns-desktop,1)),minmax(0,1fr))}}.tz-shell-header{position:relative;z-index:20;border-bottom:1px solid var(--tz-color-border);background:var(--tz-color-surface)}.tz-shell-header-sticky{position:-webkit-sticky;position:sticky;top:0}.tz-shell-header-inner{width:min(var(--tz-container-wide),calc(100% - (2 * var(--tz-container-gutter,var(--tz-gutter-mobile)))));min-height:var(--tz-touch-target);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:var(--tz-space-3)}.tz-shell-header-actions,.tz-shell-header-brand{display:flex;align-items:center;min-width:0;gap:var(--tz-space-3)}.tz-shell-header-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--tz-type-label-weight)}.tz-shell-main{min-width:0;padding-block:var(--tz-space-5)}.tz-customer-shell{min-height:100dvh;display:flex;flex-direction:column;background:var(--tz-color-background)}.tz-customer-shell .tz-shell-main{flex:1 1}.tz-customer-shell-footer{margin-top:auto;padding:var(--tz-space-5) var(--tz-container-gutter,var(--tz-gutter-mobile)) calc(var(--tz-space-5) + var(--tz-safe-bottom));border-top:1px solid var(--tz-color-border);background:var(--tz-color-surface-muted)}.tz-sidebar{display:none}.tz-shell-menu-button{min-width:var(--tz-touch-target);min-height:var(--tz-touch-target);border:0;border-radius:var(--tz-radius-small);background:transparent;color:var(--tz-color-text);font:inherit;font-size:1.25rem}.tz-mobile-nav{position:fixed;z-index:30;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:calc(var(--tz-touch-target) + var(--tz-safe-bottom));padding-bottom:var(--tz-safe-bottom);border-top:1px solid var(--tz-color-border);background:var(--tz-color-surface);box-shadow:0 -4px 18px rgba(43,29,24,.08)}.tz-mobile-nav-item{min-width:0;min-height:var(--tz-touch-target);display:grid;place-items:center;align-content:center;grid-gap:2px;gap:2px;padding:var(--tz-space-1);color:var(--tz-color-text-muted);font-size:var(--tz-type-caption-size);line-height:1.1;text-decoration:none;text-align:center}.tz-mobile-nav-item[aria-current=page]{color:var(--tz-color-brand-strong);font-weight:var(--tz-type-label-weight)}.tz-mobile-nav-item-disabled{opacity:.55}.tz-operational-main{min-width:0;padding-bottom:calc(var(--tz-touch-target) + var(--tz-safe-bottom) + var(--tz-space-4))}.tz-partner-account-drawer,.tz-partner-account-topbar{display:flex;align-items:center}.tz-partner-logout-action button{min-width:var(--tz-touch-target);min-height:var(--tz-touch-target);padding-inline:var(--tz-space-3);border:1px solid var(--tz-color-border);border-radius:var(--tz-radius-small);background:var(--tz-color-surface);color:var(--tz-color-text);font:inherit}.tz-partner-logout-action p{margin:var(--tz-space-2) 0 0;color:var(--tz-color-danger);font-size:var(--tz-type-caption-size)}@media (min-width:768px){.tz-shell-header-inner{--tz-container-gutter:var(--tz-gutter-tablet)}}@media (min-width:1024px){.tz-sidebar{position:fixed;z-index:30;inset:0 auto 0 0;display:block;width:256px;border-right:1px solid var(--tz-color-border);background:var(--tz-color-surface)}.tz-sidebar-inner{height:100%;display:flex;flex-direction:column;padding:var(--tz-space-4)}.tz-sidebar-brand{padding:var(--tz-space-2) var(--tz-space-2) var(--tz-space-5)}.tz-sidebar nav{display:grid;grid-gap:var(--tz-space-1);gap:var(--tz-space-1)}.tz-sidebar-item{min-height:var(--tz-touch-target);display:flex;align-items:center;gap:var(--tz-space-3);padding-inline:var(--tz-space-3);border-radius:var(--tz-radius-small);color:var(--tz-color-text-muted);text-decoration:none}.tz-sidebar-item:hover,.tz-sidebar-item[aria-current=page]{background:var(--tz-color-surface-muted);color:var(--tz-color-brand-strong)}.tz-sidebar-footer{margin-top:auto}.tz-mobile-nav,.tz-partner-account-drawer,.tz-shell-menu-button,.tz-sidebar-close{display:none}.tz-operational-shell .tz-shell-header{width:calc(100% - 256px);margin-left:256px}.tz-operational-shell .tz-operational-main{margin-left:256px;padding-bottom:0}.tz-operational-shell .tz-shell-main{padding-block:var(--tz-space-5)}.tz-shell-header-inner{--tz-container-gutter:var(--tz-gutter-desktop)}}@media (max-width:1023px){.tz-operational-shell .tz-shell-header{padding-inline:var(--tz-space-4)}.tz-partner-account-topbar{display:none}.tz-sidebar-open{position:fixed;z-index:40;inset:0 auto 0 0;display:block;width:min(320px,calc(100% - var(--tz-space-8)));background:var(--tz-color-surface);box-shadow:var(--tz-shadow-floating)}.tz-sidebar-inner{height:100%;display:flex;flex-direction:column;padding:var(--tz-space-4)}.tz-sidebar-brand{padding:var(--tz-space-2) 0 var(--tz-space-4)}.tz-sidebar nav{display:grid;grid-gap:var(--tz-space-1);gap:var(--tz-space-1)}.tz-sidebar-item{min-height:var(--tz-touch-target);display:flex;align-items:center;gap:var(--tz-space-3);padding-inline:var(--tz-space-3);color:var(--tz-color-text);text-decoration:none;border-radius:var(--tz-radius-small)}.tz-sidebar-item[aria-current=page]{background:var(--tz-color-surface-muted);color:var(--tz-color-brand-strong)}.tz-sidebar-close{position:absolute;top:var(--tz-space-3);right:var(--tz-space-3);min-width:var(--tz-touch-target);min-height:var(--tz-touch-target);border:0;background:transparent;font-size:1.5rem}.tz-sidebar-footer{margin-top:auto}}.tz-restaurant-card{display:block;overflow:hidden;border:1px solid var(--tz-color-border);border-radius:var(--tz-radius-medium);background:var(--tz-color-surface);color:var(--tz-color-text);text-decoration:none;box-shadow:var(--tz-shadow-card);transition:transform var(--tz-motion-fast),box-shadow var(--tz-motion-fast)}.tz-restaurant-card:hover{transform:translateY(-2px);box-shadow:var(--tz-shadow-floating)}.tz-restaurant-card-content{display:grid;grid-gap:var(--tz-space-2);gap:var(--tz-space-2);padding:var(--tz-space-4)}.tz-restaurant-card h3,.tz-restaurant-card p{margin:0}.tz-restaurant-card p{color:var(--tz-color-text-muted);font-size:var(--tz-type-caption-size)}.tz-product-card{display:grid;grid-gap:var(--tz-space-3);gap:var(--tz-space-3);padding:var(--tz-space-4);border:1px solid var(--tz-color-border);border-radius:var(--tz-radius-medium);background:var(--tz-color-surface);box-shadow:var(--tz-shadow-card)}.tz-product-card-body{display:grid;grid-template-columns:minmax(0,1fr) 104px;grid-gap:var(--tz-space-4);gap:var(--tz-space-4);align-items:start}.tz-product-card-copy{min-width:0}.tz-product-card h3,.tz-product-card p{margin:0}.tz-product-card h3{font-size:1.05rem;line-height:1.3}.tz-product-card p{margin-top:var(--tz-space-2);color:var(--tz-color-text-muted);font-size:var(--tz-type-caption-size);line-height:1.45}.tz-product-card .tz-image{border-radius:var(--tz-radius-small)}.tz-product-card-price{display:flex;align-items:baseline;gap:var(--tz-space-2);margin-top:var(--tz-space-3);color:var(--tz-color-accent);font-size:1rem}.tz-product-card-price del{color:var(--tz-color-text-muted);font-size:.8rem}.tz-product-card-unavailable{opacity:.62}.tz-product-card-unavailable-label{display:inline-block;margin-top:var(--tz-space-2);color:var(--tz-color-danger);font-size:.75rem;font-weight:700}.tz-product-card-options{display:grid;grid-gap:var(--tz-space-3);gap:var(--tz-space-3);padding-top:var(--tz-space-3);border-top:1px solid var(--tz-color-border)}.tz-product-card-option-group{display:grid;grid-gap:3px;gap:3px}.tz-product-card-option-group small{color:var(--tz-color-text-muted);font-size:.72rem}.tz-product-card-option-group ul{margin:0;padding-left:1.1rem;color:var(--tz-color-text-muted);font-size:.78rem;line-height:1.5}:root{font-family:var(--tz-font-family-base);color:var(--tz-color-text);background:var(--tz-color-background)}html{text-size-adjust:100%}body{min-width:320px;font-family:var(--tz-font-family-base)}img{max-width:100%}