.dr-wrap{max-width:1080px;margin:0 auto;padding:34px 16px;font-family:inherit;color:var(--dr-text)}
.dr-premium-card{position:relative;background:linear-gradient(180deg,#fff,#fdfcff);border:1px solid rgba(47,64,95,.08);border-radius:var(--dr-radius);padding:34px;box-shadow:0 24px 70px rgba(47,64,95,.12);overflow:hidden}
.dr-hero{position:relative;min-height:290px;margin-bottom:26px;display:flex;align-items:center}.dr-hero-copy{position:relative;z-index:2;max-width:62%}
.dr-logo{max-width:180px;height:auto;margin:0 0 16px;display:block}.dr-kicker{display:inline-block;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--dr-color);font-weight:800;margin-bottom:10px}.dr-hero h2{font-size:42px;line-height:1.1;margin:0 0 12px;color:var(--dr-text);font-weight:800;letter-spacing:-.02em}.dr-subtitle{font-size:21px;color:var(--dr-text);margin:0 0 8px;line-height:1.45}.dr-intro{color:#5f6b7c;font-size:17px;line-height:1.65;margin:0 0 18px}.dr-benefits{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.dr-benefits span{background:#f5f1ff;color:var(--dr-text);border:1px solid rgba(139,92,246,.15);border-radius:999px;padding:9px 12px;font-size:14px;font-weight:700}.dr-hero-img{position:absolute;right:0;top:-6px;width:40%;height:310px;display:flex;align-items:flex-start;justify-content:flex-end;z-index:1;pointer-events:none}.dr-hero-img img{max-width:100%;max-height:310px;width:auto;height:auto;object-fit:contain;border-radius:0;box-shadow:none;background:transparent}
.dr-form{background:#fff;border:1px solid rgba(47,64,95,.08);border-radius:calc(var(--dr-radius) - 4px);padding:24px}.dr-form label,.dr-label{display:block;font-weight:800;margin:16px 0 7px;color:var(--dr-text)}.dr-form input,.dr-form select,.dr-form textarea{font-family:inherit;width:100%;box-sizing:border-box;border:1px solid #d9dee8;border-radius:14px;padding:14px 15px;font-size:16px;background:#fff;transition:.18s}.dr-form input:focus,.dr-form select:focus,.dr-form textarea:focus{outline:0;border-color:var(--dr-color);box-shadow:0 0 0 4px rgba(139,92,246,.13)}.dr-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dr-field-full{grid-column:1/-1}.dr-check{font-weight:400!important;display:flex!important;gap:10px;align-items:flex-start}.dr-check input{width:auto;margin-top:4px}.dr-btn{font-family:inherit;background:var(--dr-btn);color:#fff;border:0;border-radius:999px;padding:16px 30px;font-size:17px;font-weight:800;cursor:pointer;margin-top:16px;box-shadow:0 14px 30px rgba(139,92,246,.24);transition:.18s}.dr-btn:hover{transform:translateY(-1px);box-shadow:0 18px 36px rgba(139,92,246,.30)}.dr-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.dr-msg{margin-top:18px;padding:16px 18px;border-radius:16px;display:none;font-weight:700}.dr-msg.ok{display:block;background:#ecfdf5;color:#065f46;border:1px solid #bbf7d0}.dr-msg.err{display:block;background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
.dr-modality-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dr-mod-card{margin:0!important;padding:16px;border:1px solid #d9dee8;border-radius:18px;display:flex!important;gap:12px;align-items:center;cursor:pointer;background:#fff;transition:.18s}.dr-mod-card input{width:auto}.dr-mod-card:has(input:checked){border-color:var(--dr-color);background:#f7f2ff;box-shadow:0 0 0 3px rgba(139,92,246,.10)}.dr-mod-icon{font-size:22px}.dr-booking-grid{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(280px,1.05fr);gap:26px;align-items:start;margin-top:4px}.dr-calendar-field .dr-label,.dr-hours-field .dr-label{margin-top:16px}.dr-calendar{border:1px solid #e4e7ef;border-radius:22px;padding:18px;background:linear-gradient(180deg,#fff,#fbfaff);box-shadow:0 16px 38px rgba(47,64,95,.08)}.dr-cal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.dr-cal-title{font-weight:900;color:var(--dr-text);text-transform:capitalize}.dr-cal-nav{display:flex;gap:8px}.dr-cal-nav button{font-family:inherit;width:36px;height:36px;border:1px solid #e1e5ee;background:#fff;border-radius:999px;cursor:pointer;font-size:18px;line-height:1;color:var(--dr-text);transition:.18s}.dr-cal-nav button:hover{border-color:var(--dr-color);color:var(--dr-color);box-shadow:0 8px 18px rgba(47,64,95,.08)}.dr-cal-week,.dr-cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.dr-cal-week span{text-align:center;font-size:12px;font-weight:900;color:#667085;text-transform:uppercase}.dr-cal-day{font-family:inherit;min-height:42px;border:1px solid transparent;background:#fff;border-radius:14px;cursor:pointer;font-weight:800;color:var(--dr-text);transition:.18s}.dr-cal-day:hover{border-color:var(--dr-color);box-shadow:0 8px 18px rgba(139,92,246,.12)}.dr-cal-day.is-muted{opacity:.35;cursor:default;background:transparent}.dr-cal-day.is-today{border-color:rgba(139,92,246,.35);color:var(--dr-color)}.dr-cal-day.is-selected{background:var(--dr-color);border-color:var(--dr-color);color:#fff;box-shadow:0 12px 24px rgba(139,92,246,.22)}.dr-cal-day:disabled{opacity:.25;cursor:not-allowed;background:#f8fafc;color:#8a94a6;box-shadow:none;border-color:transparent}.dr-slots{min-height:52px;display:flex;flex-wrap:wrap;gap:10px;margin-top:7px}.dr-slot-empty{display:inline-flex;align-items:center;color:#667085;background:#f6f7fb;border:1px dashed #cfd5df;border-radius:14px;padding:14px 15px}.dr-slot{font-family:inherit;border:1px solid #d9dee8;background:#fff;border-radius:999px;padding:11px 16px;cursor:pointer;font-weight:800;color:var(--dr-text);transition:.18s}.dr-slot:hover,.dr-slot.active{border-color:var(--dr-color);background:var(--dr-color);color:#fff;box-shadow:0 12px 24px rgba(139,92,246,.20)}
@media(max-width:900px){.dr-hero{min-height:0}.dr-hero-copy{max-width:100%}.dr-hero-img{position:relative;width:100%;height:auto;margin-top:20px;justify-content:center}.dr-hero-img img{max-height:220px}.dr-hero{display:block}.dr-booking-grid{grid-template-columns:1fr}}
@media(max-width:820px){.dr-hero h2{font-size:32px}.dr-grid{grid-template-columns:1fr}.dr-premium-card{padding:22px}.dr-form{padding:18px}.dr-modality-cards{grid-template-columns:1fr}.dr-calendar{padding:14px}.dr-cal-day{min-height:38px}}

.dr-form-flow{padding:0;overflow:hidden}.dr-booking-first{padding:26px;border-bottom:1px solid rgba(47,64,95,.08);background:linear-gradient(180deg,#ffffff,#fbfaff)}.dr-client-details{padding:26px;background:#fff}.dr-section-title{display:flex;align-items:center;gap:12px;margin:0 0 20px}.dr-section-title span{width:34px;height:34px;border-radius:999px;background:var(--dr-color);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;box-shadow:0 10px 22px rgba(139,92,246,.20)}.dr-section-title strong{display:block;font-size:22px;color:var(--dr-text);line-height:1.2}.dr-section-title small{display:block;color:#667085;font-size:14px;margin-top:3px}.dr-booking-first .dr-booking-grid{margin-top:0}.dr-selected-summary{margin-top:18px;border:1px solid rgba(139,92,246,.22);background:#f7f2ff;color:var(--dr-text);border-radius:18px;padding:16px 18px;line-height:1.5}.dr-selected-summary strong{display:block;margin-bottom:4px}.dr-selected-summary span{font-weight:900;color:var(--dr-color)}.dr-hours-field{background:#fff;border:1px solid rgba(47,64,95,.08);border-radius:22px;padding:18px;box-shadow:0 16px 38px rgba(47,64,95,.06)}
@media(max-width:820px){.dr-booking-first,.dr-client-details{padding:18px}.dr-section-title strong{font-size:19px}.dr-hours-field{padding:14px}}
.dr-payment-box{grid-column:1/-1;background:linear-gradient(135deg,rgba(139,92,246,.10),rgba(139,92,246,.04));border:1px solid rgba(139,92,246,.20);border-radius:18px;padding:16px 18px;margin:10px 0 16px;color:var(--dr-text)}
.dr-payment-box strong{display:block;font-size:17px;margin-bottom:5px}
.dr-payment-box p{margin:0 0 8px;color:inherit;opacity:.82}
.dr-payment-box span{display:inline-block;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:999px;padding:7px 12px;font-weight:700;color:var(--dr-color)}

/* v2.4 responsive full-width */
.dr-wrap{max-width:none!important;width:100%!important;margin:0!important;padding:28px 0!important}
.dr-premium-card{border-radius:0!important;box-shadow:none!important;border-left:0!important;border-right:0!important;padding:34px clamp(18px,4vw,56px)!important}
.dr-form{box-shadow:none!important}
.dr-booking-grid{grid-template-columns:minmax(320px,1fr) minmax(320px,1fr)!important}
@media(max-width:820px){
  .dr-wrap{padding:0!important}
  .dr-premium-card{padding:22px 16px!important;border-radius:0!important;box-shadow:none!important;border-left:0!important;border-right:0!important;background:#fff!important}
  .dr-hero{margin-bottom:18px!important}
  .dr-hero h2{font-size:30px!important}
  .dr-subtitle{font-size:18px!important}
  .dr-intro{font-size:15px!important;line-height:1.5!important}
  .dr-benefits{gap:8px!important}
  .dr-benefits span{font-size:13px!important;padding:7px 10px!important}
  .dr-hero-img img{max-height:180px!important}
  .dr-form{border-radius:18px!important;border:1px solid rgba(47,64,95,.08)!important}
  .dr-booking-grid{grid-template-columns:1fr!important;gap:14px!important}
  .dr-calendar{box-shadow:none!important;padding:12px!important;border-radius:18px!important;max-width:100%!important;overflow:hidden!important}
  .dr-cal-week,.dr-cal-days{gap:4px!important}
  .dr-cal-day{min-height:40px!important;border-radius:12px!important;font-size:15px!important;padding:0!important}
  .dr-hours-field{box-shadow:none!important;border-radius:18px!important}
  .dr-slot{padding:10px 14px!important}
}
@media(min-width:1180px){.dr-premium-card{padding-left:6vw!important;padding-right:6vw!important}.dr-hero-copy{max-width:56%!important}.dr-hero-img{right:6vw!important}}


/* v2.4.1 formulario compacto */
.dr-premium-card{padding-top:24px!important;padding-bottom:24px!important}
.dr-hero{min-height:230px!important;margin-bottom:18px!important}
.dr-logo{max-width:140px!important;margin-bottom:10px!important}
.dr-kicker{font-size:12px!important;margin-bottom:7px!important}.dr-hero h2{font-size:clamp(30px,3.4vw,40px)!important;margin-bottom:8px!important}.dr-subtitle{font-size:19px!important;margin-bottom:5px!important}.dr-intro{font-size:15px!important;line-height:1.5!important;margin-bottom:12px!important}.dr-benefits{gap:8px!important;margin-top:12px!important}.dr-benefits span{padding:7px 10px!important;font-size:13px!important}.dr-hero-img{height:250px!important}.dr-hero-img img{max-height:250px!important}.dr-booking-first{padding:18px!important}.dr-client-details{padding:18px!important}.dr-section-title{margin-bottom:14px!important}.dr-section-title span{width:30px!important;height:30px!important}.dr-section-title strong{font-size:20px!important}.dr-section-title small{font-size:13px!important}.dr-booking-grid{gap:18px!important}.dr-calendar{padding:14px!important;border-radius:18px!important}.dr-cal-head{margin-bottom:10px!important}.dr-cal-nav button{width:32px!important;height:32px!important}.dr-cal-week,.dr-cal-days{gap:5px!important}.dr-cal-day{min-height:36px!important;border-radius:12px!important}.dr-hours-field{padding:14px!important;border-radius:18px!important}.dr-slots{gap:8px!important}.dr-slot{padding:9px 13px!important;font-size:14px!important}.dr-form label,.dr-label{margin:12px 0 6px!important}.dr-form input,.dr-form select,.dr-form textarea{padding:11px 13px!important;font-size:15px!important;border-radius:12px!important}.dr-grid{gap:14px!important}.dr-btn{padding:13px 24px!important;font-size:15px!important;margin-top:12px!important}.dr-payment-box{padding:13px 15px!important;margin:6px 0 12px!important;border-radius:15px!important}.dr-msg{padding:13px 15px!important;margin-top:14px!important;border-radius:14px!important}
@media(max-width:820px){.dr-premium-card{padding:16px 12px!important}.dr-hero{margin-bottom:12px!important}.dr-hero-img img{max-height:150px!important}.dr-booking-first,.dr-client-details{padding:14px!important}.dr-calendar{padding:10px!important}.dr-cal-day{min-height:36px!important;font-size:14px!important}.dr-hours-field{padding:12px!important}.dr-benefits span{font-size:12px!important}.dr-hero h2{font-size:28px!important}}


/* v2.5.2 empleados premium */
.dr-booking-first{padding:30px!important}
.dr-employee-premium{margin:4px 0 28px!important;max-width:none!important}
.dr-employee-premium .dr-label{font-size:18px!important;margin-bottom:12px!important;display:block!important}
.dr-employee-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:10px}
.dr-employee-card{font-family:inherit;appearance:none;border:1px solid rgba(47,64,95,.12);background:#fff;border-radius:20px;padding:16px;display:flex;align-items:center;gap:13px;text-align:left;cursor:pointer;color:var(--dr-text);box-shadow:0 10px 26px rgba(47,64,95,.05);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;position:relative;min-height:78px}
.dr-employee-card:hover{transform:translateY(-1px);border-color:var(--emp-color,var(--dr-color));box-shadow:0 16px 34px rgba(47,64,95,.09)}
.dr-employee-card.is-selected{border-color:var(--emp-color,var(--dr-color));background:linear-gradient(135deg,rgba(139,92,246,.10),rgba(139,92,246,.035));box-shadow:0 0 0 3px rgba(139,92,246,.08),0 16px 34px rgba(47,64,95,.09)}
.dr-employee-avatar{width:44px;height:44px;min-width:44px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:var(--emp-color,var(--dr-color));color:#fff;font-size:14px;font-weight:900;letter-spacing:.02em;box-shadow:0 10px 20px rgba(139,92,246,.18)}
.dr-employee-info{min-width:0;display:block}.dr-employee-info strong{display:block;font-size:16px;line-height:1.2;color:var(--dr-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dr-employee-info small{display:block;margin-top:4px;color:#667085;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dr-employee-check{margin-left:auto;width:26px;height:26px;min-width:26px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid rgba(47,64,95,.12);color:transparent;font-weight:900}.dr-employee-card.is-selected .dr-employee-check{background:var(--emp-color,var(--dr-color));border-color:var(--emp-color,var(--dr-color));color:#fff}.dr-employee-auto{margin-top:10px!important;padding:13px 16px!important;border-radius:18px!important;background:linear-gradient(135deg,rgba(139,92,246,.10),rgba(139,92,246,.04))!important}
.dr-booking-grid{margin-top:10px!important}.dr-calendar-field,.dr-hours-field{margin-top:0!important}.dr-client-details{padding-top:30px!important}
@media(max-width:820px){.dr-booking-first{padding:18px!important}.dr-employee-premium{margin-bottom:20px!important}.dr-employee-cards{grid-template-columns:1fr;gap:10px}.dr-employee-card{min-height:70px;padding:13px;border-radius:17px}.dr-employee-avatar{width:38px;height:38px;min-width:38px}.dr-employee-premium .dr-label{font-size:16px!important}}


/* v2.5.3 UX premium: aire, pesos y stripe */
.dr-section-title strong{font-weight:900!important}
.dr-section-title small{font-weight:400!important;color:#667085!important}
.dr-form label,.dr-label{font-weight:500!important}
.dr-form label input,.dr-form label textarea,.dr-form label select,.dr-form input,.dr-form textarea,.dr-form select{font-weight:400!important}
.dr-employee-premium{margin:12px 0 42px!important;padding:0 0 12px!important}
.dr-employee-premium .dr-label{font-weight:500!important;margin-bottom:18px!important}
.dr-employee-cards{gap:18px!important}
.dr-employee-card{padding:20px!important;min-height:92px!important;border-radius:22px!important}
.dr-booking-grid{margin-top:18px!important}
.dr-payment-box{display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:14px 22px!important;padding:18px 20px!important;margin:18px 0 18px!important;border-radius:20px!important}
.dr-payment-heading{font-weight:600!important;font-size:16px!important;color:var(--dr-text)!important}
.dr-payment-box p{grid-column:1/2!important;font-weight:400!important;font-size:15px!important;line-height:1.5!important;margin:0!important;color:#667085!important;opacity:1!important}
.dr-payment-amount{grid-column:2/3!important;grid-row:1/3!important;text-align:right;background:#fff;border:1px solid rgba(47,64,95,.10);border-radius:16px;padding:12px 16px;min-width:138px;box-shadow:0 10px 22px rgba(47,64,95,.05)}
.dr-payment-amount small{display:block;font-size:12px;font-weight:400;color:#667085;margin-bottom:3px}.dr-payment-amount span{display:block!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;font-size:22px!important;font-weight:700!important;color:var(--dr-color)!important}
.dr-stripe-safe{display:flex;align-items:center;gap:8px;margin-top:10px;color:#667085;font-size:13px;font-weight:400}.dr-stripe-safe .dr-lock{font-size:14px}.dr-stripe-logo{display:inline-flex;align-items:center;font-weight:800;font-size:18px;line-height:1;color:#635bff;letter-spacing:-.04em;font-style:italic}
@media(max-width:820px){.dr-employee-premium{margin-bottom:30px!important}.dr-employee-card{min-height:80px!important;padding:16px!important}.dr-payment-box{grid-template-columns:1fr!important}.dr-payment-amount{grid-column:1!important;grid-row:auto!important;text-align:left}.dr-stripe-safe{justify-content:center}}
/* v2.5.3 dashboard: un único fondo bajo fichas */
.drp-section:has(.drp-list.grid){background:linear-gradient(135deg,color-mix(in srgb,var(--drp-color) 9%,#fff),color-mix(in srgb,var(--drp-color) 4%,#fff))!important;border-color:color-mix(in srgb,var(--drp-color) 20%,#e2e8f0)!important;box-shadow:0 16px 45px rgba(47,64,95,.07)!important}
.drp-list.grid{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;gap:14px!important}



/* v2.5.4 ESTABLE PAULA — frontend compacto y sin separadores externos
   Base estable v2.5.3. No incluye la reorganización por pestañas de v2.6. */
.dr-wrap{
  max-width:980px!important;
  width:100%!important;
  margin:0 auto!important;
  padding:16px 16px 28px!important;
  font-family:inherit!important;
}
.dr-premium-card{
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  overflow:visible!important;
}
.dr-premium-card::before,
.dr-premium-card::after,
.dr-wrap::before,
.dr-wrap::after{
  display:none!important;
  content:none!important;
  border:0!important;
}
.dr-hero{
  max-width:820px!important;
  min-height:190px!important;
  margin:0 auto 12px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
}
.dr-hero-copy{
  max-width:60%!important;
}
.dr-kicker{
  font-size:11px!important;
  margin-bottom:6px!important;
}
.dr-hero h2{
  font-size:clamp(28px,3.1vw,38px)!important;
  line-height:1.08!important;
  margin-bottom:8px!important;
}
.dr-subtitle{
  font-size:18px!important;
  line-height:1.35!important;
  margin-bottom:6px!important;
  font-weight:400!important;
}
.dr-intro{
  font-size:14px!important;
  line-height:1.45!important;
  margin-bottom:10px!important;
  font-weight:400!important;
}
.dr-benefits{
  gap:7px!important;
  margin-top:10px!important;
}
.dr-benefits span{
  font-size:12px!important;
  padding:6px 9px!important;
  font-weight:600!important;
}
.dr-hero-img{
  right:0!important;
  top:0!important;
  width:36%!important;
  height:210px!important;
  align-items:flex-start!important;
}
.dr-hero-img img{
  max-height:210px!important;
}
.dr-form.dr-form-flow{
  max-width:760px!important;
  margin:0 auto!important;
  background:#fff!important;
  border:1px solid rgba(47,64,95,.08)!important;
  border-radius:20px!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.dr-booking-first{
  background:linear-gradient(180deg,#ffffff,#fbfaff)!important;
  padding:20px!important;
}
.dr-client-details{
  background:#fff!important;
  padding:20px!important;
}
.dr-section-title{
  margin-bottom:14px!important;
}
.dr-section-title strong{
  font-weight:800!important;
}
.dr-section-title small{
  font-weight:400!important;
}
.dr-form label,
.dr-label{
  font-weight:500!important;
}
.dr-form input,
.dr-form select,
.dr-form textarea{
  font-weight:400!important;
}
.dr-employee-premium{
  margin:10px 0 34px!important;
  padding:0!important;
}
.dr-employee-premium .dr-label{
  margin-bottom:15px!important;
  font-weight:500!important;
}
.dr-employee-cards{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}
.dr-employee-card{
  min-height:78px!important;
  padding:16px!important;
  border-radius:18px!important;
}
.dr-employee-info strong{
  font-weight:600!important;
}
.dr-employee-info small{
  font-weight:400!important;
}
.dr-booking-grid{
  grid-template-columns:minmax(260px,1fr) minmax(260px,1fr)!important;
  gap:18px!important;
  margin-top:16px!important;
}
.dr-calendar,
.dr-hours-field{
  border-radius:18px!important;
  box-shadow:none!important;
}
.dr-payment-box{
  border-radius:18px!important;
}
.dr-stripe-safe{
  font-weight:400!important;
}
.dr-stripe-logo{
  font-weight:800!important;
}
@media(max-width:900px){
  .dr-wrap{padding:12px 12px 24px!important;}
  .dr-hero{
    display:block!important;
    max-width:760px!important;
    min-height:0!important;
    margin-bottom:12px!important;
  }
  .dr-hero-copy{max-width:100%!important;}
  .dr-hero-img{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    margin-top:14px!important;
    justify-content:center!important;
  }
  .dr-hero-img img{max-height:180px!important;}
  .dr-form.dr-form-flow{max-width:760px!important;}
  .dr-employee-cards{grid-template-columns:1fr!important;}
  .dr-booking-grid{grid-template-columns:1fr!important;}
}
@media(max-width:520px){
  .dr-wrap{padding:8px 10px 20px!important;}
  .dr-hero h2{font-size:27px!important;}
  .dr-form.dr-form-flow{border-radius:16px!important;}
  .dr-booking-first,.dr-client-details{padding:16px!important;}
  .dr-benefits span{font-size:11px!important;}
}


/* v2.5.7 antelación mínima + más aire entre descripción y profesional */
.dr-section-title small{
  display:block!important;
  margin-bottom:20px!important;
}
.dr-employee-premium,
.dr-employee-auto{
  margin-top:20px!important;
}


/* v2.5.8 - Alineación fecha/hora y fondo suave por color principal */
.dr-booking-grid{
  align-items:start!important;
}
.dr-booking-grid .dr-hours-field{
  margin-top:31px!important;
}
.dr-calendar,
.dr-hours-field{
  background:rgba(139,92,246,.055)!important;
  background:color-mix(in srgb, var(--dr-color, #8b5cf6) 7%, #ffffff)!important;
  border:1px solid rgba(139,92,246,.16)!important;
  border-color:color-mix(in srgb, var(--dr-color, #8b5cf6) 18%, #ffffff)!important;
  border-radius:22px!important;
}
.dr-selected-summary{
  background:rgba(139,92,246,.10)!important;
  background:color-mix(in srgb, var(--dr-color, #8b5cf6) 10%, #ffffff)!important;
  border:1px solid rgba(139,92,246,.22)!important;
  border-color:color-mix(in srgb, var(--dr-color, #8b5cf6) 22%, #ffffff)!important;
  border-radius:18px!important;
}
@media(max-width:820px){
  .dr-booking-grid .dr-hours-field{
    margin-top:0!important;
  }
}


/* v2.5.9 - Cabecera centrada sin logo ni imagen */
.dr-logo,
.dr-hero-img,
.dr-hero-right,
.dr-hero-image{
  display:none!important;
}
.dr-hero{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  max-width:900px!important;
  min-height:auto!important;
  margin:0 auto 30px auto!important;
  padding:0 16px!important;
}
.dr-hero-copy{
  max-width:900px!important;
  width:100%!important;
  text-align:center!important;
}
.dr-hero h2{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.dr-subtitle,
.dr-intro{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.dr-benefits{
  justify-content:center!important;
}
@media(max-width:900px){
  .dr-hero{display:flex!important;margin-bottom:30px!important;}
  .dr-hero-copy{max-width:100%!important;text-align:center!important;}
}


/* v2.5.11 DEFINITIVA: cabecera centrada + ancho 1300 + móvil sin desplazamiento */
html body .dr-wrap.dr-premium,
html body .dr-wrap{
  width:min(1300px, calc(100% - 48px)) !important;
  max-width:1300px !important;
  margin:0 auto !important;
  padding:34px 0 70px !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}

html body .dr-premium-card{
  width:100% !important;
  max-width:1300px !important;
  margin:0 auto !important;
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
  overflow:visible !important;
  box-sizing:border-box !important;
}

html body .dr-hero,
html body .dr-hero-copy{
  width:100% !important;
  max-width:1300px !important;
  margin:0 auto 30px auto !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  min-height:auto !important;
  box-sizing:border-box !important;
}
html body .dr-hero-copy{margin:0 auto !important;}

html body .dr-logo,
html body .dr-hero-img,
html body .dr-hero-image,
html body .dr-hero-right{display:none !important;}

html body .dr-kicker,
html body .dr-hero h2,
html body .dr-subtitle,
html body .dr-intro{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
html body .dr-hero h2{
  max-width:1100px !important;
  font-size:clamp(30px,4vw,46px) !important;
}
html body .dr-subtitle{max-width:980px !important;}
html body .dr-benefits{justify-content:center !important;}

html body .dr-form.dr-form-flow{
  width:100% !important;
  max-width:1300px !important;
  margin:0 auto 80px auto !important;
  background:#fff !important;
  border:1px solid rgba(47,64,95,.08) !important;
  border-radius:24px !important;
  box-shadow:none !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}

html body .dr-booking-first,
html body .dr-client-details{
  padding:34px !important;
  box-sizing:border-box !important;
}

html body .dr-employee-cards{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
html body .dr-booking-grid{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:28px !important;
  align-items:start !important;
}
html body .dr-calendar,
html body .dr-hours-field{
  max-width:100% !important;
  box-sizing:border-box !important;
}

@media(max-width:900px){
  html body .dr-wrap.dr-premium,
  html body .dr-wrap{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:22px 14px 44px !important;
    overflow:hidden !important;
  }
  html body .dr-premium-card,
  html body .dr-form.dr-form-flow,
  html body .dr-hero,
  html body .dr-hero-copy{
    width:100% !important;
    max-width:100% !important;
  }
  html body .dr-form.dr-form-flow{
    border-radius:22px !important;
    margin-bottom:40px !important;
    overflow:hidden !important;
  }
  html body .dr-booking-first,
  html body .dr-client-details{
    padding:20px !important;
  }
  html body .dr-employee-cards,
  html body .dr-booking-grid{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  html body .dr-booking-grid .dr-hours-field{margin-top:0 !important;}
  html body .dr-hero h2{font-size:clamp(28px,8vw,38px) !important;}
}

@media(max-width:520px){
  html body .dr-wrap.dr-premium,
  html body .dr-wrap{
    padding:18px 10px 36px !important;
  }
  html body .dr-booking-first,
  html body .dr-client-details{
    padding:16px !important;
  }
  html body .dr-employee-card{min-width:0 !important;}
  html body .dr-cal-week,
  html body .dr-cal-days{gap:4px !important;}
  html body .dr-cal-day{min-width:0 !important;}
}


/* v2.5.12 - Alineación final de indicadores de pasos */
html body .dr-section-title{
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
}
html body .dr-section-title > span{
  flex:0 0 34px !important;
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  margin-top:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
}
html body .dr-section-title > div{
  display:block !important;
  min-width:0 !important;
  padding-top:0 !important;
}
html body .dr-section-title strong{
  display:block !important;
  line-height:1.18 !important;
  margin:0 !important;
}
html body .dr-section-title small{
  display:block !important;
  line-height:1.35 !important;
  margin-top:3px !important;
  margin-bottom:20px !important;
}
@media(max-width:520px){
  html body .dr-section-title{gap:10px !important;}
  html body .dr-section-title > span{
    flex-basis:30px !important;
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
    font-size:15px !important;
  }
}


/* DASHBOARD MÁS LIGERO */
.dr-dashboard .appointment-time,
.dr-dashboard .dr-time{font-weight:700!important;}
.dr-dashboard .appointment-name,
.dr-dashboard .dr-patient{font-weight:600!important;}
.dr-dashboard .appointment-meta,
.dr-dashboard .appointment-message,
.dr-dashboard .appointment-email,
.dr-dashboard .appointment-phone{font-weight:400!important;}
.dr-dashboard .appointment-badge{font-weight:500!important;}
.dr-dashboard .appointment-actions button{font-weight:500!important;}

/* Alineación pasos */
.dr-section-title{
display:flex!important;
align-items:flex-start!important;
gap:12px!important;
}
.dr-section-title span{
flex:0 0 34px!important;
margin-top:2px!important;
}


/* v2.5.13 - Dashboard premium: menos negrita */
html body .dr-client-panel,
html body .dr-client-panel *,
html body .dr-panel,
html body .dr-dashboard,
html body .dr-dashboard *{
  font-weight:400 !important;
}
html body .dr-dashboard .dr-card-time,
html body .dr-dashboard .dr-time,
html body .dr-client-panel .dr-card-time,
html body .dr-client-panel .dr-time,
html body .dr-panel .dr-card-time,
html body .dr-panel .dr-time{
  font-weight:700 !important;
}
html body .dr-dashboard .dr-card-name,
html body .dr-dashboard .dr-patient,
html body .dr-dashboard .appointment-name,
html body .dr-client-panel .dr-card-name,
html body .dr-client-panel .dr-patient,
html body .dr-panel .dr-card-name,
html body .dr-panel .dr-patient{
  font-weight:600 !important;
}
html body .dr-dashboard .dr-badge,
html body .dr-dashboard .appointment-badge,
html body .dr-client-panel .dr-badge,
html body .dr-panel .dr-badge{
  font-weight:500 !important;
}
html body .dr-dashboard button,
html body .dr-dashboard .button,
html body .dr-client-panel button,
html body .dr-client-panel .button,
html body .dr-panel button,
html body .dr-panel .button{
  font-weight:500 !important;
}


/* v2.5.14 - Panel privado/dashboard menos negrita (selectores reales .drp) */
html body .drp,
html body .drp *{
  font-weight:400 !important;
}
html body .drp .drp-time,
html body .drp .drp-stat strong,
html body .drp .drp-event strong{
  font-weight:700 !important;
}
html body .drp .drp-name,
html body .drp .drp-item .drp-name,
html body .drp .drp-modal h3{
  font-weight:600 !important;
}
html body .drp .drp-meta,
html body .drp .drp-modal-field,
html body .drp .drp-modal-notes,
html body .drp .drp-head p,
html body .drp .drp-stat span{
  font-weight:400 !important;
}
html body .drp .drp-badge,
html body .drp .drp-tab,
html body .drp .drp-modal-field small{
  font-weight:500 !important;
}
html body .drp .drp-btn,
html body .drp button,
html body .drp input[type=submit]{
  font-weight:500 !important;
}
html body .drp .drp-section h2,
html body .drp .drp-view-title h2{
  font-weight:500 !important;
}


/* v2.5.14.1 - Ajuste CSS: todos los morados del frontend heredan el color principal configurado */
.dr-wrap{
  --dr-soft-3: color-mix(in srgb, var(--dr-color, #8b5cf6) 3%, #ffffff);
  --dr-soft-4: color-mix(in srgb, var(--dr-color, #8b5cf6) 4%, #ffffff);
  --dr-soft-6: color-mix(in srgb, var(--dr-color, #8b5cf6) 6%, #ffffff);
  --dr-soft-8: color-mix(in srgb, var(--dr-color, #8b5cf6) 8%, #ffffff);
  --dr-soft-10: color-mix(in srgb, var(--dr-color, #8b5cf6) 10%, #ffffff);
  --dr-soft-14: color-mix(in srgb, var(--dr-color, #8b5cf6) 14%, #ffffff);
  --dr-soft-18: color-mix(in srgb, var(--dr-color, #8b5cf6) 18%, #ffffff);
  --dr-soft-22: color-mix(in srgb, var(--dr-color, #8b5cf6) 22%, #ffffff);
  --dr-shadow-8: color-mix(in srgb, var(--dr-color, #8b5cf6) 8%, transparent);
  --dr-shadow-10: color-mix(in srgb, var(--dr-color, #8b5cf6) 10%, transparent);
  --dr-shadow-12: color-mix(in srgb, var(--dr-color, #8b5cf6) 12%, transparent);
  --dr-shadow-18: color-mix(in srgb, var(--dr-color, #8b5cf6) 18%, transparent);
  --dr-shadow-22: color-mix(in srgb, var(--dr-color, #8b5cf6) 22%, transparent);
  --dr-shadow-24: color-mix(in srgb, var(--dr-color, #8b5cf6) 24%, transparent);
  --dr-shadow-30: color-mix(in srgb, var(--dr-color, #8b5cf6) 30%, transparent);
}

.dr-premium-card{
  background:linear-gradient(180deg,#fff,var(--dr-soft-3))!important;
}
.dr-benefits span{
  background:var(--dr-soft-8)!important;
  border-color:var(--dr-soft-22)!important;
}
.dr-form input:focus,
.dr-form select:focus,
.dr-form textarea:focus{
  border-color:var(--dr-color)!important;
  box-shadow:0 0 0 4px var(--dr-shadow-12)!important;
}
.dr-btn{
  background:var(--dr-btn)!important;
  box-shadow:0 14px 30px var(--dr-shadow-24)!important;
}
.dr-btn:hover{
  box-shadow:0 18px 36px var(--dr-shadow-30)!important;
}
.dr-mod-card:has(input:checked){
  border-color:var(--dr-color)!important;
  background:var(--dr-soft-10)!important;
  box-shadow:0 0 0 3px var(--dr-shadow-10)!important;
}
.dr-calendar,
.dr-hours-field{
  background:var(--dr-soft-6)!important;
  border-color:var(--dr-soft-18)!important;
}
.dr-cal-day:hover{
  border-color:var(--dr-color)!important;
  box-shadow:0 8px 18px var(--dr-shadow-12)!important;
}
.dr-cal-day.is-today{
  border-color:var(--dr-soft-22)!important;
  color:var(--dr-color)!important;
}
.dr-cal-day.is-selected,
.dr-slot:hover,
.dr-slot.active{
  background:var(--dr-color)!important;
  border-color:var(--dr-color)!important;
  color:#fff!important;
  box-shadow:0 12px 24px var(--dr-shadow-22)!important;
}
.dr-booking-first{
  background:linear-gradient(180deg,#ffffff,var(--dr-soft-3))!important;
}
.dr-section-title span{
  background:var(--dr-color)!important;
  box-shadow:0 10px 22px var(--dr-shadow-18)!important;
}
.dr-selected-summary,
.dr-payment-box{
  background:linear-gradient(135deg,var(--dr-soft-10),var(--dr-soft-4))!important;
  border-color:var(--dr-soft-22)!important;
}
.dr-payment-amount span,
.dr-selected-summary span{
  color:var(--dr-color)!important;
}
.dr-employee-card.is-selected{
  border-color:var(--emp-color,var(--dr-color))!important;
  background:linear-gradient(135deg,var(--dr-soft-10),var(--dr-soft-4))!important;
  box-shadow:0 0 0 3px var(--dr-shadow-8),0 16px 34px rgba(47,64,95,.09)!important;
}
.dr-employee-avatar{
  background:var(--emp-color,var(--dr-color))!important;
  box-shadow:0 10px 20px var(--dr-shadow-18)!important;
}
.dr-employee-auto{
  background:linear-gradient(135deg,var(--dr-soft-10),var(--dr-soft-4))!important;
}



/* v2.6.18 - FIX definitivo fondo completo Citas de hoy
   Más específico que .drp-section:has(.drp-list.grid), para que no herede el color principal. */
html body .drp section.drp-section.drp-section-today,
html body .drp section.drp-section.drp-section-today:has(.drp-list.grid),
html body .drp .drp-section.drp-section-today,
html body .drp .drp-section.drp-section-today:has(.drp-list.grid){
    background: var(--drp-today-bg, #ecfdf3) !important;
    background-image: none !important;
    border: 1px solid color-mix(in srgb, var(--drp-today-bg, #ecfdf3) 60%, #22c55e) !important;
    border-radius: 24px !important;
    padding: 24px !important;
    box-shadow: 0 14px 42px rgba(4,120,87,.08) !important;
}

html body .drp section.drp-section.drp-section-today > h2,
html body .drp .drp-section.drp-section-today > h2{
    background: transparent !important;
    background-image: none !important;
    color: var(--drp-text) !important;
    margin: 0 0 24px 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
}

html body .drp section.drp-section.drp-section-today .drp-list,
html body .drp section.drp-section.drp-section-today .drp-list.grid,
html body .drp .drp-section.drp-section-today .drp-list,
html body .drp .drp-section.drp-section-today .drp-list.grid{
    background: transparent !important;
    background-image: none !important;
}

html body .drp section.drp-section.drp-section-today .drp-item,
html body .drp .drp-section.drp-section-today .drp-item{
    background: #fff !important;
    background-image: none !important;
}



/* v2.6.20 - FIX color botón independiente del color principal */
.dr-wrap .dr-btn{
  background:var(--dr-btn,var(--dr-color,#8b5cf6))!important;
  border-color:var(--dr-btn,var(--dr-color,#8b5cf6))!important;
  box-shadow:0 14px 30px color-mix(in srgb,var(--dr-btn,var(--dr-color,#8b5cf6)) 24%,transparent)!important;
}
.dr-wrap .dr-btn:hover{
  box-shadow:0 18px 36px color-mix(in srgb,var(--dr-btn,var(--dr-color,#8b5cf6)) 30%,transparent)!important;
}


/* v2.6.21 - Color de botón realmente independiente en frontend y panel */
html body .dr-wrap .dr-btn,
html body .dr-wrap button.dr-btn,
html body .dr-wrap input[type="submit"].dr-btn{
  background:var(--dr-btn,var(--dr-color,#8b5cf6))!important;
  border-color:var(--dr-btn,var(--dr-color,#8b5cf6))!important;
  color:#fff!important;
  box-shadow:0 14px 30px color-mix(in srgb,var(--dr-btn,var(--dr-color,#8b5cf6)) 24%,transparent)!important;
}
html body .dr-wrap .dr-btn:hover,
html body .dr-wrap button.dr-btn:hover{
  box-shadow:0 18px 36px color-mix(in srgb,var(--dr-btn,var(--dr-color,#8b5cf6)) 30%,transparent)!important;
}
html body .drp .drp-btn.primary,
html body .drp button.drp-btn.primary,
html body .drp input[type="submit"].drp-btn.primary{
  background:var(--drp-btn,var(--drp-color,#8b5cf6))!important;
  border-color:var(--drp-btn,var(--drp-color,#8b5cf6))!important;
  color:#fff!important;
}

/* v2.6.32 - días bloqueados claramente visibles en el calendario del formulario */
html body .dr-cal-day.is-blocked,
html body .dr-cal-day.is-blocked:disabled{
  position:relative!important;
  opacity:1!important;
  cursor:not-allowed!important;
  background:#fff5f5!important;
  color:#991b1b!important;
  border-color:#fecaca!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
html body .dr-cal-day.is-blocked .dr-cal-day-num{
  position:relative!important;
  z-index:2!important;
  text-decoration:line-through!important;
  font-weight:900!important;
}
html body .dr-cal-day.is-blocked .dr-cal-blocked-strip{
  position:absolute!important;
  left:-12%!important;
  right:-12%!important;
  top:50%!important;
  height:5px!important;
  transform:rotate(-14deg)!important;
  background:#ef4444!important;
  border-radius:999px!important;
  opacity:.95!important;
  z-index:1!important;
}
html body .dr-cal-day.is-blocked:hover{
  border-color:#fecaca!important;
  box-shadow:none!important;
}
html body .dr-cal-day.is-muted:disabled{
  opacity:.25!important;
  background:transparent!important;
  color:#8a94a6!important;
  border-color:transparent!important;
}

/* v2.6.52 - no reservables: fondo y borde rojo, sin franja */
html body .dr-cal-day.is-blocked .dr-cal-blocked-strip{display:none!important;}
html body .dr-cal-day.is-blocked,html body .dr-cal-day.is-full,html body .dr-cal-day.is-full:disabled{background:#fff5f5!important;border-color:#fecaca!important;color:#991b1b!important;opacity:1!important;cursor:not-allowed!important;box-shadow:none!important;}
html body .dr-cal-day.is-blocked .dr-cal-day-num,html body .dr-cal-day.is-full .dr-cal-day-num{color:#991b1b!important;text-decoration:none!important;font-weight:900!important;}
html body .dr-cal-day.is-blocked:hover,html body .dr-cal-day.is-full:hover{border-color:#fecaca!important;box-shadow:none!important;}


/* v2.6.58 - Citas con borde completo por empleado, sin franja lateral */
html body .drp .drp-item[data-emp-color]{
  border:2px solid var(--drp-emp-color,var(--drp-color))!important;
  border-left:2px solid var(--drp-emp-color,var(--drp-color))!important;
  background:#fff!important;
}
html body .drp .drp-event[data-emp-color]{
  border:2px solid var(--drp-emp-color,var(--drp-color))!important;
  border-left:2px solid var(--drp-emp-color,var(--drp-color))!important;
}


/* v2.6.60 - móvil ultra compacto: ganar espacio real */
@media(max-width:760px){
  html body .drp{
    padding:12px 10px 28px!important;
    overflow-x:hidden!important;
  }
  html body .drp .drp-head{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    align-items:start!important;
    gap:8px!important;
    margin:0 0 10px!important;
  }
  html body .drp .drp-head h1{
    font-size:26px!important;
    line-height:1.05!important;
    margin:0 0 4px!important;
    letter-spacing:-.02em!important;
  }
  html body .drp .drp-head p{
    font-size:14px!important;
    line-height:1.35!important;
    max-width:260px!important;
  }
  html body .drp .drp-head .drp-btn{
    margin-top:0!important;
    padding:8px 11px!important;
    font-size:12px!important;
    white-space:nowrap!important;
  }

  /* KPIs: 2 columnas, mucho menos alto */
  html body .drp .drp-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    margin:10px 0!important;
  }
  html body .drp .drp-stat{
    min-height:0!important;
    padding:10px 12px!important;
    border-radius:14px!important;
    box-shadow:0 4px 12px rgba(47,64,95,.035)!important;
  }
  html body .drp .drp-stat span{
    font-size:11px!important;
    line-height:1.15!important;
    margin:0 0 4px!important;
  }
  html body .drp .drp-stat strong{
    font-size:22px!important;
    line-height:1!important;
    margin:0!important;
  }

  /* Empleados: tarjetas pequeñas en 2 columnas */
  html body .drp .drp-employee-cards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    margin:10px 0!important;
  }
  html body .drp .drp-employee-card{
    min-height:0!important;
    padding:9px 10px!important;
    border-radius:14px!important;
    border-width:2px!important;
    box-shadow:0 4px 12px rgba(47,64,95,.035)!important;
  }
  html body .drp .drp-employee-name{
    font-size:13px!important;
    line-height:1.15!important;
    gap:6px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .drp .drp-employee-dot{
    width:7px!important;
    height:7px!important;
    flex:0 0 7px!important;
  }
  html body .drp .drp-employee-pills{
    gap:4px!important;
    margin-top:6px!important;
  }
  html body .drp .drp-employee-card small{
    font-size:10.5px!important;
    line-height:1!important;
    padding:4px 6px!important;
    max-width:100%!important;
    white-space:nowrap!important;
  }

  /* Buscador/filtros/tabs más bajos */
  html body .drp .drp-search{
    padding:10px!important;
    border-radius:14px!important;
    margin:10px 0!important;
    gap:8px!important;
  }
  html body .drp .drp-search label{
    font-size:11px!important;
    margin-bottom:4px!important;
  }
  html body .drp .drp-search input,
  html body .drp .drp-search select{
    min-height:38px!important;
    padding:8px 11px!important;
    font-size:13px!important;
    border-radius:999px!important;
  }
  html body .drp .drp-tabs{
    margin:10px 0!important;
    gap:6px!important;
  }
  html body .drp .drp-tab,
  html body .drp .drp-btn{
    padding:8px 11px!important;
    font-size:12px!important;
  }

  /* Secciones y fichas de lista compactas */
  html body .drp .drp-section{
    margin:10px 0!important;
    padding:12px!important;
    border-radius:16px!important;
  }
  html body .drp .drp-section h2{
    font-size:16px!important;
    margin:0 0 10px!important;
  }
  html body .drp .drp-list{
    gap:8px!important;
  }
  html body .drp .drp-item{
    grid-template-columns:1fr!important;
    gap:7px!important;
    padding:12px!important;
    border-radius:14px!important;
  }
  html body .drp .drp-time{
    font-size:19px!important;
  }
  html body .drp .drp-name{
    font-size:14px!important;
  }
  html body .drp .drp-meta{
    font-size:11px!important;
    line-height:1.25!important;
    margin-top:2px!important;
  }
  html body .drp .drp-badge{
    font-size:10.5px!important;
    padding:4px 7px!important;
    margin:5px 4px 0 0!important;
  }
  html body .drp .drp-actions{
    display:flex!important;
    gap:6px!important;
    justify-content:flex-start!important;
  }
  html body .drp .drp-actions .drp-btn,
  html body .drp .drp-actions button{
    width:auto!important;
    padding:8px 10px!important;
    font-size:12px!important;
  }
  html body .drp .drp-date-pill{
    padding:5px 8px!important;
    font-size:11px!important;
  }
}
@media(max-width:390px){
  html body .drp .drp-employee-cards{grid-template-columns:1fr!important;}
  html body .drp .drp-head{grid-template-columns:1fr!important;}
  html body .drp .drp-head .drp-btn{justify-self:start!important;}
}


/* v2.6.61 - Modal de cita compacto + acciones visibles */
html body .drp .drp-modal-card{
  width:min(680px,calc(100vw - 28px))!important;
  max-height:calc(100dvh - 28px)!important;
  overflow:auto!important;
  padding:20px 22px!important;
  border-radius:22px!important;
}
html body .drp .drp-modal h3{
  font-size:21px!important;
  line-height:1.15!important;
  margin:0 0 6px!important;
}
html body .drp .drp-modal #drp-modal-sub{
  font-size:13px!important;
  margin:0 0 14px!important;
  line-height:1.25!important;
}
html body .drp .drp-modal-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin:12px 0!important;
}
html body .drp .drp-modal-field,
html body .drp .drp-modal-notes{
  padding:12px 14px!important;
  border-radius:15px!important;
  min-height:auto!important;
}
html body .drp .drp-modal-field small{
  display:block!important;
  font-size:12px!important;
  line-height:1.1!important;
  margin-bottom:5px!important;
}
html body .drp .drp-modal-field strong,
html body .drp .drp-modal-notes{
  font-size:16px!important;
  line-height:1.25!important;
}
html body .drp .drp-modal-actions{
  position:sticky!important;
  bottom:0!important;
  background:#fff!important;
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  padding-top:12px!important;
  margin-top:12px!important;
  border-top:1px solid var(--drp-border,#dbe2ee)!important;
  z-index:3!important;
}
html body .drp .drp-modal-actions .drp-btn,
html body .drp .drp-modal-actions button{
  padding:9px 13px!important;
  font-size:13px!important;
  min-height:38px!important;
  border-radius:999px!important;
}
html body .drp .drp-modal-actions .drp-modal-reprogram{display:inline-flex!important;}
html body .drp .drp-modal-meet-link{align-items:center!important;gap:6px!important;}

@media(max-width:640px){
  html body .drp .drp-modal-card{
    width:calc(100vw - 20px)!important;
    max-height:calc(100dvh - 20px)!important;
    padding:14px!important;
    border-radius:18px!important;
  }
  html body .drp .drp-modal-close{
    width:34px!important;
    height:34px!important;
    top:10px!important;
    right:10px!important;
  }
  html body .drp .drp-modal h3{
    font-size:18px!important;
    padding-right:38px!important;
  }
  html body .drp .drp-modal #drp-modal-sub{
    font-size:11.5px!important;
    margin-bottom:10px!important;
  }
  html body .drp .drp-modal-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    margin:8px 0!important;
  }
  html body .drp .drp-modal-field,
  html body .drp .drp-modal-notes{
    padding:9px 10px!important;
    border-radius:12px!important;
  }
  html body .drp .drp-modal-field small{
    font-size:10.5px!important;
    margin-bottom:3px!important;
  }
  html body .drp .drp-modal-field strong,
  html body .drp .drp-modal-notes{
    font-size:13px!important;
    line-height:1.2!important;
    word-break:break-word!important;
  }
  html body .drp .drp-modal > .drp-modal-field:last-of-type{
    margin-top:7px!important;
  }
  html body .drp .drp-modal-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    padding-top:9px!important;
    margin-top:9px!important;
  }
  html body .drp .drp-modal-actions form,
  html body .drp .drp-modal-actions .drp-btn,
  html body .drp .drp-modal-actions button{
    width:100%!important;
  }
  html body .drp .drp-modal-actions .drp-modal-meet-link,
  html body .drp .drp-modal-actions .drp-modal-reprogram{
    display:inline-flex!important;
    justify-content:center!important;
  }
  html body .drp .drp-modal-actions form:last-child{grid-column:1/-1!important;}
}

@media(max-width:390px){
  html body .drp .drp-modal-grid{gap:6px!important;}
  html body .drp .drp-modal-field strong,
  html body .drp .drp-modal-notes{font-size:12.5px!important;}
}


/* v2.7.12 - modal escritorio: botones centrados y WhatsApp debajo */
@media(min-width:641px){
  html body .drp .drp-modal-actions{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:12px!important;
  }
  html body .drp .drp-modal-actions form{
    display:inline-flex!important;
  }
  html body .drp .drp-modal-actions .drp-btn,
  html body .drp .drp-modal-actions button{
    min-width:140px!important;
    height:42px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
  }
  html body .drp .drp-modal-actions .drp-whatsapp-wrap{
    flex:0 0 100%!important;
    width:100%!important;
    margin:25px auto 0 auto!important;
    justify-content:center!important;
    order:99!important;
  }
  html body .drp .drp-modal-actions .drp-whatsapp-wrap .drp-btn.whatsapp{
    width:60px!important;
    height:60px!important;
    min-width:60px!important;
    padding:0!important;
    margin:0 auto!important;
  }
  html body .drp .drp-modal-actions .drp-whatsapp-wrap .drp-btn.whatsapp img{
    width:54px!important;
    height:54px!important;
  }
}

/* v2.7.13 - modal detalle: botones centrados y WhatsApp debajo (solo escritorio) */
@media (min-width:641px){
  html body .drp .drp-modal-actions{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:12px!important;
  }
  html body .drp .drp-modal-actions form{
    display:inline-flex!important;
    margin:0!important;
  }
  html body .drp .drp-modal-actions > .drp-btn,
  html body .drp .drp-modal-actions form > .drp-btn,
  html body .drp .drp-modal-actions form > button{
    min-width:140px!important;
    width:140px!important;
    height:42px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
  }
  html body .drp .drp-modal-actions .drp-modal-whatsapp-row{
    flex:0 0 100%!important;
    width:100%!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin:25px 0 0 0!important;
    order:999!important;
  }
  html body .drp .drp-modal-actions .drp-modal-whatsapp-row .drp-whatsapp-wrap{
    margin:0!important;
    width:auto!important;
    flex:0 0 auto!important;
    display:inline-flex!important;
    justify-content:center!important;
    align-items:center!important;
    order:0!important;
  }
  html body .drp .drp-modal-actions .drp-modal-whatsapp-row .drp-btn.whatsapp{
    width:60px!important;
    height:60px!important;
    min-width:60px!important;
    padding:0!important;
    margin:0!important;
  }
  html body .drp .drp-modal-actions .drp-modal-whatsapp-row .drp-btn.whatsapp img{
    width:54px!important;
    height:54px!important;
  }
}


/* v2.7.14 - ajuste final modal escritorio: botones centrados y WhatsApp centrado debajo */
@media (min-width:641px){
  html body .drp .drp-modal-actions{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:12px!important;
    text-align:center!important;
  }
  html body .drp .drp-modal-actions > .drp-btn:not(.whatsapp),
  html body .drp .drp-modal-actions > form:not(.drp-whatsapp-wrap) .drp-btn,
  html body .drp .drp-modal-actions > form:not(.drp-whatsapp-wrap) button{
    width:140px!important;
    min-width:140px!important;
    height:42px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
  }
  html body .drp .drp-modal-actions .drp-modal-whatsapp-row{
    flex:0 0 100%!important;
    width:100%!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin:25px 0 0 0!important;
    order:999!important;
    text-align:center!important;
  }
  html body .drp .drp-modal-actions .drp-modal-whatsapp-row .drp-whatsapp-wrap{
    margin:0 auto!important;
    width:auto!important;
    display:inline-flex!important;
    justify-content:center!important;
    align-items:center!important;
    flex:0 0 auto!important;
    order:0!important;
  }
  html body .drp .drp-modal-actions .drp-modal-whatsapp-row .drp-btn.whatsapp{
    width:60px!important;
    height:60px!important;
    min-width:60px!important;
    margin:0 auto!important;
    padding:0!important;
  }
  html body .drp .drp-modal-actions .drp-modal-whatsapp-row .drp-btn.whatsapp img{
    width:54px!important;
    height:54px!important;
  }
}

/* v2.7.18 - móvil: al editar enlace online el modal gana espacio y el teclado no tapa acciones */
@media (max-width: 640px){
  html body .drp .drp-modal-card{
    scroll-behavior:smooth!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:160px!important;
  }
  html body .drp .drp-modal-card.drp-keyboard-focus{
    max-height:calc(100dvh - 8px)!important;
    padding-bottom:240px!important;
  }
  html body .drp .drp-modal-online-box{
    display:block!important;
    width:100%!important;
    margin:10px 0!important;
  }
  html body .drp .drp-modal-online-top{
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
    align-items:stretch!important;
  }
  html body .drp .drp-modal-meet-send-form{
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
    width:100%!important;
    align-items:stretch!important;
  }
  html body .drp .drp-modal-meet-input{
    width:100%!important;
    min-height:42px!important;
    box-sizing:border-box!important;
  }
  html body .drp .drp-modal-meet-send-form .drp-btn,
  html body .drp .drp-modal-meet-send{
    width:100%!important;
    min-height:42px!important;
    justify-content:center!important;
  }
  html body .drp .drp-modal-actions{
    position:relative!important;
    bottom:auto!important;
  }
}

/* v2.7.20 - modal robusto: mensaje limitado, acciones visibles y editor de enlace flotante en móvil */
html body .drp .drp-modal-notes{
  max-height:140px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  line-height:1.55!important;
  -webkit-overflow-scrolling:touch!important;
}
html body .drp .drp-modal-actions{
  position:sticky!important;
  bottom:0!important;
  background:#fff!important;
  z-index:30!important;
  padding-top:12px!important;
  padding-bottom:10px!important;
  border-top:1px solid rgba(12,44,74,.08)!important;
}
html body .drp .drp-modal-card{
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
}

@media (max-width:640px){
  html body .drp .drp-modal-card,
  html body .drp .drp-modal-card.drp-keyboard-focus{
    max-height:calc(100dvh - 20px)!important;
    padding-bottom:0!important;
    scroll-behavior:smooth!important;
  }
  html body .drp .drp-modal-notes{
    max-height:145px!important;
  }
  html body .drp .drp-modal-actions{
    margin-left:-1px!important;
    margin-right:-1px!important;
    box-shadow:0 -10px 24px rgba(255,255,255,.96)!important;
  }
  html body .drp .drp-modal-online-box{
    display:block!important;
    width:100%!important;
    margin:10px 0 14px 0!important;
  }
  html body .drp .drp-modal-online-top{
    display:flex!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    align-items:center!important;
  }
  html body .drp .drp-modal-meet-send-form{
    display:none!important;
  }
  html body .drp .drp-modal-meet-add{
    width:100%!important;
    justify-content:center!important;
  }
  html body .drp .drp-modal-meet-link.is-visible{
    width:100%!important;
    justify-content:center!important;
  }
}

.drp-floating-meet-overlay{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:flex-start;
  justify-content:center;
  padding:18px;
  padding-top:calc(18px + env(safe-area-inset-top));
  background:rgba(15,31,52,.42);
  backdrop-filter:blur(3px);
  box-sizing:border-box;
}
.drp-floating-meet-overlay.open{display:flex;}
.drp-floating-meet-card{
  width:min(520px,100%);
  background:#fff;
  border:1px solid #d7e6f4;
  border-radius:22px;
  box-shadow:0 20px 65px rgba(12,44,74,.22);
  padding:18px;
  margin-top:8px;
  box-sizing:border-box;
}
.drp-floating-meet-card h4{
  margin:0 0 12px 0;
  font-size:17px;
  color:#223b5c;
}
.drp-floating-meet-card input{
  width:100%;
  min-height:48px;
  border:1px solid #bcd4ea;
  border-radius:16px;
  padding:0 14px;
  box-sizing:border-box;
  font-size:16px;
  outline:none;
}
.drp-floating-meet-card input:focus{
  border-color:#2b7fb1;
  box-shadow:0 0 0 3px rgba(43,127,177,.12);
}
.drp-floating-meet-actions{
  display:flex;
  gap:10px;
  margin-top:14px;
}
.drp-floating-meet-actions button{
  flex:1;
  min-height:44px;
  border-radius:999px;
  border:1px solid #d7e6f4;
  background:#fff;
  color:#223b5c;
  font-weight:600;
}
.drp-floating-meet-actions .drp-floating-meet-save{
  background:#2b7fb1;
  border-color:#2b7fb1;
  color:#fff;
}


/* v2.7.21 - FIX real modal: mensaje con scroll y botones siempre visibles */
html body .drp #drp-modal.open .drp-modal-card{
  display:flex!important;
  flex-direction:column!important;
  max-height:calc(100dvh - 28px)!important;
  overflow:hidden!important;
}
html body .drp #drp-modal.open .drp-modal-grid,
html body .drp #drp-modal.open .drp-modal-online-box,
html body .drp #drp-modal.open .drp-modal-message-field{
  flex:0 0 auto!important;
}
html body .drp #drp-modal.open .drp-modal-message-field{
  max-height:210px!important;
  overflow:hidden!important;
  padding:12px 14px!important;
}
html body .drp #drp-modal.open #drp-modal-motivo.drp-modal-notes{
  display:block!important;
  max-height:145px!important;
  min-height:0!important;
  height:auto!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  white-space:normal!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  box-sizing:border-box!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  -webkit-overflow-scrolling:touch!important;
}
html body .drp #drp-modal.open .drp-modal-actions{
  flex:0 0 auto!important;
  position:sticky!important;
  bottom:0!important;
  z-index:100!important;
  background:#fff!important;
  margin-top:10px!important;
}
@media(max-width:640px){
  html body .drp #drp-modal.open .drp-modal-card{
    max-height:calc(100dvh - 12px)!important;
    overflow:hidden!important;
  }
  html body .drp #drp-modal.open .drp-modal-message-field{
    max-height:190px!important;
  }
  html body .drp #drp-modal.open #drp-modal-motivo.drp-modal-notes{
    max-height:128px!important;
    font-size:14px!important;
    line-height:1.45!important;
  }
  html body .drp #drp-modal.open .drp-modal-actions{
    position:sticky!important;
    bottom:0!important;
    box-shadow:0 -12px 24px rgba(255,255,255,.98)!important;
  }
}


/* v2.7.22 - SOLUCIÓN SIMPLE: scroll real en Mensaje / motivo */
html body .drp .drp-modal .drp-modal-message-field,
html body .drp #drp-modal .drp-modal-message-field{
  max-height:190px!important;
  height:auto!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
html body .drp .drp-modal .drp-modal-message-field small,
html body .drp #drp-modal .drp-modal-message-field small{
  display:block!important;
  margin-bottom:8px!important;
}
html body .drp .drp-modal #drp-modal-motivo,
html body .drp #drp-modal #drp-modal-motivo,
html body .drp .drp-modal .drp-modal-message-field .drp-modal-notes,
html body .drp #drp-modal .drp-modal-message-field .drp-modal-notes{
  display:block!important;
  max-height:120px!important;
  height:120px!important;
  overflow-y:scroll!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  white-space:normal!important;
  line-height:1.45!important;
  padding:0 8px 0 0!important;
  border:0!important;
  background:transparent!important;
  box-sizing:border-box!important;
}
@media(max-width:640px){
  html body .drp .drp-modal .drp-modal-message-field,
  html body .drp #drp-modal .drp-modal-message-field{
    max-height:170px!important;
  }
  html body .drp .drp-modal #drp-modal-motivo,
  html body .drp #drp-modal #drp-modal-motivo,
  html body .drp .drp-modal .drp-modal-message-field .drp-modal-notes,
  html body .drp #drp-modal .drp-modal-message-field .drp-modal-notes{
    max-height:105px!important;
    height:105px!important;
  }
}


/* v2.7.23 - scroll for message in modal, hard override */
html body .drp #drp-modal .drp-modal-message-field{max-height:170px!important;height:170px!important;min-height:0!important;overflow:hidden!important;display:block!important;box-sizing:border-box!important;}
html body .drp #drp-modal .drp-modal-message-field small{display:block!important;margin-bottom:8px!important;}
html body .drp #drp-modal #drp-modal-motivo{display:block!important;height:105px!important;max-height:105px!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;white-space:normal!important;word-break:break-word!important;overflow-wrap:anywhere!important;line-height:1.45!important;padding-right:8px!important;box-sizing:border-box!important;}
@media(min-width:641px){html body .drp #drp-modal .drp-modal-message-field{height:190px!important;max-height:190px!important;}html body .drp #drp-modal #drp-modal-motivo{height:125px!important;max-height:125px!important;}}

/* v2.7.24 - quitar botón Añadir reunión online del modal */
html body .drp .drp-modal-meet-add{display:none!important;}


/* v2.7.25 - subir WhatsApp 25px */
html body .drp .drp-modal-actions .drp-modal-whatsapp-row{
  margin:0 !important;
  transform: translateY(-25px) !important;
}


/* v2.7.26 - margen inferior whatsapp 35px */
html body .drp .drp-modal-actions .drp-modal-whatsapp-row{
  transform:none !important;
  margin-top:20px !important;
  padding-bottom:35px !important;
}


/* v2.7.27 - subir whatsapp y dejar aire inferior */
html body .drp .drp-modal-actions .drp-modal-whatsapp-row{
  transform: translateY(-25px) !important;
  margin-top:0 !important;
  padding-bottom:0 !important;
}

/* v2.7.68 - Vista lista: botón Reprogramar con calendario SVG premium sin números */
html body .drp .drp-actions .drp-reprogram-icon-only{
  width:38px!important;
  min-width:38px!important;
  height:36px!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #e2e8f0!important;
  background:#fff!important;
  color:#64748b!important;
  border-radius:10px!important;
  line-height:1!important;
  box-shadow:0 1px 2px rgba(15,23,42,.04)!important;
}
html body .drp .drp-actions .drp-reprogram-icon-only:hover{
  color:var(--drp-color,var(--dr-color,#2563eb))!important;
  border-color:color-mix(in srgb, var(--drp-color,var(--dr-color,#2563eb)) 45%, #e2e8f0)!important;
  background:color-mix(in srgb, var(--drp-color,var(--dr-color,#2563eb)) 7%, #ffffff)!important;
  box-shadow:0 8px 18px rgba(15,23,42,.08)!important;
  transform:translateY(-1px);
}
html body .drp .drp-actions .drp-reprogram-icon-only .drp-calendar-premium-icon{
  width:18px!important;
  height:18px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* v2.7.69 - Fix icono calendario reprogramar: SVG inline visible y premium */
html body .drp .drp-actions .drp-reprogram-icon-only{
  width:40px!important;
  min-width:40px!important;
  height:36px!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  color:#334155!important;
  background:#ffffff!important;
  border:1px solid #cbd5e1!important;
  box-shadow:0 1px 2px rgba(15,23,42,.04)!important;
  font-size:0!important;
  overflow:visible!important;
}
html body .drp .drp-actions .drp-reprogram-icon-only .drp-calendar-premium-icon{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  pointer-events:none!important;
}
html body .drp .drp-actions .drp-reprogram-icon-only .drp-calendar-premium-icon *{
  fill:none!important;
  stroke:currentColor!important;
  vector-effect:non-scaling-stroke;
}
html body .drp .drp-actions .drp-reprogram-icon-only:hover{
  color:var(--drp-color,var(--dr-color,#2563eb))!important;
  border-color:var(--drp-color,var(--dr-color,#2563eb))!important;
  background:#fff!important;
}


/* v2.7.77 - scroll invisible modal completo */
html body .drp .drp-modal-card{
  max-height:calc(100dvh - 28px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
html body .drp .drp-modal-card::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}

/* v2.7.83 - Mensaje / motivo más amplio y texto con más aire */
html body .drp #drp-modal .drp-modal-message-field{
  height:215px!important;
  max-height:215px!important;
  padding:14px 16px 16px 16px!important;
  box-sizing:border-box!important;
}
html body .drp #drp-modal .drp-modal-message-field small{
  margin-bottom:10px!important;
  line-height:1.2!important;
}
html body .drp #drp-modal #drp-modal-motivo{
  height:150px!important;
  max-height:150px!important;
  padding-top:6px!important;
  padding-right:10px!important;
  line-height:1.58!important;
  font-size:15.5px!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
html body .drp #drp-modal #drp-modal-motivo::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
@media(max-width:640px){
  html body .drp #drp-modal .drp-modal-message-field{
    height:185px!important;
    max-height:185px!important;
    padding:13px 14px 15px 14px!important;
  }
  html body .drp #drp-modal #drp-modal-motivo{
    height:125px!important;
    max-height:125px!important;
    padding-top:5px!important;
    line-height:1.54!important;
    font-size:15px!important;
  }
}
