.alg-badges,.alg-filters,.alg-panel,.alg-tags{--alg-ink:var(--ink,var(--text,#111827));--alg-mute:var(--mute,var(--muted,#6b7280));--alg-line:var(--line,var(--rule,#e5e7eb));--alg-chip:var(--chip,var(--raised,#f3f4f6));--alg-warn-bg:var(--warning-bg,#fff7e6);--alg-warn-ink:var(--warning-ink,#7a4a00);--alg-added:var(--accent-text,#c2410c);--alg-icon:1.6rem;--alg-font:0.8rem}.alg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.alg-panel{display:flex;flex-direction:column;gap:.45rem;margin:.75rem 0;color:var(--alg-ink);font-size:var(--alg-font);line-height:1.35}.alg-title{margin:.15rem 0 0;font-size:.72em;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--alg-mute)}.alg-none,.alg-note,.alg-notice,.alg-pending{margin:0;color:var(--alg-mute)}.alg-note strong{color:var(--alg-ink);font-weight:700}.alg-notice{font-size:.9em}.alg-pending,.alg-warn{margin:0;padding:.45em .7em;border-radius:.6em;background:var(--alg-warn-bg);color:var(--alg-warn-ink);font-weight:600}.alg-pending{background:var(--alg-chip);color:var(--alg-ink);font-weight:500}.alg-badges{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none}.alg-badge{display:inline-flex;align-items:center;gap:.35em;padding:.2em .65em .2em .2em;border:1px solid var(--alg-line);border-radius:999px;background:#fff;color:var(--alg-ink);font-size:var(--alg-font);font-weight:600;white-space:nowrap}.alg-badge-icon{display:grid;flex:none;width:var(--alg-icon);height:var(--alg-icon);place-items:center;border-radius:999px;background:var(--alg-chip)}.alg-badge-icon svg{width:72%;height:72%}.alg-badge.is-added{border-color:var(--alg-added)}.alg-badge.is-added .alg-badge-icon{background:var(--alg-added);color:#fff}.alg-badges.is-compact .alg-badge{padding:0;border:0;background:none}.alg-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none}.alg-tag{display:inline-flex;align-items:center;gap:.25em;padding:.25em .65em;border-radius:999px;background:var(--alg-chip);color:var(--alg-ink);font-size:var(--alg-font);font-weight:700}.alg-tag-icon{width:1.1em;height:1.1em}.alg-tag.is-vegan,.alg-tag.is-vegetarian{background:#e8f5ec;color:#14532d}.alg-tag.is-spicy{background:#fdecea;color:#9f1d10}.alg-tag.is-spicy .alg-tag-icon+.alg-tag-icon{margin-left:-.35em}.alg-filters{display:flex;flex-direction:column;gap:.4rem}.alg-filter-row{display:flex;gap:.45rem;overflow-x:auto;scrollbar-width:none}.alg-filter-row::-webkit-scrollbar{display:none}.alg-filter{flex:none;padding:.4rem .85rem;border:1px solid var(--alg-line);border-radius:999px;background:#fff;color:var(--alg-ink);font-size:.8rem;font-weight:700;white-space:nowrap}.alg-filter[aria-pressed=true]{border-color:var(--alg-ink);background:var(--alg-ink);color:#fff}.alg-filter.is-clear{border-style:dashed;color:var(--alg-mute)}.alg-filter-notice{margin:0;color:var(--alg-mute);font-size:.72rem}.alg--kiosk{--alg-icon:2.4rem;--alg-font:1rem}.alg-filters.alg--kiosk .alg-filter{min-height:max(2.8rem,44px);padding:0 1.2rem;font-size:1rem}.alg-filters.alg--kiosk .alg-filter-notice{font-size:.85rem}.alg--pos{--alg-icon:34px;--alg-font:16px}.alg--admin{--alg-icon:1.5rem;--alg-font:0.78rem}.alg-pos-i{position:absolute;top:9px;right:7px;z-index:2;display:grid;width:30px;height:30px;place-items:center;border-radius:999px;background:rgb(255 255 255/.92);color:var(--text,#14161b);box-shadow:0 1px 3px rgb(20 22 27/.25)}.alg-pos-i svg{width:20px;height:20px}.alg-pos-i.is-unverified{color:var(--warning-ink,#7a4a00)}.alg-pos-btn svg{width:20px;height:20px}.alg-pos-scrim{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:rgb(10 12 16/.45)}.alg-pos-dialog{width:min(620px,100%);max-height:calc(100vh - 32px);overflow-y:auto;padding:18px 20px 20px;border-radius:var(--rpx-card,16px);background:var(--surface,#fff);box-shadow:var(--shadow-pop,0 24px 48px -12px rgb(10 12 16/.3))}.alg-pos-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.alg-pos-head h2{margin:0;font-size:22px;font-weight:800}.alg-matrix{border-collapse:separate;border-spacing:0;font-size:13px}.alg-matrix td,.alg-matrix th{border-bottom:1px solid rgb(var(--ff-line-strong,229 231 235))}.alg-matrix thead th{position:sticky;top:0;z-index:2;background:#fff}.alg-matrix .alg-col-head{width:38px;min-width:38px;padding:6px 2px;font-weight:600;text-align:center;vertical-align:bottom}.alg-matrix .alg-col-head svg{display:block;width:22px;height:22px;margin:0 auto 3px}.alg-matrix .alg-col-head span{display:block;font-size:10px;line-height:1.1;color:rgb(var(--ff-muted,107 114 128))}.alg-cell{display:grid;width:32px;height:32px;margin:2px auto;place-items:center;border:1px solid rgb(var(--ff-line-strong,229 231 235));border-radius:8px;background:#fff;color:transparent;font-size:16px;font-weight:900;line-height:1}.alg-cell:hover,.alg-cell[data-state=contains]{border-color:rgb(var(--ff-ink,17 24 39))}.alg-cell[data-state=contains]{background:rgb(var(--ff-ink,17 24 39));color:#fff}.alg-cell[data-state=traces]{border-color:rgb(var(--ff-ink,17 24 39));background:repeating-linear-gradient(135deg,#fff 0 4px,#e5e7eb 4px 8px);color:rgb(var(--ff-ink,17 24 39))}.alg-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.alg-pick{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid rgb(var(--ff-line-strong,229 231 235));border-radius:12px;background:#fff;color:rgb(var(--ff-ink,17 24 39));font-size:13px;font-weight:600;text-align:left}.alg-pick svg{flex:none;width:26px;height:26px;padding:3px;border-radius:999px;background:rgb(var(--ff-chip,243 244 246))}.alg-pick small{display:block;font-size:11px;font-weight:500;color:rgb(var(--ff-muted,107 114 128))}.alg-pick[data-state=contains]{border-color:rgb(var(--ff-ink,17 24 39));box-shadow:inset 0 0 0 1px rgb(var(--ff-ink,17 24 39))}.alg-pick[data-state=contains] svg{background:rgb(var(--ff-ink,17 24 39));color:#fff}.alg-pick[data-state=traces]{border-style:dashed;border-color:rgb(var(--ff-ink,17 24 39))}@media print{.alg-no-print{display:none!important}}.k-allergens>.alg-panel{flex:1;min-width:0;margin:0}.k-diet{padding:.9rem var(--pad,1rem) 0}