@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap";:root{--paper:#f3eee3;--paper-2:#fffdf8;--paper-3:#ebe4d6;--ink:#18372b;--ink-2:#2d493e;--muted:#6f786f;--green:#0a6a43;--green-2:#164c37;--green-soft:#dce9df;--terracotta:#b9693f;--line:#d9d1c2;--line-strong:#c6bdad;--danger:#a63f32;--shadow:0 18px 55px #2b302714;--radius-sm:10px;--radius-md:18px;--radius-lg:28px;color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;background:var(--paper);font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{background:var(--paper);min-width:320px;min-height:100vh;color:var(--ink);margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}::selection{color:var(--ink);background:#cfe1d5}:focus-visible{outline-offset:3px;outline:3px solid #0a6a4352}.eyebrow{color:var(--green);letter-spacing:.16em;text-transform:uppercase;margin:0 0 6px;font-size:.72rem;font-weight:800;display:block}.primary-button,.secondary-button,.text-button,.small-action,.upload-button{cursor:pointer;border:0}.primary-button,.secondary-button{border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-weight:700;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.primary-button{background:var(--green);color:#fff}.primary-button:hover{background:#075b38;transform:translateY(-1px)}.primary-button:disabled{opacity:.55;cursor:progress;transform:none}.secondary-button{border:1px solid var(--line);background:var(--paper-2);color:var(--ink)}.secondary-button:hover{border-color:var(--green)}.primary-button.wide,.secondary-button.wide{width:100%}.icon-button{border:1px solid var(--line);background:var(--paper-2);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;transition:transform .16s,border-color .16s,background .16s;display:inline-grid}.icon-button:hover{border-color:var(--green);background:#f8fbf8;transform:translateY(-1px)}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:#e6dfd2;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff8c,#0000);animation:1.35s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.public-app{background:radial-gradient(circle at 90% -15%,#0a6a4314,#0000 26rem),linear-gradient(#f5f0e5 0%,#f1ebdf 100%);min-height:100vh}.menu-topbar{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf8f5;border-bottom:1px solid #18372b1a;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:68px;padding:9px max(14px,50vw - 380px);display:flex;position:sticky;top:0}.menu-brand-button{min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:10px;padding:0;display:flex}.menu-brand-logo{border:1px solid var(--line);object-fit:cover;background:#fff;border-radius:50%;flex:none;width:44px;height:44px}.menu-brand-button>span{flex:auto;gap:2px;min-width:0;display:grid}.menu-brand-button strong{text-overflow:clip;white-space:nowrap;max-width:none;font-family:Cormorant Garamond,Georgia,serif;font-size:1.18rem;font-weight:700;line-height:1;overflow:visible}.menu-brand-button small{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:.6rem;font-weight:700}.menu-top-actions{flex:none;gap:6px;display:flex}.menu-icon-link{border:1px solid var(--line);width:38px;height:38px;color:var(--ink-2);background:#ffffffb8;border-radius:50%;place-items:center;transition:background .16s,border-color .16s,transform .16s;display:grid}.menu-icon-link:hover{border-color:var(--green);background:#fff;transform:translateY(-1px)}.qr-menu-shell{width:min(760px,100% - 28px);margin:0 auto;padding:24px 0 26px}.menu-intro{padding:4px 2px 17px}.menu-intro-kicker{color:var(--terracotta);letter-spacing:.17em;text-transform:uppercase;font-size:.66rem;font-weight:800}.menu-intro h1{letter-spacing:-.035em;margin:4px 0 3px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2.65rem,10vw,4rem);font-weight:600;line-height:.94}.menu-intro p{color:var(--muted);margin:0;font-size:.8rem}.menu-search{border:1px solid var(--line-strong);min-height:50px;color:var(--muted);background:#fffdf8eb;border-radius:15px;align-items:center;gap:10px;margin-bottom:13px;padding:0 14px;display:flex;box-shadow:0 5px 18px #20302806}.menu-search:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #0a6a4314}.menu-search input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:1rem}.menu-search input::placeholder{color:#8b918b}.menu-search button{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.menu-group-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.menu-group-card{min-height:168px;color:var(--ink);text-align:left;cursor:pointer;background:#fffdf8f0;border:1px solid #c1b7a8db;border-radius:18px;grid-template-rows:72px auto 1fr;align-items:start;gap:9px;padding:9px;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid;overflow:hidden;box-shadow:0 6px 18px #24322b09}.menu-group-card:hover{border-color:#0a6a437a;transform:translateY(-2px);box-shadow:0 10px 28px #24322b13}.menu-group-card:active{transform:translateY(0)}.menu-group-image{background:#e5dfd3;border-radius:12px;width:100%;height:72px;display:block;position:relative;overflow:hidden}.menu-group-image:after{content:"";pointer-events:none;background:linear-gradient(90deg,#112d2129,#0000 60%);position:absolute;inset:0}.menu-group-image img{object-fit:cover;width:100%;height:100%}.menu-group-icon{z-index:2;width:31px;height:31px;color:var(--green-2);background:#fffdf8eb;border:1px solid #ffffff9e;border-radius:10px;place-items:center;display:grid;position:absolute;bottom:7px;left:7px;box-shadow:0 3px 10px #15261e1f}.menu-group-copy{gap:3px;min-width:0;padding:0 3px;display:grid}.menu-group-copy strong{letter-spacing:-.015em;font-family:Cormorant Garamond,Georgia,serif;font-size:1.26rem;font-weight:700;line-height:.94}.menu-group-copy small{min-height:2.55em;color:var(--muted);font-size:.61rem;line-height:1.28}.menu-group-meta{width:100%;color:var(--green);justify-content:space-between;align-self:end;align-items:center;gap:8px;padding:0 3px 1px;font-size:.62rem;font-weight:800;display:flex}.menu-info-strip{border-top:1px solid var(--line);color:var(--muted);gap:4px;margin-top:16px;padding:12px 2px 0;font-size:.64rem;display:grid}.menu-info-strip a{width:fit-content;color:var(--green-2)}.quick-search-results{margin-top:4px}.result-heading{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:5px 2px 10px;font-size:.72rem;display:flex}.result-heading strong{color:var(--ink)}.compact-empty{border:1px dashed var(--line-strong);text-align:center;background:#ffffff59;border-radius:16px;gap:4px;padding:26px 18px;display:grid}.compact-empty strong{font-size:.88rem}.compact-empty span{color:var(--muted);font-size:.72rem}.search-result-row{border:0;border-bottom:1px solid var(--line);width:100%;min-height:62px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.search-result-row:last-child{border-bottom:0}.search-result-icon{background:var(--green-soft);width:34px;height:34px;color:var(--green-2);border-radius:10px;place-items:center;display:grid}.search-result-copy{gap:3px;min-width:0;display:grid}.search-result-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.search-result-copy small{color:var(--muted);font-size:.64rem}.search-result-side{color:var(--green);flex:none;align-items:center;gap:5px;display:flex}.search-result-side b{font-family:Cormorant Garamond,Georgia,serif;font-size:1.03rem}.category-screen{padding-top:1px}.menu-back-button{min-height:38px;color:var(--green);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin:0 0 12px;padding:0;font-size:.75rem;font-weight:800;display:inline-flex}.category-visual{background:var(--paper-3);border:1px solid #1f3c2e1f;border-radius:19px;height:clamp(160px,20svh,230px);margin-bottom:12px;position:relative;overflow:hidden}.category-visual>img{object-fit:cover;width:100%;height:100%}.category-visual-shade{background:linear-gradient(90deg,#0c2319c2 0%,#0c231957 56%,#0c23190d 100%);position:absolute;inset:0}.category-visual-content{color:#fff;align-items:flex-end;gap:10px;padding:14px;display:flex;position:absolute;inset:0}.category-visual-icon{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff24;border:1px solid #ffffff6b;border-radius:11px;flex:none;place-items:center;width:38px;height:38px;display:grid}.category-visual-content small{color:#ffffffc2;letter-spacing:.15em;text-transform:uppercase;margin-bottom:2px;font-size:.58rem;font-weight:800;display:block}.category-visual-content h1{letter-spacing:-.025em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2rem,8vw,3rem);font-weight:600;line-height:.88}.subcategory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:12px;display:grid}.subcategory-button{border:1px solid var(--line);min-height:46px;color:var(--ink-2);text-align:left;cursor:pointer;background:#fffdf8e6;border-radius:12px;grid-template-columns:29px minmax(0,1fr);align-items:center;gap:8px;padding:7px 9px;font-size:.69rem;font-weight:700;display:grid}.subcategory-icon{width:29px;height:29px;color:var(--green-2);background:#eef0ea;border-radius:8px;place-items:center;display:grid}.subcategory-button.is-active{border-color:var(--green);background:var(--green);color:#fff}.subcategory-button.is-active .subcategory-icon{color:#fff;background:#ffffff24}.selected-category{border:1px solid var(--line);background:var(--paper-2);border-radius:18px;overflow:hidden;box-shadow:0 8px 24px #26362d09}.selected-category-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:12px;padding:15px 14px 11px;display:flex}.selected-category-kicker{color:var(--terracotta);letter-spacing:.13em;text-transform:uppercase;margin-bottom:2px;font-size:.56rem;font-weight:800;display:block}.selected-category-heading h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.72rem;font-weight:600;line-height:.94}.selected-category-heading>strong{color:var(--muted);flex:none;font-size:.62rem}.selected-category-image{border-bottom:1px solid var(--line);height:138px}.selected-category-image img{object-fit:cover;width:100%;height:100%}.product-list{background:var(--paper-2);overflow:hidden}.product-list.compact{border:1px solid var(--line);border-radius:16px}.menu-product-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:60px;padding:10px 13px;display:flex}.menu-product-row:last-child{border-bottom:0}.menu-product-row.is-unavailable{opacity:.55}.product-thumb{object-fit:cover;background:var(--paper-3);border-radius:9px;flex:none;width:52px;height:46px}.product-copy{flex:1;min-width:0}.product-main-line{align-items:baseline;gap:8px;min-width:0;display:flex}.product-main-line>strong{max-width:69%;margin:0;font-size:.8rem;line-height:1.3}.product-dots{border-bottom:1px dotted #b2ac9f;flex:1;min-width:8px;transform:translateY(-3px)}.product-price{white-space:nowrap;color:var(--green);flex:none;font-family:Cormorant Garamond,Georgia,serif;font-size:1.05rem;font-weight:700}.product-price.muted{color:var(--muted);font-family:Manrope,sans-serif;font-size:.64rem;font-weight:700}.product-copy p{color:var(--muted);margin:4px 0 0;font-size:.64rem;line-height:1.42}.not-available{color:#795e50;background:#eee7dd;border-radius:999px;margin-top:5px;padding:3px 7px;font-size:.58rem;font-weight:700;display:inline-block}.other-categories-button{border:1px solid var(--line-strong);width:100%;min-height:46px;color:var(--green);cursor:pointer;background:#ffffff57;border-radius:13px;justify-content:center;align-items:center;gap:7px;margin-top:10px;font-size:.72rem;font-weight:800;display:flex}.compact-menu-footer{border-top:1px solid var(--line);color:#898b85;justify-content:space-between;align-items:center;gap:14px;margin-top:22px;padding:14px 2px 0;font-size:.56rem;display:flex}.compact-menu-footer>span{font-weight:700}.compact-menu-footer a{text-align:right;align-items:center;gap:3px;display:inline-flex}.state-screen,.admin-auth{background:var(--paper);place-items:center;min-height:100vh;padding:24px;display:grid}.state-card{border:1px solid var(--line);background:var(--paper-2);width:min(440px,100%);box-shadow:var(--shadow);border-radius:20px;padding:28px}.state-card h1{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:2.2rem}.state-card p{color:var(--muted)}.menu-loading-head{border-radius:18px;height:120px;margin:12px 0 18px}.menu-loading-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.menu-loading-card{border-radius:18px;height:154px}@media (width<=540px){.menu-topbar{min-height:62px;padding:8px 10px}.menu-brand-logo{width:40px;height:40px}.menu-brand-button{gap:8px}.menu-brand-button strong{max-width:none;font-size:clamp(.92rem,4vw,1rem)}.menu-brand-button small{font-size:.53rem}.menu-top-actions{gap:4px}.menu-icon-link{width:35px;height:35px}.qr-menu-shell{width:min(100% - 20px,760px);padding-top:17px}.menu-intro{padding-bottom:14px}.menu-intro h1{font-size:2.65rem}.menu-group-grid{gap:8px}.menu-group-card{border-radius:16px;grid-template-rows:clamp(72px,10svh,92px) auto 1fr;gap:8px;min-height:clamp(158px,33.3333svh - 118.333px,190px);padding:8px}.menu-group-image{border-radius:10px;height:100%}.menu-group-icon{border-radius:9px;width:29px;height:29px;bottom:6px;left:6px}.menu-group-copy strong{font-size:1.18rem}.menu-group-copy small{font-size:.58rem}.category-visual{height:clamp(145px,18svh,190px)}.subcategory-grid{gap:6px}.subcategory-button{min-height:44px;font-size:.66rem}.selected-category-heading{padding:14px 12px 10px}.menu-product-row{padding:10px 11px}.product-main-line>strong{max-width:64%;font-size:.77rem}.compact-menu-footer{flex-direction:column;align-items:flex-start;gap:5px}.compact-menu-footer a{align-self:flex-end}}@media (width<=370px){.menu-brand-button small{display:none}.menu-brand-button strong{max-width:none;font-size:.9rem}.menu-top-actions .menu-icon-link:first-child{display:none}.menu-group-grid{gap:7px}.menu-group-card{min-height:146px}.menu-group-copy strong{font-size:1.09rem}.subcategory-grid{grid-template-columns:1fr}}@media (width<=820px){input,textarea,select{font-size:16px!important}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.admin-app{color:#1f332b;background:#f5f3ee;min-height:100vh}.admin-topbar{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffefaf7;border-bottom:1px solid #dedbd3;justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:10px 24px;display:flex;position:sticky;top:0}.admin-brand{align-items:center;gap:10px;display:flex}.admin-brand img{object-fit:cover;background:#fff;border:1px solid #dfdbd2;border-radius:50%;width:40px;height:40px}.admin-brand strong,.admin-brand span{display:block}.admin-brand strong{font-size:.88rem}.admin-brand span{color:#7b837d;font-size:.68rem}.admin-top-actions{align-items:center;gap:8px;display:flex}.admin-layout{grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 72px);display:grid}.admin-sidebar{background:#fffefa;border-right:1px solid #dedbd3;flex-direction:column;align-self:start;gap:5px;height:calc(100vh - 72px);padding:20px 12px;display:flex;position:sticky;top:72px}.admin-sidebar button{color:#66716a;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;min-height:46px;padding:0 12px;display:grid}.admin-sidebar button.is-active{color:var(--green);background:#e4ece6;font-weight:800}.admin-sidebar em{text-align:center;background:#0000000d;border-radius:999px;min-width:26px;padding:3px 6px;font-size:.65rem;font-style:normal}.admin-main{min-width:0;padding:34px clamp(20px,4vw,54px) 60px}.admin-section{width:min(1080px,100%);margin:0 auto}.admin-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;display:flex}.admin-heading h1{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2.2rem,5vw,3.35rem);line-height:.95}.admin-heading p{color:#717a74;max-width:620px;margin:8px 0 0;font-size:.82rem;line-height:1.55}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.field{gap:7px;display:grid}.field-wide{grid-column:1/-1}.field>span,.image-field-copy>span{color:#56635b;font-size:.72rem;font-weight:800}.field input,.field textarea,.field select,.media-setting input,.image-field input,.item-toolbar select{color:#1f332b;background:#fffefa;border:1px solid #d8d5cd;border-radius:10px;outline:0;width:100%;min-height:44px;padding:10px 12px}.field textarea{resize:vertical;min-height:86px}.field input:focus,.field textarea:focus,.field select:focus,.media-setting input:focus,.image-field input:focus,.item-toolbar select:focus{border-color:var(--green);box-shadow:0 0 0 3px #0a6a4314}.two-col{grid-template-columns:1fr 1fr;gap:12px;display:grid}.media-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.media-setting{background:#fffefa;border:1px solid #ddd9d0;border-radius:16px;grid-template-columns:128px 1fr;gap:16px;padding:16px;display:grid}.media-setting-preview{color:#8a928d;background:#edeae2;border-radius:12px;place-items:center;min-height:128px;display:grid;overflow:hidden}.media-setting-preview img{object-fit:cover;width:100%;height:100%}.media-setting h3{margin:3px 0 4px;font-size:.9rem}.media-setting p{color:#7a817c;margin:0 0 12px;font-size:.72rem;line-height:1.45}.media-setting input{margin-bottom:9px}.upload-button{color:#435148;background:#fff;border:1px solid #d3d0c8;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 12px;font-size:.75rem;font-weight:800;display:inline-flex}.admin-list{background:#fffefa;border:1px solid #ddd9d0;border-radius:14px;overflow:hidden}.admin-list-row{border-bottom:1px solid #ece9e2;grid-template-columns:42px minmax(160px,1fr) auto auto;align-items:center;gap:12px;min-height:70px;padding:10px 12px;display:grid}.admin-list-row:last-child{border-bottom:0}.row-icon,.row-thumb{object-fit:cover;background:#ecefe9;border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.row-thumb.placeholder{color:#78817b}.row-main{min-width:0}.row-main strong,.row-main span{display:block}.row-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.row-main span{color:#838a85;margin-top:4px;font-size:.67rem}.row-description{color:#58645d;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:5px;font-size:.68rem;line-height:1.35;display:-webkit-box;overflow:hidden}.row-status{color:#6d7770;white-space:nowrap;align-items:center;gap:5px;font-size:.68rem;display:inline-flex}.row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.small-action{color:#445149;background:#fff;border:1px solid #ddd9d0;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:.7rem;font-weight:800;display:inline-flex}.small-action.danger{color:var(--danger)}.product-row{grid-template-columns:42px minmax(170px,1fr) 78px 90px auto}.row-price{color:var(--green);text-align:right;font-family:Cormorant Garamond,Georgia,serif;font-size:1.04rem}.item-toolbar{grid-template-columns:1fr 230px;gap:10px;margin-bottom:12px;display:grid}.admin-search{min-height:44px}.item-toolbar select{background:#fffefa}.drawer-backdrop{z-index:100;background:#121d1857;justify-content:flex-end;display:flex;position:fixed;inset:0}.editor-drawer{background:#fffefa;width:min(480px,100%);height:100%;padding:20px 22px 30px;animation:.18s ease-out drawerIn;overflow-y:auto;box-shadow:-20px 0 50px #141e191f}@keyframes drawerIn{0%{opacity:0;transform:translate(24px)}}.editor-drawer>header{border-bottom:1px solid #e5e1d9;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:18px;display:flex}.editor-drawer h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:2rem}.drawer-form{gap:14px;padding-top:18px;display:grid}.image-field{background:#faf8f3;border:1px solid #e0dcd3;border-radius:12px;grid-template-columns:96px 1fr;gap:12px;padding:12px;display:grid}.image-preview{color:#848b86;background:#e9e5dc;border-radius:9px;place-items:center;min-height:96px;display:grid;overflow:hidden}.image-preview img{object-fit:cover;width:100%;height:100%}.image-field-copy{align-content:start;gap:7px;min-width:0;display:grid}.toggle-pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.toggle-field{cursor:pointer;background:#faf8f3;border:1px solid #dfdbd3;border-radius:10px;align-items:center;gap:10px;min-height:48px;padding:0 12px;display:flex}.toggle-field input{opacity:0;pointer-events:none;position:absolute}.toggle-ui{background:#cccac4;border-radius:999px;flex:none;width:38px;height:22px;transition:background .16s;position:relative}.toggle-ui:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000002e}.toggle-field input:checked+.toggle-ui{background:var(--green)}.toggle-field input:checked+.toggle-ui:after{transform:translate(16px)}.toggle-field strong{font-size:.72rem}.login-card{width:min(430px,100%);box-shadow:var(--shadow);background:#fffefa;border:1px solid #ded9cf;border-radius:22px;padding:32px}.login-logo{object-fit:cover;border:1px solid #ded9cf;border-radius:50%;width:76px;height:76px;margin:22px 0 18px}.login-card h1{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:2.45rem;line-height:.95}.login-card>p{color:#747d77;margin:11px 0 22px;font-size:.82rem;line-height:1.55}.login-card .field{margin-bottom:13px}.back-link{color:#6e776f;align-items:center;gap:6px;font-size:.72rem;font-weight:700;display:inline-flex}.toast{z-index:180;color:#fff;background:#17382b;border:1px solid #254d3b;border-radius:999px;max-width:calc(100vw - 32px);padding:11px 16px;font-size:.76rem;font-weight:700;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #0f221a33}.qr-card{background:#fffefa;border:1px solid #ddd9d0;border-radius:20px;grid-template-columns:minmax(220px,360px) 1fr;align-items:center;gap:32px;padding:28px;display:grid}.qr-preview{aspect-ratio:1;background:#fffdf8;border:1px solid #e3dfd6;border-radius:14px;place-items:center;display:grid;overflow:hidden}.qr-preview img{object-fit:contain;width:100%;height:100%}.qr-copy code{color:#34473e;background:#f6f3ec;border:1px solid #e1ddd5;border-radius:10px;max-width:100%;margin:6px 0 18px;padding:12px;font-size:.76rem;display:block;overflow:auto}.qr-actions{flex-wrap:wrap;gap:9px;display:flex}.qr-tip{color:#747d77;align-items:flex-start;gap:9px;margin-top:22px;font-size:.74rem;display:flex}.qr-tip p{margin:0}@media (width<=820px){.brand-header__inner,.menu-shell,.category-strip__inner{width:min(100% - 24px,1040px)}.brand-header__inner{min-height:82px}.brand-logo{width:52px;height:52px}.brand-lockup .eyebrow{font-size:.61rem}.hero-panel{grid-template-columns:1fr;gap:22px;padding-top:28px}.hero-copy h2{max-width:700px}.hero-gallery{min-height:320px}.category-strip{margin-left:-12px;margin-right:-12px}.admin-layout{grid-template-columns:1fr}.admin-sidebar{z-index:30;scrollbar-width:none;border-bottom:1px solid #dedbd3;border-right:0;flex-direction:row;width:100%;height:auto;padding:8px 12px;position:sticky;top:72px;overflow-x:auto}.admin-sidebar::-webkit-scrollbar{display:none}.admin-sidebar button{flex:none;grid-template-columns:20px auto auto;min-height:40px;padding:0 11px}.admin-main{padding:26px 14px 50px}.product-row{grid-template-columns:42px minmax(130px,1fr) 70px auto}.product-row .row-status{display:none}.media-settings{grid-template-columns:1fr}}@media (width<=620px){.brand-header__inner{gap:10px}.brand-lockup{gap:9px}.brand-lockup h1{font-size:1.35rem}.brand-logo{width:48px;height:48px}.header-actions .icon-button{width:40px;height:40px}.hero-copy h2{font-size:clamp(2.75rem,15vw,4.4rem)}.hero-subtitle{font-size:.84rem}.hero-gallery{grid-template-columns:1.45fr 1fr;min-height:250px}.hero-gallery .gallery-main{border-radius:18px 8px 8px 18px}.discovery{padding-top:2px}.search-box{min-height:50px}.menu-section{padding-top:42px}.section-heading{grid-template-columns:40px 1fr;gap:8px}.section-index{font-size:1rem}.section-heading h2{font-size:2.35rem}.menu-list,.category-image{margin-left:48px}.menu-row{min-height:70px;padding:12px 0}.item-title-line{align-items:baseline;gap:7px}.item-title-line h3{max-width:66%;font-size:.84rem}.price{font-size:1.08rem}.price-muted{font-size:.72rem}.item-thumb{width:58px;height:52px}.site-footer{flex-direction:column;align-items:flex-start}.maker-link{align-self:flex-end}.admin-topbar{padding:9px 12px}.admin-top-actions .secondary-button{display:none}.admin-heading{flex-direction:column;align-items:stretch}.admin-heading>.primary-button{align-self:flex-start}.form-grid,.two-col,.toggle-pair,.item-toolbar,.qr-card{grid-template-columns:1fr}.media-setting{grid-template-columns:96px 1fr}.media-setting-preview{min-height:96px}.admin-list-row{grid-template-columns:42px minmax(0,1fr) auto}.admin-list-row .row-status{display:none}.row-actions .small-action:first-child{padding:0 9px;font-size:0}.row-actions .small-action:first-child svg{margin:0}.product-row{grid-template-columns:42px minmax(0,1fr) 62px auto}.row-price{font-size:.95rem}.editor-drawer{padding:16px 14px 26px}.qr-card{padding:16px}.qr-preview{width:100%;max-width:330px;margin:0 auto}.login-card{padding:24px 20px}}@media (width<=410px){.brand-lockup .eyebrow{display:none}.brand-lockup h1{max-width:170px;font-size:1.15rem}.header-actions{gap:5px}.hero-gallery{min-height:220px}.item-title-line h3{max-width:60%}.menu-list,.category-image{margin-left:0}.section-heading{grid-template-columns:34px 1fr}.section-index{opacity:.62}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.media-settings.single{grid-template-columns:minmax(0,560px);margin-top:0}.admin-subsection-heading{border-top:1px solid #e3dfd6;justify-content:space-between;align-items:flex-end;gap:18px;margin:34px 0 14px;padding-top:24px;display:flex}.admin-subsection-heading h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.85rem;line-height:1}.admin-subsection-heading p{color:#747d77;max-width:650px;margin:6px 0 0;font-size:.75rem;line-height:1.5}.group-media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.group-media-grid .media-setting{grid-template-columns:112px minmax(0,1fr);padding:12px}.group-media-grid .media-setting-preview{aspect-ratio:1.35;min-height:94px}.field-hint{color:#858c87;margin-top:-1px;font-size:.65rem;line-height:1.45}.field-label-with-help{color:#56635b;align-items:center;gap:6px;font-size:.72rem;font-weight:800;display:inline-flex!important}.help-dot{color:#7f8882;cursor:help;border-radius:50%;place-items:center;width:20px;height:20px;display:inline-grid}.help-dot:hover,.help-dot:focus-visible{color:var(--green);background:#e8efe9}.icon-picker{background:#f8f6f0;border:1px solid #ddd9d0;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;max-height:260px;padding:8px;display:grid;overflow-y:auto}.icon-choice{color:#68736c;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;align-content:center;place-items:center;gap:6px;min-height:72px;padding:7px 5px;display:grid}.icon-choice span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.58rem;overflow:hidden}.icon-choice:hover{color:var(--green);background:#fff;border-color:#cfdbd2}.icon-choice.is-selected{border-color:var(--green);color:var(--green);background:#e5eee7}.order-explainer{color:#66716a;background:#f3f7f3;border:1px solid #dfe5df;border-radius:10px;align-items:flex-start;gap:9px;padding:10px 11px;font-size:.66rem;line-height:1.5;display:flex}.order-explainer svg{color:var(--green);flex:none;margin-top:1px}.order-explainer strong{color:#344a3f}@media (width<=820px){.group-media-grid{grid-template-columns:1fr}}@media (width<=620px){.icon-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.group-media-grid .media-setting{grid-template-columns:92px minmax(0,1fr)}.group-media-grid .media-setting-preview{min-height:86px}}.selected-category-description{color:var(--muted);margin:-2px 14px 12px;font-size:.74rem;line-height:1.5}.menu-product-row.has-image.image-medium{align-items:stretch;min-height:92px}.product-thumb-medium{border-radius:11px;align-self:center;width:92px;height:76px}.menu-product-row.has-image.image-large{grid-template-columns:1fr;align-items:stretch;gap:10px;padding:10px 13px 13px;display:grid}.product-thumb-large{border-radius:13px;width:100%;height:clamp(150px,24vw,230px)}.menu-product-row.image-large .product-main-line>strong{max-width:72%}.image-size-field{gap:8px;display:grid}.image-size-field.is-disabled{opacity:.55}.image-size-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.image-size-option{color:#667169;text-align:center;cursor:pointer;background:#fffefa;border:1px solid #ddd9d0;border-radius:11px;grid-template-rows:32px auto auto;align-content:center;place-items:center;gap:4px;min-height:96px;padding:8px;display:grid}.image-size-option:hover:not(:disabled){color:var(--green);border-color:#b8c8bc}.image-size-option.is-active{border-color:var(--green);color:var(--green);background:#e9f0ea}.image-size-option:disabled{cursor:not-allowed}.image-size-option strong{font-size:.7rem}.image-size-option small{color:#858c87;font-size:.56rem;line-height:1.3}.image-size-preview{opacity:.22;background:currentColor;border-radius:5px;display:block}.image-size-preview-small{width:28px;height:24px}.image-size-preview-medium{width:38px;height:28px}.image-size-preview-large{width:54px;height:30px}@media (width<=620px){.selected-category-description{margin:-2px 12px 10px}.product-thumb-medium{width:84px;height:72px}.product-thumb-large{height:clamp(150px,48vw,210px)}.image-size-options{gap:6px}.image-size-option{min-height:92px;padding:7px 5px}}.group-visual-placeholder{color:#ffffffdb;background:radial-gradient(circle at 25% 25%,#ffffff38,#0000 34%),linear-gradient(135deg,#355746,#17382b);place-items:center;width:100%;height:100%;display:grid}.menu-group-image>.group-visual-placeholder,.category-visual>.group-visual-placeholder{position:absolute;inset:0}.search-result-row{grid-template-columns:44px minmax(0,1fr) auto;min-height:72px}.search-result-thumb{object-fit:cover;background:var(--paper-3);border-radius:10px;width:44px;height:44px}.search-result-description{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.63rem;line-height:1.35;display:-webkit-box;overflow:hidden}.group-admin-row .group-row-thumb{width:52px;height:42px}.media-setting,.media-setting>*,.image-field,.image-field>*,.row-main{min-width:0}.media-setting h3,.media-setting p,.row-main span{overflow-wrap:anywhere}@media (width<=620px){.search-result-row{grid-template-columns:42px minmax(0,1fr) auto;gap:8px;padding:9px 10px}.search-result-thumb{width:42px;height:42px}.search-result-copy strong{font-size:.78rem}.search-result-side b{font-size:.94rem}.media-setting{grid-template-columns:78px minmax(0,1fr);gap:10px;padding:12px}.media-setting-preview{width:78px;height:78px;min-height:78px}.media-setting input{min-width:0}.image-field{grid-template-columns:76px minmax(0,1fr);gap:10px;padding:10px}.image-preview{height:76px;min-height:76px}.admin-heading{gap:14px}.group-admin-row .group-row-thumb{width:42px;height:42px}}@media (width<=440px){.media-setting,.image-field{grid-template-columns:1fr}.media-setting-preview,.image-preview{aspect-ratio:16/7;width:100%;height:auto;min-height:118px}.media-setting h3,.media-setting p,.image-field-copy{position:static}.media-setting input,.image-field input{width:100%;min-width:0}.upload-button{width:100%}}.login-service-box{border-top:1px solid #e4e0d8;gap:9px;margin-top:18px;padding-top:16px;display:grid}.renewal-summary,.support-link{background:#faf8f3;border:1px solid #e1ddd5;border-radius:12px;align-items:center;gap:10px;min-width:0;padding:10px 11px;display:flex}.renewal-icon{width:34px;height:34px;color:var(--green);background:#e8eee9;border-radius:10px;flex:none;place-items:center;display:grid}.renewal-summary>span:last-child,.support-link>span{gap:2px;min-width:0;display:grid}.renewal-summary strong,.support-link strong{font-size:.72rem}.renewal-summary small,.support-link small{color:#777f79;font-size:.63rem;line-height:1.35}.support-link{color:#1d4d3a;transition:border-color .16s,background .16s,transform .16s}.support-link:hover{background:#f2faf5;border-color:#25a962;transform:translateY(-1px)}.admin-renewal-chip,.admin-support-button{color:#49564e;white-space:nowrap;background:#fffefa;border:1px solid #dcd8cf;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:40px;font-size:.69rem;font-weight:800;display:inline-flex}.admin-renewal-chip{padding:0 12px}.admin-support-button{color:#17633f;background:#f4faf6;border-color:#cfe0d5;padding:0 13px;transition:border-color .16s,background .16s,transform .16s}.admin-support-button:hover{background:#ebf7ef;border-color:#24a35f;transform:translateY(-1px)}.renewal-alert{color:#7d392c;background:#fff7f2;border:1px solid #e0c9bd;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;width:min(1080px,100%);min-height:66px;margin:0 auto 20px;padding:12px 14px;display:flex;box-shadow:0 8px 22px #7933270f}.renewal-alert>div{align-items:center;gap:10px;min-width:0;display:flex}.renewal-alert span{gap:2px;min-width:0;display:grid}.renewal-alert strong{font-size:.78rem}.renewal-alert small{opacity:.82;font-size:.66rem}.renewal-alert a{border:1px solid;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:0 12px;font-size:.68rem;font-weight:800;display:inline-flex}.renewal-notice{color:#a24534!important;background:#fff0ea!important;border-color:#e1a99b!important}.renewal-warning{color:#9a2f20!important;background:#ffe7e0!important;border-color:#d87967!important}.renewal-urgent{color:#8c1f15!important;background:#ffded8!important;border-color:#c64635!important}.renewal-critical{box-shadow:0 10px 28px #a91f1633;color:#fff!important;background:#a91f16!important;border-color:#a91f16!important}.login-service-box.renewal-notice .renewal-summary,.login-service-box.renewal-warning .renewal-summary,.login-service-box.renewal-urgent .renewal-summary{color:#963728;background:#fff2ed;border-color:#dda294}.login-service-box.renewal-critical .renewal-summary{color:#fff;background:#a91f16;border-color:#a91f16}.login-service-box.renewal-critical .renewal-summary small,.login-service-box.renewal-critical .renewal-icon{color:#fff}.login-service-box.renewal-critical .renewal-icon{background:#ffffff26}@media (width<=820px){.admin-support-button span{display:none}.admin-support-button{width:40px;padding:0}.admin-renewal-chip{padding:0 10px}}@media (width<=620px){.admin-top-actions{gap:5px}.admin-renewal-chip{min-height:38px;padding:0 9px;font-size:.62rem}.admin-support-button{width:38px;min-height:38px}.renewal-alert{flex-direction:column;align-items:stretch;gap:10px}.renewal-alert a{width:100%}.login-card{padding:26px 22px}}@media (width<=390px){.admin-brand span{display:none}.admin-renewal-chip{gap:5px;padding:0 8px}.admin-topbar{gap:8px}}.qr-destination-card{background:#fffefa;border:1px solid #dcd8cf;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;padding:16px 18px;display:flex}.qr-destination-card>div{gap:4px;min-width:0;display:grid}.qr-destination-card strong{color:#17382b;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.qr-destination-card small{color:#768078;max-width:760px;font-size:.68rem;line-height:1.45}.qr-download-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.qr-download-card{background:#fffefa;border:1px solid #ddd9d0;border-radius:18px;grid-template-columns:minmax(160px,.78fr) minmax(0,1.22fr);align-items:center;gap:18px;min-width:0;padding:18px;display:grid}.qr-download-preview{background:#fff;border:1px solid #e3dfd6;border-radius:14px;place-items:center;width:100%;display:grid;overflow:hidden}.qr-download-preview img{object-fit:contain;width:100%;height:100%}.qr-plain-preview{aspect-ratio:1}.qr-menu-card-preview{aspect-ratio:120/131;background:#f4f0e5;padding:8px}.qr-menu-card-preview img{border-radius:8px}.qr-download-copy{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.qr-type{color:#b96748;letter-spacing:.11em;text-transform:uppercase;font-size:.61rem;font-weight:900}.qr-download-copy h2{color:#17382b;margin:5px 0 6px;font-family:Cormorant Garamond,Georgia,serif;font-size:1.7rem;line-height:1}.qr-download-copy p{color:#737c76;margin:0 0 15px;font-size:.7rem;line-height:1.5}.qr-download-copy .primary-button{margin-top:auto}.qr-guidance{color:#52645a;background:#f5f9f6;border:1px solid #d9e1dc;border-radius:14px;align-items:flex-start;gap:10px;margin-top:16px;padding:13px 14px;display:flex}.qr-guidance>svg{color:var(--green);flex:none;margin-top:2px}.qr-guidance strong{color:#294737;margin-bottom:3px;font-size:.72rem;display:block}.qr-guidance p{margin:0;font-size:.67rem;line-height:1.5}@media (width<=1050px){.qr-download-grid{grid-template-columns:1fr}.qr-download-card{grid-template-columns:210px minmax(0,1fr)}}@media (width<=620px){.qr-destination-card{flex-direction:column;align-items:stretch;padding:14px}.qr-destination-card .secondary-button{width:100%}.qr-download-card{grid-template-columns:1fr;padding:14px}.qr-download-preview{max-width:310px;margin:0 auto}.qr-menu-card-preview{max-width:270px}.qr-download-copy{align-items:stretch}.qr-download-copy h2,.qr-download-copy p,.qr-type{text-align:left}}@media (width<=430px){.admin-renewal-chip span{text-overflow:ellipsis;max-width:118px;overflow:hidden}}.admin-renewal-wrap{align-items:center;gap:5px;display:inline-flex;position:relative}.renewal-help{display:inline-flex;position:relative}.renewal-help-trigger{color:#607067;cursor:pointer;background:#fffefa;border:1px solid #d7d9d5;border-radius:999px;place-items:center;width:30px;height:30px;padding:0;display:grid}.renewal-help-trigger:hover,.renewal-help-trigger:focus-visible{color:#214c38;background:#f2f7f3;border-color:#91a79a;outline:none}.renewal-help-popover{z-index:220;color:#44534a;opacity:0;visibility:hidden;pointer-events:none;background:#fffefa;border:1px solid #d6d9d4;border-radius:14px;gap:8px;width:min(330px,100vw - 28px);padding:14px;transition:opacity .14s,transform .14s,visibility .14s;display:grid;position:absolute;top:calc(100% + 10px);right:0;transform:translateY(-4px);box-shadow:0 16px 42px #18322629}.renewal-help:hover .renewal-help-popover,.renewal-help:focus-within .renewal-help-popover{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.renewal-help-popover strong{color:#17382b;font-size:.76rem}.renewal-help-popover p{color:#667168;margin:0;font-size:.69rem;line-height:1.5}.renewal-help-popover>span{color:#9b4c39;font-size:.67rem;font-weight:800}.renewal-help-popover a{color:#17633f;background:#edf8f1;border:1px solid #b9d4c4;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:36px;margin-top:2px;padding:0 11px;font-size:.68rem;font-weight:850;display:inline-flex}@media (width<=620px){.renewal-help-popover{width:auto;position:fixed;top:68px;left:12px;right:12px}}
