:root{--app-bg:#f6f1e7;--app-bg-secondary:#efe8da;--app-bg-tertiary:#e7dfcf;--app-bg-elevated:#fffdf8;--app-bg-ink:#0b0b0c;--app-bg-warm:#f6f1e7;--app-bg-warm-secondary:#efe8da;--app-border:#0b0b0c1f;--app-border-strong:#0b0b0c3d;--app-border-focus:#0b0b0c;--app-text-primary:#0b0b0c;--app-text-secondary:#3f3a33;--app-text-muted:#6b645a;--app-text-disabled:#9a9286;--app-accent:#0b0b0c;--app-accent-hover:#2a2622;--app-accent-text:#fffdf8;--app-food-accent:#d7261e;--app-food-accent-hover:#b51f18;--app-food-accent-light:#fbe9e6;--app-food-accent-bg:#d7261e14;--app-food-accent-border:#d7261e47;--app-success:#1f7a4d;--app-success-bg:#1f7a4d1a;--app-success-border:#1f7a4d47;--app-error:#b42318;--app-error-bg:#b4231814;--app-error-border:#b4231847;--app-info:#1d4e89;--app-info-bg:#1d4e8914;--app-info-border:#1d4e893d;--app-warning:#8a5a00;--app-warning-bg:#b073001a;--app-warning-border:#b0730047;--font-sans:var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-display:var(--font-fraunces),Georgia,"Times New Roman",serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3rem;--text-display:4.5rem;--font-normal:400;--font-medium:500;--font-semibold:600;--tracking-tighter:-.03em;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.02em;--tracking-wider:.08em;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:6px;--radius-md:10px;--radius-lg:12px;--radius-xl:14px;--radius-2xl:20px;--radius-full:9999px;--transition-fast:.18s cubic-bezier(.2,0,0,1);--transition-base:.28s cubic-bezier(.2,0,0,1);--transition-slow:.45s cubic-bezier(.2,0,0,1);--shadow-sm:0 1px 2px #3c28140f;--shadow-md:0 1px 2px #3c28140f,0 8px 24px #3c281412;--shadow-lg:0 2px 4px #3c28140f,0 20px 48px #3c28141f}body{background:var(--app-bg);color:var(--app-text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}h1,h2,h3,.font-display,.app-page-title,.app-card__title,.app-banner__title,.app-empty__title,.food-hero__title,.food-empty__title,.confirm-modal__title{font-family:var(--font-display);font-optical-sizing:auto;letter-spacing:-.01em;font-weight:600}h1,.font-display,.food-hero__title{letter-spacing:var(--tracking-tight)}:focus-visible{outline:2px solid var(--app-food-accent);outline-offset:2px}::selection{background:var(--app-food-accent-light);color:var(--app-text-primary)}.app-page{background-color:var(--app-bg);min-height:100vh;font-family:var(--font-sans);color:var(--app-text-primary)}.app-container{max-width:80rem;padding:0 var(--space-4);margin:0 auto}@media (min-width:640px){.app-container{padding:0 var(--space-6)}}@media (min-width:1024px){.app-container{padding:0 var(--space-8)}}.app-container--narrow{max-width:56rem}.app-page-header{align-items:center;gap:var(--space-4);padding:var(--space-6)0;display:flex}.app-back-button{align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--app-text-muted);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;padding:0;display:inline-flex}.app-back-button:hover{color:var(--app-text-primary)}.app-page-title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--app-text-primary);letter-spacing:var(--tracking-tight)}.app-main{padding-top:var(--space-8);padding-bottom:var(--space-12)}.app-section{margin-bottom:var(--space-8)}.app-section:last-child{margin-bottom:0}.app-card{background:var(--app-bg-elevated);border:1px solid var(--app-border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm);color:inherit;text-decoration:none;display:block}.app-card--interactive{cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.app-card--interactive:hover{border-color:var(--app-border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.app-card__icon{width:32px;height:32px;color:var(--app-text-primary);margin-bottom:var(--space-4)}.app-card__title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--app-text-primary);margin-bottom:var(--space-2);letter-spacing:var(--tracking-tight)}.app-card__description{font-size:var(--text-base);color:var(--app-text-muted);line-height:1.5}.app-card__section{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--app-text-primary);margin-bottom:var(--space-6)}.app-button{justify-content:center;align-items:center;gap:var(--space-2);height:48px;padding:0 var(--space-6);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-semibold);border-radius:var(--radius-full);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);white-space:nowrap;border:1px solid #0000;text-decoration:none;display:inline-flex}.app-button:active:not(:disabled){transform:scale(.98)}.app-button:disabled{opacity:.5;cursor:not-allowed}.app-button--primary{background:var(--app-accent);color:var(--app-accent-text)}.app-button--primary:hover:not(:disabled){background:var(--app-accent-hover)}.app-button--secondary{background:var(--app-bg-elevated);color:var(--app-text-primary);border-color:var(--app-border-strong)}.app-button--secondary:hover:not(:disabled){border-color:var(--app-text-primary)}.app-button--ghost{color:var(--app-text-muted);padding:0 var(--space-4);background:0 0;height:40px}.app-button--ghost:hover:not(:disabled){color:var(--app-text-primary);background:var(--app-bg-tertiary)}.app-button--danger{background:var(--app-error);color:#fff}.app-button--danger:hover:not(:disabled){opacity:.9}.app-button--icon{width:40px;height:40px;padding:0}.app-button--sm{height:36px;padding:0 var(--space-4);font-size:var(--text-sm)}.app-button--full{width:100%}.app-form{gap:var(--space-6);flex-direction:column;display:flex}.app-field{gap:var(--space-2);flex-direction:column;display:flex}.app-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--app-text-primary)}.app-label--required:after{content:" *";color:var(--app-error)}.app-hint{font-size:var(--text-xs);color:var(--app-text-muted);margin-top:var(--space-1)}.app-input{width:100%;height:48px;padding:0 var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);color:var(--app-text-primary);background:var(--app-bg-elevated);border:1px solid var(--app-border);border-radius:var(--radius-lg);transition:border-color var(--transition-fast);outline:none}.app-input::placeholder{color:var(--app-text-disabled)}.app-input:hover{border-color:var(--app-border-strong)}.app-input:focus{border-color:var(--app-border-focus);box-shadow:0 0 0 3px #0b0b0c14}.app-input:disabled{background:var(--app-bg-secondary);cursor:not-allowed}.app-input--error{background:var(--app-error-bg);border-color:var(--app-error)!important}.app-textarea{min-height:100px;padding:var(--space-3)var(--space-4);resize:vertical}.app-alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-base);display:flex}.app-alert--error{background:var(--app-error-bg);border:1px solid var(--app-error-border);color:var(--app-error)}.app-alert--success{background:var(--app-success-bg);border:1px solid var(--app-success-border);color:var(--app-success)}.app-alert--info{background:var(--app-info-bg);border:1px solid var(--app-info-border);color:var(--app-info)}.app-alert--warning{background:var(--app-warning-bg);border:1px solid var(--app-warning-border);color:var(--app-warning)}.app-alert__icon{flex-shrink:0;margin-top:2px}.app-banner{padding:var(--space-8);border:1px solid var(--app-border);border-radius:var(--radius-xl);background:var(--app-bg-secondary)}.app-banner__title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--app-text-primary);margin-bottom:var(--space-4)}.app-steps{gap:var(--space-3);flex-direction:column;display:flex}.app-step{align-items:flex-start;gap:var(--space-3);color:var(--app-text-secondary);display:flex}.app-step__number{background:var(--app-accent);width:24px;height:24px;color:var(--app-accent-text);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.app-grid{gap:var(--space-6);display:grid}.app-grid--2{grid-template-columns:repeat(1,1fr)}@media (min-width:640px){.app-grid--2{grid-template-columns:repeat(2,1fr)}}.app-grid--3{grid-template-columns:repeat(1,1fr)}@media (min-width:640px){.app-grid--3{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.app-grid--3{grid-template-columns:repeat(3,1fr)}}.app-empty{padding:var(--space-12);text-align:center;border:1px dashed var(--app-border-strong);border-radius:var(--radius-xl);background:var(--app-bg-elevated)}.app-empty__icon{width:64px;height:64px;color:var(--app-text-disabled);margin:0 auto var(--space-4)}.app-empty__title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--app-text-primary);margin-bottom:var(--space-2)}.app-empty__description{font-size:var(--text-base);color:var(--app-text-muted);margin-bottom:var(--space-6)}.app-loading{justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;min-height:100vh;display:flex}.app-spinner{border:2px solid var(--app-border);border-top-color:var(--app-accent);border-radius:var(--radius-full);width:32px;height:32px;animation:.8s linear infinite app-spin}.app-spinner--lg{border-width:3px;width:48px;height:48px}@keyframes app-spin{to{transform:rotate(360deg)}}.app-loading__text{font-size:var(--text-base);color:var(--app-text-muted)}.app-upload-zone{background:var(--app-bg-elevated);border:2px dashed var(--app-border-strong);border-radius:var(--radius-xl);padding:var(--space-8);text-align:center;cursor:pointer;transition:all var(--transition-fast)}.app-upload-zone:hover{border-color:var(--app-border-strong)}.app-upload-zone--active{border-color:var(--app-accent);background:var(--app-bg-secondary)}.app-upload-zone--disabled{opacity:.5;cursor:not-allowed}.app-upload-zone__icon{width:40px;height:40px;color:var(--app-text-disabled);margin:0 auto var(--space-2)}.app-upload-zone__text{font-size:var(--text-sm);color:var(--app-text-secondary);font-weight:var(--font-medium)}.app-upload-zone__hint{font-size:var(--text-xs);color:var(--app-text-muted);margin-top:var(--space-1)}.app-actions{gap:var(--space-4);display:flex}.app-badge{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);border-radius:var(--radius-full);padding:var(--space-1)var(--space-3);display:inline-flex}.app-badge--success{background:var(--app-success-bg);color:var(--app-success)}.app-badge--error{background:var(--app-error-bg);color:var(--app-error)}.app-badge--muted{background:var(--app-bg-tertiary);color:var(--app-text-muted)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:640px){.app-button{height:44px;padding:0 var(--space-4);font-size:var(--text-sm)}.app-input{height:44px}.app-card{padding:var(--space-5)}.app-banner{padding:var(--space-6)}.app-page-title{font-size:var(--text-xl)}}.menu-view{background:#fff;position:fixed;inset:0}.menu-view--empty{background:var(--app-bg);flex-direction:column;min-height:100vh;display:flex;position:static}.menu-view__pdf{background:#fff;border:0;width:100%;height:100%;display:block}.menu-pill{top:calc(env(safe-area-inset-top,0px) + 12px);z-index:50;align-items:center;gap:var(--space-2);max-width:calc(100vw - 24px);padding:6px;padding-right:var(--space-4);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px);border:1px solid var(--app-border);border-radius:var(--radius-full);box-shadow:var(--shadow-md);background:#fffdf8f0;display:flex;position:fixed;left:12px}.menu-view--empty .menu-pill{margin:calc(env(safe-area-inset-top,0px) + 12px)12px 0;align-self:flex-start;position:sticky}.menu-pill__back,.menu-pill__call{border-radius:var(--radius-full);width:32px;height:32px;color:var(--app-text-primary);flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.menu-pill__back:hover{background:var(--app-bg-secondary)}.menu-pill__call{margin-right:calc(-1*var(--space-2));background:var(--app-bg-ink);color:var(--app-accent-text)}.menu-pill__logo{border-radius:var(--radius-full);object-fit:cover;border:1px solid var(--app-border);background:#fff;flex-shrink:0;width:32px;height:32px}.menu-pill__logo--initials{background:var(--app-bg-ink);border-color:var(--app-bg-ink);color:var(--app-accent-text);font-family:var(--font-display);justify-content:center;align-items:center;font-size:13px;font-weight:600;display:inline-flex}.menu-pill__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:60vw;font-family:var(--font-display);font-size:var(--text-base);letter-spacing:-.01em;font-weight:600;overflow:hidden}.menu-empty{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-12)var(--space-6);text-align:center;flex-direction:column;flex:1;display:flex}.menu-empty__icon{color:var(--app-text-muted);margin-bottom:var(--space-2)}.menu-empty__title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:600}.menu-empty__text{max-width:28rem;color:var(--app-text-muted);margin-bottom:var(--space-4)}.food-page{background:var(--app-bg);min-height:100vh;color:var(--app-text-primary)}.food-hero{padding:var(--space-16)var(--space-4)var(--space-10);text-align:center;border-bottom:1px solid var(--app-border)}.food-hero__title{margin-top:var(--space-2);font-size:var(--text-4xl);overflow-wrap:anywhere;line-height:1.05}@media (min-width:640px){.food-hero__title{font-size:var(--text-display)}}.food-hero__description{max-width:40rem;margin:var(--space-4)auto 0;font-size:var(--text-lg);color:var(--app-text-muted)}.food-hero__meta{justify-content:center;gap:var(--space-2)var(--space-5);margin-top:var(--space-6);font-size:var(--text-sm);color:var(--app-text-muted);flex-wrap:wrap;display:flex}.food-hero__meta-item{align-items:center;gap:var(--space-2);display:inline-flex}.food-header__meta-link{color:var(--app-text-primary);font-weight:var(--font-semibold);text-decoration:none}.food-header__meta-link:hover{text-decoration:underline}.food-main{max-width:72rem;padding:var(--space-10)var(--space-4)var(--space-16);margin:0 auto}.food-main__title{margin-bottom:var(--space-6);font-size:var(--text-2xl);text-align:center}.food-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}@media (min-width:768px){.food-grid{gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.food-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.food-card{background:var(--app-bg-elevated);border:1px solid var(--app-border);border-radius:var(--radius-xl);height:100%;box-shadow:var(--shadow-sm);color:inherit;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.food-card:hover{box-shadow:var(--shadow-md);border-color:var(--app-border-strong);transform:translateY(-2px)}.food-card__image{aspect-ratio:4/3;padding:var(--space-5);background:var(--app-bg-secondary);justify-content:center;align-items:center;display:flex;position:relative}.food-card__image img{object-fit:contain;max-width:100%;max-height:100%}.food-card__initials{font-family:var(--font-display);color:var(--app-text-secondary);font-size:clamp(1.75rem,6vw,2.5rem);font-weight:600}.food-card__badge{top:var(--space-2);right:var(--space-2);align-items:center;gap:var(--space-1);padding:2px var(--space-2);background:var(--app-bg-ink);color:var(--app-accent-text);font-size:var(--text-xs);font-weight:var(--font-semibold);border-radius:var(--radius-full);display:inline-flex;position:absolute}.food-card__content{gap:var(--space-2);padding:var(--space-3)var(--space-4)var(--space-4);flex-direction:column;flex:1;display:flex}.food-card__title{font-size:var(--text-base);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.food-card__cta{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--app-text-muted);margin-top:auto}.food-card:hover .food-card__cta{color:var(--app-text-primary)}.food-empty{padding:var(--space-16)var(--space-4);text-align:center}.food-empty__icon{color:var(--app-text-muted);margin:0 auto var(--space-4)}.food-empty__title{font-size:var(--text-2xl);margin-bottom:var(--space-2)}.food-empty__description{color:var(--app-text-muted)}.food-footer{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-6)var(--space-4);border-top:1px solid var(--app-border);font-size:var(--text-sm);color:var(--app-text-muted);display:flex}.toast-container{bottom:var(--space-6);right:var(--space-6);z-index:9999;gap:var(--space-3);flex-direction:column;max-width:400px;display:flex;position:fixed}@media (max-width:640px){.toast-container{left:var(--space-4);right:var(--space-4);bottom:var(--space-4);max-width:none}}.toast{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--app-bg-elevated);border:1px solid var(--app-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);animation:.3s toast-slide-in;display:flex}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.toast__icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast--success .toast__icon{color:var(--app-success)}.toast--error .toast__icon{color:var(--app-error)}.toast--info .toast__icon{color:var(--app-info)}.toast__message{font-size:var(--text-base);color:var(--app-text-primary);flex:1;line-height:1.4}.toast__close{border-radius:var(--radius-full);width:28px;height:28px;color:var(--app-text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast__close:hover{background:var(--app-bg-tertiary);color:var(--app-text-primary)}.confirm-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;padding:var(--space-4);background:#0b0b0c73;justify-content:center;align-items:center;animation:.2s confirm-fade-in;display:flex;position:fixed;inset:0}@keyframes confirm-fade-in{0%{opacity:0}to{opacity:1}}.confirm-modal{background:var(--app-bg-elevated);border:1px solid var(--app-border);border-radius:var(--radius-2xl);padding:var(--space-8);width:100%;max-width:400px;animation:.2s confirm-slide-in}@keyframes confirm-slide-in{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.confirm-modal__title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--app-text-primary);margin-bottom:var(--space-2)}.confirm-modal__description{font-size:var(--text-base);color:var(--app-text-muted);margin-bottom:var(--space-6);line-height:1.5}.confirm-modal__actions{gap:var(--space-3);justify-content:flex-end;display:flex}@media (max-width:480px){.confirm-modal__actions{flex-direction:column-reverse}.confirm-modal__actions .app-button{width:100%}}.app-topbar{z-index:40;-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--app-border);background:#fffdf8eb;position:sticky;top:0}.app-topbar__inner{align-items:center;gap:var(--space-4);flex-wrap:wrap;min-height:64px;display:flex}.app-logo{align-items:center;gap:var(--space-2);color:var(--app-text-primary);flex-shrink:0;text-decoration:none;display:inline-flex}.app-logo__mark{border-radius:var(--radius-full);background:var(--app-bg-ink);width:32px;height:32px;color:var(--app-accent-text);justify-content:center;align-items:center;display:inline-flex}.app-logo__word{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);letter-spacing:-.01em}.app-nav{gap:var(--space-1);margin-left:var(--space-4);margin-right:auto;display:flex}.app-nav__link{padding:var(--space-2)var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--app-text-secondary);white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast);text-decoration:none}.app-nav__link:hover{background:var(--app-bg-secondary);color:var(--app-text-primary)}.app-nav__link--active,.app-nav__link--active:hover{background:var(--app-bg-ink);color:var(--app-accent-text)}@media (max-width:639px){.app-topbar__inner{padding-top:var(--space-3);padding-bottom:var(--space-3);row-gap:var(--space-3);justify-content:space-between}.app-nav{scrollbar-width:none;order:3;width:100%;margin:0;overflow-x:auto}.app-nav::-webkit-scrollbar{display:none}}.app-titlebar{justify-content:space-between;align-items:flex-end;gap:var(--space-4);padding:var(--space-8)0 0;display:flex}.app-titlebar .app-page-title{font-size:var(--text-3xl);overflow-wrap:anywhere;line-height:1.15}.app-titlebar__subtitle{margin-top:var(--space-1);color:var(--app-text-muted);font-size:var(--text-base)}.app-publink{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-2)var(--space-2)var(--space-4);background:var(--app-bg);border:1px solid var(--app-border);border-radius:var(--radius-full);min-width:0;display:flex}.app-publink__url{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-sm);color:var(--app-text-secondary);flex:1;overflow:hidden}.app-status{gap:var(--space-4);display:grid}.app-status__row{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.app-status__name{font-family:var(--font-display);font-size:var(--text-2xl);overflow-wrap:anywhere;font-weight:600;line-height:1.2}.app-eyebrow{font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--app-text-muted)}.app-stalls{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.app-stall{align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--app-bg-elevated);border:1px solid var(--app-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);grid-template-columns:auto 1fr auto auto;display:grid}.app-stall__logo{border-radius:var(--radius-lg);border:1px solid var(--app-border);object-fit:cover;background:var(--app-bg-secondary);width:48px;height:48px}.app-stall__logo--empty{color:var(--app-text-muted);justify-content:center;align-items:center;display:inline-flex}.app-stall__body{min-width:0}.app-stall__name{font-weight:var(--font-semibold);overflow-wrap:anywhere}.app-stall__slug{font-size:var(--text-sm);color:var(--app-text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-stall__actions{gap:var(--space-2);display:flex}.app-stall__delete{color:var(--app-error)}@media (max-width:639px){.app-stall{grid-template-columns:auto 1fr}.app-stall .app-badge{grid-column:2;justify-self:start}.app-stall__actions{grid-column:1/-1}.app-stall__actions .app-button{flex:1}}.app-upload-zone{flex-direction:column;align-items:center;display:flex}.app-upload-zone:focus-within{outline:2px solid var(--app-food-accent);outline-offset:2px}.app-upload__description{margin-top:var(--space-1);font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--app-text-muted);display:block}.app-upload__current{align-self:flex-start;position:relative}.app-upload__image{object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--app-border);width:112px;height:112px}.app-upload__file{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--app-bg-secondary);border:1px solid var(--app-border);border-radius:var(--radius-lg);color:var(--app-text-muted);display:flex}.app-upload__file p:first-child{color:var(--app-text-primary)}.app-upload__remove{border:2px solid var(--app-bg-elevated);border-radius:var(--radius-full);background:var(--app-error);color:#fff;cursor:pointer;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;position:absolute;top:-8px;right:-8px}.app-upload__remove:disabled{opacity:.5}.app-qr{padding:var(--space-6);border:1px solid var(--app-border);border-radius:var(--radius-xl);background:#fff;justify-content:center;display:flex}.app-qr__svg{max-width:100%;height:auto}.app-steps--progress{gap:var(--space-2);margin-bottom:var(--space-8);flex-direction:row;padding:0;list-style:none}.app-steps--progress .app-step{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-full);background:var(--app-bg-secondary);color:var(--app-text-muted);font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.app-steps--progress .app-step__number{background:var(--app-bg-elevated);color:var(--app-text-muted);border:1px solid var(--app-border-strong)}.app-steps--progress .app-step--active{background:var(--app-bg-ink);color:var(--app-accent-text)}.app-steps--progress .app-step--active .app-step__number{background:var(--app-food-accent);border-color:var(--app-food-accent);color:#fff}.app-steps--progress .app-step--completed .app-step__number{background:var(--app-bg-ink);border-color:var(--app-bg-ink);color:var(--app-accent-text)}@media (max-width:639px){.app-steps--progress .app-step:not(.app-step--active){flex:none}.app-steps--progress .app-step:not(.app-step--active)>span:last-child{display:none}}.land-wrap{width:100%;max-width:72rem;padding:0 var(--space-5);margin:0 auto}@media (min-width:1024px){.land-wrap{padding:0 var(--space-8)}}.land-nav{z-index:40;-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--app-border);background:#f6f1e7e6;position:sticky;top:0}.land-hero{padding:var(--space-16)0 var(--space-20)}@media (min-width:1024px){.land-hero{padding:var(--space-20)0 var(--space-24)}}.land-display{font-family:var(--font-display);letter-spacing:-.035em;max-width:14ch;font-size:clamp(2.75rem,7vw,5.25rem);font-weight:600;line-height:.98}.land-h2{font-family:var(--font-display);letter-spacing:-.03em;max-width:18ch;font-size:clamp(2rem,4.2vw,3.25rem);font-weight:600;line-height:1.02}.land-lede{margin-top:var(--space-6);max-width:34rem;font-size:var(--text-lg);color:var(--app-text-secondary);line-height:1.6}.land-lede--inverse{color:#fffdf8b3}.land-cta{height:52px;padding:0 var(--space-8)}.land-section{padding:var(--space-20)0}.land-section--tint{background:var(--app-bg-secondary)}.land-menu{width:min(100%,380px);padding:var(--space-8)var(--space-8)var(--space-10);color:#2b251d;background:#f3ede2;border-radius:4px;justify-self:center;position:relative;transform:rotate(-3deg);box-shadow:0 1px 2px #3c28141a,0 30px 60px -20px #3c281459}.land-menu__name{font-family:var(--font-display);letter-spacing:.06em;text-align:center;text-transform:uppercase;font-size:1.35rem;font-weight:600}.land-menu__est{text-align:center;letter-spacing:.3em;color:#6b645a;margin-top:2px;font-size:11px}.land-menu__section{margin:var(--space-5)0 var(--space-2);letter-spacing:.24em;color:#6b645a;font-size:11px;font-weight:600}.land-menu__row{align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);line-height:1.9;display:flex}.land-menu__row i{border-bottom:2px dotted #3b342b47;flex:1}.land-menu__stain{filter:blur(.6px);border:6px solid #784e2629;border-radius:50%;width:120px;height:120px;position:absolute;bottom:64px;right:22px;box-shadow:inset 0 0 0 2px #784e260f}.land-sticker{align-items:center;gap:var(--space-1);border-radius:var(--radius-lg);background:#fff;flex-direction:column;padding:10px 10px 8px;animation:.7s cubic-bezier(.2,.9,.2,1.2) .25s backwards land-stick;display:flex;position:absolute;bottom:-34px;left:-28px;transform:rotate(7deg);box-shadow:0 16px 40px -8px #0b0b0c59}.land-sticker__caption{font-size:11px;font-weight:var(--font-semibold);color:var(--app-text-primary)}@keyframes land-stick{0%{transform:translate(-40px,-60px)rotate(-14deg)scale(1.25)}}@media (max-width:639px){.land-menu{width:min(100%,320px);padding:var(--space-6)var(--space-6)var(--space-8)}.land-sticker{left:-12px}}.land-steps{gap:var(--space-10);margin-top:var(--space-12);padding:0;list-style:none;display:grid}@media (min-width:768px){.land-steps{gap:var(--space-8);grid-template-columns:repeat(3,minmax(0,1fr))}}.land-step{padding-top:var(--space-5);border-top:2px solid var(--app-text-primary)}.land-step__num{font-family:var(--font-display);letter-spacing:-.04em;font-size:3.5rem;font-weight:600;line-height:1;display:block}.land-step__title{margin-top:var(--space-4);font-size:var(--text-xl)}.land-step__desc{margin-top:var(--space-2);max-width:30ch;color:var(--app-text-secondary);line-height:1.6}.land-features{gap:var(--space-8)var(--space-10);display:grid}@media (min-width:640px){.land-features{grid-template-columns:repeat(2,minmax(0,1fr))}}.land-feature__title{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.01em;font-weight:600}.land-feature__desc{margin-top:var(--space-2);color:var(--app-text-secondary);line-height:1.6}.land-band{padding:var(--space-20)0;background:var(--app-bg-ink);color:var(--app-accent-text)}.land-stalls{gap:var(--space-3);max-width:26rem;padding:var(--space-4);background:var(--app-bg);border-radius:var(--radius-2xl);grid-template-columns:repeat(3,minmax(0,1fr));justify-self:center;width:100%;display:grid}.land-stall{gap:var(--space-2);padding:var(--space-2);background:var(--app-bg-elevated);border:1px solid var(--app-border);border-radius:var(--radius-lg);flex-direction:column;display:flex}.land-stall__tile{aspect-ratio:4/3;border-radius:var(--radius-md);background:var(--app-bg-secondary);color:var(--app-text-secondary);font-family:var(--font-display);font-size:var(--text-xl);justify-content:center;align-items:center;font-weight:600;display:flex}.land-stall__line{border-radius:var(--radius-full);background:var(--app-bg-tertiary);width:70%;height:8px}.land-film{margin-top:var(--space-10);border-radius:var(--radius-2xl);background:var(--app-bg-ink);box-shadow:var(--shadow-lg);overflow:hidden}.land-final{padding:var(--space-16)var(--space-8);border:2px solid var(--app-text-primary);border-radius:var(--radius-2xl);background:var(--app-bg-elevated);text-align:left}@media (max-width:639px){.land-final{padding:var(--space-10)var(--space-5)}}.app-hint--error{color:var(--app-error)}.msg-page{min-height:100vh;padding:var(--space-8)var(--space-4);background:var(--app-bg);justify-content:center;align-items:center;display:flex}.msg-card{width:100%;max-width:30rem;padding:var(--space-10)var(--space-8);background:var(--app-bg-elevated);border:1px solid var(--app-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md)}.msg-card__icon{color:var(--app-text-muted)}.msg-card__title{margin-top:var(--space-5);font-family:var(--font-display);font-size:var(--text-3xl);line-height:1.1}.msg-card__text{margin-top:var(--space-3);color:var(--app-text-secondary);line-height:1.6}.msg-card__actions{gap:var(--space-3);margin-top:var(--space-8);flex-wrap:wrap;display:flex}
