/* Agenda 0.5.16 — long account names wrap to two lines instead of overlapping. */
.account-actions-dialog{white-space:normal;text-align:left}
.account-actions-layout>*,.booking-brand>div,.panel-hero>div,.panel-hero>div>div,.customer-appt-main,.account-cell-main,.admin-account-table td[data-label="Agenda"]{min-width:0}
.account-actions-intro h3,.booking-brand h1,.panel-hero h1,.customer-appt-main h3,.admin-account-table td[data-label="Agenda"]>b,.support-mode-text b{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;max-width:100%;min-width:0;white-space:normal!important;overflow-wrap:anywhere;word-break:normal;hyphens:auto;text-wrap:balance;padding-bottom:.06em}
.account-actions-intro h3{line-height:1.12}
.account-actions-tabs{flex-wrap:wrap}

/* Admin support mode banner. */
.support-mode-banner{position:sticky;top:max(12px,env(safe-area-inset-top));z-index:1100;display:flex;align-items:center;gap:12px;width:min(1240px,calc(100% - 36px));margin:16px auto 0;padding:10px 12px 10px 16px;border-radius:16px;background:#111412;color:#fff;font-size:13px;box-shadow:0 12px 32px rgba(17,20,18,.22)}
.support-mode-label{flex:0 0 auto;font-size:10px;font-weight:900;letter-spacing:.14em;color:#ffd166}
.support-mode-text{flex:1;min-width:0}
.support-mode-banner form{margin:0;flex:0 0 auto}
.support-mode-banner button{appearance:none;border:0;min-height:36px;padding:0 14px;border-radius:11px;background:#fff;color:#111412;font:inherit;font-size:12px;font-weight:850;cursor:pointer;white-space:nowrap}
@media(max-width:640px){.support-mode-banner{flex-wrap:wrap;width:calc(100% - 40px);margin-top:12px}.support-mode-text{flex-basis:100%;order:3}}

/* Agenda 0.5.17 — native checkboxes and radios keep their native size everywhere
   (.field input, .account-actions-form input, etc. stretched them to 100% × 44px). */
body input:is([type=checkbox],[type=radio]):not(:is(.slot,.switch-label,.promo-plan-tabs,.block-kind-tabs) input){width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;min-height:0!important;padding:0!important;flex:0 0 20px;border-radius:5px;box-shadow:none;accent-color:var(--a,#4e66ff);justify-self:start;cursor:pointer}

/* Sucursales: la sucursal se elige antes que el servicio y filtra los servicios que ofrece. */
.service-tab.is-branch-hidden{display:none!important}
.booking-card>.booking-branch{margin:0 0 18px}
.branch-item summary small+small{display:block;margin-top:2px;opacity:.8}

/* Agenda 0.5.18 — checkbox/label spacing and compact round color pickers. */
.switch-line,.field>label:has(>input:is([type=checkbox],[type=radio])){display:flex;align-items:center;gap:10px;width:fit-content;max-width:100%;cursor:pointer;line-height:1.3}
.switch-line>input,.field>label>input:is([type=checkbox],[type=radio]){margin:0}
.service-payment-setting small{display:block;margin-top:6px}
body input[type=color]{-webkit-appearance:none;appearance:none;width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:0!important;padding:0!important;border:1px solid var(--line,#dedfd9)!important;border-radius:999px!important;background:#fff;overflow:hidden;cursor:pointer;flex:0 0 36px;box-shadow:0 1px 2px rgba(17,20,18,.08)}
body input[type=color]::-webkit-color-swatch-wrapper{padding:3px}
body input[type=color]::-webkit-color-swatch{border:0;border-radius:999px}
body input[type=color]::-moz-color-swatch{border:0;border-radius:999px}
body input[type=color]:focus-visible{outline:3px solid color-mix(in srgb,var(--a,#4e66ff) 35%,transparent);outline-offset:2px}
.service-color-control{gap:12px;min-height:44px}

/* Agenda 0.5.19 — one section bar for the whole panel (replaces the «Gestionar» menu). */
.panel-main .panel-desktop-tabs{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.panel-main .panel-desktop-tabs::-webkit-scrollbar{display:none}
.panel-main a.panel-desktop-tab{display:inline-flex;align-items:center;text-decoration:none;flex:0 0 auto}
.panel-main .panel-desktop-tab{flex:0 0 auto}
.panel-main .panel-section-links{grid-column:1/-1;justify-self:start;margin-top:4px}
@media(min-width:761px){.panel-main .panel-desktop-tab{padding:10px 14px}}
/* Agenda 0.5.21 — mobile gets the same sections: pill row on the separate pages, full «Menú». */
@media(max-width:760px){.panel-main .panel-desktop-tabs.panel-section-links{display:flex!important;position:sticky;top:70px;z-index:24;width:auto;max-width:none;justify-self:stretch;gap:7px;margin:0 -4px 12px;padding:8px 4px;border:0;border-radius:0;box-shadow:none;background:linear-gradient(180deg,rgba(247,246,241,.98) 72%,rgba(247,246,241,0));backdrop-filter:none;-webkit-backdrop-filter:none}.panel-main .panel-section-links .panel-desktop-tab{min-height:35px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:10.5px;font-weight:850;box-shadow:none}.panel-main .panel-section-links .panel-desktop-tab.is-active{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:0 4px 14px rgba(17,20,18,.12)}}
.panel-quick-link{display:inline-flex;align-items:center;text-decoration:none}
.panel-mobile-menu-popover{max-height:calc(100vh - 96px);overflow-y:auto;overscroll-behavior:contain}
.panel-mobile-menu-label{padding:6px 12px 2px;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.panel-mobile-menu-popover a.panel-mobile-section{min-height:38px}
.panel-mobile-menu-popover a.panel-mobile-section.is-active{background:rgba(78,102,255,.1);color:var(--a,#4e66ff)}
.panel-mobile-menu-sep{height:1px;margin:4px 8px;background:var(--line)}
/* Agenda 0.5.22 — Clientes, Paquetes, Sucursales y Notificaciones dentro de /panel. */
.panel-main .panel-grid>.panel-remote-card{grid-column:1/-1}
.panel-remote-body{display:grid;gap:14px;min-width:0}
.panel-remote-body>.panel-card{box-shadow:none}
.panel-remote-body h1{font-size:clamp(20px,4.6vw,30px);line-height:1.15}
.panel-remote-status{margin:0;padding:18px 4px;color:var(--muted);font-size:13px}
.panel-quick-remote{flex:0 0 auto;min-height:35px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font:inherit;font-size:10.5px;font-weight:850;white-space:nowrap}
.panel-quick-remote.active{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:0 4px 14px rgba(17,20,18,.12)}
@media(max-width:760px){.panel-card.panel-remote-card:not(.is-mobile-folded)>.panel-remote-body{padding-top:4px}}
/* Agenda 0.5.23 — Interfaz ecosystem: tool switcher slot in the panel header. */
.panel-nav>.ix-nav-actions{display:flex;align-items:center;margin-left:8px}
.panel-nav>.ix-nav-actions:empty{display:none}
@media(max-width:820px){.panel-nav>.ix-nav-actions{margin-left:auto;margin-right:8px;justify-self:end}.panel-nav>.ix-nav-actions+.panel-mobile-menu{margin-left:0}}
/* Framework 1.6.1 (VIEWPORT-SHELL §12): 16px minimum in phone/tablet form fields so iOS does not zoom on focus. */
@media (max-width:760px),(hover:none) and (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=submit]):not([type=button]),select,textarea{font-size:16px!important}}
/* Agenda 0.5.25 — industry demos (/demo): visual gallery and «no se registró» note on demo bookings. */
.demo-gallery{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:36px 0 80px;display:grid;gap:22px}
.demo-gallery-hero{display:grid;gap:12px;max-width:760px}
.demo-gallery-eyebrow{justify-self:start;font-size:11.5px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;color:#4e66ff;background:rgba(78,102,255,.1);padding:6px 11px;border-radius:99px}
.demo-gallery-hero h1{margin:0;font-size:clamp(34px,5.6vw,58px);letter-spacing:-.045em;line-height:1}
.demo-gallery-hero p{margin:0;color:#5f625d;font-size:clamp(15px,1.6vw,17px);line-height:1.55}
.demo-gallery-steps{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.demo-gallery-steps li{display:flex;align-items:center;gap:8px;padding:8px 13px 8px 8px;border-radius:99px;background:#fff;border:1px solid rgba(17,20,18,.08);font-size:13.5px;font-weight:650}
.demo-gallery-steps b{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#111412;color:#fff;font-size:12px}
.demo-gallery-filters{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 0 4px;margin-top:6px}
.demo-gallery-filters::-webkit-scrollbar{display:none}
.demo-gallery-filters button{flex:0 0 auto;appearance:none;border:1px solid rgba(17,20,18,.12);background:#fff;color:#3f423e;font:inherit;font-size:13.5px;font-weight:750;padding:9px 16px;border-radius:99px;cursor:pointer;transition:background .2s,color .2s}
.demo-gallery-filters button.is-on{background:#111412;border-color:#111412;color:#fff}
.demo-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:18px}
.demo-tile{display:flex;flex-direction:column;border-radius:28px;background:#fff;border:1px solid rgba(17,20,18,.08);overflow:hidden;box-shadow:0 1px 2px rgba(20,18,14,.04);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}
.demo-tile[hidden]{display:none}
.demo-tile:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(20,18,14,.12)}
.demo-tile-art{position:relative;display:grid;place-items:center;height:190px;text-decoration:none;color:#fff;background:radial-gradient(120% 90% at 85% 10%,color-mix(in srgb,var(--c) 55%,#fff) 0%,var(--c) 55%,color-mix(in srgb,var(--c) 70%,#000) 100%)}
.demo-tile-art::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 120%,rgba(255,255,255,.22),transparent 45%);pointer-events:none}
.demo-tile-cat{position:absolute;top:16px;left:16px;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:99px;background:rgba(255,255,255,.22);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.demo-tile-icon{width:84px;height:84px;border-radius:26px;display:grid;place-items:center;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35);box-shadow:0 18px 40px rgba(0,0,0,.18);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.demo-tile:hover .demo-tile-icon{transform:scale(1.06) rotate(-3deg)}
.demo-tile-svg{width:42px;height:42px}
.demo-tile-times{position:absolute;right:16px;bottom:14px;display:flex;gap:6px}
.demo-tile-times span{font-size:11.5px;font-weight:800;padding:5px 9px;border-radius:10px;background:rgba(255,255,255,.9);color:var(--c)}
.demo-tile-times span.is-on{background:#111412;color:#fff}
.demo-tile-body{display:flex;flex-direction:column;gap:10px;padding:20px 20px 22px;flex:1}
.demo-tile-kicker{font-size:12px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;color:var(--c)}
.demo-tile-body h2{margin:0;font-size:21px;line-height:1.2;letter-spacing:-.02em}
.demo-tile-body p{margin:0;color:#5f625d;font-size:14px;line-height:1.5}
.demo-tile-chips{display:flex;flex-wrap:wrap;gap:6px}
.demo-tile-chips span{font-size:12px;font-weight:700;padding:5px 10px;border-radius:99px;background:color-mix(in srgb,var(--c) 10%,#fff);color:color-mix(in srgb,var(--c) 85%,#000)}
.demo-tile-services{list-style:none;margin:2px 0 4px;padding:0;display:grid;flex:1;align-content:start}
.demo-tile-services li{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:10px;padding:9px 0;border-top:1px solid rgba(17,20,18,.07);font-size:14px}
.demo-tile-services li span{font-weight:650;min-width:0}
.demo-tile-services li b{grid-row:1/3;grid-column:2;align-self:center;font-size:14px}
.demo-tile-services li small{color:#7a7d78;font-size:12px}
.demo-tile-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}
.demo-tile-go,.demo-tile-copy{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:0 14px;white-space:nowrap;border-radius:14px;font-size:14px;font-weight:800;text-decoration:none;transition:transform .2s,filter .2s}
.demo-tile-go{background:var(--c,#111412);color:#fff}
.demo-tile-go:hover{filter:brightness(1.08)}
.demo-tile-copy{background:#f1f1ee;color:#111412}
.demo-tile-go:active,.demo-tile-copy:active{transform:scale(.97)}
.demo-gallery-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:24px;border-radius:28px;background:#111412;color:#fff;--c:#4e66ff}
.demo-gallery-cta h2{margin:0 0 4px;font-size:22px}.demo-gallery-cta p{margin:0;color:rgba(255,255,255,.72)}
.demo-gallery-cta .demo-tile-go{flex:0 0 auto}
@media(max-width:640px){.demo-tile-actions{grid-template-columns:1fr}.demo-gallery{padding-top:22px}.demo-tile-art{height:160px}.demo-tile-icon{width:72px;height:72px;border-radius:22px}.demo-tile-svg{width:36px;height:36px}.demo-gallery-cta{padding:20px}.demo-gallery-cta .demo-tile-go{flex:1}}
@media(prefers-reduced-motion:reduce){.demo-tile,.demo-tile-icon{transition:none}.demo-tile:hover{transform:none}}
.demo-booking-note{width:min(1100px,calc(100% - 32px));margin:16px auto 0;padding:12px 16px;border-radius:14px;background:#fff7e6;border:1px solid #f3d7a0;color:#5c3d00;font-size:14px;line-height:1.45}
.demo-booking-note a{color:inherit;font-weight:800}
