
/* ============================================================
   BLOQUE 25 - Edición y reprogramación segura de citas
   ============================================================ */
.appointment-edit-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px 27px;background:linear-gradient(135deg,#fff 0%,#eff6ff 58%,#ecfdf5 115%);border-color:#bfdbfe}
.appointment-edit-hero h2{margin:9px 0 5px;font-size:27px;letter-spacing:-.035em}.appointment-edit-hero p{margin:0}.appointment-edit-hero .badge{text-transform:uppercase;letter-spacing:.06em}
.appointment-edit-layout{display:grid;grid-template-columns:minmax(290px,.68fr) minmax(0,1.32fr);gap:20px;align-items:start}.appointment-edit-layout>.card{margin-bottom:0}
.appointment-current-card{position:sticky;top:18px;padding:24px;background:linear-gradient(180deg,#fff,#f8fbff)}.appointment-current-card .card-header,.appointment-edit-form-card .card-header{align-items:flex-start;margin-bottom:20px}.appointment-current-card h2,.appointment-edit-form-card h2{margin:4px 0 0;font-size:22px;letter-spacing:-.025em}.eyebrow{display:block;color:#2563eb;font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.appointment-current-time{display:grid;gap:3px;padding:19px;border:1px solid #bfdbfe;border-radius:20px;background:linear-gradient(135deg,#0b3a78,#2563eb);color:#fff;box-shadow:0 14px 28px rgba(37,99,235,.18)}.appointment-current-time span{text-transform:capitalize;color:#bfdbfe;font-size:12px;font-weight:900;letter-spacing:.06em}.appointment-current-time strong{font-size:26px;letter-spacing:-.03em}.appointment-current-time small{font-size:15px;color:#dbeafe;font-weight:800}
.appointment-current-details{display:grid;gap:0;margin:18px 0}.appointment-current-details>div{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:12px 2px;border-bottom:1px solid #e2e8f0}.appointment-current-details dt{color:var(--muted);font-size:12px;font-weight:850}.appointment-current-details dd{margin:0;text-align:right;color:#0f172a;font-size:13px;font-weight:900;max-width:65%}
.appointment-edit-form-card{padding:25px}.appointment-edit-grid{gap:15px}.appointment-edit-grid>div{display:grid;gap:7px}.appointment-edit-grid small{line-height:1.45}.appointment-duration-preview{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 16px;border:1px solid #a7f3d0;border-radius:16px;background:#ecfdf5;color:#14532d}.appointment-duration-preview span{font-size:12px;font-weight:850}.appointment-duration-preview strong{text-align:right;font-size:14px}
.appointment-edit-availability{margin-top:2px}.appointment-edit-availability .row-between{align-items:flex-start}.appointment-edit-availability p{margin:4px 0 0}.appointment-edit-availability .availability-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.appointment-edit-availability .edit-slot{display:grid;gap:3px;text-align:left;min-height:58px}.appointment-edit-availability .edit-slot strong{font-size:12px;color:#1d4ed8}.appointment-edit-availability .edit-slot span{font-size:11px;color:#475569;white-space:normal}.appointment-edit-availability .edit-slot.selected{border-color:#16a34a;background:#ecfdf5;box-shadow:0 0 0 3px rgba(22,163,74,.12)}
.workflow-notice.success-soft{border-color:#a7f3d0;background:#ecfdf5;color:#14532d}.appointment-edit-actions{justify-content:space-between;border-top:1px solid #e2e8f0;padding-top:17px}.appointment-edit-actions .btn{min-width:170px}
@media(max-width:980px){.appointment-edit-layout{grid-template-columns:1fr}.appointment-current-card{position:static}.appointment-current-details{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}.appointment-current-details>div{display:grid}.appointment-current-details dd{text-align:left;max-width:none}}
@media(max-width:680px){.appointment-edit-hero{align-items:flex-start;flex-direction:column;padding:21px}.appointment-edit-hero .btn{width:100%}.appointment-current-card,.appointment-edit-form-card{padding:18px}.appointment-current-details{grid-template-columns:1fr}.appointment-edit-grid{grid-template-columns:1fr}.appointment-edit-grid .span-2{grid-column:auto}.appointment-duration-preview,.appointment-edit-actions{align-items:flex-start;flex-direction:column}.appointment-duration-preview strong{text-align:left}.appointment-edit-availability .row-between{display:grid}.appointment-edit-availability .row-between .btn{width:100%;margin-top:10px}.appointment-edit-availability .availability-preview{grid-template-columns:1fr}.appointment-edit-actions .btn{width:100%}}

