:root{--ink:#17201c;--green:#173f35;--green-2:#225c4c;--cream:#f5f1e8;--paper:#fffdf8;--accent:#b84b2a;--line:#ded8cc;--muted:#6d746f;--red:#a9362b;--shadow:0 18px 50px rgba(23,32,28,.12);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2{font-family:"Fraunces",Georgia,serif;line-height:1.02}a{color:inherit}.eyebrow{margin-bottom:.55rem;color:var(--accent);font-size:.73rem;font-weight:800;letter-spacing:.16em}.muted{color:var(--muted)}
.demo-banner{padding:.55rem 1rem;background:#f8cf63;color:#4c3905;text-align:center;font-size:.72rem;font-weight:800;letter-spacing:.08em}.customer-header{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;padding:4.5rem max(5vw,24px) 3.5rem;background:var(--green);color:white}.customer-header>div{max-width:650px}.customer-header h1{margin-bottom:.65rem;font-size:clamp(3rem,8vw,6.5rem)}.customer-header p:not(.eyebrow){max-width:490px;margin-bottom:0;color:#d6e1dc;font-size:1.05rem}.customer-header .eyebrow{color:#efab8f}.cart-pill{display:flex;align-items:center;gap:1rem;padding:.8rem .9rem .8rem 1.2rem;border:1px solid #ffffff55;border-radius:999px;background:transparent;color:#fff}.cart-pill strong,.mobile-cart strong{display:grid;place-items:center;min-width:2rem;height:2rem;border-radius:50%;background:var(--accent)}
.category-nav{position:sticky;z-index:10;top:0;display:flex;gap:.4rem;padding:.8rem max(5vw,24px);overflow:auto;background:rgba(245,241,232,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.category-nav a{padding:.62rem .95rem;border-radius:999px;text-decoration:none;font-size:.9rem;font-weight:700;white-space:nowrap}.category-nav a:hover{background:var(--paper)}.menu-shell{width:min(1180px,90vw);margin:0 auto;padding:3.5rem 0 8rem}.menu-section{scroll-margin-top:90px;margin-bottom:4rem}.section-heading h2{font-size:clamp(2rem,5vw,3.3rem)}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.product-card{position:relative;display:flex;justify-content:space-between;gap:1rem;min-height:200px;padding:1.55rem;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 5px 18px rgba(23,32,28,.04)}.product-card h3{margin-bottom:.5rem;font-family:"Fraunces",Georgia,serif;font-size:1.35rem}.product-card p{margin-bottom:.75rem;color:var(--muted);line-height:1.5}.product-card small{display:block;margin-bottom:1rem;color:#8a5c4e}.product-card strong{display:block;font-size:1.1rem}.add-button{align-self:flex-end;display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border:0;border-radius:50%;background:var(--green);color:#fff;font-size:1.8rem;line-height:1}.unavailable{opacity:.6}.sold-out{align-self:flex-end;padding:.5rem .7rem;border-radius:8px;background:#ece8df;color:var(--muted);font-size:.8rem;font-weight:700}
.mobile-cart{position:fixed;z-index:20;right:1.25rem;bottom:max(1.25rem,env(safe-area-inset-bottom));display:none;width:min(390px,calc(100vw - 2.5rem));justify-content:space-between;align-items:center;padding:1rem 1rem 1rem 1.3rem;border:1px solid #ffffff24;border-radius:16px;background:var(--green);box-shadow:0 18px 50px rgba(16,42,35,.3);color:#fff;font-weight:700;transition:transform .18s ease,box-shadow .18s ease}.mobile-cart:hover{transform:translateY(-2px);box-shadow:0 22px 56px rgba(16,42,35,.36)}.mobile-cart.visible{display:flex}.scroll-top-button{position:fixed;z-index:19;right:1.25rem;bottom:max(1.25rem,env(safe-area-inset-bottom));display:flex;align-items:center;gap:.45rem;min-height:46px;padding:.65rem .85rem;border:1px solid var(--line);border-radius:999px;background:var(--paper);box-shadow:0 10px 30px rgba(23,32,28,.17);color:var(--green);font-weight:900;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .18s ease,transform .18s ease,bottom .18s ease}.scroll-top-button.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.scroll-top-button.above-cart{bottom:calc(max(1.25rem,env(safe-area-inset-bottom)) + 4.7rem)}.scroll-top-button>span{font-size:1.25rem;line-height:1}.scroll-top-button>b{font-size:.76rem}.modal{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;background:transparent}.modal::backdrop{background:rgba(15,24,20,.55);backdrop-filter:blur(5px)}.modal-card{position:relative;width:min(580px,calc(100% - 2rem));max-height:calc(100vh - 2rem);margin:1rem 1rem 1rem auto;padding:2rem;overflow:auto;border:0;border-radius:22px;background:var(--paper);box-shadow:var(--shadow)}.modal-close{position:absolute;top:1rem;right:1rem;z-index:2;width:40px;height:40px;border:0;border-radius:50%;background:#ece8df;font-size:1.5rem}.modal-card h2{padding-right:2.5rem;font-size:2.2rem}.modal-description{color:var(--muted);line-height:1.5}.option-group{margin:1.5rem 0;padding:0;border:0}.option-group legend{width:100%;margin-bottom:.6rem;font-weight:800}.required-tag{float:right;padding:.25rem .5rem;border-radius:5px;background:#f4dfd8;color:#87341e;font-size:.7rem}.option-group legend .muted{float:right;font-size:.75rem;font-weight:500}.choice-row{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.choice-row b{font-size:.85rem}.choice-row input{accent-color:var(--green)}.option-error,.form-error{min-height:1.2em;margin:.4rem 0 0;color:var(--red);font-size:.8rem}.quantity-row{display:flex;justify-content:space-between;align-items:center;margin:1.5rem 0;font-weight:700}.quantity-row>div,.cart-controls{display:flex;align-items:center;gap:.7rem}.quantity-row button,.cart-controls button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:white}.button{display:inline-flex;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1.1rem;border:0;border-radius:11px;text-decoration:none;font-weight:800}.button.primary{background:var(--green);color:#fff}.button.secondary{border:1px solid var(--line);background:transparent}.button.full{width:100%;padding:1rem}.button:disabled{opacity:.55;cursor:wait}.loading::after{content:"";width:15px;height:15px;border:2px solid #ffffff55;border-top-color:white;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.cart-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.cart-item>div:first-child{display:grid;gap:.2rem}.cart-item small{color:var(--muted)}.cart-total{display:flex;justify-content:space-between;padding:1.25rem 0;font-size:1.25rem}.checkout-form{display:grid;gap:1rem}.checkout-form[hidden]{display:none}.checkout-form label:not(.legal-check),.form-grid label,.admin-form label{display:grid;gap:.4rem;color:var(--muted);font-size:.82rem;font-weight:700}.checkout-form input,.checkout-form textarea,.form-grid input,.form-grid textarea,.admin-form input,.admin-form textarea,.admin-form select,.login-form input{width:100%;padding:.85rem;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink)}.legal-check{display:flex;align-items:flex-start;gap:.5rem;font-size:.8rem;color:var(--muted)}.legal-check input{width:auto;margin-top:.2rem}.checkout-payment-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.checkout-payment-actions button{min-height:64px;padding:.8rem;display:grid;place-content:center;gap:.18rem;line-height:1.08}.checkout-payment-actions button strong{font-size:.8rem}.cash-checkout-button{background:#f2b705;color:#211900;border:2px solid #d29d00;font-weight:900}.cash-checkout-button:hover{background:#ffd13d}.empty-cart{padding:3rem 1rem;text-align:center}.empty-cart p{margin:.5rem 0;color:var(--muted)}
.status-page,.setup-page,.login-page{display:grid;place-items:center;padding:1.5rem;background:var(--green)}.status-card,.setup-card,.login-card{width:min(680px,100%);padding:clamp(2rem,6vw,4rem);border-radius:26px;background:var(--paper);box-shadow:var(--shadow)}.status-card{text-align:center}.status-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 1.4rem;border-radius:50%;background:#d9eadf;color:var(--green);font-size:2rem}.status-card h1{font-size:clamp(2.2rem,7vw,4rem)}.order-number{margin:2rem 0;font-family:"Fraunces";font-size:clamp(3rem,12vw,6rem);font-weight:700;color:var(--green)}.status-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;margin:2rem 0}.status-steps span{padding:.65rem .2rem;border-radius:999px;background:#ebe8df;color:#8a8f8c;font-size:.72rem;font-weight:800}.status-steps span.active{background:var(--green);color:#fff}.status-card.is-ready{outline:8px solid #eea96d}.status-card .button{margin-top:1rem}.status-card .muted{font-size:.85rem}
.setup-card{width:min(800px,100%)}.setup-card h1,.login-card h1{font-size:clamp(2.2rem,6vw,3.5rem)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-grid .wide{grid-column:1/-1}.form-grid hr{width:100%;border:0;border-top:1px solid var(--line)}.notice{margin:1rem 0;padding:1rem;border-radius:10px}.notice.error{background:#f8dfdb;color:#7d2e24}.notice.success{background:#dceadf;color:#28563c}.setup-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}

@media(max-width:700px){.customer-header{align-items:flex-start;padding-top:3rem}.customer-header h1{font-size:3.2rem}.customer-header .cart-pill{display:none}.product-grid{grid-template-columns:1fr}.menu-shell{width:calc(100% - 2rem);padding-top:2.5rem}.product-card{min-height:170px}.mobile-cart{right:1rem;left:1rem;bottom:max(1rem,env(safe-area-inset-bottom));width:auto}.scroll-top-button{right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));width:46px;justify-content:center;padding:.55rem}.scroll-top-button.above-cart{bottom:calc(max(1rem,env(safe-area-inset-bottom)) + 4.8rem)}.scroll-top-button>b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.modal-card{width:100%;max-height:92vh;margin:8vh 0 0;border-radius:22px 22px 0 0;padding:1.4rem}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.status-card,.setup-card{padding:2rem 1.25rem}.status-steps span{font-size:.62rem}}

@media print{.demo-banner,.customer-header,.category-nav,.mobile-cart,.scroll-top-button{display:none!important}body{background:#fff}}

.login-form{display:grid;gap:1rem}.login-form label{display:grid;gap:.4rem;color:var(--muted);font-size:.82rem;font-weight:700}
.login-help-link{display:block;margin-top:1.15rem;color:var(--green);font-size:.85rem;font-weight:900;text-align:center;text-decoration:underline;text-underline-offset:3px}.login-card>.button.full{margin-top:.8rem}
.dashboard-page,.admin-page{background:#eeeae1}.dashboard-header{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.5rem 2rem;background:var(--paper);border-bottom:1px solid var(--line)}.dashboard-header h1{margin:0;font-size:2rem}.dashboard-header .eyebrow{margin-bottom:.25rem}.header-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.connection-dot{color:#257147;font-size:.82rem;font-weight:800}.connection-dot::before{content:"";display:inline-block;width:8px;height:8px;margin-right:.4rem;border-radius:50%;background:#39a66a}.connection-dot.offline{color:var(--red)}.connection-dot.offline::before{background:var(--red)}.bar-toolbar{display:flex;align-items:center;gap:1rem;padding:.7rem 2rem;color:var(--muted);font-size:.78rem}.sound-button{padding:.5rem .75rem;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.orders-board{display:grid;grid-template-columns:repeat(4,minmax(270px,1fr));gap:.8rem;padding:0 1rem 2rem;overflow-x:auto}.order-column{min-height:calc(100vh - 150px);padding:.8rem;border-radius:16px;background:#e4e0d7}.order-column>header{display:flex;justify-content:space-between;align-items:center;padding:.3rem .3rem .8rem}.order-column h2{margin:0;font-family:inherit;font-size:1rem}.order-column>header span{display:grid;place-items:center;min-width:26px;height:26px;border-radius:50%;background:var(--paper);font-weight:800}.order-list{display:grid;align-content:start;gap:.7rem}.column-empty{padding:2rem 1rem;text-align:center;color:#959994;font-size:.85rem}.order-card{padding:1rem;border:1px solid var(--line);border-radius:13px;background:var(--paper);box-shadow:0 3px 12px rgba(23,32,28,.05)}.order-card.is-new{border:2px solid var(--accent)}.order-card>header{display:flex;justify-content:space-between;gap:.5rem}.order-card>header div{display:grid}.order-card>header strong{font-family:"Fraunces";font-size:1.35rem}.order-card>header span{color:var(--muted);font-size:.72rem}.order-card ul{display:grid;gap:.55rem;margin:1rem 0;padding:0;list-style:none}.order-card li{font-size:.92rem}.order-card li small{display:block;padding-left:1.5rem;color:var(--muted)}.order-notes{padding:.6rem;border-radius:7px;background:#fff1c9;font-size:.82rem}.order-meta{display:flex;justify-content:space-between;gap:.5rem;margin:.8rem 0;color:var(--muted);font-size:.7rem}.order-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem}.order-actions a,.order-actions button{padding:.55rem;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);text-align:center;text-decoration:none;font-size:.72rem;font-weight:800}.order-actions button{grid-column:1/-1;background:var(--green);color:white}.order-actions button:disabled{opacity:.5}
.admin-shell{width:min(1200px,calc(100% - 2rem));margin:0 auto;padding:2rem 0 5rem}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.stats-grid article{display:grid;gap:.4rem;padding:1.4rem;border:1px solid var(--line);border-radius:15px;background:var(--paper)}.stats-grid span{color:var(--muted);font-size:.8rem}.stats-grid strong{font-family:"Fraunces";font-size:2rem}.admin-section{margin-bottom:1rem;padding:1.5rem;border:1px solid var(--line);border-radius:18px;background:var(--paper)}.admin-section h2{font-size:2rem}.admin-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.admin-popover{position:relative}.admin-popover>summary{list-style:none}.admin-popover[open] .popover-form{display:grid}.popover-form{position:absolute;z-index:5;top:3.4rem;right:0;width:min(420px,90vw);padding:1rem;border:1px solid var(--line);border-radius:14px;background:white;box-shadow:var(--shadow)}.admin-form{display:grid;gap:.8rem}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.check-row{display:flex!important;grid-template-columns:none!important;align-items:center}.check-row input{width:auto}.product-admin-list{border-top:1px solid var(--line)}.product-admin-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem .3rem;border-bottom:1px solid var(--line)}.product-admin-row>div:first-child{display:grid;gap:.2rem}.product-admin-row span,.product-admin-row small{color:var(--muted);font-size:.72rem}.product-admin-row.is-soldout{opacity:.65}.row-actions{display:flex;align-items:center;gap:.5rem}.row-actions form{margin:0}.availability{padding:.5rem .7rem;border:0;border-radius:999px;background:#f2d8d4;color:#7f3028;font-size:.72rem;font-weight:800}.availability.available{background:#dceadf;color:#28563c}.row-actions details{position:relative}.row-actions summary,.inline-creator summary{cursor:pointer;color:var(--green);font-size:.8rem;font-weight:800}.edit-form{position:absolute;z-index:6;top:1.8rem;right:0;width:min(400px,90vw);padding:1rem;border:1px solid var(--line);border-radius:13px;background:white;box-shadow:var(--shadow)}.inline-creator{margin-top:1rem}.inline-form{grid-template-columns:2fr 1fr auto;align-items:end;margin-top:1rem}.admin-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:.8rem;border-bottom:1px solid var(--line);font-size:.82rem}th{color:var(--muted);font-size:.7rem;text-transform:uppercase}td small{display:block;color:var(--muted)}.text-button{padding:0;border:0;background:none;color:var(--accent);font-weight:700}.user-list{margin:0;padding:0;list-style:none}.user-list li{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--line)}.user-list li div{display:grid}.user-list small{color:var(--muted)}.user-list span{padding:.3rem .5rem;border-radius:6px;background:#ece8df;font-size:.68rem;font-weight:800}

@media(max-width:700px){.dashboard-header{align-items:flex-start;padding:1rem;flex-direction:column}.header-actions{width:100%}.bar-toolbar{padding:.7rem 1rem;overflow:auto;white-space:nowrap}.orders-board{grid-template-columns:repeat(4,82vw)}.stats-grid,.admin-two-columns{grid-template-columns:1fr}.admin-heading{align-items:flex-start}.product-admin-row{align-items:flex-start}.form-row,.inline-form{grid-template-columns:1fr}.popover-form,.edit-form{position:fixed;z-index:30;top:auto;right:.5rem;bottom:.5rem;left:.5rem;width:auto;max-height:85vh;overflow:auto}}

.product-image{width:110px;height:110px;order:2;align-self:center;border-radius:14px;object-fit:cover}.product-copy{flex:1}.row-actions>a{color:var(--green);font-size:.8rem;font-weight:800}.legal-check a{color:var(--green);font-weight:700}
.legal-shell{width:min(820px,calc(100% - 2rem));margin:0 auto;padding:3rem 0 6rem}.legal-shell section{margin:3rem 0}.legal-shell h2{font-size:2.4rem}.legal-shell p{line-height:1.75}.diagnostic-list{display:grid;gap:.6rem}.diagnostic-list>div{display:grid;grid-template-columns:32px 1fr;gap:.2rem .6rem;padding:.8rem;border-bottom:1px solid var(--line)}.diagnostic-list span{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#dceadf;color:var(--green);font-weight:900}.diagnostic-list small{color:var(--muted);overflow-wrap:anywhere}
@media(max-width:700px){.product-image{width:88px;height:88px}.row-actions{flex-wrap:wrap;justify-content:flex-end}}

.customer-actions{display:flex;flex-direction:column;align-items:stretch;gap:.65rem;min-width:210px}.header-link,.waiter-call-button{padding:.75rem 1rem;border:1px solid #ffffff55;border-radius:999px;background:transparent;color:#fff;text-align:center;text-decoration:none;font-weight:800}.waiter-call-button{background:#fff1c9;color:#5b3f00;border-color:#ffd566}.waiter-call-button.is-called{background:#d8efdf;color:#1e5c39;border-color:#79bd91}.service-badge{display:inline-flex;margin-top:1.2rem;padding:.55rem .8rem;border-radius:999px;background:#ffffff18;border:1px solid #ffffff25;font-size:.82rem;font-weight:800}.table-required-notice{display:flex;justify-content:center;align-items:center;gap:.8rem;padding:1rem;background:#fff1c9;color:#5b3f00}.table-required-notice span{font-size:.85rem}.service-status-label{display:inline-block;padding:.7rem 1rem;border-radius:999px;background:#ece8df;font-weight:800}
.waiter-alerts{display:grid;gap:.7rem;margin:0 1rem}.admin-shell>.waiter-alerts{margin:0 0 1rem}.waiter-alert{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;border:3px solid #ff3d00;border-radius:16px;background:#ffdf35;color:#381500;box-shadow:0 0 0 0 rgba(255,61,0,.7);animation:waiterGlow 1s infinite}.waiter-alert>div{display:grid;gap:.1rem}.waiter-alert span{font-size:.75rem;font-weight:900;letter-spacing:.09em}.waiter-alert strong{font-size:1.6rem}.waiter-alert small{font-weight:700}.waiter-alert button{padding:.9rem 1.3rem;border:0;border-radius:11px;background:#2b1600;color:#fff;font-size:1rem;font-weight:900}.waiter-alert button:disabled{opacity:.5}@keyframes waiterGlow{0%,100%{background:#ffdf35;box-shadow:0 0 0 0 rgba(255,61,0,.65)}50%{background:#ff7a32;box-shadow:0 0 0 12px rgba(255,61,0,0)}}
.order-card.is-new{border:3px solid #ff3d00;background:#fff1a8;animation:newOrderPulse .85s infinite}.order-card.is-new>header strong{color:#9a1e00}@keyframes newOrderPulse{0%,100%{background:#fff1a8;transform:translateY(0);box-shadow:0 0 0 rgba(255,61,0,0)}50%{background:#ffbf69;transform:translateY(-2px);box-shadow:0 0 20px rgba(255,61,0,.45)}}.order-actions .cancel-order{grid-column:1/-1;background:#8e2f27;color:#fff;border-color:#8e2f27}
.qr-admin-shell{width:min(1100px,calc(100% - 2rem))}.qr-catalog-heading{margin:2rem 0 1rem}.qr-catalog-heading h2{margin-bottom:.5rem;font-size:2.4rem}.qr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.qr-card{display:flex;flex-direction:column;align-items:center;padding:1.5rem;border:1px solid var(--line);border-radius:18px;background:#fff;text-align:center;break-inside:avoid}.qr-card h2{font-size:2rem}.qr-code{display:grid;place-items:center;width:240px;height:240px;padding:10px;background:#fff}.qr-code img,.qr-code canvas{max-width:100%;height:auto!important}.qr-card>small{max-width:100%;color:var(--muted);font-size:.62rem;overflow-wrap:anywhere}.qr-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1rem}.qr-actions form{margin:0}.qr-disabled{opacity:.72}.qr-mode-disabled{border-style:dashed}.qr-state-warning{width:100%;margin-bottom:0;background:#fff1c9;color:#5b3f00;font-size:.78rem}.button.danger{background:#8e2f27;color:#fff}.print-trigger{position:fixed;right:1rem;bottom:1rem}
.qr-edit{width:100%;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line);text-align:left}.qr-edit summary{cursor:pointer;color:var(--green);font-weight:800}.qr-edit form{margin-top:.8rem}.checkout-cancelled{margin:0;border-radius:0;background:#fff1c9;color:#5b3f00;text-align:center}.status-card.is-cancelled{outline:8px solid #b83b30}.status-card.is-cancelled .status-icon{background:#f4d7d3;color:#8e2f27}.status-card.is-cancelled .status-icon::before{content:'×';font-size:2.2rem}.status-card.is-cancelled .status-icon{font-size:0}
@media print{.no-print{display:none!important}.qr-print{background:#fff}.qr-print .admin-shell{width:100%;padding:0}.qr-print .qr-grid{grid-template-columns:repeat(2,1fr);gap:8mm}.qr-print .qr-card{min-height:130mm;border:1px dashed #777;justify-content:center}.qr-print .qr-code{width:58mm;height:58mm}.qr-print .qr-code img,.qr-print .qr-code canvas{width:55mm!important;height:55mm!important}}
@media(max-width:700px){.customer-header{flex-direction:column}.customer-actions{width:100%;min-width:0}.customer-actions .cart-pill{display:none}.header-link,.waiter-call-button{width:100%}.table-required-notice{align-items:flex-start;flex-direction:column}.waiter-alert{align-items:stretch;flex-direction:column}.waiter-alert button{width:100%}.waiter-alerts{margin:.5rem}.qr-grid{grid-template-columns:1fr}.qr-actions{flex-direction:column;width:100%}.qr-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){.waiter-alert,.order-card.is-new{animation:none}}
.diagnostic-list>div.fail span{background:#f8dfdb;color:#8e2f27}.diagnostic-mail{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--line)}.diagnostic-mail h2{font-size:2rem}
.waiter-feedback{min-height:1.2rem;margin:-.25rem .4rem 0;color:#fff;font-size:.75rem;line-height:1.35;text-align:center}.waiter-feedback.is-success{color:#bdf3cc}.waiter-feedback.is-error{color:#ffd2c8}.sound-button.is-active{border-color:#68b783;background:#dceadf;color:#28563c}.sound-gate{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:1.5rem;background:rgba(16,28,23,.82);backdrop-filter:blur(8px)}.sound-gate[hidden]{display:none}.sound-gate>div{display:grid;justify-items:center;width:min(460px,100%);padding:2rem;border-radius:22px;background:var(--paper);box-shadow:var(--shadow);text-align:center}.sound-gate>div>span{font-size:3rem}.sound-gate strong{font-family:"Fraunces",Georgia,serif;font-size:2rem}.sound-gate p{color:var(--muted)}.order-actions .check-order{grid-column:1/-1;background:#257147;color:#fff;border-color:#257147;font-size:.85rem}
.order-category-separator{display:flex!important;align-items:center;gap:.5rem;margin:.55rem 0 .1rem!important;color:#173f35!important;font-size:.68rem!important;font-weight:900!important;letter-spacing:.09em;text-transform:uppercase}.order-category-separator::before,.order-category-separator::after{content:"";height:4px;flex:1;background:#173f35}.order-category-separator span{white-space:nowrap}.order-delivery{display:grid;gap:.25rem;margin:.65rem 0;padding:.7rem;border:2px solid #6846a5;border-radius:9px;background:#f1eaff;font-size:.78rem;overflow-wrap:anywhere}.order-delivery span{color:#583b88}.order-actions .ack-order-alert{grid-column:1/-1;background:#ffdf35;color:#381500;border:2px solid #ff3d00;font-size:.85rem}.claim-alert{border-color:#8b20c5;background:#ecbcff;color:#2d083f;animation-name:claimGlow}.claim-alert button{background:#310847}@keyframes claimGlow{0%,100%{background:#ecbcff;box-shadow:0 0 0 0 rgba(139,32,197,.65)}50%{background:#c75eff;box-shadow:0 0 0 12px rgba(139,32,197,0)}}
.claim-order-button{background:#9c2bc3;color:#fff}.claim-order-button[hidden]{display:none}.claim-feedback{min-height:1.3rem;margin:.55rem 0;color:#6f2588;font-size:.82rem;font-weight:700}.delivery-status-address{padding:.8rem;border:1px solid var(--line);border-radius:10px;background:#f4efff;line-height:1.5}.service-switch{display:inline-flex;gap:.3rem;margin-top:1rem;padding:.3rem;border:1px solid #ffffff40;border-radius:999px}.service-switch a{padding:.5rem .8rem;border-radius:999px;color:#fff;text-decoration:none;font-size:.78rem;font-weight:800}.service-switch a.active{background:#fff;color:var(--green)}
.status-order-detail{margin:1rem 0;border:1px solid var(--line);border-radius:12px;background:#faf8f3;text-align:left;overflow:hidden}.status-order-detail>summary{padding:.9rem 1rem;cursor:pointer;color:var(--green);font-weight:900;text-align:center}.status-order-detail>div{padding:0 1rem 1rem}.status-order-detail h3{margin:1rem 0 .3rem;padding-bottom:.3rem;border-bottom:2px solid var(--green);color:var(--green);font-size:.8rem;text-transform:uppercase}.status-order-detail p{display:flex;justify-content:space-between;gap:1rem;margin:0;padding:.55rem 0;border-bottom:1px solid var(--line)}.status-order-detail p span{display:grid}.status-order-detail p small{color:var(--muted);font-size:.7rem}.status-order-taxes{display:grid;gap:.2rem;padding:.7rem 0;color:var(--muted)}.status-order-total{font-size:1.15rem;font-weight:900}
.business-version-list{display:grid;gap:.65rem;margin:1rem 0}.business-version{display:flex;align-items:center;gap:.8rem;padding:.85rem;border:1px solid var(--line);border-radius:11px;background:#f7faf8}.business-version>input{flex:0 0 auto;width:20px;height:20px;accent-color:var(--green)}.business-version>span{display:grid;gap:.15rem}.business-version small{color:var(--muted)}.business-version b{width:max-content;padding:.25rem .45rem;border-radius:5px;background:#686868;color:#fff;font-size:.62rem;letter-spacing:.05em}.business-version.is-locked{filter:grayscale(1);opacity:.62;background:#e6e6e6}.admin-business-data{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.platform-store-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.platform-store-card{margin:0}.version-toggle{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:.8rem;padding:.85rem;border:1px solid var(--line);border-radius:11px;background:#f8f6f0}.version-toggle input{width:20px!important;height:20px;margin-top:.15rem;accent-color:var(--green)}.version-toggle span{display:grid;gap:.2rem}.version-toggle small{color:var(--muted)}.password-creator{padding-top:1rem;border-top:1px solid var(--line)}
.product-allergens{display:flex;flex-wrap:wrap;gap:.35rem;margin:.6rem 0 1rem}.product-allergens span{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .45rem;border:1px solid #ddcaa5;border-radius:999px;background:#fff8e7;color:#633f0c}.product-allergens svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.product-allergens b{font-size:.66rem}.allergen-selector{margin:0;padding:.8rem;border:1px solid var(--line);border-radius:11px}.allergen-selector legend{padding:0 .35rem;color:var(--ink);font-size:.8rem;font-weight:800}.allergen-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.admin-form .allergen-admin-grid label{display:flex;grid-template-columns:none;align-items:center;gap:.45rem;padding:.45rem;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:.7rem}.allergen-admin-grid input{width:auto!important;accent-color:var(--green)}.allergen-admin-grid svg{width:26px;height:26px;flex:0 0 26px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.popover-form,.edit-form{max-height:85vh;overflow:auto}
@media(max-width:700px){.platform-store-grid,.allergen-admin-grid{grid-template-columns:1fr}.product-allergens b{display:none}.product-allergens span{padding:.3rem}.service-switch{display:flex}.service-switch a{flex:1;text-align:center}}
.orders-board{grid-template-columns:repeat(5,minmax(270px,1fr))}.service-choice-panel{display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);gap:1.5rem;align-items:center;padding:1.5rem max(5vw,24px);background:#fff7d6;border-bottom:4px solid #e3a625}.service-choice-panel h2{margin-bottom:.4rem;font-size:clamp(1.7rem,4vw,2.7rem)}.service-choice-panel p{margin-bottom:0}.service-choice-panel nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem}.service-choice{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:.15rem .7rem;align-items:center;padding:1rem;border:2px solid #d4c9a2;border-radius:15px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 4px 12px rgba(23,32,28,.06)}.service-choice>span{grid-row:1/3;font-size:2rem}.service-choice strong{font-size:1rem}.service-choice small{color:var(--muted);line-height:1.3}.service-choice.active{border-color:var(--green);background:#dff1e6;box-shadow:0 0 0 3px rgba(23,63,53,.14)}.service-choice.active strong::after{content:' · SELECCIONADO';color:#257147;font-size:.6rem;letter-spacing:.06em}.service-choice.requires-qr{filter:grayscale(.3);background:#ece9e1;border-style:dashed}.delivery-fee-line{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:2px solid #8a63c7;color:#57358a;font-weight:800}.delivery-fee-config{padding:1rem;border:2px solid #8a63c7;border-radius:12px;background:#f5efff}.delivery-fee-config .eyebrow{margin-bottom:.7rem}.delivery-fee-config>small{display:block;margin-top:.5rem}.status-steps.has-delivery{grid-template-columns:repeat(5,1fr)}.delivery-pin-card{display:grid;justify-items:center;gap:.25rem;margin:1rem 0;padding:1rem;border:3px solid #e39a19;border-radius:14px;background:#fff1c9}.delivery-pin-card span{font-size:.72rem;font-weight:900;letter-spacing:.12em}.delivery-pin-card strong{font-family:ui-monospace,monospace;font-size:2.6rem;letter-spacing:.35em;color:#6b3c00}.delivery-pin-card small{color:#6b4e22}.delivery-pin-action{grid-column:1/-1;display:grid;grid-template-columns:1fr;gap:.4rem;padding:.65rem;border:2px solid #6639a1;border-radius:9px;background:#f2eaff}.delivery-pin-action input{width:100%;padding:.7rem;border:1px solid #9a7ac6;border-radius:7px;background:#fff;text-align:center;font-size:1.1rem;font-weight:900;letter-spacing:.25em}.order-actions .delivery-pin-action button{grid-column:auto;background:#6639a1}.category-admin-list{display:grid;gap:.45rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line)}.category-admin-list>.eyebrow{margin-bottom:.2rem}.category-admin-list>div{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .75rem;border:1px solid var(--line);border-radius:9px;background:#faf8f3}.category-admin-list>div>span{display:grid}.category-admin-list small{color:var(--muted);font-size:.72rem}.danger-text{color:#a9362b!important}.recent-order-list{display:grid;gap:.55rem;margin-top:1rem}.recent-order{border:1px solid var(--line);border-radius:12px;background:#faf8f3;overflow:hidden}.recent-order>summary{display:grid;grid-template-columns:minmax(150px,1.4fr) auto auto auto;align-items:center;gap:1rem;padding:.85rem 1rem;cursor:pointer;list-style:none}.recent-order>summary::-webkit-details-marker{display:none}.recent-order>summary>span{display:grid}.recent-order>summary small{color:var(--muted);font-size:.72rem}.recent-order>summary>i{color:var(--green);font-size:.72rem;font-style:normal;font-weight:800}.order-status{padding:.35rem .55rem;border-radius:999px;background:#e6e2d8;font-size:.68rem}.status-new{background:#fff1a8;color:#8b2c08}.status-preparing{background:#dfe9ff;color:#274982}.status-ready{background:#dceadf;color:#28563c}.status-out_for_delivery{background:#ebddff;color:#603497}.status-delivered{background:#d9eadf;color:#28563c}.status-cancelled{background:#f8dfdb;color:#7d2e24}.recent-order-content{padding:1rem;border-top:1px solid var(--line);background:#fff}.recent-order-data{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}.recent-order-data>div{display:grid;gap:.15rem;padding:.7rem;border-radius:8px;background:#f5f3ee;overflow-wrap:anywhere}.recent-order-data .wide{grid-column:1/-1}.recent-order-data small{color:var(--muted);font-size:.65rem;text-transform:uppercase}.recent-order-items{margin-top:1rem}.recent-order-items h3{margin:.9rem 0 .35rem;padding:.35rem;border-top:3px solid var(--green);border-bottom:3px solid var(--green);font-family:inherit;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.recent-order-items>div{display:flex;justify-content:space-between;gap:1rem;padding:.55rem .2rem;border-bottom:1px solid var(--line)}.recent-order-items>div>span{display:grid}.recent-order-items small{color:var(--muted)}.recent-order-totals{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:1rem;border-radius:9px;background:#edf5f1}.recent-order-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.recent-order-actions form{margin:0}
@media(max-width:700px){.orders-board{grid-template-columns:repeat(5,82vw)}.service-choice-panel{grid-template-columns:1fr;padding:1.25rem 1rem}.service-choice-panel nav{grid-template-columns:1fr}.recent-order>summary{grid-template-columns:1fr auto;gap:.5rem}.recent-order>summary>.order-status{justify-self:start}.recent-order>summary>i{grid-column:2;grid-row:2}.recent-order-data{grid-template-columns:1fr 1fr}.category-admin-list>div{align-items:flex-start;flex-direction:column}.delivery-pin-card strong{font-size:2.2rem}.status-steps.has-delivery span{font-size:.56rem}}
.courier-assign-action{grid-column:1/-1;display:grid;gap:.45rem;padding:.7rem;border:2px solid #6840a0;border-radius:10px;background:#f4efff}.courier-assign-action select{width:100%;padding:.65rem;border:1px solid #9a7ac6;border-radius:7px;background:#fff}.order-actions .courier-assign-action button{grid-column:auto;background:#6840a0}.order-actions .courier-assign-action .resend-courier{background:#fff;color:#6840a0;border-color:#6840a0}.courier-assign-action>p{margin:0;color:#7d2e24;font-size:.75rem;font-weight:800}.current-courier{display:grid;gap:.15rem;padding:.55rem;border-radius:7px;background:#fff}.current-courier span{color:var(--muted);font-size:.68rem}.current-courier.is-blocked{border:2px solid #a9362b;background:#f8dfdb}.current-courier.is-blocked>strong{color:#8e2f27;font-size:.68rem}.courier-admin-shell{width:min(1250px,calc(100% - 2rem))}.courier-create-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.courier-create-form button{height:max-content}.courier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1rem}.courier-card{margin:0}.courier-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.courier-card>header h2{margin-bottom:.2rem}.courier-card>header>span{padding:.4rem .55rem;border-radius:999px;background:#dceadf;color:#28563c;font-size:.7rem;font-weight:800}.courier-card.is-blocked{border:2px solid #a9362b;background:#fff8f7}.courier-card.is-blocked>header>span{background:#f8dfdb;color:#7d2e24}.courier-block-reason{display:grid;gap:.2rem;padding:.8rem;border-radius:9px;background:#f8dfdb;color:#7d2e24}.courier-block-reason small{color:#8f5b55}.courier-block-form{padding-top:.8rem;border-top:1px solid #e4b1aa}.courier-unblock{margin-top:1rem}.courier-history{margin-top:1rem;border-top:1px solid var(--line);padding-top:1rem}.courier-history>summary{cursor:pointer;color:var(--green);font-weight:800}.courier-history>div{display:grid;gap:.4rem;margin-top:.7rem}.courier-history article{display:grid;grid-template-columns:1fr auto auto;gap:.6rem;align-items:center;padding:.65rem;border:1px solid var(--line);border-radius:8px;background:#fff}.courier-history article>span{display:grid;min-width:0}.courier-history article small{color:var(--muted);font-size:.65rem;overflow-wrap:anywhere}.courier-history article>b{font-size:.67rem}.courier-page{min-height:100vh;padding:1rem;background:#173f35}.courier-delivery-card{width:min(680px,100%);margin:0 auto;padding:clamp(1.2rem,5vw,2.5rem);border-radius:22px;background:var(--paper);box-shadow:var(--shadow)}.courier-delivery-card>header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem}.courier-delivery-card>header .eyebrow{width:100%}.courier-delivery-card h1{margin:0;font-size:clamp(2.5rem,9vw,4.5rem)}.courier-route-status{padding:.55rem .75rem;border-radius:999px;background:#ebddff;color:#603497;font-size:.72rem;font-weight:900}.courier-destination{margin:1.5rem 0;padding:1.2rem;border:2px solid #6840a0;border-radius:14px;background:#f4efff}.courier-destination h2{font-family:inherit;font-size:1.35rem;line-height:1.35}.courier-notes{padding:1rem;border-radius:10px;background:#fff1c9}.courier-notes p{margin-bottom:0}.courier-order-content{margin:1rem 0;border:1px solid var(--line);border-radius:10px}.courier-order-content>summary{padding:1rem;cursor:pointer;font-weight:800}.courier-order-content>div{padding:0 1rem 1rem}.courier-order-content h3{margin:.8rem 0 .35rem;padding:.3rem;border-top:3px solid var(--green);border-bottom:3px solid var(--green);font-family:inherit;font-size:.7rem;text-transform:uppercase}.courier-order-content p{margin:0;padding:.5rem 0;border-bottom:1px solid var(--line)}.courier-order-content p span{display:grid}.courier-order-content small{color:var(--muted)}.courier-pin-section{margin-top:1.5rem;padding:1.2rem;border:3px solid #e39a19;border-radius:14px;background:#fff1c9}.courier-pin-section h2{font-size:2rem}.courier-pin-section input{text-align:center;font-size:1.6rem;font-weight:900;letter-spacing:.35em}.courier-delivery-card footer{margin-top:1.5rem;color:var(--muted);text-align:center}
.category-admin-list>p.muted{margin:0;font-size:.75rem}.category-admin-list>div>span{grid-template-columns:auto 1fr;column-gap:.6rem;align-items:center}.category-admin-list>div>span small{grid-column:2}.category-position{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--green);color:#fff;font-size:.72rem}.category-order-actions{display:flex;align-items:center;gap:.35rem}.category-order-actions form{margin:0}.category-order-actions .text-button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:1.15rem}.category-order-actions .text-button:disabled{opacity:.3;cursor:not-allowed}
@media(max-width:700px){.courier-create-form{grid-template-columns:1fr}.courier-grid{grid-template-columns:1fr}.courier-history article{grid-template-columns:1fr auto}.courier-history article>strong{grid-column:2}.courier-page{padding:.5rem}.courier-delivery-card{border-radius:16px}.category-order-actions{width:100%;flex-wrap:wrap}.category-order-actions>small{margin-left:auto}}
.payment-admin-shell{width:min(1180px,calc(100% - 2rem))}.payment-status-card{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:1rem;padding:1.4rem 1.6rem;border:3px solid;border-radius:16px}.payment-status-card h2{margin:.15rem 0}.payment-status-card p{margin:0}.payment-status-card>strong{padding:.55rem .8rem;border-radius:999px;font-size:.72rem;letter-spacing:.08em}.payment-status-card.is-demo{border-color:#d89b24;background:#fff3c9}.payment-status-card.is-demo>strong{background:#d89b24;color:#fff}.payment-status-card.is-test{border-color:#506da8;background:#e9f0ff}.payment-status-card.is-test>strong{background:#506da8;color:#fff}.payment-status-card.is-live{border-color:#2b8051;background:#e2f3e8}.payment-status-card.is-live>strong{background:#2b8051;color:#fff}.notice.warning{border:1px solid #d89b24;background:#fff3c9;color:#65450b}.payment-admin-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:1rem;align-items:start}.payment-provider-options{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:0;padding:0;border:0}.payment-provider-options legend{margin-bottom:.55rem;font-weight:800}.payment-provider-options label,.payment-live-confirm{display:flex;align-items:flex-start;gap:.65rem;padding:.85rem;border:2px solid var(--line);border-radius:11px;background:#fff}.payment-provider-options input,.payment-live-confirm input{margin-top:.2rem;accent-color:var(--green)}.payment-provider-options span,.payment-live-confirm span{display:grid;gap:.2rem}.payment-provider-options small,.payment-live-confirm small,.payment-settings-form label>small{color:var(--muted);font-size:.7rem;line-height:1.4}.payment-settings-form code,.payment-guide code{padding:.1rem .25rem;border-radius:4px;background:#eee9df}.payment-live-confirm{border-color:#d89b24;background:#fff8df}.payment-retest-form{margin-top:.65rem}.payment-guide ol{display:grid;gap:.65rem;padding-left:1.3rem;line-height:1.45}.copy-field{display:grid;grid-template-columns:1fr auto;margin-top:.4rem}.copy-field input{min-width:0;border-radius:9px 0 0 9px}.copy-field button{padding:0 .85rem;border:0;border-radius:0 9px 9px 0;background:var(--green);color:#fff;font-weight:800}.payment-security{margin-top:1.2rem;padding:1rem;border-radius:10px;background:#edf5f1}.payment-security p{margin:.35rem 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}.payment-last-test{display:grid;gap:.2rem;margin-top:1rem;padding:.8rem;border-left:4px solid;border-radius:7px;background:#f5f3ee}.payment-last-test.ok{border-color:#2b8051}.payment-last-test.fail{border-color:#a9362b}.payment-last-test span,.payment-last-test small{color:var(--muted);font-size:.7rem}.payment-last-test.fail strong{color:#8e2f27}@media(max-width:800px){.payment-admin-grid{grid-template-columns:1fr}.payment-provider-options{grid-template-columns:1fr}.payment-status-card{align-items:flex-start;flex-direction:column}}
.payment-settings-form .payment-bizum-option{display:flex;align-items:flex-start;gap:.65rem;padding:.85rem;border:2px solid #00a990;border-radius:11px;background:#e9fbf8}.payment-settings-form .payment-bizum-option>input{width:auto;margin-top:.2rem;accent-color:#00a990}.payment-bizum-option>span{display:grid;gap:.2rem}.payment-bizum-option small{color:var(--muted);font-size:.7rem;line-height:1.4}.payment-bizum-option b{color:#8e2f27;font-size:.68rem}.payment-bizum-option.is-disabled{filter:grayscale(1);opacity:.65}.bizum-mark{display:inline-flex!important;align-items:center;justify-content:center;width:max-content;padding:.18rem .42rem;border-radius:5px;background:#00a990;color:#fff!important;font-size:.68rem;font-weight:900;letter-spacing:.04em}.payment-method-hint{display:flex;align-items:center;justify-content:center;gap:.55rem;margin:-.25rem 0 0;color:var(--muted);font-size:.75rem}.payment-bizum-note{margin:1rem 0}

/* Refuerzo responsive: carta, administración, barra, estado y reparto. */
.order-email-reminder{display:flex;align-items:center;justify-content:center;gap:.65rem;padding:.75rem 1rem;border-top:1px solid #d5e3da;border-bottom:1px solid #d5e3da;background:#edf7f1;color:#28563c;text-align:center}.order-email-reminder span{font-size:1.15rem}.order-email-reminder p{margin:0;font-size:.78rem;font-weight:700}.order-email-reminder a{color:var(--green);font-weight:900}
img{max-width:100%}.product-card,.product-copy,.product-admin-row>div:first-child,.dashboard-header>div{min-width:0}.product-copy{flex:1 1 auto;overflow-wrap:anywhere}.product-card{max-width:100%;overflow:hidden}.service-required{align-self:flex-end;max-width:180px;padding:.5rem .65rem;border:1px solid #a9cdb7;border-radius:8px;background:#edf7f0;color:#28563c;font-size:.72rem;font-weight:800;line-height:1.25;text-align:center}.sold-out{max-width:100%;line-height:1.2;text-align:center;white-space:normal}.dashboard-header h1,.admin-section h2,.order-number{overflow-wrap:anywhere}.row-actions{flex-wrap:wrap;justify-content:flex-end}.recent-order>summary>*{min-width:0}.recent-order>summary small,.recent-order-items span{overflow-wrap:anywhere}.category-order-actions .category-move{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:1.15rem}.category-order-actions .category-move:disabled{opacity:.3;cursor:not-allowed}.category-order-actions .category-delete{display:grid;place-items:center;width:auto;min-height:34px;height:auto;padding:.45rem .65rem;border:1px solid #dba9a3;border-radius:8px;background:#fff8f7;font-size:.7rem;line-height:1.15;white-space:normal}
@media(max-width:900px){.dashboard-header{align-items:flex-start;flex-direction:column;gap:1rem}.header-actions{width:100%}.header-actions .button{flex:1 1 145px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-two-columns{grid-template-columns:1fr}.recent-order-data{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.customer-header{gap:1.4rem;padding-right:1rem;padding-left:1rem}.customer-header>div{max-width:100%}.customer-header h1{font-size:clamp(2.5rem,15vw,3.2rem);overflow-wrap:anywhere}.category-nav{padding-right:1rem;padding-left:1rem}.menu-shell{width:calc(100% - 2rem)}.product-card{gap:.8rem;padding:1.1rem}.product-image{flex:0 0 88px}.product-copy{flex-basis:0}.service-required{max-width:130px}.admin-shell,.payment-admin-shell,.courier-admin-shell{width:calc(100% - 1rem);padding-top:1rem}.admin-section{padding:1rem}.admin-heading{align-items:stretch;flex-direction:column}.admin-popover,.admin-popover>summary{width:100%}.admin-popover>summary{display:flex}.popover-form,.edit-form{position:fixed;z-index:80;inset:auto .5rem .5rem;width:auto;max-height:calc(100vh - 1rem)}.product-admin-row{align-items:flex-start;flex-direction:column}.row-actions{width:100%;justify-content:flex-start}.inline-form{grid-template-columns:1fr}.recent-order-content{padding:.75rem}.recent-order-totals{align-items:flex-start;flex-direction:column}.bar-toolbar{flex-wrap:wrap;padding:.7rem 1rem}.table-wrap{max-width:100%}.status-card,.setup-card,.login-card{max-width:100%}.courier-card>header{flex-wrap:wrap}}
@media(max-width:480px){.stats-grid{grid-template-columns:1fr}.header-actions .button{flex-basis:100%;width:100%}.admin-section h2{font-size:1.65rem}.form-row{grid-template-columns:1fr}.product-card{display:grid;grid-template-columns:minmax(0,1fr) 78px;min-height:0}.product-image{grid-column:2;grid-row:1;width:78px;height:78px}.product-copy{grid-column:1;grid-row:1}.add-button,.sold-out,.service-required{grid-column:1/-1;justify-self:stretch;width:100%;max-width:none}.add-button{height:42px;border-radius:10px}.recent-order>summary{grid-template-columns:1fr}.recent-order>summary>i,.recent-order>summary>.order-status{grid-column:auto;grid-row:auto;justify-self:start}.recent-order-data{grid-template-columns:1fr}.recent-order-data .wide{grid-column:auto}.recent-order-items>div{align-items:flex-start;flex-direction:column}.recent-order-items>div>strong{align-self:flex-end}.recent-order-actions,.recent-order-actions form,.recent-order-actions .button{width:100%}.category-order-actions{align-items:stretch}.category-order-actions form:last-of-type{flex:1}.category-order-actions .category-delete{width:100%}.status-steps,.status-steps.has-delivery{grid-template-columns:repeat(2,minmax(0,1fr))}.status-steps span,.status-steps.has-delivery span{font-size:.62rem}.order-number{font-size:clamp(2rem,15vw,4rem)}.courier-history article{grid-template-columns:1fr}.courier-history article>strong{grid-column:auto}.copy-field{grid-template-columns:1fr}.copy-field input,.copy-field button{border-radius:9px}.copy-field button{min-height:42px}.payment-status-card{padding:1rem}.delivery-pin-card strong{font-size:1.8rem;letter-spacing:.2em}}
@media(max-width:360px){.customer-header,.service-choice-panel{padding-right:.75rem;padding-left:.75rem}.menu-shell{width:calc(100% - 1.5rem)}.product-card{grid-template-columns:minmax(0,1fr) 68px;padding:.9rem}.product-image{width:68px;height:68px}.modal-card{padding:1rem}.category-order-actions{width:100%}.category-order-actions>small{width:100%;margin-left:0}.business-version,.version-toggle{padding:.65rem}.courier-delivery-card{padding:1rem}.delivery-pin-card strong{font-size:1.55rem}}

/* Imágenes y edición de familias. */
.category-heading{margin-bottom:1.25rem}.category-heading.has-image{position:relative;display:flex;align-items:flex-end;min-height:220px;padding:1.5rem;overflow:hidden;border-radius:20px;background:var(--green);box-shadow:0 8px 24px rgba(23,32,28,.12)}.category-heading.has-image::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(10,25,20,.06),rgba(10,25,20,.82))}.category-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.category-heading-copy{position:relative;z-index:2;min-width:0}.category-heading.has-image h2{margin:0;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.3)}.category-heading.has-image .eyebrow{color:#ffd0bd}.category-admin-info{display:flex;align-items:center;gap:.65rem;min-width:0}.category-admin-info>span{display:grid;min-width:0}.category-admin-info strong{overflow-wrap:anywhere}.category-admin-thumb{width:52px;height:52px;flex:0 0 52px;border:1px solid var(--line);border-radius:9px;object-fit:cover}.category-order-actions details{position:relative}.category-edit-button{display:grid;place-items:center;min-height:34px;padding:.45rem .65rem;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--green);cursor:pointer;font-size:.72rem;font-weight:800;list-style:none}.category-edit-button::-webkit-details-marker{display:none}.category-edit-form{top:2.7rem;width:min(390px,90vw)}.category-edit-preview{width:100%;height:150px;border-radius:10px;object-fit:cover}.category-create-form{grid-template-columns:2fr 2fr 1fr auto}
@media(max-width:700px){.category-heading.has-image{min-height:180px;padding:1.1rem}.category-admin-info{width:100%}.category-order-actions{align-items:center}.category-create-form{grid-template-columns:1fr}}
@media(max-width:480px){.category-heading.has-image{min-height:150px;border-radius:15px}.category-heading.has-image h2{font-size:clamp(1.8rem,11vw,2.5rem)}.category-admin-thumb{width:46px;height:46px;flex-basis:46px}.category-order-actions .category-editor{flex:1}.category-edit-button{width:100%}}
.category-heading-copy{max-width:100%}.category-heading-copy h2{max-width:100%;overflow-wrap:anywhere}

/* Compatibilidad visual de versiones anteriores; el QR de mesa ya no se bloquea. */
.service-badge.is-occupied{border-color:#ffd38a;background:#713519;color:#fff4df}.service-badge.is-reorder{border-color:#9fe0b6;background:#164f35;color:#ecfff3}.table-occupied-notice{display:flex;align-items:flex-start;gap:1rem;width:min(1040px,calc(100% - 2rem));margin:1.25rem auto;padding:1.2rem 1.35rem;border:3px solid #c54b2e;border-radius:16px;background:#fff0df;box-shadow:0 0 0 5px rgba(197,75,46,.1),0 10px 30px rgba(95,37,22,.12);color:#612515}.table-occupied-notice>span{display:grid;place-items:center;flex:0 0 50px;width:50px;height:50px;border-radius:50%;background:#c54b2e;font-size:1.55rem}.table-occupied-notice>div{flex:1;min-width:0}.table-occupied-notice .eyebrow{margin:0 0 .2rem;color:#a3311d}.table-occupied-notice strong{display:block;font-size:1.15rem}.table-occupied-notice p{margin:.35rem 0;line-height:1.45}.table-unlock-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:.7rem;margin-top:1rem}.table-unlock-form label{display:grid;gap:.35rem;color:#7e321f;font-size:.76rem;font-weight:900}.table-unlock-form input{width:100%;min-height:44px;padding:.75rem;border:1px solid #ca806d;border-radius:10px;background:#fff;color:var(--ink)}.table-unlock-error{margin-top:.8rem;padding:.7rem;border-radius:9px;background:#c54b2e;color:#fff;font-size:.78rem;font-weight:800;line-height:1.4}.table-home-button{margin-top:.75rem;border-color:#aa7567;background:#fff8f1}.marketing-consent-saved{display:grid;gap:.18rem;margin:0;padding:.8rem;border:1px solid #85bd98;border-radius:10px;background:#e7f6ec;color:#194e31;font-size:.8rem}.marketing-check[hidden],.marketing-consent-saved[hidden]{display:none!important}.marketing-consent-saved strong{font-size:.86rem}.marketing-consent-saved span{color:#3c6e4e}.qr-card.qr-occupied{border-color:#c54b2e;box-shadow:0 0 0 4px rgba(197,75,46,.1)}.qr-occupied-warning{display:grid;gap:.2rem;border:2px solid #c54b2e;background:#fff0df;color:#612515}.qr-occupied-warning span{font-size:.72rem;line-height:1.4}
@media(max-width:600px){.table-occupied-notice{align-items:flex-start;padding:1rem}.table-occupied-notice>span{flex-basis:42px;width:42px;height:42px;font-size:1.25rem}.table-occupied-notice strong{font-size:1rem}.table-occupied-notice p{font-size:.78rem}.table-unlock-form{grid-template-columns:1fr}.table-unlock-form .button,.table-home-button{width:100%}}

/* Caja, turnos e informes diarios. */
.cash-shell{display:grid;gap:1.25rem}.cash-control-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:start}.cash-current-shift{border-top:5px solid var(--green)}.cash-day-close{border-top:5px solid var(--accent)}.cash-mini-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:1rem 0}.cash-mini-stats span{display:grid;gap:.15rem;padding:.85rem;border-radius:10px;background:#edf5f0;color:var(--muted);font-size:.72rem}.cash-mini-stats b{color:var(--green);font-size:1.2rem}.cash-explanation{padding:.75rem;border-radius:9px;background:#f3f0e9;color:var(--muted);font-size:.75rem;line-height:1.45}.cash-closure-done,.cash-closure-pending{display:grid;gap:.2rem;margin:.8rem 0;padding:.8rem;border-radius:9px}.cash-closure-done{background:#dff1e5;color:#205a39}.cash-closure-pending{background:#fff0d8;color:#754016}.cash-closure-done span,.cash-closure-pending span{font-size:.7rem}.cash-report-heading>div{display:flex;align-items:end;justify-content:space-between;gap:1rem}.cash-report-heading h2{margin-bottom:0}.cash-date-form{display:flex;align-items:end;gap:.55rem}.cash-date-form label{display:grid;gap:.3rem;color:var(--muted);font-size:.72rem;font-weight:800}.cash-date-form input{min-height:42px;padding:.55rem;border:1px solid var(--line);border-radius:9px;background:#fff}.cash-print-selector{display:flex;align-items:end;gap:.7rem;margin-top:1rem;padding:1rem;border:2px solid #c8d9d1;border-radius:11px;background:#edf5f1}.cash-print-selector label{display:grid;flex:1;gap:.35rem;color:var(--green);font-size:.72rem;font-weight:900}.cash-print-selector select{width:100%;min-height:44px;padding:.65rem;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font-weight:700}.cash-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.cash-breakdown-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.cash-table-wrap{max-width:100%;overflow:auto}.cash-table{width:100%;border-collapse:collapse;font-size:.78rem}.cash-table th,.cash-table td{padding:.72rem .65rem;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.cash-table th{background:#f3f0e9;color:var(--muted);font-size:.65rem;letter-spacing:.07em;text-transform:uppercase}.cash-table td small{display:block;margin-top:.15rem;color:var(--muted)}.cash-table th:not(:first-child),.cash-table td:not(:first-child){text-align:right}.cash-summary-list{display:grid;gap:.45rem}.cash-summary-list>div{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem;border:1px solid var(--line);border-radius:9px;background:#faf8f3}.cash-summary-list span{display:grid;font-weight:800}.cash-summary-list small{color:var(--muted);font-size:.68rem;font-weight:500}.cash-stripe-warning{margin-bottom:0}.cash-stripe-warning p{margin:.35rem 0 .7rem;font-size:.72rem;line-height:1.4}.shift-list,.closure-list{display:grid;gap:.55rem}.shift-list article,.closure-list article{display:grid;grid-template-columns:minmax(180px,1.5fr) repeat(3,auto);align-items:center;gap:1rem;padding:.85rem 1rem;border:1px solid var(--line);border-radius:10px;background:#faf8f3}.shift-list article>div,.closure-list article>div{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:.5rem}.shift-list article>div small,.closure-list article>div small{grid-column:1/-1;color:var(--muted)}.shift-status{width:max-content;padding:.22rem .45rem;border-radius:999px;background:#e7e5df;color:var(--muted);font-size:.62rem;font-weight:900;text-transform:uppercase}.shift-status.is-open{background:#d9f1e1;color:#1e7142}.shift-status.type-daily{background:#f7dfd5;color:#8a321c}.shift-status.type-historical{background:#e5e2dc;color:#68645e}.shift-status.type-automatic{background:#fff0d8;color:#754016}.shift-notes{grid-column:1/-1;padding-top:.5rem;border-top:1px dashed var(--line);color:var(--muted)}.sales-detail-table td:nth-last-child(-n+3){text-align:right}.cash-report-note{margin:1rem 0 0;font-size:.72rem}
.cash-shell>*,.cash-control-grid>*,.cash-breakdown-grid>*{min-width:0}.cash-control-grid,.cash-stats,.cash-breakdown-grid{min-width:0;max-width:100%}.cash-table-wrap{width:100%;min-width:0}
@media(max-width:1050px){.cash-control-grid,.cash-breakdown-grid{grid-template-columns:1fr 1fr}.cash-control-grid>article:last-child,.cash-breakdown-grid>section:first-child{grid-column:1/-1}.cash-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.cash-control-grid,.cash-breakdown-grid{grid-template-columns:1fr}.cash-control-grid>article:last-child,.cash-breakdown-grid>section:first-child{grid-column:auto}.cash-report-heading>div{align-items:stretch;flex-direction:column}.cash-date-form,.cash-print-selector{align-items:stretch;flex-direction:column}.shift-list article,.closure-list article{grid-template-columns:1fr 1fr}.shift-list article>div,.closure-list article>div,.shift-notes{grid-column:1/-1}.cash-mini-stats{grid-template-columns:1fr}}
@media(max-width:480px){.cash-stats{grid-template-columns:1fr}.shift-list article,.closure-list article{grid-template-columns:1fr}.shift-list article>span,.shift-list article>strong,.closure-list article>span,.closure-list article>strong{text-align:left}}
@media print{.cash-page{background:#fff}.cash-page .dashboard-header{padding:1rem;background:#fff;color:#000}.cash-page .admin-shell{width:100%;padding:0}.cash-page .admin-section,.cash-page .stats-grid article{box-shadow:none;break-inside:avoid}.cash-page .cash-control-grid,.cash-page .notice,.cash-page .no-print{display:none!important}.cash-table-wrap{overflow:visible}.cash-table{font-size:9px}.cash-table th,.cash-table td{padding:4px}.cash-breakdown-grid{grid-template-columns:repeat(3,1fr)}}

/* Salida parcial de productos para pedidos servidos en mesa. */
.order-card ul.has-table-service{gap:.45rem}.order-item-name{display:grid;min-width:0;overflow-wrap:anywhere}.table-service-item{margin:0;padding:0!important}.table-service-item button{display:grid;gap:.35rem;width:100%;padding:.7rem;border:2px solid #c9c6bd;border-radius:9px;background:#f4f2ed;color:var(--ink);text-align:left;transition:background .15s,border-color .15s,transform .15s}.table-service-item button:not(:disabled):active{transform:scale(.985)}.table-service-item button:disabled{cursor:default;opacity:1}.table-service-item .order-item-name>span{font-size:.9rem}.table-service-item .order-item-name small{margin:.2rem 0 0;padding-left:1.2rem}.table-service-item em{font-size:.61rem;font-style:normal;font-weight:900;letter-spacing:.035em;line-height:1.25}.table-service-item.is-pending button{border-style:dashed}.table-service-item.is-pending em{color:#686d69}.table-service-item.is-ready button{border-color:#d13e2f;background:#ffdcd7;color:#621b15;box-shadow:0 0 0 2px rgba(209,62,47,.12)}.table-service-item.is-ready em{color:#a22419}.table-service-item.is-served button{border-color:#2c8a55;background:#d9f1e1;color:#194e31;box-shadow:0 0 0 2px rgba(44,138,85,.1)}.table-service-item.is-served em{color:#1e7142}.table-service-progress{display:grid;gap:.18rem;margin:.65rem 0;padding:.65rem;border:2px solid #d13e2f;border-radius:9px;background:#fff3f0}.table-service-progress>span{color:#9c261c;font-size:.63rem;font-weight:900;letter-spacing:.08em}.table-service-progress>strong{font-size:.8rem}.table-service-progress>small{margin:0;color:var(--muted);font-size:.58rem;line-height:1.35}.table-service-progress.is-complete{border-color:#2c8a55;background:#e7f6ec}.table-service-progress.is-complete>span{color:#1e7142}.order-actions .table-delivery-blocked{grid-column:1/-1;border:2px solid #cc6f2d;background:#fff0d8;color:#754016;cursor:not-allowed;opacity:1}

/* Comandas parciales para el servicio de mesa. */
.order-actions .table-command-ready{background:#c93427;color:#fff;border-color:#a5271d}.order-actions .table-command-empty{background:#ece9e2;color:#777;border:1px dashed #aaa;cursor:not-allowed;opacity:1}
.order-actions .manual-print-action{grid-column:auto;background:#fff;color:var(--ink)}.order-actions .manual-print-action.table-command-ready{background:#c93427;color:#fff;border-color:#a5271d}
.order-card.is-cash-pending{border:3px solid #e0a400;background:#fff8d6;animation:cashCardPulse 1s steps(2,end) infinite}.order-card.is-cash-pending .order-card-summary{background:#ffd541}.cash-payment-warning{display:grid;gap:.25rem;padding:1rem;margin-bottom:1rem;border:2px solid #9f7100;border-radius:12px;background:#ffdf57;color:#241b00;text-align:center}.cash-payment-warning span{font-size:1.15rem;font-weight:1000;letter-spacing:.03em}.cash-payment-warning strong{font-size:1.55rem}.cash-payment-warning small{font-weight:700}.order-actions .collect-cash-order{background:#15803d;color:#fff;border-color:#116730;font-size:1rem;font-weight:900}.order-actions .cancel-cash-order{background:#fff;color:#9f1d16;border:2px solid #b52b22}.status-card.is-cash-pending{border:3px solid #e0a400;background:#fffbed}.status-card.is-cash-pending .status-icon{background:#f2b705;color:#201800}@keyframes cashCardPulse{50%{box-shadow:0 0 0 6px rgba(242,183,5,.35)}}
@media(max-width:600px){.checkout-payment-actions{grid-template-columns:1fr}}
.customers-shell{max-width:1280px}.customers-hero{display:flex;justify-content:space-between;align-items:end;gap:2rem;padding:1.5rem;border-radius:18px;background:#173c34;color:#fff}.customers-hero h2{margin:.15rem 0}.customers-hero p{margin:.35rem 0 0;color:#d6e4df}.customer-search{display:flex;align-items:end;gap:.6rem;flex-wrap:wrap;min-width:min(100%,480px)}.customer-search label{display:grid;gap:.35rem;flex:1;font-size:.78rem;font-weight:800}.customer-search input{width:100%;padding:.75rem;border:0;border-radius:9px}.customer-list{display:grid;gap:.7rem;margin:1rem 0}.customer-card{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.customer-card>summary{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;gap:1rem;align-items:center;padding:1rem;cursor:pointer;list-style:none}.customer-card>summary::-webkit-details-marker{display:none}.customer-card>summary span{display:grid;gap:.2rem}.customer-card>summary small{color:var(--muted);overflow-wrap:anywhere}.customer-card>summary i{font-style:normal;color:var(--muted)}.customer-consent{padding:.35rem .55rem;border-radius:999px;background:#eee;color:#666;font-size:.72rem}.customer-consent.is-granted{background:#d9f6e4;color:#126537}.customer-card-content{display:grid;gap:1rem;padding:1rem;border-top:1px solid var(--line);background:#faf9f6}.customer-data-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}.customer-data-grid>div{display:grid;gap:.2rem;padding:.75rem;border:1px solid var(--line);border-radius:10px;background:#fff;overflow-wrap:anywhere}.customer-data-grid small{color:var(--muted)}.customer-consent-detail{display:grid;gap:.25rem;padding:.85rem;border-left:5px solid #999;background:#eee}.customer-consent-detail.is-granted{border-color:#168044;background:#e4f8ea}.customer-consent-detail span{font-weight:900}.customer-pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin:1rem}.customer-pagination span{font-weight:800}@media(max-width:800px){.customers-hero{display:grid;align-items:stretch}.customer-data-grid{grid-template-columns:1fr 1fr}.customer-card>summary{grid-template-columns:1fr auto}.customer-card>summary>.customer-consent{grid-column:1}.customer-card>summary>strong{grid-column:2;grid-row:1}.customer-card>summary>i{grid-column:2;grid-row:2}}@media(max-width:520px){.customer-data-grid{grid-template-columns:1fr}.customer-card>summary{gap:.5rem}.customer-search{display:grid;grid-template-columns:1fr 1fr}.customer-search label{grid-column:1/-1}}
.print-queues-section{margin:1rem 0}.print-queue-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.print-queue-card{padding:1rem;border:2px solid #1c6b57;border-radius:14px;background:#f4fff9}.print-queue-card.is-disabled{border-color:#bbb;background:#f1f1f1;opacity:.75}.print-queue-card header{display:flex;justify-content:space-between;gap:1rem;align-items:start}.print-queue-card header span{font-size:.67rem;font-weight:900;letter-spacing:.08em;color:#1c6b57}.print-queue-card h3{margin:.2rem 0;font-size:1.35rem}.print-queue-card header b{padding:.28rem .45rem;border-radius:6px;background:#1c6b57;color:#fff;font-size:.66rem}.print-queue-card.is-disabled header b{background:#777}.print-queue-card>p{color:var(--muted)}.print-queue-actions{display:flex;gap:.5rem;flex-wrap:wrap}.print-queue-actions form{margin:0}.print-queue-card details{margin-top:.8rem;border-top:1px solid var(--line);padding-top:.7rem}.print-queue-card details summary{cursor:pointer;font-weight:800}.print-queue-card details form{margin-top:.8rem}.print-queue-creator{margin:1rem 0}.print-category-queues{margin:1.25rem 0;padding:1rem;border:1px solid var(--line);border-radius:14px;background:#faf9f6}.print-category-queue-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.65rem}.print-category-queue-grid label{display:grid;grid-template-columns:1fr minmax(105px,auto);align-items:center;gap:.6rem;padding:.65rem;border-radius:9px;background:#fff;font-weight:800}.print-category-queue-grid select{min-width:0;padding:.55rem;border:1px solid var(--line);border-radius:8px;background:#fff}

/* Pedidos de barra plegables y encargos para recoger. */
.order-card{padding:0;overflow:hidden}.order-card-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem .65rem;align-items:center;padding:.75rem;cursor:pointer;list-style:none}.order-card-summary::-webkit-details-marker{display:none}.order-card-summary>span{display:grid;min-width:0}.order-card-summary>span>strong{font-family:"Fraunces",Georgia,serif;font-size:1.25rem}.order-card-summary small{color:var(--muted);font-size:.66rem;line-height:1.25;overflow-wrap:anywhere}.order-card-summary .order-card-total{font-size:.86rem;text-align:right;white-space:nowrap}.order-unit-count{color:var(--muted);font-size:.67rem}.order-card-summary i{justify-self:end;color:var(--green);font-size:.67rem;font-style:normal;font-weight:900}.order-card-summary i::after{content:" ↓"}.order-card[open] .order-card-summary{border-bottom:1px solid var(--line);background:#f7f4ed}.order-card[open] .order-card-summary i{font-size:0}.order-card[open] .order-card-summary i::after{content:"Ocultar ↑";font-size:.67rem}.order-card-content{padding:0 .85rem .85rem}.order-card.is-new .order-card-summary>span>strong{color:#9a1e00}.order-pickup-contact{display:grid;gap:.2rem;margin:.65rem 0;padding:.7rem;border:2px solid #d18813;border-radius:9px;background:#fff1c9;font-size:.78rem;overflow-wrap:anywhere}.order-pickup-contact b{font-size:.86rem}.order-pickup-contact span{color:#684b14}.checkout-service-notice{display:grid;gap:.2rem;padding:.85rem;border:2px solid #d18813;border-radius:11px;background:#fff1c9}.checkout-service-notice span{color:#684b14;font-size:.78rem}.marketing-check{padding:.8rem;border:1px solid #bfd5c7;border-radius:10px;background:#f0f7f2;line-height:1.45}.marketing-check strong{color:var(--green)}

/* Copias privadas por establecimiento. */
.backup-shell{display:grid;gap:1rem}.backup-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);gap:1rem;align-items:stretch}.backup-intro>div{padding:1.4rem;border:1px solid var(--line);border-radius:18px;background:var(--paper)}.backup-intro h2{margin-bottom:.45rem;font-size:clamp(2rem,5vw,3rem)}.backup-intro p{max-width:720px;margin:0;color:var(--muted);line-height:1.5}.backup-retention{display:grid;place-content:center;gap:.2rem;text-align:center;background:var(--green)!important;color:#fff}.backup-retention strong{font-family:"Fraunces",Georgia,serif;font-size:2.6rem}.backup-retention span{font-weight:900}.backup-retention small{margin-top:.35rem;color:#d6e1dc;line-height:1.35}.backup-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.backup-action-card{display:flex;flex-direction:column;margin:0}.backup-action-card>p{line-height:1.5}.backup-action-card>form:first-of-type{margin-top:auto}.backup-enable{padding:.8rem;border:1px solid #b9d2c2;border-radius:10px;background:#edf5f0;color:var(--green)!important;font-weight:900}.backup-schedule-status{display:grid;gap:.18rem;margin-top:1rem;padding:.8rem;border-radius:10px;background:#f3f0e9}.backup-schedule-status span,.backup-schedule-status small{color:var(--muted);font-size:.72rem}.backup-error{display:grid;gap:.25rem;margin-bottom:0}.backup-error span{font-size:.75rem;overflow-wrap:anywhere}.backup-private-badge{padding:.45rem .65rem;border-radius:999px;background:#e7f1eb;color:#28563c;font-size:.7rem;font-weight:900}.backup-list{display:grid;gap:.65rem}.backup-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.9rem;border:1px solid var(--line);border-radius:12px;background:#faf8f3}.backup-file-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#e5eee9;font-size:1.35rem}.backup-file-info{display:grid;min-width:0;gap:.18rem}.backup-file-info span,.backup-file-info small{color:var(--muted);font-size:.72rem;overflow-wrap:anywhere}.backup-file-actions{display:flex;align-items:center;gap:.45rem}.backup-file-actions form{margin:0}.backup-missing{max-width:130px;color:var(--red);font-size:.7rem;font-weight:800}.backup-cron-note,.backup-privacy-note{margin:0;line-height:1.45}.backup-cron-note{border:1px solid #a9cdb7;background:#edf7f0;color:#28563c}.backup-cron-note p,.backup-privacy-note p{margin:.35rem 0 0}.backup-cron-note code,.backup-privacy-note code{padding:.1rem .25rem;border-radius:4px;background:#ffffff99;overflow-wrap:anywhere}.backup-privacy-note{border:1px solid #d89b24}.empty-state{padding:2rem;text-align:center}.empty-state p{margin:.4rem 0 0;color:var(--muted)}
@media(max-width:800px){.backup-intro,.backup-config-grid{grid-template-columns:1fr}.backup-retention{min-height:190px}.backup-list article{grid-template-columns:auto minmax(0,1fr)}.backup-file-actions{grid-column:1/-1;width:100%}.backup-file-actions .button,.backup-file-actions form{flex:1}.backup-file-actions form .button{width:100%}}
@media(max-width:480px){.backup-list article{grid-template-columns:1fr}.backup-file-icon{width:42px;height:42px}.backup-file-actions{align-items:stretch;flex-direction:column}.backup-file-actions .button,.backup-file-actions form{width:100%}.backup-private-badge{width:max-content;max-width:100%}}

/* Impresión automática y estación QZ Tray. */
.printing-shell{display:grid;gap:1rem}.printing-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem;border:2px solid #d59b32;border-radius:18px;background:#fff2d8}.printing-hero.is-enabled{border-color:#3d9a62;background:#e7f6ec}.printing-hero h2{margin:.15rem 0 .35rem}.printing-hero p{max-width:760px;margin:0;color:var(--muted);line-height:1.5}.printing-hero>strong{padding:.65rem .8rem;border-radius:999px;background:#795019;color:#fff;font-size:.72rem;letter-spacing:.06em}.printing-hero.is-enabled>strong{background:#1d6c40}.printing-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.printing-config-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:1rem;align-items:start}.printing-settings-form{gap:.85rem}.printing-master,.printing-option-list label{display:flex;align-items:flex-start;gap:.75rem;padding:.9rem;border:1px solid #b9d2c2;border-radius:11px;background:#edf6f0}.printing-master input,.printing-option-list input{flex:0 0 auto;margin-top:.2rem}.printing-master span,.printing-option-list span{display:grid;gap:.2rem}.printing-master small,.printing-option-list small{color:var(--muted);line-height:1.4}.printing-option-list{display:grid;gap:.55rem;margin:0;padding:.85rem;border:1px solid var(--line);border-radius:12px}.printing-option-list legend{padding:0 .4rem;color:var(--green);font-size:.72rem;font-weight:900}.printing-option-list label{padding:.7rem;background:#fafbf8}.printing-signing{border:1px solid var(--line);border-radius:11px;background:#f7f5ef}.printing-signing>summary{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.8rem;cursor:pointer;font-weight:900;list-style:none}.printing-signing>summary::-webkit-details-marker{display:none}.printing-signing>summary b{padding:.3rem .45rem;border-radius:999px;background:#ece8df;color:var(--muted);font-size:.62rem}.printing-signing>div{display:grid;gap:.75rem;padding:0 .8rem .8rem}.printing-signing p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}.printing-signing textarea{font-family:ui-monospace,monospace;font-size:.68rem}.printing-guide{display:grid;gap:.8rem}.printing-guide ol{display:grid;gap:.6rem;margin:0;padding-left:1.25rem;line-height:1.45}.printing-guide .notice{margin:0}.printing-guide .notice p{margin:.35rem 0 0}.printing-compat{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.printing-compat span{display:grid;place-items:center;gap:.25rem;padding:.7rem;border:1px solid var(--line);border-radius:10px;background:#f8f6f1;font-size:.7rem;font-weight:900}.printing-compat b{font-size:1.2rem}.print-job-list{display:grid;gap:.55rem}.print-job{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.8rem;border:1px solid var(--line);border-left:5px solid #8f918d;border-radius:10px;background:#faf8f3}.print-job.is-queued{border-left-color:#d18a13}.print-job.is-processing{border-left-color:#2879bd}.print-job.is-printed{border-left-color:#2e8e55}.print-job.is-failed{border-left-color:#c53c2b;background:#fff2ef}.print-job-icon{font-size:1.25rem}.print-job>div:nth-child(2){display:grid;min-width:0;gap:.16rem}.print-job>div:nth-child(2) span,.print-job>div:nth-child(2) small{color:var(--muted);font-size:.68rem;overflow-wrap:anywhere}.print-job>div:nth-child(2) small{color:#a52a1d}.print-job>b{padding:.28rem .45rem;border-radius:999px;background:#ece8df;font-size:.62rem;text-transform:uppercase}.print-job-actions form{margin:0}.print-job-actions .button{min-height:34px;padding:.45rem .6rem;font-size:.68rem}
.print-station-shell{display:grid;gap:1rem;width:min(1180px,calc(100% - 2rem));margin:1.2rem auto 2rem}.station-status-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.25rem;border:2px solid #9c9e99;border-radius:18px;background:#f5f3ed;box-shadow:var(--shadow)}.station-status-card h2{margin:.1rem 0 .25rem}.station-status-card p{margin:0;color:var(--muted)}.station-light{width:24px;height:24px;border-radius:50%;background:#8c8f8b;box-shadow:0 0 0 6px rgba(80,80,80,.1)}.station-status-card>strong{padding:.55rem .7rem;border-radius:999px;background:#696b68;color:#fff;font-size:.68rem}.station-status-card.is-running,.station-status-card.is-ready{border-color:#3d9a62;background:#e7f6ec}.station-status-card.is-running .station-light,.station-status-card.is-ready .station-light{background:#22a957;box-shadow:0 0 0 7px rgba(34,169,87,.14),0 0 20px rgba(34,169,87,.5)}.station-status-card.is-running>strong,.station-status-card.is-ready>strong{background:#1d6c40}.station-status-card.is-connecting,.station-status-card.is-printing{border-color:#2f7fba;background:#e8f4fc}.station-status-card.is-connecting .station-light,.station-status-card.is-printing .station-light{background:#2789cb;box-shadow:0 0 0 7px rgba(39,137,203,.14),0 0 20px rgba(39,137,203,.5);animation:stationPulse 1s infinite}.station-status-card.is-connecting>strong,.station-status-card.is-printing>strong{background:#236b9c}.station-status-card.is-error{border-color:#c53c2b;background:#fff0ed}.station-status-card.is-error .station-light{background:#d13f2e;box-shadow:0 0 0 7px rgba(209,63,46,.14);animation:stationPulse .65s infinite}.station-status-card.is-error>strong{background:#a82c20}.station-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.75fr);gap:1rem;align-items:start}.station-form-actions{display:grid;grid-template-columns:1fr auto;gap:.6rem}.station-signing{display:grid;gap:.15rem;margin:1rem 0 0;padding:.75rem;border:1px solid #d5a75e;border-radius:10px;background:#fff2d8;color:#754016}.station-signing.is-ready{border-color:#83bb96;background:#e7f6ec;color:#205b39}.station-signing span{font-size:.7rem;line-height:1.4}.station-activity{display:grid;gap:.8rem}.station-current{display:grid;gap:.2rem;min-height:116px;padding:1rem;border:2px solid #c8d9d1;border-radius:12px;background:#edf5f1}.station-current span,.station-current small{color:var(--muted);font-size:.7rem}.station-current strong{font-size:1rem;overflow-wrap:anywhere}.station-counter{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem;border-radius:10px;background:var(--green);color:#fff}.station-counter span{font-size:.75rem}.station-counter strong{font-size:1.5rem}.station-log{display:grid;gap:.35rem;max-height:235px;overflow:auto}.station-log p{display:grid;grid-template-columns:auto 1fr;gap:.5rem;margin:0;padding:.55rem;border-bottom:1px solid var(--line);font-size:.68rem;overflow-wrap:anywhere}.station-log p span{color:var(--muted)}.station-log p.ok{color:#1d6c40}.station-log p.error{color:#a82c20}.station-help{display:grid;gap:1rem}.station-platforms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.station-platforms article{padding:1rem;border:1px solid var(--line);border-radius:12px;background:#faf8f3}.station-platforms strong{font-size:1.05rem}.station-platforms p{margin:.35rem 0 0;color:var(--muted);font-size:.76rem;line-height:1.45}.station-help .notice{margin:0}.station-help .notice p{margin:.35rem 0 0}@keyframes stationPulse{50%{opacity:.45;transform:scale(.82)}}
@media(max-width:900px){.printing-config-grid,.station-grid{grid-template-columns:1fr}.printing-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.station-platforms{grid-template-columns:1fr}.print-job{grid-template-columns:auto minmax(0,1fr) auto}.print-job-actions{grid-column:1/-1}.print-job-actions .button,.print-job-actions form{width:100%}}
@media(max-width:600px){.printing-hero{align-items:flex-start;flex-direction:column}.printing-stats{grid-template-columns:1fr 1fr}.printing-compat{grid-template-columns:1fr}.print-job{grid-template-columns:1fr}.print-job-icon{display:none}.print-job>b{width:max-content}.station-status-card{grid-template-columns:auto minmax(0,1fr)}.station-status-card>strong{grid-column:1/-1;width:max-content}.station-form-actions{grid-template-columns:1fr}.station-form-actions .button{width:100%}}
.printing-master input,.printing-option-list input{width:18px!important;height:18px!important;flex:0 0 18px}.printing-master span,.printing-option-list span{min-width:0}
.station-emergency{margin:1rem 0 0}.station-emergency p{margin:.35rem 0 0;line-height:1.45}
.printing-manual-rules{margin:0}.printing-manual-rules p{margin:.35rem 0 0;line-height:1.45}

/* Identidad visual por establecimiento. */
.store-brand-lockup{display:flex;align-items:center;gap:.85rem;min-width:0}.store-brand-lockup>div{min-width:0}.store-brand-logo{display:block;flex:0 0 58px;width:58px;height:58px;padding:4px;border:1px solid var(--line);border-radius:14px;background:#fff;object-fit:contain}.store-brand-lockup-customer{align-items:center;gap:clamp(.9rem,2.5vw,1.6rem)}.store-brand-lockup-customer .store-brand-logo{flex-basis:clamp(78px,10vw,118px);width:clamp(78px,10vw,118px);height:clamp(78px,10vw,118px);padding:7px;border-color:#ffffff44;border-radius:22px;background:#fffffffa;box-shadow:0 12px 34px rgba(0,0,0,.18)}.store-brand-lockup-customer h1{margin-bottom:.65rem}.customer-brand-content{max-width:780px!important}.branding-shell{display:grid;gap:1rem}.branding-preview-card{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:1rem;padding:1.5rem;border-radius:22px;background:var(--green);color:#fff}.branding-live-lockup{display:flex;align-items:center;gap:1.2rem;min-width:0}.branding-live-lockup h2{margin:.15rem 0 .35rem;font-size:clamp(2.1rem,5vw,3.8rem);overflow-wrap:anywhere}.branding-live-lockup p:last-child{max-width:620px;margin:0;color:#d6e1dc;line-height:1.45}.branding-logo-frame{display:grid;place-items:center;flex:0 0 clamp(110px,15vw,170px);width:clamp(110px,15vw,170px);height:clamp(110px,15vw,170px);padding:10px;border-radius:25px;background:#fff;box-shadow:0 15px 35px rgba(0,0,0,.18);overflow:hidden}.branding-logo-frame img{width:100%;height:100%;object-fit:contain}.branding-logo-frame span{display:grid;place-items:center;width:100%;height:100%;border-radius:18px;background:#e7eee9;color:var(--green);font-family:"Fraunces",Georgia,serif;font-size:4rem;font-weight:900}.branding-favicon-preview{display:grid;place-content:center;justify-items:center;gap:.5rem;padding:1rem;border:1px solid #ffffff38;border-radius:16px;background:#ffffff0d;text-align:center}.branding-favicon-preview>span{font-size:.67rem;font-weight:900;letter-spacing:.13em}.branding-favicon-preview>div{display:grid;place-items:center;width:70px;height:70px;padding:6px;border-radius:15px;background:#fff}.branding-favicon-preview img{width:100%;height:100%;object-fit:contain}.branding-favicon-preview small{color:#d6e1dc;line-height:1.35}.branding-config-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);gap:1rem;align-items:start}.branding-upload-help{margin:0}.branding-upload-help p{margin:.3rem 0 0;line-height:1.45}.branding-uses ul{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}.branding-uses li{display:flex;align-items:flex-start;gap:.7rem;padding:.75rem;border:1px solid var(--line);border-radius:11px;background:#faf8f3}.branding-uses li>span{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:50%;background:#dff3e6;color:#17643b;font-weight:900}.branding-uses li>div{display:grid;gap:.15rem}.branding-uses small{color:var(--muted);line-height:1.4}
@media(max-width:800px){.branding-preview-card,.branding-config-grid{grid-template-columns:1fr}.branding-favicon-preview{grid-template-columns:auto auto 1fr;justify-content:start;text-align:left}.branding-favicon-preview>span{grid-column:1/-1}.branding-live-lockup{align-items:flex-start}.store-brand-lockup-customer{align-items:flex-start}.store-brand-lockup-customer .store-brand-logo{flex-basis:78px;width:78px;height:78px;border-radius:17px}.customer-header h1{font-size:clamp(2.4rem,11vw,3.6rem)}}
@media(max-width:520px){.branding-live-lockup{display:grid}.branding-logo-frame{width:108px;height:108px}.branding-preview-card{padding:1rem}.store-brand-lockup .store-brand-logo{flex-basis:48px;width:48px;height:48px;border-radius:11px}.store-brand-lockup-customer .store-brand-logo{flex-basis:68px;width:68px;height:68px}.store-brand-lockup-customer{gap:.7rem}}
.public-card-brand{display:flex;align-items:center;justify-content:center;gap:.65rem;margin:-.35rem 0 1.35rem;color:var(--green)}.public-card-brand img{display:block;width:52px;height:52px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#fff;object-fit:contain}.public-card-brand strong{max-width:min(360px,70vw);font-family:"Fraunces",Georgia,serif;font-size:1.25rem;line-height:1.05;overflow-wrap:anywhere}.admin-business-data{margin-top:1rem}

/* Buscadores de carta y catálogo administrativo. */
[data-product-filter-item][hidden],[data-product-filter-section][hidden]{display:none!important}.product-filter-panel{display:grid;grid-template-columns:minmax(230px,1.5fr) repeat(2,minmax(150px,.65fr)) auto auto;align-items:end;gap:.7rem;width:min(1200px,calc(100% - 2rem));margin:1.25rem auto 0;padding:1rem;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:0 7px 20px rgba(23,32,28,.07)}.product-filter-panel label{display:grid;gap:.35rem;min-width:0}.product-filter-panel label>span{color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase}.product-filter-panel input,.product-filter-panel select{width:100%;min-width:0;padding:.75rem;border:1px solid var(--line);border-radius:9px;background:#fff}.product-filter-result{align-self:center;min-width:82px;color:var(--green);font-size:.76rem;text-align:right}.product-filter-empty{grid-column:1/-1;margin:0;padding:.7rem;border-radius:9px;background:#fff1c9;color:#5b3f00;text-align:center;font-weight:800}.admin-product-filters{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(135px,.65fr)) auto auto;width:100%;margin:1rem 0}.product-admin-title{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem}.product-admin-title>strong{font-size:1rem}.product-price-badge{display:inline-flex;padding:.35rem .58rem;border-radius:999px;background:var(--green);color:#fff;font-size:.9rem;line-height:1}.product-options-link{padding:.5rem .65rem;border-radius:8px;background:#e8f1ec;color:var(--green);font-size:.74rem;font-weight:900;text-decoration:none}

/* Opciones y observaciones configurables por producto. */
.options-product-price{margin:.4rem 0 0;color:var(--muted)}.options-product-price strong{color:var(--green)}.options-admin-shell{max-width:1200px}.options-help{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:1rem}.options-help>div{display:flex;align-items:flex-start;min-width:0;gap:.7rem;padding:1rem;border:1px solid #b9d2c2;border-radius:13px;background:#edf6f0}.options-help span{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--green);color:#fff;font-weight:900}.options-help p{min-width:0;margin:0;overflow-wrap:anywhere;line-height:1.4}.option-admin-group>.admin-heading{align-items:center}.option-admin-group.is-inactive{opacity:.7}.option-group-usage{margin:.35rem 0 0;color:var(--muted);font-size:.78rem}.option-group-management{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.option-group-management form{margin:0}.option-group-management details{position:relative}.option-group-management summary{cursor:pointer;list-style:none}.option-inline-editor{position:absolute;z-index:10;top:3.2rem;right:0;width:min(390px,90vw);padding:1rem;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:var(--shadow)}.option-choice-row>div:first-child{display:grid}.option-choice-row .row-actions details{position:relative}.product-option-badge{display:inline-flex;padding:.35rem .58rem;border:1px solid var(--line);border-radius:999px;background:#f1eee7;color:var(--muted);font-size:.72rem;line-height:1}.product-option-badge.has-options{border-color:#c3a152;background:#fff0bd;color:#624600}.option-empty-state{display:grid;place-items:center;gap:.65rem;min-height:160px;text-align:center}.product-option-assignment-shell{max-width:1200px}.assignment-intro{display:flex;align-items:center;justify-content:space-between;gap:1rem}.assignment-intro h2{margin:.2rem 0}.assignment-intro>strong{display:grid;place-items:center;min-width:92px;padding:.85rem;border-radius:999px;background:var(--green);color:#fff}.option-assignment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.option-assignment-card{display:grid;gap:1rem;min-width:0;padding:1.15rem;border:2px solid var(--line);border-radius:16px;background:var(--paper)}.option-assignment-card.is-assigned{border-color:#2d8150;background:#eff8f2}.option-assignment-card.is-disabled{opacity:.68}.option-assignment-status{width:max-content;max-width:100%;padding:.3rem .5rem;border-radius:999px;background:#ece8df;color:var(--muted);font-size:.64rem;font-weight:900}.option-assignment-card.is-assigned .option-assignment-status{background:#247446;color:#fff}.option-assignment-card h2{margin:.2rem 0}.option-choice-preview{min-height:1.4em;margin:.45rem 0;overflow-wrap:anywhere;color:#37463e;line-height:1.45}.option-assignment-card small{color:var(--muted)}.status-waiter-button{background:#f0b72f;color:#2f2200}.status-waiter-button.is-called{background:#d8efdf;color:#1e5c39}.status-waiter-button:disabled{background:#e6e2d8;color:#747773;cursor:not-allowed}.status-waiter-feedback{color:var(--muted)}.status-waiter-feedback.is-success{color:#1e6b40}.status-waiter-feedback.is-error{color:#9c3027}.status-waiter-feedback.is-disabled{color:#747773}

@media(max-width:900px){.product-filter-panel,.admin-product-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.product-filter-search{grid-column:1/-1}.product-filter-result{text-align:left}.options-help{grid-template-columns:1fr}}
@media(max-width:900px){.options-help{grid-template-columns:1fr}.option-assignment-grid{grid-template-columns:1fr}}
@media(max-width:600px){.product-filter-panel,.admin-product-filters{grid-template-columns:1fr}.product-filter-search{grid-column:auto}.product-filter-reset{width:100%}.product-filter-result{text-align:center}.product-admin-title{justify-content:flex-start;width:100%}.product-price-badge{font-size:1rem}.product-option-badge{flex-basis:100%;width:max-content}.option-group-management{align-items:stretch;flex-direction:column;width:100%}.option-group-management details,.option-group-management form,.option-group-management .button{width:100%}.option-inline-editor{position:fixed;z-index:90;inset:auto .5rem .5rem;width:auto;max-height:calc(100vh - 1rem);overflow:auto}.assignment-intro{align-items:flex-start;flex-direction:column}.assignment-intro>strong{min-width:0}}
.clear-cart-button{display:block;margin:.7rem 0 0 auto;padding:.55rem .75rem;border:1px solid #d9a29d;border-radius:8px;background:#fff6f5;color:#9b3028;font-size:.76rem;font-weight:900}.clear-cart-button[hidden]{display:none}

/* Barra adaptable: cinco estados sin desbordamiento y disposición específica para tablet. */
.dashboard-page{max-width:100%;overflow-x:hidden}.orders-board{width:100%;min-width:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;padding:0 .75rem 1.25rem;overflow:visible}.order-column{min-width:0;min-height:0;padding:.65rem;border-radius:13px}.order-column>header{gap:.35rem}.order-column h2{min-width:0;overflow-wrap:anywhere}.order-card,.order-card-summary,.order-card-content,.order-actions{min-width:0}.order-card-summary{gap:.28rem .45rem;padding:.68rem}.order-card-summary>span>strong{font-size:1.1rem}.order-card-summary .order-card-total{font-size:.78rem}.order-card-content{padding:0 .68rem .68rem}.order-card ul{margin:.72rem 0}.order-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.order-actions a,.order-actions button{min-width:0;overflow-wrap:anywhere;line-height:1.2}
@media(max-width:1180px){.dashboard-header{gap:.8rem;padding:.8rem 1rem}.dashboard-header h1{font-size:1.45rem}.dashboard-header .store-brand-logo{flex-basis:46px;width:46px;height:46px}.header-actions{gap:.38rem}.header-actions .button{min-height:38px;padding:.55rem .68rem;font-size:.68rem}.bar-toolbar{padding:.45rem .75rem}.orders-board{gap:.5rem;padding:0 .5rem 1rem}.order-column{padding:.5rem;border-radius:11px}.order-column>header{padding:.2rem .2rem .55rem}.order-column h2{font-size:.86rem}.order-column>header span{min-width:23px;height:23px;font-size:.7rem}.order-list{gap:.5rem}.order-card-summary{grid-template-columns:minmax(0,1fr) auto;padding:.58rem}.order-card-summary>span>strong{font-size:1rem}.order-card-summary small{font-size:.58rem}.order-unit-count,.order-card-summary i{font-size:.58rem}.order-card-summary .order-card-total{font-size:.7rem}.order-card-content{padding:0 .58rem .58rem}.order-card li{font-size:.78rem}.order-actions a,.order-actions button{padding:.45rem .35rem;font-size:.62rem}}
@media(min-width:901px) and (max-width:1180px){.dashboard-header{align-items:center;flex-direction:row}.header-actions{justify-content:flex-end;width:auto}.header-actions .button{flex:0 1 auto}}
@media(min-width:701px) and (max-width:900px){.orders-board{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-header{align-items:flex-start;flex-direction:row}.dashboard-header>.store-brand-lockup{flex:1}.header-actions{justify-content:flex-end;width:auto}.header-actions .button{flex:0 1 auto}.order-column{min-height:150px}}
@media(max-width:700px){.orders-board{grid-template-columns:minmax(0,1fr);padding:0 .5rem 1rem}.order-column{min-height:0}.dashboard-header{padding:.75rem}.bar-toolbar{overflow:visible;white-space:normal}.order-card-summary>span>strong{font-size:1.15rem}}

/* Páginas legales, pie público y aviso de almacenamiento técnico. */
.public-legal-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;width:100%;padding:1.35rem max(5vw,24px);border-top:1px solid var(--line);background:#102f28;color:#fff}.public-legal-footer>div{display:grid;max-width:420px;gap:.25rem}.public-legal-footer>div span{color:#bdd0c8;font-size:.72rem;line-height:1.4}.public-legal-footer nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.45rem 1rem}.public-legal-footer a{color:#fff;font-size:.72rem;font-weight:800}.cookie-notice{position:fixed;z-index:120;right:1rem;bottom:1rem;left:1rem;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;width:min(980px,calc(100% - 2rem));margin:auto;padding:1rem 1.15rem;border:2px solid #c8952d;border-radius:15px;background:#fff8df;box-shadow:0 18px 55px rgba(16,31,25,.28);color:#302300}.cookie-notice[hidden]{display:none}.cookie-notice>div{display:grid;gap:.2rem}.cookie-notice p{margin:0;font-size:.72rem;line-height:1.4}.cookie-notice a{font-size:.72rem;font-weight:900}.cookie-notice button{padding:.65rem .8rem;border:0;border-radius:9px;background:var(--green);color:#fff;font-weight:900}.legal-page{background:var(--cream)}.legal-navigation{position:sticky;z-index:8;top:0;display:flex;gap:.45rem;padding:.8rem max(5vw,24px);overflow:auto;border-bottom:1px solid var(--line);background:#f5f1e8ed;backdrop-filter:blur(12px)}.legal-navigation a{padding:.55rem .75rem;border-radius:999px;text-decoration:none;font-size:.74rem;font-weight:900;white-space:nowrap}.legal-navigation a.active{background:var(--green);color:#fff}.legal-shell{width:min(940px,calc(100% - 2rem));padding-top:1.5rem}.legal-shell section{padding:1.5rem;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 6px 20px rgba(23,32,28,.05)}.legal-shell h2{font-size:clamp(2rem,5vw,3rem)}.legal-shell h3{margin:1.4rem 0 .55rem;font-size:1.05rem}.legal-shell ol,.legal-shell ul{display:grid;gap:.55rem;padding-left:1.35rem;line-height:1.65}.legal-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:1.2rem 0}.legal-identity>div{display:grid;gap:.2rem;padding:.8rem;border-radius:10px;background:#f1eee7;overflow-wrap:anywhere}.legal-identity dt{color:var(--muted);font-size:.64rem;font-weight:900;text-transform:uppercase}.legal-identity dd{margin:0;font-weight:800;line-height:1.45}.legal-cookie-table{display:grid;gap:.55rem}.legal-cookie-table>div{display:grid;grid-template-columns:minmax(140px,.45fr) minmax(0,1fr) auto;gap:.8rem;padding:.85rem;border:1px solid var(--line);border-radius:10px;background:#faf8f3}.legal-cookie-table span,.legal-cookie-table small{font-size:.76rem;line-height:1.4}.legal-cookie-table small{color:var(--muted)}.legal-updated{color:var(--muted);font-size:.72rem}.checkout-legal-summary{display:grid;gap:.25rem;padding:.8rem;border:1px solid #b9d2c2;border-radius:10px;background:#edf6f0}.checkout-legal-summary span{color:#3f5c50;font-size:.72rem;line-height:1.4}.status-page,.public-account-page{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;place-items:initial}.status-page>.status-card,.public-account-page>.login-card{align-self:center;justify-self:center}.status-page>.public-legal-footer,.public-account-page>.public-legal-footer{align-self:end;border-radius:14px}.legal-admin-shell{display:grid;max-width:1280px;gap:1rem}.legal-readiness{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.65fr);gap:1.25rem;padding:1.35rem;border:2px solid #d49b37;border-radius:18px;background:#fff2d8}.legal-readiness.is-complete{border-color:#3e9661;background:#e6f5eb}.legal-readiness h2{margin:.2rem 0 .4rem}.legal-readiness p{margin:0;color:var(--muted);line-height:1.45}.legal-readiness ul{display:grid;gap:.35rem;margin:0;padding:0;list-style:none}.legal-readiness li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;padding:.45rem .6rem;border-radius:8px;background:#ffffff9c;font-size:.76rem;font-weight:800}.legal-readiness li>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#bc392c;color:#fff}.legal-readiness li.ok>span{background:#26824e}.legal-readiness li a{font-size:.67rem}.legal-advice-notice{margin:0}.legal-admin-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:1rem;align-items:start}.legal-settings-form textarea{line-height:1.45}.legal-settings-form label small{line-height:1.4}.legal-review-guide{display:grid;gap:1rem}.legal-review-guide ol{display:grid;gap:.7rem;margin:0;padding-left:1.25rem;line-height:1.45}.legal-source-links{display:grid;gap:.5rem;padding:1rem;border:1px solid var(--line);border-radius:11px;background:#f6f3ec}.legal-source-links a{color:var(--green);font-size:.76rem;font-weight:900}
@media(max-width:800px){.public-legal-footer{display:grid}.public-legal-footer nav{justify-content:flex-start}.cookie-notice{grid-template-columns:1fr 1fr}.cookie-notice>div{grid-column:1/-1}.legal-identity,.legal-readiness,.legal-admin-grid{grid-template-columns:1fr}.legal-cookie-table>div{grid-template-columns:1fr}.status-page,.public-account-page{padding:.7rem}.status-page>.public-legal-footer,.public-account-page>.public-legal-footer{margin-top:1rem}.legal-shell section{padding:1rem}}
@media(max-width:480px){.cookie-notice{grid-template-columns:1fr}.cookie-notice a,.cookie-notice button{width:100%;text-align:center}.public-legal-footer nav{display:grid;grid-template-columns:1fr 1fr}.legal-navigation{padding:.65rem}}

/* Redsys y selección de pasarela. */
.payment-provider-panel{display:grid;gap:.85rem;margin:0;padding:1rem;border:1px solid var(--line);border-radius:13px;background:#f8f6f1}.payment-provider-panel[hidden]{display:none}.payment-provider-panel>legend{padding:0 .45rem;color:var(--green);font-size:.76rem;font-weight:900}.payment-redirect-page{display:grid;place-items:center;min-height:100vh;padding:1rem;background:var(--green)}.payment-redirect-card{display:grid;gap:1rem;width:min(560px,100%);padding:clamp(1.5rem,5vw,3rem);border-radius:22px;background:var(--paper);box-shadow:var(--shadow);text-align:center}.payment-redirect-card h1{margin:0;font-size:clamp(2rem,7vw,3.2rem)}.payment-redirect-card>p{margin:0;line-height:1.55}.payment-redirect-card form{margin:0}.payment-redirect-lock{display:grid;place-items:center;width:62px;height:62px;margin:auto;border-radius:50%;background:#dff3e6;font-size:1.7rem}.payment-redirect-help{color:var(--muted);font-size:.72rem}.payment-redirect-card .notice{margin:0;text-align:left}
.public-legal-contact{max-width:260px;color:#bdd0c8;font-size:.72rem;line-height:1.4;overflow-wrap:anywhere}

/* Horario de ventas y cierre público de la carta. */
.sales-hours-shell{display:grid;max-width:1380px;gap:1rem}.sales-status-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem 1.6rem;border:2px solid;border-radius:18px}.sales-status-card.is-open{border-color:#2f9158;background:#e4f5e9}.sales-status-card.is-closed{border-color:#b73b32;background:#fde9e6}.sales-status-card h2{margin:.15rem 0 .35rem;font-size:clamp(1.8rem,4vw,2.7rem)}.sales-status-card p{margin:0;line-height:1.45}.sales-status-card small{display:block;margin-top:.45rem;color:var(--muted)}.sales-status-card>strong{padding:.7rem 1rem;border-radius:999px;background:#23824b;color:#fff;font-size:.76rem;letter-spacing:.12em}.sales-status-card.is-closed>strong{background:#a83229}.sales-quick-control{display:flex;align-items:center;justify-content:space-between;gap:1.2rem}.sales-quick-control h2{margin:.15rem 0 .35rem}.sales-quick-control p{margin:0}.sales-quick-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.sales-quick-actions form{margin:0}.sales-quick-actions button{min-height:44px}.sales-open-button{border:1px solid #237a48;background:#237a48;color:#fff}.sales-close-button{border:1px solid #a83229;background:#a83229;color:#fff}.sales-hours-form{display:grid;gap:1rem}.sales-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}.sales-mode-options>label{display:flex;align-items:flex-start;gap:.65rem;padding:1rem;border:1px solid var(--line);border-radius:12px;background:#faf8f3}.sales-mode-options input{margin-top:.25rem}.sales-mode-options span,.sales-manual-state span{display:grid;gap:.2rem}.sales-mode-options small,.sales-manual-state small{color:var(--muted);line-height:1.4}.sales-manual-state{display:flex;align-items:flex-start;gap:.7rem;margin-top:.8rem;padding:1rem;border:1px solid #d6a94c;border-radius:12px;background:#fff4d8}.sales-manual-state input{margin-top:.2rem}.weekly-hours-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.weekly-hours-heading h2{margin:.15rem 0 .35rem}.weekly-hours-heading p{margin:0;line-height:1.45}.weekly-hours-heading>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}.weekly-hours-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}.sales-day{min-width:0;padding:.9rem;border:1px solid var(--line);border-radius:13px;background:#f8f6f1}.sales-day legend{padding:0 .4rem;color:var(--green);font-family:"Fraunces",Georgia,serif;font-size:1.15rem;font-weight:900}.sales-time-slot{display:grid;grid-template-columns:minmax(105px,.8fr) repeat(2,minmax(110px,1fr));align-items:end;gap:.55rem;padding:.65rem;border-radius:9px;opacity:.55}.sales-time-slot+ .sales-time-slot{margin-top:.35rem}.sales-time-slot.is-active{background:#e9f3ed;opacity:1}.sales-time-slot label{display:grid;gap:.25rem;font-size:.68rem;font-weight:900}.sales-time-slot input[type="time"]{width:100%;min-width:0}.sales-slot-active{display:flex!important;align-items:center;gap:.45rem;min-height:42px}.sales-slot-active input{margin:0}.sales-hours-save{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:1rem;border-radius:12px;background:#edf3ef}.sales-hours-save p{max-width:760px;margin:0;font-size:.75rem;line-height:1.45}.sales-hours-save button{flex:0 0 auto}.sales-closed-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem auto 0;width:min(1180px,calc(100% - 2rem));padding:1rem 1.2rem;border:2px solid #b23a30;border-radius:15px;background:#fff0ed;color:#64201b;box-shadow:0 8px 25px rgba(91,28,23,.08)}.sales-closed-banner>div{display:grid;gap:.2rem}.sales-closed-banner strong{font-size:1.05rem}.sales-closed-banner span{line-height:1.4}.sales-closed-banner small{color:#7d504c;white-space:nowrap}.sales-closed-product{align-self:center;max-width:150px;padding:.55rem .7rem;border:1px solid #d7a8a3;border-radius:9px;background:#fff2f0;color:#8e3028;font-size:.7rem;font-weight:900;line-height:1.25;text-align:center}
@media(max-width:850px){.sales-quick-control,.weekly-hours-heading,.sales-hours-save{align-items:stretch;flex-direction:column}.sales-quick-actions,.weekly-hours-heading>div:last-child{justify-content:flex-start}.sales-mode-options,.weekly-hours-grid{grid-template-columns:1fr}.sales-hours-save button{width:100%}.sales-closed-banner{align-items:flex-start;flex-direction:column}.sales-closed-banner small{white-space:normal}}
@media(max-width:520px){.sales-status-card{align-items:flex-start;flex-direction:column;padding:1rem}.sales-quick-actions{display:grid;grid-template-columns:1fr;width:100%}.sales-quick-actions form,.sales-quick-actions button{width:100%}.sales-time-slot{grid-template-columns:1fr 1fr}.sales-slot-active{grid-column:1/-1}.sales-mode-options>label{padding:.8rem}}
