.topnav{display:flex;align-items:center;gap:16px}.topnav>a{color:var(--ink);font-size:13px;text-decoration:none}.brand-mark{width:32px;height:32px}.source-form{width:min(780px,100%);padding:24px;margin:0 auto 40px;border:1px solid var(--line);border-radius:24px;background:var(--surface)}.source-form>label{display:block;margin-bottom:10px;font-weight:700}.source-form textarea{resize:vertical;width:100%;padding:14px;border:1px solid var(--line);border-radius:14px;font:inherit;color:var(--ink);background:var(--surface-strong)}.source-methods{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}.source-methods input[type=file]{max-width:200px;font-size:12px}.source-methods .primary{margin-left:auto}.muted{color:var(--muted);font-size:13px;line-height:1.6}.footer-links{display:flex;justify-content:center;gap:24px;margin-top:56px}.footer-links a{color:var(--muted);font-size:12px}.banner{border:1px solid var(--line);padding:16px 20px;border-radius:16px;background:var(--surface-strong);line-height:1.5}.reader-view{margin:24px 0}#reader-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#reader-grid .menu-item-visual{width:110px;min-height:140px;height:100%}#reader-grid .menu-item-visual img{width:100%;height:100%;object-fit:cover}.menu-item-visual{position:relative}.menu-item-name-translation,.menu-item-serving{display:block}.sheet>form:not(.sheet-head){display:grid;gap:12px;margin:14px 0}.sheet .inline-form{display:flex;gap:8px}.sheet input,.sheet select{padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-strong);color:var(--ink);font:inherit;min-width:0}.sheet .inline-form input{flex:1}.sheet label{font-size:13px;font-weight:650}#qr-video{width:100%;max-height:360px;border-radius:16px}.menu-item-card-open{cursor:pointer}.menu-item-visual button{position:relative;z-index:2}#reader-grid [data-generate-visual]{position:relative;z-index:2}#menu-item-dialog-feedback{padding:0 24px}.menu-item-detail-copy{overflow-wrap:anywhere}
@media(max-width:720px){.shell{padding:0 16px 40px}.topbar{height:auto;padding:20px 0;gap:16px;flex-wrap:wrap}.topnav{gap:10px;flex-wrap:wrap}.source-form{padding:18px}.source-methods .primary{width:100%;margin:0}#reader-grid{grid-template-columns:1fr}.footer-links{gap:18px;flex-wrap:wrap}.wrapper-hero{flex-wrap:wrap;gap:20px}.auth-hero h1{font-size:44px}.menu-toolbar{flex-direction:column}.menu-search{width:100%;flex:auto;margin:0}.source-methods input[type=file]{max-width:100%}}
#reader-grid{align-items:start}
#reader-grid .menu-item-card.no-media{height:auto;min-height:100px}
/* Keep the authoring preview on the menu while using the customer renderer. */
.menu-draft-preview .topnav,.menu-draft-preview .footer-links{display:none}
.menu-draft-preview .topbar .brand{pointer-events:none}
.menu-invitation-preview .topnav,.menu-invitation-preview #menu-entry{display:none}

/* Keep menu actions and site information within reach on mobile screens. */
:root{--menu-action-bar-height:84px}
html{scroll-padding-bottom:calc(var(--menu-action-bar-height) + env(safe-area-inset-bottom,0px) + 24px)}
.has-bottom-nav .shell{padding-bottom:calc(var(--menu-action-bar-height) + env(safe-area-inset-bottom,0px) + 32px)}
.bottom-nav{position:fixed;z-index:20;inset:auto 0 0;border-top:1px solid var(--line);background:var(--surface);padding:8px max(16px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));box-shadow:0 -8px 28px #17231206}
.bottom-nav-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:780px;margin:0 auto}
.bottom-nav-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:68px;border:0;border-radius:18px;padding:6px 4px;background:transparent;color:var(--ink);font:800 12px/14px "Manrope",sans-serif;cursor:pointer;touch-action:manipulation}
.bottom-nav-action svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bottom-nav-action:hover,.bottom-nav-action[aria-expanded="true"]{background:var(--surface-strong);color:var(--accent-dark)}
.bottom-nav-action:focus-visible{outline:2px solid var(--accent-dark);outline-offset:2px;background:var(--surface-strong)}
.bottom-nav-action span{display:flex;align-items:center;justify-content:center;max-width:100%;min-height:28px;text-align:center}
.menu-info-popover{position:fixed;inset:auto 0 var(--menu-info-nav-height,calc(var(--menu-action-bar-height) + env(safe-area-inset-bottom,0px)));width:100%;max-width:480px;max-height:calc(100dvh - var(--menu-info-nav-height,var(--menu-action-bar-height)) - 24px);margin:0 auto;border:0;border-radius:26px 26px 0 0;padding:0;overflow:auto;overscroll-behavior:contain;background:var(--surface);color:var(--ink);box-shadow:0 -8px 32px #0002}
.menu-info-panel{padding:16px 20px 20px}
.menu-info-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.menu-info-header h2{margin:0}
.menu-info-panel nav{display:flex;flex-direction:column;gap:4px}
.menu-info-panel nav a{display:flex;align-items:center;min-height:48px;padding:10px 4px;border-bottom:1px solid var(--line);color:var(--ink);font-size:15px;font-weight:600;text-decoration:none}
.menu-info-panel nav a:last-child{border-bottom:0}
.menu-info-panel nav a:hover{color:var(--accent-dark)}
.menu-info-close{display:flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border:0;border-radius:12px;padding:0;background:transparent;cursor:pointer}
.menu-info-close img{width:20px;height:20px}
.menu-info-close:hover{background:var(--surface-strong)}
.menu-info-panel :focus-visible{outline:2px solid var(--accent-dark);outline-offset:2px}
.menu-item-detail-safety{margin:16px 0 0;color:var(--ink-soft);font-size:12px;line-height:1.6}
.camera-head form,.camera-actions form{margin:0}
.camera-actions form{display:flex}
#photo-status{min-height:42px;margin:0;line-height:1.6}
@media(max-width:720px){
  :root{--menu-action-bar-height:80px}
  .bottom-nav{padding-inline:max(12px,env(safe-area-inset-left,0px)) max(12px,env(safe-area-inset-right,0px))}
  .bottom-nav-inner{gap:6px}
  .bottom-nav-action{min-height:64px;padding-block:4px}
}
@media(max-width:767px){.has-bottom-nav .site-footer{display:none}}
@media(min-width:768px){
  :root{--menu-action-bar-height:0px}
  html{scroll-padding-bottom:24px}
  .bottom-nav{display:none}
  .has-bottom-nav .shell{padding-bottom:0}
}
/* A quiet home screen; the fixed bar owns the primary actions. */
.menu-home-view .shell{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
.menu-home-view main{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}
.menu-home{width:100%;max-width:700px;margin:0 auto;padding:56px 0 64px;text-align:center}
.home-menu-mark{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 26px;border:1px solid var(--line);border-radius:24px;background:var(--surface-strong);color:var(--ink-soft)}
.home-menu-mark svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.menu-home .kicker{margin-bottom:14px}
.menu-home h1{font-size:clamp(40px,5.7vw,64px);line-height:1.04;text-wrap:balance}
.home-description{max-width:430px;margin:20px auto 0;color:var(--ink-soft);font-size:17px;line-height:1.65;text-wrap:pretty}
.source-link-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;margin:24px auto 0;border:0;border-radius:10px;padding:10px 12px;background:transparent;color:var(--ink-soft);font:700 13px/1.5 "Manrope",sans-serif;cursor:pointer}
.source-link-button:hover{background:var(--surface-strong);color:var(--accent-dark)}
.source-link-button:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px}
.menu-home-view .footer-links{flex:none;gap:22px;margin:0;padding-top:12px}
.footer-links a{color:var(--ink-soft);text-decoration:none}
.footer-links a:hover{text-decoration:underline}
.source-dialog{width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:hidden;border:0;border-radius:28px;padding:0;background:var(--surface);color:var(--ink);box-shadow:0 40px 100px #0003}
.source-dialog::backdrop{background:#17231299;backdrop-filter:blur(7px)}
.source-panel{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;padding:24px}
.source-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.source-head h2{font-size:28px}
.source-head form{margin:0}
.source-head .close{width:44px;height:44px;flex:none}
#source-dialog-intro{margin:12px 0 24px;color:var(--ink-soft)}
.source-dialog .source-form{width:100%;margin:0;border:0;border-radius:0;padding:0;background:transparent}
.source-dialog textarea{min-height:132px;font-size:16px}
#menu-source-status{margin:12px 0 0;color:var(--ink-soft);overflow-wrap:anywhere}
#menu-source-status:empty{display:none}
#qr-source-button{margin-top:8px}
@media(max-width:720px){
  .menu-home{padding:36px 0 44px}
  .home-menu-mark{width:64px;height:64px;border-radius:21px;margin-bottom:24px}
  .home-description{max-width:380px;margin-top:18px;font-size:16px}
  .menu-home-view .footer-links{gap:20px}
  .source-dialog{width:100%;max-width:none;max-height:92dvh;margin:auto 0 0;border-radius:28px 28px 0 0}
  .source-panel{max-height:92dvh;padding:20px 18px max(20px,env(safe-area-inset-bottom,0px))}
}
@media(max-width:480px){.topnav{width:100%;justify-content:space-between}}
@media(max-height:600px){.menu-home{padding:24px 0}.home-menu-mark{width:48px;height:48px;margin-bottom:18px;border-radius:16px}.home-menu-mark svg{width:26px;height:26px}.menu-home h1{font-size:36px}.home-description{margin-top:14px}.menu-home .source-link-button{margin-top:16px}}
.invitation-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0 28px}
.invitation-banner p{margin:8px 0 0;max-width:680px}
.invitation-banner a{flex-shrink:0;text-decoration:none}
@media(max-width:720px){.invitation-banner{align-items:stretch;flex-direction:column}.invitation-banner a{text-align:center}}

/* Account preferences stay anchored to the profile button. */
.topnav .language-switcher select,.profile-setting select{appearance:none;min-height:40px;border:1px solid var(--line);border-radius:10px;background-color:var(--surface);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2342523f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;padding:8px 34px 8px 12px;color:var(--ink);font:500 13px/1.4 "Manrope",sans-serif;text-align:start;cursor:pointer}
.profile-menu{position:relative;min-width:0}
#account-menu-button{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--surface)}
#account-menu-button>img{display:block;width:24px;height:24px}
#account-menu-button[aria-expanded="true"]{border-color:#a4b398;background:var(--surface-strong)}
.profile-dropdown{position:absolute;z-index:30;top:calc(100% + 8px);right:0;width:min(320px,calc(100vw - 32px));max-height:min(420px,calc(100dvh - var(--menu-action-bar-height) - env(safe-area-inset-bottom,0px) - 160px));overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:14px;padding:8px;background:var(--surface);color:var(--ink);box-shadow:0 12px 36px #1723121a}
.profile-dropdown[hidden],.profile-dropdown [hidden]{display:none}
.profile-dropdown:focus{outline:none}
.profile-identity{margin-bottom:6px;border-bottom:1px solid var(--line);padding:10px 12px 14px;overflow-wrap:anywhere}
.profile-identity strong{display:block;font-size:14px;font-weight:800}
.profile-identity p{margin:4px 0 0;color:var(--ink-soft);font-size:12px;line-height:1.5}
.profile-dropdown .account-language-switcher,.profile-setting{display:grid;grid-template-columns:20px minmax(0,1fr) minmax(0,158px);align-items:center;gap:8px;min-height:52px;margin:0;border-radius:0;padding:6px 8px;background:transparent;color:var(--ink);font-size:13px}
.profile-dropdown label{margin:0;font-size:13px;font-weight:600}
.profile-dropdown .account-language-switcher>img,.profile-setting>svg{width:20px;height:20px}
.profile-dropdown svg{fill:none;stroke:var(--ink-soft);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.profile-dropdown select{width:100%;max-width:none;font-weight:500;text-align:start}
.profile-dropdown .account-language-switcher select:hover{background-color:var(--surface)}
.profile-item{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;border:0;border-radius:8px;padding:10px 12px;background:transparent;color:var(--ink);font:600 13px/1.4 "Manrope",sans-serif;text-align:start;cursor:pointer}
.profile-item>svg{flex:none;width:19px;height:19px}
.profile-item .profile-item-end{width:16px;height:16px;margin-left:auto}
.profile-item:hover{background:var(--surface-strong)}
.profile-divider{height:1px;margin:6px 8px;background:var(--line)}
.profile-dropdown .profile-status{margin:6px 12px 10px;color:var(--ink-soft);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.profile-status:empty{display:none}
.profile-edit>label{display:block;margin:16px 12px 8px}
.profile-edit>input{width:calc(100% - 24px);min-height:44px;margin:0 12px 16px;border-radius:10px;padding:10px 12px;background:var(--surface);font-size:16px}
.profile-edit>.primary{display:block;min-height:40px;margin:0 12px 12px;border-radius:10px;padding:10px 16px;font-size:13px}
.profile-dropdown select:disabled,.profile-item:disabled{opacity:.6;cursor:progress}
#account-menu-button:focus-visible,.profile-item:focus-visible,.profile-dropdown select:focus-visible,.profile-edit>.primary:focus-visible{outline:2px solid var(--accent-dark);outline-offset:2px}
.profile-dropdown .profile-item:focus-visible{outline-offset:-3px}
@media(max-width:480px){#account-menu-button{max-width:120px}.topnav>.language-switcher select{max-width:114px}}

.reader-heading{margin:8px 0 28px}
.reader-title-row{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.reader-title-row h1{flex:1;min-width:0}
.reader-title-row>.reader-attention{flex:none;margin-left:auto}
.reader-heading h1{margin:0;font:700 clamp(30px,3.5vw,44px)/1.12 "Space Grotesk",sans-serif;letter-spacing:-.04em;overflow-wrap:anywhere;text-wrap:initial}
#reader-branch-label{margin:8px 0 0}
.reader-heading-footer{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.reader-owner-actions,.reader-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.reader-owner-actions:not(:has(a:not([hidden]))){display:none}
.reader-actions{margin-left:auto;flex:none}
.reader-tertiary{display:inline-flex;align-items:center;gap:4px;min-height:44px;color:var(--ink-soft);font-size:12px;font-weight:600;text-decoration:none}
.reader-tertiary:hover{text-decoration:underline;color:var(--ink)}
.reader-tertiary img{width:16px;height:16px}
.reader-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;border:0;border-radius:14px;padding:0 8px;background:transparent;color:var(--ink);font:700 13px/1.4 "Manrope",sans-serif;cursor:pointer}
.reader-action>img{width:20px;height:20px;flex:none}
.reader-action:hover{background:var(--surface-strong)}
.reader-heading :focus-visible,.reader-share-dialog :focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px}
.reader-action:disabled{opacity:.55;cursor:wait}
.reader-like{padding:0 4px;color:var(--ink-soft)}
.reader-like>img{width:32px;height:32px}
.reader-like .heart-filled{display:none}
.reader-like[aria-pressed=true]{color:var(--accent-dark)}
.reader-like[aria-pressed=true] .heart-outline{display:none}
.reader-like[aria-pressed=true] .heart-filled{display:block}
.reader-like[aria-pressed=true] img{filter:invert(37%) sepia(96%) saturate(1282%) hue-rotate(347deg) brightness(87%) contrast(91%)}
.reader-like-count{font-size:14px}
.reader-attention{position:relative}
.reader-attention-toggle>img{width:24px;height:24px;filter:invert(51%) sepia(83%) saturate(1656%) hue-rotate(12deg) brightness(95%) contrast(101%)}
.reader-popover{position:absolute;z-index:25;top:calc(100% + 8px);right:0;width:320px;max-width:calc(100vw - 40px);max-height:calc(100dvh - 160px);overflow:auto;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 12px 28px #1723121f}
.reader-popover-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:-8px -8px 12px 0}
.reader-popover-header h2{margin:0;font:700 16px/1.4 "Space Grotesk",sans-serif;letter-spacing:-.02em}
.reader-popover-header form{margin:0}
#reader-provenance{margin:0;padding-left:18px;color:var(--ink-soft);font-size:13px;line-height:1.6}
#reader-provenance li+li{margin-top:12px}
.reader-attention-link{border:0;border-radius:0;padding:0;background:transparent;color:var(--accent-dark);font:inherit;text-align:start;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.reader-attention-link:hover{color:var(--ink)}
.reader-attention-filter{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;margin-bottom:16px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.reader-attention-filter[hidden]{display:none}
.reader-attention-filter>div{flex:1 1 260px}
.reader-attention-filter h2{margin:0;font:700 14px/1.6 "Manrope",sans-serif;color:var(--ink)}
.reader-attention-filter p{margin:4px 0 0;max-width:65ch;color:var(--ink-soft);font-size:13px;line-height:1.6}
.reader-attention-filter button{flex:none;border:0;padding:0;background:transparent;color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.reader-attention-filter :focus-visible,#reader-count:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px}
.menu-item-meta .menu-price-badge{position:relative;z-index:2;display:inline-flex;align-items:center;flex:none;gap:4px;order:-2;min-height:24px;border:0;border-radius:7px;padding:4px 7px;font:800 10px/1.2 "Manrope",sans-serif;white-space:nowrap;cursor:help}
.menu-item-meta .menu-price-high{background:#fce7df;color:#923a22}
.menu-item-meta .menu-price-low{background:#e3effa;color:#235b80}
.menu-price-badge svg{width:14px;height:14px;flex:none}
.menu-item-meta .menu-price-badge:focus-visible{outline:2px solid currentColor;outline-offset:-2px}
.menu-price-tooltip{position:fixed;inset:auto;z-index:80;width:max-content;max-width:min(340px,calc(100vw - 16px));margin:0;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--ink);color:var(--surface);box-shadow:0 8px 24px #17231226;font:400 13px/1.6 "Manrope",sans-serif;white-space:pre-line;overflow-wrap:anywhere}
.menu-price-tooltip[hidden]{display:none}
#reader-menu-sources{display:grid;gap:12px;margin-top:12px;font-size:13px;line-height:1.6}
#reader-menu-sources:empty{display:none}
#reader-menu-sources a{color:var(--accent-dark);text-underline-offset:3px;overflow-wrap:anywhere}
.reader-share-dialog{width:360px;max-width:calc(100vw - 40px);max-height:calc(100dvh - 40px);padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);box-shadow:0 12px 28px #1723121f}
.reader-share-dialog::backdrop{background:#17231240}
#reader-share-url{width:100%;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--bg);font:400 14px/1.5 "Manrope",sans-serif;color:var(--ink-soft)}
#reader-copy-link{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;margin-top:12px;font-size:13px}
#reader-copy-link img{width:18px;height:18px}
#reader-share-status{margin:12px 0 0;color:var(--ink-soft);font-size:13px;line-height:1.6}
#reader-share-status:empty{display:none}
.menu-search>img{width:16px;height:16px;flex:none}
#reader-view .menu-category-tabs{padding:4px 0;scrollbar-width:none}
#reader-view .menu-category-tabs button{min-height:44px;padding:8px 16px;font-size:12px;font-weight:700;background:transparent}
#reader-view .menu-category-tabs button.active{background:#315033}
#reader-view .menu-search{flex-basis:264px}
#reader-view .menu-search input{font-size:12px}
#reader-view .menu-toolbar{align-items:center;margin-bottom:16px}
#reader-count{margin:0 0 16px}
@media(max-width:767px){
  .reader-heading{margin:0 0 20px}
  .reader-heading h1{font-size:32px}
  .reader-heading-footer{flex-direction:column;align-items:flex-start;gap:0;margin-top:8px}
  .reader-actions{margin-left:0;margin-top:4px}
  .reader-attention{position:static}
  .reader-popover{top:calc(100% + 8px);left:0;right:auto}
  .reader-title-row .reader-popover{left:auto;right:0}
  .has-bottom-nav .reader-heading-footer{display:none}
  #reader-view .menu-toolbar{flex-direction:column;align-items:stretch;gap:12px}
  #reader-view .menu-search{flex:auto;width:100%}
  #reader-view .menu-search input{font-size:16px}
}
@media(max-width:359px){.reader-heading h1{font-size:30px}}
