:root{--accent:#3f5d5f;--accent-hover:#334d4f;--bg:#f4f1eb;--card:#fffdf9;--text:#1f2933;--muted:#74716b;--line:#e4ded3;--soft:#ebe5dc;--ok:#2f8f5b;--ok-bg:#edf7ef;--warn:#c58a24;--warn-bg:#fff8e7;--bad:#c0392b;--bad-bg:#fff1ef;--shadow:0 16px 45px rgba(74,63,53,.09)}
*{box-sizing:border-box}html,body{height:100%}html{background:var(--bg)}body{margin:0;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:radial-gradient(circle at 50% -10%,#fff 0,#f7f4ee 40%,#eee9df 100%);font-size:16px;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 34px;background:rgba(255,253,249,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.brand h1{margin:0;font-size:28px;letter-spacing:-.045em;font-weight:800}.brand p{margin:3px 0 0;color:var(--muted);font-size:13px}.right-head{display:flex;gap:16px;align-items:center}.clock{text-align:right}.clock strong{display:block;font-size:13px}.clock small{display:block;margin-top:3px;color:var(--muted);font-size:11px}
.health-details{position:relative}.health-details summary{list-style:none;cursor:pointer}.health-details summary::-webkit-details-marker{display:none}.health{display:flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:8px 13px;background:var(--ok-bg);color:#266749;font:inherit;font-size:14px;box-shadow:inset 0 0 0 1px #d5eadb}.status-led{width:10px;height:10px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px rgba(47,143,91,.10)}.health.bad{background:var(--bad-bg);color:#9b2c2c;box-shadow:inset 0 0 0 1px #f2c7c0}.health.bad .status-led{background:var(--bad)}.health.has-alerts{background:var(--warn-bg);color:#735718;box-shadow:inset 0 0 0 1px #ead7a9}.health.has-alerts .status-led{background:var(--warn)}.health em{display:grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:currentColor;color:#fff;font-size:10px;font-style:normal}.status-panel{position:absolute;right:0;top:calc(100% + 9px);z-index:5;width:min(380px,calc(100vw - 28px));padding:11px;background:var(--card);border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}.status-empty{padding:7px 9px}.status-empty strong,.status-empty small{display:block}.status-empty strong{font-size:14px}.status-empty small{margin-top:4px;color:var(--muted);font-size:12px}.status-alerts{display:grid;gap:7px}.status-alert{display:flex;gap:9px;padding:10px;border-radius:12px;background:var(--warn-bg);color:#735718}.status-alert span{width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--warn);flex:0 0 auto}.status-alert p{margin:0;font-size:12px;font-weight:750;line-height:1.4}.status-alert.danger{background:var(--bad-bg);color:#8f3028}.status-alert.danger span{background:var(--bad)}
.dashboard{width:min(1180px,calc(100% - 38px));height:100%;min-height:0;margin:0 auto;padding:14px 0 10px;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:11px}
.team-strip,.summary,.insight-card{background:rgba(255,253,249,.95);border:1px solid rgba(228,222,211,.92);box-shadow:var(--shadow)}.team-strip{min-height:64px;border-radius:20px;padding:9px 13px;display:flex;align-items:center;gap:13px}.section-label{width:88px;flex:0 0 auto}.section-label span,.section-label small{display:block}.section-label span{font-weight:800}.section-label small{margin-top:3px;color:var(--muted);font-size:11px}.team-row{display:flex;gap:7px;overflow-x:auto;min-width:0;padding:1px 1px 3px;scrollbar-width:thin}.person{flex:0 0 auto;position:relative}.person summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:8px 10px;background:#edf1e9;border:1px solid #ebe4d9;border-radius:12px}.person summary::-webkit-details-marker{display:none}.led{width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 3px rgba(0,0,0,.035);flex:0 0 auto}.led.in_call{background:var(--bad)}.led.ringing{background:var(--warn)}.led.inactive{background:#aeb4aa}.led.unregistered{background:#4f5550}.person-copy strong,.person-copy small{display:block;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-copy strong{font-size:12px}.person-copy small{margin-top:2px;color:var(--muted);font-size:10px}.person-detail{position:absolute;top:calc(100% + 7px);left:0;z-index:4;width:220px;padding:11px;background:var(--card);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);display:grid;gap:7px}.person-detail div{display:flex;justify-content:space-between;gap:10px;font-size:11px}.person-detail span{color:var(--muted)}.empty{color:var(--muted);font-size:13px}
.summary{border-radius:22px;padding:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.summary-heading{grid-column:1/-1;padding:4px 5px 7px}.summary-heading .eyebrow{margin-bottom:2px}.summary-heading h2{margin:0;font-size:18px;letter-spacing:-.03em}.metric{min-width:0;padding:13px 16px;border-radius:15px;background:#edf1e9}.metric span{display:block;color:var(--muted);font-size:11px;font-weight:800}.metric strong{display:block;margin-top:7px;font-size:30px;line-height:1;letter-spacing:-.05em}
.insight-card{min-height:0;border-radius:24px;padding:16px 20px 14px;display:grid;grid-template-rows:auto minmax(0,1fr)}.insight-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}.view-tabs{display:flex;gap:4px}.view-tabs button,.segmented button{border:0;cursor:pointer;font:inherit;font-weight:800}.view-tabs button{padding:9px 13px;border-radius:11px;background:transparent;color:var(--muted);font-size:13px}.view-tabs button.active{background:#e7ede5;color:var(--accent)}.panel-tools{display:flex;align-items:center;gap:10px}.segmented{display:flex;padding:3px;border:1px solid var(--line);border-radius:12px;background:#f4efe7}.segmented button{padding:7px 10px;border-radius:9px;background:transparent;color:var(--muted);font-size:11px}.segmented button.active{background:var(--card);color:var(--accent);box-shadow:0 2px 8px rgba(74,63,53,.10)}.download-report{height:34px;padding:0 13px;border-radius:11px;background:var(--accent);color:#fff;text-decoration:none;display:inline-flex;align-items:center;font-size:12px;font-weight:800}.download-report:hover{background:var(--accent-hover)}
.panel{display:none;min-height:0;padding-top:13px}.panel.active{display:grid;grid-template-rows:auto minmax(0,1fr)}.panel-title{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.eyebrow{margin:0 0 3px;color:var(--muted);font-size:11px;font-weight:800}.panel-title h2{margin:0;font-size:21px;letter-spacing:-.035em}.peak-inline{text-align:right}.peak-inline span,.peak-inline small{display:block;color:var(--muted);font-size:10px}.peak-inline strong{display:block;margin:2px 0;font-size:18px}
.chart{min-height:0;height:100%;display:flex;align-items:flex-end;gap:8px;padding:12px 4px 0}.bar-column{height:100%;flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px}.bar-value{font-size:10px;font-weight:800;color:var(--text);opacity:1}.bar{width:min(29px,72%);min-height:3px;border-radius:8px 8px 3px 3px;background:var(--accent);opacity:.8;transition:height .2s}.bar-label{font-size:10px;color:var(--muted);white-space:nowrap}
.departments{align-self:center;display:grid;gap:18px;width:min(760px,100%);margin:auto}.department>div{display:flex;justify-content:space-between;margin-bottom:6px;font-size:13px}.department i{height:11px;background:var(--soft);display:block;border-radius:10px;overflow:hidden}.department i b{height:100%;display:block;background:var(--accent);border-radius:10px}.trends{align-self:center;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.trends p{margin:0;min-height:108px;padding:18px;border-radius:16px;background:#edf1e9;font-size:15px;font-weight:750;line-height:1.45;display:flex;align-items:center}
footer{text-align:center;color:var(--muted);font-size:11px;padding:5px 0 9px}
@media(max-height:720px){.topbar{padding-top:12px;padding-bottom:12px}.dashboard{padding-top:9px;gap:8px}.team-strip{min-height:55px;padding-top:6px;padding-bottom:6px}.summary{padding:9px}.metric{padding:10px 14px}.metric strong{font-size:26px}.insight-card{padding-top:12px}.panel-title h2{font-size:19px}}
@media(max-width:760px){body{overflow:auto;display:block}.clock{display:none}.topbar{padding:16px 18px}.dashboard{width:calc(100% - 24px);height:auto;display:block;padding:12px 0}.team-strip,.summary,.insight-card{margin-bottom:10px}.summary{grid-template-columns:1fr}.insight-card{min-height:480px}.insight-head{align-items:stretch;flex-direction:column}.panel-tools{justify-content:space-between}.trends{grid-template-columns:1fr}.person-detail{position:fixed;left:14px;right:14px;top:110px;width:auto}.view-tabs{display:grid;grid-template-columns:repeat(2,1fr)}.view-tabs button{padding-left:7px;padding-right:7px}}

/* PDF/impresión basada en el mismo HTML visible */
#printSheet{display:none}
@page{size:A4 landscape;margin:8mm}
@media print{
  html,body{width:auto!important;height:auto!important;background:#fff!important;overflow:visible!important}
  body>*:not(#printSheet):not(#flowPrintView){display:none!important}
  #printSheet{display:grid!important;width:281mm;height:194mm;margin:0;padding:0;background:#fff;color:var(--text);grid-template-rows:auto auto minmax(0,1fr);gap:4mm;overflow:hidden;break-inside:avoid;page-break-inside:avoid}
  .print-header{display:flex;align-items:flex-end;justify-content:space-between;padding:0 1mm 3mm;border-bottom:1px solid var(--line)}
  .print-header div{display:flex;align-items:baseline;gap:4mm}.print-header strong{font-size:22px;letter-spacing:-.04em}.print-header span{font-size:14px;font-weight:800;color:var(--accent)}.print-header small{font-size:9px;color:var(--muted)}
  .print-summary{margin:0!important;padding:3mm!important;border-radius:4mm!important;box-shadow:none!important;background:var(--card)!important;grid-template-columns:repeat(3,1fr)!important;gap:2.5mm!important}
  .print-summary .metric{padding:3mm 4mm!important;border-radius:3mm!important}.print-summary .metric strong{font-size:23px!important}
  .print-panel{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;min-height:0!important;height:100%!important;padding:0 1mm!important;overflow:hidden!important;break-inside:avoid;page-break-inside:avoid}
  .print-panel .panel-title{margin:0 0 2mm}.print-panel .panel-title h2{font-size:18px}.print-panel .eyebrow{font-size:9px}.print-panel .peak-inline strong{font-size:15px}
  .print-panel .chart{height:100%!important;min-height:0!important;padding:3mm 0 0!important;gap:1.5mm!important;overflow:hidden!important}.print-panel .bar-column{gap:1.2mm!important}.print-panel .bar{width:min(7mm,72%)!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.print-panel .bar-value{font-size:8px!important}.print-panel .bar-label{font-size:7px!important}
  .print-panel .departments{width:100%!important;max-width:none!important;gap:5mm!important;padding:5mm 12mm}.print-panel .department>div{font-size:11px}.print-panel .department i{height:3mm}.print-panel .department i b{print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .print-panel .trends{height:100%;align-self:stretch;grid-template-columns:repeat(2,1fr);gap:5mm}.print-panel .trends p{min-height:0;height:100%;padding:8mm;font-size:15px;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .print-activity .print-panel{min-height:0}.print-departments .print-panel,.print-trend .print-panel{align-content:stretch}
}

/* CallSuite / ConnectingSuite identity */
:root{--accent:#59634f!important;--accent-hover:#46503f!important;--soft:#ecefe8!important;--bg:#f6f6f2!important;--card:#fff!important;--text:#252a24!important;--muted:#6f756c!important;--line:#dfe2da!important;--ok:#59634f!important}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(115deg,#f6f6f2 0%,#ecefe8 100%)}
.topbar{background:rgba(246,246,242,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(223,226,218,.9)}
.brand-lockup{display:flex;align-items:center;gap:13px}.cs-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#59634f;color:#fff;font-weight:900;letter-spacing:-.06em}.brand span{display:block;color:#59634f;text-transform:uppercase;letter-spacing:.14em;font-size:9px;font-weight:900}.brand h1{margin:1px 0 0;font-size:20px;letter-spacing:-.04em}.brand p{margin:1px 0 0}.logout{height:34px;padding:0 12px;border:1px solid var(--line);border-radius:999px;display:inline-flex;align-items:center;text-decoration:none;color:var(--muted);font-size:11px;font-weight:800;background:rgba(255,255,255,.5)}
.summary,.insight-card{border-radius:24px}.metric{background:#ecefe8}.download-report{border-radius:999px}.bar{background:#59634f}.department i b{background:#59634f}
footer{display:flex;justify-content:center;gap:18px;flex-wrap:wrap}footer strong{color:#59634f}
.login-page{min-height:100vh;overflow:auto;background:linear-gradient(100deg,#252a24 0%,#59634f 48%,#f6f6f2 48%,#f6f6f2 100%)}.login-shell{min-height:100vh;width:min(1120px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px}.login-brand{color:#fff}.login-logo{font-size:72px;font-weight:950;letter-spacing:-.09em;line-height:1}.login-brand .eyebrow{color:#dce4d6;margin-top:22px}.login-brand h1{font-size:clamp(4rem,8vw,7rem);line-height:.82;letter-spacing:-.08em;margin:12px 0 28px}.login-brand>p:last-child{font-size:1.4rem;opacity:.8}.login-card{padding:42px;border-radius:28px;background:#fff;box-shadow:0 30px 80px rgba(20,24,19,.18)}.login-kicker{color:#59634f;text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:900}.login-card h2{font-size:2.2rem;letter-spacing:-.05em;margin:10px 0}.login-card>p{color:#6f756c}.login-card form{display:grid;gap:15px;margin-top:28px}.login-card label{display:grid;gap:7px;font-size:12px;font-weight:800}.login-card input{height:50px;border:1px solid #dfe2da;border-radius:14px;padding:0 15px;font:inherit;background:#f6f6f2}.login-card input:focus{outline:2px solid rgba(89,99,79,.25);border-color:#59634f}.login-card button{height:52px;border:0;border-radius:999px;background:#59634f;color:#fff;font-weight:850;cursor:pointer}.login-card small{display:block;margin-top:22px;color:#6f756c}.login-error{margin-top:16px;padding:11px 13px;border-radius:12px;background:#fae8e5;color:#8f3028;font-size:13px;font-weight:750}
@media(max-width:760px){.brand span{display:none}.login-page{background:#f6f6f2}.login-shell{grid-template-columns:1fr;gap:28px;padding:38px 0}.login-brand{color:#252a24}.login-brand .eyebrow{color:#59634f}.login-brand h1{font-size:4rem}.login-card{padding:28px}.right-head{gap:7px}.logout{padding:0 9px}}


/* v2.0.4 — identidad compacta CS Call Manager */
.brand-lockup{display:flex;align-items:center;gap:10px;min-width:0}
.brand-lockup h1{margin:0;font-size:20px;line-height:1;letter-spacing:-.045em;font-weight:850;white-space:nowrap}
.cs-wordmark{font-size:27px;line-height:1;font-weight:950;letter-spacing:-.105em;color:var(--text);animation:csWordmarkIn .42s cubic-bezier(.22,1,.36,1) .52s both}
.cs-symbol{display:block;width:31px;height:31px;flex:0 0 31px;color:#59634f}
.cs-symbol svg{display:block;width:100%;height:100%;overflow:visible}
.cs-symbol line{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;transform-origin:32px 32px;animation:csRayIn .34s cubic-bezier(.22,1,.36,1) both}
.cs-symbol circle{fill:currentColor;transform-box:fill-box;transform-origin:center;animation:csDotIn .24s cubic-bezier(.22,1,.36,1) both}
.cs-symbol line:nth-child(1){animation-delay:.03s}.cs-symbol line:nth-child(2){animation-delay:.07s}.cs-symbol line:nth-child(3){animation-delay:.11s}.cs-symbol line:nth-child(4){animation-delay:.15s}.cs-symbol line:nth-child(5){animation-delay:.19s}.cs-symbol line:nth-child(6){animation-delay:.23s}.cs-symbol line:nth-child(7){animation-delay:.27s}.cs-symbol line:nth-child(8){animation-delay:.31s}
.cs-symbol circle:nth-child(1){animation-delay:.30s}.cs-symbol circle:nth-child(2){animation-delay:.33s}.cs-symbol circle:nth-child(3){animation-delay:.36s}.cs-symbol circle:nth-child(4){animation-delay:.39s}.cs-symbol circle:nth-child(5){animation-delay:.42s}.cs-symbol circle:nth-child(6){animation-delay:.45s}.cs-symbol circle:nth-child(7){animation-delay:.48s}.cs-symbol circle:nth-child(8){animation-delay:.51s}
@keyframes csRayIn{from{opacity:0;transform:scale(.05)}to{opacity:1;transform:scale(1)}}
@keyframes csDotIn{from{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}
@keyframes csWordmarkIn{from{opacity:0;transform:translateX(-5px) scale(.96)}to{opacity:1;transform:none}}
footer{gap:10px}
footer span:first-of-type{display:none}
@media(prefers-reduced-motion:reduce){.cs-symbol line,.cs-symbol circle,.cs-wordmark{animation:none!important}}
@media(max-width:620px){.cs-wordmark{font-size:23px}.brand-lockup h1{font-size:17px}.cs-symbol{width:27px;height:27px;flex-basis:27px}.clock{display:none}}

/* v2.0.5 — panel agrupado: Agentes, métricas, Departamentos y Actividad */
body{overflow:auto}
.dashboard{width:min(1320px,calc(100% - 40px));height:auto;min-height:0;margin:0 auto;padding:16px 0 14px;display:grid;grid-template-rows:auto auto minmax(430px,1fr);gap:12px}
.dashboard-block,.summary{background:rgba(255,253,249,.96);border:1px solid rgba(228,222,211,.94);box-shadow:var(--shadow)}
.dashboard-block{border-radius:22px;padding:16px 18px;min-width:0}
.block-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}
.block-heading h2{margin:2px 0 0;font-size:18px;letter-spacing:-.035em}
.block-heading .eyebrow{margin:0;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:850}
.block-heading>small{color:var(--muted);font-size:11px}
.agents-block{padding-bottom:13px}
.agents-block .team-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;overflow:visible;padding:0}
.agents-block .person{min-width:0}
.agents-block .person summary{width:100%;min-height:50px;padding:9px 11px}
.agents-block .person-copy{min-width:0}
.agents-block .person-copy strong,.agents-block .person-copy small{max-width:none}
.agents-block .person-detail{z-index:20}
.summary{border-radius:20px;padding:8px;gap:8px}
.metric{padding:11px 15px;border-radius:13px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.metric span{font-size:12px}
.metric strong{margin:0;font-size:27px}
.content-grid{min-height:430px;display:grid;grid-template-columns:minmax(360px,.9fr) minmax(500px,1.45fr);gap:12px}
.departments-block,.activity-block{min-height:0;display:flex;flex-direction:column}
.departments{flex:1;display:grid;align-content:center;gap:18px;padding:12px 16px}
.department{display:grid;gap:7px}
.department>div{display:flex;justify-content:space-between;align-items:center;gap:15px}
.department strong{font-size:14px}
.department span{font-size:12px;color:var(--muted);font-weight:800}
.department i{height:10px;border-radius:999px;background:#e8ece5;overflow:hidden}
.department i b{display:block;height:100%;border-radius:inherit;background:#59634f;transition:width .35s ease}
.activity-heading{margin-bottom:10px}
.activity-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:8px}
.activity-tools .peak-inline{display:flex;align-items:baseline;gap:7px;text-align:right}
.activity-tools .peak-inline span{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.activity-tools .peak-inline strong{font-size:13px}
.activity-tools .peak-inline small{color:var(--muted);font-size:10px}
.activity-block .chart{flex:1;min-height:280px;padding-top:10px}
.download-report{border:0;cursor:pointer;font:inherit;color:#fff}
footer{padding:5px 0 10px}
@media(max-width:980px){.content-grid{grid-template-columns:1fr}.departments-block{min-height:300px}.activity-block{min-height:390px}}
@media(max-width:700px){.dashboard{width:min(100% - 20px,1320px)}.topbar{padding:13px 14px}.agents-block .team-row{grid-template-columns:repeat(2,minmax(0,1fr))}.summary{grid-template-columns:1fr}.metric{min-height:48px}.content-grid{min-height:0}.activity-tools{align-items:flex-start;flex-direction:column}.activity-tools .peak-inline{text-align:left;flex-wrap:wrap}.block-heading{align-items:flex-start}.download-report{height:32px;padding:0 11px}.dashboard-block{padding:14px}}
@media(max-width:440px){.agents-block .team-row{grid-template-columns:1fr}.brand-lockup{gap:7px}.right-head .health b{display:none}}

/* v2.0.8: el desplegable de incidencias debe quedar siempre sobre las tarjetas. */
.topbar{
  position:relative;
  z-index:1000;
  overflow:visible;
  isolation:isolate;
}
.health-details{
  position:relative;
  z-index:1100;
}
.status-panel{
  z-index:1200;
  max-height:calc(100vh - 96px);
  overflow-y:auto;
  overscroll-behavior:contain;
}
.dashboard,
.agents-block,
.agents-block .person,
.agents-block .person-detail{
  z-index:auto;
}
@media(max-width:760px){
  .status-panel{
    position:fixed;
    top:72px;
    right:14px;
    left:14px;
    width:auto;
    max-height:calc(100vh - 88px);
  }
}

/* v2.1.0 — resumen compacto y semántica visual coherente */
.health{background:#f3f4f1;color:#266749;box-shadow:inset 0 0 0 1px #dde1da}
.health .status-led{background:#4f8265;box-shadow:0 0 0 4px rgba(79,130,101,.10)}
.health-details summary::after{background:#f3f4f1!important}
.agent-summary{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:11px}
.agent-summary span{white-space:nowrap}
.agent-summary strong{color:var(--text);font-size:12px}
.summary{grid-template-columns:1fr;padding:12px 14px}
.calls-compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.calls-compact>div{display:flex;align-items:baseline;justify-content:center;gap:8px;padding:12px 14px}
.calls-compact>div+div{border-left:1px solid var(--line)}
.calls-compact strong{font-size:25px;line-height:1;letter-spacing:-.04em;color:var(--text)}
.calls-compact span{font-size:12px;font-weight:750;color:var(--muted)}
@media(max-width:700px){.agent-summary{width:100%;justify-content:flex-start;gap:10px}.block-heading{flex-wrap:wrap}.calls-compact{grid-template-columns:1fr}.calls-compact>div{justify-content:space-between;padding:10px 4px}.calls-compact>div+div{border-left:0;border-top:1px solid var(--line)}}


/* v2.1.0 revisión — coherencia de datos, panel más compacto y pie legal */
.content-grid{min-height:360px}
.departments-block,.activity-block{min-height:360px}
.activity-block .chart{min-height:210px}
.site-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 12px 14px;color:var(--muted);font-size:10px;line-height:1.35}
.site-footer strong{color:var(--text);font-size:11px;font-weight:750}
.site-footer span{display:block!important}
@media(max-width:980px){.departments-block,.activity-block{min-height:330px}.activity-block .chart{min-height:190px}}
@media(max-width:700px){.site-footer{padding-bottom:18px}.content-grid{gap:10px}}

/* v2.1.0 revisión 2 — jerarquía de agentes y nomenclatura universal de llamadas */
.agents-block .block-heading{margin-bottom:8px}
.agent-summary{width:100%;justify-content:flex-start;gap:24px;padding:10px 2px 13px;margin-bottom:10px;border-bottom:1px solid var(--line);font-size:12px}
.agent-summary span{display:inline-flex;align-items:center;gap:6px}
.agent-summary strong{font-size:15px;font-weight:850}
.agent-symbol{font-size:13px;line-height:1}
.agent-symbol.registered{color:var(--ok)}
.agent-symbol.in-call{color:var(--text)}
.agent-symbol.unregistered{color:#69706a}
.agent-summary .has-unregistered .agent-symbol.unregistered{color:var(--bad)}
.summary-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:4px 5px 7px}
.scope-selector{flex:0 0 auto}
.scope-selector button{white-space:nowrap}
.call-direction{display:inline-block;min-width:25px;color:var(--text);font-weight:850;letter-spacing:-.08em}
@media(max-width:700px){
  .agent-summary{gap:12px 18px}
  .summary-heading{align-items:flex-start;flex-direction:column}
  .scope-selector{width:100%;display:grid;grid-template-columns:1fr 1fr}
}


/* v2.1.0 revisión 4 — logo corporativo animado en el acceso */
.login-company-logo{display:flex;align-items:center;gap:18px;min-height:82px}
.login-company-logo .cs-symbol{width:72px;height:72px;flex-basis:72px;color:#fff}
.login-company-logo .cs-wordmark{font-size:72px;color:#fff;line-height:1}
@media(max-width:760px){
  .login-company-logo{gap:13px;min-height:58px}
  .login-company-logo .cs-symbol{width:52px;height:52px;flex-basis:52px;color:#59634f}
  .login-company-logo .cs-wordmark{font-size:52px;color:#252a24}
}

/* v2.1.0 revisión 5 — impresión sin recortes y datos de agentes resilientes */
.call-direction{white-space:nowrap;font-family:"Segoe UI Symbol","Noto Sans Symbols 2",sans-serif}
.block-heading,.summary-heading,.activity-tools,.calls-compact,.agent-summary{min-width:0}
.eyebrow,h1,h2,strong,small,span{overflow-wrap:normal}
@media print{
  #printSheet{width:100%!important;height:190mm!important;padding:1mm!important;overflow:visible!important}
  .print-header,.print-summary,.print-panel{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
  .print-summary{display:grid!important;grid-template-columns:1fr!important;padding:4mm!important;overflow:visible!important}
  .print-summary .summary-heading{display:flex!important;padding:0 1mm 3mm!important;overflow:visible!important}
  .print-summary .calls-compact{width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;border-top:1px solid var(--line)!important;overflow:visible!important}
  .print-summary .calls-compact>div{min-width:0!important;padding:3.5mm 3mm!important;white-space:nowrap!important}
  .print-summary .calls-compact>div+div{border-left:1px solid var(--line)!important}
  .print-panel{padding:4mm!important;border:1px solid var(--line)!important;border-radius:4mm!important;box-shadow:none!important}
  .print-panel .block-heading{padding:0!important;margin:0 0 2mm!important;overflow:visible!important}
  .print-panel .eyebrow,.print-panel h2,.print-panel .peak-inline{position:static!important;clip:auto!important;overflow:visible!important;white-space:nowrap!important}
  .print-panel .activity-tools{padding:0!important;margin:0 0 2mm!important}
}


/* Revision 7 — identidad corporativa visible y acceso 2FA */
:root{--brand-green:#667A4F;--brand-graphite:#454B47;--line:#d6d9d2;--shadow:0 14px 32px rgba(41,47,42,.10)}
.cs-symbol .symbol-rays line:nth-child(odd),.cs-symbol .symbol-dots circle:nth-child(odd){stroke:var(--brand-green);fill:var(--brand-green)}
.cs-symbol .symbol-rays line:nth-child(even),.cs-symbol .symbol-dots circle:nth-child(even){stroke:var(--brand-graphite);fill:var(--brand-graphite)}
.cs-symbol .symbol-rays line{stroke-width:3;stroke-linecap:round}
.cs-wordmark,.brand-lockup h1{color:var(--brand-graphite)!important}
.download-report,.login-card button{background:var(--brand-green)}
.download-report:hover,.login-card button:hover{filter:brightness(.92)}
.dashboard-block,.summary{border-color:var(--line);box-shadow:var(--shadow)}
.login-card input{border-color:#cfd3cb}.login-card input:focus{border-color:var(--brand-green);outline:3px solid rgba(102,122,79,.18)}
.login-company-logo .cs-symbol{color:var(--brand-green)!important}.login-company-logo .cs-wordmark{color:var(--brand-graphite)!important}

.filter-bar{display:flex;align-items:end;gap:14px;padding:14px 18px}.filter-copy{margin-right:auto}.filter-copy strong{font-size:15px}.filter-bar label{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.filter-bar select{min-width:210px;height:38px;border:1px solid var(--line);border-radius:11px;background:var(--card);color:var(--ink);padding:0 34px 0 11px;font:inherit;font-size:13px}.filter-bar button{height:38px;border:1px solid var(--line);border-radius:11px;background:#f4efe7;color:var(--ink);padding:0 13px;font-weight:800;cursor:pointer}@media(max-width:800px){.filter-bar{align-items:stretch;flex-direction:column}.filter-bar select{width:100%;min-width:0}.filter-copy{margin-right:0}}

/* Revisión 9 — pie visible, identidad legible y descarga PDF real */
html,body{min-height:100%}
body{height:auto;min-height:100vh;overflow:auto;grid-template-rows:auto minmax(0,1fr) auto}
.dashboard{height:auto;min-height:0;align-content:start}
.site-footer{position:relative;z-index:2;width:100%;padding:12px 16px 16px;background:rgba(255,253,249,.92);border-top:1px solid var(--line)}
.site-footer strong{display:block!important;color:#303632!important;font-size:12px!important;font-weight:850!important}
.cs-symbol{width:42px;height:42px;flex-basis:42px}
.cs-symbol .symbol-rays line{stroke-width:4.4!important}
.cs-symbol .symbol-dots circle:nth-child(odd){fill:#718a50!important}
.cs-symbol .symbol-dots circle:nth-child(even){fill:#303632!important}
.cs-symbol .symbol-rays line:nth-child(odd){stroke:#718a50!important}
.cs-symbol .symbol-rays line:nth-child(even){stroke:#303632!important}
.cs-wordmark{font-size:30px!important;font-weight:950!important;color:#303632!important}
.download-report{border:0;cursor:pointer;transition:transform .12s ease,filter .12s ease,opacity .12s ease}
.download-report:hover{transform:translateY(-1px);filter:brightness(.92)}
.download-report:active{transform:translateY(0)}
.download-report:disabled{cursor:wait;opacity:.68;transform:none}
@media(max-width:620px){.cs-symbol{width:34px;height:34px;flex-basis:34px}.cs-wordmark{font-size:25px!important}}

/* Revisión 10 — flujo vertical estable, filtros compactos y marca legible */
html{height:auto;min-height:100%;}
body{
  display:flex!important;
  flex-direction:column;
  min-height:100vh;
  height:auto!important;
  overflow-x:hidden;
  overflow-y:auto!important;
}
.topbar{flex:0 0 auto;}
.dashboard{
  flex:0 0 auto;
  width:min(1320px,calc(100% - 40px));
  height:auto!important;
  min-height:0!important;
  grid-template-rows:auto auto auto auto!important;
  align-content:start!important;
}
.filter-bar{min-height:0!important;align-self:auto!important;}
.content-grid{min-height:360px;}
.site-footer{
  position:static!important;
  inset:auto!important;
  flex:0 0 auto;
  margin-top:auto;
  z-index:auto!important;
  width:100%;
  clear:both;
}
.cs-symbol{width:46px!important;height:46px!important;flex-basis:46px!important;}
.cs-symbol .symbol-rays line{stroke-width:5!important;}
.cs-symbol .symbol-dots circle{r:3.7px;}
.cs-symbol .symbol-rays line:nth-child(odd){stroke:#759447!important;}
.cs-symbol .symbol-dots circle:nth-child(odd){fill:#759447!important;stroke:#759447!important;}
.cs-symbol .symbol-rays line:nth-child(even){stroke:#252b27!important;}
.cs-symbol .symbol-dots circle:nth-child(even){fill:#252b27!important;stroke:#252b27!important;}
.download-report.is-error{background:#9b2c2c!important;}
@media(max-width:800px){
  .dashboard{width:min(100% - 20px,1320px);grid-template-rows:none!important;}
  .content-grid{min-height:0;}
}
@media(max-width:620px){.cs-symbol{width:36px!important;height:36px!important;flex-basis:36px!important;}}


/* Call Suite architecture · revision 12 */
.suite-topbar{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(320px,1fr);align-items:center;gap:24px;padding-block:13px}
.suite-identity{display:flex;align-items:center;gap:11px;min-width:0}.suite-identity .cs-symbol{width:39px;height:39px;flex:none}.suite-names{display:flex;flex-direction:column;line-height:1.05}.suite-names strong{font-size:17px;color:#303630}.suite-names span{font-size:13px;color:#687066;margin-top:4px;letter-spacing:.03em}
.suite-nav{display:flex;align-items:center;gap:6px;padding:4px;border:1px solid #d7dbd3;border-radius:14px;background:#f3f1e9}.suite-tab{position:relative;padding:10px 20px;border-radius:10px;color:#555d54;font-weight:750;text-decoration:none;transition:.18s ease}.suite-tab:hover{background:#fff}.suite-tab.active{background:#667a4f;color:#fff;box-shadow:0 2px 8px rgba(62,76,50,.18)}
.manager-dashboard{display:flex;flex-direction:column;gap:14px}.scope-block{order:0;display:grid;grid-template-columns:minmax(260px,1fr) minmax(210px,260px) minmax(210px,260px) auto;align-items:end;gap:14px;padding:17px 20px}.scope-block .filter-copy h2{font-size:18px;margin:2px 0 4px}.scope-block .filter-copy small{color:#747a72}.agents-block{order:1}.summary{order:2}.content-grid-manager{order:3;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr)}
.module-page{width:min(1180px,calc(100% - 34px));margin:18px auto 0;min-height:calc(100vh - 170px)}.module-intro{padding:18px 4px 14px}.module-intro h1{font-size:30px;margin:3px 0 5px}.module-intro>p:last-child{color:#687066;margin:0}
.flow-legend{display:flex;gap:22px;flex-wrap:wrap;padding:0 4px 14px;color:#687066;font-size:13px}.flow-legend span{display:flex;align-items:center;gap:7px}.flow-dot{width:9px;height:9px;border-radius:50%;background:#9ea59b}.flow-dot.moving{background:#667a4f}.flow-dot.waiting{background:#c79126}
.flow-canvas{padding:26px;display:flex;flex-direction:column;align-items:center;min-height:500px}.flow-stage{display:flex;align-items:center;gap:14px;width:min(430px,100%);padding:16px 18px;border:1px solid #d9ddd5;border-radius:16px;background:#fbfaf6}.flow-stage>div:last-child{display:flex;flex-direction:column}.flow-stage small,.flow-department small{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#777d74}.flow-stage strong{font-size:18px;margin:3px 0}.flow-stage span{font-size:13px;color:#6f756d}.flow-icon{width:44px;height:44px;border-radius:13px;background:#e7ebe2;color:#536247;display:grid;place-items:center;font-weight:850;flex:none}.flow-pbx{border-color:#bfc9b6;background:#f2f5ef}.flow-connector{height:42px;width:2px;background:#a9b2a3;position:relative}.flow-connector span{position:absolute;width:8px;height:8px;border-radius:50%;background:#667a4f;left:-3px;top:4px;animation:flowPulse 2s infinite}.flow-connector.branch{height:34px}.flow-departments{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.flow-department{border:1px solid #dadfd6;border-radius:17px;padding:16px;background:#fbfaf7;transition:.2s}.flow-department.is-active{border-color:#7f9270;box-shadow:0 0 0 3px rgba(102,122,79,.1)}.flow-department-head{display:flex;gap:12px;align-items:center}.flow-department-head>div:last-child{display:flex;flex-direction:column}.flow-department-head strong{font-size:17px;margin:2px 0}.flow-department-head span{font-size:12px;color:#72786f}.flow-agent-list{display:grid;gap:7px;margin-top:14px}.flow-agent{display:flex;align-items:center;gap:9px;padding:9px 10px;border-top:1px solid #e5e7e1}.flow-agent>span{width:8px;height:8px;border-radius:50%;background:#b5bbb2}.flow-agent.in_call>span,.flow-agent.ringing>span{background:#667a4f;box-shadow:0 0 0 4px rgba(102,122,79,.12)}.flow-agent.unregistered>span{background:#c1453c}.flow-agent>div{display:flex;flex-direction:column}.flow-agent small{color:#777d75}.flow-live{margin-top:15px;padding:20px;display:flex;justify-content:space-between;gap:22px;align-items:center}.flow-live h2{margin:2px 0 4px}.flow-live p{margin:0;color:#6c726a}.flow-live-calls{display:grid;gap:8px}.flow-live-item{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:#eef2ea;font-size:13px}.flow-live-item b{color:#718064}.recorder-placeholder{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.recorder-mark{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:#e7ebe2;color:#667a4f;font-size:25px}.recorder-placeholder h2{margin:18px 0 7px}.recorder-placeholder p{max-width:600px;color:#6c726a;line-height:1.55}.recorder-placeholder>span{margin-top:12px;padding:7px 12px;border-radius:999px;background:#f3f1e9;color:#66705f;font-size:12px;font-weight:750}
@keyframes flowPulse{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(24px);opacity:1}}
@media(max-width:980px){.suite-topbar{grid-template-columns:1fr auto}.suite-nav{grid-column:1/-1;grid-row:2;justify-self:center}.scope-block{grid-template-columns:1fr 1fr}.scope-block .filter-copy{grid-column:1/-1}.content-grid-manager{grid-template-columns:1fr}.right-head{justify-self:end}}
@media(max-width:640px){.suite-topbar{display:flex;flex-wrap:wrap;padding:10px 14px;gap:10px}.suite-identity{flex:1}.suite-names strong{font-size:15px}.suite-nav{order:3;width:100%;justify-content:stretch}.suite-tab{flex:1;text-align:center;padding:9px 6px;font-size:13px}.right-head .clock{display:none}.scope-block{grid-template-columns:1fr;padding:17px}.scope-block .filter-copy{grid-column:auto}.scope-block button{width:100%}.module-page{width:calc(100% - 22px);margin-top:10px}.module-intro h1{font-size:25px}.flow-canvas{padding:18px 12px}.flow-live{align-items:flex-start;flex-direction:column}.content-grid-manager{display:flex;flex-direction:column}.activity-block{order:0}.departments-block{order:1}}

/* Call Suite 3 · Recorder module */
.recorder-module{width:min(1500px,calc(100% - 36px));margin:0 auto;padding:28px 0 40px;display:grid;gap:18px}.recorder-intro{padding:4px 4px 0}.recorder-intro h1{font-size:clamp(2rem,4vw,3.4rem);margin:.15rem 0}.recorder-intro p:last-child{color:var(--muted);margin:0}.recorder-search{padding:24px}.recorder-search-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.recorder-search-grid label{display:grid;gap:7px;font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.recorder-search-grid input{height:46px;border:1px solid var(--line);border-radius:12px;background:#f7f7f3;padding:0 13px;font:inherit}.rec-primary,.rec-secondary,.quick button,.rec-actions a,.rec-actions button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;min-height:42px;padding:0 22px;font-weight:800;text-decoration:none;cursor:pointer}.rec-primary,.rec-actions .listen{background:var(--olive,#667a4f);color:#fff}.rec-secondary,.quick button,.rec-actions .download{background:#edf0e9;color:#364035}.quick{display:flex;gap:9px;margin-top:14px}.quick button{min-height:36px;padding:0 17px}.recorder-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.recorder-kpis article{padding:20px;display:grid;gap:7px}.recorder-kpis span{color:var(--muted);font-weight:700}.recorder-kpis strong{font-size:1.7rem}.recorder-results{padding:24px}.rec-table{display:grid;gap:9px;margin-top:18px}.rec-row{display:grid;grid-template-columns:110px minmax(280px,1fr) 100px 210px;align-items:center;gap:18px;border:1px solid var(--line);border-radius:16px;padding:14px 16px;background:#fff}.rec-date,.rec-duration{display:grid;gap:3px}.rec-date strong{font-size:1.2rem}.rec-date span,.rec-duration span,.rec-parties span{color:var(--muted);font-size:.78rem}.rec-parties{display:grid;grid-template-columns:1fr 34px 1fr;align-items:center;gap:10px}.rec-parties>div{display:grid;gap:3px}.rec-parties>b{text-align:center;color:var(--olive,#667a4f);font-size:1.4rem}.rec-actions{display:flex;gap:8px;justify-content:flex-end}.rec-actions a,.rec-actions button{min-height:38px;padding:0 16px}.rec-modal{position:fixed;inset:0;background:rgba(24,29,24,.48);display:none;align-items:center;justify-content:center;padding:20px;z-index:100}.rec-modal.show{display:flex}.rec-modal-card{width:min(520px,100%);background:#fff;border-radius:24px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.25);position:relative}.rec-modal-card .close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:2rem;cursor:pointer}.rec-modal-card audio{width:100%;margin:18px 0}.speed{display:flex;gap:8px;margin-bottom:18px}.speed button{border:1px solid var(--line);background:#f3f3ef;border-radius:999px;padding:8px 14px}.speed button.active{background:var(--olive,#667a4f);color:#fff}.download-big{width:100%}.toast{position:fixed;right:22px;bottom:22px;background:#263026;color:#fff;padding:12px 18px;border-radius:12px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}
@media(max-width:900px){.recorder-search-grid{grid-template-columns:1fr 1fr}.rec-row{grid-template-columns:90px 1fr}.rec-duration{grid-column:1}.rec-actions{grid-column:2}.recorder-kpis{grid-template-columns:1fr}}
@media(max-width:620px){.recorder-module{width:min(100% - 22px,1500px)}.recorder-search-grid{grid-template-columns:1fr}.rec-row{grid-template-columns:1fr}.rec-duration,.rec-actions{grid-column:auto}.rec-actions{justify-content:stretch}.rec-actions>*{flex:1}.rec-parties{grid-template-columns:1fr 24px 1fr}.suite-nav{order:3;width:100%;justify-content:center}}

/* Call Suite 3.0.0-alpha2 · navegación, filtros globales y Flow */
.suite-topbar{grid-template-columns:minmax(210px,1fr) auto minmax(210px,1fr);gap:18px}
.suite-identity{justify-self:start}.suite-nav{justify-self:center}.right-head{justify-self:end;min-width:0;gap:10px}
.header-export{border:0;border-radius:999px;background:#667a4f;color:#fff;min-height:38px;padding:0 17px;font:inherit;font-weight:780;cursor:pointer;white-space:nowrap}
.header-export:hover{background:#566a43}.header-export:disabled{opacity:.68;cursor:wait}
.scope-block{grid-template-columns:minmax(250px,1.15fr) minmax(180px,.8fr) minmax(180px,.8fr) auto auto auto;align-items:end}
.filter-control{display:grid;gap:7px}.filter-control>span,.scope-block label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:#60685f}
.filter-segmented{min-height:43px;display:flex;align-items:center}.filter-segmented button{padding:8px 11px;min-width:auto}
.scope-block>button{min-height:43px}.summary-heading{min-height:auto}.activity-tools{justify-content:flex-end}.activity-tools .peak-inline{margin-left:auto}
.block-description{margin:5px 0 0;color:#6d746c;font-size:13px;font-weight:400;text-transform:none;letter-spacing:normal}
.flow-audio-section{margin-top:15px;padding:22px}.flow-audios{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-top:16px}
.flow-audio-card{display:flex;gap:12px;align-items:flex-start;border:1px solid #dde1d9;background:#fbfaf7;border-radius:15px;padding:14px}
.flow-audio-icon{width:40px;height:40px;flex:none;border-radius:12px;display:grid;place-items:center;background:#edf0e9;color:#596b48;font-size:19px;font-weight:800}
.flow-audio-card>div:last-child{display:flex;flex-direction:column;min-width:0}.flow-audio-card small{text-transform:uppercase;letter-spacing:.07em;color:#72796f;font-size:10px;font-weight:800}.flow-audio-card strong{margin:3px 0;font-size:15px}.flow-audio-card span{color:#687066;font-size:12px;line-height:1.4}.flow-audio-card em{margin-top:6px;color:#8a8f87;font-size:10px;font-style:normal;overflow-wrap:anywhere}
.flow-audio-empty{grid-column:1/-1;padding:18px;border:1px dashed #d7dcd3;border-radius:14px;display:grid;gap:5px;color:#687066}.flow-audio-empty strong{color:#333a34}
@media(max-width:1180px){
 .suite-topbar{grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr);gap:10px}
 .clock{display:none}.header-export{padding-inline:13px}
 .scope-block{grid-template-columns:1fr 1fr 1fr}.scope-block .filter-copy{grid-column:1/-1}.scope-block>button{align-self:end}
}
@media(max-width:820px){
 .suite-topbar{grid-template-columns:1fr auto}.suite-identity{grid-column:1}.right-head{grid-column:2}.suite-nav{grid-column:1/-1;grid-row:2;width:100%;display:grid;grid-template-columns:repeat(3,1fr)}
 .suite-tab{text-align:center}.scope-block{grid-template-columns:1fr 1fr}.scope-block .filter-copy{grid-column:1/-1}.scope-block>button{width:100%}
}
@media(max-width:640px){
 .suite-topbar{display:grid;grid-template-columns:1fr auto;padding:10px 12px;gap:9px}.suite-identity{min-width:0}.suite-nav{order:initial;grid-column:1/-1;grid-row:2;width:100%}.right-head{display:flex;gap:7px}.right-head .health-details{display:none}.header-export{min-height:35px;padding:0 11px;font-size:12px}.logout{min-width:42px}
 .scope-block{grid-template-columns:1fr}.scope-block .filter-copy{grid-column:auto}.filter-segmented{width:100%;display:grid;grid-template-columns:repeat(4,1fr)}.filter-control:nth-of-type(4) .filter-segmented{grid-template-columns:repeat(2,1fr)}.filter-segmented button{padding-inline:5px}
 .flow-audios{grid-template-columns:1fr}
}

/* Call Suite 3.0.0-alpha3 */
.language-picker{display:flex;align-items:center;gap:4px;border:1px solid #d7dbd3;border-radius:10px;padding:5px 7px;background:#fff}.language-picker select{border:0;background:transparent;font-weight:700;color:#454b47}.login-language{position:fixed;right:18px;top:18px;z-index:5}.compact-intro{padding-bottom:8px}.compact-intro h1{margin:0}.agent-summary i,.calls-compact i{font-style:normal}.scope-block{grid-template-columns:minmax(110px,.7fr) repeat(2,minmax(160px,1fr)) repeat(2,minmax(220px,1.2fr)) auto}.scope-block .filter-copy{align-self:center}.load-more{display:block;width:max-content;margin:18px auto 2px;padding:10px 18px;border:1px solid #cdd4c8;border-radius:11px;color:#526047;text-decoration:none;font-weight:750;background:#f6f7f3}.flow-map{padding:24px}.map-columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:28px;align-items:start}.map-path{display:flex;flex-direction:column;align-items:center}.map-path h2{width:100%;text-align:center;margin:0 0 15px}.map-node{width:min(620px,100%);padding:15px 18px;border:1px solid #d7dcd3;border-radius:15px;background:#fbfaf7;text-align:center;display:grid;gap:5px}.map-node strong{font-size:17px}.map-node span{color:#626a61;line-height:1.45}.map-node.schedule{background:#f1f4ed}.map-arrow{height:34px;display:grid;place-items:center;color:#778270;font-size:22px}.menu-node{padding:16px}.menu-node>span{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;color:inherit}.menu-option{display:flex;text-align:left;gap:10px;padding:11px;border:1px solid #e0e3dc;border-radius:12px;background:#fff}.menu-option>b{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#667a4f;color:white}.menu-option div{display:grid;gap:3px}.menu-option span{font-size:12px}.closed-path{padding-left:28px;border-left:1px solid #dde1d9}.closed-path .map-node{max-width:420px}.status-panel{max-height:360px;overflow:auto}@media(max-width:1100px){.scope-block{grid-template-columns:1fr 1fr}.scope-block .filter-copy{grid-column:1/-1}.map-columns{grid-template-columns:1fr}.closed-path{padding:24px 0 0;border-left:0;border-top:1px solid #dde1d9}}@media(max-width:700px){.right-head{flex-wrap:wrap;justify-content:flex-end}.language-picker{order:1}.suite-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.suite-tab{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scope-block{grid-template-columns:1fr}.scope-block .filter-copy{grid-column:auto}.flow-map{padding:14px 10px}.map-node{padding:13px 11px}.menu-node>span{grid-template-columns:1fr}.site-footer{gap:5px;text-align:center}}

/* alpha5: resumen centrado en la atención, con dirección como dato secundario */
.calls-primary{border-bottom:1px solid var(--line,#dfe4da)}
.calls-secondary{display:flex;justify-content:center;gap:2rem;padding:.7rem 1rem .2rem;color:#6d756b;font-size:.9rem}
.calls-secondary span{display:inline-flex;align-items:center;gap:.35rem}
.calls-secondary b{color:#202620;font-size:1rem}
.calls-secondary i{font-style:normal}
@media (max-width:760px){
  .calls-secondary{justify-content:space-between;gap:.75rem;padding:.8rem 1.25rem .25rem}
}

/* v3.0.0-alpha6: cabecera despejada y cifras compactas */
.suite-topbar{grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr);gap:20px}
.right-head{max-width:100%;gap:9px}
.scope-actions{display:flex;align-items:end;gap:8px;align-self:end}
.scope-actions #clearFilters,.scope-actions .header-export{height:40px;white-space:nowrap}
.calls-compact strong{font-size:20px;letter-spacing:-.025em}
.calls-compact span{font-size:12px}
.calls-compact>div{padding:10px 12px}
.calls-secondary{font-size:12px;padding:7px 12px 3px}
.calls-secondary b{font-size:14px}
.module-export{align-self:flex-start;margin-top:10px}
@media(max-width:1100px){
  .suite-topbar{grid-template-columns:minmax(170px,1fr) auto minmax(170px,1fr);gap:12px}
  .right-head{gap:7px}
  .language-picker{padding:4px 6px}
}
@media(max-width:820px){
  .suite-topbar{grid-template-columns:1fr auto}
  .suite-nav{grid-column:1/-1;grid-row:2;width:100%;display:grid;grid-template-columns:repeat(3,1fr)}
  .scope-actions{grid-column:1/-1;justify-content:flex-end}
}
@media(max-width:640px){
  .scope-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .scope-actions #clearFilters,.scope-actions .header-export{width:100%}
  .calls-compact{grid-template-columns:repeat(3,minmax(0,1fr))}
  .calls-compact>div{display:grid;justify-items:center;gap:4px;padding:10px 4px}
  .calls-compact>div+div{border-left:1px solid var(--line);border-top:0}
  .calls-compact strong{font-size:18px}
  .calls-compact span{font-size:10px;text-align:center}
}


/* Call Suite 3.0.0-alpha7 · ConnectingSuite Brand Refresh */
:root{--accent:#30322f;--accent-hover:#171916;--bg:#f3f2ed;--card:#faf9f5;--text:#20231f;--muted:#73766f;--line:#d9d9d2;--soft:#ebeae4;--shadow:none}
html{background:var(--bg)}body{overflow:auto;background:linear-gradient(90deg,#eef0eb 0,#f7f6f2 48%,#eef0eb 100%);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;display:grid;grid-template-rows:auto 1fr auto}
.site-header{display:grid;grid-template-columns:minmax(210px,1fr) auto minmax(210px,1fr);align-items:center;gap:28px;padding:18px clamp(20px,3vw,48px);background:rgba(243,242,237,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}
.suite-identity{display:flex;align-items:center;gap:12px}.cs-symbol{width:38px;height:38px;color:#30322f}.cs-symbol svg{width:100%;height:100%;stroke:currentColor;fill:currentColor}.symbol-rays line{stroke-width:3;stroke-linecap:round}.suite-names{display:grid;gap:1px}.suite-names strong{font-size:16px}.suite-names span{font-size:12px;color:var(--muted)}
.suite-nav{display:flex;align-items:center;gap:28px;border:0;background:transparent;padding:0}.suite-tab{position:relative;padding:12px 0;color:#555952;font-weight:650;text-decoration:none;border-radius:0;background:transparent}.suite-tab:hover{color:var(--text)}.suite-tab.active{background:transparent;color:var(--text)}.suite-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:2px;background:var(--text)}
.right-head{display:flex;justify-content:flex-end;align-items:center;gap:10px}.incident-details{position:relative}.incident-details summary{list-style:none}.incident-details summary::-webkit-details-marker{display:none}.incident-button{width:38px;height:38px;border:1px solid var(--line);border-radius:999px;background:transparent;display:grid;place-items:center;cursor:pointer;position:relative;color:var(--text)}.incident-icon{font-weight:800}.incident-button em{position:absolute;right:-4px;top:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:#9a3d35;color:#fff;font-size:10px;font-style:normal;display:grid;place-items:center}.language-picker{border:1px solid var(--line);background:transparent;border-radius:999px;padding:7px 9px}.logout{border:1px solid var(--line);border-radius:999px;padding:9px 14px;text-decoration:none;color:var(--text);font-size:13px}
.dashboard,.module-page{width:min(1160px,calc(100% - 44px));margin:0 auto;padding:38px 0 60px;display:grid;gap:38px;height:auto}
.control-bar{display:grid;grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) auto auto;gap:22px;align-items:end;padding:0 0 28px;border-bottom:1px solid var(--line)}.control-bar label,.filter-control{display:grid;gap:7px}.control-bar label>span,.filter-control>span{font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:750;color:var(--muted)}.control-bar select{min-height:44px;border:0;border-bottom:1px solid #bfc1ba;border-radius:0;background:transparent;padding:0 28px 0 0;font-weight:650;color:var(--text)}.segmented{display:flex;gap:4px;padding:3px;background:var(--soft);border-radius:999px}.segmented button{border:0;border-radius:999px;background:transparent;padding:9px 14px;font-weight:650;color:#555952}.segmented button.active{background:#fff;color:var(--text);box-shadow:0 1px 0 rgba(0,0,0,.05)}.scope-actions{display:flex;gap:8px}.scope-actions button{min-height:42px;border:1px solid var(--line);border-radius:999px;background:transparent;padding:0 16px;font-weight:650}.scope-actions .header-export{background:var(--text);color:#fff;border-color:var(--text)}
.agents-section{padding:0 0 34px;border-bottom:1px solid var(--line)}.block-heading h2,.summary-strip h2,.result-section h2{font-size:22px;letter-spacing:-.03em;margin:0 0 18px}.agent-summary{display:flex;gap:24px;margin-bottom:18px;color:var(--muted);font-size:13px}.agent-summary strong{color:var(--text)}.team-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;overflow:visible}.person{border:0;border-radius:14px;background:rgba(255,255,255,.42);padding:12px}.person summary{cursor:pointer}.person-detail{margin-top:12px}
.summary-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;padding:4px 0 38px;border-bottom:1px solid var(--line)}.summary-metric{display:grid;gap:3px}.summary-metric strong{font-size:42px;line-height:1;letter-spacing:-.06em;font-weight:570}.summary-metric span{color:var(--muted);font-size:14px}.summary-metric i{font-style:normal}.direction-arrow{font-size:18px;color:var(--text)}
.results-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:70px}.result-section{min-height:330px;padding:0;background:transparent;border:0;box-shadow:none}.activity-tools{display:flex;justify-content:flex-end}.peak-inline{font-size:12px;color:var(--muted)}.chart{min-height:260px}.departments{display:grid;gap:28px;padding-top:42px}.department>div{display:flex;justify-content:space-between;gap:15px}.department span{color:var(--muted);font-size:12px}.department i{display:block;height:7px;margin-top:10px;background:#dedfd9;border-radius:99px;overflow:hidden}.department i b{display:block;height:100%;background:#4a4d48;border-radius:99px}
.bar{background:#4a4d48!important}.bar-column{min-width:0}.bar-value,.bar-label{color:var(--muted)}
.recorder-module{gap:36px}.recorder-search,.recorder-results{padding:0;background:transparent;border:0;box-shadow:none}.recorder-search{padding-bottom:34px;border-bottom:1px solid var(--line)}.recorder-search-grid{gap:18px}.rec-primary{background:var(--text)!important;color:#fff!important}.rec-secondary,.rec-actions .download,.load-more{background:transparent!important;border:1px solid var(--line)!important;color:var(--text)!important}.rec-row{background:rgba(255,255,255,.5);border:1px solid var(--line);border-radius:14px}.rec-actions .listen{background:var(--text)!important;color:#fff!important}.recorder-results .block-heading h2{font-size:17px;color:var(--muted);font-weight:650}
.flow-map{padding:0;background:transparent;border:0}.map-columns{gap:70px}.map-node{background:rgba(255,255,255,.5);border:1px solid var(--line);border-radius:14px}.map-node.schedule{background:#e9e8e2}.menu-option b{background:var(--text)}.closed-path{border-left-color:var(--line)}
.site-footer{padding:28px 20px 34px;border-top:1px solid var(--line);background:#f3f2ed;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:12px}.site-footer strong{color:var(--text);font-weight:650}.status-panel{right:0;top:calc(100% + 10px);background:#faf9f5;border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,.1)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:920px){.site-header{grid-template-columns:1fr auto}.suite-nav{grid-column:1/-1;grid-row:2;justify-content:center}.dashboard,.module-page{width:min(100% - 28px,1160px);padding-top:28px}.control-bar{grid-template-columns:1fr 1fr}.scope-actions{grid-column:1/-1;justify-content:flex-end}.results-grid{grid-template-columns:1fr;gap:46px}.result-section{min-height:260px}}
@media(max-width:620px){.site-header{padding:13px 14px;gap:10px}.suite-nav{gap:18px;justify-content:flex-start;overflow-x:auto}.suite-tab{font-size:13px;white-space:nowrap}.suite-names strong{font-size:14px}.suite-names span{font-size:11px}.control-bar{grid-template-columns:1fr;gap:18px}.scope-actions{grid-column:auto;justify-content:stretch}.scope-actions button{flex:1}.summary-strip{gap:14px}.summary-metric strong{font-size:32px}.team-row{grid-template-columns:repeat(2,minmax(0,1fr))}.results-grid{gap:38px}.recorder-search-grid{grid-template-columns:1fr}.rec-row{grid-template-columns:1fr}.map-columns{grid-template-columns:1fr;gap:38px}.closed-path{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:34px}}


/* v3.0.0-alpha8: claridad, proporciones y estados unificados */
:root{--accent:#687264;--accent-hover:#596255;--text:#242823;--bg:#f4f3ee;--card:#fffefa;--soft:#e5e6e1}
.incident-button{color:#555d56;background:#fafaf7;border-color:#dfe1da}
.incident-button.has-alerts{color:#a33b31;background:#fff4f1;border-color:#efc9c3}
.rec-primary,.listen{background:#6f7969!important;color:#fff!important}
.rec-primary:hover,.listen:hover{background:#606a5b!important}
.download,.rec-secondary,.load-more{background:#f8f8f4!important;color:#343a35!important;border:1px solid #d9ddd5!important}
.listen{box-shadow:none!important}
.person{max-width:180px;min-width:0}
.person summary{width:100%;max-width:180px;min-width:0}
.person-copy{min-width:0;display:block}
.person-copy strong,.person-copy small{max-width:138px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.led.in_call{background:#c74439}.led.ringing{background:#c58a24}.led.inactive{background:#aeb4aa}.led.unregistered{background:#606560}
.department i b{transition:width .25s ease}
.department>div span{color:var(--muted);font-weight:650}
body.is-updating .control-bar{opacity:.72}
body.is-updating .control-bar::after{content:'';width:14px;height:14px;border:2px solid #cfd3cc;border-top-color:#687264;border-radius:50%;animation:cs-spin .7s linear infinite;align-self:center}
@keyframes cs-spin{to{transform:rotate(360deg)}}
@media(max-width:640px){.person,.person summary{max-width:160px}.person-copy strong,.person-copy small{max-width:118px}}

/* alpha9 · detalle real de FreePBX */
.map-node span small,.flow-audio small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.map-node em,.flow-missing{font-style:normal;color:var(--muted)}.detailed-menu{width:min(760px,100%)}.department-grid{display:grid;grid-template-columns:1fr;gap:12px}.department-option{align-items:flex-start}.department-option>div{width:100%}.department-option span{display:block;line-height:1.45}.department-option span b{font-weight:700;color:var(--text)}@media(min-width:900px){.department-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* alpha10 · navegación profesional, flujo compacto y refresco invisible */
.suite-nav{gap:6px;padding:4px;background:#e9e8e2;border:1px solid #d8d8d1;border-radius:14px}
.suite-tab{padding:9px 18px!important;border-radius:10px!important;line-height:1.15;white-space:nowrap;color:#555952!important}
.suite-tab.active{background:#fff!important;color:#20231f!important;box-shadow:0 1px 4px rgba(30,34,30,.08)}
.suite-tab.active:after{display:none!important}
body.is-updating .control-bar{opacity:1!important}
body.is-updating .control-bar::after{display:none!important}
.rec-primary,.rec-actions .listen{background:#737d6d!important;color:#fff!important}
.rec-primary:hover,.rec-actions .listen:hover{background:#65705f!important}

.flow-page{width:min(1040px,calc(100% - 44px));padding-top:42px}
.flow-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d9d9d2;border:1px solid #d9d9d2;border-radius:18px;overflow:hidden}
.flow-fact{display:grid;gap:8px;padding:24px;background:#faf9f5}
.flow-fact span,.flow-step span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#73766f;font-weight:750}
.flow-fact strong{font-size:20px;letter-spacing:-.025em;font-weight:650;overflow-wrap:anywhere}
.flow-section{padding-top:44px;border-top:1px solid #d9d9d2}
.flow-section:first-of-type{border-top:0}
.flow-section-heading{margin-bottom:22px}.flow-section-heading span{font-size:28px;letter-spacing:-.04em;font-weight:650}
.flow-step-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:24px}
.flow-step{display:grid;gap:8px;padding:22px 24px;border:1px solid #d9d9d2;border-radius:16px;background:rgba(255,255,255,.48)}
.flow-step strong{font-size:18px;font-weight:620;overflow-wrap:anywhere}
.flow-departments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.flow-department{border:1px solid #d9d9d2;border-radius:16px;background:#faf9f5;overflow:hidden}
.flow-department header{display:flex;align-items:flex-start;gap:14px;padding:20px 22px;border-bottom:1px solid #e1e1da}
.flow-department header>b{display:grid;place-items:center;min-width:32px;height:32px;border-radius:10px;background:#30332f;color:#fff}
.flow-department h3{margin:0;font-size:20px;letter-spacing:-.025em}.flow-department header p{margin:4px 0 0;color:#73766f;font-size:13px}
.flow-department-body{display:grid}.flow-department-body .flow-fact{grid-template-columns:130px 1fr;align-items:start;padding:13px 22px;border-bottom:1px solid #ecece6;background:transparent;gap:16px}
.flow-department-body .flow-fact:last-child{border-bottom:0}.flow-department-body .flow-fact strong{font-size:14px;line-height:1.45;font-weight:560}
.flow-after-hours{margin-top:4px}.flow-note{color:#73766f}
@media(max-width:920px){.suite-nav{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.suite-tab{text-align:center;padding-inline:10px!important}.flow-overview{grid-template-columns:1fr}.flow-step-grid,.flow-departments{grid-template-columns:1fr}}
@media(max-width:620px){
 .site-header{grid-template-columns:minmax(0,1fr) auto}.right-head{gap:6px}.logout{order:3}.language-picker{padding:6px 8px}
 .suite-nav{grid-column:1/-1;overflow:visible;background:#e9e8e2;border-radius:12px;padding:4px;gap:4px}
 .suite-tab{font-size:13px!important;padding:10px 5px!important;overflow:hidden;text-overflow:ellipsis}
 .flow-page{width:min(100% - 24px,1040px);padding-top:28px;gap:30px}
 .flow-overview{border-radius:15px}.flow-fact{padding:18px}.flow-fact strong{font-size:18px}
 .flow-section{padding-top:32px}.flow-section-heading span{font-size:25px}
 .flow-step{padding:18px}.flow-department header{padding:17px}.flow-department-body .flow-fact{grid-template-columns:1fr;gap:4px;padding:12px 17px}
}

/* alpha11 · Human-readable PBX map */
.flow-page{width:min(1040px,calc(100% - 44px));padding-top:42px}
.flow-map{padding:0;background:transparent;border:0}
.flow-summary-card{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:rgba(255,255,255,.52)}
.flow-summary-card>div{padding:24px 26px;border-bottom:1px solid var(--line)}
.flow-summary-card>div:nth-child(odd):not(.schedule-summary){border-right:1px solid var(--line)}
.flow-summary-card span,.plain-step span,.flow-story span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:760;margin-bottom:8px}
.flow-summary-card>div>strong{font-size:22px;line-height:1.25;font-weight:650}
.schedule-summary{grid-column:1/-1;border-bottom:0!important}
.schedule-group{display:grid;gap:8px;margin-top:6px}.schedule-group>strong{font-size:14px}
.schedule-line{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:18px;align-items:baseline;padding:8px 0;border-top:1px solid rgba(217,217,210,.65)}
.schedule-line span{margin:0;text-transform:none;letter-spacing:0;font-size:15px;color:var(--text);font-weight:570}.schedule-line b{font-size:15px}.schedule-line small{grid-column:1/-1;color:var(--muted)}
.flow-section{padding-top:56px;border-top:0}.flow-section h2{font-size:32px;letter-spacing:-.045em;margin:0 0 24px;font-weight:650}
.plain-flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:24px}
.plain-step{padding:22px 24px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.5)}.plain-step strong{font-size:18px;line-height:1.4;font-weight:600}
.flow-departments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.flow-department{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.58);overflow:hidden}
.flow-department header{display:flex;align-items:flex-start;gap:14px;padding:22px 24px;border-bottom:1px solid var(--line)}
.flow-department header>b{display:grid;place-items:center;min-width:36px;height:36px;border-radius:11px;background:var(--text);color:#fff;font-size:17px}
.flow-department h3{margin:0;font-size:23px;letter-spacing:-.03em}.flow-department header p{margin:4px 0 0;color:var(--muted)}
.flow-story{display:grid}.flow-story p{margin:0;padding:17px 24px;border-bottom:1px solid rgba(217,217,210,.72)}.flow-story p:last-child{border-bottom:0}.flow-story strong{font-size:15px;line-height:1.55;font-weight:580}.flow-story strong small{font-size:12px;color:var(--muted)}
.flow-after-hours{padding-bottom:20px}.flow-muted{color:var(--muted);font-size:15px}
@media(max-width:760px){.flow-page{width:calc(100% - 24px);padding-top:28px}.flow-summary-card{grid-template-columns:1fr}.flow-summary-card>div{border-right:0!important}.schedule-summary{grid-column:auto}.schedule-line{grid-template-columns:1fr}.schedule-line b{margin-top:-4px}.flow-section{padding-top:42px}.flow-section h2{font-size:27px}.plain-flow,.flow-departments{grid-template-columns:1fr}.flow-department header,.flow-story p,.plain-step{padding:18px}.flow-summary-card>div{padding:19px}.flow-summary-card>div>strong{font-size:19px}}


/* alpha12 · Narrative call-flow */
.narrative-summary{margin-bottom:8px}
.narrative-section{padding-top:52px}
.narrative-intro{font-size:18px;line-height:1.65;padding:24px 26px;margin-bottom:20px;border-left:3px solid #8a9381;background:rgba(255,255,255,.38);border-radius:0 16px 16px 0}
.narrative-intro p{margin:0 0 7px}.narrative-intro p:last-child{margin-bottom:0}
.narrative-department header{align-items:center}.narrative-department header h3{margin:0}
.narrative-copy{padding:20px 24px;font-size:16px;line-height:1.62}
.narrative-copy p{margin:0 0 10px}.narrative-copy p:last-child{margin-bottom:0}
.narrative-main{font-weight:650;color:var(--text)}
@media(max-width:760px){.narrative-section{padding-top:38px}.narrative-intro{font-size:16px;padding:19px 18px}.narrative-copy{font-size:15px;padding:18px}.narrative-department header{padding:18px}}

/* alpha20 · Visual refresh — más contraste, misma interfaz */
:root{
  --accent:#5f7f3f;
  --accent-hover:#4f6d34;
  --brand-green:#6f8f3d;
  --brand-graphite:#2f3531;
  --bg:#f6f8f3;
  --card:#ffffff;
  --text:#252b27;
  --ink:#252b27;
  --muted:#707871;
  --line:#dce2d8;
  --soft:#e8eee3;
  --ok:#4f7f43;
  --ok-bg:#edf6e9;
  --warn:#b77b1f;
  --warn-bg:#fff6df;
  --bad:#b84b43;
  --bad-bg:#fcecea;
  --info:#3f7fa6;
  --info-bg:#eaf3f8;
  --shadow:0 12px 30px rgba(45,57,47,.08);
}
html{background:var(--bg)}
body{background:linear-gradient(180deg,#fbfcf9 0%,#f5f7f2 42%,#f2f5ef 100%);color:var(--text)}
.topbar,.site-header{background:rgba(255,255,255,.92)!important;border-bottom-color:var(--line)!important}
.site-footer{background:rgba(255,255,255,.94)!important;border-top-color:var(--line)!important}
.dashboard-block,.summary,.team-strip,.insight-card,.flow-summary-card,.flow-department,.plain-step{background:rgba(255,255,255,.96)!important;border-color:var(--line)!important;box-shadow:var(--shadow)}
.suite-nav{background:#edf1e9!important;border-color:#dce2d8!important}
.suite-tab{color:#667067!important}
.suite-tab.active{background:#fff!important;color:var(--accent)!important;box-shadow:0 2px 8px rgba(45,57,47,.10)!important}
.download-report,.rec-primary,.login-card button{background:var(--accent)!important;color:#fff!important}
.download-report:hover,.rec-primary:hover,.login-card button:hover{background:var(--accent-hover)!important;filter:none!important}
.filter-bar select,.segmented,.scope-selector{border-color:var(--line)!important;background:#f3f6f0!important}
.filter-bar button,.segmented button{background:#f5f7f3!important;color:#596159!important;border-color:var(--line)!important}
.segmented button.active,.scope-selector button.active{background:#fff!important;color:var(--accent)!important;box-shadow:0 2px 8px rgba(45,57,47,.10)!important}
.person summary,.agent-card,.metric,.trends p{background:#f1f6ed!important;border-color:#dce6d6!important}
.person summary:hover,.agent-card:hover{background:#eaf3e4!important}
.led.inactive{background:#a7b0a7!important}.led.unregistered{background:#707871!important}.led.in_call{background:var(--info)!important}.led.ringing{background:var(--warn)!important}
.agent-symbol.registered{color:var(--ok)!important}.agent-summary .has-unregistered .agent-symbol.unregistered{color:var(--bad)!important}
.health{background:var(--ok-bg)!important;color:#3f6c38!important;box-shadow:inset 0 0 0 1px #d4e7ce!important}
.health .status-led{background:var(--ok)!important}.health.has-alerts{background:var(--warn-bg)!important;color:#765719!important}.health.bad{background:var(--bad-bg)!important;color:#913b35!important}
.bar,.department i b{background:linear-gradient(180deg,#76984c,#5f7f3f)!important;opacity:1!important}
.calls-compact>div:nth-child(2) .call-direction{color:var(--ok)!important}.calls-compact>div:nth-child(3) .call-direction{color:var(--info)!important}
.flow-department header>b{background:var(--accent)!important}.narrative-intro{border-left-color:var(--accent)!important;background:#f2f6ee!important}
.cs-symbol .symbol-dots circle:nth-child(odd){fill:var(--brand-green)!important}.cs-symbol .symbol-rays line:nth-child(odd){stroke:var(--brand-green)!important}
.cs-symbol .symbol-dots circle:nth-child(even){fill:var(--brand-graphite)!important}.cs-symbol .symbol-rays line:nth-child(even){stroke:var(--brand-graphite)!important}
.cs-wordmark,.brand-lockup h1{color:var(--brand-graphite)!important}
.login-card input:focus{border-color:var(--accent)!important;outline:3px solid rgba(95,127,63,.16)!important}
::selection{background:#dcebcf;color:#263021}

/* alpha21 · Light canvas — fondo luminoso y acentos CallSuite más vivos */
:root{
  --accent:#62843d;
  --accent-hover:#527232;
  --brand-green:#71933f;
  --bg:#fafbf9;
  --card:#ffffff;
  --text:#252b27;
  --muted:#6c746d;
  --line:#e1e5df;
  --soft:#f2f5ef;
  --shadow:0 8px 24px rgba(38,48,40,.055);
}
html,body{background:#fafbf9!important}
body{background-image:none!important}
main,.page,.page-shell,.dashboard,.dashboard-page,.content,.content-shell,.main-content{background:transparent!important}
.topbar,.site-header{background:#fff!important;border-bottom:1px solid #e2e6df!important}
.site-footer{background:#fff!important}
.dashboard-block,.summary,.team-strip,.insight-card,.flow-summary-card,.flow-department,.plain-step{background:#fff!important;border-color:#e1e5df!important;box-shadow:var(--shadow)!important}
.suite-nav{background:#eef2ea!important;border-color:#dce3d7!important}
.suite-tab{color:#657066!important}
.suite-tab.active{background:#fff!important;color:#526f35!important;box-shadow:0 2px 8px rgba(42,56,44,.09)!important}
.filter-bar select{background:#fff!important;border-color:#dde2db!important}
.segmented,.scope-selector{background:#f5f7f3!important;border-color:#dfe4dc!important}
.filter-bar button,.segmented button{background:transparent!important;color:#596159!important;border-color:transparent!important}
.segmented button.active,.scope-selector button.active{background:#fff!important;color:#526f35!important;box-shadow:0 2px 7px rgba(42,56,44,.09)!important}
.download-report,.rec-primary,.login-card button{background:#5d7d3b!important;color:#fff!important}
.download-report:hover,.rec-primary:hover,.login-card button:hover{background:#4e6d31!important}
.person{background:#fff!important;border-color:#e5e8e2!important;box-shadow:0 4px 14px rgba(38,48,40,.035)!important}
.person summary,.agent-card{background:#f3f8ef!important;border-color:#dbe7d4!important}
.person summary:hover,.agent-card:hover{background:#edf6e8!important}
.led:not(.inactive):not(.unregistered):not(.in_call):not(.ringing),.led.registered{background:#63863e!important;box-shadow:0 0 0 3px #e7f0df!important}
.agent-symbol.registered{color:#5d813b!important}
.calls-compact>div:nth-child(2) .call-direction{color:#5d813b!important}
.calls-compact>div:nth-child(3) .call-direction{color:#397da6!important}
hr,.divider{border-color:#e3e7e0!important}

/* alpha23 · Flow PBX-first — sin líneas absolutas ni flechas dibujadas */
.flow-page{width:min(1320px,calc(100% - 44px));padding-top:34px}
.flow-v23-summary{margin-bottom:42px;box-shadow:0 10px 28px rgba(38,48,40,.055)!important}
.flow-v23-map{--flow-green:#62843d;--flow-soft:#f2f6ee;--flow-amber:#a77a36;--flow-amber-soft:#fbf5e9;display:grid;gap:0}
.flow-v23-title{margin-bottom:28px}.flow-v23-title h1{margin:0;font-size:38px;line-height:1.05;letter-spacing:-.045em;font-weight:680;color:var(--text)}.flow-v23-title p{max-width:820px;margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.5}

/* El recorrido principal usa celdas dedicadas para los símbolos →. No hay pseudo-elementos, líneas absolutas ni cálculos de posición. */
.flow-v23-path{display:grid;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr) 36px minmax(0,1fr) 36px minmax(0,1fr);align-items:center;gap:0;margin-bottom:22px}
.flow-v23-link{display:grid;place-items:center;color:var(--flow-green);font-size:25px;font-weight:700;line-height:1;user-select:none}
.flow-v23-node{min-height:126px;padding:18px 20px 16px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:flex-end;min-width:0}
.flow-v23-node>span{align-self:flex-start;margin-bottom:auto;padding:5px 9px;border-radius:999px;background:#edf4e8;color:var(--accent);font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.05em;font-weight:800}
.flow-v23-node>strong{font-size:20px;line-height:1.2;letter-spacing:-.025em;font-weight:680;overflow-wrap:anywhere;color:var(--text)}
.flow-v23-node>small{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.flow-v23-node>em{margin-top:8px;color:#7b8378;font-size:10px;line-height:1.35;font-style:normal;overflow-wrap:anywhere}

.flow-v23-state-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:690px;margin:0 auto 46px}
.flow-v23-state{padding:18px 20px;border-radius:17px}.flow-v23-state strong{display:block;font-size:15px;margin-bottom:6px}.flow-v23-state p{margin:0;font-size:14px;line-height:1.48;color:var(--text)}
.flow-v23-state.open{background:var(--flow-soft);color:var(--accent)}.flow-v23-state.closed{background:var(--flow-amber-soft);color:var(--flow-amber)}

/* Las ramas se muestran como tarjetas independientes. La relación la da el encabezado del IVR; no se dibujan conectores que puedan desalinearse. */
.flow-v23-branches{padding-top:2px}
.flow-v23-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:18px}
.flow-v23-section-head>div>span{display:block;margin-bottom:5px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:800}
.flow-v23-section-head h2{margin:0;font-size:24px;line-height:1.15;letter-spacing:-.03em;font-weight:680;color:var(--text)}
.flow-v23-section-head>small{color:var(--muted);font-size:11px;text-align:right;line-height:1.4}
.flow-v23-branch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;align-items:start}
.flow-v23-branch-card{border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow);overflow:hidden;min-width:0}
.flow-v23-branch-card>header{display:flex;gap:12px;align-items:center;padding:17px 17px 14px;border-bottom:1px solid var(--line)}
.flow-v23-branch-card>header>b{width:34px;height:34px;flex:0 0 34px;border-radius:11px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:15px}
.flow-v23-branch-card>header>div{min-width:0}.flow-v23-branch-card h3{margin:0;font-size:18px;line-height:1.15;letter-spacing:-.02em;overflow-wrap:anywhere}.flow-v23-branch-card>header span{display:block;margin-top:3px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:760}
.flow-v23-pbx{display:grid;gap:5px;padding:15px 17px 17px}.flow-v23-pbx>span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:760}.flow-v23-pbx>strong{font-size:13px;line-height:1.4;font-weight:630;color:var(--text);overflow-wrap:anywhere}
.flow-v23-nested{margin:0 12px 12px;padding:13px;border-radius:15px;background:#f7f9f5;border:1px solid #e3e8df}
.flow-v23-nested-head{display:grid;gap:3px;padding-bottom:10px;border-bottom:1px solid #e1e6dd}.flow-v23-nested-head>span{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:760}.flow-v23-nested-head>strong{font-size:12px;line-height:1.35;color:var(--text)}
.flow-v23-subrows{display:grid;gap:7px;padding-top:10px}.flow-v23-subrow{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:11px;background:#fff;border:1px solid #e2e7df;min-width:0}
.flow-v23-subrow>b{width:26px;height:26px;flex:0 0 26px;border-radius:9px;background:#e7f0df;color:var(--accent);display:grid;place-items:center;font-size:12px}.flow-v23-subrow>div{min-width:0}.flow-v23-subrow strong{display:block;font-size:12px;line-height:1.25;overflow-wrap:anywhere}.flow-v23-subrow span{display:block;margin-top:2px;color:var(--muted);font-size:10px;line-height:1.3;overflow-wrap:anywhere}
.flow-v23-muted{color:var(--muted);text-align:center;padding:24px 0}

/* Login: el nombre Call Suite debe tener contraste incluso si el fondo es blanco. */
.login-brand h1.login-product-title{opacity:1!important;text-shadow:none!important;color:var(--brand-graphite)!important}
.login-product-title .login-call{color:var(--brand-green)!important}
.login-product-title .login-suite{color:var(--brand-graphite)!important}

@media(max-width:1100px){
 .flow-page{width:min(100% - 28px,1040px)}
 .flow-v23-path{grid-template-columns:1fr;gap:0}
 .flow-v23-link{height:32px;font-size:22px;transform:rotate(90deg)}
 .flow-v23-node{min-height:108px}
 .flow-v23-section-head{align-items:flex-start;flex-direction:column;gap:5px}.flow-v23-section-head>small{text-align:left}
}
@media(max-width:700px){
 .flow-page{width:calc(100% - 24px);padding-top:24px}.flow-v23-summary{margin-bottom:34px}
 .flow-v23-title{margin-bottom:22px}.flow-v23-title h1{font-size:30px}.flow-v23-title p{font-size:13px}
 .flow-v23-state-grid{grid-template-columns:1fr;max-width:none;margin-bottom:34px}
 .flow-v23-branch-grid{grid-template-columns:1fr}.flow-v23-branch-card{min-height:0}
 .login-product-title{font-size:clamp(3.6rem,16vw,5.2rem)!important}
}

/* alpha24 · Detalle de colas y grupos sin referencias técnicas al backend */
.flow-v24-routing{margin:0 12px 12px;padding:12px 13px;border:1px solid #e1e7dd;border-radius:14px;background:#f8faf6;display:grid;gap:8px}
.flow-v24-routing.compact{margin:9px 0 0;padding:10px 11px;background:#f7f9f5}
.flow-v24-routing-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.flow-v24-routing-head>span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:var(--accent)}
.flow-v24-routing-head>b{font-size:11px;color:var(--muted);font-weight:760}
.flow-v24-routing>small{font-size:10px;line-height:1.35;color:var(--muted)}
.flow-v24-members{display:grid;gap:7px;padding-top:2px}
.flow-v24-members-label{font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:760;color:var(--muted)}
.flow-v24-member-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px}
.flow-v24-member{display:grid;gap:2px;padding:8px 9px;border:1px solid #e2e7df;border-radius:10px;background:#fff;min-width:0}
.flow-v24-member>b{font-size:10px;color:var(--text)}
.flow-v24-member>span{font-size:10px;color:var(--muted);overflow-wrap:anywhere}
.flow-v24-members-compact .flow-v24-member-grid{grid-template-columns:1fr}
.flow-v24-subrow{align-items:flex-start!important}
.flow-v24-subrow-main{flex:1;min-width:0}
.flow-v24-subrow-main>strong{font-size:12px!important}
.flow-v24-subrow-main>span{font-size:10px!important}
.flow-v24-notes{margin-top:12px;padding-top:12px;border-top:1px solid #e0e5dc}
.flow-v24-notes>span{display:block;margin-bottom:8px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--muted)}
.flow-v24-notes>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}
.flow-v24-notes article{padding:11px 12px;border:1px solid #e0e6dc;border-radius:12px;background:#fff}
.flow-v24-notes article strong{display:block;margin-bottom:4px;font-size:11px;color:var(--text)}
.flow-v24-notes article p{margin:0;font-size:10px;line-height:1.45;color:var(--muted)}
@media(max-width:620px){
  .flow-v24-member-grid,.flow-v24-notes>div{grid-template-columns:1fr}
  .flow-v24-routing{margin-left:0;margin-right:0}
}

/* alpha25 · detalles operativos de colas y grupos sin alterar el layout de Flujo */
.flow-v25-routing-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:6px}
.flow-v25-routing-meta>div{display:grid;gap:2px;padding:8px 9px;border:1px solid #e2e7df;border-radius:10px;background:#fff}
.flow-v25-routing-meta span,.flow-v25-fallback>span{font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:760;color:var(--muted)}
.flow-v25-routing-meta strong{font-size:10px;line-height:1.35;color:var(--text);font-weight:760}
.flow-v25-fallback{display:grid;gap:3px;padding-top:8px;border-top:1px solid #e0e5dc}
.flow-v25-fallback>strong{font-size:10px;line-height:1.4;color:var(--text);font-weight:720}
.flow-v25-routing.compact .flow-v25-routing-meta{grid-template-columns:1fr}
@media(max-width:720px){
  .flow-v25-routing-meta{grid-template-columns:1fr}
}

/* alpha28 · Panel temporal interactivo + actividad por extensión */
.chart{min-height:300px;position:relative}.line-chart-shell{position:relative;width:100%;min-height:300px}.line-chart{display:block;width:100%;height:auto;min-height:280px;color:var(--accent);overflow:visible}.chart-grid-line{stroke:#e5e9e2;stroke-width:1}.chart-y-label,.chart-x-label{fill:var(--muted);font-size:12px;font-family:inherit}.chart-line{fill:none;stroke:var(--accent);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.chart-area{fill:url(#activityArea);stroke:none}.chart-point{fill:#fff;stroke:var(--accent);stroke-width:4;transition:r .16s ease,fill .16s ease}.chart-hit{fill:transparent;cursor:pointer}.chart-point-group:hover .chart-point{r:7px;fill:var(--accent)}
.chart-tooltip{position:absolute;z-index:15;width:min(300px,calc(100% - 16px));max-height:235px;overflow:hidden;border:1px solid #dce2d9;border-radius:15px;background:rgba(255,255,255,.98);box-shadow:0 14px 34px rgba(39,49,41,.16);padding:13px 14px;pointer-events:auto}.chart-tooltip[hidden]{display:none}.tooltip-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.tooltip-head span{font-size:12px;color:var(--muted);font-weight:750}.tooltip-head strong{font-size:17px;color:var(--text)}.tooltip-directions{display:flex;gap:13px;padding:7px 0 10px;color:var(--muted);font-size:12px;border-bottom:1px solid var(--line)}.tooltip-title{margin:9px 0 6px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:780}.tooltip-ext-list{display:grid;gap:6px;max-height:120px;overflow:auto;padding-right:2px}.tooltip-ext{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center}.tooltip-ext span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;color:var(--text)}.tooltip-ext strong{font-size:12px}.tooltip-ext small{grid-column:2;color:var(--muted);font-size:10px}.tooltip-empty{font-size:12px;color:var(--muted);padding:5px 0}
.extension-activity-section{padding:36px 0 8px;border-top:1px solid var(--line);margin-top:36px}.extension-activity-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.extension-activity-heading h2{margin:0 0 5px;font-size:22px;letter-spacing:-.03em}.extension-activity-heading p{margin:0;color:var(--muted);font-size:13px}.extension-activity-legend{white-space:nowrap;color:var(--muted);font-size:12px}.extension-activity-legend i{font-style:normal}.extension-activity-list{display:grid;gap:13px}.extension-activity-row{display:grid;grid-template-columns:minmax(210px,.9fr) minmax(240px,2fr) 110px;gap:18px;align-items:center;padding:7px 0}.extension-identity{display:grid;gap:3px;min-width:0}.extension-identity strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.extension-identity span{color:var(--muted);font-size:11px}.extension-bar-wrap i{display:block;height:9px;background:#e5e8e2;border-radius:99px;overflow:hidden}.extension-bar-wrap i b{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#76984c,#5f7f3f)}.extension-counts{text-align:right;display:grid;gap:2px}.extension-counts strong{font-size:15px}.extension-counts span{font-size:11px;color:var(--muted)}
@media(max-width:760px){.chart{min-height:245px}.line-chart-shell{min-height:245px}.line-chart{min-height:230px}.chart-tooltip{max-height:210px}.extension-activity-heading{align-items:flex-start;flex-direction:column;gap:8px}.extension-activity-row{grid-template-columns:1fr 80px;gap:9px 12px}.extension-bar-wrap{grid-column:1/-1;grid-row:2}.extension-counts{grid-column:2;grid-row:1}.extension-identity{grid-column:1;grid-row:1}.extension-activity-section{padding-top:28px}}


/* Recorder · selección múltiple robusta y táctil */
.rec-bulk{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 12px;padding:14px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow)}
.rec-select-all{display:flex;align-items:center;gap:12px;min-width:0;font-weight:750;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.rec-select-all span{overflow-wrap:anywhere}
.rec-select-all input,.rec-select-one input{width:22px;height:22px;min-width:22px;margin:0;accent-color:var(--accent);cursor:pointer;touch-action:manipulation}
.rec-export-selected{min-height:44px;border:0;border-radius:999px;padding:0 22px;background:var(--accent);color:#fff;font:inherit;font-weight:800;cursor:pointer;white-space:nowrap;touch-action:manipulation}
.rec-export-selected:hover:not(:disabled){background:var(--accent-hover)}
.rec-export-selected:disabled{background:#c8d2bd;color:#fff;cursor:not-allowed;opacity:1}
.rec-row{position:relative;padding-right:58px}
.rec-select-one{position:absolute;right:18px;top:18px;display:grid;place-items:center;z-index:2;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
@media(max-width:620px){
  .rec-bulk{align-items:stretch;padding:12px 14px;gap:12px}
  .rec-select-all{flex:1;font-size:14px;line-height:1.25}
  .rec-export-selected{min-height:46px;padding:0 16px;font-size:13px}
  .rec-row{padding-right:54px}
  .rec-select-one{right:16px;top:16px}
}
@media(max-width:430px){.rec-bulk{display:grid;grid-template-columns:minmax(0,1fr) auto}.rec-export-selected{max-width:170px}}

/* alpha33: custom dashboard time range */
.period-control{min-width:390px}.custom-time-range{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end;margin-top:8px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--soft)}.custom-time-range[hidden]{display:none}.custom-time-range label{display:grid;gap:4px}.custom-time-range label>span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:750}.custom-time-range input{min-height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 9px;color:var(--text);font:inherit}.custom-time-range button{min-height:38px;border:0;border-radius:999px;background:var(--text);color:#fff;padding:0 16px;font-weight:700}@media(max-width:620px){.period-control{min-width:0}.segmented{overflow-x:auto}.segmented button{white-space:nowrap}.custom-time-range{grid-template-columns:1fr}.custom-time-range button{width:100%}}

/* alpha35 · multi-select comparative filters */
.multi-filter-control{position:relative}.multi-filter{position:relative;min-width:190px}.multi-filter>summary{list-style:none;min-height:44px;border-bottom:1px solid #bfc1ba;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-weight:650;color:var(--text);padding-right:5px}.multi-filter>summary::-webkit-details-marker{display:none}.multi-filter>summary b{font-size:16px;color:var(--muted)}.multi-filter-menu{position:absolute;z-index:30;top:calc(100% + 7px);left:0;min-width:280px;max-height:320px;overflow:auto;padding:8px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 45px rgba(34,40,35,.14)}.multi-filter-option{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:10px!important;min-height:42px;padding:8px 10px;border-radius:10px;cursor:pointer}.multi-filter-option:hover{background:var(--soft)}.multi-filter-option input{width:18px;height:18px;accent-color:var(--accent)}.multi-filter-option span{font-size:14px!important;text-transform:none!important;letter-spacing:0!important;color:var(--text)!important;font-weight:650!important}.chart-series-legend{display:flex;flex-wrap:wrap;gap:10px 18px;margin:0 0 8px 44px;font-size:12px;color:var(--muted)}.chart-series-legend span{display:inline-flex;align-items:center;gap:7px}.chart-series-legend i{width:20px;height:4px;border-radius:999px}.compare-point{cursor:pointer}
@media(max-width:620px){.multi-filter{min-width:0}.multi-filter-menu{position:fixed;left:14px;right:14px;top:auto;min-width:0;max-height:45vh}.chart-series-legend{margin-left:0}}

/* alpha37 · la comparativa conserva siempre el mismo tamaño de gráfica */
.activity-block .chart{display:block!important;height:auto!important;min-height:300px!important;padding-top:10px!important}
.activity-block .chart-series-legend{width:100%;box-sizing:border-box}
.activity-block .line-chart-shell{display:block;width:100%!important;min-width:0;min-height:300px!important}
.activity-block .line-chart{display:block;width:100%!important;height:auto!important;min-height:280px!important;max-width:none!important}
@media(max-width:760px){
  .activity-block .chart{min-height:245px!important}
  .activity-block .line-chart-shell{min-height:245px!important}
  .activity-block .line-chart{width:100%!important;min-height:230px!important}
  .activity-block .chart-series-legend{margin:0 0 10px 0!important}
}


/* alpha37 · auditoría visual: escala tipográfica y encuadre común Panel/Audios/Flujo */
:root{
  --cs-title: clamp(28px, 3.2vw, 42px);
  --cs-section: clamp(22px, 2.2vw, 30px);
  --cs-card-title: clamp(17px, 1.35vw, 22px);
  --cs-body: 14px;
  --cs-small: 12px;
  --cs-label: 11px;
  --cs-field: 15px;
  --cs-radius: 14px;
  --cs-page-w: min(1160px, calc(100% - 44px));
}
body{font-size:var(--cs-body);line-height:1.42;-webkit-text-size-adjust:100%;text-size-adjust:100%}
.dashboard,.module-page,.flow-page,.recorder-module{width:var(--cs-page-w)!important;margin-inline:auto!important}
.suite-names strong{font-size:16px!important;line-height:1.15}.suite-names span{font-size:12px!important}.suite-tab{font-size:15px!important;line-height:1.15}.logout,.language-picker select{font-size:13px!important}
/* Etiquetas de filtro: pequeñas, consistentes y con prioridad visual por posición, no por tamaño */
.control-bar label>span,.filter-control>span,.recorder-search-grid label>span,.custom-time-range label>span,.flow-v23-node>span,.flow-v23-section-head>div>span,.flow-v23-pbx>span,.flow-v24-members-label,.flow-v24-notes>span,.flow-v25-routing-meta span,.flow-v25-fallback>span{
  font-size:var(--cs-label)!important;
  line-height:1.15!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  font-weight:800!important;
  color:var(--muted)!important;
}
.control-bar,.recorder-search{padding-bottom:28px!important;border-bottom:1px solid var(--line)!important}
.control-bar{gap:20px!important;align-items:end!important}.filter-control,.recorder-search-grid label{gap:8px!important;min-width:0!important}.period-control{min-width:min(430px,100%)!important}
.multi-filter>summary,.control-bar select,.recorder-search-grid input,.custom-time-range input{min-height:44px!important;height:44px!important;font-size:var(--cs-field)!important;line-height:1.2!important;border-radius:var(--cs-radius)!important}
.multi-filter>summary,.control-bar select{border-radius:0!important;border-bottom:1px solid #bfc1ba!important}.multi-filter>summary span{font-size:var(--cs-field)!important;line-height:1.2!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.segmented button,.scope-actions button,.rec-primary,.rec-secondary,.rec-export-selected{font-size:14px!important;line-height:1.15!important}
/* Audios: filtros importantes pero no dominantes; encuadre compacto en móvil */
.recorder-module{gap:34px!important;padding-top:34px!important}.recorder-search-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;margin-top:0!important}.recorder-search-grid label{font-size:var(--cs-label)!important}.recorder-search-grid input{background:#fbfbf8!important;padding-inline:14px!important}.recorder-search-grid .rec-primary,.recorder-search-grid .rec-secondary{min-height:44px!important;height:44px!important;align-self:end!important}.recorder-results .block-heading h2{font-size:var(--cs-card-title)!important;color:var(--muted)!important}.rec-bulk{margin-top:14px!important}.rec-select-all span{font-size:15px!important;line-height:1.25!important}.rec-row{font-size:14px!important}.rec-date strong{font-size:20px!important}.rec-parties strong{font-size:15px!important}.rec-parties span,.rec-date span,.rec-duration span{font-size:12px!important}
/* Panel: misma escala de lectura que Audios */
.block-heading h2,.summary-strip h2,.result-section h2,.extension-activity-heading h2{font-size:var(--cs-section)!important;line-height:1.12!important;letter-spacing:-.035em!important}.summary-metric strong{font-size:clamp(36px,4vw,48px)!important}.summary-metric span,.agent-summary,.department span,.extension-activity-heading p{font-size:14px!important}.chart-y-label,.chart-x-label{font-size:11px!important}.chart-series-legend{font-size:13px!important;line-height:1.25!important;align-items:center!important}.extension-identity strong{font-size:14px!important}.extension-identity span,.extension-counts span{font-size:12px!important}
/* Flujo: títulos y tarjetas alineados con el resto de módulos */
.flow-page{padding-top:34px!important}.flow-v23-title h1{font-size:var(--cs-title)!important;line-height:1.05!important}.flow-v23-title p{font-size:15px!important;line-height:1.5!important}.flow-v23-node>strong{font-size:var(--cs-card-title)!important}.flow-v23-node>small,.flow-v23-state p{font-size:14px!important}.flow-v23-section-head h2{font-size:var(--cs-section)!important}.flow-v23-branch-card h3{font-size:19px!important}.flow-v23-pbx>strong{font-size:14px!important}.flow-v23-subrow strong{font-size:13px!important}.flow-v23-subrow span{font-size:12px!important}
/* Encuadre PC: filtros en una línea si hay espacio, sin estirar textos */
@media(min-width:921px){
  .control-bar{grid-template-columns:minmax(190px,.9fr) minmax(220px,1.05fr) minmax(390px,1.25fr) auto!important}.scope-actions{justify-content:flex-end!important}.results-grid{align-items:start!important}.activity-block .chart{min-height:320px!important}.activity-block .line-chart-shell{min-height:320px!important}.activity-block .line-chart{min-height:300px!important}
}
@media(max-width:920px){
  :root{--cs-page-w:min(100% - 28px,1160px)}.control-bar{grid-template-columns:1fr 1fr!important;gap:20px!important}.period-control{grid-column:1/-1!important}.scope-actions{grid-column:1/-1!important}.recorder-search-grid{grid-template-columns:1fr 1fr!important}.flow-v23-state-grid{max-width:none!important}.results-grid{gap:44px!important}
}
@media(max-width:620px){
  :root{--cs-label:12px;--cs-field:16px;--cs-page-w:calc(100% - 24px)}
  .site-header{padding:12px 14px!important}.suite-nav{gap:0!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;border:1px solid var(--line)!important;border-radius:18px!important;background:#eef1ea!important;padding:4px!important;overflow:visible!important}.suite-tab{text-align:center!important;border-radius:14px!important;padding:11px 6px!important;font-size:15px!important}.suite-tab.active{background:#fff!important}.suite-tab.active:after{display:none!important}
  .dashboard,.module-page,.flow-page,.recorder-module{padding-top:28px!important;padding-bottom:48px!important;gap:32px!important}.control-bar{grid-template-columns:1fr!important;gap:18px!important;padding-bottom:28px!important}.scope-actions{display:grid!important;grid-template-columns:1fr 1fr!important}.scope-actions button{min-height:46px!important}.segmented{width:100%!important;overflow-x:auto!important}.segmented button{flex:1 0 auto!important;min-height:40px!important;padding:9px 13px!important}.custom-time-range{grid-template-columns:1fr!important;padding:12px!important}
  .recorder-module{padding-top:30px!important}.recorder-search{padding-bottom:30px!important}.recorder-search-grid{grid-template-columns:1fr!important;gap:16px!important}.recorder-search-grid label>span{font-size:13px!important;letter-spacing:.11em!important}.recorder-search-grid input{height:42px!important;min-height:42px!important;border-radius:13px!important}.recorder-search-grid .rec-primary,.recorder-search-grid .rec-secondary{height:46px!important;min-height:46px!important;margin-top:2px!important}.recorder-results{padding-top:0!important}.recorder-results .block-heading h2{font-size:20px!important}.rec-bulk{align-items:center!important;grid-template-columns:minmax(0,1fr) auto!important;padding:13px 14px!important}.rec-select-all span{font-size:14px!important}.rec-export-selected{font-size:13px!important;max-width:170px!important;min-height:44px!important}.rec-row{padding:16px 52px 16px 16px!important}.rec-date strong{font-size:24px!important}.rec-parties strong{font-size:17px!important}
  .summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}.summary-metric strong{font-size:38px!important}.summary-metric span{font-size:13px!important}.block-heading h2,.result-section h2,.extension-activity-heading h2{font-size:28px!important}.activity-block .chart{min-height:270px!important}.activity-block .line-chart-shell{min-height:270px!important}.activity-block .line-chart{min-height:250px!important}.chart-series-legend{font-size:13px!important;margin:0 0 12px!important}.departments{padding-top:18px!important;gap:22px!important}
  .flow-v23-title h1{font-size:32px!important}.flow-v23-title p{font-size:14px!important}.flow-v23-node{padding:17px 18px!important}.flow-v23-section-head h2{font-size:28px!important}.flow-v23-branch-card h3{font-size:20px!important}
}
@media(max-width:420px){
  .right-head{gap:6px!important}.language-picker{padding:6px 7px!important}.logout{padding:8px 11px!important}.cs-symbol{width:34px!important;height:34px!important}.summary-metric strong{font-size:34px!important}.summary-metric span{font-size:12px!important}.rec-select-all span{font-size:13px!important}.rec-export-selected{max-width:150px!important;padding-inline:12px!important}
}
/* Flow v26: recorrido abierto/cerrado */
.flow-v26-entry{
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);
  align-items:center;
  max-width:760px;
  margin:0 auto 28px;
}
.flow-v26-split{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  align-items:start;
  margin:0 0 48px;
}
.flow-v26-route{
  min-width:0;
  padding:18px;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
}
.flow-v26-route>header{
  display:flex;
  align-items:center;
  margin-bottom:16px;
}
.flow-v26-route>header span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 11px;
  border-radius:999px;
  font-size:11px;
  letter-spacing:.09em;
  text-transform:uppercase;
  font-weight:800;
}
.flow-v26-route.open{
  border-color:#dce7d4;
  background:var(--flow-soft);
}
.flow-v26-route.open>header span{
  background:#fff;
  color:var(--accent);
}
.flow-v26-route.closed{
  border-color:#eadfcb;
  background:var(--flow-amber-soft);
}
.flow-v26-route.closed>header span{
  background:#fff;
  color:var(--flow-amber);
}

.flow-v26-route-path{
  display:grid;
  grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);
  align-items:center;
}
.flow-v26-route-path .flow-v23-node{
  background:#fff;
  min-height:118px;
}
.flow-v26-route.closed .flow-v23-link{
  color:var(--flow-amber);
}
.flow-v26-unverified{
  grid-column:1/-1;
  padding:18px;
  border:1px dashed var(--line);
  border-radius:14px;
  background:#fff;
  color:var(--muted);
  font-size:13px;
}
.flow-v23-branches{
  padding-top:26px;
  border-top:1px solid var(--line);
}

@media(max-width:920px){
  .flow-v26-split{grid-template-columns:1fr}
}
@media(max-width:620px){
  .flow-v26-entry{
    grid-template-columns:1fr;
    gap:8px;
    margin-bottom:24px;
  }
  .flow-v26-entry>.flow-v23-link{
    transform:rotate(90deg);
    min-height:28px;
  }
  .flow-v26-split{
    gap:16px;
    margin-bottom:36px;
  }
  .flow-v26-route{padding:14px}
  .flow-v26-route-path{
    grid-template-columns:1fr;
    gap:8px;
  }
  .flow-v26-route-path>.flow-v23-link{
    transform:rotate(90deg);
    min-height:26px;
  }
}

/* CallSuite Flow: PDF / impresion */
.flow-export-toolbar{
  display:flex;
  justify-content:flex-end;
  margin-bottom:18px;
}
#flowDownloadPdf{
  padding:11px 18px;
  border:1px solid var(--accent);
  border-radius:11px;
  background:var(--accent);
  color:#fff;
  font:inherit;
  font-size:13px;
  font-weight:750;
  cursor:pointer;
}
#flowDownloadPdf:hover{filter:brightness(.92)}
.flow-print-heading{display:none}

/* CSS antiguo de impresion Flow eliminado */

/* =========================================================
   Vista exclusiva PDF - 2 paginas
   ========================================================= */

#flowPrintView {
  display: none;
}

@media print {

  @page {
    size: A4 landscape;
    margin: 7mm;
  }

  /* Ocultar toda la interfaz normal */
  body > * {
    display: none !important;
  }

  /* Mostrar solo la vista PDF */
  #flowPrintView {
    display: block !important;
    position: static !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #222 !important;
    background: #fff !important;
    font-family: Arial, Helvetica, sans-serif !important;
  }

  #flowPrintView * {
    box-sizing: border-box !important;
  }

  .pdf-page {
    width: 100% !important;
    min-height: 180mm !important;
    page-break-after: always !important;
    break-after: page !important;
  }

  .pdf-page:last-child {
    page-break-after: auto !important;
    break-after: auto !important;
  }


  /* ---------- CABECERA ---------- */

  .pdf-header {
    border-bottom: 2px solid #58634a;
    padding-bottom: 3mm;
    margin-bottom: 5mm;
  }

  .pdf-header strong {
    display: block;
    font-size: 17pt;
    line-height: 1.1;
  }

  .pdf-header span {
    display: block;
    font-size: 10pt;
    margin-top: 1.5mm;
  }

  .pdf-header small {
    display: block;
    font-size: 7.5pt;
    margin-top: 1mm;
    color: #666;
  }


  /* ---------- PAGINA 1 ---------- */

  .pdf-summary {
    display: grid;
    grid-template-columns: .9fr .9fr 1.7fr;
    gap: 4mm;
    border: 1px solid #d8ddd2;
    border-radius: 4mm;
    padding: 4mm;
    margin-bottom: 6mm;
  }

  .pdf-summary > div {
    min-width: 0;
  }

  .pdf-summary > div > span {
    display: block;
    font-size: 7pt;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #66705f;
    margin-bottom: 1.5mm;
    font-weight: 700;
  }

  .pdf-summary > div > strong {
    display: block;
    font-size: 13pt;
  }

  .pdf-summary .schedule-group,
  .pdf-summary .schedule-line {
    margin: 0 !important;
    padding: .5mm 0 !important;
    font-size: 8pt !important;
  }


  .pdf-flow-start {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5mm;
    margin: 6mm 0;
  }

  .pdf-flow-start article,
  .pdf-mini-flow article,
  .pdf-mini-flow .flow-v23-node {
    border: 1px solid #d8ddd2;
    border-radius: 4mm;
    padding: 4mm;
    min-width: 48mm;
    background: #fff;
  }

  .pdf-flow-start article span,
  .pdf-mini-flow article span,
  .pdf-mini-flow .flow-v23-node > span {
    display: block;
    font-size: 7pt;
    text-transform: uppercase;
    color: #66705f;
    font-weight: 700;
    margin-bottom: 1mm;
  }

  .pdf-flow-start article strong,
  .pdf-mini-flow article strong,
  .pdf-mini-flow .flow-v23-node strong {
    display: block;
    font-size: 10pt;
  }

  .pdf-flow-start article small,
  .pdf-mini-flow article small,
  .pdf-mini-flow .flow-v23-node small {
    display: block;
    margin-top: 1mm;
    font-size: 7.5pt;
    color: #666;
  }

  .pdf-arrow {
    font-size: 16pt;
    color: #66705f;
  }


  .pdf-open-closed {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5mm;
    margin-top: 5mm;
  }

  .pdf-open-closed > section {
    border-radius: 4mm;
    padding: 5mm;
    border: 1px solid #d8ddd2;
  }

  .pdf-open-closed > section:first-child {
    background: #f3f6ef;
  }

  .pdf-open-closed > section:last-child {
    background: #fbf6ea;
  }

  .pdf-open-closed h2 {
    margin: 0 0 4mm;
    font-size: 11pt;
  }

  .pdf-mini-flow {
    display: flex;
    align-items: center;
    gap: 3mm;
  }

  .pdf-mini-flow .flow-v23-link {
    font-size: 14pt;
    color: #66705f;
  }


  /* ---------- PAGINA 2 ---------- */

  .pdf-section-title {
    border-bottom: 2px solid #58634a;
    margin-bottom: 5mm;
    padding-bottom: 3mm;
  }

  .pdf-section-title span {
    display: block;
    font-size: 7pt;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #66705f;
    font-weight: 700;
  }

  .pdf-section-title h1 {
    margin: 1mm 0 0;
    font-size: 17pt;
  }

  .pdf-language-grid {
    display: grid;
    grid-template-columns: 1.65fr .85fr;
    gap: 5mm;
    align-items: start;
  }

  .pdf-spanish {
    border: 1px solid #d8ddd2;
    border-radius: 4mm;
    padding: 4mm;
    background: #f8faf6;
  }

  .pdf-spanish > h2 {
    margin: 0;
    font-size: 12pt;
  }

  .pdf-route {
    margin: 1mm 0 3mm;
    font-size: 8pt;
    color: #666;
  }

  .pdf-dept {
    border: 1px solid #dfe4da;
    border-radius: 3mm;
    padding: 3mm;
    margin-bottom: 2.5mm;
    background: #fff;
    break-inside: avoid !important;
  }

  .pdf-dept:last-child {
    margin-bottom: 0;
  }

  .pdf-dept h3 {
    margin: 0 0 1mm;
    font-size: 9pt;
  }

  .pdf-dept > p {
    margin: 0 0 2mm;
    font-size: 7.5pt;
    color: #666;
  }

  .pdf-dept .flow-v24-routing,
  .pdf-dept .flow-v25-routing {
    margin: 0 !important;
    padding: 2mm !important;
    border-radius: 2.5mm !important;
    font-size: 7pt !important;
  }

  .pdf-dept .flow-v24-routing-head,
  .pdf-dept .flow-v25-routing-meta,
  .pdf-dept .flow-v24-members {
    margin: 0 0 1.5mm !important;
  }

  .pdf-dept .flow-v25-routing-meta > div,
  .pdf-dept .flow-v24-member,
  .pdf-dept .flow-v25-fallback {
    padding: 1.5mm !important;
    margin: .5mm 0 !important;
  }

  .pdf-dept .flow-v24-member-grid {
    gap: 1mm !important;
  }

  .pdf-dept .flow-v25-fallback strong {
    font-size: 7pt !important;
    line-height: 1.15 !important;
  }


  .pdf-other-languages {
    display: grid;
    gap: 4mm;
  }

  .pdf-language {
    border: 1px solid #d8ddd2;
    border-radius: 4mm;
    padding: 5mm;
    background: #fff;
  }

  .pdf-language h3 {
    margin: 0 0 3mm;
    font-size: 11pt;
  }

  .pdf-language span {
    display: block;
    font-size: 7pt;
    text-transform: uppercase;
    color: #66705f;
    font-weight: 700;
    margin-bottom: 1mm;
  }

  .pdf-language strong {
    display: block;
    font-size: 9pt;
  }
}



/* CallSuite - ojo de contraseña con ceja */
.cs-password-group {
  display: grid;
  gap: 7px;
}
.cs-password-field {
  display: block;
  position: relative;
}
.login-card .cs-password-field input {
  width: 100%;
  box-sizing: border-box;
  padding-right: 65px;
}
.login-card button.cs-password-eye {
  position: absolute;
  right: 5px;
  top: 3px;
  width: 48px;
  height: 44px;
  padding: 9px;
  display: grid;
  place-items: center;
  background: transparent !important;
  color: #4c693c !important;
  border: 0;
  border-radius: 10px;
  box-shadow: none;
  cursor: pointer;
}
.login-card button.cs-password-eye:hover {
  background: rgba(95,127,63,.08) !important;
  filter: none !important;
}
.login-card button.cs-password-eye:focus-visible {
  outline: 2px solid #5f7f3f;
  outline-offset: -2px;
}
.cs-password-eye::before {
  content: "";
  position: absolute;
  left: 0;
  height: 24px;
  width: 1px;
  background: #dfe2da;
}
.cs-password-eye svg {
  width: 26px;
  height: 26px;
}
.cs-eye-slash {
  display: none;
}
.cs-password-eye[aria-pressed="true"] .cs-eye-slash {
  display: block;
}

/* Aurora verde discreta: solo fondo móvil del login */
@media (max-width: 760px) {
  body.login-page {
    background:
      radial-gradient(
        ellipse 90% 32% at 0% 100%,
        rgba(95,150,98,.17),
        transparent 85%
      ),
      radial-gradient(
        ellipse 95% 28% at 40% 110%,
        rgba(130,170,110,.12),
        transparent 85%
      ),
      #f6f6f2;
    background-attachment: fixed;
  }
}
/* Aurora verde visible pero elegante en login */
body.login-page {
  background:
    radial-gradient(
      ellipse 70% 55% at 12% 72%,
      rgba(110, 165, 88, .22) 0%,
      rgba(110, 165, 88, .10) 38%,
      transparent 72%
    ),
    radial-gradient(
      ellipse 55% 45% at 42% 88%,
      rgba(145, 188, 115, .16) 0%,
      rgba(145, 188, 115, .07) 42%,
      transparent 76%
    ),
    radial-gradient(
      ellipse 45% 35% at 72% 18%,
      rgba(105, 145, 85, .08) 0%,
      transparent 75%
    ),
    #f7f8f4 !important;
  background-attachment: fixed !important;
}/* Aurora verde visible pero elegante en login */
body.login-page {
  background:
    radial-gradient(
      ellipse 70% 55% at 12% 72%,
      rgba(110, 165, 88, .22) 0%,
      rgba(110, 165, 88, .10) 38%,
      transparent 72%
    ),
    radial-gradient(
      ellipse 55% 45% at 42% 88%,
      rgba(145, 188, 115, .16) 0%,
      rgba(145, 188, 115, .07) 42%,
      transparent 76%
    ),
    radial-gradient(
      ellipse 45% 35% at 72% 18%,
      rgba(105, 145, 85, .08) 0%,
      transparent 75%
    ),
    #f7f8f4 !important;
  background-attachment: fixed !important;
}
/* Aurora verde visible pero elegante en login */
body.login-page {
  background:
    radial-gradient(
      ellipse 70% 55% at 12% 72%,
      rgba(110, 165, 88, .22) 0%,
      rgba(110, 165, 88, .10) 38%,
      transparent 72%
    ),
    radial-gradient(
      ellipse 55% 45% at 42% 88%,
      rgba(145, 188, 115, .16) 0%,
      rgba(145, 188, 115, .07) 42%,
      transparent 76%
    ),
    radial-gradient(
      ellipse 45% 35% at 72% 18%,
      rgba(105, 145, 85, .08) 0%,
      transparent 75%
    ),
    #f7f8f4 !important;
  background-attachment: fixed !important;
}

/* Incoming call outcomes — Manager */
.outcomes-section{
  padding:34px 0 38px;
  border-bottom:1px solid var(--line);
}

.outcomes-section .block-heading h2{
  margin:0 0 24px;
}

.outcomes-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:34px;
  align-items:start;
}

.outcome-metric,
button.outcome-metric{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:5px !important;
  min-width:0;
  width:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:inherit !important;
  font:inherit;
  text-align:left;
}

.outcome-metric strong{
  display:block;
  font-size:clamp(36px,4vw,48px);
  line-height:1;
  letter-spacing:-.06em;
  font-weight:570;
}

.outcome-metric span{
  display:block;
  color:var(--muted);
  font-size:14px;
  line-height:1.3;
  white-space:normal;
}

button.outcome-action{
  cursor:pointer;
}

button.outcome-action span::after{
  content:" ›";
  color:var(--text);
}

button.outcome-action:hover span{
  color:var(--text);
  text-decoration:none;
}

@media(max-width:620px){
  .outcomes-section{
    padding:32px 0 36px;
  }

  .outcomes-section .block-heading h2{
    margin-bottom:26px;
  }

  .outcomes-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:26px 12px;
  }

  .outcome-metric strong{
    font-size:32px;
  }

  .outcome-metric span{
    font-size:12px;
  }
}

/* Llamadas perdidas — detalle integrado */
.missed-calls-detail{
  margin-top:30px;
  padding-top:24px;
  border-top:1px solid var(--line);
}

.missed-calls-detail[hidden]{
  display:none;
}

.missed-detail-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}

.missed-detail-heading h3{
  margin:0;
  font-size:18px;
  letter-spacing:-.025em;
  font-weight:650;
}

.missed-detail-heading p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
}

.missed-detail-heading button{
  border:0;
  background:transparent;
  color:var(--muted);
  font:inherit;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  padding:0 2px;
}

.missed-detail-heading button:hover{
  color:var(--text);
}

.missed-calls-list{
  display:grid;
}

.missed-call-row{
  display:grid;
  grid-template-columns:90px minmax(150px,1fr) minmax(180px,1.2fr) auto;
  gap:24px;
  align-items:center;
  min-height:62px;
  padding:12px 0;
  border-top:1px solid var(--line);
}

.missed-call-row:first-child{
  border-top:0;
}

.missed-call-time strong,
.missed-call-number strong,
.missed-call-target strong{
  display:block;
  font-size:14px;
  font-weight:650;
}

.missed-call-time span,
.missed-call-target span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
}

.missed-call-status{
  color:var(--muted);
  font-size:12px;
  font-weight:650;
  white-space:nowrap;
}

@media(max-width:620px){
  .missed-calls-detail{
    margin-top:26px;
    padding-top:22px;
  }

  .missed-call-row{
    grid-template-columns:72px 1fr;
    gap:7px 14px;
    padding:15px 0;
  }

  .missed-call-target{
    grid-column:2;
  }

  .missed-call-status{
    grid-column:2;
  }
}

/* Ajuste móvil del detalle de llamadas perdidas */
@media(max-width:620px){
  .missed-detail-heading{
    position:relative;
    padding-right:36px;
  }

  .missed-detail-heading button{
    appearance:none !important;
    -webkit-appearance:none !important;
    position:absolute;
    top:0;
    right:0;
    width:28px !important;
    height:28px !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    display:grid !important;
    place-items:center;
    font-size:24px;
    color:var(--muted);
  }

  .missed-call-row{
    grid-template-columns:62px minmax(0,1fr);
    gap:5px 14px;
    padding:16px 0;
  }

  .missed-call-time{
    grid-row:1 / span 3;
  }

  .missed-call-time strong{
    font-size:15px;
  }

  .missed-call-time span{
    font-size:10px;
    white-space:nowrap;
  }

  .missed-call-number{
    grid-column:2;
  }

  .missed-call-number strong{
    font-size:15px;
  }

  .missed-call-target{
    grid-column:2;
  }

  .missed-call-target strong{
    font-size:13px;
  }

  .missed-call-target span{
    font-size:11px;
  }

  .missed-call-status{
    grid-column:2;
    font-size:11px;
  }
}

/* Pendientes — estado operativo de llamadas de hoy */
.pending-section{
  padding:0 0 34px;
  border-bottom:1px solid var(--line);
}

.pending-summary{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:17px 20px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.42);
  color:var(--text);
  text-align:left;
  font:inherit;
  cursor:pointer;
}

.pending-copy{
  display:grid;
  gap:4px;
  min-width:0;
}

.pending-copy strong{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:16px;
  font-weight:700;
}

.pending-copy>span{
  color:var(--muted);
  font-size:13px;
  line-height:1.4;
}

.pending-icon{
  width:20px;
  height:20px;
  display:inline-grid;
  place-items:center;
  border-radius:50%;
  font-size:12px;
  font-weight:800;
}

.pending-open{
  flex:0 0 auto;
  font-size:13px;
  font-weight:650;
  white-space:nowrap;
}

/* Hay llamadas que requieren respuesta */
.pending-section.has-pending .pending-summary{
  background:#fbf4df;
  border-color:#e5d29a;
}

.pending-section.has-pending .pending-icon{
  background:#c58a24;
  color:#fff;
}

.pending-section.has-pending .pending-open{
  color:#765719;
}

/* Sin pendientes */
.pending-section.is-clear .pending-summary{
  background:#f2f5ef;
  border-color:#d8dfd3;
}

.pending-section.is-clear .pending-icon{
  background:#687264;
  color:#fff;
}

.pending-section.is-clear .pending-icon::before{
  content:"✓";
}

.pending-section.is-clear .pending-icon{
  font-size:0;
}

.pending-section.is-clear .pending-icon::before{
  font-size:12px;
}

.pending-section.is-clear .pending-open{
  color:var(--muted);
}

/* Resultado ya no incluye Perdidas */
.outcomes-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

@media(max-width:620px){
  .pending-section{
    padding-bottom:30px;
  }

  .pending-summary{
    padding:16px;
    gap:14px;
  }

  .pending-copy strong{
    font-size:15px;
  }

  .pending-copy>span{
    font-size:12px;
  }

  .outcomes-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Manager — Desglose de llamadas */
.call-flow-section{
  padding:30px 0 34px;
  border-bottom:1px solid var(--line);
}

.call-flow-details>summary{
  list-style:none;
}

.call-flow-details>summary::-webkit-details-marker{
  display:none;
}

.call-flow-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  cursor:pointer;
  user-select:none;
}

.call-flow-summary h2{
  margin:0;
  font-size:18px;
  line-height:1.2;
  color:var(--text);
}

.call-flow-summary div>span{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:12px;
}

.call-flow-toggle{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  color:var(--muted);
  font-size:18px;
  transition:transform .18s ease;
}

.call-flow-details[open] .call-flow-toggle{
  transform:rotate(180deg);
}

.call-flow{
  width:min(820px,100%);
  margin:30px auto 4px;
}

.flow-level{
  position:relative;
  display:grid;
  justify-content:center;
}

.flow-root{
  grid-template-columns:minmax(180px,280px);
}

.flow-split{
  grid-template-columns:repeat(2,minmax(180px,280px));
  gap:80px;
}

.flow-node,
button.flow-node{
  appearance:none;
  -webkit-appearance:none;
  min-width:0;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  color:var(--text);
  text-align:center;
  font:inherit;
}

.flow-node strong{
  display:block;
  font-size:30px;
  line-height:1;
  letter-spacing:-.04em;
  font-weight:650;
}

.flow-node span{
  display:block;
  margin-top:6px;
  font-size:13px;
  font-weight:700;
}

.flow-node small{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:10px;
  line-height:1.35;
  font-weight:500;
}

.flow-primary{
  border-color:rgba(98,132,61,.28);
  background:#f2f6ee;
}

.flow-primary strong,
.flow-success strong{
  color:var(--accent);
}

.flow-success{
  border-color:rgba(98,132,61,.22);
  background:#f7faf4;
}

.flow-friction{
  border-color:#ead7a9;
  background:var(--warn-bg);
}

.flow-friction strong{
  color:var(--warn);
}

.flow-connector{
  position:relative;
  width:1px;
  height:28px;
  margin:0 auto;
  background:var(--line);
}

.flow-connector::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-1px;
  width:6px;
  height:6px;
  border-right:1px solid #aeb5aa;
  border-bottom:1px solid #aeb5aa;
  transform:translateX(-50%) rotate(45deg);
}

.flow-connector-short{
  height:22px;
}

button.flow-action{
  cursor:pointer;
}

button.flow-action:hover{
  border-color:var(--accent);
}

button.flow-action:hover span{
  color:var(--accent);
}

.call-flow-details .missed-calls-detail{
  width:min(820px,100%);
  margin:28px auto 0;
}

@media(max-width:700px){
  .call-flow-section{
    padding:26px 0 30px;
  }

  .call-flow{
    margin-top:24px;
  }

  .flow-split{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }

  .flow-root{
    grid-template-columns:minmax(0,1fr);
  }

  .flow-node,
  button.flow-node{
    padding:14px 10px;
    border-radius:14px;
  }

  .flow-node strong{
    font-size:27px;
  }

  .flow-node span{
    font-size:12px;
  }

  .flow-node small{
    font-size:9px;
  }

  .flow-connector{
    height:22px;
  }
}

/* ConnectingSuite — identidad corporativa en login */
.login-company-logo .cs-brand-text{
  display:flex;
  flex-direction:column;
  justify-content:center;
  line-height:1;
}

.login-company-logo .cs-brand-text .cs-wordmark{
  font-size:32px!important;
  font-weight:800!important;
  letter-spacing:-.035em!important;
  line-height:1!important;
  color:var(--brand-graphite)!important;
}

.login-company-logo .cs-tagline{
  margin-top:7px;
  font-size:10px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.025em;
  color:var(--brand-graphite);
  white-space:nowrap;
}

.login-contact{
  margin-top:24px;
  font-size:13px;
  line-height:1.7;
  font-weight:500;
  letter-spacing:.01em;
  color:var(--muted);
}

@media(max-width:620px){
  .login-company-logo .cs-brand-text .cs-wordmark{
    font-size:27px!important;
  }
  .login-company-logo .cs-tagline{
    margin-top:5px;
    font-size:8px;
  }
  .login-contact{
    margin-top:18px;
    font-size:12px;
  }
}

/* Footer — pantalla de acceso */
.login-page .login-footer{
  position:fixed;
  left:0;
  right:0;
  bottom:24px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  font-size:12px;
  line-height:1.25;
  color:var(--muted);
}

.login-page .login-footer strong{
  color:var(--brand-graphite);
  font-weight:700;
}

@media(max-width:620px){
  .login-page .login-footer{
    position:static;
    margin:24px 0 18px;
    font-size:11px;
  }
}

/* Footer integrado con el fondo del login */
.login-page .login-footer{
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}

/* Footer login — no altera la altura de la pantalla */
.login-page{
  min-height:100vh!important;
  height:100vh!important;
  overflow:hidden!important;
}

.login-page .login-footer{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:14px!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:4px!important;
  font-size:11px!important;
  line-height:1.2!important;
}

/* =========================================================
   Call Suite — Formulario de contacto
   ========================================================= */

.login-contact a,
.login-contact-link{
  color:inherit;
  font:inherit;
  text-decoration:none;
}

.login-contact-link{
  padding:0;
  border:0;
  background:none;
  cursor:pointer;
}

.login-contact a:hover,
.login-contact-link:hover{
  text-decoration:underline;
}

.contact-modal{
  position:fixed;
  inset:0;
  z-index:10000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}

.contact-modal.is-open{
  display:flex;
}

.contact-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(23,50,38,.30);
  backdrop-filter:blur(5px);
}

.contact-modal-card{
  position:relative;
  z-index:1;
  width:min(480px,100%);
  max-height:calc(100vh - 48px);
  overflow:auto;
  padding:34px;
  border:1px solid rgba(217,222,212,.9);
  border-radius:22px;
  background:#fff;
  box-shadow:0 24px 70px rgba(23,50,38,.18);
}

.contact-modal-card h2{
  margin:8px 36px 8px 0;
  color:var(--brand-graphite);
}

.contact-modal-intro{
  margin:0 0 22px;
  color:var(--muted);
  font-size:14px;
  line-height:1.5;
}

.contact-modal-close{
  position:absolute;
  top:18px;
  right:20px;
  width:34px;
  height:34px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:var(--muted);
  font-size:27px;
  font-weight:300;
  line-height:32px;
  cursor:pointer;
}

.contact-modal-close:hover{
  background:#eef2e9;
  color:var(--brand-graphite);
}

.contact-modal-card form{
  display:flex;
  flex-direction:column;
  gap:15px;
}

.contact-modal-card label{
  display:flex;
  flex-direction:column;
  gap:7px;
}

.contact-modal-card label span{
  font-size:13px;
  font-weight:600;
  color:var(--brand-graphite);
}

.contact-modal-card input,
.contact-modal-card textarea{
  box-sizing:border-box;
  width:100%;
  padding:11px 13px;
  border:1px solid #d9ded4;
  border-radius:10px;
  background:#fff;
  color:var(--brand-graphite);
  font:inherit;
  outline:none;
}

.contact-modal-card textarea{
  resize:vertical;
  min-height:105px;
}

.contact-modal-card input:focus,
.contact-modal-card textarea:focus{
  border-color:#66873f;
  box-shadow:0 0 0 3px rgba(102,135,63,.12);
}

.contact-modal-card button[type="submit"]{
  margin-top:3px;
}

.contact-modal-card button[type="submit"]:disabled{
  opacity:.65;
  cursor:wait;
}

.contact-status{
  min-height:18px;
  font-size:13px;
  line-height:1.4;
}

.contact-status.success{
  color:#66873f;
  font-weight:600;
}

.contact-status.error{
  color:#9c3d32;
  font-weight:600;
}

.contact-honeypot{
  position:absolute!important;
  left:-10000px!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}

body.contact-open{
  overflow:hidden!important;
}

@media(max-width:620px){
  .contact-modal{
    padding:14px;
  }

  .contact-modal-card{
    padding:26px 20px;
    border-radius:18px;
    max-height:calc(100vh - 28px);
  }
}

/* CallSuite Login — adaptación móvil */
@media (max-width: 760px) {
  body.login-page {
    height: auto!important;
    min-height: 100dvh!important;
    overflow-x: hidden!important;
    overflow-y: auto!important;
  }

  body.login-page .login-shell {
    min-height: 0!important;
    width: calc(100% - 32px)!important;
    display: flex!important;
    flex-direction: column!important;
    align-items: stretch!important;
    gap: 30px!important;
    padding: 115px 0 25px!important;
  }

  body.login-page .login-company-logo {
    position: absolute!important;
    top: 24px!important;
    left: 16px!important;
    right: 90px!important;
    min-height: 0!important;
  }

  body.login-page .login-brand {
    width: 100%!important;
  }

  body.login-page .login-product-title {
    font-size: clamp(3.8rem, 15vw, 5rem)!important;
    line-height: .88!important;
    margin: 0!important;
  }

  body.login-page .login-contact {
    position: static!important;
    margin-top: 22px!important;
  }

  body.login-page .login-card {
    width: 100%!important;
    box-sizing: border-box!important;
    padding: 28px 22px!important;
  }

  body.login-page .login-footer {
    position: static!important;
    transform: none!important;
    width: 100%!important;
    display: flex!important;
    flex-direction: column!important;
    align-items: center!important;
    margin: 15px 0 25px!important;
    padding: 0 16px!important;
    box-sizing: border-box!important;
    white-space: normal!important;
  }
}

/* CallSuite Login — refinamiento móvil */
@media (max-width: 760px) {
  body.login-page .login-company-logo {
    gap: 8px!important;
    right: 105px!important;
  }

  body.login-page .login-company-logo .cs-symbol {
    width: 28px!important;
    height: 28px!important;
    flex-basis: 28px!important;
  }

  body.login-page .login-company-logo .cs-wordmark {
    font-size: clamp(17px, 4.5vw, 24px)!important;
    letter-spacing: -.04em!important;
  }

  body.login-page .login-company-logo .cs-tagline {
    font-size: clamp(6px, 1.5vw, 8px)!important;
    white-space: normal!important;
  }

  body.login-page .login-shell {
    padding-top: 105px!important;
    gap: 22px!important;
  }

  body.login-page .login-product-title {
    font-size: clamp(3.4rem, 13vw, 4.5rem)!important;
  }

  body.login-page .login-product-tagline {
    display: block!important;
    margin-top: 16px!important;
    font-size: 14px!important;
    line-height: 1.4!important;
  }

  body.login-page .login-contact {
    margin-top: 14px!important;
    font-size: 11px!important;
  }

  body.login-page .login-footer {
    flex-direction: row!important;
    flex-wrap: wrap!important;
    justify-content: center!important;
    gap: 4px!important;
    font-size: 10px!important;
    line-height: 1.5!important;
  }
}

/* CallSuite CORE — distribución corporativa de escritorio */
@media (min-width: 761px) {
  body.login-page .login-company-logo {
    position: absolute;
    top: 28px;
    left: 35px;
    z-index: 2;
  }

  body.login-page .login-shell {
    grid-template-columns: minmax(0,1fr) minmax(380px,460px);
    gap: clamp(40px,6vw,100px);
  }

  body.login-page .login-product-title {
    margin: 0;
    font-size: clamp(5rem,8vw,7rem);
    line-height: .9;
  }

  body.login-page .login-contact {
    position: fixed;
    left: 35px;
    bottom: 28px;
    margin: 0;
    font-size: 12px;
    z-index: 2;
  }

  body.login-page .login-footer {
    position: fixed!important;
    bottom: 28px!important;
    left: 50%!important;
    right: auto!important;
    width: auto!important;
    transform: translateX(-50%);
    flex-direction: row!important;
    justify-content: center!important;
    gap: 5px!important;
    white-space: nowrap;
  }
}

/* CallSuite — copyright móvil */
@media (max-width: 760px) {
  body.login-page .login-footer {
    display: flex!important;
    flex-direction: column!important;
    flex-wrap: nowrap!important;
    align-items: center!important;
    justify-content: center!important;
    gap: 3px!important;
    text-align: center!important;
    white-space: normal!important;
    font-size: 11px!important;
    line-height: 1.5!important;
  }

  body.login-page .login-footer > span:first-child {
    white-space: nowrap;
  }
}

/* CallSuite — espaciado final del acceso móvil */
@media (max-width: 760px) {
  body.login-page .login-shell {
    padding-top: 88px!important;
    gap: 20px!important;
  }

  body.login-page .login-product-tagline {
    display: block!important;
    margin: 14px 0 0!important;
    font-size: 14px!important;
    line-height: 1.45!important;
    color: #667164!important;
    opacity: 1!important;
  }

  body.login-page .login-contact {
    margin-top: 16px!important;
  }
}

/* CallSuite Login — contraste del lema en escritorio */
@media (min-width: 761px) {
  body.login-page .login-product-tagline {
    color: #667164 !important;
    opacity: 1 !important;
  }
}

/* =========================================================
   CALLSUITE LOGIN — MASTER LAYOUT v1
   Fuente de referencia para Golden Image / Migración
   ========================================================= */

body.login-page {
  min-height: 100vh !important;
  height: auto !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  background: linear-gradient(
    105deg,
    #252a24 0%,
    #59634f 47%,
    #f6f6f2 47%,
    #f6f6f2 100%
  ) !important;
}

body.login-page .login-shell {
  width: min(1120px, calc(100% - 64px)) !important;
  min-height: 100vh !important;
  margin: 0 auto !important;
  padding: 120px 0 88px !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 440px) !important;
  align-items: center !important;
  gap: clamp(36px, 5vw, 76px) !important;
}

body.login-page .login-company-logo {
  position: absolute !important;
  top: 28px !important;
  left: max(32px, calc((100vw - 1120px) / 2)) !important;
  right: auto !important;
  z-index: 3 !important;
}

body.login-page .login-brand {
  min-width: 0 !important;
  align-self: center !important;
}

body.login-page .login-product-title {
  margin: 0 !important;
  font-size: clamp(4.5rem, 7vw, 6.5rem) !important;
  line-height: .88 !important;
  letter-spacing: -.075em !important;
}

body.login-page .login-product-tagline {
  display: block !important;
  max-width: 360px !important;
  margin: 18px 0 0 !important;
  color: #667164 !important;
  opacity: 1 !important;
  font-size: 17px !important;
  line-height: 1.5 !important;
}

body.login-page .login-contact {
  position: static !important;
  margin: 24px 0 0 !important;
  font-size: 12px !important;
  line-height: 1.7 !important;
}

body.login-page .login-card {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  padding: clamp(28px, 3vw, 40px) !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: 0 24px 64px rgba(20, 24, 19, .16) !important;
}

body.login-page .login-footer {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 18px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 16px !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 5px !important;
  text-align: center !important;
  white-space: normal !important;
  font-size: 11px !important;
  line-height: 1.5 !important;
  transform: none !important;
}

@media (max-width: 760px) {
  body.login-page {
    background: #f6f6f2 !important;
  }

  body.login-page .login-shell {
    width: min(440px, calc(100% - 32px)) !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 100px 0 20px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 22px !important;
  }

  body.login-page .login-company-logo {
    top: 20px !important;
    left: 16px !important;
    right: 88px !important;
    gap: 8px !important;
  }

  body.login-page .login-company-logo .cs-symbol {
    width: 28px !important;
    height: 28px !important;
    flex-basis: 28px !important;
  }

  body.login-page .login-company-logo .cs-wordmark {
    font-size: clamp(17px, 4.5vw, 23px) !important;
    letter-spacing: -.04em !important;
  }

  body.login-page .login-company-logo .cs-tagline {
    margin-top: 4px !important;
    font-size: 8px !important;
    white-space: normal !important;
  }

  body.login-page .login-brand {
    width: 100% !important;
  }

  body.login-page .login-product-title {
    font-size: clamp(3.3rem, 13vw, 4.4rem) !important;
    line-height: .9 !important;
  }

  body.login-page .login-product-tagline {
    margin-top: 10px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
  }

  body.login-page .login-contact {
    margin-top: 10px !important;
    font-size: 11px !important;
  }

  body.login-page .login-card {
    padding: 26px 22px !important;
    border-radius: 20px !important;
  }

  body.login-page .login-footer {
    position: static !important;
    width: 100% !important;
    margin: 4px 0 20px !important;
    padding: 0 16px !important;
    flex-direction: column !important;
    gap: 2px !important;
    font-size: 10px !important;
  }
}
