/* Amed'or — VIDEOCONSULTA (rediseño 27-oct-2026; mod/videoconsulta.js). Mismo lenguaje que Videos de cuidados y la
 * agenda del teléfono: fondo BLANCO explícito, Jost, icono + palabra en cada botón y estado, toques >= 48 px (los
 * principales 56 px), una acción por tarjeta, nada depende solo del color. Ningún botón cruza la pantalla: la cabecera
 * son dos botones de 56 px de alto y máximo 280 px de ancho. Todo vive aquí (styles.css no se toca). */

/* ---------- vista ---------- */
.vc-root{background:#fff;color:#1a1206;font-family:'Jost',system-ui,-apple-system,sans-serif;font-size:1.05rem;line-height:1.45;padding:12px 16px 32px;max-width:720px;margin:0 auto;border-radius:18px;box-sizing:border-box}
.vc-root .ico,.vc-capa .ico,.vc-llamada .ico{flex:0 0 auto}
.vc-cab{display:flex;gap:12px;margin:4px 0 16px}
.vc-cab .vc-btn{flex:1 1 0;max-width:280px;min-height:56px}
.vc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;border-radius:14px;border:1px solid rgba(40,28,12,.28);background:#fff;color:#1a1206;font:inherit;font-size:1.05rem;font-weight:600;cursor:pointer;text-decoration:none;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.vc-btn .ico{width:22px;height:22px}
.vc-btn--pri{min-height:56px;background:#7a5418;border-color:#7a5418;color:#fff}
.vc-btn--sec{min-height:56px;background:#fff;border:2px solid #7a5418;color:#4f360b}
.vc-btn--rojo{min-height:56px;background:#a3222f;border-color:#a3222f;color:#fff}
.vc-btn--ancho{width:100%;margin:6px 0 4px}
.vc-btn:disabled{opacity:.55;cursor:not-allowed}
.vc-btn:focus-visible,.vc-cuerpo:focus-visible,.vc-ib:focus-visible{outline:3px solid #1f5fbf;outline-offset:2px}
.vc-sec{margin:18px 0 0}
.vc-sec-tit{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:1.25rem;color:#1a1206}
.vc-sec-tit .ico{width:22px;height:22px;color:#7a5418}
.vc-dia{margin:14px 0 8px;font-size:1.05rem;font-weight:600;color:#3d3528}
.vc-lista{display:flex;flex-direction:column;gap:12px}
.vc-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid rgba(40,28,12,.18);border-radius:18px;padding:12px;box-shadow:0 10px 30px -24px rgba(40,28,12,.4)}
.vc-card--ahora{border:2px solid #1f6b3a;padding:16px}
.vc-card--ahora .vc-hora{font-size:1.6rem}
.vc-card > .vc-btn{flex:0 0 auto}
.vc-cuerpo{flex:1;min-width:0;min-height:48px;display:flex;align-items:center;gap:14px;border-radius:12px;cursor:default}
.vc-cuerpo[data-ficha]{cursor:pointer}
.vc-hora{flex:0 0 auto;min-width:5.2em;font-size:1.35rem;font-weight:600;color:#1a1206}
.vc-info{display:flex;flex-direction:column;gap:3px;min-width:0}
.vc-nombre{font-weight:600;font-size:1.1rem;overflow-wrap:anywhere}
.vc-sub{display:flex;align-items:center;gap:6px;color:#4a3f30}
.vc-sub .ico{width:18px;height:18px;color:#7a5418}
.vc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.vc-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:.92rem;font-weight:600;border:1px solid transparent}
.vc-chip .ico{width:16px;height:16px}
.vc-chip--ok{background:#e6f3ea;color:#1d6b3f;border-color:#b7dcc3}
.vc-chip--mal{background:#fbf0db;color:#6b3f00;border-color:#ecd49a}
.vc-chip--warn{background:#fff3d6;color:#6b4500;border-color:#ecd49a}
.vc-chip--gris{background:#f1ece2;color:#3b3229;border-color:#ddd5c6}
.vc-vacio{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;color:#3d3528;padding:28px 12px}
.vc-vacio > .ico{width:40px;height:40px;color:#7a5418}
.vc-vacio p{margin:0;font-size:1.1rem}
.vc-vacio--error{color:#8f2233}
.vc-root .skel-wrap{padding:6px 0}
.vc-root .skel{background:#f1ece2}

/* ---------- hoja «Reenviar» (blanca, por encima de la agenda; por encima de la llamada cuando hay una) ---------- */
.vc-capa{position:fixed;inset:0;z-index:405;display:flex;align-items:flex-end;justify-content:center;font-family:'Jost',system-ui,-apple-system,sans-serif;color:#1a1206;font-size:1.05rem}
.vc-velo{position:absolute;inset:0;background:rgba(26,18,6,.4)}
.vc-hoja{position:relative;box-sizing:border-box;width:100%;max-width:560px;max-height:92vh;overflow-y:auto;background:#fff;color:#1a1206;border-radius:20px 20px 0 0;padding:12px 16px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -14px 40px -20px rgba(40,28,12,.45)}
.vc-hoja-cab{display:flex;align-items:center;gap:8px}
.vc-hoja-tit{flex:1;min-width:0;display:flex;align-items:center;gap:8px;margin:0;font-size:1.25rem;font-weight:600}
.vc-hoja-tit .ico{width:22px;height:22px;color:#7a5418}
.vc-ib{min-width:48px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;background:#fff;color:#1a1206;cursor:pointer}
.vc-ib .ico{width:24px;height:24px}
.vc-hoja-sub{margin:0 0 8px;color:#4a3f30;overflow-wrap:anywhere}
.vc-hoja-lbl{margin:14px 0 8px;font-weight:600}
.vc-canales{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.vc-btn--canal{min-height:56px;justify-content:flex-start;text-align:left}
.vc-btn small{display:block;font-size:.85rem;font-weight:500}
.vc-resultado{display:flex;align-items:flex-start;gap:8px;margin:14px 0 4px;padding:12px;border-radius:12px;font-size:1.05rem}
.vc-resultado .ico{width:20px;height:20px;margin-top:2px}
.vc-resultado--ok{background:#e6f3ea;color:#1d6b3f}
.vc-resultado--mal{background:#fbf0db;color:#6b3f00}
.vc-resultado--espera{background:#f4f1ea;color:#3b3229}
.vc-copia{width:100%;min-height:48px;box-sizing:border-box;margin-top:8px;padding:0 12px;border:1px solid rgba(40,28,12,.28);border-radius:12px;background:#fff;color:#1a1206;font:inherit}

/* ---------- dentro de la llamada: barra BLANCA de 64 px arriba; el video debajo ---------- */
.vc-llamada{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;background:#1a1206;font-family:'Jost',system-ui,-apple-system,sans-serif;font-size:1.05rem}
.vc-llamada[hidden]{display:none}
.vc-barra{flex:0 0 auto;box-sizing:border-box;min-height:64px;display:flex;align-items:center;gap:12px;padding:4px 12px;padding-top:calc(4px + env(safe-area-inset-top));background:#fff;color:#1a1206;border-bottom:1px solid rgba(40,28,12,.16)}
.vc-barra-estado{flex:1;min-width:0;display:flex;align-items:center;gap:8px;margin:0;font-size:1.1rem;font-weight:600}
.vc-barra-estado .ico{width:22px;height:22px;color:#7a5418}
.vc-barra-acc{display:flex;gap:10px}
.vc-barra .vc-btn{min-height:56px}
.vc-barra .vc-btn[hidden]{display:none}
.vc-marco{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center}
.vc-marco iframe{position:absolute;inset:0}
.vc-aviso-ll{box-sizing:border-box;width:calc(100% - 32px);max-width:460px;margin:16px;padding:18px;border-radius:18px;background:#fff;color:#1a1206}
.vc-aviso-ll p{display:flex;align-items:flex-start;gap:8px;margin:0;font-size:1.1rem}
.vc-aviso-ll p .ico{width:22px;height:22px;color:#7a5418;margin-top:2px}
.vc-aviso-acc{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}
body.vc-en-llamada{overflow:hidden}
.vc-en-llamada .vc-capa{z-index:10000}
.vc-en-llamada .toast,.vc-en-llamada .undo-toast{z-index:10001}
.vc-en-llamada .toast{background:#fff;color:#1a1206;border:2px solid #7a5418}   /* sobre el video oscuro el aviso se lee */

/* ---------- insignia «Video» en el bloque del calendario (sin color nuevo: blanco + tinta) ---------- */
.appt-video{position:absolute;right:4px;bottom:3px;z-index:6;display:inline-flex;align-items:center;gap:3px;height:16px;padding:0 5px;border-radius:8px;background:#fff;color:#1a1206;border:1px solid rgba(26,18,6,.45);font-size:10px;font-weight:800;line-height:1;pointer-events:none}
.appt-video .ico{width:11px;height:11px}
#calBlock .t-xxs .appt-video{height:14px;padding:0 3px}   /* bloques de 30 min en el iPad (R4): queda el icono; la palabra la da title */
#calBlock .t-xxs .appt-video .appt-video-t{display:none}
#videoView .backbtn{min-height:48px;display:inline-flex;align-items:center;gap:6px}   /* «← Inicio» medía 22 px (R4) */
/* Entrar / Reenviar en la hoja de la cita y en el globo del calendario (styles.css los dejaba en 32-44 px; R2 #2) */
#apptSheet .sheet-actions .appt-btn[data-act="join"],#apptSheet .sheet-actions .appt-btn[data-act="vc-reenviar"],
.appt-pop .sheet-actions .appt-btn[data-act="join"],.appt-pop .sheet-actions .appt-btn[data-act="vc-reenviar"]{min-height:56px;font-size:1.05rem;padding:0 18px;gap:8px}
.appt-pop .sheet-actions .appt-btn[data-act="join"] .ico,.appt-pop .sheet-actions .appt-btn[data-act="vc-reenviar"] .ico{width:22px;height:22px}
.vc-modo{display:flex;align-items:center;gap:6px;font-weight:600}
.vc-modo .ico{width:18px;height:18px}

@media (min-width:520px){.vc-canales{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:700px){.vc-capa{align-items:center}.vc-hoja{border-radius:20px}}
@media (max-width:560px){
  .vc-root{padding:10px 8px 28px}
  .vc-cab .vc-btn{padding:0 10px;gap:6px;white-space:nowrap}
  .vc-card{flex-wrap:wrap}
  .vc-card > .vc-btn{flex:0 0 auto;width:auto;max-width:11em;margin-left:auto}   /* R4: en el telefono el boton NO cruza la tarjeta (el «botón atravesado» otra vez); va a la derecha, 56 px de alto */
  .vc-cuerpo{gap:10px}
  .vc-hora{min-width:0;font-size:1.2rem}
  .vc-card--ahora .vc-hora{font-size:1.35rem}
  .vc-barra{flex-wrap:wrap}
  .vc-barra-estado{flex-basis:100%}
  .vc-barra-acc{width:100%}
  .vc-barra-acc .vc-btn{flex:1 1 0;padding:0 8px}
}
@media (prefers-reduced-motion:reduce){.vc-root .skel::after{animation:none}}
/* Telefono (< 768 px, mod/telefono.css pone html{overflow-x:clip}): el bloqueo del scroll durante la llamada va en html, si no la
   pagina salta arriba al abrir y se queda ahi al colgar (R3, medido a 375 px). */
@media (max-width:767px){html:has(body.vc-en-llamada){overflow:hidden}body.vc-en-llamada{overflow:visible}}
/* Error de la llamada (R4): una sola caja con el texto y Reintentar / Salir (56 px); la barra con Invitar y Colgar no se ve. */
.vc-llamada.vc-llamada--error .vc-barra{display:none}
.vc-aviso-acc .vc-btn{min-height:56px}
