@font-face{font-family:Arima Madurai;font-weight:700;font-display:swap;src:url(/fonts/arima-madurai/arima-madurai-700.woff2) format("woff2")}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/source-sans-3/source-sans-3-400-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/source-sans-3/source-sans-3-400-latin-ext.woff2) format("woff2");unicode-range:u+0100-024f,u+0259,u+1e??,u+2020,u+20a0-20ab,u+20ad-20cf,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/source-sans-3/source-sans-3-600-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/source-sans-3/source-sans-3-600-latin-ext.woff2) format("woff2");unicode-range:u+0100-024f,u+0259,u+1e??,u+2020,u+20a0-20ab,u+20ad-20cf,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/source-sans-3/source-sans-3-700-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/source-sans-3/source-sans-3-700-latin-ext.woff2) format("woff2");unicode-range:u+0100-024f,u+0259,u+1e??,u+2020,u+20a0-20ab,u+20ad-20cf,u+2113,u+2c60-2c7f,u+a720-a7ff}:root{--color-carbon:#3a3a3a;--color-marfil:#f8f3ea;--color-pan:#e6d8c3;--color-pan-claro:#eadfcc;--color-white:#ffffff;--color-ink:var(--color-carbon);--color-paper:var(--color-white);--color-text-body:var(--color-carbon);--color-taupe:#5f5f5f;--color-chukum:var(--color-pan);--color-surface:var(--color-white);--color-surface-muted:var(--color-pan-claro);--color-border:#d9cdb6;--color-state-info:#244c5e;--color-state-info-bg:#e8eef1;--color-state-success:#2f5e41;--color-state-success-bg:#e7efe9;--color-state-warn:#6c4800;--color-state-warn-bg:#f2e9d8;--color-state-danger:#8c332b;--color-state-danger-bg:#f5e6e4;--color-neutral:#5f5f5f;--font-headline:"Arima Madurai",Georgia,"Times New Roman",serif;--font-ui:"Source Sans 3",Arial,sans-serif;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-pill:999px;--radius-arch:var(--radius-md);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--shadow:0 16px 40px rgba(58,58,58,0.1);--focus-ring:0 0 0 3px rgba(36,76,94,0.3)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-marfil);color:var(--color-carbon);font-family:var(--font-ui);font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}.brand-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-paper);position:relative}.brand-bar__home-link{order:1}.brand-bar__logout{order:2}@media (min-width:1024px){.brand-bar__logout{order:3}}.brand-bar__logout{margin:0}.brand-bar__logout-button{font-family:var(--font-ui);font-weight:600;font-size:.8rem;letter-spacing:.02em;color:var(--color-taupe);background:none;border:none;padding:var(--space-1) var(--space-2);cursor:pointer}.brand-bar__logout-button:focus-visible,.brand-bar__logout-button:hover{color:var(--color-ink)}.brand-bar__logo{display:block;height:28px;width:auto;color:var(--color-ink)}.gos-wordmark{font-family:var(--font-ui);font-weight:600;font-size:1.05rem;letter-spacing:.01em;color:var(--color-carbon);white-space:nowrap}.gos-lockup{display:inline-flex;align-items:center;gap:var(--space-3);white-space:nowrap}.gos-lockup__marca{font-family:var(--font-headline);font-weight:700;font-size:1.5rem;letter-spacing:.04em;color:var(--color-carbon)}.gos-lockup__sep{width:1px;align-self:stretch;min-height:1.4em;background:var(--color-border)}.gos-lockup__sistema{font-family:var(--font-ui);font-weight:600;font-size:1.05rem;color:var(--color-carbon)}.brand-bar__home-link{display:flex;align-items:center;gap:var(--space-2);color:var(--color-ink);text-decoration:none}.brand-bar__home-link span{font-family:var(--font-ui);font-weight:600;font-size:.85rem;letter-spacing:.02em;color:var(--color-taupe)}.brand-bar__home-link:focus-visible span,.brand-bar__home-link:hover span{color:var(--color-ink)}.category-nav{order:3;flex-basis:100%}.category-nav--desktop{display:none}@media (min-width:1024px){.category-nav{order:2;flex-basis:auto;flex:1 1 auto}.category-nav--mobile{display:none}.category-nav--desktop{display:block}}.category-nav--mobile>details>summary.category-nav__mobile-trigger{display:inline-flex;align-items:center;gap:var(--space-1);list-style:none;cursor:pointer;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-ui);font-weight:600;font-size:.85rem;letter-spacing:.02em;color:var(--color-ink);background:var(--color-surface-muted)}.category-nav__mobile-trigger::-webkit-details-marker{display:none}.category-nav__mobile-trigger:after{content:"▾";font-size:.7em;color:var(--color-taupe)}.category-nav--mobile>details[open]>summary.category-nav__mobile-trigger:after{content:"▴"}.category-nav__mobile-panel{margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-4)}.category-nav__mobile-heading{margin:0 0 var(--space-1);font-family:var(--font-ui);font-weight:700;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-taupe)}.category-nav__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-1)}.category-nav__item{position:relative}.category-nav__trigger{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-family:var(--font-ui);font-weight:600;font-size:.85rem;letter-spacing:.02em;color:var(--color-taupe);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.category-nav__trigger:after{content:"▾";font-size:.65em;color:var(--color-taupe)}.category-nav--desktop .category-nav__panel{display:none}.category-nav__item:hover>.category-nav__trigger{color:var(--color-ink);background:var(--color-surface-muted)}.category-nav__item:hover>.category-nav__trigger:after{content:"▴"}.category-nav__item:hover>.category-nav__panel{display:flex}.category-nav__item>.category-nav__panel{position:absolute;top:100%;left:0;z-index:30;margin-top:0;min-width:240px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow)}.category-nav__panel{list-style:none;margin:0;padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-1)}.category-nav__link{display:block;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-ink);font-family:var(--font-ui);font-weight:500;font-size:.9rem;text-decoration:none;white-space:nowrap}.category-nav__link:focus-visible,.category-nav__link:hover{background:var(--color-surface-muted)}.update-banner{position:fixed;left:var(--space-4);right:var(--space-4);bottom:var(--space-4);z-index:100;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--color-carbon);color:var(--color-marfil);border-radius:var(--radius-md);box-shadow:0 16px 40px rgba(58,58,58,.3);font-family:var(--font-ui);font-weight:600;font-size:.9rem}@media (min-width:768px){.update-banner{left:auto;right:var(--space-6);bottom:var(--space-6);max-width:360px}}.update-banner__button{flex:none;font-family:var(--font-ui);font-weight:700;font-size:.85rem;letter-spacing:.02em;color:var(--color-ink);background:var(--color-paper);border:none;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);cursor:pointer}.update-banner__button:focus-visible,.update-banner__button:hover{background:var(--color-surface-muted)}.shell{max-width:640px;margin:0 auto;padding:var(--space-6) var(--space-4) var(--space-12)}@media (min-width:768px){.shell{max-width:920px;padding-left:var(--space-6);padding-right:var(--space-6)}}@media (min-width:1024px){.shell{max-width:1280px;padding-left:var(--space-8);padding-right:var(--space-8)}}h1{font-family:var(--font-headline);font-weight:700;font-size:1.875rem;letter-spacing:-.01em;line-height:1.2;margin:0 0 var(--space-6)}h1,h2{color:var(--color-carbon)}h2{font-family:var(--font-ui);font-weight:600;font-size:1.125rem;letter-spacing:0;line-height:1.25;margin:var(--space-8) 0 var(--space-3)}h2:first-child{margin-top:0}p{margin:0 0 var(--space-4);color:var(--color-text-body)}a{color:var(--color-ink);-webkit-text-decoration-color:var(--color-taupe);text-decoration-color:var(--color-taupe);text-underline-offset:2px}[role=alert]{background:var(--color-state-danger-bg);color:var(--color-state-danger);border:1px solid var(--color-state-danger);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);font-size:.9rem;margin:0 0 var(--space-4)}.nav-list{list-style:none;margin:0 0 var(--space-6);padding:0;display:grid;grid-template-columns:1fr;grid-gap:var(--space-2);gap:var(--space-2)}@media (min-width:768px){.nav-list{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}}@media (min-width:1024px){.nav-list{grid-template-columns:repeat(3,1fr)}}.nav-list__link{display:block;padding:var(--space-4);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-ui);font-weight:600;letter-spacing:.02em;text-decoration:none}.nav-list__link:focus-visible,.nav-list__link:hover{border-color:var(--color-taupe)}.list{list-style:none;margin:0 0 var(--space-4);padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.list-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.list-item__link{text-decoration:none}.list-item__link,.list-item__title{color:var(--color-ink);font-weight:600}.list-item__title{margin-right:auto}.list-item__meta{color:var(--color-taupe);font-size:.9rem}.card{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-6);margin:0 0 var(--space-6)}form{gap:var(--space-4);margin:0 0 var(--space-4)}.field,form{display:flex;flex-direction:column}.field{gap:var(--space-1);font-family:var(--font-ui);font-weight:600;font-size:.85rem;letter-spacing:.02em;color:var(--color-ink)}fieldset{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin:0}legend{font-weight:600;letter-spacing:.02em;padding:0 var(--space-1)}input:not([type=checkbox]):not([type=radio]),select,textarea{font-family:var(--font-ui);font-size:1rem;font-weight:400;color:var(--color-text-body);background:var(--color-paper);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}input[type=checkbox],input[type=radio]{width:1.1rem;height:1.1rem;flex:none;accent-color:var(--color-taupe)}.field:has(>input[type=checkbox]),.field:has(>input[type=radio]){flex-direction:row;align-items:center}textarea{font-family:var(--font-ui);resize:vertical}[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid var(--color-state-info);outline-offset:2px;border-radius:var(--radius-sm)}input:disabled,select:disabled,textarea:disabled{opacity:.6}dl{display:grid;grid-template-columns:max-content 1fr;grid-gap:var(--space-2) var(--space-4);gap:var(--space-2) var(--space-4);margin:0 0 var(--space-6)}dt{color:var(--color-taupe);font-size:.85rem;font-weight:600}dd{margin:0;color:var(--color-text-body)}.table-scroll{overflow-x:auto;margin:0 0 var(--space-6)}.table-scroll table{margin:0}table{width:100%;border-collapse:collapse;margin:0 0 var(--space-6);font-size:.9rem}td,th{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border)}th{font-family:var(--font-ui);font-weight:600;font-size:.75rem;letter-spacing:.02em;color:var(--color-taupe);white-space:nowrap}tbody tr:hover{background:var(--color-surface-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-ui);font-weight:600;font-size:.9rem;letter-spacing:.02em;border-radius:var(--radius-md);padding:var(--space-3) var(--space-6);border:1px solid var(--color-ink);background:var(--color-ink);color:var(--color-paper);cursor:pointer}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{color:var(--color-ink);border:1px solid var(--color-taupe)}.btn-danger,.btn-secondary{background:var(--color-paper)}.btn-danger{color:var(--color-state-danger);border:1px solid var(--color-state-danger)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:.8rem}.btn-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0 0 var(--space-4)}.badge{display:inline-flex;align-items:center;font-family:var(--font-ui);font-weight:600;font-size:.75rem;letter-spacing:.02em;padding:2px var(--space-2);border-radius:999px;white-space:nowrap}.badge--neutral{background:var(--color-surface-muted);color:var(--color-taupe)}.badge--success{background:var(--color-state-success-bg);color:var(--color-state-success)}.badge--warn{background:var(--color-state-warn-bg);color:var(--color-state-warn)}.badge--danger{background:var(--color-state-danger-bg);color:var(--color-state-danger)}.confirmation{display:inline-block;background:var(--color-state-success-bg);color:var(--color-state-success);border:1px solid var(--color-state-success);border-radius:var(--radius-md);padding:var(--space-4) var(--space-6);font-weight:600}.qr-result{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-2);max-width:100%}.qr-result a{overflow-wrap:anywhere;max-width:100%}.qr-result img{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-paper);padding:var(--space-2)}.qr-menu{display:flex;flex-direction:column;gap:var(--space-8);padding-bottom:96px}.qr-menu__category h2{margin-bottom:var(--space-3)}.qr-menu__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.qr-menu__card{display:flex;flex-direction:column;gap:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-3)}.qr-menu__photo{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-sm);background:var(--color-surface-muted)}.qr-menu__photo--placeholder{display:flex;align-items:center;justify-content:center;color:var(--color-taupe);font-size:.85rem}.qr-menu__name{margin:0}.qr-menu__description{margin:0;color:var(--color-text-body);font-size:.9rem}.qr-menu__price{margin:0;font-weight:600}.qr-menu__quantity{display:flex;align-items:center;gap:var(--space-3)}.qr-menu__quantity span{min-width:1.5em;text-align:center}.qr-menu__cart-bar{position:-webkit-sticky;position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);background:var(--color-paper);border-top:1px solid var(--color-border);padding:var(--space-3) var(--space-4);margin:0 calc(-1 * var(--space-4)) calc(-1 * var(--space-4))}