.allergen-list{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:14px 0 5px}
.allergen-symbol{position:relative;display:inline-flex;justify-content:center;align-items:center;flex:0 0 36px;width:36px;height:36px;border:1px solid #e99134;border-radius:50%;background:#fff;color:#713708;cursor:help;outline-offset:3px}
.allergen-symbol svg{width:23px;height:23px;pointer-events:none}
.allergen-symbol.is-trace{border:2px dashed #e99134}.allergen-symbol.is-ambiguous{border-color:#a25018}
.allergen-tooltip{display:none;position:absolute;z-index:10;bottom:calc(100% + 9px);left:0;transform:translateX(var(--tooltip-offset,0px));width:max-content;max-width:190px;padding:7px 10px;border-radius:4px;font-size:13px!important;font-weight:500;line-height:1.3!important;color:#fff;background:#251508;box-shadow:0 3px 10px #0006;text-align:center;pointer-events:none}
.allergen-symbol:hover .allergen-tooltip,.allergen-symbol:focus .allergen-tooltip,.allergen-symbol.show-tooltip .allergen-tooltip{display:block}
.allergens-card{position:absolute;bottom:0;left:0;right:0;padding:9px 12px;background:linear-gradient(transparent,#1b0e07e6);z-index:3}
.allergens-card .allergen-list{margin:12px 0 0;gap:7px}.allergens-card .allergen-symbol{flex-basis:30px;width:30px;height:30px}.allergens-card .allergen-symbol svg{width:20px;height:20px}
.tapa-card:has(>.fallback){background:url('/assets/legacy/fondo-2025.webp') center/cover!important}
.tapa-card>.fallback{height:auto!important;position:absolute;top:14px;left:14px;background:transparent!important;color:#efc98f!important;font-size:12px;z-index:1}
.tapa-card:has(>.fallback) .overlay{opacity:1;background:rgba(32,15,6,.6)!important}
.admin-content{min-width:0}.table-scroll{max-width:100%}
.allergens-pending{font-size:14px;color:#fff9;margin:14px 0}.allergens-pending.compact{font-size:12px;margin:0;text-align:left;color:#fff}
.tapa-allergens h2{font-size:18px!important;margin:22px 0 10px!important}.allergen-review{font-size:13px;color:#ffca8b;line-height:1.45;margin-top:12px}
.allergens-editor{margin:20px 0;padding:16px;border:1px solid #d0d0d0;min-width:0}.allergens-editor legend{font-weight:700}.allergens-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:15px 0}
.allergens-edit-item{display:grid;grid-template-columns:28px 1fr 135px;gap:8px;align-items:center;padding:5px;background:#faf7f3;border-radius:5px}.allergens-edit-item svg{width:24px;height:24px;color:#a25316}
.allergen-other-row{display:flex;gap:8px;align-items:end;flex-wrap:wrap;padding:12px 0}.allergen-other-row label{flex:1 1 130px}.allergen-other-row label:last-of-type{flex:0 0 auto}.allergen-review-check{display:block;margin-top:15px}.source-allergens{font-size:13px;color:#666}
.import-preview{margin:20px 0;padding:15px;background:#fff9ef;border:1px solid #e2c298}.import-pending{max-height:260px;overflow:auto;padding-left:20px}.import-summary{display:flex;flex-wrap:wrap;gap:15px;margin:10px 0}
.qr-settings{background:#faf7f3;padding:16px;margin:18px 0}.qr-settings label{display:block;max-width:670px}.qr-settings input,.qr-settings textarea{width:100%;margin:5px 0 13px}.qr-local-note{color:#804810;font-size:14px}.qr-table{min-width:980px}.qr-downloads{flex-wrap:nowrap!important;white-space:nowrap}.qr-downloads .btn{padding:8px 9px;font-size:13px}
.private-contact{padding:12px;border:1px solid #ddd;border-radius:5px;margin:15px 0}.private-contact p{margin:4px 0;font-size:14px}
.date-service{margin-top:16px}.date-service h3{font-size:16px}.date-service-list{display:grid;gap:6px}.date-service-list span{margin-left:7px}.calendar-date{display:flex;gap:10px;align-items:center;justify-content:center;margin:10px 0 20px}.calendar-date input{background:#fff;color:#321a0b;padding:9px;border:1px solid #e99134;border-radius:3px}.calendar-day h2 small{display:block;font-size:14px;font-weight:400;margin-top:5px}.date-editor-row{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:12px 0}
@media(max-width:800px){.allergens-edit-grid{grid-template-columns:1fr}.allergens-edit-item{grid-template-columns:28px 1fr 120px}.allergens-editor{padding:10px}.allergen-other-row input{max-width:100%}}

.ballot{margin-top:18px;padding-top:15px;border-top:1px solid #e9913470}.ballot h2{font-size:20px;margin:0 0 15px}.ballot form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.ballot label{flex:1 1 250px;display:block;min-width:0}.ballot select{display:block;width:100%;max-width:100%;color:#241407;background:#fff;padding:10px;margin-top:7px}.ballot-note{font-size:13px;margin:12px 0 0}
