*,*:before,*:after{box-sizing:border-box}html,body{margin:0}body{background:var(--color-bg);color:var(--color-text);font:var(--font-weight-regular) var(--font-size-md)/var(--font-line-height) var(--font-family);-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;line-height:1.25}h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}p{margin:0}a{color:var(--color-brand-text)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.muted{color:var(--color-text-muted)}.row-actions{display:inline-flex;gap:var(--space-2);justify-content:flex-end;white-space:nowrap}.cell-hint{display:block;font-size:var(--font-size-sm)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.mono{font-family:var(--font-family-mono);font-size:var(--font-size-sm)}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.skip-link{position:absolute;left:var(--space-2);top:-60px;z-index:50;background:var(--color-surface);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm)}.skip-link:focus{top:var(--space-2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--size-touch);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font:inherit;font-weight:var(--font-weight-medium);cursor:pointer;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--color-brand);color:var(--color-on-brand)}.btn-primary:hover:not(:disabled){background:var(--color-brand-strong)}.btn-accent{background:var(--color-accent);color:var(--color-on-accent);font-weight:var(--font-weight-bold)}.btn-accent:hover:not(:disabled){background:var(--color-accent-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-input)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-sunk)}.btn-ghost{background:transparent;color:var(--color-brand-text)}.btn-ghost:hover:not(:disabled){background:var(--color-brand-soft)}.btn-danger{background:var(--color-danger);color:var(--color-surface)}.icon-btn{min-width:var(--size-touch);min-height:var(--size-touch);border:0;background:transparent;color:var(--color-text);font-size:var(--font-size-xl);border-radius:var(--radius-md);cursor:pointer}.icon-btn:hover{background:var(--color-surface-sunk)}.spinner{width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.spinner-lg{width:28px;height:28px;border-width:3px;color:var(--color-brand)}@keyframes spin{to{transform:rotate(360deg)}}.brand-loader{display:inline-flex;flex-direction:column;align-items:center;gap:var(--space-3)}.brand-loader-disc{position:relative;display:grid;place-items:center;border-radius:50%}.brand-loader-lg .brand-loader-disc{width:168px;height:168px;background:var(--color-splash-bg);box-shadow:var(--shadow-raised)}.brand-loader-sm .brand-loader-disc{width:40px;height:40px}.brand-loader-ring{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,var(--color-hero) 0deg,transparent 150deg,transparent 180deg,var(--color-accent) 210deg,transparent 340deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 8px),#000 calc(100% - 7px));mask:radial-gradient(farthest-side,transparent calc(100% - 8px),#000 calc(100% - 7px));animation:spin 1.4s linear infinite}.brand-loader-sm .brand-loader-ring{-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 calc(100% - 4px));mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 calc(100% - 4px))}.page-loading{min-height:100vh;display:grid;place-items:center;background:var(--color-bg)}@media(prefers-reduced-motion:reduce){.spinner,.brand-loader-ring{animation-duration:3s}}.field{display:flex;flex-direction:column;gap:var(--space-1)}.field label{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.field label .icon{color:var(--color-brand-text)}.input::placeholder{color:var(--color-text-muted);opacity:.8}.input-wrap{position:relative}.input-wrap .input{padding-right:52px}.input-eye{position:absolute;top:0;right:0;width:48px;height:100%;display:grid;place-items:center;border:0;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:0 var(--radius-md) var(--radius-md) 0}.input-eye:hover{color:var(--color-text)}.input{width:100%;height:var(--size-touch);min-height:var(--size-touch);padding:0 var(--space-3);line-height:normal;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit}select.input{-webkit-appearance:none;appearance:none;padding-right:var(--space-8, 40px);cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--color-text-muted) 50%),linear-gradient(135deg,var(--color-text-muted) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat}select.input::-ms-expand{display:none}.field-invalid .input{border-color:var(--color-danger)}.field-hint{font-size:var(--font-size-sm);color:var(--color-text-muted)}.field-error{font-size:var(--font-size-sm);color:var(--color-danger)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-sunk);display:flex;flex-direction:column;gap:var(--space-1)}.alert-success{background:var(--color-success-soft);border-color:var(--color-success)}.alert-warning{background:var(--color-warning-soft);border-color:var(--color-warning)}.alert-danger{background:var(--color-danger-soft);border-color:var(--color-danger)}.alert-info{background:var(--color-brand-soft);border-color:var(--color-brand)}.badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--color-surface-sunk);color:var(--color-text);white-space:nowrap}.badge-brand{background:var(--color-brand-soft);color:var(--color-brand-text)}.badge-success{background:var(--color-success-soft);color:var(--color-success)}.badge-warning{background:var(--color-warning-soft);color:var(--color-warning)}.badge-danger{background:var(--color-danger-soft);color:var(--color-danger)}.state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-7) var(--space-4);text-align:center}.state-title{font-weight:var(--font-weight-bold);font-size:var(--font-size-lg)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.stat{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums}.stat-link{text-decoration:none;color:inherit}.stat-link:hover{border-color:var(--color-brand)}.quick-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.stat-hero{background:var(--gradient-primary);color:var(--color-on-hero);border-color:var(--color-hero)}.stat-hero .stat-label,.stat-hero .stat-hint{color:var(--color-on-hero);opacity:.9}.details{display:grid;grid-template-columns:minmax(140px,max-content) 1fr;gap:var(--space-2) var(--space-5);margin:0}.details>div{display:contents}.details dt{color:var(--color-text-muted)}.details dd{margin:0;overflow-wrap:anywhere}.page-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-5)}.page-header p{margin-top:var(--space-1)}.page-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;margin-bottom:var(--space-4)}.toolbar .field{min-width:180px;flex:0 1 240px}.welcome{position:relative;overflow:hidden;padding:var(--space-6) var(--space-6) var(--space-7);border-radius:var(--radius-lg);background:var(--gradient-primary);color:var(--color-on-hero);box-shadow:var(--shadow-card)}.welcome-text{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);max-width:60%}.welcome-text p{opacity:.9;margin-bottom:var(--space-2)}.welcome-text .welcome-balance{display:flex;flex-direction:column;gap:2px;opacity:1;margin:var(--space-2) 0}.welcome-balance span{opacity:.9;font-size:var(--font-size-sm)}.welcome-balance strong{font-size:var(--font-size-3xl);font-variant-numeric:tabular-nums;line-height:1.1}.banner-sweep{right:0;bottom:0;width:min(45%,460px);height:75%}@media(max-width:720px){.welcome{padding:var(--space-5) var(--space-4) 88px}.welcome-text{max-width:none}.banner-sweep{width:80%;height:76px}.banner-sweep .flag-wave-star{width:20px;height:20px}}.ticket-count{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px}.num .ticket-count{align-items:flex-end}.ticket-types{display:flex;flex-direction:column;align-items:inherit;font-size:var(--font-size-xs)}.ticket-type{white-space:nowrap}.table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.table th,.table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--color-border);vertical-align:middle}.table th{color:var(--color-text-muted);font-weight:var(--font-weight-medium);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;background:var(--color-surface-sunk)}.table tbody tr:last-child td{border-bottom:0}.table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.row-link{cursor:pointer}.row-link:hover{background:var(--color-brand-soft)}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-3)}.pagination-controls{display:flex;align-items:center;gap:var(--space-3)}@media(max-width:720px){.table thead{display:none}.table,.table tbody,.table tr,.table td{display:block;width:100%}.table tr{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.table td{border:0;padding:var(--space-1) 0;display:flex;justify-content:space-between;gap:var(--space-3);text-align:right}.table td:before{content:attr(data-label);color:var(--color-text-muted);text-align:left}.table .num{text-align:right}}.dialog{border:0;border-radius:var(--radius-lg);padding:0;width:min(520px,calc(100% - 32px));background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-raised)}.dialog::backdrop{background:#0d132080}.dialog-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.dialog-body{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.dialog-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border)}.shell{display:grid;grid-template-columns:var(--size-sidebar) 1fr;min-height:100vh}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-5);position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);color:var(--color-text);text-decoration:none}.logo{display:block;flex:none;border-radius:var(--radius-md)}.logo-mark{display:block;height:auto;max-width:100%}.wordmark{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:-.01em;color:var(--color-brand)}.wordmark-e{color:var(--color-accent-strong)}.flag-divider{position:relative;width:8px;background:linear-gradient(180deg,var(--color-flag-red) 50%,var(--color-flag-green) 50%)}.flag-star{position:absolute;top:50%;left:50%;width:28px;height:28px;transform:translate(-50%,-50%);fill:var(--color-highlight);filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.nav{display:flex;flex-direction:column;gap:var(--space-1)}.nav a{display:flex;align-items:center;min-height:var(--size-touch);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--color-text);text-decoration:none;font-weight:var(--font-weight-medium)}.nav a:hover{background:var(--color-surface-sunk)}.nav a[aria-current=page]{background:var(--color-brand-soft);color:var(--color-brand-text);box-shadow:inset 3px 0 0 var(--color-accent)}.nav-cta{margin-top:var(--space-2)}.nav a.nav-cta,.nav a.nav-cta[aria-current=page]{justify-content:center;background:var(--color-accent);color:var(--color-on-accent);box-shadow:none}.nav a.nav-cta:hover{background:var(--color-accent-hover)}.nav-section{display:flex;flex-direction:column;gap:var(--space-1)}.nav-section+.nav-section{margin-top:var(--space-3)}.nav-heading{padding:0 var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.account{margin-top:auto;padding-top:var(--space-4);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-2)}.account-link{font-weight:var(--font-weight-medium)}.account-link.active{text-decoration:none;color:var(--color-text)}.account-name{font-weight:var(--font-weight-medium);overflow-wrap:anywhere}.profile-current{font-size:var(--font-size-sm)}.profile-switch{display:grid;grid-template-columns:1fr auto;gap:2px var(--space-2);align-items:center;width:100%;min-height:var(--size-touch);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface-sunk);color:var(--color-text);text-align:left;font:inherit;cursor:pointer}.profile-switch:hover{border-color:var(--color-brand)}.profile-switch-label{grid-column:1;font-size:var(--font-size-xs);color:var(--color-text-muted)}.profile-switch-value{grid-column:1;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);overflow-wrap:anywhere}.profile-switch-action{grid-column:2;grid-row:1 / span 2;font-size:var(--font-size-sm);color:var(--color-brand-text);font-weight:var(--font-weight-medium)}.profile-options{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.profile-option{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.topbar{display:none}.content{padding:var(--space-6) var(--space-5);width:100%;max-width:var(--size-content-max);margin:0 auto;min-width:0}@media(max-width:900px){.shell{grid-template-columns:1fr;grid-template-rows:auto 1fr;align-content:start}.topbar{display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 var(--space-4);background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:20}.sidebar{display:none;position:fixed;inset:60px 0 0;z-index:30;height:auto;border-right:0}.sidebar>.brand{display:none}.shell[data-menu=open] .sidebar{display:flex}.content{padding:var(--space-5) var(--space-4)}}.auth{min-height:100vh;display:grid;grid-template-columns:1fr auto 1fr}.auth-brand{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,var(--color-splash-bg) 0%,var(--color-splash-bg-2) 100%);color:var(--color-on-splash);display:flex;flex-direction:column}.auth-brand-body{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-7) var(--space-6) 220px;text-align:center}.auth-tagline{font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);max-width:22ch;line-height:1.3}.auth-tagline-bar{width:72px;height:4px;border-radius:var(--radius-pill);background:var(--color-accent)}.skyline{position:absolute;left:0;right:0;bottom:90px;width:100%;height:auto;opacity:.9;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 55%);mask-image:linear-gradient(to bottom,transparent 0%,#000 55%)}.sweep{position:absolute;left:0;width:100%;pointer-events:none}.sweep-top{top:0;height:22%}.sweep-bottom{bottom:0;height:150px;z-index:1}.flag-wave{position:absolute;pointer-events:none}.flag-wave>svg:first-child{display:block;width:100%;height:100%}.flag-wave-star{position:absolute;left:87%;top:58.5%;width:26px;height:26px;transform:translate(-50%,-50%);fill:var(--color-highlight);filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}.sweep-flag{right:0;bottom:0;width:75%;height:120px;z-index:2}.auth-main{position:relative;display:grid;place-items:center;padding:var(--space-7) var(--space-4)}.auth-card{position:relative;z-index:1;width:min(420px,100%);display:flex;flex-direction:column;gap:var(--space-5)}.auth-card form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-heading{display:flex;flex-direction:column;gap:var(--space-2)}.auth-toolbar{position:absolute;top:var(--space-4);right:var(--space-4);z-index:2}.auth-forgot{align-self:flex-end;font-size:var(--font-size-sm);margin-top:calc(-1 * var(--space-2))}.auth-sweep-top,.auth-wave,.auth-mobile-skyline,.auth-mobile-brand{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .auth-mobile-brand .logo-mark{filter:drop-shadow(1.5px 0 0 #fff) drop-shadow(-1.5px 0 0 #fff) drop-shadow(0 1.5px 0 #fff) drop-shadow(0 -1.5px 0 #fff)}}:root[data-theme=dark] .auth-mobile-brand .logo-mark{filter:drop-shadow(1.5px 0 0 #fff) drop-shadow(-1.5px 0 0 #fff) drop-shadow(0 1.5px 0 #fff) drop-shadow(0 -1.5px 0 #fff)}@media(max-width:900px){.auth{grid-template-columns:1fr}.auth-brand,.flag-divider{display:none}.auth-main{min-height:100vh;overflow:hidden;align-content:start;padding:64px var(--space-4) 150px;background:radial-gradient(ellipse at 50% 30%,var(--color-backdrop) 0%,var(--color-backdrop-2) 100%)}.auth-sweep-top{display:block;position:absolute;top:0;left:0;width:100%;height:120px;pointer-events:none}.auth-mobile-brand{display:flex;justify-content:center}.auth-mobile-brand .logo-mark{width:140px}.auth-card{gap:var(--space-4)}.auth-card form{gap:var(--space-3)}.auth-heading{text-align:center;align-items:center}.auth-mobile-skyline{display:block;position:absolute;left:50%;bottom:70px;width:min(100%,640px);height:auto;transform:translate(-50%);opacity:.9;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 55%);mask-image:linear-gradient(to bottom,transparent 0%,#000 55%)}.auth-wave{display:block;position:absolute;left:0;right:0;bottom:0;height:110px;pointer-events:none}.auth-wave>svg:first-child{display:block;width:100%;height:100%}.auth-wave-star{position:absolute;left:82%;top:62%;width:28px;height:28px;transform:translate(-50%,-50%);fill:var(--color-highlight);filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}}@media(max-width:900px)and (prefers-color-scheme:dark){:root:not([data-theme=light]) .auth-mobile-skyline{opacity:.3}}@media(max-width:900px){:root[data-theme=dark] .auth-mobile-skyline{opacity:.3}}.theme-toggle{display:inline-flex;gap:2px;padding:3px;border-radius:var(--radius-pill);background:var(--color-surface-sunk);border:1px solid var(--color-border)}.theme-option{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-muted);cursor:pointer}.theme-option[aria-checked=true],.segment[aria-checked=true]{background:var(--color-surface);color:var(--color-accent-strong);box-shadow:var(--shadow-card)}:root[data-theme=dark] .theme-option[aria-checked=true],:root[data-theme=dark] .segment[aria-checked=true]{background:var(--color-accent);color:var(--color-on-accent);font-weight:var(--font-weight-bold)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-option[aria-checked=true],:root:not([data-theme=light]) .segment[aria-checked=true]{background:var(--color-accent);color:var(--color-on-accent);font-weight:var(--font-weight-bold)}}.btn-cta{background:var(--color-cta);color:var(--color-on-cta);font-weight:var(--font-weight-bold)}.btn-cta:hover:not(:disabled){background:var(--color-cta-strong)}.checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.check{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-left:4px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.check-error{border-left-color:var(--color-danger)}.check-warning{border-left-color:var(--color-warning)}.check-ok{border-left-color:var(--color-success)}.check-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.check-tag{font-size:var(--font-size-xs)}.check-description{font-size:var(--font-size-sm)}.check-hint{font-weight:var(--font-weight-medium)}.check-action{align-self:flex-start;margin-top:var(--space-1)}.check-section summary{cursor:pointer;min-height:var(--size-touch);display:flex;align-items:center;gap:var(--space-1)}.check-section .checks{margin-top:var(--space-2)}.social{display:flex;flex-direction:column;gap:var(--space-3)}.social-or{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm)}.social-or:before,.social-or:after{content:"";flex:1;height:1px;background:var(--color-border)}.test-accounts{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4)}.test-accounts h2{font-weight:var(--font-weight-regular);margin:0}.test-accounts ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.test-account{width:100%;justify-content:flex-start;white-space:normal;text-align:left}.test-account>span:last-child{display:flex;flex-wrap:wrap;justify-content:space-between;column-gap:var(--space-3);width:100%}.social-google{min-height:var(--size-touch);display:flex;justify-content:center}.social-google,.social-google iframe{color-scheme:light}.btn-apple{background:var(--color-apple);color:var(--color-on-apple);border-color:var(--color-apple)}.btn-apple:hover:not(:disabled){opacity:.88}.choice-list{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.choice{display:flex;align-items:center;gap:var(--space-3);min-height:var(--size-touch);padding:var(--space-3);border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer}.choice:has(input:checked){border-color:var(--color-brand);background:var(--color-brand-soft)}.stepper{display:inline-flex;align-items:center;gap:var(--space-2)}.stepper .input{width:72px;text-align:center}.total{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.text-warning{color:var(--color-warning)}.segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:3px;width:min(100%,480px);border-radius:var(--radius-md);background:var(--color-surface-sunk);border:1px solid var(--color-border)}.segment{min-height:40px;padding:var(--space-1) var(--space-2);border:0;border-radius:var(--radius-sm);line-height:1.2;background:transparent;color:var(--color-text-muted);font:inherit;font-weight:var(--font-weight-medium);cursor:pointer}.split-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.split-row>:first-child{flex:1 1 240px;min-width:0}.closure-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.closure-row>:first-child{min-width:0}.row-list{list-style:none;margin:0;padding:0}.row-item{padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.row-item:last-child{border-bottom:0}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--space-4);align-items:start}.card-danger{border-color:var(--color-danger)}.link-button{border:0;background:none;padding:0;color:var(--color-brand-text);font:inherit;text-decoration:underline;cursor:pointer}.checks{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.checks legend{padding:0;font-weight:var(--font-weight-medium);margin-bottom:var(--space-1)}.checkbox{display:flex;align-items:center;gap:var(--space-2);min-height:var(--size-touch);cursor:pointer}.checkbox input{width:18px;height:18px;accent-color:var(--color-accent)}.restaurant-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:var(--space-4)}.restaurant-card{position:relative;display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden;min-width:0}.restaurant-card-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);flex:1}.restaurant-card-body p{margin:0}.restaurant-card-body .row-actions{margin-top:auto;padding-top:var(--space-2);justify-content:flex-start;flex-wrap:wrap;white-space:normal}.restaurant-name{font-size:var(--font-size-lg);margin:0}.restaurant-title{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.favorite-btn>span:empty{display:none}.favorite-btn{min-width:var(--size-touch);padding:0;margin:calc(var(--space-2) * -1) calc(var(--space-2) * -1) 0 0;font-size:var(--font-size-lg)}.favorite-star{color:var(--color-text-muted)}.is-favorite .favorite-star{color:var(--color-highlight)}.menu-price{font-weight:var(--font-weight-medium);white-space:nowrap}.restaurant-name a{color:var(--color-text);text-decoration:none}.restaurant-name a:hover{text-decoration:underline}.restaurant-media{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;background:var(--color-surface-sunk)}.restaurant-logo{object-fit:contain;padding:var(--space-5)}.restaurant-placeholder{display:grid;place-items:center;font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--color-brand-text);background:var(--color-brand-soft)}.partner-banner{display:block;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-sunk);border:1px solid var(--color-border);font-weight:var(--font-weight-medium)}.gallery{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(min(85%,360px),1fr);gap:var(--space-3);overflow-x:auto;scroll-snap-type:x mandatory}.gallery li{scroll-snap-align:start}.gallery img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-md);background:var(--color-surface-sunk)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--space-3) var(--space-5);margin:0}.info-grid dt{color:var(--color-text-muted);font-size:var(--font-size-sm)}.info-grid dd{margin:0}.info-wide{grid-column:1 / -1}.pre-line{white-space:pre-line;overflow-wrap:anywhere}.star{color:var(--color-highlight);letter-spacing:1px}.star-off{color:var(--color-border)}.stars-input{display:flex;gap:var(--space-1)}.star-btn{width:var(--size-touch);height:var(--size-touch);border:0;background:none;font-size:1.75rem;line-height:1;color:var(--color-border);cursor:pointer;border-radius:var(--radius-sm)}.star-btn.on{color:var(--color-highlight)}.review-form{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.textarea{height:auto;min-height:88px;resize:vertical;padding-top:var(--space-2)}.hours-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--space-5);align-items:start}.week-hours{margin:0;display:flex;flex-direction:column}.week-hours>div{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm)}.week-hours dt,.week-hours dd{margin:0}.week-hours .is-today{background:var(--color-surface-sunk);font-weight:var(--font-weight-medium)}.subheading{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);margin:0 0 var(--space-2)}.segmented-2{grid-template-columns:repeat(2,minmax(0,1fr))}.stage-placed{--stage: var(--color-accent);--stage-soft: var(--color-accent-soft);--stage-text: var(--color-accent-text)}.stage-accepted{--stage: var(--color-brand);--stage-soft: var(--color-brand-soft);--stage-text: var(--color-brand-text)}.stage-preparing{--stage: var(--color-highlight);--stage-soft: var(--color-warning-soft);--stage-text: var(--color-warning)}.stage-delivering{--stage: var(--color-success);--stage-soft: var(--color-success-soft);--stage-text: var(--color-success)}.stage-delivered{--stage: var(--color-border-input);--stage-soft: var(--color-surface-sunk);--stage-text: var(--color-text)}.stage-refused,.stage-cancelled{--stage: var(--color-danger);--stage-soft: var(--color-danger-soft);--stage-text: var(--color-danger)}.stage-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.stage-chip{display:inline-flex;align-items:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--font-size-sm);cursor:pointer}.stage-chip[aria-pressed=true]{border-color:var(--stage, var(--color-brand));background:var(--stage-soft, var(--color-brand-soft));color:var(--stage-text, var(--color-brand-text))}.stage-dot{width:10px;height:10px;border-radius:50%;background:var(--stage, var(--color-border-input));display:inline-block;flex:none}.order-group{display:flex;flex-direction:column;gap:var(--space-2)}.order-group-head{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.order-group-head input,.order-check{width:18px;height:18px;accent-color:var(--color-accent)}.company-badge{width:28px;height:28px;border-radius:var(--radius-sm);display:grid;place-items:center;background:var(--color-brand-soft);color:var(--color-brand-text);font-weight:var(--font-weight-bold)}.company-none{background:var(--color-surface-sunk);color:var(--color-text-muted)}.order-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.order-card{display:grid;grid-template-columns:4px auto minmax(0,1fr);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card)}.order-card:not(:has(.order-check)){grid-template-columns:4px minmax(0,1fr)}.order-bar{background:var(--stage)}.order-check{margin:var(--space-4) 0 0 var(--space-3)}.order-body{padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.order-head,.order-foot{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap}.order-pills{display:inline-flex;gap:var(--space-1)}.pill{display:inline-flex;align-items:center;padding:2px var(--space-3);border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap}.stage-pill{background:var(--stage-soft);color:var(--stage-text)}.pill-success{background:var(--color-success-soft);color:var(--color-success)}.order-lines{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.order-address{font-size:var(--font-size-sm)}.order-total{font-size:var(--font-size-lg)}.order-blocked{color:var(--color-warning);font-size:var(--font-size-sm);text-align:right}.order-reason{font-size:var(--font-size-sm)}.dish{display:inline-flex;align-items:center;gap:var(--space-2);padding:2px var(--space-2) 2px 2px;border-radius:var(--radius-sm);font-size:var(--font-size-sm);background:var(--tone-soft);color:var(--tone-text)}.dish-qty{min-width:24px;height:22px;padding:0 var(--space-1);border-radius:var(--radius-sm);display:inline-grid;place-items:center;font-weight:var(--font-weight-bold);background:var(--color-surface);color:var(--tone-text)}.tone-0{--tone-soft: var(--color-accent-soft);--tone-text: var(--color-accent-text);--tone: var(--color-accent)}.tone-1{--tone-soft: var(--color-brand-soft);--tone-text: var(--color-brand-text);--tone: var(--color-brand)}.tone-2{--tone-soft: var(--color-success-soft);--tone-text: var(--color-success);--tone: var(--color-success)}.tone-3{--tone-soft: var(--color-warning-soft);--tone-text: var(--color-warning);--tone: var(--color-highlight)}.tone-none{--tone-soft: var(--color-surface-sunk);--tone-text: var(--color-text);--tone: var(--color-border-input)}.prepare-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-2)}.prepare-item{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--tone-soft);color:var(--tone-text)}.prepare-item strong{font-size:var(--font-size-lg)}.prepare-legend{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--font-size-sm)}.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block;background:var(--tone)}.bulk-bar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);border:1px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-surface);position:sticky;top:var(--space-2);z-index:2}.bulk-bar .row-actions{flex-wrap:wrap;white-space:normal}.orders-settings{margin-top:var(--space-5)}.field-label{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.switch-field{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--size-touch);padding:0 var(--space-3);border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer}.switch{width:36px;height:20px;border-radius:var(--radius-pill);background:var(--color-border-input);position:relative;flex:none;transition:background .15s}.switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--color-surface);transition:left .15s}.switch-field[aria-checked=true] .switch{background:var(--color-success)}.switch-field[aria-checked=true] .switch:after{left:18px}.nav-count{margin-left:auto;min-width:22px;height:20px;padding:0 var(--space-2);border-radius:var(--radius-pill);display:inline-grid;place-items:center;background:var(--color-accent);color:var(--color-on-accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.text-body{color:var(--color-text)}.news-draft,.news-expired{--stage: var(--color-border-input);--stage-soft: var(--color-surface-sunk);--stage-text: var(--color-text)}.news-pending{--stage: var(--color-highlight);--stage-soft: var(--color-warning-soft);--stage-text: var(--color-warning)}.news-published{--stage: var(--color-success);--stage-soft: var(--color-success-soft);--stage-text: var(--color-success)}.news-rejected,.news-withdrawn{--stage: var(--color-danger);--stage-soft: var(--color-danger-soft);--stage-text: var(--color-danger)}.news-publishers{list-style:none;margin:var(--space-3) 0 var(--space-4);padding:0;display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-sm)}.news-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap}.news-row-main{min-width:0;flex:1 1 320px;display:flex;flex-direction:column;gap:var(--space-1)}.news-row-title{text-align:left;font-weight:var(--font-weight-medium);text-decoration:none;color:var(--color-text);font-size:var(--font-size-md)}.news-row-title:hover{text-decoration:underline}.news-row-meta{margin:0;font-size:var(--font-size-sm);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.news-row-note{margin:0;font-size:var(--font-size-sm);color:var(--color-danger)}.news-row .row-actions{flex-wrap:wrap;white-space:normal}.news-editor{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);gap:var(--space-5);align-items:start}@media(max-width:900px){.news-editor{grid-template-columns:minmax(0,1fr)}}.news-fieldset{border:0;margin:0;padding:0;min-width:0}.news-entities{border:0;margin:var(--space-2) 0 0;padding:0}.news-entities legend{padding:0;font-size:var(--font-size-sm)}.news-image-actions{justify-content:flex-start;flex-wrap:wrap}.file-button{cursor:pointer}.file-button:focus-within{outline:2px solid var(--color-focus, var(--color-accent));outline-offset:2px}.news-preview-col{position:sticky;top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.news-preview-hint{font-size:var(--font-size-sm);margin:0}.news-phone{padding:var(--space-3);border-radius:var(--radius-lg);background:var(--color-surface-sunk)}.news-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.news-card-image{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover}.news-card-noimage{background:var(--color-brand-soft)}.news-card-body{padding:var(--space-3) var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.news-card-meta{margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.news-sponsored{background:var(--color-accent-soft);color:var(--color-accent-text)}.news-card-title{margin:0;font-size:var(--font-size-md);font-weight:var(--font-weight-bold);overflow-wrap:anywhere}.news-card-cta{margin:0;color:var(--color-accent-text);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.rich-text{font-size:var(--font-size-sm);line-height:1.5;overflow-wrap:anywhere}.rich-text>*{margin:0 0 var(--space-2)}.rich-text>:last-child{margin-bottom:0}.rich-text ul,.rich-text ol{padding-left:var(--space-5)}.rich-h{font-weight:var(--font-weight-bold)}.rich-h1{font-size:var(--font-size-md)}.restaurant-search{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:var(--space-3);align-items:end;margin-bottom:var(--space-3)}@media(max-width:640px){.restaurant-search{grid-template-columns:minmax(0,1fr)}}.chip-separator{width:1px;align-self:stretch;background:var(--color-border);margin:var(--space-1) var(--space-1)}.restaurant-photo{position:relative}.on-photo{position:absolute;top:var(--space-2);left:var(--space-2);box-shadow:var(--shadow-card)}.pill-muted{background:var(--color-surface-sunk);color:var(--color-text-muted)}.on-photo.pill-muted{background:var(--color-surface)}.restaurant-fav{position:absolute;top:var(--space-1);right:var(--space-1);z-index:2}.restaurant-fav .favorite-btn{margin:0;background:var(--color-surface);border-radius:var(--radius-pill)}.stretched-link:after{content:"";position:absolute;inset:0;z-index:1}.restaurant-card:hover{border-color:var(--color-border-input)}.restaurant-card:focus-within{outline:2px solid var(--color-accent);outline-offset:2px}.restaurant-card .stretched-link:focus{outline:none}.is-elsewhere .restaurant-name a{color:var(--color-text-muted)}.restaurant-status{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:0}.restaurant-head{padding:0;overflow:hidden;gap:0}.restaurant-hero{position:relative}.hero-photos{list-style:none;margin:0;padding:0;aspect-ratio:16 / 5;background:var(--color-brand-soft)}.hero-photos li,.hero-photos img{width:100%;height:100%}.hero-photos img{display:block;object-fit:cover}.hero-nav{position:absolute;right:var(--space-3);bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-2);padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--color-surface);font-size:var(--font-size-sm)}.hero-btn{width:32px;height:32px;border:0;border-radius:50%;background:none;color:var(--color-text);font-size:1.25rem;cursor:pointer}.hero-btn:hover{background:var(--color-surface-sunk)}.hero-logo{position:absolute;left:var(--space-5);bottom:-28px;width:64px;height:64px;border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);display:grid;place-items:center;overflow:hidden;font-size:1.5rem;font-weight:var(--font-weight-bold);color:var(--color-brand-text)}.hero-logo img{width:100%;height:100%;object-fit:contain}.restaurant-head-body{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;padding:calc(var(--space-5) + 24px) var(--space-5) var(--space-5)}.restaurant-head-text{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;flex:1 1 320px}.restaurant-head-text h1,.restaurant-head-text p{margin:0}.restaurant-head-note{padding:0 var(--space-5) var(--space-5);margin:0;font-size:var(--font-size-sm)}.restaurant-columns{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:var(--space-5);align-items:start}@media(max-width:960px){.restaurant-columns{grid-template-columns:minmax(0,1fr)}}.info-list{margin:0;display:flex;flex-direction:column;gap:var(--space-4)}.info-list dt{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--space-1)}.info-list dd{margin:0}.info-list .week-hours>div{padding:var(--space-1) var(--space-2)}.menu-chips{margin-bottom:0}.menu-section-title{display:flex;align-items:center;gap:var(--space-2)}.restaurant-news{display:flex;gap:var(--space-3);align-items:flex-start}.restaurant-news-image{width:112px;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-md);flex:none}.restaurant-news-text{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.restaurant-news-body{color:var(--color-text)}.orders-closed{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-4)}.orders-closed .alert{flex:1 1 320px;margin:0}.cutoff-form{display:flex;gap:var(--space-3);align-items:flex-end;flex-wrap:wrap}.cutoff-form .field{flex:0 1 240px}.cutoff-form .row-actions{padding-bottom:var(--space-1)}.menu-combo{color:var(--color-text)}.news-body-tools{display:flex;gap:var(--space-2);margin-bottom:calc(var(--space-2) * -1)}.news-images{gap:var(--space-2)}.news-image-row{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.news-image-row .news-thumb{width:180px}.news-gallery-label{margin-top:var(--space-2)}.news-gallery-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}@media(max-width:560px){.news-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.news-thumb{position:relative;margin:0;display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.news-thumb img{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-md);background:var(--color-surface-sunk)}.news-thumb figcaption{font-size:var(--font-size-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.news-thumb-remove{position:absolute;top:var(--space-1);right:var(--space-1);width:28px;height:28px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-size:1rem;line-height:1}.news-thumb-add{width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-md);border:1px dashed var(--color-border-input);background:var(--color-surface);color:var(--color-text-muted);font:inherit;cursor:pointer}.news-thumb-add:hover{border-color:var(--color-accent);color:var(--color-accent-text)}.news-dialog-preview{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-md)}.news-card-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.news-card-gallery img,.rich-img{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-md)}.menu-section{gap:var(--space-2)}.menu-section-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap}.menu-section-head .subheading{margin:0}.menu-section-head .row-actions{flex-wrap:wrap;white-space:normal}.menu-row{display:grid;grid-template-columns:32px 64px minmax(0,1fr) auto auto;gap:var(--space-3);align-items:center}@media(max-width:720px){.menu-row{grid-template-columns:32px 56px minmax(0,1fr)}.menu-row>.switch-field,.menu-row>.menu-row-end{grid-column:3;justify-self:start}}.menu-row.is-off .menu-row-text,.menu-row.is-off .menu-thumb,.menu-row.is-off .menu-price{opacity:.55}.menu-move{display:flex;flex-direction:column;gap:2px}.menu-move-btn{width:32px;height:22px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);cursor:pointer;line-height:1}.menu-move-btn:disabled{opacity:.35;cursor:default}.menu-thumb{width:64px;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-md)}.menu-thumb-empty{background:var(--tone-soft, var(--color-surface-sunk))}.menu-thumb-lg{width:120px}.menu-row-text{display:flex;flex-direction:column;min-width:0}.menu-row-end{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.switch-field.is-sold-out{color:var(--color-warning);border-color:var(--color-highlight)}.menu-dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;flex-wrap:wrap}.menu-confirm{margin-top:var(--space-2);justify-content:flex-start}.menu-days,.menu-combo-field{border:0;margin:0;padding:0;min-width:0}.menu-day-buttons{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.day-toggle{width:var(--size-touch);height:var(--size-touch);border-radius:50%;border:1px solid var(--color-border-input);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:var(--font-weight-medium);cursor:pointer}.day-toggle[aria-pressed=true]{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-on-brand)}.menu-combo-list{list-style:none;margin:0 0 var(--space-2);padding:0;display:flex;gap:var(--space-2);flex-wrap:wrap}.menu-combo-list .pill{gap:var(--space-1);font-size:var(--font-size-sm)}.menu-combo-remove{border:0;background:none;color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:0 2px}.menu-combo-add{display:flex;gap:var(--space-2);align-items:flex-end;flex-wrap:wrap}.menu-combo-add .field{flex:1 1 220px}.text-danger{color:var(--color-danger)}.stats-summary{margin-bottom:var(--space-4)}.stats-period{display:flex;gap:var(--space-3);align-items:flex-end;flex-wrap:wrap}.stats-segmented{grid-template-columns:repeat(4,minmax(0,1fr));width:auto;min-width:280px}.stats-dates{display:flex;gap:var(--space-3);flex-wrap:wrap}.stats-dates .field{min-width:160px}.stats-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3);margin:0}.stats-tile{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-sunk)}.stats-tile dt{font-size:var(--font-size-sm);color:var(--color-text-muted)}.stats-tile dd{margin:var(--space-1) 0 0;font-size:var(--font-size-xl, 1.5rem);font-weight:var(--font-weight-bold)}.stats-page{margin-top:var(--space-4)}.stats-chart{margin:0}.stats-chart svg{width:100%;height:auto;display:block}.stats-grid{stroke:var(--color-border);stroke-width:1}.stats-axis{fill:var(--color-text-muted);font-size:11px}.stats-line{fill:none;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.stats-line-impressions{stroke:var(--color-accent)}.stats-line-clicks{stroke:var(--color-brand);stroke-dasharray:6 4}.stats-legend{display:flex;gap:var(--space-4);font-size:var(--font-size-sm);margin-top:var(--space-2)}.stats-key:before{content:"";display:inline-block;width:18px;height:0;border-top:3px solid var(--color-accent);vertical-align:middle;margin-right:var(--space-2)}.stats-key-clicks:before{border-top-color:var(--color-brand);border-top-style:dashed}.stats-table{margin-top:var(--space-3);font-size:var(--font-size-sm)}.stats-table summary{cursor:pointer;color:var(--color-brand-text)}.stats-table table{margin-top:var(--space-2);border-collapse:collapse;width:100%;max-width:420px}.stats-table th,.stats-table td{text-align:right;padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--color-border)}.stats-table th:first-child{text-align:left}.stats-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.stats-bars li{display:grid;grid-template-columns:minmax(140px,200px) minmax(0,1fr) auto;gap:var(--space-3);align-items:center;font-size:var(--font-size-sm)}@media(max-width:560px){.stats-bars li{grid-template-columns:1fr;gap:var(--space-1)}}.stats-bar{height:10px;border-radius:var(--radius-pill);background:var(--color-surface-sunk);overflow:hidden}.stats-bar>span{display:block;height:100%;background:var(--color-accent);border-radius:inherit}.dish-combo{font-weight:var(--font-weight-regular);opacity:.85}.dues-grid{list-style:none;margin:0 0 var(--space-5);padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:var(--space-4)}.due-card{gap:var(--space-2)}.due-card p{margin:0}.due-card .btn{margin-top:auto}.due-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-2)}.due-head .subheading{margin:0}.due-tickets{font-size:var(--font-size-xl, 1.5rem);font-weight:var(--font-weight-bold);margin-top:var(--space-2)!important}.dues-history{margin-top:var(--space-2)}.history-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1.2fr);gap:var(--space-3);align-items:center}@media(max-width:640px){.history-row{grid-template-columns:minmax(0,1fr) auto}.history-row>:last-child{grid-column:1 / -1}}.pay-choices{border:0;margin:0;padding:0;min-width:0}.pay-operators{margin-bottom:0}.pay-actions{justify-content:flex-end;flex-wrap:wrap;white-space:normal}.pay-pending .field-label{margin:0}.spinner-inline{display:inline-block;width:12px;height:12px;vertical-align:-1px}.pay-simulate{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;padding-top:var(--space-2);border-top:1px dashed var(--color-border);font-size:var(--font-size-sm)}.breadcrumbs{margin:0 0 var(--space-3);font-size:var(--font-size-sm)}.breadcrumbs a{color:var(--color-brand-text);text-decoration:none;border-radius:var(--radius-sm)}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.breadcrumbs-trail{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.breadcrumbs-trail li{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0}.breadcrumbs-trail li[aria-current=page]{color:var(--color-text-muted);max-width:40ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumbs-sep{color:var(--color-text-muted)}.breadcrumbs-back{display:none}@media(max-width:640px){.breadcrumbs-trail{display:none}.breadcrumbs-back{display:inline-flex;align-items:center;gap:var(--space-1);min-height:var(--size-touch);font-weight:var(--font-weight-medium)}}.alert-stack{position:fixed;top:calc(var(--space-4) + 56px);right:var(--space-4);z-index:50;display:flex;flex-direction:column;gap:var(--space-2);width:min(340px,calc(100vw - 2 * var(--space-4)))}@media(min-width:900px){.alert-stack{top:var(--space-4)}}.alert-toast{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--alert-tone, var(--color-brand));box-shadow:var(--shadow-card);animation:alert-in .2s ease-out}@media(prefers-reduced-motion:reduce){.alert-toast{animation:none}}.alert-timer{position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--color-surface-sunk)}.alert-timer>span{display:block;height:100%;background:var(--alert-tone, var(--color-brand));transform-origin:left center;animation-name:alert-timer;animation-timing-function:linear;animation-fill-mode:forwards}@keyframes alert-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes alert-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.alert-tone-order{--alert-tone: var(--color-accent)}.alert-tone-money{--alert-tone: var(--color-success)}.alert-tone-info{--alert-tone: var(--color-highlight)}.alert-tone-neutral{--alert-tone: var(--color-border-input)}.alert-toast-text{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:var(--font-size-sm)}.alert-toast-text strong{font-size:var(--font-size-md)}.alert-toast-text span{color:var(--color-text-muted);overflow-wrap:anywhere}.alert-toast-text a{color:var(--color-brand-text);font-weight:var(--font-weight-medium);text-decoration:none;margin-top:var(--space-1)}.alert-toast-text a:hover{text-decoration:underline}.alert-toast-close{width:32px;height:32px;border:0;border-radius:50%;background:none;color:var(--color-text-muted);font-size:1.2rem;cursor:pointer}.alert-toast-close:hover{background:var(--color-surface-sunk);color:var(--color-text)}.alert-more{margin:0;text-align:right;font-size:var(--font-size-sm);color:var(--color-text-muted)}.page-tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--color-border);margin:0 0 var(--space-4);overflow-x:auto}.page-tab{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:0;border-bottom:3px solid transparent;margin-bottom:-1px;background:none;color:var(--color-text-muted);font:inherit;font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap}.page-tab:hover{color:var(--color-text)}.page-tab[aria-selected=true]{color:var(--color-text);border-bottom-color:var(--color-brand)}.page-tab:focus-visible{outline:2px solid var(--color-focus, var(--color-brand));outline-offset:-2px}.page-tab-dot{width:8px;height:8px;border-radius:50%;background:var(--color-warning, var(--color-brand))}.alert-group{border:0;margin:0;padding:0;min-width:0}.alert-hows{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.alert-sound{display:inline-flex;align-items:center;gap:var(--space-1)}.alert-switch{text-align:left;height:auto;padding-top:var(--space-2);padding-bottom:var(--space-2)}.row-item .alert-switch{border:0;padding-left:0;width:100%;background:none}.alert-settings .alert-device+.alert-group,.alert-settings .muted+.alert-group{margin-top:var(--space-4)}.alert-device{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.alert-quiet{display:grid;grid-template-columns:repeat(2,minmax(0,10rem));gap:var(--space-3);padding:0 0 var(--space-2) var(--space-6)}.menu-schedule{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}.schedule-modes{grid-template-columns:repeat(5,minmax(0,auto));width:100%}@media(max-width:560px){.schedule-modes{grid-template-columns:repeat(2,minmax(0,1fr))}}.schedule-interval .field{max-width:200px}.month-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-1);max-width:360px}.month-day{height:36px;border:1px solid var(--color-border-input);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer}.month-day[aria-pressed=true]{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-on-brand)}.schedule-summary{margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-brand-soft);color:var(--color-brand-text);font-size:var(--font-size-sm)}.menu-next{color:var(--color-accent-text)}.news-thumb-move{display:flex;justify-content:center;gap:var(--space-1);margin-top:var(--space-1)}.news-thumb-move button{width:32px;height:28px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);cursor:pointer}.news-thumb-move button:disabled{opacity:.35;cursor:default}.menu-upcoming{margin-top:var(--space-4)}
