
/* V72: corrección estructural definitiva del área cliente.
   El portal moderno V70 vive fuera del contenedor histórico .app.
   En modo cliente se elimina TODO el contenedor histórico para evitar:
   - espacio blanco de una pantalla completa,
   - barra Inicio/Avance/Pagos/Servicios/Urgente,
   - tarjetas Caso activo / 5 de 6 / Etapa 4,
   - cualquier residuo visual antiguo.
   Administración y modo público permanecen intactos. */
body.mode-client .app{display:none!important}
body.mode-client nav.bottom{display:none!important}
body.mode-client #v70ClientApp{display:block!important;margin-top:0!important;padding-top:12px!important}

/* V71: en modo cliente se elimina toda la interfaz histórica que todavía ocupaba espacio encima del portal nuevo. */
body.mode-client .modebar,
body.mode-client .header,
body.mode-client main.content,
body.mode-client .bottom-nav,
body.mode-client .v33-client-nav-wrap,
body.mode-client .client-dashboard{display:none!important}
body.mode-client #v70ClientApp{padding-top:12px!important}
.v71-brand{display:flex;align-items:center;justify-content:flex-start;background:#062f5b;border-radius:22px;padding:12px 18px;margin:0 0 14px;min-height:82px;box-shadow:0 10px 28px rgba(3,42,80,.12)}
.v71-brand img{display:block;width:min(310px,78vw);height:auto;max-height:68px;object-fit:contain;object-position:left center}
@media(max-width:600px){.v71-brand{border-radius:18px;padding:10px 14px;min-height:72px;margin-bottom:12px}.v71-brand img{width:min(275px,82vw);max-height:58px}}
/* V71 - Cabecera cliente limpia. Conserva íntegra la lógica V70 y elimina únicamente restos históricos visibles. */
#v70ClientApp{display:none}
body.mode-client #v70ClientApp{display:block;max-width:1180px;margin:0 auto;padding:24px 18px 120px}
body.mode-client #v70ClientApp *{box-sizing:border-box}
/* Oculta por completo la interfaz cliente histórica para impedir mezclas y saltos. */
body.mode-client #inicio,
body.mode-client #casos-activos,
body.mode-client #casos-inactivos,
body.mode-client #casos-cerrados,
body.mode-client #avance,
body.mode-client #documentos,
body.mode-client #pagos,
body.mode-client #mensajes,
body.mode-client #calendario,
body.mode-client #notificaciones,
body.mode-client #citas,
body.mode-client #contacto,
body.mode-client #urgente,
body.mode-client #servicios,
body.mode-client #instalar-app,
body.mode-client #preferencias-notificaciones,
body.mode-client #asistente,
body.mode-client #explorador-mi-caso,
body.mode-client #gps,
body.mode-client #tiempo,
body.mode-client #tareas,
body.mode-client #historial-total,
body.mode-client #firma,
body.mode-client #estados,
body.mode-client #carga-inteligente,
body.mode-client #lineas-especiales,
body.mode-client #ofertas-vivas,
body.mode-client #fidelidad,
body.mode-client #familia,
body.mode-client #confianza,
body.mode-client #automatizaciones,
body.mode-client #certificacion,
body.mode-client #educacion,
body.mode-client #simulador-casos-v23,
body.mode-client #catalogo-dinamico,
body.mode-client #promoV23,
body.mode-client #v33OfferModal,
body.mode-client #v33ClientNav{display:none!important}
body.mode-client .promo-overlay{display:none!important}

.v70-hero{background:linear-gradient(135deg,#063567,#0b5aa0);color:white;border-radius:28px;padding:28px;box-shadow:0 16px 45px rgba(3,42,80,.16)}
.v70-hero-top{display:flex;gap:16px;align-items:center}.v70-avatar{width:72px;height:72px;border-radius:22px;border:3px solid rgba(255,255,255,.55);overflow:hidden;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:28px;background:rgba(255,255,255,.12)}.v70-avatar img{width:100%;height:100%;object-fit:cover}.v70-eyebrow{font-size:12px;letter-spacing:2px;color:#e5c867;font-weight:900}.v70-hero h1{margin:4px 0 8px;font-size:clamp(27px,4vw,44px);line-height:1.03}.v70-case-line{font-size:17px;line-height:1.45}.v70-progress{height:11px;background:rgba(255,255,255,.84);border-radius:999px;overflow:hidden;margin:18px 0 8px}.v70-progress span{display:block;height:100%;background:#c5a83a;border-radius:999px}.v70-progress-label{font-size:17px;font-weight:900}
.v70-switch{margin:18px 0;background:#fff;border:1px solid #dfe7ee;border-radius:20px;padding:16px}.v70-switch label{font-weight:800;color:#173a62}.v70-switch select{width:100%;margin-top:8px;padding:13px;border:1px solid #d5dee7;border-radius:14px;font:inherit;background:#f7f9fb}
.v70-nav{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:18px 0}.v70-nav button{border:1px solid #d9e2eb;background:#fff;border-radius:18px;padding:16px 10px;color:#173a62;font-weight:900;min-height:76px;cursor:pointer}.v70-nav button.on{background:#0a3d75;color:#fff;border-color:#0a3d75}.v70-nav .ico{display:block;font-size:22px;margin-bottom:5px}
.v70-panel{background:#fff;border:1px solid #dfe7ee;border-radius:22px;padding:20px;margin-top:14px;box-shadow:0 8px 24px rgba(16,52,82,.05)}.v70-panel h2{color:#122f4d;margin:0 0 14px;font-size:26px}.v70-panel h3{color:#173a62;margin:18px 0 8px}.v70-muted{color:#6b7887}.v70-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.v70-stat{padding:16px;border:1px solid #e2e8ee;border-radius:16px;background:#fbfcfd}.v70-stat b{font-size:22px;color:#173a62;display:block}.v70-stat span{font-size:13px;color:#718091}.v70-note{padding:15px;border-radius:16px;background:#fff7cf;border:1px solid #ecd675;color:#54491d;margin-top:14px}.v70-list{display:grid;gap:10px}.v70-item{padding:14px;border:1px solid #e0e6ec;border-radius:15px;background:#fff}.v70-item-head{display:flex;gap:10px;justify-content:space-between;align-items:flex-start}.v70-badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#edf4fb;color:#205b90;font-size:12px;font-weight:800}.v70-stage.done{border-left:5px solid #31a85a}.v70-stage.current{border-left:5px solid #2777bf}.v70-stage.pending{border-left:5px solid #b9c3cd;opacity:.84}.v70-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.v70-btn{border:0;border-radius:12px;padding:10px 14px;background:#0a3d75;color:#fff;font-weight:800;cursor:pointer}.v70-btn.gold{background:#b69a31}.v70-btn.light{background:#edf3f8;color:#173a62}.v70-upload{border:2px dashed #cbd8e4;border-radius:17px;padding:18px;text-align:center;margin-bottom:14px}.v70-upload input{display:none}.v70-upload label{display:inline-block;cursor:pointer}.v70-empty{padding:18px;border:1px dashed #d2dbe4;border-radius:14px;color:#718091;text-align:center}.v70-fin{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.v70-money{font-size:23px;font-weight:900;color:#173a62}.v70-contact{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.v70-contact a{text-decoration:none;text-align:center}.v70-subnav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.v70-subnav button{border:1px solid #dbe4ec;border-radius:999px;padding:8px 12px;background:#fff;color:#173a62;font-weight:800}.v70-subnav button.on{background:#173a62;color:#fff}.v70-case-card{cursor:pointer}.v70-case-card:hover{border-color:#91aac0}.v70-error{background:#fff1f1;border:1px solid #efc3c3;color:#8a2a2a;border-radius:16px;padding:16px}
@media(max-width:900px){.v70-nav{grid-template-columns:repeat(3,1fr)}.v70-grid{grid-template-columns:repeat(2,1fr)}.v70-fin{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){body.mode-client #v70ClientApp{padding:14px 14px 110px}.v70-hero{padding:20px;border-radius:24px}.v70-avatar{width:60px;height:60px;border-radius:18px}.v70-nav{grid-template-columns:repeat(2,1fr)}.v70-nav button{min-height:92px}.v70-grid,.v70-fin,.v70-contact{grid-template-columns:1fr}.v70-panel{padding:16px}.v70-hero h1{font-size:30px}}


/* V73 · Cabecera institucional cliente */
.v71-brand{gap:18px}
.v73-brand-divider{width:1px;align-self:stretch;min-height:48px;background:rgba(229,200,103,.58);flex:0 0 1px}
.v73-brand-tagline{color:#fff;font-weight:800;font-size:clamp(14px,1.8vw,21px);line-height:1.25;letter-spacing:.2px;max-width:360px}
@media(max-width:600px){
 .v71-brand{gap:11px;padding-right:12px}
 .v71-brand img{width:min(215px,55vw);max-height:54px}
 .v73-brand-divider{min-height:42px}
 .v73-brand-tagline{font-size:12px;line-height:1.18;max-width:150px}
}
@media(max-width:390px){.v73-brand-tagline{font-size:11px;max-width:125px}.v71-brand img{width:min(190px,52vw)}}

/* V73 · Preferencia de frecuencia de ofertas */
.v73-offer-control{margin-top:14px;padding-top:13px;border-top:1px solid #e3e9ef;text-align:left}
.v73-offer-control label{display:block;font-size:12px;font-weight:900;color:#173a62;margin-bottom:7px}
.v73-offer-row{display:grid;grid-template-columns:1fr auto;gap:8px}
.v73-offer-row select,.v73-offer-row button{min-height:42px;border-radius:12px;border:1px solid #d7e0e8;font:inherit;font-size:12px;font-weight:800}
.v73-offer-row select{background:#f7f9fb;color:#173a62;padding:0 10px}
.v73-offer-row button{border:0;background:#0a3d75;color:#fff;padding:0 13px;cursor:pointer}
@media(max-width:560px){.v73-offer-row{grid-template-columns:1fr}.v73-offer-row button{width:100%}}


/* V83 — único cambio funcional: botón Cambiar acceso en la cabecera del cliente.
   No modifica Administración, portada, navegación, expedientes ni sincronización. */
.v71-brand{
  display:flex;
  align-items:center;
}
.v73-client-change-access{
  margin-left:auto;
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.08);
  color:#fff;
  border-radius:14px;
  min-height:42px;
  padding:9px 16px;
  font:inherit;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
  white-space:nowrap;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.v73-client-change-access:hover{
  background:rgba(255,255,255,.14);
  border-color:rgba(215,191,105,.68);
  transform:translateY(-1px);
}
@media(max-width:720px){
  .v71-brand{
    flex-wrap:wrap;
    row-gap:10px;
  }
  .v73-client-change-access{
    margin-left:auto;
    min-height:38px;
    padding:8px 12px;
    font-size:12px;
  }
}
@media(max-width:480px){
  .v73-client-change-access{
    width:100%;
    margin-left:0;
    margin-top:6px;
  }
}
