/* Workbook 2.5.48 visual system.
   Final cascade layer for the product UI. This file is intentionally scoped
   to Workbook surfaces and loaded after historical styles, so the redesign
   can be substantial without deleting legacy CSS contracts. */

body.anik-workbook-standalone{
  background:#eef1f6 !important;
}

:where(
  body.anik-workbook-standalone,
  body.anik-workbook-master-page,
  .anik-portal,
  .anik-booking,
  .anik-client-login-shell,
  .anik-master-access-shell,
  .anik-workbook-error-card
){
  --wb248-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --wb248-bg:#f5f6f9;
  --wb248-bg-soft:#eef1f6;
  --wb248-surface:#fff;
  --wb248-surface-2:#f8f9fc;
  --wb248-surface-3:#f1f3f7;
  --wb248-line:#dfe5ee;
  --wb248-border:#dfe5ee;
  --wb248-line-strong:#cfd8e6;
  --wb248-text:#101828;
  --wb248-text-2:#344054;
  --wb248-muted:#667085;
  --wb248-faint:#98a2b3;
  --wb248-brand:var(--anik-primary,#003595);
  --wb248-accent:var(--anik-accent,#cdde00);
  --wb248-brand-soft:color-mix(in srgb,var(--wb248-brand) 8%,white);
  --wb248-brand-soft-2:color-mix(in srgb,var(--wb248-brand) 13%,white);
  --wb248-success:#067647;
  --wb248-success-bg:#ecfdf3;
  --wb248-warning:#b54708;
  --wb248-warning-bg:#fffaeb;
  --wb248-danger:#b42318;
  --wb248-danger-bg:#fef3f2;
  --wb248-info:#175cd3;
  --wb248-info-bg:#eff8ff;
  --wb248-r4:4px;
  --wb248-r8:8px;
  --wb248-r10:10px;
  --wb248-r12:12px;
  --wb248-r16:16px;
  --wb248-r20:20px;
  --wb248-shadow-1:0 1px 2px rgba(16,24,40,.05);
  --wb248-shadow-2:0 10px 26px rgba(16,24,40,.08);
  --wb248-shadow-3:0 20px 48px rgba(16,24,40,.12);
  --wb248-ease:cubic-bezier(.2,.8,.2,1);
  --wb248-fast:140ms;
}

.anik-portal.anik-master-shell.anik-mode-dark{
  --wb248-bg:#0b1220;
  --wb248-bg-soft:#070d18;
  --wb248-surface:#101828;
  --wb248-surface-2:#162033;
  --wb248-surface-3:#1d2939;
  --wb248-line:rgba(148,163,184,.18);
  --wb248-border:rgba(148,163,184,.18);
  --wb248-line-strong:rgba(148,163,184,.28);
  --wb248-text:#f8fafc;
  --wb248-text-2:#d0d5dd;
  --wb248-muted:#98a2b3;
  --wb248-faint:#667085;
  --wb248-brand:var(--anik-primary,#8fb3ff);
  --wb248-accent:var(--anik-accent,#cdde00);
  --wb248-brand-soft:rgba(143,179,255,.14);
  --wb248-brand-soft-2:rgba(143,179,255,.24);
  --wb248-success:#7ee0a3;
  --wb248-success-bg:rgba(6,118,71,.18);
  --wb248-warning:#fdb022;
  --wb248-warning-bg:rgba(181,71,8,.18);
  --wb248-danger:#f97066;
  --wb248-danger-bg:rgba(180,35,24,.18);
  --wb248-info:#84caff;
  --wb248-info-bg:rgba(23,92,211,.18);
  --wb248-shadow-1:0 1px 2px rgba(0,0,0,.28);
  --wb248-shadow-2:0 16px 34px rgba(0,0,0,.28);
  --wb248-shadow-3:0 24px 52px rgba(0,0,0,.34);
}

.anik-portal,
.anik-portal *,
.anik-booking,
.anik-booking *{
  letter-spacing:0 !important;
}

.anik-portal.anik-app-shell{
  width:min(1508px,calc(100vw - 24px)) !important;
  max-width:1508px !important;
  min-height:calc(100vh - 24px) !important;
  grid-template-columns:252px minmax(0,1fr) !important;
  gap:18px !important;
  margin:12px auto !important;
  padding:12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:18px !important;
  background:var(--wb248-bg) !important;
  box-shadow:none !important;
  overflow:visible !important;
  color:var(--wb248-text) !important;
  font-family:var(--wb248-font) !important;
}

.anik-portal.anik-app-shell :is(a,button,summary,input,select,textarea):focus-visible,
.anik-booking :is(a,button,summary,input,select,textarea):focus-visible{
  outline:2px solid color-mix(in srgb,var(--wb248-brand) 70%,white) !important;
  outline-offset:2px !important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--wb248-brand) 12%,transparent) !important;
}

.anik-portal .anik-sidebar{
  top:12px !important;
  height:calc(100vh - 24px) !important;
  max-height:calc(100vh - 24px) !important;
  padding:10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
  gap:8px !important;
  overflow:auto !important;
  scrollbar-width:thin !important;
}

.anik-portal .anik-sidebar-brand{
  min-height:40px !important;
  padding:2px 4px 10px !important;
  border-bottom:1px solid var(--wb248-line) !important;
}

.anik-portal .anik-brand-mark-logo{
  width:28px !important;
  height:28px !important;
  border-radius:8px !important;
  background:#0b1220 !important;
}

.anik-portal .anik-sidebar-brand strong{
  font-size:14px !important;
  font-weight:700 !important;
  color:var(--wb248-text) !important;
}

.anik-portal .wbs-identity-card{
  padding:9px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface-2) !important;
  gap:8px !important;
  box-shadow:none !important;
}

.anik-portal .wbs-identity-business{
  grid-template-columns:34px minmax(0,1fr) !important;
  gap:9px !important;
}

.anik-portal .wbs-identity-business img,
.anik-portal .wbs-identity-business > span{
  width:34px !important;
  height:34px !important;
  border-radius:10px !important;
}

.anik-portal .wbs-identity-business strong{
  font-size:13px !important;
  line-height:1.2 !important;
  color:var(--wb248-text) !important;
}

.anik-portal .wbs-identity-business small,
.anik-portal .wbs-identity-account{
  font-size:11px !important;
  color:var(--wb248-muted) !important;
}

.anik-portal .wbs-identity-account{
  min-height:28px !important;
  padding-top:7px !important;
  border-top:1px solid var(--wb248-line) !important;
}

.anik-portal .wbs-identity-account-role{
  min-height:22px !important;
  padding:3px 8px !important;
  border-radius:999px !important;
  background:var(--wb248-surface) !important;
  border:1px solid var(--wb248-line) !important;
  color:var(--wb248-text-2) !important;
  font-size:10px !important;
}

.anik-portal .anik-side-nav{
  gap:5px !important;
  padding:0 1px 4px !important;
  overflow:auto !important;
}

.anik-portal .anik-nav-top-link,
.anik-portal .anik-nav-group-summary{
  min-height:38px !important;
  border-radius:10px !important;
  padding:0 9px !important;
  font-size:12.5px !important;
  font-weight:600 !important;
  color:var(--wb248-text-2) !important;
  background:transparent !important;
  border:1px solid transparent !important;
}

.anik-portal .anik-nav-group{
  margin:0 !important;
  border:0 !important;
  border-radius:12px !important;
  background:transparent !important;
}

.anik-portal .anik-nav-group-summary{
  grid-template-columns:18px minmax(0,1fr) 14px !important;
  gap:8px !important;
  cursor:pointer !important;
}

.anik-portal .anik-nav-icon{
  width:17px !important;
  height:17px !important;
  color:var(--wb248-muted) !important;
  stroke-width:1.75 !important;
}

.anik-portal .anik-nav-top-link:hover,
.anik-portal .anik-nav-group-summary:hover,
.anik-portal .anik-nav-group-items a:hover{
  background:var(--wb248-surface-3) !important;
  color:var(--wb248-text) !important;
  border-color:var(--wb248-line) !important;
}

.anik-portal .anik-nav-top-link.active{
  color:var(--wb248-brand) !important;
  background:var(--wb248-brand-soft) !important;
  border-color:var(--wb248-brand-soft-2) !important;
  box-shadow:inset 3px 0 var(--wb248-brand) !important;
}

.anik-portal .anik-nav-group[open] > .anik-nav-group-summary{
  color:var(--wb248-text) !important;
  background:var(--wb248-surface-2) !important;
  border-color:var(--wb248-line) !important;
}

.anik-portal .anik-nav-group-items{
  display:grid !important;
  gap:2px !important;
  padding:4px 0 5px 25px !important;
}

.anik-portal .anik-nav-group-items a{
  min-height:31px !important;
  padding:0 9px !important;
  border-radius:8px !important;
  font-size:12.5px !important;
  font-weight:500 !important;
  color:var(--wb248-muted) !important;
  border:1px solid transparent !important;
  background:transparent !important;
}

.anik-portal .anik-nav-group-items a.active{
  color:var(--wb248-brand) !important;
  background:var(--wb248-brand-soft) !important;
  border-color:var(--wb248-brand-soft-2) !important;
  box-shadow:none !important;
}

.anik-portal .anik-sidebar-foot{
  display:grid !important;
  gap:4px !important;
  padding:9px 4px 0 !important;
  border-top:1px solid var(--wb248-line) !important;
}

.anik-portal .anik-sidebar-foot a{
  min-height:28px !important;
  display:flex !important;
  align-items:center !important;
  color:var(--wb248-muted) !important;
  font-size:12px !important;
  font-weight:550 !important;
  text-decoration:none !important;
}

.anik-portal .anik-main-panel{
  min-width:0 !important;
  background:transparent !important;
  color:var(--wb248-text) !important;
}

.anik-portal .anik-topbar{
  position:sticky !important;
  top:12px !important;
  z-index:35 !important;
  min-height:66px !important;
  padding:10px 14px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.92) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .anik-topbar-head{
  gap:10px !important;
  min-width:0 !important;
}

.anik-portal .anik-topbar h1{
  margin:0 !important;
  font-size:22px !important;
  line-height:1.12 !important;
  font-weight:760 !important;
  color:var(--wb248-text) !important;
}

.anik-portal .anik-topbar-subtitle{
  margin:3px 0 0 !important;
  font-size:12.5px !important;
  line-height:1.35 !important;
  color:var(--wb248-muted) !important;
}

.anik-portal .anik-menu-toggle{
  width:40px !important;
  min-width:40px !important;
  height:40px !important;
  min-height:40px !important;
  padding:0 !important;
  border-radius:10px !important;
}

.anik-portal .anik-top-actions{
  gap:7px !important;
}

.anik-portal .anik-portal-main{
  max-width:1220px !important;
  padding:16px 0 0 !important;
  margin:0 auto !important;
}

.anik-portal .anik-kicker{
  display:inline-flex !important;
  align-items:center !important;
  min-height:20px !important;
  margin:0 0 5px !important;
  color:var(--wb248-brand) !important;
  font-size:10.5px !important;
  font-weight:720 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
}

.anik-portal :is(.anik-btn,button[type="submit"],button:not(.wbs-eye-toggle):not(.anik-menu-toggle),input[type="submit"]),
.anik-booking :is(.anik-btn,button[type="submit"],input[type="submit"]){
  min-height:38px !important;
  padding:0 13px !important;
  border-radius:10px !important;
  border:1px solid var(--wb248-line-strong) !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-text) !important;
  font-size:12.5px !important;
  font-weight:650 !important;
  line-height:1 !important;
  box-shadow:var(--wb248-shadow-1) !important;
  text-decoration:none !important;
  transform:none !important;
  transition:background var(--wb248-fast) var(--wb248-ease),border-color var(--wb248-fast) var(--wb248-ease),color var(--wb248-fast) var(--wb248-ease),box-shadow var(--wb248-fast) var(--wb248-ease) !important;
}

.anik-portal :is(.anik-btn,button[type="submit"],input[type="submit"]):hover,
.anik-booking :is(.anik-btn,button[type="submit"],input[type="submit"]):hover{
  transform:none !important;
  border-color:color-mix(in srgb,var(--wb248-brand) 28%,var(--wb248-line)) !important;
  box-shadow:0 2px 8px rgba(16,24,40,.08) !important;
}

.anik-portal :is(.anik-btn:not(.ghost),button[type="submit"],input[type="submit"]),
.anik-booking :is(.anik-btn:not(.ghost),button[type="submit"],input[type="submit"],.anik-submit){
  background:var(--wb248-brand) !important;
  border-color:var(--wb248-brand) !important;
  color:#fff !important;
}

.anik-portal .anik-btn.ghost,
.anik-booking .anik-btn.ghost{
  background:var(--wb248-surface) !important;
  color:var(--wb248-text-2) !important;
}

.anik-portal .anik-btn.small,
.anik-portal .anik-btn.mini,
.anik-booking .anik-btn.small,
.anik-booking .anik-btn.mini{
  min-height:32px !important;
  padding:0 10px !important;
  font-size:12px !important;
}

.anik-portal .anik-plan-pill,
.anik-portal .anik-status-chip,
.anik-portal .anik-cbadge,
.anik-booking .anik-status-chip{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  min-height:24px !important;
  padding:3px 8px !important;
  border-radius:999px !important;
  border:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
  font-size:11px !important;
  font-weight:650 !important;
  white-space:nowrap !important;
}

.anik-portal .anik-status-chip.confirmed,
.anik-portal .anik-status-chip.completed,
.anik-portal .anik-plan-pill.active,
.anik-portal .ok{
  background:var(--wb248-success-bg) !important;
  color:var(--wb248-success) !important;
  border-color:color-mix(in srgb,var(--wb248-success) 25%,white) !important;
}

.anik-portal .anik-status-chip.pending,
.anik-portal .warn,
.anik-portal .anik-alert.warn{
  background:var(--wb248-warning-bg) !important;
  color:var(--wb248-warning) !important;
  border-color:color-mix(in srgb,var(--wb248-warning) 25%,white) !important;
}

.anik-portal .anik-status-chip.cancelled,
.anik-portal .anik-status-chip.no_show,
.anik-portal .bad,
.anik-portal .anik-alert.bad{
  background:var(--wb248-danger-bg) !important;
  color:var(--wb248-danger) !important;
  border-color:color-mix(in srgb,var(--wb248-danger) 22%,white) !important;
}

.anik-portal :is(.anik-card,.anik-card-soft,.anik-command-center,.anik-row-card,.anik-integration-card,.anik-stat-card,.anik-rank-card,.wbs-card),
.anik-booking :is(.anik-step-details,.anik-service-card,.anik-auto-staff-card,.anik-single-pro-note,.anik-payment-choice,.anik-mode-selector,.anik-booking-trust > *){
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-text) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal :is(.anik-card,.anik-card-soft,.anik-command-center,.anik-integration-card,.anik-stat-card,.anik-rank-card,.wbs-card){
  padding:16px !important;
}

.anik-portal :is(h1,h2,h3,h4,strong,b){
  color:var(--wb248-text) !important;
}

.anik-portal :is(p,small,em,span,td,th,label,li),
.anik-booking :is(p,small,em,span,td,th,label,li){
  color:var(--wb248-text-2);
}

.anik-portal h2{
  margin:0 !important;
  font-size:18px !important;
  line-height:1.25 !important;
  font-weight:720 !important;
}

.anik-portal h3{
  font-size:15px !important;
  line-height:1.3 !important;
  font-weight:700 !important;
}

.anik-portal :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea),
.anik-booking :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea){
  width:100% !important;
  min-height:40px !important;
  border:1px solid var(--wb248-line-strong) !important;
  border-radius:10px !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-text) !important;
  padding:9px 11px !important;
  font-size:13px !important;
  box-shadow:none !important;
}

.anik-portal textarea,
.anik-booking textarea{
  min-height:92px !important;
  resize:vertical !important;
}

.anik-portal label,
.anik-booking label{
  display:grid !important;
  gap:6px !important;
  font-size:12px !important;
  font-weight:640 !important;
  color:var(--wb248-text-2) !important;
}

.anik-portal label small,
.anik-booking label small{
  font-size:11px !important;
  line-height:1.35 !important;
  color:var(--wb248-muted) !important;
  font-weight:500 !important;
}

.anik-portal .anik-check,
.anik-portal .anik-inline-check,
.anik-portal .anik-compact-check{
  min-height:40px !important;
  padding:9px 10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:10px !important;
  background:var(--wb248-surface-2) !important;
}
/* Candidate 30 (sección 7, checkboxes de colaboradores/especialistas): mismo
   defecto de origen que el de "Pagos online" (ver más abajo el bloque de
   .anik-payment-method-card) -- `.anik-portal .anik-check{display:flex}`
   (workbook-premium.css, especificidad 0,2,0) pierde contra
   `.anik-portal :is(.anik-settings-grid label,.anik-password-form label,
   .anik-mini-form label){display:grid}` (public.css, 0,2,1) en cualquier
   `.anik-check` que viva dentro de un `.anik-mini-form` -- exactamente el
   caso de "Profesionales/especialistas compatibles" al crear/editar un
   servicio (confirmado con getComputedStyle: display:grid en vez de flex,
   antes de este fix). Se repite aquí la clase para subir la especificidad
   sin ampliar a qué elementos aplica (sigue siendo exactamente `.anik-check`
   en cualquier parte del portal, nunca un selector genérico nuevo). Se
   incluyen `.anik-inline-check`/`.anik-compact-check` porque comparten el
   mismo componente y el mismo riesgo de raíz. Misma trampa también afecta
   `flex-direction`: `.anik-mini-form label{flex-direction:column!important}`
   (0,1,1) le gana a `.anik-check{flex-direction:row!important}` original
   (0,1,0) en workbook-premium.css, apilando el checkbox arriba del nombre
   en vez de al lado -- confirmado con getComputedStyle antes de este fix
   (flexDirection:"column"). Se fija aquí también con la misma técnica. */
.anik-portal .anik-check.anik-check,
.anik-portal .anik-inline-check.anik-inline-check,
.anik-portal .anik-compact-check.anik-compact-check{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:10px !important;
}
/* Misma trampa de especificidad, mismo hallazgo (sección 7): los switches
   `.anik-switch-line` ("Precio desde", "Servicio destacado", "Servicio
   activo", "Disponible para reserva online" en el formulario de servicio,
   que vive dentro de `.anik-mini-form`) también son `<label>` y también
   pierden contra `.anik-portal :is(.anik-settings-grid label,
   .anik-password-form label,.anik-mini-form label){display:grid!important;
   gap:7px!important}` (0,2,1) frente a la regla propia del componente
   `.anik-switch-line{display:flex!important;...;gap:14px}` (public.css,
   0,1,0 -- y su `gap` ni siquiera lleva !important, así que también pierde
   esa propiedad). Confirmado con getComputedStyle antes de este fix
   (display:"grid", flexDirection:"column" por la misma regla de
   flex-direction ya documentada arriba). Mismo fix, misma técnica. */
.anik-portal .anik-switch-line.anik-switch-line{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
}

.anik-portal :is(input[type=checkbox],input[type=radio]),
.anik-booking :is(input[type=checkbox],input[type=radio]){
  accent-color:var(--wb248-brand) !important;
}

.anik-portal .anik-table-wrap,
.anik-portal .anik-customer-table-wrap{
  width:100% !important;
  overflow:auto !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
}

.anik-portal :is(table,.anik-modern-table,.anik-table,.anik-customer-table,.anik-inv-table){
  width:100% !important;
  border-collapse:collapse !important;
  border-spacing:0 !important;
}

.anik-portal :is(table,.anik-modern-table,.anik-table,.anik-customer-table,.anik-inv-table) th{
  height:38px !important;
  padding:9px 10px !important;
  border-bottom:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-muted) !important;
  font-size:10.5px !important;
  font-weight:720 !important;
  text-transform:uppercase !important;
  text-align:left !important;
}

.anik-portal :is(table,.anik-modern-table,.anik-table,.anik-customer-table,.anik-inv-table) td{
  padding:10px !important;
  border-bottom:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-text-2) !important;
  font-size:12.5px !important;
  vertical-align:middle !important;
}

.anik-portal :is(table,.anik-modern-table,.anik-table,.anik-customer-table,.anik-inv-table) tr:last-child td{
  border-bottom:0 !important;
}

.anik-portal .anik-alert{
  margin:12px 0 0 !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  border:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

/* Dashboard */
.anik-portal .wbs-dash{
  display:grid !important;
  gap:14px !important;
}

.anik-portal .wbs-dash-hero{
  display:grid !important;
  gap:12px !important;
  padding:14px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:18px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .wbs-kpi-strip{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:0 !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface-2) !important;
  overflow:hidden !important;
}

.anik-portal .wbs-kpi-item{
  min-height:86px !important;
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:10px !important;
  padding:12px !important;
  border:0 !important;
  border-right:1px solid var(--wb248-line) !important;
  background:transparent !important;
  box-shadow:none !important;
}

.anik-portal .wbs-kpi-item:last-child{
  border-right:0 !important;
}

.anik-portal .wbs-kpi-item > svg{
  width:18px !important;
  height:18px !important;
  padding:8px !important;
  box-sizing:content-box !important;
  border-radius:10px !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-brand) !important;
  border:1px solid var(--wb248-line) !important;
}

.anik-portal .wbs-kpi-label{
  display:block !important;
  font-size:11px !important;
  font-weight:700 !important;
  color:var(--wb248-muted) !important;
  text-transform:uppercase !important;
}

.anik-portal .wbs-kpi-value{
  display:block !important;
  margin:2px 0 !important;
  font-size:24px !important;
  line-height:1 !important;
  font-weight:760 !important;
  color:var(--wb248-text) !important;
}

.anik-portal .wbs-kpi-item small{
  font-size:11px !important;
  color:var(--wb248-muted) !important;
}

.anik-portal .wbs-kpi-item-attn{
  background:var(--wb248-warning-bg) !important;
}

.anik-portal .wbs-eye-toggle{
  width:34px !important;
  height:34px !important;
  min-height:34px !important;
  padding:0 !important;
  border-radius:10px !important;
  border:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-muted) !important;
  box-shadow:none !important;
}

.anik-portal .wbs-dash-primary-row{
  display:grid !important;
  grid-template-columns:minmax(0,1.62fr) minmax(320px,.95fr) !important;
  gap:12px !important;
  align-items:stretch !important;
}

.anik-portal .wbs-card-agenda{
  order:1 !important;
  min-height:330px !important;
}

.anik-portal .wbs-card-attention{
  order:2 !important;
  min-height:330px !important;
}

.anik-portal .wbs-card-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin-bottom:12px !important;
}

.anik-portal .wbs-agenda-list,
.anik-portal .wbs-attention-list{
  display:grid !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.anik-portal .wbs-agenda-list li{
  display:grid !important;
  grid-template-columns:58px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:10px !important;
  min-height:54px !important;
  padding:8px 10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .wbs-agenda-time{
  display:grid !important;
  place-items:center !important;
  min-height:36px !important;
  border-radius:10px !important;
  background:var(--wb248-text) !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:720 !important;
}

.anik-portal .wbs-agenda-main strong,
.anik-portal .wbs-attention-main strong{
  display:block !important;
  font-size:13px !important;
  line-height:1.25 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.anik-portal .wbs-agenda-main small,
.anik-portal .wbs-attention-main small{
  display:block !important;
  margin-top:2px !important;
  font-size:11.5px !important;
  color:var(--wb248-muted) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.anik-portal .wbs-attention-list li{
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:9px !important;
  min-height:56px !important;
  padding:9px !important;
  border:1px solid color-mix(in srgb,var(--wb248-warning) 24%,white) !important;
  border-radius:12px !important;
  background:var(--wb248-warning-bg) !important;
}

.anik-portal .wbs-attention-icon{
  display:grid !important;
  place-items:center !important;
  width:34px !important;
  height:34px !important;
  border-radius:10px !important;
  background:#fff !important;
  color:var(--wb248-warning) !important;
}

.anik-portal .wbs-attention-link{
  font-size:12px !important;
  font-weight:700 !important;
  color:var(--wb248-brand) !important;
  text-decoration:none !important;
}

.anik-portal .wbs-empty-compact{
  min-height:210px !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .wbs-team-row{
  display:grid !important;
  gap:10px !important;
}

.anik-portal .wbs-team-summary{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}

.anik-portal .wbs-team-summary span{
  min-height:30px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  padding:4px 9px !important;
  border-radius:999px !important;
  background:var(--wb248-surface-2) !important;
  border:1px solid var(--wb248-line) !important;
  font-size:12px !important;
}

.anik-portal .wbs-team-roster{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
}

.anik-portal .wbs-team-chip{
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  align-items:center !important;
  gap:9px !important;
  min-height:58px !important;
  padding:9px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .wbs-team-avatar{
  display:grid !important;
  place-items:center !important;
  width:34px !important;
  height:34px !important;
  border-radius:10px !important;
  background:var(--wb248-brand-soft) !important;
  color:var(--wb248-brand) !important;
  font-weight:760 !important;
}

.anik-portal .wbs-team-info strong,
.anik-portal .wbs-team-info small{
  display:block !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.anik-portal .wbs-team-info strong{
  font-size:12.5px !important;
}

.anik-portal .wbs-team-info small{
  font-size:11px !important;
  color:var(--wb248-muted) !important;
}

.anik-portal .wbs-dash-secondary{
  display:grid !important;
  gap:10px !important;
}

.anik-portal .wbs-indicator-row,
.anik-portal .wbs-dash-tools{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}

.anik-portal .wbs-indicator,
.anik-portal .wbs-tools-public,
.anik-portal .wbs-tools-quick{
  padding:13px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
}

.anik-portal .wbs-indicator{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:4px 10px !important;
  align-items:center !important;
}

.anik-portal .wbs-indicator-label{
  font-size:11px !important;
  font-weight:720 !important;
  text-transform:uppercase !important;
  color:var(--wb248-muted) !important;
}

.anik-portal .wbs-indicator-value{
  grid-column:1 !important;
  font-size:13px !important;
  color:var(--wb248-text-2) !important;
}

.anik-portal .wbs-indicator .anik-btn{
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
}

.anik-portal .wbs-quick-actions,
.anik-portal .wbs-public-actions{
  display:flex !important;
  gap:7px !important;
  flex-wrap:wrap !important;
}

.anik-portal .wbs-quick-actions .anik-btn{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
}

.anik-portal .anik-url-box{
  margin:0 0 9px !important;
  padding:9px 10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:10px !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
  font-size:12px !important;
  word-break:break-all !important;
}

.anik-portal .wbs-secondary-note{
  margin-top:9px !important;
  font-size:12px !important;
  color:var(--wb248-muted) !important;
}

/* Agenda */
.anik-portal .wbs-agenda-shell{
  display:grid !important;
  gap:12px !important;
}

.anik-portal .wbs-agenda-head{
  display:flex !important;
  justify-content:flex-end !important;
  margin:0 !important;
}

.anik-portal .wbs-agenda-toolbar{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  gap:10px !important;
  align-items:center !important;
  padding:10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .wbs-agenda-views,
.anik-portal .wbs-agenda-nav{
  display:flex !important;
  gap:6px !important;
  align-items:center !important;
}

.anik-portal .wbs-agenda-view-btn,
.anik-portal .wbs-agenda-nav-btn,
.anik-portal .wbs-agenda-nav-today{
  min-height:32px !important;
  padding:0 10px !important;
  border-radius:9px !important;
  border:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-text-2) !important;
  font-size:12px !important;
  font-weight:650 !important;
  text-decoration:none !important;
}

.anik-portal .wbs-agenda-view-btn.active{
  background:var(--wb248-brand) !important;
  color:#fff !important;
  border-color:var(--wb248-brand) !important;
}

.anik-portal .wbs-agenda-title{
  text-align:center !important;
  font-size:15px !important;
  font-weight:720 !important;
}

.anik-portal .wbs-agenda-day-grid,
.anik-portal .wbs-agenda-week-grid{
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
  overflow:auto !important;
}

.anik-portal .wbs-agenda-entry,
.anik-portal .wbs-agenda-appt,
.anik-portal .wbs-agenda-block{
  border-radius:10px !important;
  border:1px solid var(--wb248-line-strong) !important;
  box-shadow:none !important;
}

.anik-portal .wbs-agenda-month-grid{
  gap:6px !important;
}

.anik-portal .wbs-agenda-month-cell{
  min-height:104px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface) !important;
}

/* Operational data modules */
.anik-portal .anik-two-col,
.anik-portal .anik-bookings-layout,
.anik-portal .anik-staff-layout,
.anik-portal .anik-support-layout,
.anik-portal .anik-billing-layout,
.anik-portal .anik-payments-layout{
  display:grid !important;
  grid-template-columns:minmax(260px,.42fr) minmax(0,1fr) !important;
  gap:14px !important;
  align-items:start !important;
}

.anik-portal .anik-bookings-list-panel,
.anik-portal .anik-staff-list-panel{
  min-width:0 !important;
}

.anik-portal .anik-bookings-head{
  display:grid !important;
  grid-template-columns:126px minmax(150px,1.1fr) minmax(150px,1fr) minmax(120px,.8fr) 96px minmax(180px,1.1fr) !important;
  gap:8px !important;
  padding:8px 10px !important;
  color:var(--wb248-muted) !important;
  font-size:10.5px !important;
  font-weight:720 !important;
  text-transform:uppercase !important;
}

.anik-portal .anik-booking-row{
  padding:0 !important;
  overflow:hidden !important;
}

.anik-portal .anik-booking-row-main{
  display:grid !important;
  grid-template-columns:126px minmax(150px,1.1fr) minmax(150px,1fr) minmax(120px,.8fr) 96px minmax(180px,1.1fr) !important;
  gap:8px !important;
  align-items:center !important;
  padding:10px !important;
}

.anik-portal .anik-booking-row-main > span,
.anik-portal .anik-booking-row-main > strong{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.anik-portal .anik-status-form{
  display:flex !important;
  gap:6px !important;
  align-items:center !important;
  flex-wrap:wrap !important;
}

.anik-portal .anik-status-form select{
  width:auto !important;
  min-width:120px !important;
  min-height:32px !important;
}

.anik-portal .anik-status-form button{
  min-height:32px !important;
}

.anik-portal .anik-row-manage{
  margin-top:6px !important;
}

.anik-portal .anik-row-manage > summary,
.anik-portal .anik-service-create-summary,
.anik-portal .anik-create-summary,
.anik-portal .anik-settings-group > summary,
.anik-portal .anik-integration-card > summary{
  border-radius:12px !important;
  border:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-filter-form,
.anik-portal .anik-date-filter,
.anik-portal .anik-sale-filters,
.anik-portal .anik-inv-filters,
.anik-portal .anik-service-admin-filters,
.anik-portal .anik-category-filters,
.anik-portal .anik-master-booking-filters{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) auto !important;
  gap:9px !important;
  align-items:end !important;
  padding:12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-list,
.anik-portal .anik-customer-index-list,
.anik-portal .anik-master-business-list,
.anik-portal .anik-master-ticket-list{
  display:grid !important;
  gap:7px !important;
}

.anik-portal .anik-row-card,
.anik-portal .anik-customer-index-list > a,
.anik-portal .anik-master-business-list > a,
.anik-portal .anik-master-ticket-list > a{
  border-radius:12px !important;
  border:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface) !important;
  box-shadow:none !important;
}

/* CRM */
.anik-portal .anik-customer-database{
  display:grid !important;
  grid-template-columns:286px minmax(0,1fr) !important;
  gap:14px !important;
}

.anik-portal .anik-customer-index{
  position:sticky !important;
  top:94px !important;
  padding:12px !important;
}

.anik-portal .anik-customer-index-list{
  max-height:calc(100vh - 210px) !important;
  overflow:auto !important;
}

.anik-portal .anik-customer-profile{
  display:grid !important;
  gap:14px !important;
}

.anik-portal .anik-customer-profile-stats,
.anik-portal .anik-metrics-grid,
.anik-portal .anik-stats-grid,
.anik-portal .anik-insight-grid,
.anik-portal .anik-plan-summary-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
}

.anik-portal .anik-customer-profile-stats span,
.anik-portal .anik-stat-card,
.anik-portal .anik-stat-box,
.anik-portal .summary-card,
.anik-portal .anik-mini-card{
  padding:12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface-2) !important;
  box-shadow:none !important;
}

/* Services and team */
.anik-portal .anik-services-shell,
.anik-portal .anik-services-command,
.anik-portal .anik-categories-workspace,
.anik-portal .anik-staff-attendance-console,
.anik-portal .anik-attendance-command,
.anik-portal .anik-inventory-editor{
  display:grid !important;
  gap:14px !important;
}

.anik-portal .anik-service-table,
.anik-portal .anik-category-table-compact{
  display:grid !important;
  gap:7px !important;
}

.anik-portal .anik-service-row,
.anik-portal .anik-category-row,
.anik-portal .anik-staff-profile-card{
  min-height:64px !important;
  padding:10px !important;
  border-radius:12px !important;
  border:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface) !important;
  box-shadow:none !important;
}

.anik-portal .anik-service-thumb,
.anik-portal .anik-row-photo{
  width:44px !important;
  height:44px !important;
  border-radius:10px !important;
}

.anik-portal .anik-staff-profile-card{
  display:grid !important;
  grid-template-columns:48px minmax(0,1fr) auto !important;
  gap:10px !important;
}

.anik-portal .anik-staff-profile-facts{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
}

.anik-portal .anik-staff-profile-facts span{
  padding:5px 8px !important;
  border-radius:999px !important;
  background:var(--wb248-surface-2) !important;
  border:1px solid var(--wb248-line) !important;
}

/* Chat and support conversations */
.anik-portal .anik-internal-chat,
.anik-portal .anik-support-thread{
  display:grid !important;
  gap:10px !important;
}

.anik-portal .anik-chat-thread,
.anik-portal .anik-support-thread{
  min-height:360px !important;
  padding:14px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-chat-thread article,
.anik-portal .anik-support-thread article{
  width:min(720px,88%) !important;
  padding:10px 12px !important;
  border-radius:14px !important;
  border:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface) !important;
  box-shadow:none !important;
}

.anik-portal :is(.anik-chat-thread,.anik-support-thread) article :is(header,p,strong,time){
  min-width:0 !important;
  overflow-wrap:anywhere !important;
}

.anik-portal .anik-chat-thread article.is-mine,
.anik-portal .anik-support-thread article.is-business{
  justify-self:end !important;
  background:var(--wb248-brand-soft) !important;
  border-color:var(--wb248-brand-soft-2) !important;
}

.anik-portal .anik-chat-form,
.anik-portal .anik-support-reply-section,
.anik-portal .anik-support-upload-form{
  display:grid !important;
  gap:10px !important;
  padding:12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
}

.anik-portal .wb248-chat-readonly{
  min-height:0 !important;
  justify-items:start !important;
  text-align:left !important;
}

/* Sales POS */
.anik-portal .anik-sale-active{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 340px !important;
  gap:14px !important;
}

.anik-portal .anik-sale-main,
.anik-portal .anik-sale-summary-panel,
.anik-portal .anik-sale-secondary-grid > *,
.anik-portal .anik-sale-toolbar{
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .anik-sale-toolbar{
  padding:12px !important;
}

.anik-portal .anik-sale-items-head,
.anik-portal .anik-sale-row{
  display:grid !important;
  grid-template-columns:minmax(160px,1fr) 82px 92px 92px 34px !important;
  gap:8px !important;
  align-items:center !important;
}

.anik-portal .anik-sale-row{
  min-height:52px !important;
  padding:8px !important;
  border-bottom:1px solid var(--wb248-line) !important;
}

.anik-portal .anik-sale-total-block{
  padding:14px !important;
  border-radius:14px !important;
  background:#0b1220 !important;
}

.anik-portal .anik-sale-total-label,
.anik-portal .anik-sale-total-value{
  color:#fff !important;
}

.anik-portal .anik-sale-total-value{
  font-size:30px !important;
  font-weight:780 !important;
}

.anik-portal .anik-sale-submit{
  width:100% !important;
  min-height:46px !important;
  font-size:14px !important;
}

/* Inventory */
.anik-portal .anik-inv-summary{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
}

.anik-portal .anik-inv-summary-item{
  padding:12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface) !important;
}

.anik-portal .anik-inv-toolbar{
  display:grid !important;
  gap:10px !important;
  padding:12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-inv-row:hover td,
.anik-portal .anik-customer-table tr:hover td{
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-inv-badge{
  border-radius:999px !important;
  padding:3px 8px !important;
  font-size:11px !important;
  font-weight:700 !important;
}

/* Marketing, coupons, finances and settings */
.anik-portal .anik-marketing-grid,
.anik-portal .anik-renewal-grid,
.anik-portal .anik-payment-method-grid,
.anik-portal .anik-integration-grid,
.anik-portal .anik-master-plan-grid,
.anik-portal .anik-master-module-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}
/* Candidate 28 (punto 12): .anik-master-module-grid deja de forzar
   exactamente 3 columnas -- con 12 módulos y descripciones de largo muy
   distinto, 3 columnas rígidas generaba celdas angostas y desparejas
   ("tarjetas estrechas"). auto-fill con un mínimo de 260px deja tantas
   columnas como quepan cómodamente y cae solo a 1-2 en pantallas medianas,
   sin tocar los demás grids de la lista de arriba (fuera de alcance de este
   punto). Los dos anchos angostos más abajo ya colapsaban esta clase a 1fr
   -- se mantienen intactos y siguen ganando por venir después en el CSS. */
.anik-portal .anik-master-module-grid{
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr)) !important;
  align-items:start !important;
}
/* .anik-operational-modules (con sus propias 2 tarjetas Inventario/Caja) y el
   separador de "Add-ons comerciales" son bloques de ancho completo, no una
   fila de checkbox más -- sin este span quedaban aplastados dentro de una
   sola columna auto-fill (texto vertical, una letra por línea). */
.anik-portal .anik-master-module-grid > .anik-operational-modules,
.anik-portal .anik-master-module-grid > .anik-addons-separator{
  grid-column:1 / -1 !important;
}
.anik-portal .anik-module-row{
  margin:0 !important; padding:10px 12px !important; border:1px solid var(--wb248-line,#e5e7eb) !important;
  border-radius:12px !important; background:var(--wb248-surface-2,#f8fafc) !important;
}
.anik-portal .anik-module-row .anik-check{ margin:0 !important; }
.anik-portal .anik-module-row > p{ margin:4px 0 0 22px !important; }

/* Candidate 28 (punto 12): historial/diagnóstico plegado, cerrado al
   entrar. Mismos tokens que el resto del design system del Portal Maestro,
   sin depender de la grilla interna de .anik-settings-group (pensada para
   un ícono+título+subtítulo que este caso no usa). */
.anik-portal .anik-master-collapsible{
  border:1px solid var(--wb248-line) !important; border-radius:14px !important;
  background:var(--wb248-surface-2) !important; overflow:hidden !important; padding:0 !important;
}
.anik-portal .anik-master-collapsible > summary{
  list-style:none !important; cursor:pointer !important; padding:12px 14px !important; margin:0 !important;
  display:flex !important; align-items:center !important; justify-content:space-between !important; gap:10px !important;
}
.anik-portal .anik-master-collapsible > summary::-webkit-details-marker{ display:none !important; }
.anik-portal .anik-master-collapsible > summary::after{
  content:"" !important; width:9px !important; height:9px !important; flex:0 0 auto !important;
  border-right:2px solid var(--wb248-muted) !important; border-bottom:2px solid var(--wb248-muted) !important;
  transform:rotate(45deg) !important; transition:transform .15s ease !important;
}
.anik-portal .anik-master-collapsible[open] > summary::after{ transform:rotate(-135deg) !important; }
.anik-portal .anik-master-collapsible > summary.anik-section-head{ padding:14px 16px !important; }
.anik-portal .anik-master-collapsible > *:not(summary){ padding:0 16px 16px !important; }
.anik-portal .anik-master-collapsible > summary + *{ padding-top:0 !important; }
.anik-portal .anik-master-collapsible-summary{
  font-size:.85rem !important; font-weight:600 !important; color:var(--wb248-ink,#111827) !important;
}
@media (prefers-reduced-motion: reduce){
  .anik-portal .anik-master-collapsible > summary::after{ transition:none !important; }
}

.anik-portal .anik-settings-layout{
  max-width:1040px !important;
  margin:0 auto !important;
}

.anik-portal .anik-settings-panel{
  display:grid !important;
  gap:14px !important;
}

.anik-portal .anik-settings-accordion{
  display:grid !important;
  gap:10px !important;
}

.anik-portal .anik-settings-group{
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
  overflow:hidden !important;
}

.anik-portal .anik-settings-group > summary{
  min-height:58px !important;
  display:grid !important;
  grid-template-columns:34px minmax(160px,.72fr) minmax(0,1fr) 20px !important;
  gap:10px !important;
  align-items:center !important;
  padding:10px 12px !important;
}

.anik-portal .anik-settings-group > summary > span{
  width:32px !important;
  height:32px !important;
  border-radius:10px !important;
  background:var(--wb248-brand-soft) !important;
  color:var(--wb248-brand) !important;
}

.anik-portal .anik-settings-grid,
.anik-portal .anik-grid-form,
.anik-portal .anik-mini-form,
.anik-portal .anik-form-row,
.anik-portal .anik-review-fields-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}

.anik-portal .anik-settings-grid .full,
.anik-portal .anik-grid-form .full,
.anik-portal .anik-mini-form .full{
  grid-column:1 / -1 !important;
}

.anik-portal .anik-save-sticky,
.anik-portal .anik-settings-actions,
.anik-portal .anik-form-actions{
  position:sticky !important;
  bottom:12px !important;
  z-index:20 !important;
  display:flex !important;
  justify-content:flex-end !important;
  gap:8px !important;
  padding:10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.94) !important;
  backdrop-filter:blur(12px) !important;
}

/* Master portal harmony */
.anik-portal.anik-master-shell{
  width:min(1520px,calc(100vw - 24px)) !important;
  min-height:calc(100vh - 24px) !important;
  margin:12px auto !important;
  border-radius:18px !important;
  background:var(--wb248-bg) !important;
}

.anik-portal.anik-master-shell .anik-sidebar,
.anik-portal.anik-master-shell .anik-topbar{
  background:var(--wb248-surface) !important;
}

body.anik-workbook-master-page{
  background:var(--wb248-bg-soft) !important;
}

body.anik-workbook-master-page:has(.anik-master-shell.anik-mode-dark){
  background:#070d18 !important;
}

.anik-portal.anik-master-shell.anik-mode-dark,
.anik-portal.anik-master-shell.anik-mode-dark .anik-main-panel{
  color:var(--wb248-text) !important;
  background:var(--wb248-bg) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark .anik-sidebar,
.anik-portal.anik-master-shell.anik-mode-dark .anik-topbar,
.anik-portal.anik-master-shell.anik-mode-dark .anik-card,
.anik-portal.anik-master-shell.anik-mode-dark .anik-card-soft,
.anik-portal.anik-master-shell.anik-mode-dark .anik-command-center,
.anik-portal.anik-master-shell.anik-mode-dark .anik-integration-card,
.anik-portal.anik-master-shell.anik-mode-dark .anik-stat-card,
.anik-portal.anik-master-shell.anik-mode-dark .anik-rank-card,
.anik-portal.anik-master-shell.anik-mode-dark .anik-row-card{
  background:var(--wb248-surface) !important;
  border-color:var(--wb248-line) !important;
  color:var(--wb248-text) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark :is(h1,h2,h3,strong,b,th){
  color:var(--wb248-text) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark :is(p,small,em,span,td,label,li){
  color:inherit;
}

.anik-portal.anik-master-shell.anik-mode-dark :is(.anik-kicker,.anik-topbar-subtitle,.anik-soft-note,.anik-help-tip,.anik-sidebar-brand small,.anik-account-card small){
  color:var(--wb248-muted) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea){
  background:var(--wb248-surface-2) !important;
  border-color:var(--wb248-line-strong) !important;
  color:var(--wb248-text) !important;
  box-shadow:none !important;
}

.anik-portal.anik-master-shell.anik-mode-dark :is(input,select,textarea)::placeholder{
  color:var(--wb248-faint) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark .anik-modern-table th{
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-muted) !important;
  border-color:var(--wb248-line) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark .anik-modern-table td{
  background:var(--wb248-surface) !important;
  color:var(--wb248-text-2) !important;
  border-color:var(--wb248-line) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark .anik-modern-table tr:hover td{
  background:var(--wb248-surface-2) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark :is(.anik-btn.ghost,.anik-theme-toggle,.anik-sidebar-foot a,.anik-mobile-nav a,.anik-plan-pill,.anik-status-chip){
  background:var(--wb248-surface-2) !important;
  border-color:var(--wb248-line-strong) !important;
  color:var(--wb248-text-2) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark :is(.anik-btn.ghost,.anik-theme-toggle,.anik-sidebar-foot a,.anik-mobile-nav a):hover{
  background:var(--wb248-surface-3) !important;
  color:var(--wb248-text) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark .anik-side-nav a{
  color:var(--wb248-text-2) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark .anik-side-nav a:hover{
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark .anik-side-nav a.active{
  background:var(--wb248-brand-soft) !important;
  border-color:var(--wb248-brand-soft-2) !important;
  color:var(--wb248-info) !important;
  box-shadow:inset 3px 0 var(--wb248-info) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark .anik-save-sticky,
.anik-portal.anik-master-shell.anik-mode-dark .anik-settings-actions,
.anik-portal.anik-master-shell.anik-mode-dark .anik-form-actions{
  background:rgba(16,24,40,.94) !important;
  border-color:var(--wb248-line) !important;
}

/* Public booking: preserve hero, refine product feel. */
.anik-booking.anik-theme-workbook_saas{
  width:min(1180px,calc(100vw - 24px)) !important;
  margin:12px auto !important;
  padding:12px !important;
  border-radius:18px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:#08111f !important;
  box-shadow:0 18px 48px rgba(0,0,0,.22) !important;
}

.anik-booking.anik-theme-workbook_saas .anik-booking-hero{
  min-height:250px !important;
  border-radius:16px !important;
  padding:32px !important;
  overflow:hidden !important;
}

.anik-booking.anik-theme-workbook_saas .anik-booking-hero h1{
  max-width:760px !important;
  font-size:clamp(34px,4.4vw,58px) !important;
  line-height:.98 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-booking-progress{
  margin:12px 0 !important;
  border-radius:14px !important;
  background:#101b2c !important;
  border:1px solid rgba(255,255,255,.09) !important;
}

.anik-booking.anik-theme-workbook_saas .anik-step-details{
  border-radius:16px !important;
  background:#0e1a2b !important;
  border-color:rgba(255,255,255,.1) !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-grid{
  gap:10px !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-card{
  min-height:86px !important;
  border-radius:14px !important;
}

@media (max-width:1180px){
  .anik-portal.anik-app-shell{
    grid-template-columns:236px minmax(0,1fr) !important;
    gap:14px !important;
  }
  .anik-portal .wbs-kpi-strip{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .anik-portal .wbs-kpi-item:nth-child(2){
    border-right:0 !important;
  }
  .anik-portal .wbs-kpi-item:nth-child(-n+2){
    border-bottom:1px solid var(--wb248-line) !important;
  }
  .anik-portal .wbs-dash-primary-row,
  .anik-portal .anik-sale-active{
    grid-template-columns:1fr !important;
  }
  .anik-portal .wbs-card-attention{
    order:1 !important;
    min-height:auto !important;
  }
  .anik-portal .wbs-card-agenda{
    order:2 !important;
  }
  .anik-portal .wbs-team-roster,
  .anik-portal .anik-inv-summary,
  .anik-portal .anik-customer-profile-stats,
  .anik-portal .anik-metrics-grid,
  .anik-portal .anik-stats-grid,
  .anik-portal .anik-insight-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:900px){
  body.anik-workbook-standalone{
    background:var(--wb248-bg) !important;
  }
  .anik-portal.anik-app-shell{
    display:block !important;
    width:calc(100vw - 12px) !important;
    min-height:calc(100vh - 12px) !important;
    margin:6px auto !important;
    padding:6px !important;
    border-radius:14px !important;
  }
  .anik-portal .anik-sidebar{
    position:fixed !important;
    z-index:410 !important;
    top:8px !important;
    left:8px !important;
    width:min(320px,calc(100vw - 16px)) !important;
    height:calc(100vh - 16px) !important;
    max-height:calc(100vh - 16px) !important;
    transform:translateX(calc(-100% - 16px)) !important;
    transition:transform var(--wb248-fast) var(--wb248-ease) !important;
  }
  .anik-portal[data-menu-open="true"] .anik-sidebar{
    transform:translateX(0) !important;
  }
  .anik-portal .anik-sidebar-overlay{
    position:fixed !important;
    inset:0 !important;
    z-index:400 !important;
    background:rgba(15,23,42,.45) !important;
    opacity:0 !important;
    pointer-events:none !important;
    transition:opacity var(--wb248-fast) var(--wb248-ease) !important;
  }
  .anik-portal[data-menu-open="true"] .anik-sidebar-overlay{
    opacity:1 !important;
    pointer-events:auto !important;
  }
  .anik-portal .anik-topbar{
    top:6px !important;
    min-height:58px !important;
    border-radius:14px !important;
    padding:8px 10px !important;
  }
  .anik-portal .anik-topbar h1{
    font-size:18px !important;
  }
  .anik-portal .anik-topbar-subtitle,
  .anik-portal .anik-top-actions .anik-plan-pill{
    display:none !important;
  }
  .anik-portal .anik-top-actions{
    flex-wrap:nowrap !important;
  }
  .anik-portal .anik-top-actions .anik-btn{
    min-height:34px !important;
    padding:0 9px !important;
    font-size:11.5px !important;
  }
  .anik-portal .anik-portal-main{
    padding:10px 0 0 !important;
  }
  .anik-portal .anik-two-col,
  .anik-portal .anik-bookings-layout,
  .anik-portal .anik-staff-layout,
  .anik-portal .anik-support-layout,
  .anik-portal .anik-billing-layout,
  .anik-portal .anik-payments-layout,
  .anik-portal .anik-customer-database,
  .anik-portal .wbs-indicator-row,
  .anik-portal .wbs-dash-tools,
  .anik-portal .anik-marketing-grid,
  .anik-portal .anik-renewal-grid,
  .anik-portal .anik-payment-method-grid,
  .anik-portal .anik-integration-grid,
  .anik-portal .anik-master-plan-grid,
  .anik-portal .anik-master-module-grid{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-customer-index{
    position:relative !important;
    top:auto !important;
  }
  .anik-portal .anik-customer-index-list{
    max-height:260px !important;
  }
  .anik-portal .anik-bookings-head{
    display:none !important;
  }
  .anik-portal .anik-booking-row-main{
    grid-template-columns:1fr !important;
    gap:6px !important;
  }
  .anik-portal .anik-bk-col-actions{
    display:block !important;
  }
  .anik-portal .wbs-agenda-toolbar{
    grid-template-columns:1fr !important;
  }
  .anik-portal .wbs-agenda-title{
    text-align:left !important;
  }
  .anik-portal .wbs-agenda-month-cell{
    min-height:78px !important;
  }
  .anik-portal .anik-settings-group > summary{
    grid-template-columns:32px minmax(0,1fr) 18px !important;
  }
  .anik-portal .anik-settings-group > summary > em{
    display:none !important;
  }
  .anik-portal .anik-settings-grid,
  .anik-portal .anik-grid-form,
  .anik-portal .anik-mini-form,
  .anik-portal .anik-form-row,
  .anik-portal .anik-review-fields-grid,
  .anik-portal .anik-filter-form,
  .anik-portal .anik-date-filter,
  .anik-portal .anik-sale-filters,
  .anik-portal .anik-inv-filters,
  .anik-portal .anik-service-admin-filters,
  .anik-portal .anik-category-filters,
  .anik-portal .anik-master-booking-filters{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-save-sticky,
  .anik-portal .anik-settings-actions,
  .anik-portal .anik-form-actions{
    justify-content:stretch !important;
  }
  .anik-portal .anik-save-sticky .anik-btn,
  .anik-portal .anik-settings-actions .anik-btn,
  .anik-portal .anik-form-actions .anik-btn,
  .anik-portal .anik-save-sticky button,
  .anik-portal .anik-settings-actions button,
  .anik-portal .anik-form-actions button{
  width:100% !important;
  }
}

/* Access screens */
.anik-client-login-shell,
.anik-master-access-shell{
  width:min(1080px,calc(100vw - 24px)) !important;
  min-height:min(680px,calc(100vh - 24px)) !important;
  margin:12px auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:20px !important;
  overflow:hidden !important;
  background:#0b1220 !important;
  box-shadow:0 24px 70px rgba(2,6,23,.28) !important;
}

.anik-client-login-hero,
.anik-master-access-brand{
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
  min-height:0 !important;
  padding:clamp(30px,5vw,58px) !important;
  background:#0b1220 !important;
  color:#fff !important;
}

.anik-client-login-hero h1,
.anik-master-access-brand h1{
  max-width:620px !important;
  margin:18px 0 14px !important;
  color:#fff !important;
  font-size:clamp(42px,5vw,64px) !important;
  line-height:.96 !important;
  font-weight:780 !important;
}

.anik-client-login-hero p,
.anik-master-access-brand p{
  max-width:560px !important;
  color:#cbd5e1 !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

.anik-login-chip,
.anik-master-access-brand > img{
  width:max-content !important;
  max-width:230px !important;
  margin-bottom:auto !important;
}

.anik-login-overline,
.anik-master-access-brand > span{
  color:#93a4bf !important;
  font-size:11px !important;
  font-weight:760 !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
}

.anik-login-points,
.anik-master-security-points{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-top:22px !important;
}

.anik-login-points span,
.anik-master-security-points span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:30px !important;
  padding:0 10px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.04) !important;
  color:#e2e8f0 !important;
  font-size:12px !important;
  font-weight:650 !important;
}

.anik-login-points span:before,
.anik-master-security-points span:before{
  content:"" !important;
  width:6px !important;
  height:6px !important;
  margin-right:8px !important;
  border-radius:999px !important;
  background:#8fb3ff !important;
}

.anik-login-box,
.anik-master-access-card{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:clamp(28px,4.8vw,54px) !important;
  background:#fff !important;
  color:var(--wb248-text) !important;
}

.anik-login-card-brand{
  width:max-content !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  min-height:34px !important;
  padding:4px 10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:999px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-login-card-brand img{
  width:18px !important;
  height:18px !important;
}

.anik-login-back{
  display:inline-flex !important;
  width:max-content !important;
  margin-bottom:14px !important;
  color:var(--wb248-muted) !important;
  font-size:12px !important;
  font-weight:650 !important;
  text-decoration:none !important;
}

.anik-login-box h2,
.anik-master-access-card h2{
  margin:16px 0 8px !important;
  color:var(--wb248-text) !important;
  font-size:32px !important;
  line-height:1.05 !important;
  font-weight:760 !important;
}

.anik-login-box p,
.anik-master-access-card p{
  color:var(--wb248-muted) !important;
  font-size:13px !important;
  line-height:1.5 !important;
}

.anik-front-login-form,
.anik-master-login-form{
  display:grid !important;
  gap:12px !important;
  margin-top:18px !important;
}

.anik-login-submit,
.anik-master-login-form .anik-btn{
  min-height:46px !important;
  width:100% !important;
}

.anik-login-help{
  margin:14px 0 0 !important;
  text-align:center !important;
}

.anik-login-error{
  margin-top:12px !important;
  padding:10px 12px !important;
  border-radius:10px !important;
  border:1px solid color-mix(in srgb,var(--wb248-danger) 22%,white) !important;
  background:var(--wb248-danger-bg) !important;
  color:var(--wb248-danger) !important;
  font-size:12px !important;
  font-weight:650 !important;
}

.anik-theme-toggle-icon,
.anik-empty-icon,
.anik-confirm-icon{
  position:relative !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  font-size:0 !important;
}

.anik-theme-toggle-icon:before{
  content:"" !important;
  width:14px !important;
  height:14px !important;
  border:2px solid currentColor !important;
  border-radius:999px !important;
  box-shadow:0 0 0 5px color-mix(in srgb,currentColor 8%,transparent) !important;
}

.anik-empty-icon:before,
.anik-confirm-icon:before{
  content:"" !important;
  width:18px !important;
  height:18px !important;
  border-radius:999px !important;
  background:currentColor !important;
  -webkit-mask:radial-gradient(circle at center,transparent 42%,#000 43%) !important;
  mask:radial-gradient(circle at center,transparent 42%,#000 43%) !important;
}

.anik-booking .anik-auto-staff-avatar,
.anik-booking .anik-selected-badge i,
.anik-booking .anik-booking-trust b{
  position:relative !important;
  display:inline-grid !important;
  place-items:center !important;
  font-size:0 !important;
}

.anik-booking .anik-auto-staff-avatar:before,
.anik-booking .anik-selected-badge i:before,
.anik-booking .anik-booking-trust b:before{
  content:"" !important;
  width:12px !important;
  height:12px !important;
  border-radius:999px !important;
  background:currentColor !important;
  -webkit-mask:radial-gradient(circle at center,transparent 42%,#000 43%) !important;
  mask:radial-gradient(circle at center,transparent 42%,#000 43%) !important;
}

.anik-popup-close,
.anik-toast-close{
  position:relative !important;
  display:grid !important;
  place-items:center !important;
  width:32px !important;
  height:32px !important;
  min-width:32px !important;
  min-height:32px !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.1) !important;
  color:currentColor !important;
  font-size:0 !important;
  line-height:1 !important;
}

.anik-popup-close:before,
.anik-popup-close:after,
.anik-toast-close:before,
.anik-toast-close:after{
  content:"" !important;
  position:absolute !important;
  width:14px !important;
  height:2px !important;
  border-radius:999px !important;
  background:currentColor !important;
  left:50% !important;
  top:50% !important;
}

.anik-popup-close:before,
.anik-toast-close:before{
  transform:translate(-50%,-50%) rotate(45deg) !important;
}

.anik-popup-close:after,
.anik-toast-close:after{
  transform:translate(-50%,-50%) rotate(-45deg) !important;
}

@media (max-width:820px){
  .anik-client-login-shell,
  .anik-master-access-shell{
    grid-template-columns:1fr !important;
    width:calc(100vw - 12px) !important;
    margin:6px auto !important;
    border-radius:16px !important;
  }
  .anik-client-login-hero,
  .anik-master-access-brand{
    min-height:300px !important;
    padding:28px !important;
  }
  .anik-login-box,
  .anik-master-access-card{
    padding:26px !important;
  }
  .anik-client-login-hero h1,
  .anik-master-access-brand h1{
    font-size:38px !important;
  }
}

@media (max-width:640px){
  .anik-portal .wbs-kpi-strip,
  .anik-portal .wbs-team-roster,
  .anik-portal .anik-inv-summary,
  .anik-portal .anik-customer-profile-stats,
  .anik-portal .anik-metrics-grid,
  .anik-portal .anik-stats-grid,
  .anik-portal .anik-insight-grid,
  .anik-portal .anik-plan-summary-grid{
    grid-template-columns:1fr !important;
  }
  .anik-portal .wbs-kpi-item{
    border-right:0 !important;
    border-bottom:1px solid var(--wb248-line) !important;
  }
  .anik-portal .wbs-kpi-item:last-child{
    border-bottom:0 !important;
  }
  .anik-portal .wbs-agenda-list li,
  .anik-portal .wbs-attention-list li{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }
  .anik-portal .wbs-agenda-time,
  .anik-portal .wbs-attention-icon{
    width:max-content !important;
    min-width:50px !important;
  }
  .anik-portal .wbs-card-head{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-sale-items-head{
    display:none !important;
  }
  .anik-portal .anik-sale-row{
    grid-template-columns:1fr 1fr !important;
  }
  .anik-portal .anik-sale-row > *{
    min-width:0 !important;
  }
  .anik-booking.anik-theme-workbook_saas{
    width:calc(100vw - 10px) !important;
    margin:5px auto !important;
    padding:8px !important;
    border-radius:14px !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-booking-hero{
    min-height:220px !important;
    padding:20px !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-booking-hero h1{
    font-size:34px !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-booking-progress{
    grid-template-columns:1fr 1fr !important;
  }
}

/* Candidate 3 global completion layer. Extends the approved Dashboard visual
   language across every Workbook surface without changing markup or behavior. */

.anik-portal .anik-section-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:14px !important;
  margin:0 0 14px !important;
}

.anik-portal .anik-section-head > div{
  min-width:0 !important;
}

.anik-portal .anik-section-head p{
  max-width:720px !important;
  margin:5px 0 0 !important;
  color:var(--wb248-muted) !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

.anik-portal .anik-row-actions,
.anik-portal .anik-inline-actions,
.anik-portal .anik-top-actions,
.anik-portal .anik-table-actions,
.anik-portal .anik-inv-toolbar-actions,
.anik-portal .anik-sale-toolbar-actions,
.anik-portal .anik-live-actions,
.anik-portal .anik-location-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:8px !important;
}

.anik-portal :is(.anik-soft-note,.anik-help-tip,.anik-field-help,.anik-list-help,.anik-inv-help,.anik-toggle-help,.anik-soft-lead,.anik-muted){
  color:var(--wb248-muted) !important;
  font-size:12px !important;
  line-height:1.45 !important;
}

.anik-portal :is(.anik-empty,.anik-empty-inline,.anik-empty-state,.wbs-empty,.anik-filter-empty){
  display:grid !important;
  place-items:center !important;
  min-height:180px !important;
  padding:24px !important;
  border:1px dashed var(--wb248-line-strong) !important;
  border-radius:16px !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-muted) !important;
  text-align:center !important;
}

.anik-portal :is(.anik-empty.compact,.anik-empty-inline,.anik-filter-empty),
.anik-booking.anik-theme-workbook_saas :is(.anik-empty,.anik-error-card,.anik-success-card){
  min-height:0 !important;
  align-content:center !important;
  gap:8px !important;
}

.anik-portal :is(.anik-empty,.anik-empty-state) :is(h1,h2,h3,strong),
.anik-booking.anik-theme-workbook_saas :is(.anik-empty,.anik-error-card,.anik-success-card) :is(h1,h2,h3,strong){
  max-width:680px !important;
  margin-inline:auto !important;
  color:var(--wb248-text) !important;
}

.anik-portal :is(.anik-empty,.anik-empty-state) p,
.anik-booking.anik-theme-workbook_saas :is(.anik-empty,.anik-error-card,.anik-success-card) p{
  max-width:620px !important;
  margin-inline:auto !important;
  color:var(--wb248-muted) !important;
  line-height:1.5 !important;
}

.anik-portal .anik-empty-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  gap:8px !important;
}

.anik-portal :is(.anik-notice,.anik-security-alert,.anik-master-support-alert,.anik-invoice-alert,.anik-module-excluded-warn,.anik-warn,.anik-excl-note){
  padding:12px 14px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .anik-alert.warn{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  box-shadow:none !important;
}

.anik-portal .anik-alert.warn strong{
  color:var(--wb248-text) !important;
}

.anik-portal .anik-alert.warn span{
  color:var(--wb248-text-2) !important;
}

.anik-portal .anik-command-center{
  display:grid !important;
  gap:12px !important;
}

.anik-portal :is(.anik-grid-form,.anik-mini-form,.anik-nested-form,.anik-form-row,.anik-form-line,.anik-inline-form,.anik-payment-settings-form,.anik-catalog-form,.anik-master-business-form,.anik-master-addon-form,.anik-master-system-form,.anik-password-form,.anik-attendance-form,.anik-hours-form,.anik-closure-form){
  align-items:end !important;
}

.anik-portal :is(.anik-grid-form,.anik-mini-form,.anik-nested-form,.anik-payment-settings-form,.anik-catalog-form,.anik-master-business-form,.anik-master-addon-form,.anik-master-system-form,.anik-password-form,.anik-attendance-form,.anik-hours-form,.anik-closure-form) > :is(button,.anik-btn,input[type="submit"]){
  align-self:end !important;
}

.anik-portal details > summary{
  list-style:none !important;
  cursor:pointer !important;
}

.anik-portal details > summary::-webkit-details-marker{
  display:none !important;
}

.anik-portal :is(.anik-optional-panel,.anik-row-manage,.anik-service-create-accordion,.anik-billing-module,.anik-settings-diagnostic-group,.anik-settings-security-group){
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
  overflow:hidden !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal :is(.anik-optional-panel,.anik-row-manage,.anik-service-create-accordion,.anik-billing-module,.anik-settings-diagnostic-group,.anik-settings-security-group) > summary{
  min-height:46px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  padding:10px 12px !important;
  background:var(--wb248-surface-2) !important;
  border-bottom:1px solid transparent !important;
  color:var(--wb248-text) !important;
  font-weight:700 !important;
}

.anik-portal :is(.anik-optional-panel,.anik-row-manage,.anik-service-create-accordion,.anik-billing-module,.anik-settings-diagnostic-group,.anik-settings-security-group)[open] > summary{
  border-bottom-color:var(--wb248-line) !important;
}

.anik-portal :is(.anik-row-manage-body,.anik-integration-content,.anik-payment-method-panel,.anik-service-form-wrap,.anik-staff-create-panel,.anik-booking-create-panel,.anik-inv-new-product-panel){
  padding:14px !important;
}

.anik-portal .anik-filter-form :is(input,select),
.anik-portal .anik-date-filter :is(input,select),
.anik-portal .anik-sale-filters :is(input,select),
.anik-portal .anik-inv-filters :is(input,select),
.anik-portal .anik-service-admin-filters :is(input,select),
.anik-portal .anik-category-filters :is(input,select),
.anik-portal .anik-master-booking-filters :is(input,select){
  min-height:36px !important;
}

.anik-portal :is(.anik-service-table-head,.anik-hours-table-head,.anik-sale-items-head){
  min-height:34px !important;
  align-items:center !important;
  padding:0 10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-muted) !important;
  font-size:10.5px !important;
  font-weight:720 !important;
  text-transform:uppercase !important;
}

.anik-portal .anik-modern-table :is(td,th),
.anik-portal .anik-customer-table :is(td,th),
.anik-portal .anik-inv-table :is(td,th){
  white-space:nowrap !important;
}

.anik-portal .anik-modern-table td :is(strong,b),
.anik-portal .anik-customer-table td :is(strong,b),
.anik-portal .anik-inv-table td :is(strong,b){
  color:var(--wb248-text) !important;
}

/* Agenda, schedules and booking operations */
.anik-portal .wbs-agenda-day-grid{
  min-width:760px !important;
}

.anik-portal .wbs-agenda-week-grid{
  min-width:920px !important;
}

.anik-portal .wbs-agenda-entry-row,
.anik-portal .wbs-agenda-week-day-head,
.anik-portal .wbs-agenda-month-head-row{
  border-bottom:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal :is(.wbs-agenda-entry-time,.wbs-agenda-hour-label,.wbs-agenda-week-day-name,.wbs-agenda-month-cell-num){
  color:var(--wb248-muted) !important;
  font-size:11px !important;
  font-weight:720 !important;
}

.anik-portal :is(.wbs-agenda-appt,.wbs-agenda-block,.wbs-agenda-month-chip){
  background:var(--wb248-brand-soft) !important;
  border-color:var(--wb248-brand-soft-2) !important;
  color:var(--wb248-text) !important;
}

.anik-portal .wbs-agenda-block{
  background:var(--wb248-warning-bg) !important;
  border-color:color-mix(in srgb,var(--wb248-warning) 25%,white) !important;
}

.anik-portal .anik-schedule-workspace,
.anik-portal .anik-hours-form{
  display:grid !important;
  gap:12px !important;
}

.anik-portal .anik-hour-row{
  display:grid !important;
  grid-template-columns:110px repeat(4,minmax(110px,1fr)) !important;
  gap:8px !important;
  align-items:end !important;
  padding:10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface) !important;
}

.anik-portal .anik-booking-create-panel{
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
  overflow:hidden !important;
}

.anik-portal .anik-booking-create-summary{
  min-height:52px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  padding:12px 14px !important;
  background:var(--wb248-surface-2) !important;
  border-bottom:1px solid var(--wb248-line) !important;
  font-weight:720 !important;
}

.anik-portal .anik-booking-row-secondary{
  padding:0 10px 10px !important;
  color:var(--wb248-muted) !important;
  font-size:12px !important;
}

/* CRM */
.anik-portal .anik-customer-index .anik-filter-form{
  grid-template-columns:1fr !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

.anik-portal .anik-customer-index-list > a{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:8px !important;
  align-items:center !important;
  min-height:54px !important;
  padding:10px 11px !important;
  color:var(--wb248-text-2) !important;
  text-decoration:none !important;
}

.anik-portal .anik-customer-index-list > a:hover{
  background:var(--wb248-surface-2) !important;
  border-color:var(--wb248-line-strong) !important;
}

.anik-portal .anik-customer-expanded{
  display:grid !important;
  gap:14px !important;
}

.anik-portal .anik-customer-profile-form{
  display:grid !important;
  gap:14px !important;
}

.anik-portal .anik-customer-comercial{
  display:grid !important;
  gap:10px !important;
  padding:12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-estado-row{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}

.anik-portal .anik-mini-cards-row{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
}

.anik-portal .anik-customer-quick-actions{
  padding:12px !important;
}

.anik-portal .anik-customer-history{
  display:grid !important;
  gap:10px !important;
}

/* Services, categories and staff management */
.anik-portal .anik-services-command,
.anik-portal .anik-services-manager-card,
.anik-portal .anik-category-workspace-body{
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .anik-services-manager-card,
.anik-portal .anik-category-workspace-body{
  padding:14px !important;
}

.anik-portal .anik-service-table-head,
.anik-portal .anik-service-row{
  display:grid !important;
  grid-template-columns:48px minmax(190px,1.2fr) 120px 90px 92px 122px minmax(180px,1fr) !important;
  gap:10px !important;
  align-items:center !important;
}

.anik-portal .anik-service-main{
  min-width:0 !important;
}

.anik-portal .anik-service-main strong,
.anik-portal .anik-service-order-name{
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  color:var(--wb248-text) !important;
}

.anik-portal .anik-service-main small,
.anik-portal .anik-service-staff-cell,
.anik-portal .anik-service-order-status{
  color:var(--wb248-muted) !important;
  font-size:12px !important;
}

.anik-portal .anik-service-form-pro,
.anik-portal .anik-category-quick-create{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}

.anik-portal .anik-service-form-pro .full,
.anik-portal .anik-category-quick-create .full{
  grid-column:1 / -1 !important;
}

.anik-portal .anik-service-order-list{
  display:grid !important;
  gap:8px !important;
}

.anik-portal .anik-service-order-item{
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:10px !important;
  min-height:54px !important;
  padding:9px 10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface) !important;
}

.anik-portal .anik-category-table,
.anik-portal .anik-category-table-compact{
  display:grid !important;
  gap:8px !important;
}

.anik-portal .anik-category-row{
  display:grid !important;
  grid-template-columns:minmax(180px,1fr) auto auto !important;
  gap:10px !important;
  align-items:center !important;
}

.anik-portal .anik-staff-layout{
  grid-template-columns:320px minmax(0,1fr) !important;
}

.anik-portal .anik-staff-profile-card{
  align-items:start !important;
}

.anik-portal .anik-staff-profile-main{
  display:grid !important;
  gap:4px !important;
  min-width:0 !important;
}

.anik-portal .anik-staff-profile-main p{
  margin:0 !important;
  color:var(--wb248-muted) !important;
  font-size:12px !important;
  line-height:1.35 !important;
}

.anik-portal .anik-staff-profile-details{
  grid-column:1 / -1 !important;
  margin-top:4px !important;
}

.anik-portal .anik-staff-profile-details > summary{
  width:max-content !important;
  min-height:30px !important;
  padding:5px 9px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:999px !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
  font-size:12px !important;
  font-weight:650 !important;
}

.anik-portal .anik-staff-profile-details > div{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  margin-top:10px !important;
}

.anik-portal .anik-staff-profile-details span{
  min-width:0 !important;
  padding:8px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:10px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-staff-profile-details span.full{
  grid-column:1 / -1 !important;
}

.anik-portal .anik-staff-profile-details span b{
  display:block !important;
  margin-bottom:3px !important;
  color:var(--wb248-muted) !important;
  font-size:10.5px !important;
  text-transform:uppercase !important;
}

/* Attendance, collaborator portal and commissions */
.anik-portal .anik-attendance-admin-layout{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 340px !important;
  gap:14px !important;
  align-items:start !important;
}

.anik-portal .anik-attendance-pulse-grid,
.anik-portal .anik-staff-jornada-grid,
.anik-portal .wbs-mini-metrics,
.anik-portal .wbs-mini-metrics-3{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}

.anik-portal .anik-attendance-card,
.anik-portal .anik-staff-jornada-card,
.anik-portal .wbs-jornada-card,
.anik-portal .wbs-staff-next,
.anik-portal .wbs-staff-agenda,
.anik-portal .wbs-staff-income,
.anik-portal .wbs-staff-summary{
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
  padding:14px !important;
}

.anik-portal .wbs-staff-dash{
  display:grid !important;
  gap:14px !important;
}

.anik-portal .wbs-staff-row{
  display:grid !important;
  grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr) !important;
  gap:14px !important;
}

.anik-portal .wbs-jornada-status-row,
.anik-portal .wbs-jornada-actions{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
}

.anik-portal .wbs-jornada-status{
  font-size:22px !important;
  line-height:1.1 !important;
  font-weight:780 !important;
  color:var(--wb248-text) !important;
}

.anik-portal .wbs-jornada-badge,
.anik-portal .wbs-jornada-pause-flag{
  display:inline-flex !important;
  align-items:center !important;
  min-height:24px !important;
  padding:3px 8px !important;
  border-radius:999px !important;
  border:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
  font-size:11px !important;
  font-weight:700 !important;
}

.anik-portal .wbs-staff-next-cta{
  margin-top:10px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}

.anik-portal .anik-chart-bars{
  display:grid !important;
  gap:8px !important;
  padding:10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-bar-row{
  min-height:32px !important;
  display:grid !important;
  grid-template-columns:minmax(140px,.8fr) minmax(0,1fr) auto !important;
  gap:8px !important;
  align-items:center !important;
  color:var(--wb248-text-2) !important;
  font-size:12px !important;
}

/* POS and financial operations */
.anik-portal .anik-sale-active{
  align-items:start !important;
}

.anik-portal .anik-sale-main{
  overflow:hidden !important;
}

.anik-portal .anik-sale-toolbar-row,
.anik-portal .anik-inv-toolbar-row{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}

.anik-portal .anik-sale-customer-panel,
.anik-portal .anik-sale-customer-card,
.anik-portal .anik-sale-customer-new{
  padding:12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-sale-customer-results{
  z-index:40 !important;
  margin-top:4px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-2) !important;
}

.anik-portal .anik-sale-customer-results li{
  padding:9px 10px !important;
  border-bottom:1px solid var(--wb248-line) !important;
}

.anik-portal .anik-sale-customer-results li:last-child{
  border-bottom:0 !important;
}

.anik-portal .anik-sale-items{
  display:grid !important;
  gap:0 !important;
}

.anik-portal .anik-sale-field{
  display:grid !important;
  gap:5px !important;
}

.anik-portal .anik-sale-field-label,
.anik-portal .anik-sale-summary-label,
.anik-portal .anik-sale-customer-label{
  color:var(--wb248-muted) !important;
  font-size:10.5px !important;
  font-weight:720 !important;
  text-transform:uppercase !important;
}

.anik-portal .anik-sale-summary-panel{
  position:sticky !important;
  top:94px !important;
  display:grid !important;
  gap:12px !important;
  padding:14px !important;
}

.anik-portal .anik-sale-summary{
  display:grid !important;
  gap:8px !important;
}

.anik-portal .anik-sale-summary-item{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  color:var(--wb248-text-2) !important;
  font-size:12px !important;
}

.anik-portal .anik-cash-closure-section,
.anik-portal .anik-closure-preview-box,
.anik-portal .anik-payment-master,
.anik-portal .anik-payments-business-view{
  display:grid !important;
  gap:12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface) !important;
  padding:14px !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .anik-closure-preview-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
}

.anik-portal .anik-closure-preview-grid > *{
  padding:10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-closure-preview-label{
  display:block !important;
  color:var(--wb248-muted) !important;
  font-size:10.5px !important;
  font-weight:720 !important;
  text-transform:uppercase !important;
}

/* Inventory */
.anik-portal .anik-inv-summary-value,
.anik-portal .anik-inv-stock-val,
.anik-portal .anik-inv-price-val{
  display:block !important;
  color:var(--wb248-text) !important;
  font-size:20px !important;
  line-height:1.1 !important;
  font-weight:760 !important;
}

.anik-portal .anik-inv-summary-label,
.anik-portal .anik-inv-meta,
.anik-portal .anik-sale-stock-note{
  color:var(--wb248-muted) !important;
  font-size:11px !important;
}

.anik-portal .anik-inv-cell-product{
  min-width:220px !important;
}

.anik-portal .anik-inv-name{
  display:block !important;
  color:var(--wb248-text) !important;
  font-weight:720 !important;
}

.anik-portal .anik-inv-history-panel,
.anik-portal .anik-inv-global-history,
.anik-portal .anik-inv-new-product,
.anik-portal .anik-inventory-editor{
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .anik-inv-history-panel,
.anik-portal .anik-inv-global-history,
.anik-portal .anik-inv-new-product{
  padding:14px !important;
}

.anik-portal .anik-inv-history-entry{
  display:grid !important;
  grid-template-columns:86px minmax(0,1fr) auto !important;
  gap:10px !important;
  align-items:center !important;
  min-height:48px !important;
  padding:8px 0 !important;
  border-bottom:1px solid var(--wb248-line) !important;
}

.anik-portal .anik-inv-history-entry:last-child{
  border-bottom:0 !important;
}

/* Marketing, coupons, notifications and support */
.anik-portal .anik-marketing-hero{
  display:grid !important;
  gap:12px !important;
  padding:16px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:18px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .anik-subscriber-list{
  display:grid !important;
  gap:8px !important;
}

.anik-portal .anik-subscriber-card,
.anik-portal .anik-module-status-card,
.anik-portal .anik-payment-method-card,
.anik-portal .anik-invoice-choice,
.anik-portal .anik-review-chip,
.anik-portal .anik-review-source-picker label{
  padding:12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}
/* Candidate 30 (sección 7, "Pagos online"): esta tarjeta es un <label>
   DENTRO de un formulario `.anik-mini-form`, así que compite con DOS reglas
   genéricas de grid, no solo una: `.anik-portal label{display:grid}`
   (workbook-premium.css, especificidad 0,1,1) Y
   `.anik-portal :is(.anik-settings-grid label,.anik-password-form label,
   .anik-mini-form label){display:grid}` (public.css, especificidad 0,2,1 --
   el selector dentro de :is() con más especificidad SÍ cuenta). La regla base
   `.anik-payment-method-card{display:flex}` (public.css, 0,1,0) y un primer
   intento de arreglo con `.anik-portal .anik-payment-method-card` (0,2,0)
   pierden ambas contra esa segunda regla (0,2,1) -- confirmado con
   getComputedStyle mostrando display:grid y el checkbox estirado a
   ~145×51px incluso después del primer intento. Se sube la especificidad
   anclando al contenedor real `.anik-payment-method-grid` (0,3,0), que sí
   gana. Mismo defecto de origen ya resuelto antes para `.anik-invoice-choice`
   (que no vive dentro de `.anik-mini-form`, por eso nunca le tocó competir
   con la regla de :is() y no mostraba el problema). */
.anik-portal .anik-payment-method-grid .anik-payment-method-card{
  display:flex !important;
  flex-direction:column !important;
  gap:7px !important;
}
.anik-portal .anik-payment-method-grid .anik-payment-method-card input[type="checkbox"]{
  width:18px !important;
  height:18px !important;
  /* min-height:44px de `.anik-portal :is(input,select,textarea)` (pensada
     para inputs de texto táctiles) seguía ganando sobre solo height:18px --
     max(height,min-height) rendía 44px reales. Se fija min-height también. */
  min-height:18px !important;
  margin:0 0 4px !important;
  flex:0 0 auto !important;
}

.anik-portal .anik-coupon-tbl{
  min-width:780px !important;
}

.anik-portal .anik-status-dashboard,
.anik-portal .anik-module-status-list,
.anik-portal .anik-config-list{
  display:grid !important;
  gap:8px !important;
}

.anik-portal .anik-status-dashboard > *,
.anik-portal .anik-module-status-list > *,
.anik-portal .anik-config-list > *{
  padding:10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-support-layout{
  grid-template-columns:minmax(300px,.5fr) minmax(0,1fr) !important;
}

.anik-portal .anik-master-ticket-list > a{
  min-height:56px !important;
  padding:10px 12px !important;
  text-decoration:none !important;
}

.anik-portal .anik-support-ticket-status,
.anik-portal .anik-ticket-state-form{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}

/* Settings */
.anik-portal .anik-settings-layout{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 300px !important;
  gap:16px !important;
  align-items:start !important;
}

.anik-portal .anik-settings-aside{
  position:sticky !important;
  top:94px !important;
  display:grid !important;
  gap:10px !important;
}

.anik-portal .anik-settings-aside > *,
.anik-portal .anik-module-status-card{
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
  padding:12px !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .anik-settings-divider{
  height:1px !important;
  margin:4px 0 !important;
  background:var(--wb248-line) !important;
}

.anik-portal .anik-switch-grid,
.anik-portal .anik-check-grid,
.anik-portal .anik-optional-grid,
.anik-portal .anik-module-prefill-grid,
.anik-portal .anik-cover-position-controls{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}

.anik-portal .anik-switch-line,
.anik-portal .anik-inline-toggle,
.anik-portal .anik-public-theme-locked,
.anik-portal .anik-upload-field{
  min-height:44px !important;
  padding:10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-cover-position-preview{
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  /* Candidate 28: background-color, no el shorthand "background" -- el
     shorthand con !important reseteaba background-image/-position/-size/
     -repeat a su valor inicial, borrando la foto de portada (inline, puesta
     por PHP/JS) y dejando el cuadro de encuadre visualmente vacío. */
  background-color:var(--wb248-surface-2) !important;
  overflow:hidden !important;
}

/* Master portal completion */
.anik-portal.anik-master-shell .anik-portal-main{
  max-width:1280px !important;
}

.anik-portal.anik-master-shell .anik-master-section{
  display:grid !important;
  gap:14px !important;
}

.anik-portal.anik-master-shell .anik-stats-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.anik-portal.anik-master-shell .anik-master-business-register,
.anik-portal.anik-master-shell .anik-master-owner-card,
.anik-portal.anik-master-shell .anik-master-addons,
.anik-portal.anik-master-shell .anik-operational-modules,
.anik-portal.anik-master-shell .anik-catalog-list,
.anik-portal.anik-master-shell .anik-readonly-profile,
.anik-portal.anik-master-shell .anik-invoice-register,
.anik-portal.anik-master-shell .anik-invoice-state-manager{
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface) !important;
  padding:14px !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal.anik-master-shell .anik-master-business-list > a{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:10px !important;
  min-height:62px !important;
  padding:12px !important;
  text-decoration:none !important;
}

.anik-portal.anik-master-shell .anik-master-staff-list,
.anik-portal.anik-master-shell .anik-master-addons,
.anik-portal.anik-master-shell .anik-op-modules-grid,
.anik-portal.anik-master-shell .anik-catalog-list,
.anik-portal.anik-master-shell .anik-plan-feature-list{
  display:grid !important;
  gap:8px !important;
}

.anik-portal.anik-master-shell .anik-master-staff-row,
.anik-portal.anik-master-shell .anik-op-module-card,
.anik-portal.anik-master-shell .anik-addon{
  min-height:54px !important;
  padding:10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal.anik-master-shell .anik-op-module-card{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:10px !important;
  align-items:center !important;
}
/* Candidate 28: la tarjeta tiene 3 hijos directos (label, descripción,
   enlace) pero la plantilla de arriba solo define 2 columnas -- el
   auto-placement dejaba el tercer hijo (el enlace "Abrir ... en portal")
   encajado en una pista que podía colapsar a 0px de ancho (texto partido
   letra por letra), defecto preexistente que quedaba oculto mientras esta
   tarjeta vivía forzada a 1/3 de ancho bajo la grilla rígida de módulos.
   Cada hijo pasa a ocupar la fila completa -- mismo contenido, layout
   simple de una columna, sin depender del auto-placement de 2 columnas. */
.anik-portal.anik-master-shell .anik-op-module-card > *{
  grid-column:1 / -1 !important;
}

.anik-portal.anik-master-shell .anik-op-module-info{
  min-width:0 !important;
}

.anik-portal.anik-master-shell .anik-op-module-info strong,
.anik-portal.anik-master-shell .anik-op-badge{
  color:var(--wb248-text) !important;
}

.anik-portal.anik-master-shell .anik-op-desc,
.anik-portal.anik-master-shell .anik-op-module-info small{
  color:var(--wb248-muted) !important;
  font-size:12px !important;
}

.anik-portal.anik-master-shell .anik-theme-toggle{
  min-height:36px !important;
  padding:0 12px !important;
  border-radius:10px !important;
  border:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark .anik-topbar{
  background:rgba(16,24,40,.92) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark :is(.anik-master-business-register,.anik-master-owner-card,.anik-master-addons,.anik-operational-modules,.anik-catalog-list,.anik-readonly-profile,.anik-invoice-register,.anik-invoice-state-manager,.anik-settings-aside > *){
  background:var(--wb248-surface) !important;
  border-color:var(--wb248-line) !important;
}

.anik-portal.anik-master-shell.anik-mode-dark :is(.anik-master-staff-row,.anik-op-module-card,.anik-addon,.anik-switch-line,.anik-inline-toggle,.anik-public-theme-locked,.anik-upload-field,.anik-status-dashboard > *,.anik-module-status-list > *,.anik-config-list > *){
  background:var(--wb248-surface-2) !important;
  border-color:var(--wb248-line) !important;
}

/* Booking completion */
.anik-booking.anik-theme-workbook_saas{
  color:#f8fafc !important;
}

.anik-booking.anik-theme-workbook_saas .anik-booking-hero h1{
  font-size:56px !important;
  letter-spacing:0 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-booking-hero p{
  max-width:680px !important;
  color:rgba(248,250,252,.82) !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-public-meta,
.anik-booking.anik-theme-workbook_saas .anik-meta-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  align-items:center !important;
}

.anik-booking.anik-theme-workbook_saas :is(.anik-meta-icon,.anik-meta-icon-btn,.anik-contact-icon){
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:32px !important;
  padding:6px 9px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.08) !important;
  color:#f8fafc !important;
  text-decoration:none !important;
}

.anik-booking.anik-theme-workbook_saas .anik-booking-flow{
  display:grid !important;
  gap:12px !important;
}

.anik-booking.anik-theme-workbook_saas .anik-booking-progress{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:0 !important;
  overflow:hidden !important;
}

.anik-booking.anik-theme-workbook_saas .anik-step{
  min-height:50px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  padding:10px !important;
  color:rgba(248,250,252,.64) !important;
  border-right:1px solid rgba(255,255,255,.08) !important;
}

.anik-booking.anik-theme-workbook_saas .anik-step:last-child{
  border-right:0 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-step.active,
.anik-booking.anik-theme-workbook_saas .anik-step.is-active{
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-toolbar-pro,
.anik-booking.anik-theme-workbook_saas .anik-service-toolbar{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:10px !important;
  align-items:center !important;
  margin-bottom:12px !important;
}

.anik-booking.anik-theme-workbook_saas .anik-category-chips,
.anik-booking.anik-theme-workbook_saas .anik-category-filter,
.anik-booking.anik-theme-workbook_saas .anik-service-category-filter{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
}

.anik-booking.anik-theme-workbook_saas .anik-category-filter button,
.anik-booking.anik-theme-workbook_saas .anik-service-category-filter button,
.anik-booking.anik-theme-workbook_saas .anik-staff-chip{
  min-height:34px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:rgba(255,255,255,.07) !important;
  color:#f8fafc !important;
  padding:6px 10px !important;
  font-size:12px !important;
  font-weight:650 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-category-filter button.active,
.anik-booking.anik-theme-workbook_saas .anik-service-category-filter button.active,
.anik-booking.anik-theme-workbook_saas .anik-staff-chip.active{
  background:#fff !important;
  color:#0b1220 !important;
  border-color:#fff !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-card{
  display:grid !important;
  grid-template-columns:64px minmax(0,1fr) auto !important;
  gap:12px !important;
  align-items:center !important;
  padding:12px !important;
  color:#f8fafc !important;
  background:#101b2c !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-card:hover{
  border-color:rgba(255,255,255,.28) !important;
  background:#142135 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-card input:checked + .anik-service-content,
.anik-booking.anik-theme-workbook_saas .anik-service-card:has(input:checked){
  border-color:#8fb3ff !important;
  background:#162744 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-media,
.anik-booking.anik-theme-workbook_saas .anik-logo,
.anik-booking.anik-theme-workbook_saas .anik-staff-avatar,
.anik-booking.anik-theme-workbook_saas .anik-single-pro-avatar{
  border-radius:14px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:rgba(255,255,255,.08) !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-content{
  min-width:0 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-content strong{
  display:block !important;
  color:#fff !important;
  font-size:14px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

.anik-booking.anik-theme-workbook_saas .anik-service-content small,
.anik-booking.anik-theme-workbook_saas .anik-extra-service-info,
.anik-booking.anik-theme-workbook_saas .anik-policy,
.anik-booking.anik-theme-workbook_saas .anik-booking-policy-note{
  color:rgba(248,250,252,.68) !important;
  font-size:12px !important;
  line-height:1.45 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-staff-select,
.anik-booking.anik-theme-workbook_saas .anik-slots,
.anik-booking.anik-theme-workbook_saas .anik-extra-services,
.anik-booking.anik-theme-workbook_saas .anik-home-options,
.anik-booking.anik-theme-workbook_saas .anik-payment-choice-grid,
.anik-booking.anik-theme-workbook_saas .anik-booking-recap{
  display:grid !important;
  gap:10px !important;
}

.anik-booking.anik-theme-workbook_saas .anik-auto-staff-card,
.anik-booking.anik-theme-workbook_saas .anik-extra-service-item,
.anik-booking.anik-theme-workbook_saas .anik-payment-choice,
.anik-booking.anik-theme-workbook_saas .anik-home-opt,
.anik-booking.anik-theme-workbook_saas .anik-selected-service-pill,
.anik-booking.anik-theme-workbook_saas .anik-confirm-details{
  padding:12px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:14px !important;
  background:#101b2c !important;
  color:#f8fafc !important;
}

.anik-booking.anik-theme-workbook_saas .anik-slots{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.anik-booking.anik-theme-workbook_saas .anik-selected-time,
.anik-booking.anik-theme-workbook_saas .anik-slots button{
  min-height:40px !important;
  border-radius:10px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:rgba(255,255,255,.07) !important;
  color:#fff !important;
  font-weight:700 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-slots button:hover,
.anik-booking.anik-theme-workbook_saas .anik-slots button.active{
  background:#fff !important;
  color:#0b1220 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-form-line,
.anik-booking.anik-theme-workbook_saas .anik-phone-row,
.anik-booking.anik-theme-workbook_saas .anik-coupon-row{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}

.anik-booking.anik-theme-workbook_saas .anik-form-line.full,
.anik-booking.anik-theme-workbook_saas .anik-full-label{
  grid-column:1 / -1 !important;
}

.anik-booking.anik-theme-workbook_saas .anik-submit{
  min-height:48px !important;
  width:100% !important;
  font-size:14px !important;
}

.anik-booking.anik-theme-workbook_saas .anik-booking-trust{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}

.anik-booking.anik-theme-workbook_saas .anik-credit{
  color:rgba(248,250,252,.6) !important;
}

@media (max-width:1180px){
  .anik-portal .anik-settings-layout{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-settings-aside,
  .anik-portal .anik-sale-summary-panel,
  .anik-portal .anik-customer-index{
    position:static !important;
  }
  .anik-portal .anik-service-table-head,
  .anik-portal .anik-service-row{
    grid-template-columns:48px minmax(180px,1fr) 110px 86px 110px minmax(160px,1fr) !important;
  }
}

@media (max-width:900px){
  .anik-portal .anik-section-head{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-filter-form,
  .anik-portal .anik-date-filter,
  .anik-portal .anik-sale-filters,
  .anik-portal .anik-inv-filters,
  .anik-portal .anik-service-admin-filters,
  .anik-portal .anik-category-filters,
  .anik-portal .anik-master-booking-filters{
    grid-template-columns:1fr 1fr !important;
  }
  .anik-portal .anik-booking-row-main,
  .anik-portal .anik-bookings-head{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-bookings-head{
    display:none !important;
  }
  .anik-portal .anik-booking-row-main{
    align-items:start !important;
  }
  .anik-portal .anik-hour-row,
  .anik-portal .anik-attendance-admin-layout,
  .anik-portal .wbs-staff-row,
  .anik-portal .anik-support-layout,
  .anik-portal .anik-staff-layout{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-service-table-head{
    display:none !important;
  }
  .anik-portal .anik-service-row{
    grid-template-columns:44px minmax(0,1fr) !important;
    align-items:start !important;
  }
  .anik-portal .anik-service-row > *:nth-child(n+3){
    grid-column:2 !important;
  }
  .anik-portal .anik-staff-profile-details > div,
  .anik-portal .anik-closure-preview-grid,
  .anik-portal .anik-mini-cards-row,
  .anik-booking.anik-theme-workbook_saas .anik-booking-trust{
    grid-template-columns:1fr 1fr !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-service-grid{
    grid-template-columns:1fr !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-slots{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media (max-width:640px){
  .anik-portal .anik-section-head,
  .anik-portal .anik-row-actions,
  .anik-portal .anik-inline-actions,
  .anik-portal .anik-table-actions,
  .anik-portal .anik-top-actions{
    width:100% !important;
  }
  .anik-portal .anik-row-actions .anik-btn,
  .anik-portal .anik-inline-actions .anik-btn,
  .anik-portal .anik-top-actions .anik-btn{
    flex:1 1 auto !important;
    justify-content:center !important;
  }
  .anik-portal .anik-filter-form,
  .anik-portal .anik-date-filter,
  .anik-portal .anik-sale-filters,
  .anik-portal .anik-inv-filters,
  .anik-portal .anik-service-admin-filters,
  .anik-portal .anik-category-filters,
  .anik-portal .anik-master-booking-filters,
  .anik-portal .anik-settings-grid,
  .anik-portal .anik-grid-form,
  .anik-portal .anik-mini-form,
  .anik-portal .anik-form-row,
  .anik-portal .anik-review-fields-grid,
  .anik-portal .anik-service-form-pro,
  .anik-portal .anik-category-quick-create,
  .anik-portal .anik-switch-grid,
  .anik-portal .anik-check-grid,
  .anik-portal .anik-optional-grid,
  .anik-portal .anik-module-prefill-grid,
  .anik-portal .anik-cover-position-controls,
  .anik-portal .anik-attendance-pulse-grid,
  .anik-portal .anik-staff-jornada-grid,
  .anik-portal .wbs-mini-metrics,
  .anik-portal .wbs-mini-metrics-3,
  .anik-portal .anik-mini-cards-row,
  .anik-portal .anik-closure-preview-grid,
  .anik-portal .anik-staff-profile-details > div,
  .anik-portal .anik-marketing-grid,
  .anik-portal .anik-renewal-grid,
  .anik-portal .anik-payment-method-grid,
  .anik-portal .anik-integration-grid,
  .anik-portal .anik-master-plan-grid,
  .anik-portal .anik-master-module-grid{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-settings-group > summary{
    grid-template-columns:32px minmax(0,1fr) 20px !important;
  }
  .anik-portal .anik-settings-group > summary > em{
    grid-column:1 / -1 !important;
    margin-left:42px !important;
  }
  .anik-portal .anik-sale-summary-panel{
    padding:12px !important;
  }
  .anik-portal .anik-sale-row{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .anik-portal .anik-category-row,
  .anik-portal .anik-inv-history-entry,
  .anik-portal .anik-bar-row{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-table-wrap .anik-table{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    border-collapse:separate !important;
  }
  .anik-portal .anik-table-wrap .anik-table thead{
    display:none !important;
  }
  .anik-portal .anik-table-wrap .anik-table tbody{
    display:grid !important;
    width:100% !important;
    min-width:0 !important;
    gap:10px !important;
  }
  .anik-portal .anik-table-wrap .anik-table tr{
    display:grid !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    gap:8px !important;
    padding:12px !important;
    border:1px solid var(--wb248-line) !important;
    border-radius:14px !important;
    background:var(--wb248-surface) !important;
    box-shadow:var(--wb248-shadow-1) !important;
  }
  .anik-portal .anik-table-wrap .anik-table td{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:var(--wb248-text) !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
    white-space:normal !important;
  }
  .anik-portal .anik-table-wrap .anik-table td[data-label]{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:3px !important;
    align-items:start !important;
  }
  .anik-portal .anik-table-wrap .anik-table td[data-label]::before{
    content:attr(data-label) !important;
    color:var(--wb248-muted) !important;
    font-size:10px !important;
    font-weight:720 !important;
    line-height:1.35 !important;
    text-transform:uppercase !important;
  }
  .anik-portal .anik-table-wrap .anik-table td[data-label] > *{
    min-width:0 !important;
    max-width:100% !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
    white-space:normal !important;
  }
  .anik-portal .anik-table-wrap .anik-table td[data-label="Acciones"]{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-table-wrap .anik-table td[data-label="Acciones"]::before{
    margin-bottom:2px !important;
  }
  .anik-portal .anik-table-wrap .anik-table td[data-label="Acciones"] :is(form,.anik-btn,button,a){
    width:100% !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-booking-hero h1{
    font-size:34px !important;
    line-height:1.02 !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-booking-progress,
  .anik-booking.anik-theme-workbook_saas .anik-service-toolbar-pro,
  .anik-booking.anik-theme-workbook_saas .anik-service-toolbar,
  .anik-booking.anik-theme-workbook_saas .anik-form-line,
  .anik-booking.anik-theme-workbook_saas .anik-phone-row,
  .anik-booking.anik-theme-workbook_saas .anik-coupon-row,
  .anik-booking.anik-theme-workbook_saas .anik-booking-trust{
    grid-template-columns:1fr !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-service-card{
    grid-template-columns:54px minmax(0,1fr) !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-service-card > *:last-child{
    grid-column:2 !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-slots{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* Candidate 5: structural presentation layer. The generic rail/header from
   Candidate 4 was removed so operational modules keep their working width. */
.anik-portal .wb248-module-frame{
  display:grid !important;
  gap:14px !important;
}

.anik-portal .wb248-workbench-head{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:16px !important;
  padding:16px 18px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .wb248-workbench-head h3{
  margin:0 !important;
  color:var(--wb248-text) !important;
  font-size:22px !important;
  line-height:1.18 !important;
  font-weight:700 !important;
}

.anik-portal .wb248-module-content,
.anik-portal .wb248-master-section-content{
  min-width:0 !important;
  display:grid !important;
  gap:14px !important;
}

.anik-portal .wb248-workbench{
  display:grid !important;
  gap:12px !important;
}

.anik-portal .wb248-bookings-grid{
  grid-template-columns:minmax(280px,.36fr) minmax(0,1fr) !important;
  gap:14px !important;
  align-items:start !important;
}

.anik-portal .wb248-workbench-metrics{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(82px,1fr)) !important;
  gap:8px !important;
}

.anik-portal .wb248-workbench-metrics span{
  display:grid !important;
  gap:2px !important;
  min-height:50px !important;
  padding:8px 10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:10px !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-muted) !important;
  font-size:11px !important;
  font-weight:700 !important;
}

.anik-portal .wb248-workbench-metrics b{
  color:var(--wb248-text) !important;
  font-size:18px !important;
  line-height:1 !important;
}

.anik-portal .wb248-chat-console{
  display:grid !important;
  grid-template-columns:240px minmax(0,1fr) !important;
  min-height:620px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  overflow:hidden !important;
  background:var(--wb248-surface) !important;
  box-shadow:var(--wb248-shadow-1) !important;
}

.anik-portal .wb248-chat-sidebar{
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  padding:18px !important;
  border-right:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .wb248-chat-sidebar h3,
.anik-portal .wb248-chat-sidebar p{
  margin:0 !important;
}

.anik-portal .wb248-chat-sidebar h3{
  color:var(--wb248-text) !important;
  font-size:16px !important;
}

.anik-portal .wb248-chat-sidebar p{
  color:var(--wb248-muted) !important;
  font-size:12px !important;
}

.anik-portal .wb248-chat-participants{
  display:grid !important;
  gap:7px !important;
}

.anik-portal .wb248-chat-participants span{
  display:block !important;
  padding:8px 10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:10px !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-text-2) !important;
  font-size:12px !important;
  font-weight:700 !important;
}

.anik-portal .wb248-chat-main{
  min-width:0 !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) auto !important;
  background:var(--wb248-surface) !important;
}

.anik-portal .wb248-chat-topline{
  display:flex !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:14px 16px !important;
  border-bottom:1px solid var(--wb248-line) !important;
  color:var(--wb248-muted) !important;
  font-size:12px !important;
}

.anik-portal .wb248-chat-topline strong{
  color:var(--wb248-text) !important;
}

.anik-portal .wb248-chat-thread{
  max-height:none !important;
  min-height:360px !important;
  padding:18px !important;
  background:var(--wb248-surface) !important;
}

.anik-portal .wb248-chat-composer{
  margin:0 !important;
  padding:14px !important;
  border-top:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .wb248-settings-nav{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:8px !important;
  margin:0 0 14px !important;
}

.anik-portal .wb248-settings-nav a{
  display:flex !important;
  min-height:36px !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:10px !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
  font-size:12px !important;
  font-weight:700 !important;
  text-decoration:none !important;
}

.anik-portal .wb248-settings-block{
  scroll-margin-top:92px !important;
}

.anik-portal .wb248-master-nav .wb248-master-nav-group{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.anik-portal .wb248-master-nav .anik-nav-group-summary{
  min-height:30px !important;
  padding:0 8px !important;
  color:var(--wb248-muted) !important;
  font-size:11px !important;
  text-transform:uppercase !important;
}

.anik-portal .wb248-master-frame{
  display:grid !important;
  gap:14px !important;
}

.anik-booking.anik-theme-workbook_saas .wb248-booking-experience{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:16px !important;
  align-items:start !important;
  margin-top:16px !important;
}

.anik-booking.anik-theme-workbook_saas .wb248-booking-main{
  min-width:0 !important;
}

@media (max-width:1380px) and (min-width:821px){
  .anik-portal .wb248-module-frame,
  .anik-portal .wb248-master-frame{
    gap:12px !important;
  }
  .anik-portal .wb248-bookings-grid{
    grid-template-columns:minmax(260px,.34fr) minmax(0,1fr) !important;
  }
  .anik-portal .wb248-chat-console{
    grid-template-columns:220px minmax(0,1fr) !important;
  }
}

@media (max-width:1100px){
  .anik-booking.anik-theme-workbook_saas .wb248-booking-experience{
    grid-template-columns:1fr !important;
  }
}

@media (max-width:820px){
  .anik-portal .wb248-workbench-head{
    align-items:flex-start !important;
    flex-direction:column !important;
  }
  .anik-portal .wb248-bookings-grid,
  .anik-portal .wb248-chat-console{
    grid-template-columns:1fr !important;
  }
  .anik-portal .wb248-chat-sidebar{
    border-right:0 !important;
    border-bottom:1px solid var(--wb248-line) !important;
  }
  .anik-portal .wb248-settings-nav,
  .anik-portal .wb248-workbench-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:520px){
  .anik-portal .wb248-workbench-head{
    padding:14px !important;
  }
  .anik-portal .wb248-workbench-head h3{
    font-size:19px !important;
  }
  .anik-portal .wb248-settings-nav,
  .anik-portal .wb248-workbench-metrics{
    grid-template-columns:1fr !important;
  }
}

/* Candidate 6/7 mobile-first corrections: preserve the approved look while keeping phones usable. */
@media (max-width:900px){
  .anik-portal,
  .anik-booking{
    max-width:100% !important;
  }
  .anik-portal,
  .anik-booking,
  .anik-portal *,
  .anik-booking *{
    min-width:0 !important;
  }
  .anik-portal :is(.anik-btn,button,input,select,textarea,summary),
  .anik-booking :is(.anik-btn,button,input,select,textarea,summary){
    max-width:100% !important;
  }
  .anik-portal :is(.anik-btn,button[type="submit"],input[type="submit"]),
  .anik-booking :is(.anik-btn,button[type="submit"],input[type="submit"],.anik-slot-btn,.anik-staff-chip){
    min-height:44px !important;
  }
  .anik-portal :is(.anik-customer-table-wrap,.anik-table-scroll,.anik-scroll-table,.anik-inv-table-wrap,.anik-sales-history,.anik-calendar-wrap),
  .anik-booking :is(.anik-service-grid,.anik-slots){
    max-width:100% !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
  }
  .anik-portal .anik-chat-thread,
  .anik-portal .wb248-chat-thread{
    max-height:min(58vh,520px) !important;
    padding:10px !important;
  }
  .anik-portal .wb248-chat-sidebar{
    padding:14px !important;
  }
  .anik-portal .wb248-chat-participants{
    display:flex !important;
    gap:7px !important;
    overflow-x:auto !important;
    padding-bottom:2px !important;
  }
  .anik-portal .wb248-chat-composer{
    position:sticky !important;
    bottom:8px !important;
    z-index:5 !important;
    background:var(--wb248-surface) !important;
    box-shadow:0 -12px 24px rgba(15,23,42,.08) !important;
  }
  .anik-portal .anik-sale-panel,
  .anik-portal .anik-active-sale,
  .anik-portal .anik-sale-cart,
  .anik-portal .anik-sale-summary{
    width:100% !important;
  }
  .anik-portal :is(.anik-sale-total,.anik-sale-checkout,.anik-sale-actions){
    position:sticky !important;
    bottom:8px !important;
    z-index:6 !important;
    border-radius:14px !important;
    background:var(--wb248-surface) !important;
    box-shadow:0 -12px 28px rgba(15,23,42,.10) !important;
  }
  .anik-portal .anik-settings-nav{
    display:flex !important;
    grid-template-columns:none !important;
    overflow-x:auto !important;
    padding-bottom:2px !important;
    scroll-snap-type:x proximity !important;
  }
  .anik-portal .anik-settings-nav a{
    flex:0 0 auto !important;
    min-height:40px !important;
    scroll-snap-align:start !important;
  }
  .anik-portal :is(.anik-table-wrap,.anik-customer-table-wrap,.anik-inv-table-wrap,.anik-sales-history,.anik-calendar-wrap){
    max-width:100% !important;
    overflow-x:auto !important;
    overscroll-behavior-inline:contain !important;
    -webkit-overflow-scrolling:touch !important;
  }
  .anik-portal :is(.anik-modern-table,.anik-customer-table,.anik-inv-table,.anik-sales-table,.anik-master-table){
    width:100% !important;
    min-width:0 !important;
  }
  .anik-portal :is(.anik-modern-table,.anik-customer-table,.anik-inv-table,.anik-sales-table,.anik-master-table) :is(th,td){
    max-width:min(34vw,260px) !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }
  .anik-portal :is(.anik-empty,.anik-empty-state){
    min-height:132px !important;
  }
}

@media (max-width:520px){
  .anik-portal.anik-app-shell{
    width:100% !important;
    min-height:100vh !important;
    margin:0 !important;
    padding:6px !important;
    border-radius:0 !important;
    border-left:0 !important;
    border-right:0 !important;
  }
  .anik-portal .anik-topbar{
    position:sticky !important;
    top:6px !important;
  }
  .anik-portal .anik-topbar h1{
    max-width:58vw !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  .anik-portal .anik-card-soft,
  .anik-portal :is(.anik-command-center,.wb248-module-frame,.wb248-master-frame,.wb248-chat-console,.wb248-workbench-head),
  .anik-booking :is(.anik-step-details,.anik-service-card,.anik-booking-hero){
    border-radius:14px !important;
  }
  .anik-portal :is(.anik-card-soft,.anik-command-center,.wb248-module-frame,.wb248-master-frame,.wb248-workbench-head),
  .anik-booking :is(.anik-step-details,.anik-service-card){
    padding:14px !important;
  }
  .anik-portal :is(.anik-empty,.anik-empty-inline,.anik-empty-state,.wbs-empty,.anik-filter-empty){
    min-height:0 !important;
    padding:16px !important;
    border-radius:14px !important;
  }
  .anik-portal .anik-empty-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
  }
  .anik-portal .anik-empty-actions .anik-btn{
    width:100% !important;
  }
  .anik-portal .anik-alert.warn,
  .anik-portal :is(.anik-notice,.anik-security-alert,.anik-master-support-alert,.anik-invoice-alert,.anik-module-excluded-warn,.anik-warn,.anik-excl-note){
    align-items:flex-start !important;
    flex-direction:column !important;
    padding:12px !important;
  }
  .anik-portal :is(.anik-metrics-grid,.anik-stats-grid,.anik-insight-grid,.wbs-team-roster,.anik-inv-summary,.anik-customer-profile-stats){
    grid-template-columns:1fr !important;
  }
  .anik-portal .wbs-card-attention{
    order:1 !important;
  }
  .anik-portal .wbs-card-agenda{
    order:2 !important;
  }
  .anik-portal :is(.wbs-kpi-row,.wbs-indicator-row,.wbs-dash-tools){
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-booking-row,
  .anik-portal .anik-customer-index-list > a,
  .anik-portal .anik-service-row,
  .anik-portal .anik-staff-profile-card,
  .anik-portal .anik-inv-product-row,
  .anik-portal .anik-coupon-tbl tr,
  .anik-portal .anik-notification-item{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .anik-portal :is(.anik-booking-row .anik-btn,.anik-service-row .anik-btn,.anik-staff-profile-card .anik-btn,.anik-inv-product-row .anik-btn){
    width:100% !important;
  }
  .anik-portal :is(.wbs-staff-row,.wbs-staff-dash,.wbs-staff-next,.wbs-staff-agenda,.wbs-staff-income,.wbs-staff-summary,.wbs-jornada-card){
    gap:10px !important;
  }
  .anik-portal :is(.wbs-jornada-actions,.wbs-staff-next-cta){
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
  }
  .anik-portal :is(.wbs-jornada-actions .anik-btn,.wbs-staff-next-cta .anik-btn){
    width:100% !important;
  }
  .anik-portal.anik-master-shell :is(.anik-master-staff-row,.anik-op-module-card,.anik-addon,.anik-status-dashboard > *,.anik-module-status-list article){
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .anik-portal.anik-master-shell :is(.anik-status-dashboard,.anik-module-status-list,.anik-config-list) :is(span,small,strong,b){
    min-width:0 !important;
    overflow-wrap:anywhere !important;
  }
  .anik-portal .wb248-chat-console{
    gap:0 !important;
  }
  .anik-portal .wb248-chat-topline{
    padding:12px 14px !important;
  }
  .anik-portal .anik-chat-thread article{
    max-width:96% !important;
  }
  .anik-portal .wb248-chat-composer{
    padding:12px !important;
  }
  .anik-portal .wb248-chat-composer textarea{
    min-height:92px !important;
  }
  .anik-booking.anik-theme-workbook_saas{
    padding:0 !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-public-shell{
    width:100% !important;
    padding:10px !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-booking-hero{
    min-height:auto !important;
    padding:18px 14px !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-booking-hero h1{
    font-size:clamp(26px,8vw,34px) !important;
    line-height:1.05 !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-booking-hero p{
    font-size:14px !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-booking-progress{
    grid-template-columns:1fr !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-service-grid{
    grid-template-columns:1fr !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-service-toolbar-pro,
  .anik-booking.anik-theme-workbook_saas .anik-form-line,
  .anik-booking.anik-theme-workbook_saas .anik-form-line.three,
  .anik-booking.anik-theme-workbook_saas .anik-phone-row,
  .anik-booking.anik-theme-workbook_saas .anik-coupon-input-group{
    grid-template-columns:1fr !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-category-chips,
  .anik-booking.anik-theme-workbook_saas .anik-staff-photo-filter,
  .anik-booking.anik-theme-workbook_saas .anik-slots{
    display:flex !important;
    gap:8px !important;
    overflow-x:auto !important;
    padding-bottom:4px !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-slot-btn,
  .anik-booking.anik-theme-workbook_saas .anik-staff-chip,
  .anik-booking.anik-theme-workbook_saas .anik-category-chips button{
    flex:0 0 auto !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-submit{
    position:sticky !important;
    bottom:10px !important;
    z-index:8 !important;
    width:100% !important;
    box-shadow:0 -12px 24px rgba(15,23,42,.14) !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-booking-trust{
    grid-template-columns:1fr !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-public-popup.is-visible{
    inset:auto 10px 10px 10px !important;
    display:block !important;
    padding:0 !important;
    pointer-events:none !important;
    background:transparent !important;
    backdrop-filter:none !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-popup-card{
    width:100% !important;
    max-height:42vh !important;
    grid-template-columns:1fr !important;
    border-radius:18px !important;
    pointer-events:auto !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-popup-image{
    display:none !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-popup-content{
    padding:18px !important;
    padding-right:64px !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-popup-content h2{
    font-size:22px !important;
    line-height:1.1 !important;
    letter-spacing:0 !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-popup-content p{
    font-size:13px !important;
    line-height:1.45 !important;
    margin:0 !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-popup-close{
    top:12px !important;
    right:12px !important;
    width:44px !important;
    height:44px !important;
    min-height:44px !important;
  }
}

/* Workbook 2.5.48 Candidate 9: refinamiento quirurgico sobre direccion visual aprobada. */
.anik-portal :is(.anik-card-soft h2,.anik-command-center h2,.wb248-workbench h3,.anik-support-layout h2){
  font-size:clamp(18px,1.35vw,24px) !important;
  line-height:1.15 !important;
  letter-spacing:0 !important;
  font-weight:680 !important;
}
.anik-portal :is(.anik-section-head.compact h2,.anik-card-soft .anik-section-head h2){
  font-size:20px !important;
}
.anik-portal :is(.wb248-action-panel,.wb248-coupon-create-panel,.wb248-expense-panel,.wb248-attendance-manual-panel){
  overflow:hidden !important;
}
.anik-portal .wb248-action-panel > summary{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  min-height:48px !important;
  padding:14px 16px !important;
  cursor:pointer !important;
  list-style:none !important;
}
.anik-portal .wb248-action-panel > summary::-webkit-details-marker{display:none !important;}
.anik-portal .wb248-action-panel > summary span{
  font-weight:760 !important;
  color:var(--wb248-text,#0f172a) !important;
}
.anik-portal .wb248-action-panel > summary small{
  color:var(--wb248-muted,#64748b) !important;
  font-weight:540 !important;
}
.anik-portal .wb248-action-panel[open] > summary{
  border-bottom:1px solid var(--wb248-border,#e2e8f0) !important;
}
.anik-portal .wb248-action-panel > form,
.anik-portal .wb248-action-panel .anik-integration-content{
  padding:16px !important;
}
.anik-portal .wb248-load-more,
.anik-portal .wb248-coupon-actions{
  margin-top:14px !important;
}
.anik-portal .wb248-coupon-actions{
  display:flex !important;
  justify-content:flex-end !important;
  margin-bottom:12px !important;
}
.anik-portal .wb248-hours-filter label{
  min-width:min(100%,360px) !important;
}
.anik-portal .wb248-hours-filter select{
  min-width:min(100%,260px) !important;
}
.anik-portal .anik-hour-row.is-closed :is(label:not(.anik-hour-toggle),input[type=time]){
  opacity:.48 !important;
}
.anik-portal .wb248-blocks-layout{
  grid-template-columns:minmax(0,1fr) minmax(280px,360px) !important;
  align-items:start !important;
}
.anik-portal .wb248-marketing-audience,
.anik-portal .wb248-marketing-popup-card{
  min-width:0 !important;
}
.anik-portal .wb248-subscriber-list article{
  display:grid !important;
  gap:3px !important;
  padding:10px 0 !important;
  border-bottom:1px solid var(--wb248-border,#e2e8f0) !important;
}
.anik-portal .wb248-upload-control{
  gap:8px !important;
}
.anik-portal .wb248-upload-preview{
  display:block !important;
  padding:10px 12px !important;
  border:1px dashed var(--wb248-border,#cbd5e1) !important;
  border-radius:10px !important;
  color:var(--wb248-muted,#64748b) !important;
  background:var(--wb248-bg-soft,#f8fafc) !important;
  font-size:12px !important;
}
.anik-portal .wb248-multiselect{
  display:grid !important;
  gap:8px !important;
}
.anik-portal .wb248-multiselect-search{
  width:100% !important;
  min-height:40px !important;
}
.anik-portal .wb248-option-list{
  display:grid !important;
  gap:6px !important;
  max-height:210px !important;
  overflow:auto !important;
  padding:6px !important;
  border:1px solid var(--wb248-border,#e2e8f0) !important;
  border-radius:12px !important;
  background:var(--wb248-surface,#fff) !important;
}
.anik-portal .wb248-option-list label{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:8px !important;
  min-height:34px !important;
  padding:6px 8px !important;
  border-radius:8px !important;
  color:var(--wb248-text,#0f172a) !important;
}
.anik-portal .wb248-option-list label:hover{
  background:var(--wb248-bg-soft,#f8fafc) !important;
}
.anik-portal .wb248-option-list em{
  font-size:11px !important;
  font-style:normal !important;
  color:var(--wb248-muted,#64748b) !important;
}
.anik-portal .wb248-pagination{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  margin-top:14px !important;
}
.anik-portal .wb248-pagination :is(a,span){
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:34px !important;
  min-height:34px !important;
  padding:0 10px !important;
  border:1px solid var(--wb248-border,#e2e8f0) !important;
  border-radius:9px !important;
  text-decoration:none !important;
  font-weight:650 !important;
  color:var(--wb248-text,#0f172a) !important;
  background:var(--wb248-surface,#fff) !important;
}
.anik-portal .wb248-pagination [aria-current=page]{
  color:#fff !important;
  background:var(--wb248-brand,#2563eb) !important;
  border-color:var(--wb248-brand,#2563eb) !important;
}
.anik-portal .wb248-chat-message{
  --wb248-chat-accent:#2563eb;
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  gap:10px !important;
  align-items:end !important;
  max-width:82% !important;
}
.anik-portal .wb248-chat-message.is-mine{
  margin-left:auto !important;
  grid-template-columns:minmax(0,1fr) 34px !important;
}
.anik-portal .wb248-chat-message.is-mine .wb248-chat-avatar{
  order:2 !important;
}
.anik-portal .wb248-chat-avatar{
  display:grid !important;
  place-items:center !important;
  width:34px !important;
  height:34px !important;
  border-radius:50% !important;
  background:color-mix(in srgb,var(--wb248-chat-accent) 18%,#fff) !important;
  color:var(--wb248-chat-accent) !important;
  font-size:12px !important;
  font-weight:800 !important;
  border:1px solid color-mix(in srgb,var(--wb248-chat-accent) 26%,transparent) !important;
}
.anik-portal .wb248-chat-bubble{
  min-width:0 !important;
  padding:12px 14px !important;
  border-radius:16px !important;
  border:1px solid var(--wb248-border,#e2e8f0) !important;
  border-left:3px solid var(--wb248-chat-accent) !important;
  background:var(--wb248-surface,#fff) !important;
}
.anik-portal .wb248-chat-message.is-mine .wb248-chat-bubble{
  background:color-mix(in srgb,var(--wb248-brand,#2563eb) 8%,#fff) !important;
}
.anik-portal .wb248-chat-bubble header{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  margin-bottom:5px !important;
}
.anik-portal .wb248-chat-bubble header em{
  padding:2px 7px !important;
  border-radius:999px !important;
  background:color-mix(in srgb,var(--wb248-chat-accent) 12%,#fff) !important;
  color:var(--wb248-chat-accent) !important;
  font-size:10px !important;
  font-style:normal !important;
  font-weight:760 !important;
}
.anik-portal .wb248-chat-bubble p{
  margin:0 !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
/* Candidate 29: chat en tiempo real -- banner de mensajes nuevos (solo
   aparece si el usuario no está al final del hilo, para no interrumpir la
   lectura de mensajes antiguos) y aviso de error de envío (el texto escrito
   nunca se borra al fallar). */
.anik-portal .wb248-chat-new-banner{
  position:sticky !important; bottom:8px !important; left:50% !important; transform:translateX(-50%) !important;
  display:block !important; margin:8px auto 0 !important; background:var(--wb248-brand,#2563eb) !important; color:#fff !important;
  border:0 !important; border-radius:999px !important; padding:6px 16px !important; font-size:12px !important; font-weight:700 !important;
  cursor:pointer !important; box-shadow:var(--wb248-shadow-1,0 4px 14px rgba(0,0,0,.16)) !important; z-index:2 !important;
}
/* Candidate 30 (chat sección 3): display:block !important de arriba gana
   sobre el [hidden] nativo del navegador (mayor especificidad + !important) --
   el aviso de "mensajes nuevos" quedaba visible para siempre en cuanto se
   creaba una vez, aunque el JS le pusiera .hidden=true para ocultarlo. Mismo
   patrón de causa raíz ya visto en el editor de categorías (Candidate 29). */
.anik-portal .wb248-chat-new-banner[hidden]{
  display:none !important;
}
.anik-portal .wb248-chat-error{
  margin:0 0 10px !important; padding:8px 12px !important; border-radius:10px !important;
  border:1px solid #fecaca !important; background:#fef2f2 !important; color:#b91c1c !important; font-size:12.5px !important;
}
/* Candidate 29 (8): lápiz de edición de categoría -- icon-button cuadrado sin
   texto visible, mismo lenguaje visual (radio, borde) que el resto de
   botones compactos del portal, con foco visible propio en vez de heredar
   el contorno genérico del navegador. */
.anik-portal .wb248-icon-btn{
  display:grid !important; place-items:center !important;
  width:32px !important; height:32px !important; min-width:32px !important;
  border-radius:8px !important; border:1px solid var(--wb248-border,#e2e8f0) !important;
  background:var(--wb248-surface,#fff) !important; color:var(--wb248-text-muted,#64748b) !important;
  cursor:pointer !important; list-style:none !important; -webkit-appearance:none !important;
}
.anik-portal .wb248-icon-btn::-webkit-details-marker{ display:none !important; }
.anik-portal .wb248-icon-btn svg{ width:16px !important; height:16px !important; }
.anik-portal .wb248-icon-btn:hover{ background:var(--wb248-surface-2,#f8fafc) !important; color:var(--wb248-brand,#2563eb) !important; border-color:var(--wb248-brand,#2563eb) !important; }
.anik-portal .wb248-icon-btn:focus-visible{ outline:2px solid var(--wb248-brand,#2563eb) !important; outline-offset:2px !important; }
.anik-portal .wb248-category-edit{ justify-self:end !important; }
.anik-portal .wb248-category-edit-body{
  grid-column:1 / -1 !important;
  display:flex !important; flex-wrap:wrap !important; align-items:flex-end !important; gap:10px !important;
  margin-top:10px !important; padding-top:10px !important; border-top:1px dashed var(--wb248-border,#e2e8f0) !important;
}
.anik-portal .wb248-category-edit-body[hidden]{ display:none !important; }
.anik-portal .wb248-category-edit-body .wb248-category-rename-form{
  display:flex !important; align-items:flex-end !important; gap:8px !important; flex:1 1 240px !important; margin:0 !important;
}
.anik-portal .wb248-category-edit-body .wb248-category-rename-form label{ flex:1 1 auto !important; margin:0 !important; }
.anik-portal .wb248-category-edit-actions{ display:flex !important; gap:6px !important; }
.anik-portal .wb248-category-delete-form{ margin:0 !important; margin-left:auto !important; }
@media(max-width:520px){
  .anik-portal .wb248-category-edit-body{ flex-direction:column !important; align-items:stretch !important; }
  .anik-portal .wb248-category-edit-body .wb248-category-rename-form{ flex-direction:column !important; align-items:stretch !important; }
  .anik-portal .wb248-category-delete-form{ margin-left:0 !important; }
  .anik-portal .wb248-category-delete-form button{ width:100% !important; }
}
/* Candidate 29 (9): "Mi plan" -- filas compactas en vez de tarjetas grandes.
   El marcado PHP (article/div, mismas clases anik-renewal-* que actualiza el
   <script> del renovador en vivo) no cambia -- solo la presentación, para no
   tocar el binding JS existente. */
.anik-portal .anik-plan-summary-grid,
.anik-portal .anik-renewal-summary{
  display:flex !important; flex-direction:column !important; gap:0 !important;
  border:1px solid var(--wb248-border,#e2e8f0) !important; border-radius:14px !important;
  overflow:hidden !important; background:var(--wb248-surface,#fff) !important;
  box-shadow:none !important; margin:14px 0 !important;
}
.anik-portal .anik-plan-summary-grid > article,
.anik-portal .anik-renewal-summary > div{
  display:flex !important; flex-direction:row !important; align-items:baseline !important;
  justify-content:space-between !important; gap:12px !important;
  padding:11px 14px !important; min-height:0 !important;
  border:0 !important; border-bottom:1px solid var(--wb248-border,#e2e8f0) !important;
  border-radius:0 !important; background:transparent !important; box-shadow:none !important;
}
.anik-portal .anik-plan-summary-grid > article::before,
.anik-portal .anik-plan-summary-grid > article::after{ content:none !important; }
.anik-portal .anik-plan-summary-grid > article:last-child,
.anik-portal .anik-renewal-summary > div:last-child{ border-bottom:0 !important; }
.anik-portal .anik-plan-summary-grid > article span,
.anik-portal .anik-renewal-summary span{
  margin:0 !important; font-size:12px !important; font-weight:700 !important;
  color:var(--wb248-text-muted,#64748b) !important; letter-spacing:.02em !important;
  text-transform:none !important; flex:0 0 auto !important;
}
.anik-portal .anik-plan-summary-grid > article strong,
.anik-portal .anik-renewal-summary strong{
  margin:0 !important; font-size:14.5px !important; font-weight:800 !important;
  color:var(--wb248-text,#0f172a) !important; text-align:right !important; letter-spacing:normal !important;
}
.anik-portal .anik-plan-summary-grid > article small,
.anik-portal .anik-renewal-summary small{
  display:block !important; margin-top:2px !important; font-size:11.5px !important;
  color:var(--wb248-text-muted,#64748b) !important; text-align:right !important; font-weight:600 !important;
}
/* El total destaca (más grande, color de marca) sin volver gigantes los demás valores. */
.anik-portal .anik-plan-summary-grid > article:last-child strong,
.anik-portal .anik-renewal-summary > div:last-child strong,
.anik-portal .anik-renewal-gross{
  font-size:19px !important; color:var(--wb248-brand,#2563eb) !important;
}
.anik-portal .anik-renewal-discount{ color:#047857 !important; }
@media(max-width:560px){
  .anik-portal .anik-plan-summary-grid > article,
  .anik-portal .anik-renewal-summary > div{
    flex-direction:column !important; align-items:flex-start !important; gap:2px !important;
  }
  .anik-portal .anik-plan-summary-grid > article strong,
  .anik-portal .anik-renewal-summary strong,
  .anik-portal .anik-plan-summary-grid > article small,
  .anik-portal .anik-renewal-summary small{ text-align:left !important; }
}
.anik-portal .anik-payments-layout{
  grid-template-columns:1fr !important;
}
.anik-portal .anik-payments-business-view > section,
.anik-portal .anik-payments-business-view > aside{
  width:100% !important;
}
.anik-portal .anik-sale-active{
  padding:18px !important;
}
.anik-portal .anik-sale-active > .anik-section-head{
  margin-bottom:10px !important;
}
.anik-portal .anik-inv-toolbar{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
.anik-portal .anik-inv-toolbar .anik-btn:first-child{
  order:-1 !important;
}
.anik-portal .anik-inv-toolbar-actions .anik-inv-new-product{
  order:-1 !important;
}
.anik-portal .anik-inv-toolbar-actions .anik-inv-new-product summary{
  white-space:nowrap !important;
}
.anik-portal .anik-support-layout h2,
.anik-portal .anik-support-reply-section h2{
  font-size:19px !important;
  font-weight:680 !important;
}
.anik-portal .anik-settings-group > summary > span{
  width:auto !important;
  height:auto !important;
  min-width:34px !important;
  border-radius:8px !important;
  padding:4px 8px !important;
}
.anik-portal .anik-module-status-list{
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr)) !important;
}
.anik-portal .anik-module-status-list article{
  border-radius:10px !important;
  min-height:0 !important;
  padding:10px 12px !important;
}
.anik-portal .anik-stats-grid,
.anik-portal .anik-insight-grid{
  gap:12px !important;
}
.anik-portal .anik-stats-grid > *,
.anik-portal .anik-insight-grid > *{
  border-radius:12px !important;
  box-shadow:none !important;
}
.anik-booking.anik-theme-workbook_saas .anik-booking-trust{
  display:none !important;
}
.anik-booking.anik-theme-workbook_saas :is(input[type=tel],input[name=customer_phone],.anik-phone-row input){
  width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}
body.anik-workbook-standalone,
body.anik-workbook-booking-page,
body:has(.anik-app-shell){
  overflow-x:auto !important;
}

@media(max-width:900px){
  .anik-portal .wb248-blocks-layout,
  .anik-portal .anik-marketing-grid{
    grid-template-columns:1fr !important;
  }
  /* Candidate 29: antes esto igualaba a 100% el ancho de "mío" y "de otros",
     lo que en la siguiente regla (≤520px) terminaba forzando la MISMA
     plantilla de columnas (avatar siempre a la izquierda) para ambos casos
     -- perdía la distinción izquierda/derecha exigida (propios a la
     derecha, recibidos a la izquierda), incluso en pantallas angostas. */
  .anik-portal .wb248-chat-message,
  .anik-portal .wb248-chat-message.is-mine{
    max-width:88% !important;
  }
}

@media(max-width:520px){
  .anik-portal .wb248-chat-message{
    grid-template-columns:30px minmax(0,1fr) !important;
    gap:8px !important;
  }
  .anik-portal .wb248-chat-message.is-mine{
    grid-template-columns:minmax(0,1fr) 30px !important;
    gap:8px !important;
  }
  .anik-portal .wb248-chat-avatar{
    width:30px !important;
    height:30px !important;
  }
  .anik-portal .wb248-chat-bubble{
    padding:10px 12px !important;
  }
  .anik-booking.anik-theme-workbook_saas :is(.anik-step-title,.anik-step-head,.anik-step-summary){
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:6px !important;
    align-items:start !important;
  }
  .anik-booking.anik-theme-workbook_saas .anik-phone-row{
    grid-template-columns:1fr !important;
    width:100% !important;
  }
}

/* Candidate 10 surgical close: computed mobile booking, POS grid, and P1 structural modules. */
html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas .anik-booking-trust,
html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas .anik-booking-trust,
html body .anik-booking.anik-theme-workbook_saas .anik-booking-trust{
  display:none !important;
}

@media(max-width:640px){
  html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas .anik-step-details,
  html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas .anik-step-details,
  html body .anik-booking.anik-theme-workbook_saas .anik-step-details{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    margin:12px 0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }
  html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas .anik-step-details > summary.anik-step-title,
  html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas .anik-step-details[open] > summary.anik-step-title,
  html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas .anik-step-details > summary.anik-step-title,
  html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas .anik-step-details[open] > summary.anik-step-title,
  html body .anik-booking.anik-theme-workbook_saas .anik-step-details > summary.anik-step-title,
  html body .anik-booking.anik-theme-workbook_saas .anik-step-details[open] > summary.anik-step-title,
  html body .anik-booking.anik-theme-workbook_saas .anik-booking-flow .anik-step-title{
    display:grid !important;
    grid-template-columns:34px minmax(0,1fr) !important;
    width:100% !important;
    min-width:0 !important;
    min-height:56px !important;
    align-items:center !important;
    gap:10px !important;
    margin:0 !important;
    padding:11px 12px !important;
    box-sizing:border-box !important;
  }
  html body .anik-booking.anik-theme-workbook_saas .anik-step-details > summary.anik-step-title span{
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
  }
  html body .anik-booking.anik-theme-workbook_saas .anik-step-details > summary.anik-step-title h2,
  html body .anik-booking.anik-theme-workbook_saas .anik-booking-flow .anik-step-title h2{
    width:100% !important;
    min-width:0 !important;
    font-size:17px !important;
    line-height:1.2 !important;
    white-space:normal !important;
    overflow:visible !important;
  }
  /* Candidate 22 corrected5/6: antes esto era `> :not(summary)` y alcanzaba a
     todo hijo directo del <details>, incluido el <script> del cupón, que con
     display:block !important se renderizaba como texto en móvil. Se limita a
     contenido visual: quedan fuera script/style/template/link/meta/noscript,
     los elementos con [hidden] y los campos type="hidden".

     Las exclusiones van dentro de :where() a propósito: en Selectors 4 cada
     :not() aporta la especificidad de su argumento, así que encadenarlas
     subiría la prioridad de display:block y podría desplazar las reglas grid
     vecinas (.anik-form-line, .anik-form-line.three, .anik-date-line).
     :where() aporta cero, de modo que este selector conserva exactamente la
     especificidad del original `:not(summary)`. */
  html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas .anik-step-details > :not(summary):where(:not(script, style, template, link, meta, noscript, title, [hidden], [type="hidden"])),
  html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas .anik-step-details > :not(summary):where(:not(script, style, template, link, meta, noscript, title, [hidden], [type="hidden"])),
  html body .anik-booking.anik-theme-workbook_saas .anik-step-details > :not(summary):where(:not(script, style, template, link, meta, noscript, title, [hidden], [type="hidden"])){
    display:block !important;
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:12px !important;
    margin-right:12px !important;
    box-sizing:border-box !important;
  }
  html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas :is(.anik-service-toolbar,.anik-form-line,.anik-form-line.three,.anik-date-line,.anik-coupon-input-group),
  html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas :is(.anik-service-toolbar,.anik-form-line,.anik-form-line.three,.anik-date-line,.anik-coupon-input-group),
  html body .anik-booking.anik-theme-workbook_saas :is(.anik-service-toolbar,.anik-form-line,.anik-form-line.three,.anik-date-line,.anik-coupon-input-group){
    display:grid !important;
    grid-template-columns:1fr !important;
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
  }
  html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas .anik-phone-row,
  html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas .anik-phone-row,
  html body .anik-booking.anik-theme-workbook_saas .anik-phone-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
    min-width:0 !important;
    gap:8px !important;
    align-items:stretch !important;
  }
  html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas :is(.anik-phone-row select,.anik-phone-row input,input[name="customer_phone"],input[type="tel"]),
  html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas :is(.anik-phone-row select,.anik-phone-row input,input[name="customer_phone"],input[type="tel"]),
  html body .anik-booking.anik-theme-workbook_saas :is(.anik-phone-row select,.anik-phone-row input,input[name="customer_phone"],input[type="tel"]){
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    box-sizing:border-box !important;
    font-size:16px !important;
  }
  html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas .anik-phone-row .anik-phone-local,
  html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas .anik-phone-row .anik-phone-local,
  html body .anik-booking.anik-theme-workbook_saas .anik-phone-row .anik-phone-local{
    inline-size:100% !important;
    min-inline-size:240px !important;
    max-inline-size:100% !important;
    flex-basis:100% !important;
  }
  @media(max-width:374px){
    html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas .anik-phone-row .anik-phone-local,
    html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas .anik-phone-row .anik-phone-local,
    html body .anik-booking.anik-theme-workbook_saas .anik-phone-row .anik-phone-local{
      min-inline-size:220px !important;
    }
  }
  html body.anik-workbook-booking-page .anik-booking.anik-theme-workbook_saas :is(.anik-public-shell,.anik-booking-flow,.anik-booking-form),
  html body.anik-workbook-standalone .anik-booking.anik-theme-workbook_saas :is(.anik-public-shell,.anik-booking-flow,.anik-booking-form),
  html body .anik-booking.anik-theme-workbook_saas :is(.anik-public-shell,.anik-booking-flow,.anik-booking-form){
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:clip !important;
  }
}

.anik-portal .anik-sale-active.wb248-sale-active-fixed{
  display:block !important;
  grid-template-columns:none !important;
  gap:0 !important;
  min-height:0 !important;
  padding:18px !important;
}
.anik-portal .anik-sale-active.wb248-sale-active-fixed > .anik-section-head{
  width:100% !important;
  margin-bottom:14px !important;
}
.anik-portal .anik-sale-active.wb248-sale-active-fixed > form.wb248-sale-form-grid{
  display:grid !important;
  /* Candidate 29: el carrito (.anik-sale-items-head) tiene 6 columnas fijas
     que suman ~374px + separaciones -- con minmax(0,1fr) el navegador podía
     darle 0px reales a "Descripción" en anchos donde el sidebar deja menos
     ancho de contenido del que el punto de quiebre siguiente asume (viewport
     ~1024px, contenido real ~794px tras el sidebar), partiendo el texto
     letra por letra. minmax(340px,1fr) le da un piso real a esa columna. */
  grid-template-columns:minmax(340px,1fr) minmax(280px,340px) !important;
  align-items:start !important;
  gap:16px !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin:0 !important;
}
.anik-portal .wb248-sale-form-grid > :is(.anik-sale-main,.anik-sale-summary-panel){
  min-width:0 !important;
}
@media(max-width:1100px){
  .anik-portal .anik-sale-active.wb248-sale-active-fixed > form.wb248-sale-form-grid{
    grid-template-columns:1fr !important;
  }
  .anik-portal .wb248-sale-form-grid .anik-sale-summary-panel{
    position:static !important;
  }
}

.anik-portal .wb248-stats-workspace{
  display:grid !important;
  gap:14px !important;
}
.anik-portal .wb248-stats-workspace .anik-report-hero-card{
  min-height:0 !important;
  padding:18px !important;
}
.anik-portal .wb248-stats-workspace .anik-report-hero-card h2{
  font-size:clamp(22px,2.4vw,32px) !important;
}
.anik-portal .wb248-stats-brief{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr)) !important;
  gap:10px !important;
}
.anik-portal .wb248-stats-brief article,
.anik-portal .wb248-stats-kpis article{
  min-height:0 !important;
  padding:14px !important;
  border:1px solid var(--wb248-border,#e2e8f0) !important;
  border-radius:12px !important;
  background:var(--wb248-surface,#fff) !important;
  box-shadow:none !important;
}
.anik-portal .wb248-stats-brief strong{
  display:block !important;
  color:var(--wb248-text,#0f172a) !important;
  font-size:16px !important;
  line-height:1.25 !important;
}
.anik-portal .wb248-stats-brief span,
.anik-portal .wb248-stats-brief small{
  color:var(--wb248-muted,#64748b) !important;
}
.anik-portal .wb248-stats-kpis strong{
  font-size:clamp(22px,2vw,30px) !important;
  line-height:1.08 !important;
  letter-spacing:0 !important;
  white-space:normal !important;
}

.anik-portal .anik-billing-layout.wb248-billing-workspace{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:14px !important;
  width:100% !important;
  max-width:1120px !important;
  margin:0 auto !important;
}
.anik-portal .wb248-billing-workspace .anik-billing-module{
  border:1px solid var(--wb248-border,#e2e8f0) !important;
  border-radius:14px !important;
  background:var(--wb248-surface,#fff) !important;
  overflow:hidden !important;
}
.anik-portal .wb248-billing-workspace .anik-billing-module > summary{
  min-height:48px !important;
  padding:12px 16px !important;
  border-bottom:1px solid var(--wb248-border,#e2e8f0) !important;
}
.anik-portal .wb248-billing-main{
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.anik-portal .wb248-billing-workspace .anik-plan-summary-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important;
}
.anik-portal .wb248-billing-workspace .anik-renewal-summary{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) !important;
}

.anik-portal .anik-settings-layout.wb248-settings-workspace{
  display:block !important;
  grid-template-columns:1fr !important;
  max-width:1120px !important;
  margin:0 auto !important;
}
.anik-portal .wb248-settings-status-top{
  margin:14px 0 16px !important;
  padding:14px !important;
}
.anik-portal .anik-settings-aside{
  display:none !important;
}

.anik-portal .wb248-services-workspace{
  max-width:1180px !important;
  margin:0 auto !important;
}
.anik-portal .wb248-services-command,
.anik-portal .wb248-service-order-compact,
.anik-portal .wb248-services-manager,
.anik-portal .wb248-categories-compact{
  padding:14px !important;
}
.anik-portal .wb248-categories-compact:not([open]) > summary{
  border-bottom:0 !important;
}
.anik-portal .wb248-service-row-compact{
  min-height:0 !important;
  padding:10px 12px !important;
  align-items:center !important;
}
.anik-portal .wb248-service-row-compact .anik-service-thumb{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  border-radius:10px !important;
}
.anik-portal .wb248-service-row-compact .anik-service-main strong,
.anik-portal .wb248-category-row-compact strong,
.anik-portal .wb248-service-order-item strong{
  font-size:14px !important;
  line-height:1.2 !important;
}
.anik-portal .wb248-service-row-compact .anik-status-switch{
  min-height:34px !important;
  padding:5px 9px !important;
}
/* Candidate 29 (7c): esta clase .anik-status-switch se reutiliza en varias
   hojas de estilo (public.css tiene 3 bloques distintos, sin contar
   workbook-premium.css/workbook-shell.css), y al menos dos de ellas ponen el
   círculo del interruptor en pseudo-elementos DISTINTOS del mismo <i>
   (::before de 16px en un bloque viejo sin espacio de nombres, ::after de
   12px en otro) -- ambos son "content:none" por defecto, así que los DOS
   se dibujaban a la vez, superpuestos (el círculo duplicado reportado).
   Se apaga aquí solo el ::before heredado, sin tocar la clase en el resto
   del sitio -- el ::after (con la animación real de encendido/apagado)
   sigue intacto. */
.anik-portal .wb248-service-row-compact .anik-status-switch i::before{
  content:none !important;
}
.anik-portal .wb248-service-order-item{
  min-height:44px !important;
  padding:8px 10px !important;
}
.anik-portal .wb248-category-row-compact{
  min-height:0 !important;
  padding:10px 12px !important;
}
@media(max-width:720px){
  .anik-portal .wb248-service-row-compact,
  .anik-portal .wb248-category-row-compact,
  .anik-portal .wb248-service-order-item{
    grid-template-columns:1fr !important;
  }
  .anik-portal .wb248-service-row-compact .anik-row-actions,
  .anik-portal .wb248-service-row-compact .anik-row-actions form,
  .anik-portal .wb248-service-row-compact .anik-row-actions a{
    width:100% !important;
  }
}

.anik-portal .wb248-attendance-toolbar{
  align-items:end !important;
  gap:10px !important;
}
.anik-portal .wb248-attendance-filter{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr)) !important;
  gap:8px !important;
  flex:1 1 620px !important;
}
.anik-portal .wb248-attendance-summary-card,
.anik-portal .wb248-attendance-staff-summary,
.anik-portal .wb248-attendance-daily-summary,
.anik-portal .wb248-attendance-sessions-card,
.anik-portal .wb248-attendance-manual-panel,
.anik-portal .anik-attendance-table-card{
  padding:14px !important;
  min-height:0 !important;
}
.anik-portal .wb248-attendance-admin-layout{
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr) !important;
  gap:14px !important;
  align-items:start !important;
}
.anik-portal .anik-attendance-sheet{
  width:100% !important;
  min-width:0 !important;
}
@media(max-width:900px){
  .anik-portal .wb248-attendance-admin-layout,
  .anik-portal .wb248-attendance-filter{
    grid-template-columns:1fr !important;
  }
}

/* Candidate 11 visual-only close: unified density, toolbars, analytics, settings and mobile polish. */
.anik-portal .wb248-module-frame :is(.anik-card-soft,.anik-command-center,.anik-service-order-card,.anik-services-manager-card,.anik-module-status-card){
  border-color:var(--wb248-line) !important;
  box-shadow:0 10px 26px rgba(15,23,42,.05) !important;
}

.anik-portal .wb248-module-frame :is(.anik-section-head,.anik-command-center.compact){
  gap:12px !important;
}

.anik-portal .wb248-module-frame :is(.anik-section-head h2,.anik-card-soft > h2,.anik-command-center h2){
  color:var(--wb248-text) !important;
  font-size:18px !important;
  line-height:1.18 !important;
  font-weight:760 !important;
  letter-spacing:0 !important;
}

.anik-portal .wb248-module-frame :is(.anik-section-head p,.anik-soft-lead,.anik-muted,.anik-soft-note,small){
  line-height:1.42 !important;
}

.anik-portal :is(.anik-btn,a.anik-btn,button.anik-btn,.anik-table-open,.anik-row-actions a,.anik-inv-action-btn){
  min-height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  border-radius:10px !important;
  padding:8px 12px !important;
  font-size:12.5px !important;
  font-weight:720 !important;
  line-height:1 !important;
  text-decoration:none !important;
}

.anik-portal :is(.anik-btn.mini,.anik-row-actions.compact a,.anik-row-actions.compact button,.anik-mini-danger){
  min-height:30px !important;
  padding:6px 9px !important;
  border-radius:8px !important;
  font-size:11.5px !important;
}

.anik-portal :is(.anik-filter-form,.anik-date-filter,.anik-service-admin-filters,.anik-category-filters,.anik-inv-filters,.wb248-attendance-filter) label{
  color:var(--wb248-muted) !important;
  font-size:11.5px !important;
  font-weight:720 !important;
  letter-spacing:0 !important;
}

.anik-portal :is(.anik-filter-form,.anik-date-filter,.anik-service-admin-filters,.anik-category-filters,.anik-inv-filters,.wb248-attendance-filter) :is(input,select){
  min-height:38px !important;
  border-radius:10px !important;
  border-color:var(--wb248-line) !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-text) !important;
}

/* Horarios y bloqueos */
.anik-portal .wb248-hours-filter{
  width:100% !important;
  max-width:100% !important;
  padding:10px 0 4px !important;
  border:0 !important;
  background:transparent !important;
}

.anik-portal .wb248-hours-filter label{
  width:min(360px,100%) !important;
}

.anik-portal .wb248-hours-filter select{
  width:100% !important;
  min-width:260px !important;
}

.anik-portal .anik-hours-table-head{
  display:grid !important;
  grid-template-columns:minmax(96px,.85fr) minmax(100px,.8fr) repeat(4,minmax(106px,1fr)) !important;
  gap:8px !important;
  padding:0 10px !important;
}

.anik-portal .anik-hour-row{
  grid-template-columns:minmax(96px,.85fr) minmax(100px,.8fr) repeat(4,minmax(106px,1fr)) !important;
  align-items:center !important;
  gap:8px !important;
  min-height:52px !important;
  padding:8px 10px !important;
}

.anik-portal .anik-hour-row > strong{
  align-self:center !important;
  color:var(--wb248-text) !important;
  font-size:13px !important;
  font-weight:760 !important;
}

.anik-portal .anik-hour-row label:not(.anik-hour-toggle){
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:3px !important;
  min-width:0 !important;
  margin:0 !important;
  color:var(--wb248-muted) !important;
  font-size:10.5px !important;
  font-weight:720 !important;
}

.anik-portal .anik-hour-row input[type="time"]{
  width:100% !important;
  min-width:0 !important;
  height:34px !important;
  padding:5px 7px !important;
  font-size:12px !important;
}

.anik-portal .anik-hour-toggle{
  min-height:34px !important;
  align-self:center !important;
  justify-content:flex-start !important;
  padding:6px 8px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:10px !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
  font-size:12px !important;
  font-weight:720 !important;
}

.anik-portal .wb248-blocks-layout{
  grid-template-columns:minmax(0,1fr) minmax(280px,360px) !important;
  gap:14px !important;
  align-items:start !important;
}

.anik-portal .wb248-blocks-list .anik-row-card{
  min-height:52px !important;
  padding:10px 12px !important;
}

/* Servicios y categorias */
.anik-portal .wb248-services-workspace{
  display:grid !important;
  gap:12px !important;
  max-width:1200px !important;
}

.anik-portal .wb248-services-command{order:1 !important;}
.anik-portal .anik-service-stats-v138{order:2 !important;}
.anik-portal .wb248-service-order-compact{order:3 !important;}
.anik-portal .wb248-services-manager{order:4 !important;}
.anik-portal .wb248-categories-compact{order:5 !important;}

.anik-portal .wb248-services-command{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
}

.anik-portal .anik-service-stats-v138{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
  margin:0 !important;
}

.anik-portal .anik-service-stats-v138 span{
  min-height:38px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:10px !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
  font-size:12px !important;
  font-weight:720 !important;
}

.anik-portal .wb248-categories-compact[open]{
  overflow:hidden !important;
}

.anik-portal .wb248-categories-compact > summary,
.anik-portal .wb248-service-order-compact > .anik-section-head,
.anik-portal .wb248-services-manager > .anik-section-head{
  margin:-2px 0 10px !important;
}

.anik-portal .anik-category-filters,
.anik-portal .anik-service-admin-filters{
  display:grid !important;
  grid-template-columns:minmax(220px,1fr) minmax(180px,.6fr) minmax(120px,auto) !important;
  gap:8px !important;
  align-items:end !important;
}

.anik-portal .anik-category-row{
  grid-template-columns:minmax(0,1fr) auto !important;
  min-height:48px !important;
  padding:9px 11px !important;
}

.anik-portal .anik-category-row > div{
  min-width:0 !important;
}

.anik-portal .anik-category-row :is(span,small){
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

.anik-portal .anik-service-order-card{
  overflow:hidden !important;
}

.anik-portal .anik-service-order-card .anik-soft-note{
  margin:0 0 8px !important;
  padding:8px 10px !important;
  border-radius:10px !important;
}

.anik-portal .anik-service-order-list{
  gap:6px !important;
  margin:0 !important;
  padding:0 !important;
}

.anik-portal .wb248-service-order-head{
  display:grid !important;
  grid-template-columns:44px 56px minmax(0,1fr) 82px !important;
  gap:8px !important;
  padding:6px 10px !important;
  color:var(--wb248-muted) !important;
  font-size:10.5px !important;
  font-weight:760 !important;
  text-transform:uppercase !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:10px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-service-order-list::before{
  display:none !important;
  content:none !important;
}

.anik-portal .anik-service-order-item{
  grid-template-columns:44px 56px minmax(0,1fr) 82px !important;
  gap:8px !important;
  min-height:42px !important;
  padding:7px 10px !important;
}

.anik-portal .anik-service-order-position{
  width:28px !important;
  height:28px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:8px !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
  font-size:12px !important;
  font-weight:760 !important;
}

.anik-portal .anik-service-order-handle{
  width:26px !important;
  height:26px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:var(--wb248-muted) !important;
  font-size:15px !important;
}

.anik-portal .anik-service-order-name small{
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  color:var(--wb248-muted) !important;
  font-size:11.5px !important;
}

.anik-portal .anik-service-order-moves{
  display:flex !important;
  justify-content:flex-end !important;
  gap:4px !important;
}

.anik-portal .wb248-service-order-item .anik-service-order-moves .anik-btn,
.anik-portal .wb248-service-order-item .anik-service-order-moves button[data-service-order-up],
.anik-portal .wb248-service-order-item .anik-service-order-moves button[data-service-order-down]{
  width:30px !important;
  min-width:30px !important;
  height:30px !important;
  min-height:30px !important;
  padding:0 !important;
  font-size:0 !important;
  color:transparent !important;
  overflow:hidden !important;
  border-radius:8px !important;
}

.anik-portal .wb248-service-order-item .anik-service-order-moves [data-service-order-up]::before,
.anik-portal .wb248-service-order-item .anik-service-order-moves [data-service-order-down]::before{
  color:var(--wb248-text-2) !important;
  font-size:14px !important;
  line-height:1 !important;
}

.anik-portal .anik-service-order-moves [data-service-order-up]::before{
  content:"\2191";
}

.anik-portal .anik-service-order-moves [data-service-order-down]::before{
  content:"\2193";
}

.anik-portal .anik-service-table-head,
.anik-portal .anik-service-row{
  grid-template-columns:minmax(210px,1.4fr) minmax(150px,1fr) 76px 110px minmax(136px,.85fr) minmax(118px,.75fr) !important;
  gap:8px !important;
}

.anik-portal .anik-service-table-head{
  min-height:32px !important;
}

.anik-portal .wb248-service-row-compact{
  min-height:52px !important;
  padding:8px 10px !important;
}

.anik-portal .wb248-service-row-compact .anik-service-main{
  display:grid !important;
  grid-template-columns:38px minmax(0,1fr) !important;
  gap:9px !important;
  align-items:center !important;
}

.anik-portal .wb248-service-row-compact .anik-service-main p{
  margin:2px 0 0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  color:var(--wb248-muted) !important;
  font-size:11.5px !important;
}

.anik-portal .wb248-service-row-compact .anik-service-thumb{
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
}

.anik-portal .wb248-service-row-compact .anik-row-actions.compact{
  justify-content:flex-end !important;
  gap:5px !important;
}

/* Asistencia */
.anik-portal .wb248-attendance-toolbar{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto auto !important;
  align-items:end !important;
  width:100% !important;
  padding:12px !important;
}

.anik-portal .wb248-attendance-filter{
  grid-template-columns:repeat(6,minmax(118px,1fr)) auto !important;
  flex:none !important;
  width:100% !important;
}

.anik-portal .wb248-attendance-toolbar > a{
  align-self:end !important;
  white-space:nowrap !important;
}

.anik-portal .wb248-attendance-admin-layout{
  grid-template-columns:1fr !important;
}

.anik-portal .wb248-attendance-admin-layout > div{
  min-width:0 !important;
}

.anik-portal .anik-attendance-table-card{
  width:100% !important;
  max-width:100% !important;
}

.anik-portal .anik-attendance-table-card .anik-table-wrap{
  overflow-x:auto !important;
}

.anik-portal .anik-attendance-sheet{
  table-layout:auto !important;
}

.anik-portal .anik-attendance-sheet :is(th,td){
  padding:8px 10px !important;
  font-size:12px !important;
  white-space:normal !important;
}

/* Inventario */
.anik-portal .anik-inv-toolbar-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:10px !important;
  align-items:center !important;
  padding:12px !important;
  margin:0 0 12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
  box-shadow:0 10px 26px rgba(15,23,42,.05) !important;
}

.anik-portal .anik-inv-toolbar{
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.anik-portal .anik-inv-filters{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  align-items:center !important;
}

.anik-portal .anik-inv-toolbar-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  min-width:0 !important;
}

.anik-portal .anik-inv-new-product{
  position:relative !important;
  margin:0 !important;
}

.anik-portal .anik-inv-new-product > summary{
  list-style:none !important;
  margin:0 !important;
}

.anik-portal .anik-inv-new-product > summary::-webkit-details-marker{
  display:none !important;
}

.anik-portal .anik-inv-new-product-panel{
  position:absolute !important;
  right:0 !important;
  top:calc(100% + 8px) !important;
  z-index:20 !important;
  width:min(760px,calc(100vw - 48px)) !important;
  padding:14px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
  box-shadow:0 18px 42px rgba(15,23,42,.16) !important;
}

/* Marketing */
.anik-portal .wb248-marketing-subnav{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:0 0 12px !important;
}

.anik-portal .wb248-marketing-subnav a{
  min-height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:8px 12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:10px !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-text-2) !important;
  font-size:12.5px !important;
  font-weight:720 !important;
  text-decoration:none !important;
}

.anik-portal .anik-marketing-grid{
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr) !important;
  gap:12px !important;
}

.anik-portal .wb248-marketing-mailing,
.anik-portal .wb248-marketing-audience,
.anik-portal .wb248-marketing-popup-card,
.anik-portal .wb248-marketing-recent{
  min-width:0 !important;
  padding:14px !important;
}

.anik-portal .wb248-marketing-popup-card,
.anik-portal .wb248-marketing-recent{
  grid-column:1 / -1 !important;
}

.anik-portal .wb248-marketing-recent .anik-subscriber-list{
  display:grid !important;
  gap:0 !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  overflow:hidden !important;
}

.anik-portal .wb248-marketing-recent .anik-subscriber-list article{
  display:grid !important;
  grid-template-columns:minmax(220px,1.2fr) minmax(190px,.8fr) minmax(280px,1.2fr) !important;
  gap:10px !important;
  align-items:center !important;
  min-height:46px !important;
  padding:9px 12px !important;
  border:0 !important;
  border-bottom:1px solid var(--wb248-line) !important;
  border-radius:0 !important;
  background:var(--wb248-surface) !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}

.anik-portal .wb248-marketing-recent .anik-subscriber-list article:last-child{
  border-bottom:0 !important;
}

.anik-portal .wb248-marketing-recent .anik-subscriber-list :is(strong,span,small){
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  word-break:normal !important;
}

/* Cupones */
.anik-portal .wb248-coupon-actions{
  justify-content:flex-end !important;
  margin:0 0 10px !important;
}

.anik-portal .anik-coupon-tbl{
  table-layout:fixed !important;
  width:100% !important;
  min-width:0 !important;
  font-size:12px !important;
}

.anik-portal .anik-coupon-tbl :is(th,td){
  padding:7px 8px !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}

.anik-portal .anik-coupon-tbl th:nth-child(1){width:14% !important;}
.anik-portal .anik-coupon-tbl th:nth-child(2){width:10% !important;}
.anik-portal .anik-coupon-tbl th:nth-child(3){width:9% !important;}
.anik-portal .anik-coupon-tbl th:nth-child(4){width:16% !important;}
.anik-portal .anik-coupon-tbl th:nth-child(5){width:8% !important;}
.anik-portal .anik-coupon-tbl th:last-child{width:18% !important;}

.anik-portal .anik-coupon-tbl .act-cell{
  white-space:normal !important;
}

.anik-portal .anik-coupon-tbl .act-cell :is(form,button){
  display:inline-flex !important;
  margin:2px !important;
}

/* Estadisticas */
.anik-portal .anik-command-center:has(input[name="anik_tab"][value="stats"]){
  padding:12px !important;
  margin-bottom:12px !important;
}

.anik-portal .anik-command-center:has(input[name="anik_tab"][value="stats"]) .anik-date-filter{
  width:100% !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  align-items:end !important;
}

.anik-portal .wb248-stats-workspace{
  max-width:1180px !important;
  margin:0 auto !important;
  gap:12px !important;
  background:transparent !important;
}

.anik-portal .wb248-stats-workspace .anik-report-watermark{
  display:none !important;
}

.anik-portal .wb248-stats-workspace .anik-report-hero-card{
  display:grid !important;
  grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr) !important;
  gap:14px !important;
  padding:14px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
  box-shadow:0 10px 26px rgba(15,23,42,.05) !important;
}

.anik-portal .wb248-stats-workspace .anik-report-hero-card h2{
  font-size:21px !important;
  line-height:1.16 !important;
}

.anik-portal .wb248-stats-workspace .anik-report-brandline{
  padding:10px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:12px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .wb248-stats-brief{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
}

.anik-portal .wb248-stats-kpis{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
}

.anik-portal .wb248-stats-brief article,
.anik-portal .wb248-stats-kpis article{
  padding:11px 12px !important;
  border-radius:12px !important;
  background:var(--wb248-surface) !important;
}

.anik-portal .wb248-stats-brief strong{
  font-size:15px !important;
}

.anik-portal .wb248-stats-kpis strong{
  font-size:22px !important;
}

.anik-portal .wb248-stats-kpis span,
.anik-portal .wb248-stats-brief span{
  color:var(--wb248-muted) !important;
  font-size:10.5px !important;
  font-weight:760 !important;
  text-transform:uppercase !important;
}

.anik-portal .wb248-stats-workspace > :is(.anik-card-soft,.anik-two-col){
  margin:0 !important;
}

.anik-portal .wb248-stats-workspace .anik-two-col{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}

.anik-portal .wb248-stats-workspace :is(.anik-card-soft,.anik-status-dashboard,.anik-report-insights){
  padding:14px !important;
  border-radius:14px !important;
  box-shadow:0 10px 26px rgba(15,23,42,.05) !important;
}

.anik-portal .wb248-stats-workspace .anik-insight-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
}

.anik-portal .wb248-stats-workspace .anik-insight-grid article{
  padding:10px !important;
  border-radius:10px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .wb248-stats-workspace .anik-chart-bars{
  padding:8px !important;
}

.anik-portal .wb248-stats-workspace .anik-modern-table :is(th,td){
  padding:8px 10px !important;
  font-size:12px !important;
}

.anik-portal .wb248-stats-workspace .anik-report-footer,
.anik-portal .anik-report-cover{
  display:none !important;
}

.anik-portal .wb248-stats-kpis article::before,
.anik-portal .wb248-stats-kpis article::after{
  display:none !important;
  content:none !important;
}

.anik-portal .wb248-stats-kpis article{
  border-top:1px solid var(--wb248-line) !important;
}

.anik-portal .wb248-stats-kpis strong{
  max-width:100% !important;
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:19px !important;
  letter-spacing:0 !important;
}

/* Finanzas */
.anik-portal .wb248-expense-panel{
  order:-1 !important;
  margin:0 0 12px !important;
  padding:0 !important;
  border-radius:14px !important;
  overflow:visible !important;
}

.anik-portal .wb248-expense-panel > summary{
  width:max-content !important;
  min-height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:8px 12px !important;
  border:1px solid var(--wb248-brand) !important;
  border-radius:10px !important;
  background:var(--wb248-brand) !important;
  color:#fff !important;
  font-size:12.5px !important;
  font-weight:760 !important;
  list-style:none !important;
}

.anik-portal .wb248-expense-panel > summary::-webkit-details-marker{
  display:none !important;
}

.anik-portal .wb248-expense-panel > summary small{
  display:none !important;
}

.anik-portal .wb248-expense-panel[open] > form{
  margin-top:10px !important;
  padding:14px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
}

/* Configuracion */
.anik-portal .anik-settings-layout.wb248-settings-workspace{
  max-width:1200px !important;
}

.anik-portal .anik-settings-panel{
  display:grid !important;
  gap:10px !important;
  padding:14px !important;
  border-radius:16px !important;
}

.anik-portal .wb248-settings-nav{
  position:sticky !important;
  top:104px !important;
  z-index:5 !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:10px 0 12px !important;
  padding:8px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:color-mix(in srgb,var(--wb248-surface) 92%,transparent) !important;
  backdrop-filter:blur(10px) !important;
}

.anik-portal .wb248-settings-nav a{
  flex:1 1 128px !important;
  min-height:34px !important;
  border-radius:9px !important;
}

.anik-portal .wb248-settings-status-top{
  display:grid !important;
  grid-template-columns:minmax(180px,.35fr) minmax(0,1fr) !important;
  gap:10px !important;
  align-items:center !important;
  margin:0 0 12px !important;
  padding:12px !important;
}

.anik-portal .wb248-settings-status-top .anik-section-head{
  margin:0 !important;
}

.anik-portal .wb248-settings-status-top .anik-section-head h2{
  font-size:16px !important;
}

.anik-portal .wb248-settings-status-top .anik-module-status-list{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:6px !important;
}

.anik-portal .wb248-settings-status-top .anik-module-status-list article{
  min-height:34px !important;
  padding:6px 8px !important;
  border-radius:9px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal .anik-settings-accordion{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:10px !important;
}

.anik-portal .wb248-settings-block{
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
  box-shadow:0 10px 26px rgba(15,23,42,.05) !important;
  overflow:hidden !important;
}

.anik-portal .wb248-settings-block > summary{
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  gap:10px !important;
  align-items:center !important;
  min-height:48px !important;
  padding:10px 14px !important;
  border-bottom:1px solid var(--wb248-line) !important;
  background:var(--wb248-surface-2) !important;
  list-style:none !important;
}

.anik-portal .wb248-settings-block > summary::-webkit-details-marker{
  display:none !important;
}

.anik-portal .wb248-settings-block > summary span{
  width:28px !important;
  height:28px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:8px !important;
  background:var(--wb248-surface) !important;
  color:var(--wb248-muted) !important;
  font-size:11px !important;
  font-weight:760 !important;
}

.anik-portal .wb248-settings-block > summary strong{
  color:var(--wb248-text) !important;
  font-size:15px !important;
  line-height:1.2 !important;
}

.anik-portal .wb248-settings-block > summary em{
  grid-column:2 !important;
  color:var(--wb248-muted) !important;
  font-size:12px !important;
  font-style:normal !important;
}

.anik-portal .wb248-settings-block:target{
  border-color:var(--wb248-brand) !important;
  box-shadow:0 0 0 3px var(--wb248-brand-soft),0 16px 34px rgba(15,23,42,.08) !important;
}

.anik-portal .wb248-settings-block .anik-settings-grid{
  padding:14px !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}

.anik-portal .wb248-settings-block .anik-settings-grid > .full{
  grid-column:1 / -1 !important;
}

.anik-portal .wb248-settings-block .anik-settings-grid :is(label,.anik-upload-field){
  min-width:0 !important;
}

.anik-portal .wb248-settings-block .anik-settings-grid :is(input,select,textarea){
  min-height:38px !important;
}

.anik-portal .anik-save-sticky{
  position:sticky !important;
  bottom:12px !important;
  z-index:6 !important;
  justify-self:end !important;
  width:auto !important;
  min-width:190px !important;
  box-shadow:0 14px 32px rgba(15,23,42,.18) !important;
}
/* Candidate 31 (Maestro, sección 3): el botón flotante de arriba está pensado
   para vivir dentro de una celda de `.anik-settings-grid` (grid de 2
   columnas), donde su propia celda angosta a la derecha le da espacio sin
   pisar nada. En "Sistema" y "Landing" del Maestro es hijo DIRECTO de un
   `<form>` en grid de UNA sola columna (secciones <details> apiladas) -- ahí
   termina flotando sobre el último campo visible de la sección abierta.
   Reproducido con overlap real de coordenadas (getBoundingClientRect) en
   ambas pantallas: "Dominio público de reservas" (Sistema) y
   "landing[hero][subtitle]" (Landing) quedaban parcialmente cubiertos por el
   botón "Guardar". Se desactiva el comportamiento flotante SOLO en estos dos
   formularios concretos, sin tocar el componente compartido en su uso
   correcto (dentro de `.anik-settings-grid`, donde no se reprodujo overlap
   alguno -- probado en la ficha de negocio del Maestro, formulario largo). */
.anik-portal form.anik-master-system-form > .anik-save-sticky,
.anik-portal form.anik-master-landing-form > .anik-save-sticky{
  position:static !important;
  justify-self:stretch !important;
  width:100% !important;
  margin-top:10px !important;
}

@media(max-width:1180px){
  .anik-portal .wb248-attendance-filter{
    grid-template-columns:repeat(3,minmax(128px,1fr)) auto !important;
  }
  .anik-portal .anik-service-table-head,
  .anik-portal .anik-service-row{
    grid-template-columns:minmax(220px,1.5fr) minmax(140px,.9fr) 74px 100px minmax(126px,.85fr) minmax(112px,.7fr) !important;
  }
}

@media(max-width:1024px){
  .anik-portal .wb248-stats-brief,
  .anik-portal .wb248-stats-workspace .anik-insight-grid,
  .anik-portal .wb248-settings-status-top .anik-module-status-list{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .anik-portal .wb248-stats-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .anik-portal .wb248-settings-block .anik-settings-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .anik-portal .anik-marketing-grid,
  .anik-portal .wb248-stats-workspace .anik-report-hero-card,
  .anik-portal .wb248-stats-workspace .anik-two-col,
  .anik-portal .wb248-settings-status-top,
  .anik-portal .wb248-blocks-layout{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:760px){
  .anik-portal .anik-hours-table-head{
    display:none !important;
  }
  .anik-portal .anik-hour-row{
    grid-template-columns:1fr 1fr !important;
    align-items:stretch !important;
    gap:8px !important;
  }
  .anik-portal .anik-hour-row > strong,
  .anik-portal .anik-hour-toggle{
    grid-column:1 / -1 !important;
  }
  .anik-portal .anik-service-stats-v138,
  .anik-portal .wb248-stats-kpis,
  .anik-portal .wb248-stats-brief,
  .anik-portal .wb248-stats-workspace .anik-insight-grid,
  .anik-portal .wb248-settings-status-top .anik-module-status-list{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-service-admin-filters,
  .anik-portal .anik-category-filters,
  .anik-portal .wb248-attendance-filter{
    grid-template-columns:1fr !important;
  }
  .anik-portal .wb248-attendance-toolbar,
  .anik-portal .anik-inv-toolbar-row{
    grid-template-columns:1fr !important;
  }
  .anik-portal .wb248-attendance-toolbar > a,
  .anik-portal .anik-inv-toolbar-actions,
  .anik-portal .anik-inv-toolbar-actions :is(a,.anik-btn,details,summary){
    width:100% !important;
  }
  .anik-portal .anik-inv-toolbar-actions{
    justify-content:stretch !important;
    flex-wrap:wrap !important;
  }
  .anik-portal .anik-inv-new-product-panel{
    position:static !important;
    width:100% !important;
    margin-top:8px !important;
    box-shadow:none !important;
  }
  .anik-portal .anik-service-order-list::before{
    display:none !important;
  }
  .anik-portal .wb248-service-order-head{
    display:none !important;
  }
  .anik-portal .anik-service-order-item{
    grid-template-columns:34px minmax(0,1fr) 74px !important;
  }
  .anik-portal .anik-service-order-handle{
    display:none !important;
  }
  .anik-portal .anik-service-table-head{
    display:none !important;
  }
  .anik-portal .anik-service-row{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .anik-portal .wb248-service-row-compact .anik-row-actions.compact{
    justify-content:flex-start !important;
  }
  .anik-portal .wb248-marketing-recent .anik-subscriber-list article{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-coupon-tbl{
    table-layout:auto !important;
  }
  .anik-portal .wb248-settings-block .anik-settings-grid{
    grid-template-columns:1fr !important;
  }
  .anik-portal .wb248-settings-nav{
    position:static !important;
  }
}

@media(max-width:420px){
  .anik-portal .wb248-module-frame :is(.anik-card-soft,.anik-command-center,.anik-services-command,.wb248-services-manager,.wb248-service-order-compact,.wb248-categories-compact,.anik-settings-panel){
    padding:12px !important;
    border-radius:12px !important;
  }
  .anik-portal .anik-hour-row{
    grid-template-columns:1fr !important;
  }
  .anik-portal .wb248-hours-filter select{
    min-width:0 !important;
  }
  .anik-portal .anik-service-order-item{
    grid-template-columns:30px minmax(0,1fr) !important;
  }
  .anik-portal .anik-service-order-moves{
    grid-column:1 / -1 !important;
    justify-content:flex-start !important;
  }
  .anik-portal .wb248-stats-workspace .anik-report-hero-card h2{
    font-size:19px !important;
  }
  .anik-portal .wb248-stats-kpis strong{
    font-size:20px !important;
  }
  .anik-portal .wb248-settings-block > summary{
    grid-template-columns:30px minmax(0,1fr) !important;
    padding:10px 11px !important;
  }
  .anik-portal .wb248-settings-block > summary em{
    display:none !important;
  }
}

/* Candidate 11: keep Estadisticas as an in-app analytics view, not a print report surface. */
html body .anik-portal .anik-report-panel.wb248-stats-workspace::before,
html body .anik-portal .wb248-stats-workspace::before{
  display:none !important;
  content:none !important;
}

html body .anik-portal .anik-report-cover,
html body .anik-portal .anik-report-panel.wb248-stats-workspace > .anik-report-hero-card,
html body .anik-portal .anik-report-panel.wb248-stats-workspace .anik-report-footer,
html body .anik-portal .anik-report-panel.wb248-stats-workspace > footer.anik-report-footer{
  display:none !important;
}

html body .anik-portal .anik-report-panel.wb248-stats-workspace .wb248-stats-kpis{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
}

html body .anik-portal .anik-report-panel.wb248-stats-workspace .wb248-stats-kpis article{
  min-height:84px !important;
  padding:10px 12px !important;
  border-radius:14px !important;
}

html body .anik-portal .anik-report-panel.wb248-stats-workspace .wb248-stats-kpis article strong{
  font-size:18px !important;
  line-height:1.12 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}

@media(max-width:1024px){
  html body .anik-portal .anik-report-panel.wb248-stats-workspace .wb248-stats-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:520px){
  html body .anik-portal .anik-report-panel.wb248-stats-workspace .wb248-stats-kpis{
    grid-template-columns:1fr !important;
  }
  html body .anik-portal .anik-report-panel.wb248-stats-workspace .wb248-stats-kpis article strong{
    font-size:20px !important;
  }
}

/* Candidate 12 visual final: dashboard, marketing IA and settings workspace. */
.anik-portal .anik-nav-group[data-nav-group="marketing"] .anik-nav-group-items a{
  position:relative !important;
}

.anik-portal:has(#wb248-marketing-popup:target) .anik-nav-group[data-nav-group="marketing"] .wb248-marketing-nav-mailing.active{
  background:transparent !important;
  color:var(--wb248-text-2) !important;
  border-color:transparent !important;
}

.anik-portal:has(#wb248-marketing-popup:target) .anik-nav-group[data-nav-group="marketing"] .wb248-marketing-nav-popup,
.anik-portal:has(#wb248-marketing-mailing:target) .anik-nav-group[data-nav-group="marketing"] .wb248-marketing-nav-mailing{
  background:var(--wb248-brand-soft) !important;
  color:var(--wb248-brand) !important;
  border-color:color-mix(in srgb,var(--wb248-brand) 28%,white) !important;
  font-weight:760 !important;
}

.anik-portal .wbs-dash{
  gap:12px !important;
}

.anik-portal .wbs-dash-hero{
  gap:10px !important;
  padding:12px !important;
  border-radius:16px !important;
}

.anik-portal .wbs-kpi-item{
  min-height:74px !important;
  grid-template-columns:30px minmax(0,1fr) auto !important;
  padding:10px 11px !important;
}

.anik-portal .wbs-kpi-item > svg{
  width:16px !important;
  height:16px !important;
  padding:7px !important;
  border-radius:9px !important;
}

.anik-portal .wbs-kpi-value{
  font-size:20px !important;
  letter-spacing:0 !important;
}

.anik-portal .wbs-kpi-label{
  font-size:10.5px !important;
  letter-spacing:.04em !important;
}

.anik-portal .wbs-dash-primary-row{
  grid-template-columns:minmax(0,1.72fr) minmax(300px,.88fr) !important;
  gap:10px !important;
}

.anik-portal .wbs-card-agenda,
.anik-portal .wbs-card-attention{
  min-height:292px !important;
  padding:14px !important;
}

.anik-portal .wbs-card-head{
  margin-bottom:9px !important;
}

.anik-portal .wbs-agenda-list,
.anik-portal .wbs-attention-list{
  gap:6px !important;
}

.anik-portal .wbs-agenda-list li{
  grid-template-columns:74px minmax(0,1fr) minmax(92px,auto) !important;
  min-height:47px !important;
  padding:7px 9px !important;
  gap:8px !important;
}

.anik-portal .wbs-agenda-time{
  min-height:32px !important;
  padding:0 7px !important;
  background:var(--wb248-text) !important;
  font-size:12px !important;
  letter-spacing:0 !important;
}

.anik-portal .wbs-agenda-main strong,
.anik-portal .wbs-attention-main strong{
  font-size:12.7px !important;
}

.anik-portal .wbs-agenda-main small,
.anik-portal .wbs-attention-main small{
  font-size:11px !important;
}

.anik-portal .wbs-attention-list li{
  min-height:48px !important;
  padding:7px 8px !important;
}

.anik-portal .wbs-empty-compact{
  min-height:150px !important;
}

.anik-portal .wbs-team-row{
  padding:14px !important;
}

.anik-portal .wbs-dash-secondary{
  gap:9px !important;
}

.anik-portal .wbs-indicator,
.anik-portal .wbs-tools-public,
.anik-portal .wbs-tools-quick{
  padding:11px 12px !important;
}

.anik-portal .anik-marketing-hero{
  padding:12px !important;
  border-radius:14px !important;
}

.anik-portal .anik-marketing-hero .anik-service-stats{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
}

.anik-portal .wb248-marketing-subnav{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  padding:8px !important;
  margin:0 0 12px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:14px !important;
  background:var(--wb248-surface) !important;
}

.anik-portal .wb248-marketing-subnav a{
  min-height:38px !important;
  border-radius:10px !important;
  background:var(--wb248-surface-2) !important;
}

.anik-portal:not(:has(#wb248-marketing-popup:target)) .wb248-marketing-subnav a[href="#wb248-marketing-mailing"],
.anik-portal:has(#wb248-marketing-mailing:target) .wb248-marketing-subnav a[href="#wb248-marketing-mailing"],
.anik-portal:has(#wb248-marketing-popup:target) .wb248-marketing-subnav a[href="#wb248-marketing-popup"]{
  background:var(--wb248-brand) !important;
  color:#fff !important;
  border-color:var(--wb248-brand) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.10) !important;
}

.anik-portal .anik-marketing-grid{
  grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr) !important;
  gap:12px !important;
  align-items:start !important;
}

.anik-portal .wb248-marketing-mailing,
.anik-portal .wb248-marketing-audience,
.anik-portal .wb248-marketing-popup-card,
.anik-portal .wb248-marketing-recent{
  border-radius:14px !important;
  padding:15px !important;
}

.anik-portal .wb248-marketing-mailing{
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
}

.anik-portal .wb248-marketing-audience{
  grid-column:2 !important;
  grid-row:1 !important;
}

.anik-portal .wb248-marketing-popup-card{
  grid-column:1 / -1 !important;
  display:grid !important;
  gap:12px !important;
  border-color:color-mix(in srgb,var(--wb248-brand) 22%,var(--wb248-line)) !important;
  background:linear-gradient(180deg,var(--wb248-surface),var(--wb248-surface-2)) !important;
  scroll-margin-top:104px !important;
}

.anik-portal .wb248-marketing-popup-card > .anik-kicker,
.anik-portal .wb248-marketing-popup-card > h2{
  max-width:760px !important;
}

.anik-portal .wb248-marketing-popup-card .anik-mini-form{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
}

.anik-portal .wb248-marketing-popup-card .anik-mini-form .full{
  grid-column:1 / -1 !important;
}

.anik-portal .wb248-marketing-recent{
  grid-column:1 / -1 !important;
  scroll-margin-top:104px !important;
}

.anik-portal .wb248-marketing-recent .anik-subscriber-list article{
  grid-template-columns:minmax(220px,1.1fr) minmax(190px,.75fr) minmax(260px,1fr) !important;
}

.anik-portal .anik-settings-layout.wb248-settings-workspace{
  max-width:1240px !important;
}

.anik-portal .anik-settings-panel{
  padding:14px !important;
  border-radius:16px !important;
}

.anik-portal .anik-settings-panel > .anik-section-head{
  order:1 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:12px !important;
  align-items:center !important;
  margin-bottom:10px !important;
}

.anik-portal .wb248-settings-status-top{
  order:2 !important;
  display:block !important;
  margin:0 0 10px !important;
  padding:9px !important;
  border-radius:13px !important;
  background:var(--wb248-surface-2) !important;
  box-shadow:none !important;
}

.anik-portal .wb248-settings-status-top .anik-section-head{
  display:none !important;
}

.anik-portal .wb248-settings-status-top .anik-module-status-list{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
}

.anik-portal .wb248-settings-status-top .anik-module-status-list article{
  width:auto !important;
  min-height:30px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:5px 8px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:999px !important;
  background:var(--wb248-surface) !important;
  font-size:11.5px !important;
}

.anik-portal .wb248-settings-status-top .anik-module-status-list article span{
  white-space:nowrap !important;
}

.anik-portal .wb248-settings-status-top .anik-status-chip{
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  border-radius:999px !important;
  font-size:12px !important;
}

.anik-portal .wb248-settings-nav{
  position:sticky !important;
  top:8px !important;
  z-index:7 !important;
  order:3 !important;
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:7px !important;
  padding:7px !important;
  margin:0 0 12px !important;
  border-radius:14px !important;
  background:color-mix(in srgb,var(--wb248-surface) 94%,transparent) !important;
}

.anik-portal .wb248-settings-nav a{
  flex:none !important;
  min-height:38px !important;
  border-radius:10px !important;
  background:var(--wb248-surface-2) !important;
  color:var(--wb248-text-2) !important;
}

.anik-portal .wb248-settings-workspace[data-wb-settings-section=""]:not(:has(.wb248-settings-block:target)) .wb248-settings-nav a[href="#wb248-settings-business"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-business:target), [data-wb-settings-section="wb248-settings-business"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-business"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-brand:target), [data-wb-settings-section="wb248-settings-brand"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-business"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-booking:target), [data-wb-settings-section="wb248-settings-booking"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-booking"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-home:target), [data-wb-settings-section="wb248-settings-home"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-booking"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-customer-data:target), [data-wb-settings-section="wb248-settings-customer-data"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-booking"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-online:target), [data-wb-settings-section="wb248-settings-online"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-booking"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-reviews:target), [data-wb-settings-section="wb248-settings-reviews"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-booking"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-communications:target), [data-wb-settings-section="wb248-settings-communications"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-communications"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-location:target), [data-wb-settings-section="wb248-settings-location"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-location"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-team:target), [data-wb-settings-section="wb248-settings-team"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-team"],
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-advanced:target), [data-wb-settings-section="wb248-settings-advanced"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-advanced"],
.anik-portal .wb248-settings-workspace:is(:has(#anik-security:target), [data-wb-settings-section="anik-security"]:not(:has(.wb248-settings-block:target))) .wb248-settings-nav a[href="#wb248-settings-advanced"]{
  background:var(--wb248-brand) !important;
  color:#fff !important;
  border-color:var(--wb248-brand) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.10) !important;
}

.anik-portal .anik-settings-panel .wb248-settings-block{
  display:none !important;
}

.anik-portal .wb248-settings-workspace[data-wb-settings-section=""]:not(:has(.wb248-settings-block:target)) #wb248-settings-business,
.anik-portal .wb248-settings-workspace[data-wb-settings-section=""]:not(:has(.wb248-settings-block:target)) #wb248-settings-brand,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-business:target), [data-wb-settings-section="wb248-settings-business"]:not(:has(.wb248-settings-block:target))) #wb248-settings-business,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-business:target), [data-wb-settings-section="wb248-settings-business"]:not(:has(.wb248-settings-block:target))) #wb248-settings-brand,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-brand:target), [data-wb-settings-section="wb248-settings-brand"]:not(:has(.wb248-settings-block:target))) #wb248-settings-business,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-brand:target), [data-wb-settings-section="wb248-settings-brand"]:not(:has(.wb248-settings-block:target))) #wb248-settings-brand,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-booking:target), [data-wb-settings-section="wb248-settings-booking"]:not(:has(.wb248-settings-block:target))) #wb248-settings-booking,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-booking:target), [data-wb-settings-section="wb248-settings-booking"]:not(:has(.wb248-settings-block:target))) #wb248-settings-home,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-booking:target), [data-wb-settings-section="wb248-settings-booking"]:not(:has(.wb248-settings-block:target))) #wb248-settings-customer-data,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-booking:target), [data-wb-settings-section="wb248-settings-booking"]:not(:has(.wb248-settings-block:target))) #wb248-settings-online,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-booking:target), [data-wb-settings-section="wb248-settings-booking"]:not(:has(.wb248-settings-block:target))) #wb248-settings-reviews,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-home:target), [data-wb-settings-section="wb248-settings-home"]:not(:has(.wb248-settings-block:target))) #wb248-settings-booking,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-home:target), [data-wb-settings-section="wb248-settings-home"]:not(:has(.wb248-settings-block:target))) #wb248-settings-home,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-home:target), [data-wb-settings-section="wb248-settings-home"]:not(:has(.wb248-settings-block:target))) #wb248-settings-customer-data,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-home:target), [data-wb-settings-section="wb248-settings-home"]:not(:has(.wb248-settings-block:target))) #wb248-settings-online,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-home:target), [data-wb-settings-section="wb248-settings-home"]:not(:has(.wb248-settings-block:target))) #wb248-settings-reviews,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-customer-data:target), [data-wb-settings-section="wb248-settings-customer-data"]:not(:has(.wb248-settings-block:target))) #wb248-settings-booking,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-customer-data:target), [data-wb-settings-section="wb248-settings-customer-data"]:not(:has(.wb248-settings-block:target))) #wb248-settings-home,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-customer-data:target), [data-wb-settings-section="wb248-settings-customer-data"]:not(:has(.wb248-settings-block:target))) #wb248-settings-customer-data,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-customer-data:target), [data-wb-settings-section="wb248-settings-customer-data"]:not(:has(.wb248-settings-block:target))) #wb248-settings-online,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-customer-data:target), [data-wb-settings-section="wb248-settings-customer-data"]:not(:has(.wb248-settings-block:target))) #wb248-settings-reviews,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-online:target), [data-wb-settings-section="wb248-settings-online"]:not(:has(.wb248-settings-block:target))) #wb248-settings-booking,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-online:target), [data-wb-settings-section="wb248-settings-online"]:not(:has(.wb248-settings-block:target))) #wb248-settings-home,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-online:target), [data-wb-settings-section="wb248-settings-online"]:not(:has(.wb248-settings-block:target))) #wb248-settings-customer-data,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-online:target), [data-wb-settings-section="wb248-settings-online"]:not(:has(.wb248-settings-block:target))) #wb248-settings-online,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-online:target), [data-wb-settings-section="wb248-settings-online"]:not(:has(.wb248-settings-block:target))) #wb248-settings-reviews,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-reviews:target), [data-wb-settings-section="wb248-settings-reviews"]:not(:has(.wb248-settings-block:target))) #wb248-settings-booking,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-reviews:target), [data-wb-settings-section="wb248-settings-reviews"]:not(:has(.wb248-settings-block:target))) #wb248-settings-home,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-reviews:target), [data-wb-settings-section="wb248-settings-reviews"]:not(:has(.wb248-settings-block:target))) #wb248-settings-customer-data,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-reviews:target), [data-wb-settings-section="wb248-settings-reviews"]:not(:has(.wb248-settings-block:target))) #wb248-settings-online,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-reviews:target), [data-wb-settings-section="wb248-settings-reviews"]:not(:has(.wb248-settings-block:target))) #wb248-settings-reviews,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-communications:target), [data-wb-settings-section="wb248-settings-communications"]:not(:has(.wb248-settings-block:target))) #wb248-settings-communications,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-location:target), [data-wb-settings-section="wb248-settings-location"]:not(:has(.wb248-settings-block:target))) #wb248-settings-location,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-team:target), [data-wb-settings-section="wb248-settings-team"]:not(:has(.wb248-settings-block:target))) #wb248-settings-team,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-advanced:target), [data-wb-settings-section="wb248-settings-advanced"]:not(:has(.wb248-settings-block:target))) #anik-security,
.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-advanced:target), [data-wb-settings-section="wb248-settings-advanced"]:not(:has(.wb248-settings-block:target))) #wb248-settings-advanced,
.anik-portal .wb248-settings-workspace:is(:has(#anik-security:target), [data-wb-settings-section="anik-security"]:not(:has(.wb248-settings-block:target))) #anik-security,
.anik-portal .wb248-settings-workspace:is(:has(#anik-security:target), [data-wb-settings-section="anik-security"]:not(:has(.wb248-settings-block:target))) #wb248-settings-advanced{
  display:block !important;
}

.anik-portal .anik-settings-accordion{
  order:4 !important;
  padding:14px !important;
  border:1px solid var(--wb248-line) !important;
  border-radius:16px !important;
  background:var(--wb248-surface) !important;
  box-shadow:0 10px 26px rgba(15,23,42,.05) !important;
}

.anik-portal .wb248-settings-block{
  margin:0 0 12px !important;
  border-radius:13px !important;
  box-shadow:none !important;
  scroll-margin-top:190px !important;
}

.anik-portal .wb248-settings-block:last-of-type{
  margin-bottom:0 !important;
}

.anik-portal .wb248-settings-block > summary{
  pointer-events:none !important;
  min-height:42px !important;
  padding:9px 12px !important;
  background:transparent !important;
}

.anik-portal .wb248-settings-block > summary span{
  width:24px !important;
  height:24px !important;
  border-radius:7px !important;
}

.anik-portal .wb248-settings-block > summary strong{
  font-size:14px !important;
}

.anik-portal .wb248-settings-block > summary em{
  font-size:11.5px !important;
}

.anik-portal .wb248-settings-block .anik-settings-grid{
  padding:12px !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.anik-portal .wb248-settings-workspace:is(:has(#wb248-settings-advanced:target), [data-wb-settings-section="wb248-settings-advanced"]:not(:has(.wb248-settings-block:target))) .anik-save-sticky,
.anik-portal .wb248-settings-workspace:is(:has(#anik-security:target), [data-wb-settings-section="anik-security"]:not(:has(.wb248-settings-block:target))) .anik-save-sticky{
  display:none !important;
}

.anik-portal .anik-settings-panel > .wb248-settings-block{
  order:4 !important;
}

@media(max-width:1180px){
  .anik-portal .wb248-settings-nav{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
  .anik-portal .wb248-marketing-popup-card .anik-mini-form{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:900px){
  .anik-portal .wbs-dash-hero{
    display:flex !important;
    flex-direction:column !important;
  }
  .anik-portal .wbs-dash-primary-row{
    order:1 !important;
  }
  .anik-portal .wbs-kpi-strip{
    order:2 !important;
  }
  .anik-portal .wbs-card-agenda{
    order:1 !important;
  }
  .anik-portal .wbs-card-attention{
    order:2 !important;
  }
  .anik-portal .anik-marketing-grid,
  .anik-portal .wb248-marketing-mailing,
  .anik-portal .wb248-marketing-audience,
  .anik-portal .wb248-marketing-popup-card,
  .anik-portal .wb248-marketing-recent{
    grid-column:auto !important;
    grid-row:auto !important;
  }
  .anik-portal .anik-marketing-hero .anik-service-stats{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .anik-portal .wb248-settings-status-top .anik-module-status-list{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .anik-portal .wb248-settings-status-top .anik-module-status-list article{
    justify-content:space-between !important;
  }
}

@media(max-width:640px){
  .anik-portal .wbs-dash-primary-row{
    display:flex !important;
    flex-direction:column !important;
  }
  .anik-portal .wbs-dash-primary-row .wbs-card-agenda{
    order:1 !important;
  }
  .anik-portal .wbs-dash-primary-row .wbs-card-attention{
    order:2 !important;
  }
  .anik-portal .wbs-dash-hero{
    padding:10px !important;
  }
  .anik-portal .wbs-card-agenda,
  .anik-portal .wbs-card-attention{
    min-height:auto !important;
  }
  .anik-portal .wbs-agenda-list li{
    grid-template-columns:64px minmax(0,1fr) !important;
  }
  .anik-portal .wbs-agenda-list li .anik-status-chip{
    grid-column:2 !important;
    width:max-content !important;
  }
  .anik-portal .wbs-empty-compact{
    min-height:118px !important;
  }
  .anik-portal .wb248-marketing-subnav,
  .anik-portal .wb248-settings-nav{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:7px !important;
    overflow:auto !important;
    padding:7px !important;
  }
  .anik-portal .wb248-settings-nav{
    top:216px !important;
  }
  .anik-portal .wb248-settings-block{
    scroll-margin-top:286px !important;
  }
  .anik-portal .wb248-marketing-subnav a,
  .anik-portal .wb248-settings-nav a{
    flex:0 0 auto !important;
    min-width:112px !important;
    padding:8px 10px !important;
  }
  .anik-portal .wb248-marketing-popup-card .anik-mini-form,
  .anik-portal .wb248-settings-block .anik-settings-grid{
    grid-template-columns:1fr !important;
  }
  .anik-portal .anik-settings-accordion{
    padding:10px !important;
  }
  .anik-portal .wb248-settings-block > summary{
    grid-template-columns:28px minmax(0,1fr) !important;
  }
  .anik-portal .wb248-settings-block > summary em{
    display:block !important;
  }
}

/* Candidate 12 lock: keep dashboard mobile order and settings tabs visible below sticky topbar. */
.anik-portal .wbs-dash-primary-row{
  grid-template-areas:"agenda attention" !important;
}

.anik-portal .wbs-dash-primary-row .wbs-card-agenda{
  grid-area:agenda !important;
}

.anik-portal .wbs-dash-primary-row .wbs-card-attention{
  grid-area:attention !important;
}

.anik-portal .wb248-settings-nav{
  top:104px !important;
}

@media(max-width:1180px){
  .anik-portal .wbs-dash-primary-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-areas:
      "agenda"
      "attention" !important;
  }
}

@media(max-width:640px){
  .anik-portal .wbs-dash-primary-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-areas:
      "agenda"
      "attention" !important;
  }
  .anik-portal .wb248-settings-nav{
    top:216px !important;
  }
}

/* Candidate 24 — desplegables de Configuración del Portal Negocio.
   Parten cerrados. La flecha usa colores fijos con contraste alto en ambos
   estados (10,3:1 cerrada, 9,5:1 abierta) en vez de un glifo claro sobre fondo
   claro. El foco se marca con sombra interior porque la tarjeta recorta el
   outline. La apertura es breve y se desactiva con movimiento reducido. */
.anik-portal.anik-app-shell .wb248-settings-workspace details.wb248-settings-block > summary{
  grid-template-columns:minmax(0,1fr) 32px !important;
  /* Una regla anterior (.wb248-settings-block > summary) dejaba el encabezado
     sin clics porque los bloques estaban siempre abiertos; ahora deben poder
     abrirse y cerrarse con clic y toque. */
  pointer-events:auto !important;
  cursor:pointer !important;
  transition:background-color .15s ease !important;
}
.anik-portal.anik-app-shell .wb248-settings-workspace details.wb248-settings-block:not([open]) > summary{
  border-bottom-color:transparent !important;
}
.anik-portal.anik-app-shell .wb248-settings-workspace details.wb248-settings-block > summary:hover{
  background:var(--wb248-surface-3) !important;
}
.anik-portal.anik-app-shell .wb248-settings-workspace details.wb248-settings-block > summary:focus-visible{
  outline:none !important;
  box-shadow:inset 0 0 0 3px #1d4ed8 !important;
}
.anik-portal.anik-app-shell .wb248-settings-workspace details.wb248-settings-block > summary::after{
  content:"" !important;
  display:block !important;
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
  justify-self:center !important;
  align-self:center !important;
  width:30px !important;
  height:30px !important;
  margin:0 !important;
  border:1px solid #b8c7e0 !important;
  border-radius:999px !important;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23344054' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E") center / 16px 16px no-repeat !important;
  color:transparent !important;
  font-size:0 !important;
  line-height:0 !important;
  box-shadow:none !important;
  transform:none !important;
  transition:transform .2s ease,background-color .2s ease,border-color .2s ease !important;
}
.anik-portal.anik-app-shell .wb248-settings-workspace details.wb248-settings-block[open] > summary::after{
  border-color:#7d9bd6 !important;
  background:#e8efff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%230b3b8c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E") center / 16px 16px no-repeat !important;
  transform:rotate(180deg) !important;
}
@keyframes wb24-settings-open{
  from{opacity:0;transform:translateY(-4px)}
  to{opacity:1;transform:none}
}
@media (prefers-reduced-motion:no-preference){
  .anik-portal .wb248-settings-workspace details.wb248-settings-block[open] > :not(summary){
    animation:wb24-settings-open .18s ease-out both;
  }
}
@media (prefers-reduced-motion:reduce){
  .anik-portal.anik-app-shell .wb248-settings-workspace details.wb248-settings-block > summary,
  .anik-portal.anik-app-shell .wb248-settings-workspace details.wb248-settings-block > summary::after{
    transition:none !important;
  }
  .anik-portal .wb248-settings-workspace details.wb248-settings-block[open] > :not(summary){
    animation:none !important;
  }
}

/* Candidate 24 — Marketing: Mailing y Pop-up son vistas separadas; la pestaña
   activa se marca con aria-current (antes dependía de :target). */
.anik-portal .wb248-marketing-subnav a[aria-current="page"]{
  background:var(--wb248-brand) !important;
  color:#fff !important;
  border-color:var(--wb248-brand) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.10) !important;
}
.anik-portal .wb248-marketing-subnav a:focus-visible{
  outline:3px solid #1d4ed8 !important;
  outline-offset:2px !important;
}
.anik-portal .anik-marketing-grid.wb24-marketing-view-popup{
  grid-template-columns:minmax(0,1fr) !important;
}

/* Codex C24: data-wb-settings-section exposes the validated PHP focus/error
   section to the existing tab selectors. An explicit URL anchor takes priority;
   without an anchor the server-selected group is visible even without JS. */

/* ==========================================================================
   Candidate 25 — Agendador público
   --------------------------------------------------------------------------
   POR QUÉ @layer: workbook-booking.css envuelve todo el agendador en
   @layer anik-booking-redesign. Según la cascada en capas, un !important
   dentro de una capa gana SIEMPRE a un !important sin capa, por muy
   específico que sea este último. Comprobado en el navegador durante esta
   ronda: una regla nueva con especificidad (0,4,2) y !important escrita
   fuera de la capa quedaba inerte frente a una (0,3,0) de la capa. Por eso
   estas reglas se suman a la MISMA capa: al declararse después, dentro de
   ella deciden la especificidad y el orden normales.
   ========================================================================== */
@layer anik-booking-redesign {

.anik-booking{
  --wb25-card-radius:14px;
  --wb25-card-line:#dfe5ee;
  --wb25-card-line-strong:#cfd8e6;
  --wb25-card-bg:#fff;
  --wb25-card-bg-soft:#f8f9fc;
  --wb25-ink:#101828;
  --wb25-ink-2:#344054;
  --wb25-muted:#667085;
  --wb25-pick:#1d4ed8;
  --wb25-pick-soft:#eff4ff;
  --wb25-ease:cubic-bezier(.2,.8,.2,1);
}

/* --------------------------------------------------------------------------
   1. Descripción del negocio en la portada.
   El texto se recorta por alto exacto (line-height fijo x 3 líneas), así que
   el corte cae siempre entre líneas y nunca parte una palabra. El control es
   una casilla oculta a la vista pero enfocable + su <label>: funciona con
   clic, toque y teclado, y también con el JavaScript desactivado.
   -------------------------------------------------------------------------- */
html body .anik-booking .anik-biz-desc{
  max-width:680px !important;
  margin:0 0 4px !important;
}
html body .anik-booking .anik-biz-desc-switch{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  opacity:0 !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
}
html body .anik-booking .anik-biz-desc-text{
  font-size:16px !important;
  line-height:1.55 !important;
  max-height:calc(1.55em * 3) !important;
  overflow:hidden !important;
  transition:max-height var(--wb248-fast,140ms) var(--wb25-ease) !important;
}
html body .anik-booking .anik-biz-desc:not(.is-expandable) .anik-biz-desc-text,
html body .anik-booking .anik-biz-desc-switch:checked ~ .anik-biz-desc-text{
  max-height:none !important;
  overflow:visible !important;
}
/* Los párrafos de la descripción no se recortan por separado: el recorte lo
   hace el contenedor. Neutraliza las reglas históricas de .anik-booking-hero p
   que aplican -webkit-line-clamp a cada <p>. */
html body .anik-booking.anik-theme-workbook_saas .anik-booking-hero .anik-biz-desc-text p,
html body .anik-booking .anik-booking-hero .anik-biz-desc-text p{
  display:block !important;
  -webkit-line-clamp:none !important;
  overflow:visible !important;
  max-width:none !important;
  margin:0 0 .55em !important;
  font-size:inherit !important;
  line-height:inherit !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-booking-hero .anik-biz-desc-text p:last-child,
html body .anik-booking .anik-booking-hero .anik-biz-desc-text p:last-child{ margin-bottom:0 !important; }
html body .anik-booking .anik-biz-desc-toggle{
  display:none !important;
  align-items:center;
  gap:6px;
  width:max-content;
  margin-top:8px;
  padding:6px 12px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:12.5px;
  font-weight:700;
  cursor:pointer;
  transition:background var(--wb248-fast,140ms) var(--wb25-ease),border-color var(--wb248-fast,140ms) var(--wb25-ease);
}
html body .anik-booking .anik-biz-desc.is-expandable .anik-biz-desc-toggle{ display:inline-flex !important; }
html body .anik-booking .anik-biz-desc-toggle:hover{ background:rgba(255,255,255,.22); border-color:rgba(255,255,255,.7); }
html body .anik-booking .anik-biz-desc-toggle::after{
  content:"";
  width:7px;
  height:7px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
  transition:transform var(--wb248-fast,140ms) var(--wb25-ease);
}
html body .anik-booking .anik-biz-desc-less{ display:none !important; }
html body .anik-booking .anik-biz-desc-switch:checked ~ .anik-biz-desc-toggle .anik-biz-desc-more{ display:none !important; }
html body .anik-booking .anik-biz-desc-switch:checked ~ .anik-biz-desc-toggle .anik-biz-desc-less{ display:inline !important; }
html body .anik-booking .anik-biz-desc-switch:checked ~ .anik-biz-desc-toggle::after{ transform:translateY(2px) rotate(-135deg); }
html body .anik-booking .anik-biz-desc-switch:focus-visible ~ .anik-biz-desc-toggle{
  outline:3px solid #fff !important;
  outline-offset:2px !important;
}

/* --------------------------------------------------------------------------
   2. Formatos de servicios.
   Los dos formatos de listado (visual_list y simple_list) no se tocan: solo
   se define lo propio de «Tarjetas» y «Tarjetas grandes», con selectores que
   exigen la clase del formato.
   -------------------------------------------------------------------------- */
html body .anik-booking.anik-theme-workbook_saas .anik-service-grid.anik-view-cards{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(210px,1fr)) !important;
  gap:14px !important;
  align-items:stretch !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-grid.anik-view-cards_large{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(320px,1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
}

/* Tarjeta: columna real (media arriba, contenido abajo), no una fila. */
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:0 !important;
  min-height:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid var(--wb25-card-line) !important;
  border-radius:var(--wb25-card-radius) !important;
  background:var(--wb25-card-bg) !important;
  color:var(--wb25-ink) !important;
  box-shadow:0 1px 2px rgba(16,24,40,.05) !important;
  cursor:pointer !important;
  transition:border-color 160ms var(--wb25-ease),box-shadow 160ms var(--wb25-ease),transform 160ms var(--wb25-ease) !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card:hover,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card:hover{
  border-color:var(--wb25-card-line-strong) !important;
  box-shadow:0 10px 26px rgba(16,24,40,.10) !important;
  transform:translateY(-2px) !important;
}

/* Media: banda superior de proporción fija. */
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-media,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-media{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  height:120px !important;
  flex:0 0 auto !important;
  margin:0 !important;
  border:0 !important;
  border-bottom:1px solid var(--wb25-card-line) !important;
  border-radius:0 !important;
  background:var(--wb25-card-bg-soft) !important;
  overflow:hidden !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-media{ height:158px !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-media img,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:0 !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-media em,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-media em{
  font-style:normal !important;
  font-size:30px !important;
  font-weight:800 !important;
  color:var(--wb25-muted) !important;
}

/* Contenido: jerarquía nombre > descripción > datos. */
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-content,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-content{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:6px !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  padding:12px 14px 14px !important;
  background:transparent !important;
  border:0 !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-content{ padding:16px 18px 18px !important; gap:8px !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-content strong,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-content strong{
  display:block !important;
  width:100% !important;
  white-space:normal !important;
  overflow:hidden !important;
  text-overflow:clip !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  color:var(--wb25-ink) !important;
  font-size:14.5px !important;
  font-weight:700 !important;
  line-height:1.3 !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-content strong{ font-size:16.5px !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-content p,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-content p{
  margin:0 !important;
  color:var(--wb25-muted) !important;
  font-size:12.5px !important;
  line-height:1.45 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-content p{ -webkit-line-clamp:3 !important; font-size:13px !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-content small,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-content small{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:8px !important;
  margin-top:auto !important;
  padding-top:4px !important;
  color:var(--wb25-ink-2) !important;
  font-size:12.5px !important;
  font-weight:600 !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-meta-sep,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-meta-sep{ display:none !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-duration,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-duration{
  display:inline-flex !important;
  align-items:center !important;
  min-height:24px !important;
  padding:0 9px !important;
  border-radius:999px !important;
  background:var(--wb25-card-bg-soft) !important;
  border:1px solid var(--wb25-card-line) !important;
  color:var(--wb25-ink-2) !important;
  font-size:12px !important;
  font-weight:600 !important;
  font-variant-numeric:tabular-nums !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-price,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-price{
  color:var(--wb25-ink) !important;
  font-size:13.5px !important;
  font-weight:800 !important;
  font-variant-numeric:tabular-nums !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-price{ font-size:15px !important; }

/* Acción de selección visible, solo en Tarjetas grandes. */
html body .anik-booking.anik-theme-workbook_saas .anik-service-choose{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:40px !important;
  margin-top:4px !important;
  padding:0 14px !important;
  border:1px solid var(--wb25-pick) !important;
  border-radius:10px !important;
  background:var(--wb25-pick-soft) !important;
  color:var(--wb25-pick) !important;
  font-size:13px !important;
  font-weight:700 !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-choose-done{ display:none !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-service-card:has(input:checked) .anik-service-choose{
  background:var(--wb25-pick) !important;
  color:#fff !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-card:has(input:checked) .anik-service-choose-idle{ display:none !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-service-card:has(input:checked) .anik-service-choose-done{ display:inline !important; }

/* Selección evidente: borde grueso, halo, fondo teñido y una marca de forma
   propia (no solo color) arriba a la derecha. `.active` lo pone el JavaScript
   y `:has(input:checked)` cubre el caso sin JavaScript. */
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-check,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-check{
  position:absolute !important;
  top:10px !important;
  right:10px !important;
  width:24px !important;
  height:24px !important;
  border-radius:999px !important;
  border:1px solid var(--wb25-card-line-strong) !important;
  background:rgba(255,255,255,.92) !important;
  box-shadow:0 1px 2px rgba(16,24,40,.12) !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card.active,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card:has(input:checked),
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card.active,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card:has(input:checked){
  border-color:var(--wb25-pick) !important;
  background:var(--wb25-pick-soft) !important;
  box-shadow:0 0 0 3px rgba(29,78,216,.16),0 10px 26px rgba(16,24,40,.10) !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card.active .anik-service-check,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card:has(input:checked) .anik-service-check,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card.active .anik-service-check,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card:has(input:checked) .anik-service-check{
  border-color:var(--wb25-pick) !important;
  background:var(--wb25-pick) !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-check::after,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-check::after{
  content:"";
  position:absolute;
  left:8px;
  top:5px;
  width:6px;
  height:11px;
  border-right:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:rotate(42deg);
  opacity:0;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card.active .anik-service-check::after,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card:has(input:checked) .anik-service-check::after,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card.active .anik-service-check::after,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card:has(input:checked) .anik-service-check::after{
  opacity:1;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card:focus-within,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card:focus-within{
  outline:3px solid var(--wb25-pick) !important;
  outline-offset:2px !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-public-featured-badge,
html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-public-featured-badge{
  margin:0 !important;
  align-self:flex-start !important;
}

@media (max-width:640px){
  html body .anik-booking.anik-theme-workbook_saas .anik-service-grid.anik-view-cards{
    grid-template-columns:repeat(auto-fill,minmax(150px,1fr)) !important;
    gap:10px !important;
  }
  html body .anik-booking.anik-theme-workbook_saas .anik-service-grid.anik-view-cards_large{
    grid-template-columns:minmax(0,1fr) !important;
  }
  html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-media{ height:92px !important; }
  html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-content{ padding:10px 11px 12px !important; gap:5px !important; }
  html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-content strong{ font-size:13.5px !important; }
  html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-content p{ -webkit-line-clamp:2 !important; font-size:12px !important; }
  html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-content small{ gap:6px !important; }
}

/* --------------------------------------------------------------------------
   3. Categorías desplegables.
   Encabezado plano con una línea divisoria: no se anida una tarjeta dentro de
   otra. La flecha indica el estado además del texto.
   -------------------------------------------------------------------------- */
html body .anik-booking.anik-theme-workbook_saas .anik-service-groups{
  display:flex !important;
  flex-direction:column !important;
  gap:4px !important;
  margin:14px 18px 18px !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-category{
  border:0 !important;
  border-top:1px solid var(--wb25-card-line) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-category:first-child{ border-top:0 !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-service-category > summary.anik-service-category-head{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-height:48px !important;
  padding:10px 4px !important;
  list-style:none !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  color:var(--wb25-ink) !important;
  background:transparent !important;
  border:0 !important;
  border-radius:10px !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-category > summary.anik-service-category-head::-webkit-details-marker{ display:none !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-service-category-name{
  font-size:14px !important;
  font-weight:750 !important;
  color:var(--wb25-ink) !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-category-count{
  color:var(--wb25-muted) !important;
  font-size:12px !important;
  font-weight:600 !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-category > summary.anik-service-category-head::after{
  content:"";
  margin-left:auto;
  width:9px;
  height:9px;
  border-right:2px solid var(--wb25-ink-2);
  border-bottom:2px solid var(--wb25-ink-2);
  transform:translateY(-2px) rotate(45deg);
  transition:transform 160ms var(--wb25-ease);
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-category[open] > summary.anik-service-category-head::after{
  transform:translateY(2px) rotate(-135deg);
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-category > summary.anik-service-category-head:hover{
  background:var(--wb25-card-bg-soft) !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-category > summary.anik-service-category-head:focus-visible{
  outline:3px solid var(--wb25-pick) !important;
  outline-offset:2px !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-category .anik-service-grid{
  margin:0 0 14px !important;
  padding:0 !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-category[open] > .anik-service-grid{
  animation:wb25-group-open 180ms var(--wb25-ease);
}
@keyframes wb25-group-open{
  from{ opacity:0; transform:translateY(-4px); }
  to{ opacity:1; transform:none; }
}

/* Resumen del servicio elegido: visible aunque su categoría esté cerrada. */
html body .anik-booking.anik-theme-workbook_saas .anik-service-selected-summary{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 18px !important;
  padding:10px 12px !important;
  border:1px solid var(--wb25-pick) !important;
  border-radius:12px !important;
  background:var(--wb25-pick-soft) !important;
  color:var(--wb25-ink) !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-service-selected-summary[hidden]{ display:none !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-selected-summary-tag{
  display:inline-flex !important;
  align-items:center !important;
  min-height:22px !important;
  padding:0 8px !important;
  border-radius:999px !important;
  background:var(--wb25-pick) !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-selected-summary-name{ font-size:13.5px !important; font-weight:700 !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-selected-summary-meta{ color:var(--wb25-ink-2) !important; font-size:12.5px !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-selected-summary-locate{ margin-left:auto !important; }

/* --------------------------------------------------------------------------
   4. Elección del día y horarios.
   -------------------------------------------------------------------------- */
html body .anik-booking.anik-theme-workbook_saas .anik-date-field{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-date-field-label{
  font-size:13px !important;
  font-weight:700 !important;
  color:inherit !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-date-help{
  color:var(--wb25-muted) !important;
  font-size:12px !important;
  line-height:1.4 !important;
  /* Es una frase completa: la mayúscula de los rótulos la vuelve ilegible. */
  text-transform:none !important;
  letter-spacing:0 !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-date-quick{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:8px !important;
  margin:12px 18px 0 !important;
  padding-bottom:4px !important;
  overflow-x:auto !important;
  -webkit-overflow-scrolling:touch !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-date-quick[hidden]{ display:none !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-date-quick-label{
  flex:0 0 auto !important;
  color:var(--wb25-muted) !important;
  font-size:11px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-date-chip{
  flex:0 0 auto !important;
  display:inline-flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:64px !important;
  min-height:48px !important;
  padding:6px 10px !important;
  border:1px solid var(--wb25-card-line-strong) !important;
  border-radius:12px !important;
  background:var(--wb25-card-bg) !important;
  color:var(--wb25-ink) !important;
  cursor:pointer !important;
  transition:border-color 160ms var(--wb25-ease),background 160ms var(--wb25-ease) !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-date-chip b{ font-size:12.5px !important; font-weight:700 !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-date-chip small{ color:var(--wb25-muted) !important; font-size:11px !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-date-chip:hover{ border-color:var(--wb25-pick) !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-date-chip[aria-pressed="true"]{
  border-color:var(--wb25-pick) !important;
  background:var(--wb25-pick) !important;
  color:#fff !important;
  box-shadow:0 0 0 3px rgba(29,78,216,.16) !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-date-chip[aria-pressed="true"] small{ color:rgba(255,255,255,.86) !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-date-chip:focus-visible{
  outline:3px solid var(--wb25-pick) !important;
  outline-offset:2px !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-date-chosen{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  margin:10px 18px 0 !important;
  color:inherit !important;
  font-size:13px !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-date-chosen[hidden]{ display:none !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-date-chosen-label{
  display:inline-flex !important;
  align-items:center !important;
  min-height:22px !important;
  padding:0 8px !important;
  border-radius:999px !important;
  background:var(--wb25-pick) !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
}

/* Título, ayuda y estado de la lista de horas. Se les da ancho completo para
   que funcionen igual con la rejilla y con la fila desplazable de móvil. */
html body .anik-booking.anik-theme-workbook_saas .anik-slot-hint{
  width:100% !important;
  flex:1 1 100% !important;
  grid-column:1/-1 !important;
  margin:0 0 4px !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  color:var(--wb25-muted) !important;
  font-size:12px !important;
  font-weight:500 !important;
  min-height:0 !important;
  border-radius:0 !important;
  display:block !important;
  text-align:left !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-slots-note{
  margin:10px 18px 18px !important;
  padding:12px 14px !important;
  border:1px solid var(--wb25-card-line) !important;
  border-left-width:4px !important;
  border-radius:12px !important;
  background:var(--wb25-card-bg-soft) !important;
  color:var(--wb25-ink-2) !important;
  font-size:13px !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-slots-note[hidden]{ display:none !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-slots-note.is-warn{
  border-left-color:#b54708 !important;
  background:#fffaeb !important;
  color:#7a2e0e !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-slots-note.is-info{
  border-left-color:var(--wb25-pick) !important;
  background:var(--wb25-pick-soft) !important;
  color:#1e3a8a !important;
}
html body .anik-booking.anik-theme-workbook_saas .anik-slots-note-text{ margin:0 0 8px !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-slots-note-text:last-child{ margin-bottom:0 !important; }
html body .anik-booking.anik-theme-workbook_saas .anik-slots-note .anik-find-next-day{ min-height:38px !important; }
/* La hora elegida se distingue por marca y peso, no solo por color. */
html body .anik-booking.anik-theme-workbook_saas .anik-slot-btn[aria-pressed="true"]::before{
  content:"\2713";
  margin-right:6px;
  font-weight:900;
}

@media (max-width:640px){
  html body .anik-booking.anik-theme-workbook_saas .anik-service-groups,
  html body .anik-booking.anik-theme-workbook_saas .anik-service-selected-summary,
  html body .anik-booking.anik-theme-workbook_saas .anik-date-quick,
  html body .anik-booking.anik-theme-workbook_saas .anik-date-chosen,
  html body .anik-booking.anik-theme-workbook_saas .anik-slots-note{
    margin-left:12px !important;
    margin-right:12px !important;
  }
  html body .anik-booking.anik-theme-workbook_saas .anik-selected-summary-locate{ margin-left:0 !important; }
}

@media (prefers-reduced-motion:reduce){
  html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card,
  html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card,
  html body .anik-booking.anik-theme-workbook_saas .anik-date-chip,
  html body .anik-booking .anik-biz-desc-text,
  html body .anik-booking .anik-biz-desc-toggle,
  html body .anik-booking .anik-biz-desc-toggle::after,
  html body .anik-booking.anik-theme-workbook_saas .anik-service-category > summary.anik-service-category-head::after{
    transition:none !important;
  }
  html body .anik-booking.anik-theme-workbook_saas .anik-view-cards .anik-service-card:hover,
  html body .anik-booking.anik-theme-workbook_saas .anik-view-cards_large .anik-service-card:hover{
    transform:none !important;
  }
  html body .anik-booking.anik-theme-workbook_saas .anik-service-category[open] > .anik-service-grid{
    animation:none !important;
  }
}

} /* fin @layer anik-booking-redesign — Candidate 25 */

/* Candidate 25 — Portal Negocio (fuera de la capa del agendador). */
/* Vista previa de portada en Configuración: ahí la descripción es una muestra. */
.anik-portal .anik-cover-preview-desc{
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}

/* Candidate 34: encabezado del catálogo de servicios en móvil/tablet. El
   contenedor es flex en fila y la regla global `min-width:0` de ≤900px dejaba
   a las acciones ("+ Nuevo servicio", "Papelera") en ~40px, cortando su texto.
   Se apilan: texto arriba, acciones a todo el ancho. Solo este bloque. */
@media (max-width:900px){
  .anik-portal .wb248-services-command{flex-direction:column!important;align-items:stretch!important;}
  .anik-portal .wb248-services-command>.anik-services-actions-top{width:100%!important;}
}

/* Candidate 34: dos recortes reales a 320px (medidos con scrollWidth/clientWidth):
   1) el interruptor de visibilidad de un servicio quedaba en 120px y cortaba
      "Visible en agendador"; ahora ocupa el ancho de su contenido sin superar
      el de su fila.
   2) el título de la pantalla se truncaba con puntos suspensivos ("Consultas y
      catego…"); ahora baja a una segunda línea. */
@media (max-width:680px){
  .anik-portal .anik-service-row .anik-status-switch{width:auto!important;max-width:100%!important;}
}
@media (max-width:1180px){
  .anik-portal .anik-service-row .anik-status-switch{height:auto!important;}
  .anik-portal .anik-service-row .anik-status-switch span{white-space:normal!important;line-height:1.2!important;}
}
@media (max-width:520px){
  .anik-portal .anik-topbar h1{max-width:none!important;overflow:visible!important;text-overflow:clip!important;white-space:normal!important;overflow-wrap:break-word!important;}
  .anik-portal .anik-topbar-head>div{min-width:0!important;flex:1 1 0!important;}
}

/* Candidate 34: el botón "Confirmar reserva" medía width:100% MÁS los márgenes
   laterales del paso (12px en móvil, 18px en tablet) y sobresalía de su tarjeta
   (a 320px terminaba 3px fuera de la pantalla; a 768px, 17px fuera de su
   contenedor, que además recorta). public.css ya define el ancho correcto
   (100% menos los márgenes laterales) pero pierde frente a las reglas
   width:100%!important de la capa del agendador, así que se reafirma dentro
   de esa misma capa. */
@layer anik-booking-redesign{
  html body .anik-booking.anik-theme-workbook_saas .anik-step > .anik-submit{width:calc(100% - 36px)!important;max-width:100%!important;}
}
@media (max-width:640px){
  @layer anik-booking-redesign{
    html body .anik-booking.anik-theme-workbook_saas .anik-step > .anik-submit{width:calc(100% - 24px)!important;}
  }
}

/* Candidate 34: el listado de servicios necesitaba 832px de columnas mínimas
   pero entre 761px y ~1340px de pantalla solo dispone de 550–830px (la barra
   lateral ocupa el resto): el estado y las acciones quedaban fuera de vista,
   alcanzables solo con scroll horizontal dentro de la tabla. Se usan columnas
   más compactas (sin la columna vacía "Acciones", que ya va en su propia fila). */
@media (min-width:761px) and (max-width:1340px){
  .anik-portal .anik-service-table-head,
  .anik-portal .anik-service-row{grid-template-columns:minmax(128px,1.4fr) minmax(84px,1fr) 58px 84px 124px!important;}
  .anik-portal .anik-service-table-head>:nth-child(6){display:none!important;}
  .anik-portal .anik-service-row .anik-status-switch{width:auto!important;max-width:100%!important;height:auto!important;}
  .anik-portal .anik-service-row .anik-status-switch span{white-space:normal!important;line-height:1.2!important;}
}
