/* PITBOX DMS — Actividades, Gobierno y empresas, Cobranza y automatizaciones (etapa 3). */

.mt-0{margin-top:0}
.nowrap{white-space:nowrap}
.tbl tr.inactivo td{opacity:.55}
.tbl.compacta td{padding:8px 12px}
.in-mini{height:30px;border:1px solid var(--line);border-radius:8px;padding:0 8px;font:inherit;font-size:12.5px;background:var(--card);max-width:150px}
.in-mini.num{width:70px;text-align:right}
.in-mini:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(20,179,166,.16)}
.rot180{display:inline-flex;transform:rotate(180deg)}
.uso-row .bar i.tarde{background:linear-gradient(90deg,var(--navy) 70%,var(--bad))}

/* ---------- actividades: lista ---------- */
.act-toolbar .search{flex:1 1 220px}
.act-toolbar .seg svg{width:14px;height:14px;margin-right:5px;vertical-align:-2px}
.act-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start}
.act-grupo{display:flex;align-items:center;gap:8px;padding:10px 18px 8px;font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);background:var(--sunk);border-bottom:1px solid var(--line-2)}
.act-grupo:first-child{border-top-left-radius:var(--r);border-top-right-radius:var(--r)}
.act-grupo small{font-size:11px;font-weight:600;color:var(--ink-3);background:var(--card);border:1px solid var(--line);border-radius:999px;padding:0 7px}
.act-grupo.bad{color:var(--bad)}
.act-grupo.hoy{color:var(--teal-ink)}
.act-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto 92px 104px;gap:14px;align-items:center;padding:12px 18px;border-bottom:1px solid var(--line-2);cursor:pointer;position:relative;transition:background .12s}
.act-row:hover{background:#FAFBFD}
.act-row::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:transparent}
.act-row.prio-alta::before{background:var(--warn)}
.act-row.prio-urgente::before{background:var(--bad)}
.act-row.cerrada .act-t b{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--line)}
.act-check{width:20px;height:20px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;color:#fff;flex:none}
.act-check svg{width:12px;height:12px}
.act-check.prog{border-color:var(--teal);background:conic-gradient(var(--teal) 0 50%,transparent 50% 100%)}
.act-check.ok{background:var(--ok);border-color:var(--ok)}
.act-check.x{background:var(--ink-3);border-color:var(--ink-3)}
.act-main{min-width:0}
.act-t{display:flex;align-items:center;gap:8px;min-width:0}
.act-t b{font-weight:600;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.act-m{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:3px;font-size:11.5px;color:var(--ink-3)}
.act-m span{display:inline-flex;align-items:center;gap:4px}
.act-m svg{width:12px;height:12px}
.act-liga-chip{color:var(--navy-2)!important;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.act-auto{color:var(--teal-ink)!important}
.act-av{display:flex;align-items:center}
.act-av .avatar{width:24px;height:24px;font-size:9px;border:2px solid var(--card);margin-left:-6px}
.act-av .avatar:first-child{margin-left:0}
.act-av .mas{font-size:11px;color:var(--ink-3);margin-left:4px}
.act-prog{display:flex;align-items:center;gap:6px}
.act-prog .bar{flex:1;height:5px;border-radius:3px;background:var(--line-2);overflow:hidden}
.act-prog .bar i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--teal),var(--teal-2))}
.act-prog small{font-size:11px;color:var(--ink-3);width:30px;text-align:right;font-variant-numeric:tabular-nums}
.act-vence{display:flex;flex-direction:column;align-items:flex-end;text-align:right;line-height:1.25}
.act-vence small{font-size:11px;color:var(--ink-3)}
.act-vence b{font-size:12.5px;font-weight:600;text-transform:capitalize}
.act-vence.bad small,.act-vence.bad b{color:var(--bad)}
.act-vence.warn small{color:var(--teal-ink);font-weight:600}
.act-mini .kv-linea .who{font-size:12.5px}
.act-mini .pill{margin-left:6px}

/* ---------- actividades: formulario y ficha ---------- */
.act-resp{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.chip-persona{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 6px 0 4px;border-radius:999px;background:var(--navy-soft);font-size:12.5px;color:var(--navy)}
.chip-persona .avatar{width:22px;height:22px;font-size:9px}
.chip-persona button{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;color:var(--ink-3)}
.chip-persona button:hover{background:#fff;color:var(--bad)}
.chip-persona button svg{width:11px;height:11px}
.act-resp-add{height:30px;border:1px dashed var(--teal);border-radius:999px;padding:0 12px;font:inherit;font-size:12.5px;color:var(--teal-ink);background:var(--teal-soft);cursor:pointer}
.act-liga{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--navy-2)}
.act-liga svg{width:14px;height:14px}
.act-detalle .card-b{display:flex;flex-direction:column}
.act-fechas{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.act-fechas > div{padding:10px 12px;border-radius:11px;background:var(--sunk);border:1px solid var(--line-2);display:flex;flex-direction:column;gap:2px}
.act-fechas small{font-size:11px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.act-fechas b{font-size:13.5px;text-transform:capitalize}
.act-fechas span{font-size:12px;color:var(--ink-3)}
.act-fechas .bad{background:var(--bad-soft);border-color:#f5c6c2} .act-fechas .bad b,.act-fechas .bad span{color:var(--bad)}
.act-fechas .warn{background:var(--teal-soft);border-color:#c4ebe6} .act-fechas .warn span{color:var(--teal-ink);font-weight:600}
.act-desc{margin-top:14px;font-size:13.5px;line-height:1.55}
.act-sub{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin:18px 0 8px}
.act-pct{font-family:var(--f-mono);font-size:15px;font-weight:600;color:var(--teal-ink)}
.act-range{width:100%;-webkit-appearance:none;appearance:none;height:8px;border-radius:4px;background:linear-gradient(90deg,var(--teal) var(--v),var(--line-2) var(--v));outline:none}
.act-range::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid var(--teal);box-shadow:var(--sh-1);cursor:pointer}
.act-range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--teal);cursor:pointer}
.act-ligadas{display:flex;flex-direction:column}
.act-lig{display:flex;align-items:center;gap:10px;padding:10px 18px;border-top:1px solid var(--line-2);font-size:13px;color:var(--ink);transition:background .12s}
.act-lig:hover{background:#FAFBFD}
.act-lig .t{flex:1;min-width:0;display:flex;flex-direction:column}
.act-lig .t small{font-size:11.5px;color:var(--ink-3)}
.act-lig .d{font-size:12px;color:var(--ink-3);white-space:nowrap}
.act-lig.cerrada .t{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--line)}
.act-ligadas > .btn{margin:6px 18px 12px;align-self:flex-start}

/* ---------- calendario ---------- */
.cal-nav{display:flex;align-items:center;gap:8px}
.cal-nav h3{min-width:150px;text-align:center}
.cal-ley{display:flex;gap:14px;font-size:11.5px;color:var(--ink-3)}
.cal-ley span{display:inline-flex;align-items:center;gap:5px}
.cal-ley i{width:9px;height:9px;border-radius:3px}
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line)}
.cal-dow{padding:8px 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);background:var(--sunk);border-bottom:1px solid var(--line)}
.cal-d{min-height:112px;padding:6px 6px 8px;border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);display:flex;flex-direction:column;gap:3px;min-width:0}
.cal-d:nth-child(7n){border-right:0}
.cal-d .n{font-size:12px;font-weight:600;color:var(--ink-2);width:24px;height:24px;display:grid;place-items:center;border-radius:50%;margin-bottom:2px}
.cal-d.fuera{background:#FBFBFD}
.cal-d.fuera .n{color:var(--ink-3);font-weight:500}
.cal-d.inhabil{background:repeating-linear-gradient(135deg,transparent 0 6px,rgba(20,27,45,.018) 6px 12px)}
.cal-d.hoy .n{background:var(--teal);color:#fff}
.cal-i{display:block;width:100%;text-align:left;font-size:11.5px;line-height:1.3;padding:3px 6px 3px 8px;border-radius:6px;background:var(--navy-soft);color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}
.cal-i::before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:3px;border-radius:2px;background:var(--navy-2)}
.cal-i:hover{filter:brightness(.97)}
.cal-i.p-alta::before,.cal-ley .p-alta{background:var(--warn)}
.cal-i.p-urgente::before,.cal-ley .p-urgente{background:var(--bad)}
.cal-ley .p-normal{background:var(--navy-2)}
.cal-i.p-baja{background:var(--sunk);color:var(--ink-2)}
.cal-i.venc{background:var(--bad-soft);color:var(--bad)}
.cal-i.hecha{background:var(--teal-soft);color:var(--teal-ink);text-decoration:line-through;text-decoration-color:rgba(11,122,112,.35)}
.cal-i.hecha::before{background:var(--teal)}
.cal-mas{font-size:11px;color:var(--teal-ink);font-weight:600;text-align:left;padding:0 6px}

/* ---------- gobierno ---------- */
.gob-ms i{width:12px}
.gob-ms i.o{background:repeating-linear-gradient(90deg,var(--line) 0 2px,transparent 2px 4px)}
.gob-tbl tr.riesgo td:first-child{box-shadow:inset 3px 0 0 var(--bad)}
.gob-tbl td .sema{margin-top:3px}
.gob-steps{grid-template-columns:repeat(9,minmax(0,1fr))}
.gob-steps .l{font-size:11.5px;line-height:1.25}
.gob-steps .w.omitido .c{border-style:dashed;color:var(--line)}
.gob-steps .w.omitido .l,.gob-steps .w.omitido .d{color:var(--ink-3);opacity:.7}
.gob-steps .w.done.tarde .c{background:var(--navy);box-shadow:0 0 0 3px var(--bad-soft)}
.gob-steps .w.done.tarde .d{color:var(--bad)}
.gob-steps .w.now.bad .c{border-color:var(--bad);color:var(--bad);box-shadow:0 0 0 6px rgba(212,52,44,.12)}
.gob-steps .w.now.warn .c{border-color:var(--warn);color:var(--warn);box-shadow:0 0 0 6px rgba(201,138,0,.12)}
.gob-steps .w.now.ok .c{border-color:var(--teal);color:var(--teal-ink);box-shadow:0 0 0 6px rgba(20,179,166,.14)}
.gob-paso{border-top-color:var(--teal)}
.gob-paso .card-h h3 svg{color:var(--teal-ink)}
.gob-limite{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.gob-fechas td{padding:9px 12px}
.gob-fechas tr.actual td{background:linear-gradient(90deg,var(--teal-soft),transparent 60%)}
.gob-fechas tr.actual td:first-child{box-shadow:inset 3px 0 0 var(--teal)}
.gob-fechas tr.gob-venc td{background:var(--sunk);font-size:12.5px;color:var(--ink-2)}
.gob-fechas .btn.xs{margin-left:4px}
.doc-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line-2)}
.doc-row:last-child{border-bottom:0}
.doc-row > .ico svg{width:18px;height:18px;color:var(--navy-2)}
.doc-row .two{flex:1;display:flex;flex-direction:column}
.doc-row .two small{font-size:12px;color:var(--ink-3)}
.doc-row.cancelado{opacity:.5}

/* ---------- cobranza ---------- */
.cob-antig .card-b{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.cob-antig-t{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.cob-barra{flex:1;min-width:220px;display:flex;height:12px;border-radius:6px;overflow:hidden;background:var(--line-2);gap:2px}
.cob-barra i{display:block;height:100%}
.r0{background:var(--teal)} .r1{background:var(--warn)} .r2{background:#E2702E} .r3{background:var(--bad)}
.cob-ley{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--ink-2)}
.cob-ley span{display:inline-flex;align-items:center;gap:6px}
.cob-ley i{width:9px;height:9px;border-radius:3px}
.cob-ley small{color:var(--ink-3)}
.cob-tbl td .sema{margin-bottom:2px}

/* ---------- inicio ---------- */
.inicio-pend{margin-bottom:18px}
.inicio-pend .act-row{grid-template-columns:22px minmax(0,1fr) 104px}
.inicio-pend .act-row .act-av,.inicio-pend .act-row .act-prog{display:none}
.inicio-pend .gar-link .sema{flex:none}

/* ---------- configuración ---------- */
.cfg-plazos{margin-top:10px}
.cfg-plazos td{padding:8px 12px}
.auto-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}
.auto-card{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:var(--card);display:flex;flex-direction:column;gap:12px;transition:border-color .15s,opacity .15s}
.auto-card:hover{border-color:#c4ebe6}
.auto-card.apagada{opacity:.6}
.auto-card.apagada .auto-ico{background:var(--sunk);color:var(--ink-3)}
.auto-h{display:flex;gap:12px;align-items:flex-start}
.auto-h > div{flex:1;display:flex;flex-direction:column;gap:3px}
.auto-h b{font-size:13.5px}
.auto-h small{font-size:12px;color:var(--ink-3);line-height:1.4}
.auto-b{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding-top:10px;border-top:1px dashed var(--line-2)}
.auto-b .cfg-num{font-size:12.5px;color:var(--ink-2)}
.auto-b .cfg-num input{width:80px}
.auto-ult{font-size:11.5px;color:var(--ink-3);margin-left:auto}
.switch{position:relative;width:38px;height:22px;flex:none;cursor:pointer}
.switch input{opacity:0;width:0;height:0;position:absolute}
.switch i{position:absolute;inset:0;border-radius:11px;background:var(--line);transition:background .2s}
.switch i::after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .2s var(--ease)}
.switch input:checked + i{background:var(--teal)}
.switch input:checked + i::after{transform:translateX(16px)}
.switch input:disabled + i{opacity:.5;cursor:not-allowed}

@media (max-width:1320px){.act-grid{grid-template-columns:1fr}.gob-steps{grid-template-columns:repeat(5,minmax(0,1fr));row-gap:16px}}
@media (max-width:900px){.act-row{grid-template-columns:22px minmax(0,1fr) 96px}.act-av,.act-prog{display:none}.cal-d{min-height:80px}.cal-i{font-size:10.5px}}
.act-grid .uso-row{grid-template-columns:120px 1fr 32px;gap:10px}
