/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.text-align-left{text-align:left;}.text-align-right{text-align:right;}.text-align-center{text-align:center;}.text-align-justify{text-align:justify;}.align-left{float:left;}.align-right{float:right;}.align-center{display:block;margin-right:auto;margin-left:auto;}
.container-inline div,.container-inline label{display:inline-block;}.container-inline .details-wrapper{display:block;}.container-inline .hidden{display:none;}
.clearfix::after{display:table;clear:both;content:"";}
.hidden{display:none;}.visually-hidden{position:absolute !important;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;word-wrap:normal;}.visually-hidden.focusable:active,.visually-hidden.focusable:focus-within{position:static !important;overflow:visible;clip:auto;width:auto;height:auto;}.invisible{visibility:hidden;}
.js .js-hide{display:none;}.js-show{display:none;}.js .js-show{display:block;}@media (scripting:enabled){.js-hide.js-hide{display:none;}.js-show{display:block;}}
.progress{position:relative;}.progress__track{min-width:100px;max-width:100%;height:16px;margin-top:5px;border:1px solid;background-color:#fff;}.progress__bar{width:3%;min-width:3%;max-width:100%;height:16px;background-color:#000;}.progress__description,.progress__percentage{overflow:hidden;margin-top:0.2em;color:#555;font-size:0.875em;}.progress__description{float:left;}[dir="rtl"] .progress__description{float:right;}.progress__percentage{float:right;}[dir="rtl"] .progress__percentage{float:left;}.progress--small .progress__track{height:7px;}.progress--small .progress__bar{height:7px;background-size:20px 20px;}
.ajax-progress{display:inline-block;padding:1px 5px 2px 5px;}[dir="rtl"] .ajax-progress{float:right;}.ajax-progress-throbber .throbber{display:inline;padding:1px 6px 2px;background:transparent url(/core/misc/throbber-active.svg) no-repeat 0 center;}.ajax-progress-throbber .message{display:inline;padding:1px 5px 2px;}tr .ajax-progress-throbber .throbber{margin:0 2px;}.ajax-progress-bar{width:16em;}.ajax-progress-fullscreen{position:fixed;z-index:1261;top:48.5%;left:49%;width:24px;height:24px;padding:4px;opacity:0.9;border-radius:7px;background-color:#232323;background-image:url(/core/misc/loading-small.svg);background-repeat:no-repeat;background-position:center center;}[dir="rtl"] .ajax-progress-fullscreen{right:49%;left:auto;}
:root{--sagra2-accent:var(--color-primary,#b94a1a);--sagra2-accent-h:var(--color-primary-dark,#8f3712);--sagra2-surface:var(--color-surface,#f9f7f4);--sagra2-border:var(--color-border,#e0d8cc);--sagra2-radius:var(--border-radius,8px);--sagra2-success:var(--color-success,#2d6a4f);--sagra2-danger:var(--color-danger,#9b1c1c);--sagra2-warn:#b7791f;--sagra2-muted:var(--color-text-muted,#6b7280);--sagra2-shadow:0 2px 8px rgba(0,0,0,.07);}.sagra2-muted{color:var(--sagra2-muted);}.sagra2-empty{color:var(--sagra2-muted);font-style:italic;padding:1rem 0;}.sagra2-wrap{margin-left:auto;margin-right:auto;}.sagra2-wrap--1100{width:90%;}.sagra2-wrap--900{width:90%;max-width:900px;}.sagra2-wrap--600{width:90%;max-width:600px;}.sagra2-grid{display:grid;}.sagra2-grid--220{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));}.sagra2-grid--300{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));}.sagra2-grid--360{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));}.sagra2-breadcrumb{font-size:.875rem;color:var(--sagra2-muted);margin-bottom:.75rem;}.sagra2-breadcrumb a{color:var(--sagra2-accent);text-decoration:none;}.sagra2-breadcrumb a:hover{text-decoration:underline;}.sagra2-card{background:var(--color-bg,#fff);border:1.5px solid var(--sagra2-border);border-radius:var(--sagra2-radius);padding:1.25rem;box-shadow:var(--sagra2-shadow);margin-bottom:1rem;}.sagra2-card h3{font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--sagra2-muted);margin:0 0 .75rem;}.sagra2-card--info{background:var(--sagra2-surface);border-color:var(--sagra2-accent);}.sagra2-evento-card{transition:box-shadow .2s;}.sagra2-evento-card:hover{box-shadow:0 4px 18px rgba(0,0,0,.12);}.sagra2-evento-card.inattivo{opacity:.6;}a.sagra2-btn,button.sagra2-btn,.sagra2-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem 1rem;border-radius:var(--sagra2-radius);border:1.5px solid var(--sagra2-border);background:#fff;color:#2e1a0e;font-size:.875rem;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,transform .1s;}a.sagra2-btn:link,a.sagra2-btn:visited{color:#2e1a0e;text-decoration:none;}a.sagra2-btn:hover,button.sagra2-btn:hover,.sagra2-btn:hover{border-color:var(--sagra2-accent);background:var(--sagra2-surface);}.sagra2-btn:active{transform:scale(.97);}.sagra2-btn:disabled{opacity:.5;cursor:not-allowed;}a.sagra2-btn.sagra2-btn--primary,button.sagra2-btn.sagra2-btn--primary,.sagra2-btn.sagra2-btn--primary{background:var(--sagra2-accent);border-color:var(--sagra2-accent);color:#fff;}a.sagra2-btn.sagra2-btn--primary:link,a.sagra2-btn.sagra2-btn--primary:visited{color:#fff;}a.sagra2-btn.sagra2-btn--primary:hover,button.sagra2-btn.sagra2-btn--primary:hover,.sagra2-btn.sagra2-btn--primary:hover{background:var(--sagra2-accent-h);border-color:var(--sagra2-accent-h);color:#fff;}a.sagra2-btn.sagra2-btn--danger,button.sagra2-btn.sagra2-btn--danger,.sagra2-btn.sagra2-btn--danger{background:#fff;border-color:var(--sagra2-danger);color:var(--sagra2-danger);}a.sagra2-btn.sagra2-btn--danger:link,a.sagra2-btn.sagra2-btn--danger:visited{color:var(--sagra2-danger);}a.sagra2-btn.sagra2-btn--danger:hover,button.sagra2-btn.sagra2-btn--danger:hover,.sagra2-btn.sagra2-btn--danger:hover{background:var(--sagra2-danger);color:#fff;}.sagra2-btn--ghost{background:transparent;border-color:transparent;}.sagra2-btn--sm{padding:.3rem .7rem;font-size:.8125rem;}.sagra2-badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:700;background:var(--sagra2-surface);color:var(--sagra2-accent);border:1px solid var(--sagra2-border);}.sagra2-badge--ok{background:#e6f4ea;color:var(--sagra2-success);border-color:#b7dfc4;}.sagra2-badge--warn{background:#fdf3e0;color:var(--sagra2-warn);border-color:#f0dba8;}.sagra2-badge--muted{background:#eee;color:var(--sagra2-muted);border-color:#ddd;}.sagra2-table{width:100%;border-collapse:collapse;margin-bottom:1rem;}.sagra2-table th{text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--sagra2-muted);padding:.5rem .6rem;border-bottom:2px solid var(--sagra2-border);}.sagra2-table td{padding:.6rem;border-bottom:1px solid var(--sagra2-border);font-size:.9rem;vertical-align:top;}.sagra2-table tbody tr:hover{background:var(--sagra2-surface);}.sagra2-list-compact{margin:0;padding-left:1.1rem;font-size:.85rem;}.sagra2-wrap--1100 .sagra2-table td{font-size:.85rem;padding:.45rem .6rem;}.sagra2-wrap--1100 .sagra2-table th{padding:.4rem .6rem;}.sagra2-wrap--1100 .sagra2-card{padding:1rem;}.sagra2-wrap--1100 a.sagra2-btn,.sagra2-wrap--1100 button.sagra2-btn,.sagra2-wrap--1100 .sagra2-btn{font-size:.8125rem;padding:.45rem .9rem;}.sagra2-wrap--1100 .sagra2-turno-riga{padding:.45rem 0;font-size:.8125rem;}.sagra2-input{display:block;width:100%;padding:.5rem .65rem;border:1.5px solid var(--sagra2-border);border-radius:var(--sagra2-radius);font-size:.9rem;margin-bottom:.75rem;box-sizing:border-box;}.sagra2-input:focus{outline:none;border-color:var(--sagra2-accent);}.sagra2-error{color:var(--sagra2-danger);font-size:.85rem;}.sagra2-modal{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;}.sagra2-modal[hidden]{display:none;}.sagra2-modal__box{background:#fff;border-radius:var(--sagra2-radius);padding:1.5rem;max-width:480px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 30px rgba(0,0,0,.25);}.sagra2-modal__box label,.sagra2-form-cliente label,.sagra2-card label{display:block;font-size:.8rem;font-weight:600;margin-bottom:.25rem;color:var(--sagra2-muted);}.sagra2-disp-btn{border:1.5px solid var(--sagra2-border);border-radius:999px;padding:.2rem .7rem;font-size:.78rem;font-weight:700;cursor:pointer;background:#fff;transition:background .15s,color .15s,border-color .15s;}.sagra2-disp-btn.on{background:#e6f4ea;border-color:var(--sagra2-success);color:var(--sagra2-success);}.sagra2-disp-btn.off{background:#f3e7e7;border-color:var(--sagra2-danger);color:var(--sagra2-danger);}.sagra2-turno-riga{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem 0;border-bottom:1px solid var(--sagra2-border);font-size:.875rem;}.sagra2-turno-riga:last-child{border-bottom:none;}.sagra2-turno-riga__info strong{display:block;}.sagra2-turno-riga__actions{display:flex;gap:.35rem;}.sagra2-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:.6rem 1.4rem;border-radius:20px;color:#fff;font-size:.88rem;z-index:9999;transition:opacity .3s;pointer-events:none;}
.sagra2-pub{font-size:1rem;}.sagra2-tabs{display:flex;gap:.5rem;margin:1rem 0 1.25rem;border-bottom:2px solid var(--sagra2-border,#e0d8cc);}.sagra2-tab{padding:.7rem 1.2rem;border:none;background:none;font-size:.95rem;font-weight:700;color:var(--sagra2-muted,#6b7280);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s;}.sagra2-tab.active{color:var(--sagra2-accent,#b94a1a);border-bottom-color:var(--sagra2-accent,#b94a1a);}.sagra2-tab-panel[hidden]{display:none;}.sagra2-portata-riga{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.75rem;padding:.7rem 0;border-bottom:1px solid var(--sagra2-border,#e0d8cc);}.sagra2-portata-riga.esaurita{opacity:.5;}.sagra2-prezzo{font-weight:700;color:var(--sagra2-accent,#b94a1a);white-space:nowrap;}.sagra2-qty-stepper{display:flex;align-items:center;border:1.5px solid var(--sagra2-border,#e0d8cc);border-radius:999px;overflow:hidden;}.sagra2-qty-stepper button{width:32px;height:32px;border:none;background:#fff;font-size:1.1rem;cursor:pointer;line-height:1;}.sagra2-qty-stepper button:hover{background:var(--sagra2-surface,#f9f7f4);}.sagra2-qty-input{width:42px;text-align:center;border:none;border-left:1px solid var(--sagra2-border,#e0d8cc);border-right:1px solid var(--sagra2-border,#e0d8cc);height:32px;font-size:.9rem;}.sagra2-turno-card{display:flex;flex-direction:column;gap:.15rem;text-align:left;padding:.8rem 1rem;border:1.5px solid var(--sagra2-border,#e0d8cc);border-radius:var(--sagra2-radius,8px);background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s;}.sagra2-turno-card:hover:not(:disabled){border-color:var(--sagra2-accent,#b94a1a);}.sagra2-turno-card.selected{border-color:var(--sagra2-accent,#b94a1a);box-shadow:0 0 0 2px rgba(185,74,26,.25);}.sagra2-turno-card.pieno,.sagra2-turno-card:disabled{opacity:.5;cursor:not-allowed;}.sagra2-icon-ok,.sagra2-icon-warn,.sagra2-icon-err{font-size:3rem;line-height:1;margin-bottom:.5rem;}.sagra2-riepilogo{background:var(--sagra2-surface,#f9f7f4);border-radius:var(--sagra2-radius,8px);padding:1rem;}.sagra2-menu-pub-wrap{max-width:680px;margin:0 auto;padding:1.5rem 1rem 3rem;}.menu-pub-header{text-align:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1.5px solid var(--sagra2-border,#e5e7eb);}.menu-pub-header h1{margin:0 0 .25rem;}.menu-pub-data{color:var(--sagra2-muted,#6b7280);margin:0;font-size:1.1rem;font-weight:600;}.menu-pub-categoria{margin-bottom:2rem;}.menu-pub-cat-nome{font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--sagra2-accent,#b94a1a);padding-bottom:.4rem;border-bottom:1.5px solid var(--sagra2-accent,#b94a1a);margin-bottom:.5rem;}.menu-pub-portata{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--sagra2-border,#e5e7eb);}.menu-pub-portata:last-child{border-bottom:none;}.menu-pub-info{display:flex;flex-direction:column;gap:.2rem;flex:1;}.menu-pub-nome{font-weight:600;font-size:1rem;}.menu-pub-desc{font-size:.85rem;color:var(--sagra2-muted,#6b7280);}.menu-pub-prezzo{font-weight:700;font-size:1rem;color:var(--sagra2-accent,#b94a1a);flex-shrink:0;}.menu-pub-cta{text-align:center;margin-top:2rem;padding-top:1.5rem;border-top:1.5px solid var(--sagra2-border,#e5e7eb);}.menu-pub-empty{text-align:center;color:var(--sagra2-muted,#6b7280);padding:2rem;}
body.utilikit-inline-mode .utilikit:not([data-utilikit-props]){visibility:hidden;}body:not(.utilikit-static-mode):not(.utilikit-head-mode) .utilikit:not([data-utilikit-props]){visibility:hidden;}.utilikit[data-utilikit-props]{visibility:visible;}body.utilikit-static-mode .utilikit{visibility:visible;}body.utilikit-head-mode .utilikit{visibility:visible;}body.uk-admin .utilikit{outline:2px dashed rgba(0,123,255,0.7) !important;outline-offset:2px;}body.uk-dev .utilikit{position:relative;}body.uk-dev .utilikit::before{content:'🛠️';position:absolute;top:-15px;left:-15px;font-size:10px;opacity:0.5;pointer-events:none;z-index:1000;}body.uk-trans .utilikit{transition:all 0.3s ease-in-out;}body.utilikit-inline-mode.uk-trans .utilikit{transition:all 0.15s ease-out;}.utilikit{box-sizing:border-box;transition:visibility 0.1s ease-in-out;}body.utilikit-inline-mode .utilikit{will-change:auto;}body.utilikit-static-mode .utilikit{will-change:auto;}body.utilikit-head-mode .utilikit{will-change:auto;}@media (prefers-contrast:high){body.uk-admin .utilikit{outline-color:#000000;outline-width:3px;}}@media (prefers-reduced-motion:reduce){body.uk-trans .utilikit{transition:none !important;}}body.uk-dev .utilikit[data-utilikit-props]:hover::after{content:'Props: ' attr(data-utilikit-props);position:absolute;bottom:100%;left:0;background:rgba(0,0,0,0.8);color:white;padding:4px 8px;border-radius:4px;font-size:11px;white-space:nowrap;z-index:1001;pointer-events:none;}.utilikit.uk-error{outline:2px solid #dc3545 !important;background-color:rgba(220,53,69,0.1) !important;}body.utilikit-inline-mode .utilikit:not([data-utilikit-props]){position:relative;}body.utilikit-inline-mode .utilikit:not([data-utilikit-props])::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(0,123,255,0.1),transparent);animation:utilikit-loading 1.5s infinite;pointer-events:none;}@keyframes utilikit-loading{0%{transform:translateX(-100%);}100%{transform:translateX(100%);}}.utilikit[data-utilikit-props]::before{display:none;}
