/* SAS Finanzas · Panel · Resultados, Agenda y el selector de periodo.
   Mismo lenguaje que Conversaciones (bandeja.css): tarjetas blancas con borde fino, esquinas suaves, colores de SAS,
   y detalles "vivos" (mini gráficas, la línea de la hora actual, animaciones cortas). */

/* ---------- Selector de periodo ---------- */
.pd{position:relative;display:inline-block}
.pd-boton{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:4px 12px 4px 10px;border-radius:12px;border:1px solid var(--borde-fuerte);background:var(--panel);color:var(--marino);cursor:pointer;text-align:left;transition:border-color .2s ease,box-shadow .2s ease}
.pd-boton:hover{border-color:var(--acento);box-shadow:0 6px 16px -10px rgba(15,107,92,.6)}
.pd-boton[aria-expanded="true"]{border-color:var(--acento);box-shadow:0 0 0 3px rgba(127,224,201,.4)}
.pd-boton>svg{color:var(--acento)}
.pd-txt{display:flex;flex-direction:column;line-height:1.15}
.pd-txt small{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--texto-3)}
.pd-txt b{font-size:14px;white-space:nowrap}
.pd-flecha{width:16px!important;height:16px!important;color:var(--texto-3)!important}
.pd-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:60;width:min(640px,calc(100vw - 32px));background:var(--panel);border:1px solid var(--borde);border-radius:16px;
  box-shadow:0 24px 60px -18px rgba(18,26,43,.45);padding:var(--s4);animation:bd-entra .25s cubic-bezier(.2,.8,.2,1) both}
.pd-lados{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
.pd-lado header{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--s3)}
.pd-lado header span{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--acento)}
.pd-lado header b{font-size:14px;color:var(--marino)}
.pd-paso{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;align-items:start;margin-bottom:var(--s3);transition:opacity .2s ease}
.pd-paso.apagado{opacity:.4}
.pd-num{width:20px;height:20px;border-radius:50%;background:var(--panel-2);color:var(--texto-3);font-size:11px;font-weight:700;display:grid;place-items:center;margin-top:4px}
.pd-anios,.pd-meses{display:flex;flex-wrap:wrap;gap:6px}
.pd-meses{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.pd-anios button,.pd-meses button,.pd-dias button{border:1px solid var(--borde);background:var(--panel);border-radius:8px;min-height:32px;padding:0 10px;font-size:13px;font-weight:600;color:var(--texto-2);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}
.pd-anios button:hover:not(:disabled),.pd-meses button:hover:not(:disabled),.pd-dias button:hover{border-color:var(--acento);color:var(--acento)}
.pd-anios button.sel,.pd-meses button.sel,.pd-dias button.sel{background:var(--marino);border-color:var(--marino);color:#fff}
.pd-meses button:disabled{cursor:not-allowed}
.pd-dias{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.pd-dias i{font-style:normal;font-size:11px;font-weight:700;color:var(--texto-3);text-align:center;padding:2px 0}
.pd-dias button{padding:0;min-height:30px;font-weight:500}
.pd-dias button.hoy{border-color:var(--acento);color:var(--acento)}
.pd-dias button.sel.hoy{color:#fff}
.pd-guia{grid-column:1/-1;margin:4px 0 0;font-size:12px;color:var(--texto-3)}
.pd-pie{display:flex;align-items:center;gap:var(--s2);border-top:1px solid var(--borde);padding-top:var(--s3);margin-top:var(--s2)}
.pd-error{flex:1;font-size:12px;color:var(--rojo)}
@media (max-width:700px){
  .pd-panel{position:fixed;left:12px;right:12px;top:72px;width:auto;max-height:calc(100vh - 96px);overflow:auto}
  .pd-lados{grid-template-columns:minmax(0,1fr)}
}

/* ---------- Resultados ---------- */
.rs-hero{border-radius:16px;padding:var(--s5);background:linear-gradient(135deg,var(--marino) 0%,var(--marino-2) 100%);color:#fff;display:flex;flex-direction:column;gap:var(--s4);position:relative;overflow:hidden}
.rs-hero::after{content:"";position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(127,224,201,.28),rgba(127,224,201,0) 70%);pointer-events:none}
.rs-hero-txt small{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--menta);margin-bottom:6px}
.rs-hero-txt p{margin:0;font-size:clamp(17px,1.7vw,22px);line-height:1.4;max-width:900px;color:#E6ECF6}
.rs-hero-txt b{color:#fff}
.rs-flujo{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:var(--s2)}
.rs-paso{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:var(--s3) var(--s4);display:flex;flex-direction:column;gap:2px;position:relative}
.rs-paso::before{content:"";position:absolute;left:var(--s4);top:0;width:28px;height:3px;border-radius:0 0 3px 3px;background:var(--c)}
.rs-paso small{font-size:12px;color:#AFC0DA;font-weight:600}
.rs-paso strong{font-size:clamp(26px,2.6vw,36px);line-height:1.1;font-weight:700;color:#fff}
.rs-paso span{font-size:12px;color:#AFC0DA}
.rs-flecha{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--menta);font-size:12px;font-weight:700;min-width:44px}
.rs-flecha svg{width:18px;height:18px}
.rs-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s3);margin:var(--s4) 0}
.rs-kpi{position:relative;background:var(--panel);border:1px solid var(--borde);border-radius:var(--radio);padding:var(--s4);min-width:0}
.rs-kpi::before{content:"";position:absolute;left:var(--s4);top:0;width:32px;height:3px;border-radius:0 0 3px 3px;background:var(--t)}
.rs-kpi h3{font-size:13px;font-weight:600;color:var(--texto-3)}
.rs-kpi-fila{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s2);margin:var(--s2) 0 6px}
.rs-kpi-fila strong{font-size:clamp(22px,2vw,30px);font-weight:700;line-height:1.1;color:var(--marino);white-space:nowrap}
.rs-chispa{width:46%;max-width:120px;height:34px;flex:none}
.rs-kpi-pie{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;color:var(--texto-3)}
.rs-var{font-size:11px;font-weight:700;padding:2px 7px;border-radius:999px;white-space:nowrap}
.rs-var.bien{background:#E3F2EA;color:var(--positivo)}
.rs-var.mal{background:var(--rojo-tinte);color:var(--rojo)}
.rs-var.igual{background:var(--panel-2);color:var(--texto-3)}
.rs-rejilla{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:var(--s3);margin-bottom:var(--s3)}
.rs-rejilla.tres{grid-template-columns:repeat(3,minmax(0,1fr))}
.rs-rejilla>.tarjeta{margin:0}
.rs-tendencia .lienzo{height:260px}
.rs-embudo{display:flex;flex-direction:column;gap:10px}
.rs-embudo-paso{display:grid;grid-template-columns:110px minmax(0,1fr) 40px 44px;align-items:center;gap:var(--s2);font-size:13px}
.rs-embudo-nombre{color:var(--texto-2)}
.rs-embudo-barra{height:22px;border-radius:6px;background:var(--panel-2);overflow:hidden}
.rs-embudo-barra i{display:block;height:100%;width:var(--w);border-radius:6px;background:var(--c);transition:width .8s cubic-bezier(.2,.8,.2,1)}
.rs-embudo-paso b{text-align:right}
.rs-embudo-paso small{color:var(--texto-3);font-size:12px;text-align:right}
.rs-dona{display:flex;align-items:center;gap:var(--s4);margin-bottom:var(--s3)}
.rs-dona svg{width:84px;height:84px;flex:none}
.rs-dona strong{display:block;font-size:28px;font-weight:700;color:var(--marino);line-height:1}
.rs-dona span{font-size:13px;color:var(--texto-3)}
.rs-personas{display:flex;flex-direction:column;gap:var(--s2)}
.rs-persona{display:flex;align-items:center;gap:var(--s3);padding:var(--s2);border-radius:var(--radio);transition:background .2s ease}
.rs-persona:hover{background:var(--panel-2)}
.rs-persona>span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column}
.rs-persona small{font-size:12px;color:var(--texto-3)}
.rs-persona strong{font-size:24px;color:var(--marino)}
@media (max-width:1200px){.rs-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.rs-rejilla,.rs-rejilla.tres{grid-template-columns:minmax(0,1fr)}}
@media (max-width:900px){
  .rs-flujo{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .rs-flecha{display:none}
  .rs-hero{padding:var(--s4)}
}

/* ---------- Agenda ---------- */
.ag-metricas{grid-template-columns:repeat(4,minmax(0,1fr))!important;margin-bottom:var(--s4)}
.ag-cal select{min-width:220px}
.ag-pestanas{display:inline-flex;gap:4px;padding:4px;border-radius:12px;background:rgba(22,35,63,.06);margin-bottom:var(--s4);flex-wrap:wrap}
.ag-pestanas button{border:0;background:transparent;border-radius:9px;min-height:36px;padding:0 14px;font-size:13px;font-weight:600;color:var(--texto-2);cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.ag-pestanas button:hover{color:var(--marino)}
.ag-pestanas button[aria-selected="true"],.ag-pestanas button[aria-checked="true"]{background:#fff;color:var(--marino);box-shadow:0 1px 3px rgba(22,35,63,.16)}
.ag-pestanas.chico{margin-bottom:var(--s3)}
.ag-semana{padding:var(--s4)}
.ag-semana-cab{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s2)}
.ag-semana-cab h2{font-size:20px;letter-spacing:-.01em}
.ag-semana-cab .acciones{align-items:center}
.ag-nav{display:flex;gap:6px}
.ag-ayuda{display:flex;align-items:center;gap:8px;margin:0 0 var(--s3);font-size:13px;color:var(--texto-3)}
.ag-ayuda svg{width:16px;height:16px;color:var(--acento)}
.ag-rejilla-caja{max-height:min(68vh,700px);overflow:auto;border:1px solid var(--borde);border-radius:var(--radio)}
.ag-rejilla{display:grid;grid-template-columns:56px repeat(7,minmax(110px,1fr));min-width:820px;position:relative}
.ag-esquina,.ag-dia-cab{position:sticky;top:0;z-index:3;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--borde)}
.ag-dia-cab{display:flex;align-items:baseline;justify-content:center;gap:6px;padding:10px 4px;border-left:1px solid var(--borde)}
.ag-dia-cab small{font-size:12px;font-weight:600;color:var(--texto-3);text-transform:uppercase}
.ag-dia-cab b{font-size:20px;font-weight:600;color:var(--marino);width:34px;height:34px;display:grid;place-items:center;border-radius:50%}
.ag-dia-cab.hoy b{background:var(--acento);color:#fff}
.ag-horas{position:relative}
.ag-horas span{position:absolute;right:8px;transform:translateY(-50%);font-size:11px;color:var(--texto-3)}
.ag-horas span:first-child{transform:none}
.ag-dia{position:relative;border-left:1px solid var(--borde);background:repeating-linear-gradient(to bottom,transparent 0,transparent 51px,var(--borde) 51px,var(--borde) 52px),#F3F4F7}
.ag-dia.hoy{background:repeating-linear-gradient(to bottom,transparent 0,transparent 51px,var(--borde) 51px,var(--borde) 52px),#EDF5F3}
.ag-abierto{position:absolute;left:0;right:0;background:#fff;pointer-events:none}
.ag-dia.hoy .ag-abierto{background:#FBFEFD}
.ag-hueco{position:absolute;left:0;right:0;border:0;background:transparent;cursor:copy;z-index:1;border-radius:6px;transition:background .15s ease}
.ag-hueco:hover{background:rgba(127,224,201,.18);box-shadow:inset 0 0 0 1px rgba(15,107,92,.35)}
.ag-hueco:hover::after{content:"+ Bloquear";position:absolute;left:8px;top:6px;font-size:11px;font-weight:700;color:var(--acento)}
.ag-bloqueo{position:absolute;left:3px;right:3px;z-index:2;border:1px solid #C6CCD7;border-radius:8px;padding:4px 7px;text-align:left;cursor:pointer;overflow:hidden;
  background:repeating-linear-gradient(135deg,#ECEEF2 0,#ECEEF2 6px,#F6F7F9 6px,#F6F7F9 12px);color:var(--texto-2);display:flex;flex-direction:column;gap:1px;transition:box-shadow .2s ease}
.ag-bloqueo:hover{box-shadow:0 6px 16px -8px rgba(22,35,63,.5)}
.ag-bloqueo b{font-size:12px;color:var(--marino)}
.ag-bloqueo span{font-size:11px;color:var(--texto-3)}
.ag-cita{position:absolute;left:4px;right:4px;z-index:2;border:0;border-left:3px solid var(--c);border-radius:8px;padding:4px 7px;text-align:left;cursor:pointer;overflow:hidden;
  background:color-mix(in srgb,var(--c) 14%,#fff);color:var(--marino);display:flex;flex-direction:column;gap:1px;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s ease}
.ag-cita:hover{transform:translateY(-1px);box-shadow:0 8px 18px -10px rgba(22,35,63,.55)}
.ag-cita b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ag-cita span{font-size:11px;color:var(--texto-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ag-cita.cancelada{opacity:.55;text-decoration:line-through}
.ag-ahora{position:absolute;left:0;right:0;height:0;border-top:2px solid var(--rojo);z-index:4;pointer-events:none}
.ag-ahora i{position:absolute;left:-5px;top:-6px;width:10px;height:10px;border-radius:50%;background:var(--rojo)}
.ag-leyenda{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:var(--s3);font-size:12px;color:var(--texto-3)}
.ag-leyenda span{display:inline-flex;align-items:center;gap:6px}
.ag-leyenda i{width:12px;height:12px;border-radius:3px;border:1px solid var(--borde)}
.ag-leyenda i.abierto{background:#fff}
.ag-leyenda i.cerrado{background:#F3F4F7}
.ag-leyenda i.bloq{background:repeating-linear-gradient(135deg,#E2E5EA 0,#E2E5EA 3px,#F6F7F9 3px,#F6F7F9 6px)}
.ag-marcar{border-left:4px solid var(--ambar);margin-bottom:var(--s3)}
.agenda-lista .acciones{align-items:center}

/* Bloquear tiempo */
.bq .rejilla-form{margin-top:var(--s2)}
.bq-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.bq-chips button{border:1px solid var(--borde);background:var(--panel);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600;color:var(--texto-2);cursor:pointer;transition:border-color .15s ease,color .15s ease}
.bq-chips button:hover{border-color:var(--acento);color:var(--acento)}
.bq-resumen{margin:var(--s3) 0 0;padding:10px 12px;border-radius:var(--radio);background:var(--tinte);border:1px solid #BFE0D8;color:#0B4A40;font-size:14px}
.bq-resumen:empty{display:none}
.bq-lista{display:flex;flex-direction:column;gap:6px}
.bq-item{display:flex;align-items:center;gap:var(--s3);width:100%;text-align:left;border:1px solid var(--borde);background:var(--panel);border-radius:var(--radio);padding:10px 12px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}
.bq-item:hover{border-color:#B9D7CF;box-shadow:0 8px 20px -14px rgba(22,35,63,.5)}
.bq-icono{width:36px;height:36px;flex:none;border-radius:10px;display:grid;place-items:center;background:var(--panel-2);color:var(--marino-2)}
.bq-item>span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column}
.bq-item small{font-size:12px;color:var(--texto-3)}
.bq-quien{font-size:12px;font-weight:600;color:var(--texto-2);background:var(--panel-2);border-radius:999px;padding:3px 10px;white-space:nowrap}
@media (max-width:900px){.ag-metricas{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ag-cal select{min-width:0}}
@media (hover:hover) and (pointer:fine){
  .rs-kpi{transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s ease,border-color .2s ease}
  .rs-kpi:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--t) 45%,var(--borde));box-shadow:0 14px 28px -18px rgba(22,35,63,.45)}
  .rs-kpi::before{transition:width .3s cubic-bezier(.2,.8,.2,1)}
  .rs-kpi:hover::before{width:56px}
  .rs-paso{transition:background .2s ease,transform .25s cubic-bezier(.2,.8,.2,1)}
  .rs-paso:hover{background:rgba(255,255,255,.12);transform:translateY(-2px)}
}
/* El encabezado (con el selector de periodo) siempre por encima del contenido que sigue. */
.bd-cabecera{position:relative;z-index:20}
.pd{z-index:21}
