.procesos-analisis-shell{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.procesos-analisis-tabs,
.procesos-analisis-subtabs{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.procesos-analisis-tab,
.procesos-analisis-subtab{
  min-height:38px;
  padding:0 16px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--card);
  color:var(--muted);
  font:inherit;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
  cursor:pointer;
  transition:border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
}

.procesos-analisis-tab:hover,
.procesos-analisis-subtab:hover{
  border-color:rgba(255,92,51,.32);
  color:var(--ink);
}

.procesos-analisis-tab.is-active,
.procesos-analisis-subtab.is-active{
  border-color:rgba(255,92,51,.34);
  background:rgba(255,92,51,.10);
  color:var(--core-orange, #FF5C33);
  box-shadow:0 8px 20px rgba(255,92,51,.08);
}

.procesos-analisis-nps{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.procesos-analisis-subtabs{
  padding-bottom:4px;
  border-bottom:1px solid var(--border);
}

.procesos-analisis-subtab{
  min-height:34px;
  border-radius:10px 10px 0 0;
  border-color:transparent;
  background:transparent;
  box-shadow:none;
}

.procesos-analisis-subtab.is-active{
  border-color:transparent;
  border-bottom:2px solid var(--core-orange, #FF5C33);
  background:transparent;
  box-shadow:none;
}

.procesos-analisis-layout{
  display:grid;
  gap:16px;
}

.procesos-analisis-card{
  padding:22px;
  border:1px solid var(--border);
  border-radius:20px;
  background:var(--card);
  box-shadow:var(--shadow);
}

.procesos-analisis-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
}

.procesos-analisis-card-head h2{
  margin:4px 0 0;
  color:var(--ink);
  font-size:19px;
  font-weight:900;
}

.procesos-analisis-card-head p{
  max-width:760px;
  margin:7px 0 0;
  color:var(--muted);
  font-size:12.5px;
  font-weight:600;
  line-height:1.55;
}

.procesos-analisis-kicker{
  color:var(--core-orange, #FF5C33);
  font-size:10px;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.procesos-analisis-state{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border:1px solid rgba(255,92,51,.22);
  border-radius:999px;
  background:rgba(255,92,51,.07);
  color:var(--core-orange, #FF5C33);
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  white-space:nowrap;
}

.procesos-analisis-placeholder-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
  margin-top:20px;
}

.procesos-analisis-placeholder-grid span{
  display:block;
  min-height:88px;
  border:1px dashed var(--border);
  border-radius:16px;
  background:rgba(127,140,151,.04);
}

.procesos-analisis-empty{
  display:flex;
  flex-direction:column;
  gap:5px;
  margin-top:18px;
  padding:18px;
  border:1px dashed var(--border);
  border-radius:16px;
  background:rgba(127,140,151,.04);
}

.procesos-analisis-empty strong{
  color:var(--ink);
  font-size:13px;
  font-weight:900;
}

.procesos-analisis-empty span{
  color:var(--muted);
  font-size:12px;
  font-weight:600;
  line-height:1.5;
}

html[data-theme="dark"] .procesos-analisis-tab.is-active,
html[data-theme="dark"] .procesos-analisis-state{
  background:rgba(255,92,51,.12);
}

html[data-theme="dark"] .procesos-analisis-placeholder-grid span,
html[data-theme="dark"] .procesos-analisis-empty{
  background:rgba(255,255,255,.02);
}

@media (max-width:900px){
  .procesos-analisis-placeholder-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:640px){
  .procesos-analisis-card-head{
    flex-direction:column;
  }

  .procesos-analisis-placeholder-grid{
    grid-template-columns:1fr;
  }
}

.procesos-analisis-update-button,
.procesos-analisis-primary-button,
.procesos-analisis-secondary-button{
  min-height:40px;
  padding:0 15px;
  border-radius:12px;
  font:inherit;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
}

.procesos-analisis-update-button,
.procesos-analisis-primary-button{
  border:1px solid var(--core-orange, #FF5C33);
  background:var(--core-orange, #FF5C33);
  color:#fff;
  box-shadow:0 8px 18px rgba(255,92,51,.15);
}

.procesos-analisis-update-button{
  display:inline-flex;
  align-items:center;
  gap:7px;
  background:transparent;
  color:var(--core-orange, #FF5C33);
  box-shadow:none;
}

.procesos-analisis-secondary-button{
  border:1px solid var(--border);
  background:var(--card);
  color:var(--muted);
}

.procesos-analisis-primary-button:disabled,
.procesos-analisis-secondary-button:disabled{
  opacity:.52;
  cursor:not-allowed;
}

.procesos-analisis-drawer-backdrop{
  position:fixed;
  inset:0;
  z-index:940;
  background:rgba(5,20,30,.58);
  backdrop-filter:blur(2px);
}

.procesos-analisis-drawer{
  position:fixed;
  z-index:950;
  top:0;
  right:0;
  bottom:0;
  width:min(570px, 92vw);
  display:flex;
  flex-direction:column;
  background:var(--card);
  border-left:1px solid var(--border);
  box-shadow:-18px 0 40px rgba(5,20,30,.18);
}

.procesos-analisis-drawer-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:24px 26px 20px;
  border-bottom:1px solid var(--border);
}

.procesos-analisis-drawer-head h2{
  margin:5px 0 0;
  color:var(--ink);
  font-size:22px;
  font-weight:900;
}

.procesos-analisis-drawer-head p{
  margin:8px 0 0;
  color:var(--muted);
  font-size:12.5px;
  font-weight:600;
  line-height:1.5;
}

.procesos-analisis-drawer-close{
  width:38px;
  height:38px;
  flex:0 0 38px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--card);
  color:var(--ink);
  font-size:23px;
  line-height:1;
  cursor:pointer;
}

.procesos-analisis-drawer-body{
  flex:1;
  overflow:auto;
  padding:22px 26px;
}

.procesos-analisis-upload{
  min-height:150px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:18px;
  border:1px dashed var(--border);
  border-radius:16px;
  background:rgba(127,140,151,.035);
  color:var(--muted);
  text-align:center;
  cursor:pointer;
}

.procesos-analisis-upload input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}

.procesos-analisis-upload strong{
  color:var(--ink);
  font-size:13px;
  font-weight:900;
}

.procesos-analisis-upload span:last-child{
  font-size:11px;
  font-weight:700;
}

.procesos-analisis-upload-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  margin-bottom:5px;
  border-radius:13px;
  background:rgba(255,92,51,.09);
  color:var(--core-orange, #FF5C33);
  font-size:22px;
  font-weight:900;
}

.procesos-analisis-file{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-top:14px;
  padding:13px 14px;
  border:1px solid var(--border);
  border-radius:14px;
}

.procesos-analisis-file div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}

.procesos-analisis-file strong{
  overflow:hidden;
  color:var(--ink);
  font-size:12.5px;
  font-weight:900;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.procesos-analisis-file span{
  color:var(--muted);
  font-size:11px;
  font-weight:700;
}

.procesos-analisis-file button{
  border:0;
  background:transparent;
  color:var(--muted);
  font-size:20px;
  cursor:pointer;
}

.procesos-analisis-drawer-loading,
.procesos-analisis-drawer-error{
  margin-top:16px;
  padding:14px;
  border-radius:14px;
  font-size:12px;
  font-weight:800;
}

.procesos-analisis-drawer-loading{
  border:1px solid var(--border);
  background:rgba(127,140,151,.04);
  color:var(--muted);
}

.procesos-analisis-drawer-error{
  border:1px solid rgba(196,56,56,.22);
  background:rgba(196,56,56,.08);
  color:#b93636;
}

.procesos-analisis-drawer-result{
  margin-top:22px;
}

.procesos-analisis-drawer-result h3{
  margin:0 0 10px;
  color:var(--ink);
  font-size:15px;
  font-weight:900;
}

.procesos-analisis-checklist{
  display:grid;
  gap:10px;
  padding:15px;
  border:1px solid rgba(34,151,86,.22);
  border-radius:14px;
  background:rgba(34,151,86,.07);
}

.procesos-analisis-checklist.has-errors{
  border-color:rgba(196,56,56,.22);
  background:rgba(196,56,56,.06);
}

.procesos-analisis-check-item{
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--ink);
  font-size:12px;
  font-weight:700;
}

.procesos-analisis-check-icon{
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  flex:0 0 22px;
  border-radius:50%;
  background:#249757;
  color:#fff;
  font-size:12px;
  font-weight:900;
}

.procesos-analisis-checklist.has-errors .procesos-analisis-check-icon{
  background:#c43838;
}

.procesos-analisis-incidencias{
  margin-top:12px;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:12px;
  color:var(--muted);
  font-size:11.5px;
}

.procesos-analisis-incidencias summary{
  cursor:pointer;
  color:var(--ink);
  font-weight:900;
}

.procesos-analisis-incidencias p{
  margin:8px 0 0;
}

.procesos-analisis-drawer-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding:18px 26px;
  border-top:1px solid var(--border);
  background:var(--card);
}

html[data-theme="dark"] .procesos-analisis-drawer-backdrop{
  background:rgba(0,0,0,.68);
}

html[data-theme="dark"] .procesos-analisis-upload,
html[data-theme="dark"] .procesos-analisis-drawer-loading{
  background:rgba(255,255,255,.025);
}

@media (max-width:640px){
  .procesos-analisis-drawer{
    width:100vw;
  }

  .procesos-analisis-drawer-head,
  .procesos-analisis-drawer-body,
  .procesos-analisis-drawer-actions{
    padding-left:18px;
    padding-right:18px;
  }
}

.procesos-analisis-filters-grid{
  display:grid;
  grid-template-columns:150px minmax(240px, 1fr) 180px 180px;
  gap:12px;
  align-items:end;
  max-width:980px;
  margin-top:16px;
}

.procesos-analisis-filter{
  display:flex;
  flex-direction:column;
  gap:7px;
  min-width:0;
}

.procesos-analisis-filter > span{
  color:var(--muted);
  font-size:10.5px;
  font-weight:800;
}

.procesos-analisis-filter select,
.procesos-analisis-filter input[type="date"],
.procesos-analisis-multiselect > summary{
  min-height:40px;
  box-sizing:border-box;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--card);
  color:var(--ink);
  font:inherit;
  font-size:12px;
  font-weight:800;
}

.procesos-analisis-filter select{
  width:100%;
  padding:0 34px 0 12px;
}

.procesos-analisis-filter input[type="date"]{
  width:100%;
  padding:0 11px;
}

.procesos-analisis-filter select:disabled,
.procesos-analisis-filter input:disabled{
  opacity:.6;
  cursor:wait;
}

.procesos-analisis-multiselect{
  position:relative;
}

.procesos-analisis-multiselect > summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:0 12px;
  list-style:none;
  cursor:pointer;
  user-select:none;
}

.procesos-analisis-multiselect > summary::-webkit-details-marker{
  display:none;
}

.procesos-analisis-multiselect > summary::after{
  content:"⌄";
  color:var(--muted);
  font-size:13px;
}

.procesos-analisis-multiselect[data-disabled="true"] > summary{
  opacity:.6;
  pointer-events:none;
}

.procesos-analisis-multiselect-menu{
  position:absolute;
  z-index:30;
  top:calc(100% + 6px);
  left:0;
  width:min(300px, 86vw);
  max-height:330px;
  overflow:auto;
  padding:8px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--card);
  box-shadow:0 14px 34px rgba(5,20,30,.15);
}

.procesos-analisis-multiselect-actions{
  display:flex;
  gap:6px;
  padding:2px 2px 7px;
  border-bottom:1px solid var(--border);
  margin-bottom:5px;
}

.procesos-analisis-multiselect-actions button{
  min-height:28px;
  padding:0 9px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--card);
  color:var(--muted);
  font:inherit;
  font-size:10.5px;
  font-weight:800;
  cursor:pointer;
}

.procesos-analisis-month-option{
  min-height:34px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:5px 7px;
  border-radius:8px;
  color:var(--ink);
  font-size:11.5px;
  font-weight:700;
  cursor:pointer;
}

.procesos-analisis-month-option:hover{
  background:rgba(255,92,51,.06);
}

.procesos-analisis-month-option input{
  accent-color:var(--core-orange, #FF5C33);
}


/* AN1F1 · resumen global visual + pulido de tabla */
.procesos-analisis-placeholder-grid.is-metrics{
  grid-template-columns:minmax(210px,.72fr) minmax(480px,2.25fr) minmax(230px,.9fr);
  gap:0;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid var(--border);
}

.procesos-analisis-placeholder-grid.is-metrics span{
  min-height:128px;
  border-radius:0;
  border-top:0;
  border-bottom:0;
  border-left:0;
  border-right:1px dashed var(--border);
}

.procesos-analisis-placeholder-grid.is-metrics span:last-child{
  border-right:0;
}

.procesos-analisis-global-error{
  margin-top:10px;
  padding:10px 12px;
  border:1px solid rgba(239,68,68,.24);
  border-radius:10px;
  background:rgba(239,68,68,.06);
  color:#d83b3b;
  font-size:11.5px;
  font-weight:700;
}

.procesos-analisis-refresh-status{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:10px;
  padding:6px 9px;
  border:1px solid rgba(255,92,51,.18);
  border-radius:999px;
  background:rgba(255,92,51,.055);
  color:var(--muted);
  font-size:10.5px;
  font-weight:800;
}

.procesos-analisis-refresh-status span{
  color:var(--accent, #ff5c33);
  animation:procesos-analisis-spin .8s linear infinite;
}

.procesos-analisis-refresh-status.is-stale{
  border-color:var(--border);
  background:rgba(127,140,151,.055);
}

.procesos-analisis-live-results,
.procesos-analisis-table-wrap{
  transition:opacity .16s ease, filter .16s ease;
}

.procesos-analisis-live-results.is-refreshing,
.procesos-analisis-table-wrap.is-refreshing{
  opacity:.64;
  filter:saturate(.82);
}

@keyframes procesos-analisis-spin{
  to{ transform:rotate(360deg); }
}

.procesos-analisis-card-head.is-compact h2{
  margin-top:0;
}

html[data-theme="dark"] .procesos-analisis-filter select,
html[data-theme="dark"] .procesos-analisis-filter input[type="date"],
html[data-theme="dark"] .procesos-analisis-multiselect > summary,
html[data-theme="dark"] .procesos-analisis-multiselect-menu,
html[data-theme="dark"] .procesos-analisis-multiselect-actions button{
  background:rgba(255,255,255,.025);
}

.procesos-analisis-card-global{
  padding-bottom:18px;
}

.procesos-analisis-card-global .procesos-analisis-card-head p{
  margin-top:5px;
}

.procesos-analisis-card-global .procesos-analisis-filters-grid{
  margin-top:14px;
}

.procesos-analisis-global-visual{
  display:grid;
  grid-template-columns:minmax(210px,.72fr) minmax(480px,2.25fr) minmax(230px,.9fr);
  align-items:stretch;
  gap:0;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid var(--border);
}

.procesos-analisis-score-panel,
.procesos-analisis-distribution,
.procesos-analisis-objective-panel{
  min-width:0;
}

.procesos-analisis-score-panel{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:2px 28px 2px 14px;
  border-right:1px solid var(--border);
}

.procesos-analisis-score-title{
  display:flex;
  align-items:center;
  gap:7px;
  color:var(--ink);
  font-size:16px;
  font-weight:900;
}

.procesos-analisis-info{
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1.5px solid currentColor;
  border-radius:999px;
  color:var(--muted);
  font-size:11px;
  font-weight:900;
  line-height:1;
  cursor:help;
}

.procesos-analisis-score-panel > strong{
  margin-top:8px;
  color:#356fc9;
  font-size:52px;
  font-weight:900;
  letter-spacing:-.035em;
  line-height:.95;
  font-variant-numeric:tabular-nums;
}

.procesos-analisis-score-delta{
  min-height:20px;
  display:flex;
  align-items:center;
  gap:5px;
  margin-top:11px;
  color:var(--muted);
  font-size:11.5px;
  font-weight:700;
  line-height:1.25;
}

.procesos-analisis-score-delta b{
  font-size:14px;
  font-weight:900;
}

.procesos-analisis-score-delta.is-positive,
.procesos-analisis-objective-copy small.is-positive{
  color:#159447;
}

.procesos-analisis-score-delta.is-negative,
.procesos-analisis-objective-copy small.is-negative{
  color:#d83b3b;
}

.procesos-analisis-score-delta.is-neutral,
.procesos-analisis-objective-copy small.is-neutral{
  color:#d98a00;
}

.procesos-analisis-score-delta.is-empty,
.procesos-analisis-objective-copy small.is-empty{
  color:var(--muted);
}

.procesos-analisis-distribution{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:2px 34px;
  border-right:1px solid var(--border);
}

.procesos-analisis-distribution-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:9px;
}

.procesos-analisis-distribution-head strong{
  color:var(--ink);
  font-size:12.5px;
  font-weight:900;
}

.procesos-analisis-distribution-head span{
  color:var(--muted);
  font-size:10.5px;
  font-weight:800;
  white-space:nowrap;
}

.procesos-analisis-distribution-bar{
  position:relative;
  width:100%;
  height:28px;
  display:flex;
  overflow:hidden;
  border-radius:7px;
  background:rgba(127,140,151,.10);
  box-shadow:inset 0 0 0 1px rgba(127,140,151,.08);
}

.procesos-analisis-distribution-bar > span{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:width .18s ease;
}

.procesos-analisis-distribution-bar > span.is-promotor{
  background:linear-gradient(90deg,#22ad5b,#29b765);
}

.procesos-analisis-distribution-bar > span.is-neutral{
  background:linear-gradient(90deg,#ffc83d,#ffbd25);
}

.procesos-analisis-distribution-bar > span.is-detractor{
  background:linear-gradient(90deg,#ef4a4a,#e73f45);
}

.procesos-analisis-distribution-bar > span.is-empty{
  background:rgba(127,140,151,.10);
}

.procesos-analisis-distribution-bar em{
  color:#fff;
  font-style:normal;
  font-size:11px;
  font-weight:900;
  text-shadow:0 1px 1px rgba(0,0,0,.12);
}

.procesos-analisis-distribution-bar .is-neutral em{
  color:#3b3100;
  text-shadow:none;
}

.procesos-analisis-distribution-legend{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:13px;
}

.procesos-analisis-distribution-legend > div{
  display:flex;
  justify-content:center;
  align-items:flex-start;
  gap:8px;
  min-width:0;
}

.procesos-analisis-dot{
  flex:0 0 auto;
  width:12px;
  height:12px;
  margin-top:2px;
  border-radius:50%;
}

.procesos-analisis-distribution-legend .is-promotor .procesos-analisis-dot{ background:#22ad5b; }
.procesos-analisis-distribution-legend .is-neutral .procesos-analisis-dot{ background:#ffc32e; }
.procesos-analisis-distribution-legend .is-detractor .procesos-analisis-dot{ background:#eb4649; }

.procesos-analisis-distribution-legend > div > div{
  display:flex;
  flex-direction:column;
  gap:1px;
}

.procesos-analisis-distribution-legend span:not(.procesos-analisis-dot){
  color:var(--ink);
  font-size:10.5px;
  font-weight:800;
  line-height:1.15;
}

.procesos-analisis-distribution-legend strong{
  color:var(--ink);
  font-size:16px;
  font-weight:900;
  line-height:1.15;
  font-variant-numeric:tabular-nums;
}

.procesos-analisis-distribution-legend small{
  color:var(--muted);
  font-size:10.5px;
  font-weight:800;
  line-height:1.15;
}

.procesos-analisis-objective-panel{
  position:relative;
  z-index:5;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-content:center;
  align-items:center;
  gap:14px;
  padding:2px 14px 2px 32px;
}

.procesos-analisis-objective-icon{
  width:54px;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(53,111,201,.075);
  color:#16304a;
}

.procesos-analisis-objective-icon svg{
  width:36px;
  height:36px;
  fill:none;
  stroke:currentColor;
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.procesos-analisis-objective-copy{
  position:relative;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.procesos-analisis-objective-copy > label{
  color:var(--ink);
  font-size:15px;
  font-weight:900;
  line-height:1.1;
  cursor:text;
}

.procesos-analisis-objective-hint{
  margin-top:2px;
  color:var(--muted);
  font-size:9px;
  font-weight:800;
  line-height:1.1;
}

.procesos-analisis-objective-control{
  position:relative;
  width:118px;
  max-width:100%;
}

.procesos-analisis-objective-copy input{
  width:100%;
  max-width:100%;
  margin-top:1px;
  padding:0;
  border:0;
  border-bottom:1px solid transparent;
  border-radius:0;
  background:transparent;
  color:var(--ink);
  font:inherit;
  font-size:30px;
  font-weight:900;
  letter-spacing:-.025em;
  line-height:1.08;
  outline:none;
  font-variant-numeric:tabular-nums;
  cursor:text;
}

.procesos-analisis-objective-copy input:focus{
  border-bottom-color:rgba(255,92,51,.48);
}

.procesos-analisis-objective-copy input::placeholder{
  color:var(--muted);
  opacity:.45;
}

.procesos-analisis-objective-options{
  position:absolute;
  z-index:40;
  top:calc(100% + 7px);
  left:-8px;
  width:192px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  padding:8px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--card);
  box-shadow:0 14px 34px rgba(5,20,30,.16);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(-4px);
  transition:opacity .14s ease, transform .14s ease, visibility .14s ease;
}

.procesos-analisis-objective-control:focus-within .procesos-analisis-objective-options{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}

.procesos-analisis-objective-options button{
  min-height:30px;
  padding:0 8px;
  border:1px solid var(--border);
  border-radius:9px;
  background:rgba(127,140,151,.035);
  color:var(--ink);
  font:inherit;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
}

.procesos-analisis-objective-options button:hover,
.procesos-analisis-objective-options button:focus-visible{
  border-color:rgba(255,92,51,.38);
  background:rgba(255,92,51,.08);
  color:var(--core-orange, #FF5C33);
  outline:none;
}

.procesos-analisis-objective-options button:disabled{
  opacity:.5;
  cursor:not-allowed;
}

.procesos-analisis-objective-copy small:not(.procesos-analisis-objective-hint){
  max-width:160px;
  margin-top:4px;
  color:var(--muted);
  font-size:10.5px;
  font-weight:800;
  line-height:1.25;
}

/* AN1F1 · tabla por sede */
.procesos-analisis-card:not(.procesos-analisis-card-global) .procesos-analisis-card-head h2{
  margin-top:0;
}

.procesos-analisis-sede-controls{
  display:flex;
  justify-content:flex-start;
  gap:12px;
  margin-top:13px;
  margin-bottom:10px;
}

.procesos-analisis-filter.is-sede,
.procesos-analisis-filter.is-tipo-sede{
  width:min(320px,100%);
}

.procesos-analisis-table-wrap{
  margin-top:0;
  overflow:auto;
  border:1px solid var(--border);
  border-radius:12px;
  box-shadow:inset 0 0 0 1px rgba(127,140,151,.02);
}

.procesos-analisis-table{
  width:100%;
  min-width:960px;
  border-collapse:collapse;
  background:var(--card);
  font-variant-numeric:tabular-nums;
}

.procesos-analisis-table th,
.procesos-analisis-table td{
  height:40px;
  box-sizing:border-box;
  padding:8px 12px;
  border-bottom:1px solid var(--border);
  color:var(--ink);
  font-size:11.5px;
  text-align:center;
  vertical-align:middle;
  white-space:nowrap;
}

.procesos-analisis-table th{
  position:sticky;
  top:0;
  z-index:1;
  background:#f3f6f8;
  color:#607080;
  font-size:10px;
  font-weight:900;
  letter-spacing:.025em;
  text-transform:uppercase;
}

.procesos-analisis-table th:first-child,
.procesos-analisis-table td:first-child{
  position:sticky;
  left:0;
  z-index:2;
  text-align:left;
  padding-left:16px;
  background:var(--card);
}

.procesos-analisis-table th:first-child{
  z-index:4;
  background:#f3f6f8;
}

.procesos-analisis-table th.is-promotor{
  color:#1f5e39;
  background:#dff5e8;
}

.procesos-analisis-table th.is-neutral{
  color:#755600;
  background:#fff0bf;
}

.procesos-analisis-table th.is-detractor{
  color:#8b2d31;
  background:#f9dfe1;
}

.procesos-analisis-table td.is-promotor{
  background:#eef9f2;
}

.procesos-analisis-table td.is-neutral{
  background:#fff8df;
}

.procesos-analisis-table td.is-detractor{
  background:#fdf0f1;
}

.procesos-analisis-table tbody tr:last-child td{
  border-bottom:0;
}

.procesos-analisis-table tbody tr{
  transition:background .14s ease;
}

.procesos-analisis-table tbody tr:nth-child(even) td:not(.is-promotor):not(.is-neutral):not(.is-detractor){
  background:rgba(127,140,151,.018);
}

.procesos-analisis-table tbody tr:hover td:not(.is-promotor):not(.is-neutral):not(.is-detractor){
  background:rgba(255,92,51,.035);
}

.procesos-analisis-table tbody tr:hover td.is-promotor{ background:#e2f5e9; }
.procesos-analisis-table tbody tr:hover td.is-neutral{ background:#fff0c2; }
.procesos-analisis-table tbody tr:hover td.is-detractor{ background:#f9e0e2; }

.procesos-analisis-table td.is-sede{
  min-width:240px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.005em;
  text-align:left;
}

.procesos-analisis-table td.is-nps{
  color:#1c2d3b;
  font-size:12px;
  font-weight:900;
}

.procesos-analisis-table th:nth-child(8),
.procesos-analisis-table td:nth-child(8),
.procesos-analisis-table th:nth-child(9),
.procesos-analisis-table td:nth-child(9){
  border-left:1px solid var(--border);
}

.procesos-analisis-value{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:36px;
  color:var(--ink);
  font-weight:850;
}

.procesos-analisis-comparison{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:78px;
  min-height:22px;
  padding:0 10px;
  border-radius:999px;
  font-size:9.5px;
  font-weight:900;
  letter-spacing:.005em;
}

.procesos-analisis-comparison.is-positive{
  background:rgba(34,173,91,.11);
  color:#168b45;
}

.procesos-analisis-comparison.is-negative{
  background:rgba(235,70,73,.10);
  color:#d43c40;
}

.procesos-analisis-comparison.is-empty{
  min-width:0;
  padding:0;
  background:transparent;
  color:var(--muted);
}

.procesos-analisis-table-loading{
  margin-top:14px;
  padding:16px;
  border:1px dashed var(--border);
  border-radius:14px;
  color:var(--muted);
  font-size:11.5px;
  font-weight:700;
}

html[data-theme="dark"] .procesos-analisis-objective-icon{
  background:rgba(92,150,235,.09);
  color:#c4d9f1;
}

html[data-theme="dark"] .procesos-analisis-table th,
html[data-theme="dark"] .procesos-analisis-table th:first-child{
  background:#16232c;
  color:#91a1ae;
}

html[data-theme="dark"] .procesos-analisis-table th.is-promotor{
  color:#9be8b8;
  background:rgba(34,173,91,.22);
}

html[data-theme="dark"] .procesos-analisis-table th.is-neutral{
  color:#ffe17a;
  background:rgba(255,195,46,.20);
}

html[data-theme="dark"] .procesos-analisis-table th.is-detractor{
  color:#ffb3b2;
  background:rgba(235,70,73,.20);
}

html[data-theme="dark"] .procesos-analisis-table td.is-promotor{ background:rgba(34,173,91,.12); }
html[data-theme="dark"] .procesos-analisis-table td.is-neutral{ background:rgba(255,195,46,.105); }
html[data-theme="dark"] .procesos-analisis-table td.is-detractor{ background:rgba(235,70,73,.105); }

html[data-theme="dark"] .procesos-analisis-table td.is-nps{
  color:var(--ink);
}

html[data-theme="dark"] .procesos-analisis-table tbody tr:nth-child(even) td:not(.is-promotor):not(.is-neutral):not(.is-detractor){
  background:rgba(255,255,255,.012);
}

html[data-theme="dark"] .procesos-analisis-objective-options{
  box-shadow:0 16px 38px rgba(0,0,0,.32);
}

@media (max-width:1320px){
  .procesos-analisis-global-visual,
  .procesos-analisis-placeholder-grid.is-metrics{
    grid-template-columns:minmax(190px,.75fr) minmax(400px,1.9fr) minmax(210px,.9fr);
  }

  .procesos-analisis-score-panel{ padding-right:20px; }
  .procesos-analisis-distribution{ padding-left:24px; padding-right:24px; }
  .procesos-analisis-objective-panel{ padding-left:22px; }
}

@media (max-width:1040px){
  .procesos-analisis-global-visual{
    grid-template-columns:1fr 1fr;
    row-gap:18px;
  }

  .procesos-analisis-placeholder-grid.is-metrics{
    grid-template-columns:1fr 1fr;
    gap:10px;
    border-top:0;
  }

  .procesos-analisis-placeholder-grid.is-metrics span{
    min-height:92px;
    border:1px dashed var(--border);
    border-radius:12px;
  }

  .procesos-analisis-placeholder-grid.is-metrics span:nth-child(2){
    grid-column:1 / -1;
    grid-row:2;
  }

  .procesos-analisis-score-panel{
    border-right:1px solid var(--border);
  }

  .procesos-analisis-distribution{
    grid-column:1 / -1;
    grid-row:2;
    padding:18px 12px 0;
    border-top:1px solid var(--border);
    border-right:0;
  }

  .procesos-analisis-objective-panel{
    padding-left:28px;
  }
}

@media (max-width:980px){
  .procesos-analisis-filters-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:none;
  }
}

@media (max-width:760px){
  .procesos-analisis-sede-controls{
    flex-direction:column;
  }

  .procesos-analisis-filter.is-sede,
  .procesos-analisis-filter.is-tipo-sede{
    width:100%;
  }
}

@media (max-width:680px){
  .procesos-analisis-global-visual,
  .procesos-analisis-placeholder-grid.is-metrics{
    grid-template-columns:1fr;
  }

  .procesos-analisis-placeholder-grid.is-metrics span:nth-child(2){
    grid-column:auto;
    grid-row:auto;
  }

  .procesos-analisis-score-panel,
  .procesos-analisis-objective-panel{
    padding:12px 4px;
    border-right:0;
  }

  .procesos-analisis-objective-panel{
    border-top:1px solid var(--border);
  }

  .procesos-analisis-distribution{
    grid-column:auto;
    grid-row:auto;
    padding:16px 4px;
  }

  .procesos-analisis-score-panel > strong{
    font-size:44px;
  }

  .procesos-analisis-distribution-legend{
    gap:10px;
  }
}

@media (max-width:560px){
  .procesos-analisis-filters-grid{
    grid-template-columns:1fr;
  }
}

/* AN1F3 · cierre visual: acción contextual, metadatos en drawer y columnas semánticas */
.procesos-analisis-subtabs-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  padding-bottom:4px;
  border-bottom:1px solid var(--border);
}

.procesos-analisis-subtabs-row .procesos-analisis-subtabs{
  flex:1 1 auto;
  min-width:0;
  padding-bottom:0;
  border-bottom:0;
}

.procesos-analisis-subtabs-row .procesos-analisis-update-button{
  flex:0 0 auto;
  min-height:34px;
  margin-bottom:4px;
  padding:0 13px;
  border-radius:10px;
  font-size:11px;
}

.procesos-analisis-publication-summary{
  display:grid;
  gap:3px;
  margin-bottom:16px;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:13px;
  background:rgba(127,140,151,.045);
}

.procesos-analisis-publication-summary > span{
  color:var(--muted);
  font-size:9.5px;
  font-weight:900;
  letter-spacing:.055em;
  text-transform:uppercase;
}

.procesos-analisis-publication-summary > strong{
  color:var(--ink);
  font-size:12.5px;
  font-weight:900;
}

.procesos-analisis-publication-summary > small{
  color:var(--muted);
  font-size:10.5px;
  font-weight:650;
  line-height:1.4;
}

.procesos-analisis-publication-summary.is-error{
  border-color:rgba(235,70,73,.22);
  background:rgba(235,70,73,.055);
}

/*
 * soft-ui.css aplica background:transparent !important a tbody td y un
 * background !important a thead th. Estas reglas son intencionalmente
 * específicas + !important para que la semántica NPS gane solo dentro de
 * esta tabla, sin alterar el resto de la plataforma.
 */
.procesos-analisis-table th.is-promotor{
  color:#205d39 !important;
  background:#cfeeda !important;
}

.procesos-analisis-table td.is-promotor{
  background:#e9f7ee !important;
}

.procesos-analisis-table th.is-neutral{
  color:#705100 !important;
  background:#ffe8a8 !important;
}

.procesos-analisis-table td.is-neutral{
  background:#fff4d1 !important;
}

.procesos-analisis-table th.is-detractor{
  color:#842d31 !important;
  background:#f8d1d3 !important;
}

.procesos-analisis-table td.is-detractor{
  background:#fde9ea !important;
}

.procesos-analisis-table tbody tr:nth-child(even) td:not(.is-promotor):not(.is-neutral):not(.is-detractor){
  background:rgba(127,140,151,.018) !important;
}

.procesos-analisis-table tbody tr:hover td:not(.is-promotor):not(.is-neutral):not(.is-detractor){
  background:rgba(255,92,51,.035) !important;
}

.procesos-analisis-table tbody tr:hover td.is-promotor{
  background:#dcf2e4 !important;
}

.procesos-analisis-table tbody tr:hover td.is-neutral{
  background:#ffeab2 !important;
}

.procesos-analisis-table tbody tr:hover td.is-detractor{
  background:#f8dadd !important;
}

html[data-theme="dark"] .procesos-analisis-publication-summary{
  background:rgba(255,255,255,.025);
}

html[data-theme="dark"] .procesos-analisis-table th.is-promotor{
  color:#a8ebc0 !important;
  background:rgba(34,173,91,.24) !important;
}

html[data-theme="dark"] .procesos-analisis-table td.is-promotor{
  background:rgba(34,173,91,.13) !important;
}

html[data-theme="dark"] .procesos-analisis-table th.is-neutral{
  color:#ffe38b !important;
  background:rgba(255,195,46,.22) !important;
}

html[data-theme="dark"] .procesos-analisis-table td.is-neutral{
  background:rgba(255,195,46,.12) !important;
}

html[data-theme="dark"] .procesos-analisis-table th.is-detractor{
  color:#ffb8b7 !important;
  background:rgba(235,70,73,.23) !important;
}

html[data-theme="dark"] .procesos-analisis-table td.is-detractor{
  background:rgba(235,70,73,.12) !important;
}

html[data-theme="dark"] .procesos-analisis-table tbody tr:nth-child(even) td:not(.is-promotor):not(.is-neutral):not(.is-detractor){
  background:rgba(255,255,255,.012) !important;
}

html[data-theme="dark"] .procesos-analisis-table tbody tr:hover td:not(.is-promotor):not(.is-neutral):not(.is-detractor){
  background:rgba(255,255,255,.035) !important;
}

@media (max-width:760px){
  .procesos-analisis-subtabs-row{
    align-items:stretch;
    flex-wrap:wrap;
  }

  .procesos-analisis-subtabs-row .procesos-analisis-subtabs{
    flex:1 1 100%;
  }

  .procesos-analisis-subtabs-row .procesos-analisis-update-button{
    margin:0 0 4px auto;
  }
}

/* AN2C2B: gestión contextual de campañas en el drawer existente. */
.procesos-analisis-campania-select-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:18px}
.procesos-analisis-campania-label{display:flex;flex:1;min-width:180px;flex-direction:column;gap:7px;color:var(--muted);font-size:11px;font-weight:800}
.procesos-analisis-campania-label select,
.procesos-analisis-campania-form input,
.procesos-analisis-campania-form textarea,
.procesos-analisis-campania-confirmar input{min-height:40px;width:100%;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--ink);padding:8px 11px;font:inherit;box-sizing:border-box}
.procesos-analisis-campania-select-row .procesos-analisis-secondary-button{white-space:nowrap}
.procesos-analisis-campania-form,.procesos-analisis-campania-confirmar{display:grid;gap:13px;padding:16px;margin:0 0 16px;border:1px solid var(--border);border-radius:14px;background:rgba(127,140,151,.04)}
.procesos-analisis-campania-form h3,.procesos-analisis-campania-confirmar strong{font-size:15px;font-weight:900;color:var(--ink);margin:0}
.procesos-analisis-campania-form p,.procesos-analisis-campania-confirmar p,.procesos-analisis-campania-summary p{font-size:12px;color:var(--muted);margin:0;line-height:1.5}
.procesos-analisis-campania-form label,.procesos-analisis-campania-confirmar label{display:grid;gap:6px;font-size:11px;color:var(--muted);font-weight:800}
.procesos-analisis-campania-confirmar>div{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.procesos-analisis-campania-summary{display:grid;gap:8px;margin-bottom:16px}
.procesos-analisis-campania-summary-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.procesos-analisis-campania-summary-top span{font-size:10px;font-weight:900;border-radius:999px;padding:5px 9px;border:1px solid var(--border);color:var(--muted)}
.procesos-analisis-campania-notice{padding:13px;border:1px solid var(--border);border-radius:12px;font-size:12px;font-weight:700;color:var(--muted);line-height:1.5}
.procesos-analisis-campania-close-link{margin:14px 0 0;border:0;background:transparent;color:#b74a40;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;font-weight:800;font-size:12px}
.procesos-analisis-campania-message{padding:12px 14px;margin-top:14px;border-radius:12px;background:rgba(34,151,86,.07);border:1px solid rgba(34,151,86,.2);color:var(--ink);font-size:12px;font-weight:750}
.procesos-analisis-campania-ok{margin-top:16px;font-size:12px;font-weight:800}
@media(max-width:620px){.procesos-analisis-campania-select-row{align-items:stretch}.procesos-analisis-campania-select-row .procesos-analisis-secondary-button{width:100%}}

/* AN2C3.1 · NPS múltiple y reinicio general de los filtros del Dashboard. */
.procesos-analisis-filters-grid.has-campaign{
  grid-template-columns:160px 125px minmax(245px, 420px) 180px 180px minmax(105px, 1fr);
  max-width:none;
}
.procesos-analisis-month-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:8px;
  align-items:center;
}
.procesos-analisis-month-controls .procesos-analisis-multiselect{min-width:0}
.procesos-analisis-month-clear{
  min-height:40px;
  border:1px solid var(--border);
  border-radius:10px;
  padding:0 11px;
  background:var(--card);
  color:var(--muted);
  font:inherit;
  font-size:11px;
  font-weight:750;
  cursor:pointer;
}
.procesos-analisis-month-clear:hover:not(:disabled){
  color:var(--accent,#ff5c33);
  border-color:rgba(255,92,51,.4);
}
.procesos-analisis-month-clear:disabled{opacity:.45;cursor:not-allowed}
.procesos-analisis-month-clear:focus-visible{outline:2px solid var(--accent,#ff5c33);outline-offset:2px}
.procesos-analisis-filters-clear{
  justify-self:end;
  align-self:end;
  white-space:nowrap;
}
.procesos-analisis-filter.is-campaign .procesos-analisis-multiselect-menu{
  width:min(260px, 86vw);
}
@media (max-width:1200px){
  .procesos-analisis-filters-grid.has-campaign{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
}
@media (max-width:700px){
  .procesos-analisis-filters-grid.has-campaign{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .procesos-analisis-filters-grid.has-campaign{grid-template-columns:1fr}
  .procesos-analisis-filters-clear{justify-self:stretch}
}
