:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#0f172a;background-color:#f5f6f8;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--brand-brown: #8b5a3c;--brand-beige: #f5f0e6;--safe-bottom: env(safe-area-inset-bottom, 12px)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#f3f4f6,#fff 40%)}#root{min-height:100vh}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2.5rem;background-color:#fff;border-bottom:1px solid rgba(15,23,42,.08);position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{font-weight:700;font-size:1.1rem;letter-spacing:.04em}.brand-mark{display:inline-flex;align-items:center;gap:.5rem}.brand-mark:before{content:"";width:.75rem;height:.75rem;border-radius:999px;background:linear-gradient(120deg,#6366f1,#22d3ee)}.nav-link{padding:.5rem 1rem;border-radius:999px;font-weight:500;color:#0f172ab3}.nav-link.active{background:#6366f11f;color:#4338ca}.app-main{flex:1;padding:1.5rem 2.5rem 4rem}.app-main--full{padding:0}.app-footer{padding:1.5rem 2.5rem;background-color:#fff;border-top:1px solid rgba(15,23,42,.08);color:#0f172a99;font-size:.95rem}.app-footer code{background:#0f172a0f;padding:.125rem .375rem;border-radius:4px;font-size:.9rem}.home-page{display:flex;flex-direction:column;gap:2.5rem}.hero{max-width:740px;display:flex;flex-direction:column;gap:1rem}.hero h1{margin:0;font-size:clamp(2.2rem,3vw,2.9rem);font-weight:700;color:#0f172a}.hero p{margin:0;font-size:1.125rem;color:#0f172ab3}.template-grid{display:flex;flex-direction:column;gap:1.25rem}.template-grid h2{margin:0;font-size:1.5rem}.grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.template-card{display:flex;flex-direction:column;background-color:#fff;border-radius:24px;overflow:hidden;border:1px solid rgba(15,23,42,.08);box-shadow:0 16px 40px -30px #0f172a66;transition:transform .2s ease,box-shadow .2s ease}.template-card:hover{transform:translateY(-6px);box-shadow:0 20px 45px -28px #0f172a80}.template-card__media{aspect-ratio:16 / 10;background:#0f172a0d;overflow:hidden}.template-card__media img{width:100%;height:100%;object-fit:cover}.template-card__body{padding:1.25rem 1.5rem .5rem;display:flex;flex-direction:column;gap:.4rem}.template-card__body h3{margin:0;font-size:1.3rem}.template-card__body p{margin:0;color:#0f172aa6}.template-card__actions{padding:1rem 1.5rem 1.5rem;margin-top:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font-weight:600;border-radius:999px;padding:.75rem 1.5rem;border:1px solid transparent;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease}.btn:disabled{cursor:not-allowed;opacity:.7}.btn-primary{background:var(--template-color, #6366f1);color:#fff;box-shadow:0 12px 24px -18px var(--template-color, #6366f1)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 30px -18px var(--template-color, #6366f1)}.btn-secondary{background:#fff;border-color:#0f172a26;color:#0f172a}.info-banner{padding:.9rem 1.2rem;border-radius:12px;background:#6366f11a;color:#3730a3;font-weight:500}.info-banner--error{background:#f871711f;color:#b91c1c}.link{color:#4338ca;text-decoration:underline;text-decoration-thickness:2px}.template-page{display:flex;flex-direction:column;gap:2rem}.diavola-shell{--terracotta: #c8794a;--terracotta-strong: #b9673c;--wood: #b7773a;--accent-green: #2e7a3c;--cream: #f3e7d6;--cream-2: #e9d9c3;--gray-soft: #d3d6dc;--ink: #2e2521;--tablecloth-red: #d5403a;--accent: var(--terracotta);--accent-2: var(--terracotta-strong);background:radial-gradient(circle at 18% 12%,rgba(200,121,74,.25),transparent 36%),radial-gradient(circle at 86% 10%,rgba(46,122,60,.18),transparent 40%),linear-gradient(180deg,var(--cream) 0%,var(--cream-2) 100%);color:var(--ink);min-height:100vh;font-family:Playfair Display,serif}.diavola-hero-checker{position:absolute;top:0;left:0;right:0;height:70%;background-image:linear-gradient(90deg,rgba(213,64,58,.14) 50%,transparent 50%),linear-gradient(0deg,rgba(213,64,58,.14) 50%,transparent 50%);background-size:34px 34px;opacity:.55;mix-blend-mode:screen;pointer-events:none}.diavola-hero-checker:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#f3e7d659,#f3e7d600)}.diavola-hero-overlay{background:radial-gradient(circle at 30% 20%,#2e25218c,#2e2521bf),linear-gradient(180deg,#17120fd1,#c8794a8c,#e9d9c3b8);mix-blend-mode:multiply}.diavola-hero-card{background:#ffffff24;border:1px solid rgba(255,255,255,.28);border-radius:24px;padding:clamp(1.5rem,3vw,2.4rem);box-shadow:0 28px 70px -36px #0009;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fdf7ef}.diavola-hero-title{margin:0 0 1rem;font-size:clamp(3rem,6vw,4.8rem);font-weight:800;letter-spacing:-.01em;color:#fffaf5;text-shadow:0 14px 40px rgba(0,0,0,.45),0 4px 12px rgba(0,0,0,.35)}.diavola-hero-italic{color:#d5403a;font-style:italic;text-shadow:0 12px 36px rgba(213,64,58,.55),0 4px 14px rgba(0,0,0,.3)}.diavola-hero-subtitle{margin:0 auto clamp(1.5rem,3vw,2rem);max-width:720px;font-size:clamp(1.05rem,2.6vw,1.35rem);line-height:1.7;color:#fef9f3;text-shadow:0 10px 28px rgba(0,0,0,.35);font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}.hero-actions{display:flex;flex-direction:column;gap:.9rem;justify-content:center;align-items:center}@media(min-width:640px){.hero-actions{flex-direction:row}}.hero-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.95rem 1.6rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;border:1px solid transparent;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .25s ease,color .25s ease,border-color .25s ease}.hero-btn--primary{background:linear-gradient(120deg,#c8794a,#b9673c);color:#fdf7ef;border-color:#b7773a66;box-shadow:0 20px 44px -28px #b9673ce6}.hero-btn--primary:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 24px 50px -26px #b9673cf2}.hero-btn--secondary{background:#f3e7d6e6;color:#2e2521;border-color:#b7773a80;box-shadow:0 18px 40px -30px #2e25218c}.hero-btn--secondary:hover{transform:translateY(-2px) scale(1.01);background:#c8794a3d;color:#2e2521}.hero-btn--ghost{background:transparent;color:#fdf7ef;border-color:#f3e7d6d9;box-shadow:0 18px 36px -30px #2e252180}.hero-btn--ghost:hover{background:#f3e7d629;color:#2e2521;border-color:#f3e7d6;transform:translateY(-2px) scale(1.01)}.diavola-checker-bar{background-image:linear-gradient(90deg,#d5403a38 50%,#ffffffeb 50%),linear-gradient(0deg,#d5403a38 50%,#ffffffeb 50%);background-size:18px 18px;opacity:.85}.diavola-shell input,.diavola-shell select,.diavola-shell textarea,.diavola-shell button{font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}.diavola-shell .calendar-booking,.diavola-shell .appointment-form,.diavola-shell .chat-assistant{border-radius:18px;border:1px solid rgba(255,255,255,.08);box-shadow:0 25px 60px -38px #000000a6}.diavola-shell .calendar-booking{background:linear-gradient(180deg,#1c1917,#151210);color:#f7f6f2}.diavola-shell .calendar-month{background:#ffffff08;border:1px solid rgba(255,255,255,.06);color:#f7f6f2}.diavola-shell .calendar-month__nav button{background:#b7773a38;color:#f7f6f2;border:1px solid rgba(183,119,58,.4)}.diavola-shell .calendar-day{background:#ffffff0a;color:#f7f6f2;border:1px solid rgba(255,255,255,.06)}.diavola-shell .calendar-day--selected{background:linear-gradient(135deg,var(--terracotta),var(--terracotta-strong));color:#fff;box-shadow:0 12px 24px -16px #b9673ccc}.diavola-shell .calendar-day--muted{color:#f7f6f259;background:#ffffff05}.diavola-shell .calendar-day__indicator--available{background:var(--accent-green)}.diavola-shell .calendar-day__indicator--error{background:#f97316}.diavola-shell .calendar-slots{background:#ffffff08;color:#f7f6f2;border:1px solid rgba(255,255,255,.06)}.diavola-shell .slot-button{background:#ffffff0a;color:#f7f6f2;border:1px solid rgba(255,255,255,.08)}.diavola-shell .slot-button--selected{border-color:var(--terracotta);box-shadow:0 0 0 3px #c8794a59}.diavola-shell .slot-empty,.diavola-shell .calendar-slots__status{color:#f7f6f2b3}.diavola-shell .appointment-form{background:#faf8f4;color:#2a1b11;border:1px solid rgba(0,0,0,.06)}.diavola-shell .appointment-form input,.diavola-shell .appointment-form select,.diavola-shell .appointment-form textarea{border-radius:12px;border:1px solid rgba(0,0,0,.12);background:#fff;color:#1f130d}.diavola-shell .appointment-form input:focus,.diavola-shell .appointment-form select:focus,.diavola-shell .appointment-form textarea:focus{outline:none;border-color:var(--terracotta);box-shadow:0 0 0 3px #c8794a29}.diavola-shell .btn,.diavola-shell button{font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}.diavola-shell .btn-primary,.diavola-shell .appointment-form button[type=submit]{background:linear-gradient(135deg,var(--terracotta),var(--terracotta-strong));color:#fff;border:none;box-shadow:0 12px 28px -18px #b9673ccc}.diavola-shell .btn-primary:hover,.diavola-shell .appointment-form button[type=submit]:hover{transform:translateY(-2px)}.diavola-shell .chat-assistant{background:#181512;color:#f7f6f2;border:1px solid rgba(255,255,255,.06)}.diavola-shell .chat-bubble{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:#f7f6f2}.diavola-shell .chat-bubble strong{color:#f7f6f2}.diavola-shell .chat-message-content table{border:1px solid rgba(255,255,255,.1)}.flash-banner{position:fixed;right:16px;bottom:16px;z-index:9999;background:#fff;border:1px solid rgba(210,201,186,.85);color:#2e2521;padding:.9rem 1.1rem;border-radius:14px;box-shadow:0 18px 40px -26px #2e252173;display:inline-flex;align-items:center;gap:.8rem;animation:toastIn .28s ease;min-width:240px;max-width:360px;pointer-events:auto;font-weight:700;line-height:1.3}.flash-banner button{border:none;background:transparent;font-size:1.1rem;cursor:pointer;color:inherit;margin-left:auto}.flash-banner--ok{border-color:#2e7a3c66;background:#2e7a3c1f;color:#1f5f2e}.flash-banner--error{border-color:#d5403a73;background:#d5403a1f;color:#7b211b}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.diavola-menu.menu-page{background:radial-gradient(circle at 20% 20%,rgba(200,121,74,.16),transparent 38%),radial-gradient(circle at 80% 0%,rgba(46,122,60,.12),transparent 30%),#f3e7d6}.scroll-x{display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:none}.scroll-x::-webkit-scrollbar{display:none}.row-compact{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap;width:100%}.search-compact{flex:1;min-width:160px}.search-compact input{width:100%;border-radius:12px;padding:.65rem .8rem;border:1px solid rgba(46,37,33,.16)}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.menu-shell{max-width:1280px;margin:0 auto;padding:2.2rem 1.25rem 3rem;display:flex;flex-direction:column;gap:1.25rem}.menu-header{background:linear-gradient(135deg,#2e2521e6,#2e252199,#c8794a59);color:#fdf7ef;padding:1.6rem 1.8rem;border-radius:20px;box-shadow:0 26px 54px -40px #2e2521cc;display:flex;justify-content:space-between;align-items:center;gap:1rem}.menu-header h1{margin:0;font-size:clamp(2.1rem,3vw,2.8rem);line-height:1.1}.menu-main{background:#fffaf4;border:1px solid rgba(210,201,186,.9);border-radius:22px;box-shadow:0 24px 48px -32px #2e252152;padding:1.2rem 1.4rem 1.6rem;display:flex;flex-direction:column;gap:1rem}.menu-bar{display:flex;flex-direction:column;gap:.75rem}.menu-categories{display:flex;flex-wrap:wrap;gap:.5rem}.menu-search{display:flex;flex-direction:column;gap:.5rem}.menu-search input{border-radius:14px;border:1px solid rgba(46,37,33,.12);padding:.85rem 1rem;box-shadow:0 8px 20px -18px #2e252159;width:100%}.menu-tags{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.menu-grid-area{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.9fr);gap:1.25rem;align-items:start}.menu-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8rem}.menu-cart{position:sticky;top:1rem;background:#fffaf4;border:1px solid #e2d4c1;border-radius:18px;padding:1rem 1.1rem;box-shadow:0 16px 42px -32px #2e252147;display:flex;flex-direction:column;gap:.85rem}.menu-cart__header{display:flex;justify-content:space-between;align-items:center}.menu-cart__body{display:flex;flex-direction:column;gap:.75rem;max-height:320px;overflow:auto;padding:.3rem;border:1px solid #efe4d7;border-radius:14px;background:#fff}.menu-cart__divider{height:1px;background:#e6d7c5;margin:.1rem 0}.menu-cart form{background:#fff;border:1px solid #efe4d7;border-radius:14px;padding:.8rem .85rem 1rem;box-shadow:inset 0 1px #fff9;display:flex;flex-direction:column;gap:.5rem}.menu-cart label{font-weight:600;color:#2e2521}.menu-cart input,.menu-cart textarea{border:1px solid #d8caba;padding:.55rem .65rem;box-shadow:0 8px 20px -18px #2e252140;transition:border .2s ease,box-shadow .2s ease;border-radius:10px}.menu-cart input:focus,.menu-cart textarea:focus{border-color:#b9673c;box-shadow:0 12px 24px -20px #b9673c59}.menu-cart .btn.btn-primary{border-radius:999px}.menu-cart .pedidos-ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.menu-cart .pedido-item{display:grid;grid-template-columns:auto 1fr auto;gap:.45rem;align-items:center;padding:.55rem .65rem;border-radius:12px;background:#fffaf4;border:1px solid rgba(210,201,186,.9)}.pedido-info{display:flex;flex-direction:column;justify-content:center;gap:.2rem}.pedido-name{font-weight:700;color:#2e2521}.pedido-meta{font-size:.85rem;color:#6b5b52;background:#f3e7d6;padding:.15rem .5rem;border-radius:999px}.pedido-actions{display:inline-flex;align-items:center;gap:.2rem;flex-wrap:wrap}.pedido-line{font-weight:700;color:#b9673c;margin-left:.2rem}.pedido-icon{width:34px;height:34px;border-radius:10px;background:#f3e7d6;display:flex;align-items:center;justify-content:center;font-size:1.1rem}.chip-btn{border:1px solid rgba(46,37,33,.14);background:#f1f1f1;border-radius:999px;padding:.3rem .6rem;font-weight:700;cursor:pointer;transition:background .15s ease,transform .15s ease}.chip-btn:hover{background:#e0dfdb;transform:translateY(-1px)}.chip-btn.danger{background:#f6d5d1;border-color:#f1b5ae;color:#b5403a}.qty-pill{background:#e9d9c3;color:#b9673c;padding:.32rem .85rem;border-radius:999px;font-weight:800}.btn-success{background:#2e7a3c;box-shadow:0 14px 30px -18px #2e7a3c80}.btn-success:hover:not(:disabled){background:#256332;transform:translateY(-2px)}@media(max-width:1024px){.menu-grid-area{grid-template-columns:1fr}.menu-header{flex-direction:column;align-items:flex-start}}@media(max-width:768px){.menu-shell{max-width:100%;width:100%;margin:0;padding:.6rem .6rem 5rem;background:linear-gradient(180deg,#2a1c14,#4a2f22 24%,#f7efe2 24%);min-height:100vh;gap:.75rem}.menu-header{flex-direction:column;align-items:flex-start;text-align:left;gap:.3rem;padding:.5rem .65rem;border-radius:10px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);box-shadow:0 12px 30px -26px #000000b3}.menu-header h1{font-size:1.35rem;margin:0}.menu-header p{margin:0;color:#e8dece;font-size:.85rem}.menu-main{background:#f9f0e4;border-radius:14px;padding:.65rem;box-shadow:0 -10px 36px -30px #00000073;gap:.65rem;width:100%}.menu-grid-area{grid-template-columns:1fr;gap:.65rem}.menu-bar{background:#fff;border:1px solid #e5d6c1;border-radius:12px;padding:.45rem .5rem;box-shadow:0 10px 28px -26px #0000004d;gap:.4rem}.menu-categories{width:100%;gap:.28rem;overflow-x:auto}.menu-categories .btn{padding:.4rem .75rem;border-radius:999px;font-size:.9rem;background:#f6f1e9;color:#2e2521;border:1px solid #e0d4c1;white-space:nowrap}.menu-categories .btn.btn-primary{background:#b7773a;color:#fff;border-color:#a7662f;box-shadow:inset 0 1px #fff6}.menu-search{flex-direction:row;align-items:center;gap:.3rem}.menu-search input{font-size:.9rem;background:#f8f4ed;border:1px solid #e0d4c1;color:#2e2521}.menu-tags{gap:.3rem;flex-wrap:nowrap;overflow-x:auto;padding-right:.2rem}.menu-tags .btn{background:#f0e7da;border:1px solid #e0d4c1;color:#2e2521;padding:.32rem .65rem;border-radius:999px;white-space:nowrap;font-size:.9rem}.menu-tags .btn.btn-primary{background:linear-gradient(135deg,#c8794a,#b7773a);color:#fff;border-color:#b7773a}.menu-cards{display:flex;flex-direction:column;gap:.45rem;width:100%}.menu-card{width:100%;padding:.7rem;background:#fffdf8;border:1px solid #e4d7c6;border-radius:12px;box-shadow:0 14px 34px -28px #2e252159}.menu-card--horizontal{gap:.5rem;align-items:center}.menu-card__info h4{font-size:1rem}.menu-card__info p{font-size:.9rem;line-height:1.18}.menu-card__info span{font-size:.95rem}.menu-card__action{align-self:center}.icon-chip{width:32px;height:32px;font-size:.95rem}.pill-qty{gap:.25rem;padding:.15rem .4rem;font-size:.92rem}.menu-cart{display:none}}.mobile-cart{display:none}@media(max-width:768px){.menu-page{background:#3c261c;color:#f5efe7}.menu-cart__form--desktop{display:none}.mobile-cart{display:block;position:fixed;left:0;right:0;bottom:calc(.35rem + var(--safe-bottom));z-index:40;padding:0 .75rem}.mobile-cart__bar{width:100%;border:none;border-radius:14px;background:#fff;color:#2e2521;padding:.7rem .9rem;display:flex;align-items:center;justify-content:space-between;box-shadow:0 16px 38px -28px #2e25218c;cursor:pointer;border:1px solid rgba(46,37,33,.08)}.mobile-cart__totals{display:flex;flex-direction:column;gap:.1rem;font-weight:700;line-height:1.1}.mobile-cart__label{font-size:.8rem;opacity:.85}.mobile-cart__total{font-size:1.1rem}.mobile-cart__cta{display:inline-flex;align-items:center;gap:.4rem;background:linear-gradient(135deg,#c8794a,#b7773a);color:#fff;padding:.45rem .75rem;border-radius:999px;border:1px solid rgba(255,255,255,.35);font-weight:700;box-shadow:inset 0 1px #fff6}.mobile-cart__badge{background:#fff;color:#b9673c;padding:0 .55rem;border-radius:999px;font-weight:800}.mobile-cart__backdrop{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:none;z-index:39}.mobile-cart.open .mobile-cart__backdrop{display:block}.mobile-cart__sheet{position:fixed;left:0;right:0;bottom:0;z-index:41;background:#fffaf4;border-radius:18px 18px 0 0;box-shadow:0 -6px 32px -18px #00000059;max-height:88vh;overflow:hidden;padding:.6rem 0 .8rem;animation:float-up .35s ease}.mobile-cart__handle{width:52px;height:6px;border-radius:999px;background:#00000014;margin:0 auto .5rem}.mobile-cart__header{display:flex;justify-content:space-between;padding:0 1rem .3rem;align-items:center}.mobile-cart__panel{margin-top:.25rem;max-height:64vh;overflow:auto;padding-bottom:.4rem}.mobile-cart__list{list-style:none;padding:.3rem 1rem .6rem;margin:0;display:flex;flex-direction:column;gap:.55rem;max-height:52vh;overflow-y:auto}.mobile-cart__line{display:grid;grid-template-columns:auto 1fr auto auto;gap:.45rem;align-items:center;background:#fff;padding:.7rem;border-radius:14px;border:1px solid #efe4d7;min-height:62px}.mobile-cart__emoji{width:38px;height:38px;border-radius:10px;background:#f3e7d6;display:flex;align-items:center;justify-content:center;font-size:1.1rem}.mobile-cart__line-main{flex:1}.mobile-cart__controls{display:inline-flex;align-items:center;gap:.25rem;background:#f6f1e9;padding:.25rem .45rem;border-radius:999px;border:1px solid #e2d4c1}.mobile-cart__controls button{border:none;background:transparent;font-weight:800;padding:0 .2rem}.mobile-cart__trash{border:none;background:transparent;font-size:1rem;padding:0 .2rem}.mobile-cart__meta{font-size:.85rem;color:#6b5b52;margin-top:.05rem;line-height:1.1}.mobile-cart__line-total{font-weight:800;color:#b9673c}.mobile-cart__footer{padding:.65rem 1rem .9rem;border-top:1px solid #e2d4c1;display:flex;flex-direction:column;gap:.55rem;font-weight:800;color:#2e2521;position:sticky;bottom:0;background:linear-gradient(180deg,#fffaf4f5,#fffaf4 90%);box-shadow:0 -8px 22px -16px #2e252133}.mobile-cart__total-row{display:flex;justify-content:space-between;align-items:center}.mobile-cart__actions{padding:0 1rem .4rem}.mobile-cart__form{padding:.2rem 1rem 1rem;display:flex;flex-direction:column;gap:.55rem;background:#fff;border:1px solid #e2d4c1;border-radius:14px}.mobile-cart__form input,.mobile-cart__form textarea{border:1px solid #d8caba;padding:.55rem .65rem;border-radius:10px;box-shadow:0 8px 20px -18px #2e252140}.menu-card__info{flex:1;min-width:0}.menu-card__action{display:flex;align-items:center;justify-content:flex-end}.menu-card--horizontal{display:flex;gap:.7rem;align-items:center}.icon-chip{width:38px;height:38px;border-radius:999px;border:1px solid #d7c5ac;background:#f6f1e9;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:1rem}.pill-qty{display:inline-flex;align-items:center;gap:.35rem;background:#f6f1e9;border:1px solid #d7c5ac;border-radius:999px;padding:.25rem .55rem;font-weight:800}.pill-qty button{border:none;background:transparent;font-weight:800;padding:0 .2rem}}.diavola-menu .menu-panel__header h3{font-size:1.5rem;color:#2e2521}.diavola-menu .menu-filters input[type=search]{border-radius:14px;border:1px solid rgba(46,37,33,.12);padding:.85rem 1rem;box-shadow:0 8px 20px -18px #2e252159}.diavola-menu .menu-grid{animation:fade-in-soft .5s ease both;margin-top:.4rem}.diavola-menu .menu-card{overflow:hidden;position:relative;border-radius:20px;box-shadow:0 20px 50px -34px #2e252166}.diavola-menu .menu-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#c8794a0f,#2e7a3c0a);opacity:0;transition:opacity .2s ease;z-index:0;pointer-events:none}.diavola-menu .menu-card:hover:after{opacity:1}.diavola-menu .menu-card h4,.diavola-menu .menu-card p,.diavola-menu .menu-card span{position:relative;z-index:1}.diavola-menu .menu-card h4{font-size:1.2rem}.diavola-menu .menu-card .btn{position:relative;z-index:5;pointer-events:auto;cursor:pointer}.diavola-menu .menu-card p{font-size:.96rem}.diavola-menu .menu-card,.diavola-menu .menu-card *{pointer-events:auto}.diavola-shell{animation:fade-in-soft .4s ease both}.diavola-shell .diavola-reserva-wrap{animation:fade-in-soft .6s ease both}.diavola-shell .calendar-booking,.diavola-shell .appointment-form,.diavola-shell .chat-assistant{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:float-up .6s ease both}.diavola-shell .calendar-day{transition:all .16s ease}.diavola-shell .calendar-month__grid{animation:fade-in-soft .4s ease both}.diavola-shell .diavola-info-card,.diavola-shell .diavola-widget-card{transition:transform .2s ease,box-shadow .2s ease}.diavola-shell .diavola-info-card:hover{transform:translateY(-2px);box-shadow:0 18px 44px -36px #2e2521a6}.diavola-shell .diavola-widget-card:hover{transform:translateY(-3px);box-shadow:0 18px 50px -34px #2e2521b8}.diavola-shell .btn,.diavola-shell button{box-shadow:0 14px 30px -24px #2e252173;transition:all .2s ease}.diavola-shell .btn-primary,.diavola-shell .appointment-form button[type=submit]{transform:translateY(0)}.diavola-shell .btn-primary:hover,.diavola-shell .appointment-form button[type=submit]:hover{transform:translateY(-2px);box-shadow:0 18px 38px -24px #2e25218c}.diavola-shell .btn:active,.diavola-shell button:active{transform:translateY(0);box-shadow:0 8px 20px -18px #2e252180}.diavola-shell .appointment-form input:focus,.diavola-shell .appointment-form select:focus,.diavola-shell .appointment-form textarea:focus{transform:translateY(-1px)}@media(max-width:820px){.diavola-reserva-grid,.diavola-reservas__grid{display:grid;grid-template-columns:1fr;gap:1rem}.diavola-reserva-container{padding:1.25rem}.calendar-booking,.diavola-widget-card--form{width:100%}}@keyframes fade-in-soft{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes float-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.diavola-reservas{width:100%}.diavola-reservas__grid,.diavola-reservas__widgets{align-items:stretch}.diavola-card-widget{height:100%}.diavola-shell .calendar-booking{padding:1rem 1.1rem;gap:1rem}.diavola-shell .calendar-month__grid{gap:.45rem;padding:.35rem;background:linear-gradient(145deg,#ffffff0f,#ffffff05);border:1px solid rgba(255,255,255,.08);border-radius:18px;box-shadow:inset 0 1px #ffffff14}.diavola-shell .calendar-day{min-height:64px;padding:.55rem .45rem;border-radius:14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 20px -18px #00000073;transition:all .22s ease}.diavola-shell .calendar-day:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 14px 26px -20px #00000080;border-color:#b7773a59}.diavola-shell .calendar-slots{padding:1.1rem;gap:.9rem}.diavola-shell .appointment-form{padding:1.1rem 1.25rem;gap:.8rem}.diavola-shell .appointment-form .form-grid{gap:.8rem 1rem}.template-standalone{width:100%;min-height:100%}.template-intro{position:relative;display:grid;gap:clamp(2rem,6vw,3.5rem);grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr);padding:clamp(2.6rem,7vw,4.2rem);border-radius:36px;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.95),var(--hero-soft, rgba(99, 102, 241, .08)));box-shadow:0 40px 90px -50px #0f172a73;animation:introFadeUp .75s ease-out both;isolation:isolate}.template-intro:before{content:"";position:absolute;inset:0;background:linear-gradient(130deg,#ffffff4d,#ffffff0d 55%,#fffc);pointer-events:none;mix-blend-mode:soft-light;opacity:.9}.template-intro__content{position:relative;display:flex;flex-direction:column;gap:1.4rem;z-index:1;animation:introFadeUp .9s ease-out both;max-width:34rem}.template-intro__badge{align-self:flex-start;padding:.35rem .85rem;border-radius:999px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;background:#0f172a14;color:#0f172ab3;box-shadow:inset 0 0 0 1px #0f172a0f}.template-intro h1{margin:0;font-size:clamp(2.3rem,4vw,3.3rem);color:#0f172a}.template-intro p{margin:0;font-size:1.15rem;color:#0f172ab8;max-width:32ch}.template-intro__highlights{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.template-intro__highlights li{display:flex;gap:.65rem;align-items:flex-start;padding:.85rem 1rem;border-radius:18px;background:#ffffffb3;border:1px solid rgba(15,23,42,.05);color:#0f172ab8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 18px 38px -32px #0f172a73}.template-intro__highlights li:before{content:"";flex:0 0 10px;height:10px;margin-top:.35rem;border-radius:999px;background:var(--hero-accent, #6366f1);box-shadow:0 0 0 3px #6366f12e}.template-intro__actions{display:flex;flex-wrap:wrap;gap:.8rem;padding-top:.5rem}.btn-cta{position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}@media(max-width:768px){.pedido-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;display:flex;align-items:flex-end;justify-content:center}.pedido-drawer{width:100%;background:#fffaf4;border-radius:24px 24px 0 0;box-shadow:0 -10px 40px -18px #00000059;max-height:90vh;display:flex;flex-direction:column;padding:.5rem 1rem 1rem;animation:slideInFromBottom .35s ease}.pedido-drawer__handle{width:50px;height:6px;border-radius:999px;background:#0000001f;margin:.25rem auto .75rem}.pedido-drawer__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.pedido-drawer__header h4{margin:0;font-size:1.1rem}.pedido-drawer__header .subtitle{margin:0;color:#6b5b52;font-size:.85rem}.close-btn{border:1px solid #e2d4c1;background:#fff;width:32px;height:32px;border-radius:999px;cursor:pointer}.pedido-drawer__list{max-height:38vh;overflow-y:auto;display:flex;flex-direction:column;gap:.55rem;padding:.25rem 0;margin-bottom:.4rem}.pedido-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:.4rem;align-items:center;background:#fff;border:1px solid #efe4d7;border-radius:14px;padding:.6rem}.pedido-row__icon{width:38px;height:38px;border-radius:10px;background:#f3e7d6;display:flex;align-items:center;justify-content:center;font-size:1.1rem}.pedido-row__main{min-width:0}.pedido-row__controls{display:inline-flex;align-items:center;gap:.2rem;background:#f6f1e9;padding:.25rem .45rem;border-radius:999px;border:1px solid #e2d4c1}.pedido-row__controls button{border:none;background:transparent;font-weight:800;padding:0 .2rem}.pedido-row__trash{border:none;background:transparent;font-size:1rem;padding:0 .2rem}.pedido-drawer__form{display:flex;flex-direction:column;gap:.55rem;background:#fff;border:1px solid #e2d4c1;border-radius:14px;padding:.7rem .8rem;margin-top:.2rem}.pedido-drawer__form label{display:flex;flex-direction:column;gap:.3rem;font-weight:600;color:#2e2521}.pedido-drawer__form input,.pedido-drawer__form textarea{border:1px solid #d8caba;padding:.55rem .65rem;border-radius:10px;box-shadow:0 8px 20px -18px #2e252140}.pedido-drawer__footer{padding:.8rem .2rem .4rem;display:flex;flex-direction:column;gap:.45rem}.pedido-pill{position:fixed;left:.85rem;right:.85rem;bottom:calc(.65rem + var(--safe-bottom));background:#231f1e;color:#fff;border-radius:999px;padding:.65rem .9rem;box-shadow:0 18px 36px -24px #0009;display:flex;align-items:center;justify-content:space-between;z-index:40;cursor:pointer}.pedido-pill__left{display:flex;flex-direction:column;line-height:1.05}.pedido-pill__left .label{font-size:.75rem;opacity:.8}.pedido-pill__badge{background:#fff;color:#b9673c;padding:0 .65rem;border-radius:999px;font-weight:800;border:1px solid rgba(0,0,0,.06)}}.btn-cta:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at center,rgba(255,255,255,.6),transparent 65%);transform:scale(.2);opacity:0;transition:transform .35s ease-out,opacity .35s ease-out}.btn-cta:active:after{transform:scale(1.35);opacity:.55;transition:transform .45s ease-out,opacity .45s ease-out}.btn-cta:active{transform:translateY(0) scale(.96)}.btn-cta:focus-visible{outline:none;box-shadow:0 0 0 3px #6366f140}.product-row{display:flex;gap:12px;padding:12px 14px;background:#fff;border:1px solid #ece4d8;border-radius:16px;box-shadow:0 10px 28px -18px #0000002e;align-items:center;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease}.product-row--active{border-color:#c8794a80;box-shadow:0 16px 36px -20px #c8794a99;transform:translateY(-1px)}.product-row__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.product-row__title{display:flex;align-items:center;gap:6px;font-weight:800;font-size:1rem;color:#2e2521;letter-spacing:-.01em}.product-row__title .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vegan-pill{display:inline-flex;padding:4px;background:#e6f6ea;border-radius:999px;border:1px solid #ccecd5}.product-row__desc{margin:0;font-size:12px;color:#6b5b52;line-height:1.35}.product-row__price{font-weight:800;color:#b9673c;font-size:14px}.product-row__actions{display:flex;align-items:center;justify-content:flex-end}.icon-btn{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid #e4d7c7;background:#f8f5f0;color:#2e2521;font-weight:800;transition:all .2s ease}.icon-btn:hover{background:#b9673c;color:#fff;border-color:#b9673c}.qty-pill{display:inline-flex;align-items:center;gap:6px;background:#f7f4ef;border:1px solid #e5d8c9;border-radius:999px;padding:4px 6px;box-shadow:0 10px 20px -18px #00000040}.qty-pill button{background:transparent;border:none;width:28px;height:28px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#2e2521;font-weight:800}.qty-pill .qty{width:20px;text-align:center;font-weight:800;color:#2e2521}.tag-pill{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;border:1px solid #e4d7c7;font-size:11px;font-weight:800;background:#f7f2ea;color:#2e2521}.tag-pill--spicy{background:#fde7de;border-color:#f3c1ae;color:#c3441f}.tag-pill--trufa{background:#eee6ff;border-color:#d5c6ff;color:#6a4cb8}.mobile-bar{position:fixed!important;left:16px;right:16px;bottom:calc(14px + var(--safe-bottom));background:#221d1a;color:#fff;border-radius:999px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 18px 36px -20px #000000a6;z-index:4000;cursor:pointer;pointer-events:auto}.mobile-bar__info{display:flex;flex-direction:column;line-height:1.1}.mobile-bar__info .label{font-size:12px;color:#f3e7d6;opacity:.9}.mobile-bar__info .amount{font-size:16px;font-weight:800}.mobile-bar__count{background:#fdf7ef;color:#b9673c;border-radius:999px;padding:6px 10px;font-weight:800;min-width:36px;text-align:center;border:1px solid #e6d4c1}.sheet-overlay{position:fixed!important;inset:0;background:#00000059;z-index:4000;display:flex!important;flex-direction:column;justify-content:flex-end;align-items:center;padding:0 12px calc(10px + var(--safe-bottom)) 12px}.sheet{position:relative;width:min(640px,100%);background:#fff;border-radius:18px 18px 0 0;box-shadow:0 -18px 32px -18px #00000059;padding:12px 16px 16px;max-height:65vh;display:flex;flex-direction:column;gap:10px;margin:auto auto 0;align-self:stretch}.sheet__handle{width:52px;height:6px;background:#e5d8c9;border-radius:999px;margin:0 auto}.sheet__header{display:flex;justify-content:space-between;align-items:center}.sheet__eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#b9673c;margin:0 0 4px;font-weight:800}.sheet__list{max-height:55vh;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:4px}.sheet-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;padding:10px;border:1px solid #eee1d0;border-radius:12px;background:#fdfaf6}.sheet-row__icon{width:40px;height:40px;border-radius:10px;background:#fff;display:grid;place-items:center;font-size:20px}.sheet-row__main{min-width:0}.sheet-row__controls{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #e6d4c1;border-radius:999px;padding:3px 8px}.sheet-row__controls button{background:transparent;border:none;font-weight:800;color:#2e2521}.sheet-row__trash{background:transparent;border:none;font-size:16px;color:#c8794a}.line-amount{font-weight:800;color:#b9673c;white-space:nowrap}.sheet__divider{height:1px;background:#f0e6d8}.sheet__form{display:flex;flex-direction:column;gap:6px}.sheet__form label{display:flex;flex-direction:column;gap:4px;font-weight:700;color:#2e2521;font-size:12px}.sheet__form input,.sheet__form textarea{border:1px solid #e2d4c1;border-radius:12px;padding:8px 10px;font-size:13px;background:#fff;box-shadow:inset 0 1px #fff9}.sheet__footer{display:flex;flex-direction:column;gap:6px}.cart-panel{position:sticky;top:24px;background:#fffdf9;border:1px solid #e8ddcf;border-radius:18px;padding:14px;box-shadow:0 18px 38px -24px #00000040;display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 48px);overflow-y:auto}.cart-header{display:flex;justify-content:space-between;align-items:center}.cart-eyebrow{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#b9673c;font-weight:800}.cart-title{margin:0;font-size:18px}.cart-total{display:flex;flex-direction:column;align-items:flex-end;line-height:1.1}.cart-total__amount{font-weight:800;color:#b9673c}.cart-total__count{font-size:12px;color:#6b5b52}.cart-list{display:flex;flex-direction:column;gap:10px}.cart-empty{margin:0;color:#6b5b52;font-size:14px}.cart-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;background:#fff;border:1px solid #eee1d0;border-radius:14px;padding:10px;box-shadow:0 10px 24px -20px #0000002e}.cart-row__icon{width:42px;height:42px;border-radius:10px;background:#f8f2e9;display:grid;place-items:center;font-size:18px}.cart-row__main{min-width:0}.cart-row__top{display:flex;justify-content:space-between;gap:8px;align-items:center}.cart-row__top .name{font-weight:800;color:#2e2521;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-row__top .line{font-weight:800;color:#b9673c;white-space:nowrap}.cart-row .meta{margin:2px 0 0;font-size:12px;color:#6b5b52}.cart-row__controls{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #e6d4c1;border-radius:999px;padding:3px 8px}.cart-row__controls button{background:transparent;border:none;font-weight:800;color:#2e2521}.cart-row__controls .qty{width:18px;text-align:center;font-weight:800}.cart-row__trash{background:transparent;border:none;font-size:16px;color:#c8794a}.cart-form{display:flex;flex-direction:column;gap:8px}.cart-eta{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#f8f2e9;border:1px solid #e6d4c1;border-radius:12px;font-size:13px;color:#2e2521}.cart-eta .label{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#6b5b52}.cart-eta .sub{font-size:12px;color:#6b5b52}.cart-blocked{border:1px solid #f0b7a3;background:#fff3ed;color:#b5403a;border-radius:12px;padding:8px 10px;display:grid;gap:2px;font-size:13px;font-weight:700}.cart-form label{display:flex;flex-direction:column;gap:4px;font-weight:700;color:#2e2521;font-size:12px}.cart-form input,.cart-form textarea{border:1px solid #e2d4c1;border-radius:12px;padding:8px 10px;font-size:13px;background:#fff}.cart-footer{display:flex;flex-direction:column;gap:8px}.cart-footer__total{display:flex;justify-content:space-between;align-items:center}.pedido-floating-desktop{position:fixed!important;right:1.25rem;bottom:1.25rem;background:#231f1e;color:#fdf7ef;padding:.65rem .9rem;border-radius:999px;box-shadow:0 18px 32px -20px #0000008c;align-items:center;gap:.6rem;border:1px solid #3a2f29;z-index:4000;transition:transform .2s ease,box-shadow .2s ease;pointer-events:auto}.pedido-floating-desktop:hover{transform:translateY(-2px);box-shadow:0 20px 36px -22px #000000a6}.template-intro__visual{position:relative;display:grid;place-items:center;min-height:clamp(260px,40vw,360px);z-index:0}.template-intro__preview{position:relative;width:min(100%,420px);aspect-ratio:4 / 5;border-radius:32px;overflow:hidden;box-shadow:0 40px 80px -45px #0f172a8c;animation:introFloat 6s ease-in-out infinite}.template-intro__preview img{width:100%;height:100%;object-fit:cover}.template-intro__orb{position:absolute;border-radius:999px;filter:blur(0);opacity:.75;mix-blend-mode:soft-light;animation:orbPulse 8s ease-in-out infinite}.template-intro__orb--primary{width:clamp(180px,32vw,260px);height:clamp(180px,32vw,260px);background:radial-gradient(circle,#6366f166,#6366f100);top:8%;right:10%;animation-delay:-2s}.template-intro__orb--secondary{width:clamp(220px,38vw,320px);height:clamp(220px,38vw,320px);background:radial-gradient(circle,#22d3ee47,#22d3ee00);bottom:4%;left:2%}.pulse-highlight{animation:highlightGlow .9s ease-out;transform:translateY(-4px)}@media(max-width:920px){.template-intro{grid-template-columns:1fr;border-radius:28px}.template-intro__preview{width:min(100%,360px)}}@media(max-width:640px){.template-intro{padding:2.4rem 1.6rem}.template-intro__actions{flex-direction:column;align-items:stretch}.schedule-week-scroll{gap:.7rem}.schedule-day-card{min-width:150px}.slot-button{padding:.55rem .6rem}.slot-button__time{font-size:.9rem}.schedule-times-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}#reserva-asistente,#reserva-manual{scroll-margin-top:120px}@media(min-width:1100px){.template-page>.template-view{width:min(100%,1180px);margin:0 auto}}@keyframes introFadeUp{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes introFloat{0%,to{transform:translateY(-6px)}50%{transform:translateY(10px)}}@keyframes orbPulse{0%,to{transform:scale(.9) translateY(-8px)}50%{transform:scale(1.05) translateY(6px)}}@keyframes highlightGlow{0%{box-shadow:0 0 #6366f100}40%{box-shadow:0 0 0 12px #6366f126}to{box-shadow:0 0 #6366f100}}@media(prefers-reduced-motion:reduce){.template-intro,.template-intro__content,.template-intro__preview,.template-intro__orb,.btn-cta,.pulse-highlight{animation:none!important;transition:none!important}}.template-view{display:flex;flex-direction:column;gap:3rem}.template-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:center;padding:3.5rem 3rem;border-radius:32px;gap:2rem;background:var(--secondary-color, #eef2ff)}.template-hero__copy{display:flex;flex-direction:column;gap:1rem}.template-hero h1{margin:0;font-size:clamp(2.3rem,3vw,3.1rem);color:#0f172a}.template-hero p{margin:0;font-size:1.125rem;color:#0f172ab3}.template-hero__image{width:100%;border-radius:24px;object-fit:cover;box-shadow:0 30px 60px -40px #0f172a80}.template-pill{display:inline-block;padding:.4rem .8rem;border-radius:999px;font-size:.85rem;font-weight:600;background:#4338ca1f;color:#4338ca}.template-feature-list{display:grid;gap:.8rem;margin:0;padding:0;list-style:none}.template-feature-list li{display:flex;flex-direction:column;gap:.2rem;background:#fff9;padding:.9rem 1.1rem;border-radius:14px;border:1px solid rgba(15,23,42,.05)}.template-feature-list h3{margin:0;font-size:1rem}.template-section{display:flex;flex-direction:column;gap:1.5rem}.template-section h2{margin:0;font-size:1.9rem}.template-section p{margin:0;color:#0f172aad}.template-section--split{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start}.template-section__content{display:flex;flex-direction:column;gap:1rem}.template-card--highlight{background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:24px;padding:1.75rem;color:#312e81}.template-card--highlight .tag{display:inline-flex;background:#6366f133;color:#312e81;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600}.bullet-list{margin:0;padding-left:1.2rem;color:#0f172ab3}.bullet-list li{margin-bottom:.4rem}.testimonial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.testimonial-card{background:#fff;border-radius:20px;padding:1.5rem;border:1px solid rgba(15,23,42,.08);box-shadow:0 16px 44px -35px #0f172a80;display:flex;flex-direction:column;gap:1rem}.testimonial-card p{margin:0;font-style:italic}.testimonial-card span{font-weight:600;color:#0f172abf}.team-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.team-card{background:#fff;border-radius:20px;overflow:hidden;border:1px solid rgba(15,23,42,.08)}.team-card img{width:100%;height:220px;object-fit:cover}.team-card div{padding:1.1rem 1.4rem 1.6rem}.team-card h3{margin:0;font-size:1.2rem}.team-card span{color:#0f172aa6}.template-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-top:1rem}.template-stats strong{font-size:1.5rem;color:var(--primary-color, #1f8ef1)}.achievement-grid{margin-top:1.5rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.achievement-card{background:#fff;border-radius:16px;padding:1.25rem;border:1px solid rgba(15,23,42,.08)}.achievement-card strong{display:block;font-size:1.3rem;color:var(--primary-color, #f58e00)}.appointment-form{background:#fff;border-radius:24px;padding:2rem;border:1px solid rgba(15,23,42,.08);box-shadow:0 20px 40px -36px #0f172a80;display:flex;flex-direction:column;gap:1rem;transition:box-shadow .3s ease,transform .3s ease;width:min(100%,640px);margin:0 auto}.appointment-form h3{margin:0}.appointment-form__hint{margin:0;color:#0f172a99}.form-grid{display:grid;gap:1rem 1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.form-grid label{display:flex;flex-direction:column;gap:.5rem;font-weight:600;color:#0f172abf}.form-grid input,.form-grid textarea{border-radius:12px;border:1px solid rgba(15,23,42,.12);padding:.75rem 1rem;font:inherit;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.form-grid input:focus,.form-grid textarea:focus{outline:none;border-color:var(--accent-color, #6366f1);box-shadow:0 0 0 3px #6366f133}.form-slot-summary{border:1px dashed rgba(15,23,42,.2);border-radius:18px;padding:1rem 1.25rem;background:#0f172a05;display:flex;flex-direction:column;gap:.3rem;min-height:96px}.form-slot-summary span{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#0f172a99}.form-slot-summary strong{font-size:1.05rem;color:#0f172ad9;font-weight:600}.form-slot-summary--active{border-style:solid;border-color:var(--accent-color, #6366f1);background:#6366f114;box-shadow:0 12px 24px -18px var(--accent-color, #6366f1)}.form-grid__wide{grid-column:1 / -1}.form-status{margin:0;padding:.85rem 1.1rem;border-radius:12px;font-weight:500}.form-status--success{background:#22c55e1f;color:#166534}.form-status--error{background:#f871711f;color:#b91c1c}.form-section-title{margin:1.5rem 0 .5rem;font-size:1.05rem;font-weight:600;color:#0f172ab3}.form-summary-example{margin-top:1.5rem;background:#6366f114;border:1px solid rgba(99,102,241,.18);border-radius:16px;padding:1.2rem 1.4rem;color:#0f172abf}.form-summary-example h4{margin-top:0;margin-bottom:.6rem}.form-summary-example ul{margin:.6rem 0 0;padding-left:1.2rem;color:#0f172ab3}.form-summary-example li{margin-bottom:.4rem}.template-booking{display:grid;gap:clamp(1.25rem,2.8vw,2rem);margin-top:.5rem}.template-booking__login{display:flex;justify-content:flex-end;align-items:center}.template-booking__schedule,.template-booking__form,.template-booking__assistant{min-width:0}.template-booking__form,.template-booking__assistant{display:flex;flex-direction:column;gap:1.25rem}.template-booking .schedule-board,.template-booking .appointment-form,.template-booking .chat-assistant{margin:0;width:100%}.template-booking .schedule-board{max-width:680px}.template-booking .appointment-form{max-width:580px}.template-booking .chat-assistant{max-width:420px;align-self:flex-start}.owner-login-button{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;border-radius:999px;border:1px solid rgba(15,23,42,.15);font-size:.85rem;font-weight:600;color:#0f172aa6;background:#ffffffd9;box-shadow:0 8px 22px -18px #0f172acc;transition:color .15s ease,border-color .15s ease,transform .15s ease}.owner-login-button:hover{color:#0f172af2;border-color:#0f172a59;transform:translateY(-1px)}.owner-login-button svg{width:14px;height:14px}.owner-access{width:100%;display:flex;flex-direction:column;gap:.5rem}.owner-access__header{display:flex;flex-direction:column;gap:.35rem}.owner-access__header p{margin:0;font-size:.9rem;color:#0f172a99}.owner-access__button{border:none;border-radius:999px;padding:.5rem 1rem;font-weight:600;background:linear-gradient(120deg,#6366f1,#22d3ee);color:#fff;cursor:pointer;box-shadow:0 12px 30px -18px #6366f1cc;transition:transform .15s ease}.owner-access__button:hover{transform:translateY(-1px)}.owner-access__panel{border-radius:24px;border:1px solid rgba(99,102,241,.2);background:#6366f10d;padding:1rem}.admin-page{display:flex;flex-direction:column;gap:1.5rem}.admin-page--compact .admin-card,.admin-page--compact .admin-results{box-shadow:none;border:1px dashed rgba(99,102,241,.3)}.admin-page--compact .admin-card__subtitle{font-size:.9rem}.admin-card,.admin-results{background:#fff;border-radius:24px;padding:clamp(1.2rem,2.2vw,1.8rem);border:1px solid rgba(15,23,42,.08);box-shadow:0 25px 60px -40px #0f172a80}.admin-card h1{margin-top:0;margin-bottom:.2rem}.admin-card__subtitle{margin-top:0;margin-bottom:1.5rem;color:#0f172aa6}.admin-form{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.admin-form label{display:flex;flex-direction:column;gap:.4rem;font-weight:600;color:#0f172abf}.admin-form input{border-radius:14px;border:1px solid rgba(15,23,42,.15);padding:.75rem 1rem;font:inherit}.admin-form button{grid-column:1 / -1;justify-self:flex-start}.admin-remember{grid-column:1 / -1;display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#0f172aa6}.admin-remember input{width:auto}.admin-status{margin-top:1rem;padding:.75rem 1rem;border-radius:16px;font-weight:600}.admin-status--success{background:#10b9811f;color:#065f46}.admin-status--error{background:#ef44441f;color:#991b1b}.admin-results__header{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.25rem}@media(min-width:768px){.admin-results__header{flex-direction:row;align-items:center;justify-content:space-between}}.admin-results__header h2{margin:0}.admin-results__header p{margin:.2rem 0 0;color:#0f172a99}.admin-chip{display:inline-flex;align-items:center;padding:.3rem .8rem;border-radius:999px;border:1px solid rgba(15,23,42,.12);font-size:.85rem;font-weight:600;margin-right:.4rem}.admin-chip--secondary{background:#0f172a0a}.admin-table-wrapper{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;min-width:720px}.admin-table th,.admin-table td{border-bottom:1px solid rgba(15,23,42,.08);text-align:left;padding:.65rem .5rem;vertical-align:top}.admin-table th{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:#0f172a99}.admin-table__summary{margin:.2rem 0 0;color:#0f172a99;font-size:.85rem}.admin-filter{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem;align-items:end}.admin-filter label{display:flex;flex-direction:column;gap:.35rem;font-weight:600;color:#0f172abf}.admin-filter input,.admin-filter select{border-radius:12px;border:1px solid rgba(15,23,42,.12);padding:.5rem .8rem;font:inherit}.admin-filter__info{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem;color:#0f172aa6}.template-view--diavola{background:#f7f6f2;border:1px solid rgba(0,0,0,.03);border-radius:18px;overflow:hidden}.diavola-hero{position:relative;min-height:60vh;display:grid;place-items:center;overflow:hidden;color:#fff}.diavola-hero img{width:100%;height:100%;object-fit:cover;filter:brightness(.6)}.diavola-hero__overlay{position:absolute;inset:0;background:linear-gradient(135deg,#2e7a3cb3,#c8794a99)}.diavola-hero__content{position:relative;z-index:2;padding:clamp(1.5rem,5vw,3rem);max-width:1100px;display:grid;gap:.8rem}.diavola-hero h1{margin:0;font-size:clamp(2rem,4vw,2.8rem);font-family:Playfair Display,serif}.diavola-hero__chips{display:flex;gap:.5rem;flex-wrap:wrap}.diavola-hero__chips span{background:#f0c23233;color:#fff;padding:.35rem .65rem;border-radius:12px;font-weight:700;border:1px solid rgba(244,180,0,.3)}.diavola-pill{display:inline-flex;align-items:center;gap:.4rem;background:#f4b40033;color:#fff;padding:.35rem .75rem;border-radius:999px;font-weight:700;width:fit-content}.diavola-highlight{background:linear-gradient(135deg,#b35a4014,#3d5e370d);border-radius:18px;padding:clamp(1.2rem,4vw,2rem);box-shadow:0 16px 30px -28px #0006}.diavola-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:1rem}.diavola-card{background:#fff;border-radius:16px;padding:1rem;border:1px solid rgba(0,0,0,.05);box-shadow:0 12px 26px -24px #00000080;display:flex;justify-content:space-between;gap:.8rem;align-items:flex-start;min-height:140px}.diavola-card h3{margin:0;font-family:Playfair Display,serif}.diavola-card p{margin:.35rem 0 0;color:#000000b3}.diavola-services{background:#fff;border-radius:16px;padding:1.1rem 1.2rem;border:1px solid rgba(0,0,0,.05);box-shadow:0 12px 26px -24px #00000080}.diavola-page{--accent: var(--diavola-accent, #c8794a);background:linear-gradient(180deg,#f7f6f2,#f1eae0);color:#2a1b11}.diavola-top{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));min-height:60vh;position:relative;overflow:hidden}.diavola-top__overlay{position:absolute;inset:0;background:linear-gradient(135deg,#2e7a3cbf,#c8794aa6),radial-gradient(circle at 15% 15%,rgba(240,194,50,.25),transparent 40%);z-index:1}.diavola-top__content{position:relative;z-index:2;padding:clamp(1.5rem,4vw,3rem);color:#fff;display:grid;gap:.6rem}.diavola-top__content h1{margin:0;font-family:Playfair Display,serif;font-size:clamp(2.1rem,4vw,3rem)}.diavola-lead{margin:0;max-width:620px;color:#f4f4f4}.diavola-kicker{letter-spacing:.05em;font-weight:700;text-transform:uppercase;margin:0}.diavola-badges{display:flex;gap:.4rem;flex-wrap:wrap}.diavola-badges span{background:#ffffff29;padding:.35rem .7rem;border-radius:10px;border:1px solid rgba(255,255,255,.2);font-weight:600}.diavola-top__media{position:relative;z-index:2;min-height:300px}.diavola-top__media img{width:100%;height:100%;object-fit:cover;border-left:8px solid rgba(255,255,255,.14);filter:brightness(.9)}.diavola-section{max-width:1200px;margin:0 auto;padding:clamp(1.5rem,4vw,3rem) 1.25rem}.diavola-section__head{display:grid;gap:.4rem;margin-bottom:1rem}.diavola-section__head h2{margin:0;font-family:Playfair Display,serif;color:#3a2605}.diavola-section__head p{margin:0;color:#000000ad}.diavola-menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.diavola-menu__item{background:#fff;border-radius:12px;padding:1rem;border-left:5px solid var(--accent);box-shadow:0 12px 26px -24px #00000059}.diavola-menu__title{display:flex;justify-content:space-between;gap:.5rem;align-items:baseline}.diavola-menu__title h3{margin:0;font-family:Playfair Display,serif}.diavola-price{font-weight:700;color:#3a2605}.diavola-menu__item p{margin:.35rem 0 .6rem;color:#000000b3}.diavola-tags{display:flex;gap:.4rem;flex-wrap:wrap}.diavola-tags span{background:#f7f6f2;border:1px solid #d8c9b1;padding:.15rem .5rem;border-radius:8px;font-size:.85rem}.diavola-reservas{background:#1f120a;color:#f7f6f2;padding:clamp(1.5rem,4vw,3rem) 0}.diavola-reservas__inner{max-width:1200px;margin:0 auto;padding:0 1.25rem;display:grid;gap:1.2rem}.diavola-reservas__intro h2{margin:0;font-family:Playfair Display,serif}.diavola-reservas__intro p{margin:.4rem 0 .8rem}.diavola-reservas__grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.diavola-reservas .calendar-booking,.diavola-reservas .appointment-form{box-shadow:0 16px 34px -28px #0000008c;border:1px solid rgba(255,255,255,.08)}.diavola-about{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start}.diavola-about__text h2{margin-top:0;font-family:Playfair Display,serif}.diavola-about__card{background:#fff;border-radius:14px;padding:1rem 1.2rem;border:1px solid rgba(0,0,0,.05);box-shadow:0 12px 24px -22px #0006}.diavola-gallery{background:#f4f4f4;border-radius:12px}.diavola-gallery__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem}.diavola-gallery__item{position:relative;overflow:hidden;border-radius:12px;box-shadow:0 12px 24px -22px #00000059}.diavola-gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.diavola-gallery__item figcaption{position:absolute;inset:0;display:grid;place-items:center;background:#f0c232b8;color:#2a1b11;font-weight:700;opacity:0;transition:opacity .3s ease}.diavola-gallery__item:hover img{transform:scale(1.05)}.diavola-gallery__item:hover figcaption{opacity:1}.diavola-opiniones__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.9rem}.diavola-review{background:#fff;border-radius:12px;padding:1rem;border-left:4px solid var(--accent);box-shadow:0 12px 24px -22px #00000059}.diavola-stars{color:var(--accent);margin-bottom:.4rem}.diavola-contacto__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.diavola-services{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.diavola-services span{background:#fff;border:1px solid #d8c9b1;padding:.25rem .6rem;border-radius:8px;font-size:.9rem}.diavola-hours{width:100%;border-collapse:collapse}.diavola-hours td{padding:.35rem 0;border-bottom:1px solid #e6ded1}.diavola-hours tr:last-child td{border-bottom:none}.diavola-map{background:linear-gradient(135deg,#b35a401a,#3d5e371a);border:1px dashed rgba(0,0,0,.2);border-radius:12px;display:grid;place-items:center;padding:1.4rem;color:#000000b3}.diavola-page{font-family:Montserrat,system-ui,sans-serif;background:radial-gradient(circle at 8% 12%,rgba(240,194,50,.1),transparent 30%),radial-gradient(circle at 90% 10%,rgba(213,64,58,.12),transparent 32%),linear-gradient(180deg,#f8f3eb,#f2e8dc);color:#2b1b11}.diavola-page h1,.diavola-page h2,.diavola-page h3{font-family:Playfair Display,serif;color:#34150f}.diavola-page p,.diavola-page li,.diavola-page label{color:#3f2b1d}.diavola-page .btn{border-radius:999px;letter-spacing:.02em;box-shadow:0 10px 24px -14px #00000059}.diavola-page .btn-primary{background:linear-gradient(135deg,#c8794a,#b9673c);color:#fff;border:none}.diavola-page .btn-secondary{background:#fff;border:1px solid rgba(183,119,58,.35);color:#b7773a}.diavola-page .template-booking .calendar-booking,.diavola-page .template-booking .appointment-form,.diavola-page .template-booking .chat-assistant{background:#fffaf5;border:1px solid rgba(0,0,0,.04);box-shadow:0 18px 40px -30px #00000073;border-radius:18px}.diavola-page .appointment-form{padding:1.2rem 1.4rem}.diavola-page .appointment-form input,.diavola-page .appointment-form textarea,.diavola-page .appointment-form select{border-radius:14px;border:1px solid rgba(0,0,0,.08);background:#fff}.diavola-page .calendar-booking{border:1px solid rgba(0,0,0,.04);background:#fff}.diavola-page .diavola-owner .owner-access__button{padding:.3rem .65rem;background:#2e7a3c1f;color:#2e7a3c;border:1px solid rgba(46,122,60,.24);box-shadow:none}.diavola-page .diavola-owner .owner-access__panel{border:1px dashed rgba(0,0,0,.08);background:#fffdf9;box-shadow:none}.diavola-page .template-booking{display:grid;gap:1.2rem;margin-top:0}.diavola-page .template-booking__schedule,.diavola-page .template-booking__form,.diavola-page .template-booking__assistant{min-width:0}.diavola-page .template-booking .schedule-board,.diavola-page .template-booking .appointment-form,.diavola-page .template-booking .chat-assistant{box-shadow:0 16px 34px -28px #00000073;border:1px solid rgba(0,0,0,.05);background:#fff}.diavola-page .template-booking .appointment-form{max-width:none}.diavola-page .diavola-owner .owner-access__button{padding:.4rem .75rem;font-size:.9rem;background:#c628281f;color:#3a1c1a;border:1px solid rgba(198,40,40,.25);box-shadow:none}.diavola-page .diavola-owner .owner-access__panel{border:1px dashed rgba(0,0,0,.08);background:#fff}.admin-badge{display:inline-flex;align-items:center;padding:.25rem .6rem;border-radius:999px;font-size:.8rem;text-transform:capitalize;background:#0f172a0f}.admin-badge--confirmed{background:#10b98126;color:#065f46}.admin-badge--pending{background:#fbbf2433;color:#92400e}.admin-empty{padding:1rem;border-radius:16px;background:#94a3b82e;text-align:center;font-weight:500;color:#0f172ab3}.calendar-booking{width:100%;background:#fff;border-radius:28px;padding:clamp(1.2rem,2.5vw,1.75rem);border:1px solid rgba(15,23,42,.08);box-shadow:0 30px 65px -48px #0f172a99;display:flex;flex-direction:column;gap:1.5rem;position:relative;overflow:hidden;isolation:isolate}.calendar-booking:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% -10%,rgba(255,255,255,.7) 0%,transparent 45%) no-repeat,radial-gradient(circle at 90% 0%,var(--calendar-accent-soft, rgba(37, 99, 235, .18)),transparent 50%) no-repeat,radial-gradient(circle at 0% 10%,var(--calendar-accent-soft, rgba(37, 99, 235, .08)),transparent 55%) no-repeat;opacity:.9;pointer-events:none;mix-blend-mode:screen}.calendar-booking__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;position:relative;z-index:1}.calendar-booking__eyebrow{display:inline-flex;padding:.2rem .75rem;border-radius:999px;background:var(--calendar-accent-soft, rgba(37, 99, 235, .12));color:var(--calendar-accent, #2563eb);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;margin-bottom:.4rem;border:1px solid var(--calendar-accent-soft, rgba(37, 99, 235, .2))}.calendar-booking__subtitle{margin:.25rem 0 0;color:#0f172aa6;max-width:360px}.calendar-booking__status{padding:.5rem .85rem;border-radius:14px;background:#0f172a0d;font-weight:600;color:#0f172ab3;font-size:.85rem}.calendar-booking__panel{display:grid;gap:clamp(1rem,2vw,1.75rem);position:relative;z-index:1}@media(min-width:820px){.calendar-booking__panel{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-month{min-width:280px}}.calendar-month{background:#0f172a05;border-radius:24px;border:1px solid rgba(15,23,42,.08);padding:1.25rem 1.35rem;display:flex;flex-direction:column;gap:.9rem}.calendar-month__nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-weight:600;text-transform:capitalize}.calendar-month__nav button{border:none;background:#0f172a14;border-radius:12px;padding:.4rem .75rem;cursor:pointer;font-weight:600;transition:background .15s ease,transform .15s ease}.calendar-month__nav button:hover{background:#0f172a29;transform:translateY(-1px)}.calendar-month__weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:#0f172a73}.calendar-month__weekdays span{text-align:center;padding-bottom:.35rem}.calendar-month__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem}.calendar-day{border:none;background:#fff;border-radius:18px;padding:.65rem 0;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;font-weight:600;color:#0f172abf;cursor:pointer;transition:background .15s ease,color .15s ease,transform .15s ease;position:relative;box-shadow:inset 0 0 0 1px #0f172a0a}.calendar-day span{font-size:.95rem}.calendar-day--muted{color:#0f172a59;background:#0f172a05;box-shadow:none}.calendar-day--today{box-shadow:inset 0 0 0 2px #0f172a14}.calendar-day--selected{background:var(--calendar-accent, #2563eb);color:#fff;box-shadow:0 16px 30px -20px var(--calendar-accent-strong, rgba(37, 99, 235, .55))}.calendar-day__indicator{width:5px;height:5px;border-radius:999px;position:absolute;bottom:.4rem}.calendar-day__indicator--available{background:#22c55e}.calendar-day__indicator--error{background:#f97316}.calendar-slots{background:#fffffff2;border-radius:24px;border:1px solid rgba(15,23,42,.08);padding:1.4rem 1.5rem;display:flex;flex-direction:column;gap:1.2rem;box-shadow:0 20px 40px -32px #0f172a80}.calendar-slots__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.calendar-slots__header h4{margin:0;font-size:1.15rem}.calendar-slots__header p{margin:.25rem 0 0;color:#0f172aa6;font-size:.9rem}.calendar-slots__action{border:none;background:var(--calendar-accent, #2563eb);color:#fff;border-radius:12px;padding:.6rem 1.1rem;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 12px 25px -12px var(--calendar-accent-strong, rgba(37, 99, 235, .6))}.calendar-slots__action:hover{transform:translateY(-1px)}.calendar-slots__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.calendar-slots__status{padding:.9rem 1rem;border-radius:14px;background:#94a3b81f;color:#0f172ab3;font-weight:500}.calendar-slots__selection{padding:.85rem 1.1rem;border-radius:14px;background:var(--calendar-accent-soft, rgba(37, 99, 235, .1));color:var(--calendar-accent, #2563eb);font-weight:500}@media(min-width:1040px){.template-booking{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-areas:"schedule form" "assistant form";align-items:start}.template-booking__login{grid-column:1 / -1}.template-booking__schedule{grid-area:schedule}.template-booking__form{grid-area:form}.template-booking__assistant{grid-area:assistant;align-items:flex-start}}.schedule-board{display:flex;flex-direction:column;gap:1.25rem;margin:0 auto 2rem;width:min(100%,720px)}.schedule-controls{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.schedule-toggle{display:inline-flex;align-items:center;border-radius:999px;padding:.25rem;background:#0f172a0d}.schedule-toggle button{border:none;background:transparent;padding:.45rem 1rem;border-radius:999px;cursor:pointer;font-weight:600;font-size:.92rem;color:#0f172a99;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.schedule-toggle button.active{background:#fff;box-shadow:0 4px 12px -6px #0f172a73;color:#0f172a}.schedule-navigation{display:inline-flex;gap:.65rem;align-items:center;font-weight:500;font-size:.95rem}.schedule-navigation button{border:1px solid rgba(15,23,42,.15);background:#fff;padding:.4rem .9rem;border-radius:999px;cursor:pointer;font-weight:600;transition:transform .15s ease,border-color .15s ease}.schedule-navigation button:hover{transform:translateY(-1px);border-color:#0f172a66}.schedule-loading{border-radius:16px;padding:1.1rem;background:#6366f114;color:#0f172aad;text-align:center}.schedule-week-header,.schedule-day-header{display:flex;flex-direction:column;gap:.35rem}.schedule-week-header h4,.schedule-day-header h4{margin:0;font-size:1.15rem}.schedule-week-header p,.schedule-day-header p{margin:0;font-size:.9rem;color:#0f172a99}.schedule-week-view{display:flex;flex-direction:column;gap:1.1rem}.schedule-week-scroll{display:flex;gap:.9rem;overflow-x:auto;padding:.2rem .25rem .35rem;margin:0 -.25rem;scroll-snap-type:x proximity;scrollbar-width:thin}.schedule-week-scroll::-webkit-scrollbar{height:6px}.schedule-week-scroll::-webkit-scrollbar-thumb{background:#6366f133;border-radius:999px}.schedule-day-card{background:#ffffffeb;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:1rem;display:flex;flex-direction:column;gap:.65rem;min-width:180px;scroll-snap-align:start;box-shadow:0 18px 36px -34px #0f172a73}.schedule-day-card__header{display:flex;justify-content:space-between;align-items:center}.schedule-day-title{font-weight:600;text-transform:capitalize;font-size:.95rem}.schedule-day-date{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;border-radius:14px;background:#6366f11f;color:#4338cae6;font-weight:600;font-size:.95rem}.slot-button-stack{display:flex;flex-direction:column;gap:.5rem}.slot-button{border:1px solid rgba(15,23,42,.12);background:#fff;border-radius:12px;padding:.6rem .75rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;font:inherit;font-size:.95rem;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.slot-button:disabled{cursor:not-allowed;opacity:.65}.slot-button--available:hover:not(:disabled){transform:translateY(-2px);border-color:#6366f166;box-shadow:0 12px 24px -26px #0f172a8c}.slot-button--full{background:#f8fafca6}.slot-button--selected{border-color:#4338ca;box-shadow:0 0 0 3px #4338ca38}.slot-button--more{background:#6366f114;border-color:transparent;color:#4338ca;font-weight:600;justify-content:center}.slot-button--more:hover{background:#6366f11f}.slot-button__time{font-weight:600;color:#0f172a}.slot-badge{padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;white-space:nowrap}.slot-badge--free{background:#22c55e2e;color:#166534}.slot-badge--few{background:#6366f129;color:#4338ca}.slot-badge--last{background:#fbbf2433;color:#92400e}.slot-badge--full{background:#94a3b838;color:#1e293ba6}.slot-empty{font-size:.85rem;color:#0f172a94;text-align:center}.slot-button-stack .slot-empty{padding:.55rem;border-radius:12px;background:#94a3b81f}.slot-empty--card{padding:1.1rem;border-radius:14px;background:#94a3b824;font-weight:500}.schedule-day-view{background:#ffffffe6;border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:1.4rem 1.6rem;display:flex;flex-direction:column;gap:1.1rem}.schedule-day-groups{display:grid;gap:1.1rem}.schedule-day-group{display:flex;flex-direction:column;gap:.65rem}.schedule-day-group__label{display:flex;align-items:center;gap:.75rem;font-weight:600;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#0f172a99}.schedule-day-group__label:after{content:"";flex:1;height:1px;border-radius:999px;background:#0f172a1f}.schedule-times-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.75rem}.chat-assistant{display:flex;flex-direction:column;gap:1rem;background:#fff;border-radius:20px;border:1px solid rgba(15,23,42,.08);padding:1.2rem 1.5rem;box-shadow:0 18px 36px -34px #0f172a80;transition:box-shadow .3s ease,transform .3s ease;width:min(100%,420px);min-height:400px;align-self:center;position:relative;overflow:hidden;isolation:isolate}.chat-header h4{margin:0}.chat-header p{margin:.3rem 0 0;color:#0f172aa6;font-size:.95rem}.chat-messages{max-height:380px;min-height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:.8rem;padding-right:.5rem}.chat-bubble{max-width:80%;padding:.6rem .9rem;border-radius:14px;line-height:1.45;font-size:.95rem;background:#0f172a0a;border:1px solid rgba(15,23,42,.06)}.chat-message-content{display:grid;gap:.6rem}.chat-message-content p{margin:0}.chat-message-content strong{color:#0f172a}.chat-message-content table{width:100%;border-collapse:collapse;border:1px solid rgba(15,23,42,.1);border-radius:12px;overflow:hidden;font-size:.9rem}.chat-message-content thead tr{background:#6366f11f}.chat-message-content th,.chat-message-content td{padding:.55rem .7rem;text-align:left;border-bottom:1px solid rgba(15,23,42,.08);vertical-align:top}.chat-message-content tbody tr:last-child td{border-bottom:none}.chat-message-content code{background:#0f172a0f;padding:.15rem .35rem;border-radius:6px;font-size:.8rem}.chat-message-content em{color:#0f172abf}.chat-message-content ul,.chat-message-content ol{margin:0;padding-left:1.2rem;display:grid;gap:.35rem}.service-options{display:grid;gap:.65rem}.service-option-card{display:grid;gap:.35rem;padding:.85rem 1rem;border-radius:14px;border:1px solid rgba(99,102,241,.3);background:#6366f10f;text-align:left;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;color:#0f172a}.service-option-card:hover{transform:translateY(-1px);box-shadow:0 10px 20px -18px #0f172a99}.chat-assistant:before,.chat-assistant:after{content:"";position:absolute;inset:-20%;background-size:280px 280px;background-repeat:repeat;opacity:.35;mix-blend-mode:lighten;pointer-events:none}.chat-assistant:before{background-image:radial-gradient(circle at center,rgba(99,102,241,.25) 0,transparent 40%),radial-gradient(circle at center,rgba(34,211,238,.18) 0,transparent 45%);animation:particleDrift 18s linear infinite}.chat-assistant:after{background-image:radial-gradient(circle at center,rgba(244,114,182,.08) 0,transparent 45%),radial-gradient(circle at center,rgba(129,140,248,.15) 0,transparent 50%);animation:particleDrift 24s linear infinite reverse}.chat-typing{align-self:flex-start;display:inline-flex;gap:.35rem;padding:.5rem .7rem;border-radius:14px;background:#6366f11f;border:1px solid rgba(99,102,241,.18);margin-left:.2rem}.typing-dot{width:8px;height:8px;border-radius:50%;background:#4338cae6;animation:typingBounce 1.2s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}@keyframes particleDrift{0%{transform:translateZ(0) rotate(0) scale(1)}50%{transform:translate3d(40px,20px,0) rotate(180deg) scale(1.05)}to{transform:translateZ(0) rotate(360deg) scale(1)}}@keyframes typingBounce{0%,to{transform:translateY(0);opacity:.6}50%{transform:translateY(-4px);opacity:1}}@media(prefers-reduced-motion:reduce){.chat-assistant:before,.chat-assistant:after,.typing-dot{animation:none!important}}.service-option-card__title{font-weight:600;font-size:.98rem}.service-option-card__meta{font-size:.85rem;color:#0f172aa6}.service-option-card__meta span{display:inline-flex;align-items:center;gap:.35rem}.service-option-card__meta span:before{content:"⏱️"}.service-option-card p{margin:0;font-size:.9rem;color:#0f172abf}.service-option-card__cta{align-self:start;padding:.35rem .75rem;border-radius:999px;background:#0f172a14;font-size:.8rem;font-weight:500;display:inline-flex;align-items:center;gap:.25rem;color:#0f172ab3}.service-option-card__cta:after{content:"➜";font-size:.85rem}.chat-bubble--assistant{align-self:flex-start}.chat-bubble--user{align-self:flex-end;background:#6366f129;border-color:#6366f133}.chat-form{display:flex;gap:.6rem}.chat-form input{flex:1;border-radius:999px;border:1px solid rgba(15,23,42,.12);padding:.65rem 1rem;font:inherit}.chat-form input:focus{outline:none;border-color:#6366f159;box-shadow:0 0 0 3px #6366f129}.chat-form button{border-radius:999px;border:none;padding:.65rem 1.2rem;background:linear-gradient(120deg,#6366f1,#22d3ee);color:#fff;font-weight:600;cursor:pointer;transition:transform .1s ease}.chat-form button:disabled{opacity:.6;cursor:not-allowed}.chat-form button:not(:disabled):hover{transform:translateY(-1px)}.not-found-page{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}@media(max-width:960px){.app-main,.app-header,.app-footer{padding-left:1.5rem;padding-right:1.5rem}.template-hero{padding:2.5rem}}@media(max-width:640px){.app-header,.app-footer,.app-main{padding-left:1.2rem;padding-right:1.2rem}.template-hero{padding:2rem 1.5rem}.appointment-form{padding:1.5rem}}.diavola-shell .diavola-reserva-wrap{--card-bg: rgba(255, 255, 255, .95);--stroke: rgba(210, 201, 186, .65);--soft: rgba(232, 217, 195, .5);--accent: #c8794a;--accent-2: #b9673c;--text: #2e2521;--muted: #6b5b52;position:relative;padding:1.25rem 1rem 2rem;color:var(--text)}.diavola-shell .diavola-reserva-bg{position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(200,121,74,.25),transparent 42%),radial-gradient(circle at 80% 15%,rgba(45,122,60,.18),transparent 45%),linear-gradient(180deg,#f3e7d6d9,#e9d9c3f2);pointer-events:none}.diavola-shell .diavola-reserva-container{position:relative;max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:1.4rem}.diavola-shell .diavola-reserva-header{text-align:center;display:grid;gap:.5rem}.diavola-shell .diavola-reserva-header h2{margin:0;font-size:clamp(1.9rem,3vw,2.3rem);color:var(--text)}.diavola-shell .diavola-reserva-header p{margin:0;color:var(--muted);font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}.diavola-shell .diavola-reserva-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;justify-items:center}.diavola-shell .diavola-reserva-info{display:grid;gap:.9rem}.diavola-shell .diavola-info-card{background:var(--card-bg);border:1px solid var(--stroke);border-radius:18px;padding:1.1rem 1.2rem;box-shadow:0 16px 42px -30px #2e252147}.diavola-shell .diavola-info-card h3{margin:0 0 .4rem}.diavola-shell .diavola-info-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;color:var(--muted)}.diavola-shell .diavola-info-card li{display:flex;justify-content:space-between;gap:.6rem;border-bottom:1px solid var(--soft);padding-bottom:.3rem}.diavola-shell .diavola-info-card li:last-child{border-bottom:none}.diavola-shell .diavola-info-card p{margin:0 0 .5rem;color:var(--muted);font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}.diavola-shell .diavola-info-card a{color:var(--accent-green);font-weight:700;text-decoration:none}.diavola-pedidos-wrap{background:linear-gradient(140deg,#f3e7d6,#e9d9c3);padding:2rem 0 3rem}.pedidos-grid{align-items:stretch}.diavola-pedidos-form{display:grid;gap:.9rem;background:#fffaf4;border:1px solid #e7d8c8;border-radius:18px}.pedidos-list{background:#fff;border:1px solid #e7d8c8}.pedidos-ul{list-style:none;padding:0;margin:.6rem 0 0;display:grid;gap:.7rem}.pedidos-ul li{border:1px solid #efe4d7;border-radius:12px;padding:.75rem .9rem;box-shadow:0 14px 32px -30px #0006}.pedidos-ul__item{border:1px solid #efe4d7;border-radius:12px;padding:.65rem .8rem;box-shadow:0 12px 26px -28px #00000059;background:#fff}.pedidos-title{display:flex;justify-content:space-between;align-items:center;font-weight:700;color:var(--ink)}.pedidos-meta{font-size:.9rem;color:#6b5b52;margin-top:.2rem}.pedidos-notas{font-size:.9rem;color:#6b5b52;margin-top:.3rem}.pedidos-pill{background:#f3e7d6;color:#b9673c;padding:.15rem .55rem;border-radius:999px;font-size:.85rem;font-weight:700}.diavola-shell .diavola-reserva-widgets{display:grid;gap:.9rem;grid-template-columns:1fr;width:100%;max-width:1100px}@media(min-width:1024px){.diavola-shell .diavola-reserva-widgets{grid-template-columns:repeat(2,minmax(0,1fr))}}.diavola-shell .diavola-reserva-widgets--stacked{grid-template-columns:1fr}.diavola-shell .diavola-widget-card{background:#fff;border:1px solid rgba(210,201,186,.8);border-radius:24px;padding:1.1rem;box-shadow:0 24px 54px -34px #2e252147;min-height:480px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .2s ease,box-shadow .2s ease}.diavola-shell .diavola-widget-card .calendar-booking{background:transparent;border:none;box-shadow:none;padding:0}.diavola-shell .calendar-booking:after{display:none}.diavola-shell .calendar-booking{gap:.8rem;width:100%;background:#fff;border:1px solid rgba(210,201,186,.8);border-radius:24px;box-shadow:0 18px 48px -32px #2e252147;padding:1.1rem 1.2rem}.diavola-shell .calendar-booking__header{align-items:center;gap:.75rem;padding-bottom:.85rem;border-bottom:1px solid rgba(210,201,186,.6)}.diavola-shell .calendar-booking__eyebrow{background:linear-gradient(135deg,#2e7a3c26,#c8794a1f);border:1px solid rgba(46,122,60,.3);color:var(--accent-green);padding:.45rem 1.1rem;border-radius:999px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.diavola-shell .calendar-booking__status{background:var(--soft);border:1px solid var(--stroke);color:var(--muted)}.diavola-shell .calendar-month{background:#fffffff2;border:1px solid var(--stroke);border-radius:18px}.diavola-shell .calendar-month__grid{gap:.28rem}.diavola-shell .calendar-day{height:52px;border-radius:16px;background:#fffffff2;border:1px solid rgba(210,201,186,.8);color:#2e2521}.diavola-shell .calendar-day--selected{background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 12px 24px -16px #b9673cbf}.diavola-shell .calendar-day--muted{color:#f7f6f24d}.diavola-shell .calendar-slots{background:#ffffffdb;border:1px solid var(--stroke)}.diavola-shell .calendar-slots__status,.diavola-shell .slot-empty{background:var(--soft);color:var(--muted);border-radius:12px;border:1px dashed var(--stroke)}.diavola-shell .slot-button{background:#ffffffe6;border:1px solid var(--stroke);color:var(--text);border-radius:12px}.diavola-shell .slot-button--selected{border-color:var(--accent);box-shadow:0 0 0 3px #c8794a59}.diavola-shell .slot-badge--free{background:#2e7a3c2e;color:var(--accent-green)}.diavola-shell .slot-badge--few{background:#c8794a38;color:var(--accent)}.diavola-shell .diavola-widget-card h3{font-family:Playfair Display,serif;color:var(--ink);font-size:1.25rem;margin:0 0 .5rem}.diavola-admin-form{display:grid;gap:.85rem}.diavola-admin-grid{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.diavola-admin-form label{display:grid;gap:.35rem;color:var(--ink);font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;font-weight:600}.diavola-admin-form input,.diavola-admin-form select,.diavola-admin-form textarea{width:100%;border-radius:12px;border:1px solid rgba(183,119,58,.35);background:#fffffff0;color:var(--ink);padding:.75rem .9rem;font-size:.98rem;transition:border-color .15s ease,box-shadow .15s ease}.diavola-admin-form input:focus,.diavola-admin-form select:focus,.diavola-admin-form textarea:focus{border-color:var(--terracotta);box-shadow:0 0 0 2px #c8794a38;outline:none}.diavola-admin-form textarea{resize:vertical}.diavola-admin-form button{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border:none;border-radius:14px;padding:.95rem 1rem;font-weight:700;letter-spacing:.02em;cursor:pointer;box-shadow:0 18px 44px -26px #b9673ca6;transition:transform .15s ease,box-shadow .15s ease,background .2s ease}.diavola-admin-form button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 20px 50px -26px #b9673cbf}.diavola-admin-form button:disabled{opacity:.7;cursor:not-allowed}.reserve-cta{position:relative;overflow:hidden}.reserve-cta--ok{background:linear-gradient(135deg,#2e7a3c,#5fa36a)!important;box-shadow:0 16px 36px -20px #2e7a3c8c;animation:ctaSuccessPulse .32s ease}.reserve-cta--ok:after{content:"✔";position:absolute;right:.9rem;font-weight:800}.reserve-cta--ok:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff0,#ffffff59 60%,#fff0);transform:translate(-100%);animation:ctaFill 5s linear forwards;pointer-events:none}@keyframes ctaSuccessPulse{0%{transform:scale(1)}40%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes ctaFill{0%{transform:translate(-100%)}to{transform:translate(0)}}.diavola-resumen{display:flex;gap:.7rem;flex-wrap:wrap;font-weight:700;color:var(--ink)}.aforo-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border-radius:999px;font-weight:800;letter-spacing:.01em;font-size:.95rem;border:1px solid rgba(210,201,186,.8);background:#ffffffeb;color:var(--text);box-shadow:0 10px 26px -20px #2e252159}.aforo-pill--clear{background:#2e7a3c1f;border-color:#2e7a3c4d;color:#1f5f2e}.aforo-pill--low{background:#7eb86029;border-color:#7eb86052;color:#355624}.aforo-pill--mid{background:#c8794a1f;border-color:#c8794a52;color:#7b3f1c}.aforo-pill--high{background:#d5403a24;border-color:#d5403a52;color:#a3312b}.aforo-pill--full{background:#50141424;border-color:#50141459;color:#541414}.diavola-shell .appointment-form{max-width:960px;margin:0 auto;background:#fff;border:1px solid rgba(210,201,186,.8);border-radius:24px;padding:1.1rem 1.2rem;color:var(--ink);box-shadow:0 24px 54px -34px #2e252147}.diavola-shell .appointment-form .form-grid{gap:.45rem .7rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.diavola-shell .appointment-form h3{font-family:Playfair Display,serif;color:var(--ink);margin-bottom:.35rem;text-align:center}.diavola-shell .appointment-form input,.diavola-shell .appointment-form select,.diavola-shell .appointment-form textarea{border-radius:10px;border:1px solid rgba(183,119,58,.3);background:#ffffffeb;color:var(--ink);padding:.75rem .85rem;min-height:40px;font-size:.95rem}.diavola-shell .appointment-form input:focus,.diavola-shell .appointment-form select:focus,.diavola-shell .appointment-form textarea:focus{border-color:var(--terracotta);box-shadow:0 0 0 2px #c8794a38;outline:none}.diavola-shell .appointment-form button[type=submit]{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border:none;border-radius:12px;padding:.9rem 1rem}.diavola-shell .appointment-form label{color:var(--ink);font-size:.9rem}.diavola-shell .appointment-form input::placeholder,.diavola-shell .appointment-form textarea::placeholder{color:#6b5b52}.diavola-shell .chat-assistant{background:#181512;border:1px solid var(--stroke);border-radius:16px;color:var(--text);min-height:400px}.diavola-shell .chat-bubble{background:#ffffff0d;border:1px solid var(--stroke);color:var(--text)}.diavola-shell .chat-message-content table{border:1px solid var(--stroke)}.diavola-shell .chat-message-content thead tr{background:#c8794a38}.animate-slide-up{animation:slideUp .4s ease-out forwards}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:#f5f6f8}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#e5e7eb;border-radius:10px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:#d1d5db}.animate-fade-in{animation:fadeIn .3s ease-out forwards}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.animate-slide-up{animation:slideUp .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hidden{display:none!important}.block{display:block!important}@media(min-width:768px){.md\:grid{display:grid!important}.md\:block{display:block!important}.md\:hidden{display:none!important}}@media(max-width:767px){.md\:grid,.md\:block{display:none!important}}.reserva-mobile-card{background:transparent;border:none;border-radius:0;padding:.25rem .05rem .9rem;box-shadow:none;display:flex;flex-direction:column;gap:.75rem;width:100%}.reserva-mobile-tabs{display:grid;grid-template-columns:1fr 1fr;background:#efe3d4;border-radius:14px;padding:.22rem;border:1px solid rgba(183,119,58,.15)}.reserva-tab{border:none;background:transparent;padding:.55rem .4rem;border-radius:12px;font-weight:800;color:#6b5b52}.reserva-tab.active{background:#fff;color:#2e2521;box-shadow:0 10px 24px -20px #00000059}.reserva-stack{display:flex;flex-direction:column;gap:.75rem}.reserva-mobile-form{padding:1rem 1.05rem}.reserva-mobile-form label{font-weight:700;color:#2e2521}.reserva-mobile-form input,.reserva-mobile-form select,.reserva-mobile-form textarea{width:100%;border-radius:12px;border:1px solid rgba(0,0,0,.12);padding:.82rem .9rem;background:#fff;font-size:.98rem}.reserva-mobile-two{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.resumen-pill{background:#f3e7d6;color:#2e2521;border-radius:12px;padding:.75rem .9rem;font-weight:700;text-align:center;border:1px solid rgba(210,201,186,.9)}@media(max-width:768px){.diavola-reserva-container{padding:.12rem .2rem 1rem}.diavola-widget-card.diavola-widget-card--form{border-radius:16px;border:1px solid rgba(210,201,186,.45);box-shadow:0 18px 40px -30px #2e252159}.calendar-booking{border-radius:0;border:none;box-shadow:none;background:transparent;padding:0;width:100%;max-width:100%}.calendar-booking:after{display:none}.calendar-month{border-radius:12px;border:none;box-shadow:none;background:transparent;padding:.25rem 0!important;gap:.35rem;width:100%}.calendar-month__grid .calendar-day{background:transparent;border:none;color:#2e2521;box-shadow:none}.calendar-month__grid .calendar-day--selected{background:linear-gradient(135deg,#c8794a,#b9673c);color:#fff;border-radius:50%;box-shadow:0 10px 22px -16px #b9673ca6}.calendar-month__grid .calendar-day--muted{color:#2e252152}.calendar-month__grid{gap:.35rem;width:100%;margin:0 auto;padding:.35rem .4rem .25rem}.calendar-day{padding:0;width:46px;height:46px;margin:2px auto}.calendar-day__date{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:50%;border:1px solid transparent;transition:background .2s ease,color .2s ease}}@media(max-width:768px){.diavola-shell .diavola-widget-card .calendar-booking,.diavola-shell .calendar-booking{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;border-radius:0!important;width:100%!important}.diavola-shell .calendar-month{background:transparent!important;border:none!important;box-shadow:none!important;padding:.25rem 0!important;margin:0!important;border-radius:0!important;width:100%!important}.diavola-shell .calendar-month__header,.diavola-shell .calendar-booking__header{border:none!important}.diavola-shell .calendar-month__grid{gap:.35rem!important;padding:.35rem .4rem .25rem!important}.diavola-shell .calendar-day{background:transparent!important;border:none!important;box-shadow:none!important;width:46px!important;height:46px!important;margin:2px auto!important}.diavola-shell .calendar-day__date{width:44px!important;height:44px!important;border:1px solid transparent!important;border-radius:50%!important;transition:background .2s ease,color .2s ease}.diavola-shell .calendar-day--selected .calendar-day__date{border:none!important;background:linear-gradient(135deg,#c8794a,#b9673c)!important;color:#fff!important}.diavola-shell .diavola-widget-card{padding-left:.02rem;padding-right:.02rem}.diavola-widget-card.diavola-widget-card--form{border-radius:14px;border:1px solid rgba(210,201,186,.4);padding:.6rem .7rem;min-height:auto}.diavola-widget-card.diavola-widget-card--form input,.diavola-widget-card.diavola-widget-card--form select,.diavola-widget-card.diavola-widget-card--form textarea{padding:.55rem .65rem;font-size:.9rem!important}.diavola-widget-card.diavola-widget-card--form .diavola-admin-grid{gap:.5rem!important}}.owner-view-toggle{display:inline-flex;background:#f3e7d6;border:1px solid rgba(210,201,186,.8);border-radius:999px;padding:.15rem;gap:.2rem}.owner-view-toggle button{border:none;background:transparent;padding:.45rem .75rem;border-radius:999px;font-weight:700;font-family:Lato,sans-serif;color:#6b5b52;cursor:pointer;transition:all .18s ease}.owner-view-toggle button.active{background:linear-gradient(135deg,#c8794a,#b9673c);color:#fff;box-shadow:0 12px 24px -18px #b9673c99}.owner-quick-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;max-width:1180px;margin:0 auto;padding:.9rem 1.1rem}.owner-quick-actions .btn{flex:1;min-width:0;justify-content:center}.owner-quick-actions .btn-primary{box-shadow:0 14px 30px -20px #b9673c99}@media(max-width:768px){.owner-quick-actions{flex-direction:column;align-items:stretch}}.owner-pedidos-row{display:grid;grid-template-columns:1fr auto;gap:.75rem;align-items:center;width:100%}.owner-pedidos-left{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.owner-pedidos-filters{display:flex;flex-wrap:wrap;gap:.45rem}.owner-pedidos-filters .btn{min-width:86px;justify-content:center}.owner-pedidos-actions{display:flex;gap:.75rem;align-items:center;justify-content:flex-end;flex-wrap:wrap;width:100%}.owner-pedidos-actions .btn{min-width:185px}.owner-agenda-center{justify-content:center;margin:0 auto}.owner-agenda-center .diavola-reserva-widgets{width:100%;max-width:none;margin:0 auto}.owner-agenda-card{width:100%;max-width:none;margin:0 auto;padding:1.3rem 1.4rem}.diavola-reserva-container.owner-mobile{max-width:1700px;width:min(100%,1700px)}.owner-agenda-list{display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));align-items:stretch}@media(min-width:1280px){.owner-agenda-list{grid-template-columns:repeat(auto-fit,minmax(440px,1fr))}}.owner-agenda-list--pedidos .owner-pedido-card,.owner-agenda-list .diavola-info-card{height:100%}.owner-pedido-card{background:#fff;border:1px solid rgba(210,201,186,.8);border-radius:20px;padding:1.1rem 1.2rem 1.35rem;box-shadow:0 18px 48px -36px #2e25214d;position:relative;overflow:hidden}.owner-pedido-card--ready{background:#e7f8ef;border-color:#c3ecd8;box-shadow:0 24px 70px -40px #0f8f5559}.owner-pedido-card--ready:after{content:"✓";position:absolute;right:18px;top:32px;font-size:90px;color:#0f8f551f;line-height:1;pointer-events:none}.owner-pedido-card h4{font-size:1.15rem;margin:.2rem 0;color:#2e2521}.owner-pill{background:#f3e7d6;color:#2e2521;border-radius:12px;padding:.2rem .6rem;font-weight:800;border:1px solid rgba(210,201,186,.9)}.owner-pedido-footer{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;margin-top:.7rem;color:#6b5b52;font-size:12px}.owner-pedido-meta{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.owner-pedido-actions{display:inline-flex;align-items:center;gap:.65rem;width:100%}.owner-pedido-actions--full{justify-content:flex-end}.owner-listo-btn{width:100%;padding:.75rem 1rem;font-size:.9rem;font-weight:800;border-radius:999px;border:none;letter-spacing:.01em;box-shadow:0 18px 48px -36px #2e252159}.owner-listo-btn--pending{background:#b56a43;color:#fff}.owner-listo-btn--pending:hover:not(:disabled){background:#c8794a}.owner-listo-btn--ready{background:#118d55;color:#fff;box-shadow:0 18px 48px -32px #118d5573}.owner-pedido-card--ready .owner-listo-btn{opacity:1!important;cursor:default}@media(max-width:768px){.owner-pedido-card{padding:.75rem .85rem;border-radius:14px}.owner-pedido-footer{flex-direction:column;align-items:flex-start}.owner-pedido-actions{width:100%;justify-content:space-between}.owner-pedidos-row{grid-template-columns:1fr;align-items:flex-start}.owner-pedidos-actions{justify-content:flex-start}.diavola-reserva-container.owner-mobile{padding:.5rem .65rem 1.2rem}}.shadow-soft{box-shadow:0 4px 20px -2px #0000000d}.text-brand-dark{color:#2e2521}.text-brand-brown{color:#8b5a3c}.bg-brand-brown{background-color:#8b5a3c}.text-brand-green{color:#2e7d32}.animate-in{animation-duration:.3s;animation-timing-function:cubic-bezier(.16,1,.3,1);animation-fill-mode:both}.zoom-in-50{animation-name:zoomIn50}@keyframes zoomIn50{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:768px){.diavola-hero-title{font-size:clamp(2.7rem,9vw,3.4rem);line-height:1.05;color:#fff;text-shadow:0 10px 35px rgba(0,0,0,.35),0 3px 12px rgba(0,0,0,.25)}.diavola-hero-italic{color:#d5403a}.diavola-hero-subtitle{font-size:1.05rem;color:#f7efe3;text-shadow:0 6px 22px rgba(0,0,0,.28);max-width:90%;margin-left:auto;margin-right:auto}.diavola-hero-card .uppercase{letter-spacing:.24em}.hero-actions .hero-btn{font-size:.92rem;font-weight:800;letter-spacing:.08em;transition:transform .18s ease,box-shadow .18s ease}.hero-actions .hero-btn:active{transform:scale(.97);box-shadow:0 12px 24px -18px #0006}.diavola-widget-card{transition:transform .22s ease,box-shadow .22s ease}.diavola-widget-card:active{transform:translateY(-1px);box-shadow:0 18px 30px -24px #0000004d}.calendar-day__date{transition:background .16s ease,color .16s ease,transform .16s ease}.calendar-day:active .calendar-day__date{transform:scale(.96)}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
