/* SIGUE360 V6.9.40 — Análisis técnico (Biblioteca + Presupuestos) */
.taRoot{--ta-bg:rgba(4,24,41,.62);--ta-bg2:rgba(6,18,30,.85);--ta-line:rgba(90,220,248,.16);--ta-line2:rgba(90,220,248,.32);--ta-ink:#eaf8fd;--ta-muted:#8faab7;--ta-cyan:#23D3FF;--ta-green:#52e5a5;--ta-orange:#ffbb5c;--ta-red:#ff746d;color:var(--ta-ink);font-size:14px;line-height:1.45;margin-top:14px}
.taModal{--ta-bg:rgba(4,24,41,.62);--ta-bg2:rgba(6,18,30,.96);--ta-line:rgba(90,220,248,.16);--ta-line2:rgba(90,220,248,.32);--ta-ink:#eaf8fd;--ta-muted:#8faab7;--ta-cyan:#23D3FF;--ta-green:#52e5a5;--ta-orange:#ffbb5c;--ta-red:#ff746d}
.taRoot *,.taModal *{box-sizing:border-box}
.taRoot h2,.taModal h2{margin:4px 0 6px;font-size:24px;line-height:1.2;color:var(--ta-ink)}
.taRoot h3,.taModal h3{margin:0 0 8px;font-size:15px;letter-spacing:.01em;color:var(--ta-ink)}
.taRoot h4,.taModal h4{margin:10px 0 6px;font-size:14px}
.taRoot small,.taModal small{color:var(--ta-muted)}
.taRoot code,.taModal code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12.5px;color:#9fe9ff;background:rgba(35,211,255,.08);padding:1px 5px;border-radius:5px}
.taMuted{color:var(--ta-muted);font-size:13px;margin:4px 0 8px}.taMuted.small,.small{font-size:12px}
.taHead,.taFichaHead{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap;padding:18px 20px;border:1px solid var(--ta-line);border-radius:16px;background:linear-gradient(135deg,rgba(9,50,74,.72),rgba(4,24,41,.7))}
.taHead>div:first-child small,.taFichaHead small{letter-spacing:.12em;font-size:11px;font-weight:700;color:var(--ta-cyan)}
.taHead p{max-width:820px;margin:4px 0 0;color:#c7dde6}
.taHeadActions,.taStateBtns,.taRow{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.taFichaState{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.taBtn{min-height:36px;padding:6px 13px;border-radius:9px;border:1px solid var(--ta-line2);background:rgba(13,72,101,.55);color:var(--ta-ink);font:600 13px/1.2 Inter,system-ui,sans-serif;cursor:pointer;transition:background .15s,border-color .15s}
.taBtn:hover{background:rgba(20,100,135,.7);border-color:var(--ta-cyan)}
.taBtn.primary{background:linear-gradient(180deg,#1fb8dc,#0f86a8);border-color:#5fe3ff;color:#02141d;font-weight:800}
.taBtn.danger{border-color:rgba(255,116,109,.45);background:rgba(110,30,30,.35)}
.taBtn.mini{min-height:28px;padding:3px 9px;font-size:12px}
.taBtn.wide{width:100%;margin:4px 0}
.taBtn:focus-visible,.taRoot input:focus-visible,.taRoot select:focus-visible,.taModal input:focus-visible,.taModal select:focus-visible{outline:2px solid var(--ta-cyan);outline-offset:1px}
.taLink{background:none;border:0;color:var(--ta-cyan);font:600 13px Inter,system-ui,sans-serif;cursor:pointer;padding:4px 0}
.taX{width:28px;height:28px;flex:0 0 28px;border-radius:7px;border:1px solid rgba(255,116,109,.35);background:transparent;color:#ffb3ae;cursor:pointer;font-size:16px;line-height:1}
.taCrumb{margin:4px 0 8px}
.taKpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:12px 0}
.taKpis>div,.taKpis>button{padding:12px 14px;border:1px solid var(--ta-line);border-radius:13px;background:var(--ta-bg);text-align:left;color:var(--ta-ink);font:inherit}
.taKpis>button{cursor:pointer}.taKpis>button:hover,.taKpis>button.on{border-color:var(--ta-cyan);background:rgba(13,72,101,.6)}
.taKpis small{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.taKpis b{display:block;font-size:26px;margin:2px 0;color:var(--ta-ink)}
.taKpis span{font-size:12px;color:var(--ta-muted)}
.taNotice,.taWarnBox{padding:10px 14px;border-radius:11px;border:1px solid rgba(255,187,92,.35);background:rgba(90,60,10,.22);color:#ffe2b8;font-size:13px;margin:8px 0}
.taFilters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:10px 0}
.taRoot input,.taRoot select,.taRoot textarea,.taModal input,.taModal select{background:#06141c;border:1px solid #2f7680;color:var(--ta-ink);border-radius:8px;padding:6px 9px;font:13px Inter,system-ui,sans-serif;min-height:34px;max-width:100%}
.taRoot input:disabled,.taModal input:disabled,.taModal select:disabled{opacity:.6}
.taFilters input[type=search]{flex:1 1 280px}
.taCount{margin-left:auto;color:var(--ta-muted);font-size:13px}
.taTableWrap{overflow-x:auto;border:1px solid var(--ta-line);border-radius:12px;background:var(--ta-bg2)}
.taTable{width:100%;border-collapse:collapse;font-size:13px}
.taTable th{position:sticky;top:0;background:#082638;text-align:left;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:#9cc6d6;padding:9px 10px;border-bottom:1px solid var(--ta-line2)}
.taTable td{padding:8px 10px;border-bottom:1px solid var(--ta-line);vertical-align:top}
.taTable td small{display:block;margin-top:2px;font-size:12px}
.taTable td.n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.taTable.compact td,.taTable.compact th{padding:6px 8px}
.taTable tr.taPending td{background:rgba(255,187,92,.05)}
.taTable tr.sel td{background:rgba(35,211,255,.08)}
.taTable select{min-width:150px}
.taAlt{color:var(--ta-orange)!important}
.taMore{text-align:center;margin:10px 0}
.taStatus{display:inline-block;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid var(--ta-line2);white-space:nowrap}
.taStatus.elaboracion{color:var(--ta-orange);border-color:rgba(255,187,92,.5)}
.taStatus.verificacion{color:#9fd3ff;border-color:rgba(130,190,255,.55)}
.taStatus.validada{color:var(--ta-green);border-color:rgba(82,229,165,.55)}
.taStatus.none{color:var(--ta-muted)}
.taPill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:700;border:1px solid var(--ta-line2);color:#bfe9f6}
.taPill.pilot{color:#c7b6ff;border-color:rgba(170,150,255,.5)}.taPill.fc{color:var(--ta-orange);border-color:rgba(255,187,92,.5)}
.taPill.ok{color:var(--ta-green);border-color:rgba(82,229,165,.5)}.taPill.bad{color:var(--ta-red);border-color:rgba(255,116,109,.5)}
.taValidation{margin:10px 0;padding:10px 14px;border-radius:11px;border:1px solid rgba(255,187,92,.35);background:rgba(90,60,10,.18);font-size:13px}
.taValidation.ok{border-color:rgba(82,229,165,.45);background:rgba(10,70,45,.22)}
.taValidation ul{margin:6px 0 0 18px;padding:0}.taValidation details{margin-top:6px;color:#c7dde6}
.taGrid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(340px,1fr);gap:14px;align-items:start}
.taCol{display:flex;flex-direction:column;gap:12px;min-width:0}
.taCard{padding:14px 16px;border:1px solid var(--ta-line);border-radius:14px;background:var(--ta-bg);min-width:0}
.taCard label{display:inline-flex;flex-direction:column;gap:3px;font-size:12.5px;color:#b8d3de}
.taCard label.taBlock{display:flex;margin-top:8px}.taCard textarea{width:100%;resize:vertical}
.taCheck{flex-direction:row!important;align-items:center;gap:7px!important;cursor:pointer}
.taCheck input{min-height:auto!important}
.taSource{display:grid;grid-template-columns:2fr 1.3fr 1.3fr 28px;gap:6px;margin:6px 0}
.taLine{border:1px solid var(--ta-line);border-left:3px solid var(--ta-cyan);border-radius:11px;padding:9px 10px;margin:8px 0;background:rgba(2,14,24,.55)}
.taLine.mano_obra{border-left-color:var(--ta-green)}.taLine.equipo{border-left-color:var(--ta-orange)}
.taLineTop,.taLineFormula{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.taLineFormula{margin-top:6px}.taLineFormula>span:first-child{color:var(--ta-cyan);font-weight:800}
.taLineFormula label{flex-direction:row!important;align-items:center;gap:5px!important}
.grow{flex:1 1 220px}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important}
.taKind{font-size:11px;letter-spacing:.07em;text-transform:uppercase;font-weight:800;color:#9cc6d6;min-width:84px}
.taEval{font-size:12.5px;font-family:ui-monospace,Consolas,monospace}.taEval.ok{color:var(--ta-green)}.taEval.bad{color:var(--ta-orange)}
.taPrice{display:flex;gap:6px;align-items:flex-end;flex-wrap:wrap;margin-top:7px;padding-top:7px;border-top:1px dashed var(--ta-line)}
.taPriceOut{flex-basis:100%;font-size:12.5px;color:#c7dde6}
.warn{color:var(--ta-orange)!important}.okc{color:var(--ta-green)!important}
.taPick{display:inline-flex;gap:6px;align-items:center;font-size:13px}
.taPicker{flex-basis:100%;border:1px solid var(--ta-line2);border-radius:10px;padding:8px;background:#041420;display:flex;flex-direction:column;gap:6px}
.taPicker>div{display:flex;flex-direction:column;gap:4px;max-height:260px;overflow:auto}
.taPicker button[data-ta-pickset]{text-align:left;background:rgba(13,72,101,.35);border:1px solid var(--ta-line);color:var(--ta-ink);border-radius:8px;padding:6px 9px;cursor:pointer;font:inherit}
.taPicker button[data-ta-pickset]:hover{border-color:var(--ta-cyan)}
.taPicker small{display:block}
.taMethod{border:1px dashed var(--ta-line2);border-radius:11px;padding:8px 10px;margin:8px 0}
.taTestParams{margin:10px 0}.taTestParams summary{cursor:pointer;color:#c7dde6;font-size:13px}
.taTestParams label,.taParamGrid label{display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:center;gap:8px;margin:5px 0}
.taTestParams label input,.taParamGrid label input{width:110px}
.taParamGrid label.req span{color:#ffe2b8}
.taAgg,.taTotals{display:flex;flex-wrap:wrap;gap:8px 16px;margin:8px 0;font-size:13px;color:#c7dde6}
.taTotals{padding:9px 11px;border-radius:10px;background:rgba(35,211,255,.06);border:1px solid var(--ta-line)}
.taTotals b,.taAgg b{color:var(--ta-ink)}
.taCompare{margin-top:10px}.taVerdict{font-size:13px;color:#d8f6ff;margin:8px 0 0}
.taEls{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}
.taEl{border:1px solid var(--ta-line);border-radius:11px;padding:9px 10px;background:rgba(2,14,24,.55)}
.taElHead,.taElGeo,.taArm{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}
.taElGeo,.taArm{margin-top:7px}
.taArm>b{font-size:12px;color:#9cc6d6;text-transform:uppercase;letter-spacing:.06em;min-width:120px}
.taArm span{display:inline-flex;gap:4px;align-items:center;font-size:12.5px;color:#c7dde6}
.taEl label{display:inline-flex;flex-direction:column;gap:2px;font-size:11.5px;color:#9cc6d6}
.taElName{width:80px;font-weight:800}
.taElRes{display:flex;gap:6px 14px;flex-wrap:wrap;margin-top:7px;font-size:12.5px;color:#c7dde6}
.taElRes b{color:var(--ta-ink)}
.taHist{font-size:12.5px;padding:5px 0;border-bottom:1px solid var(--ta-line)}.taHist small{display:block}
.taCreate{max-width:900px}.taProposal{margin-top:12px;padding:12px;border-radius:12px;border:1px solid var(--ta-line2);background:rgba(13,72,101,.25)}
.taMono{font-size:12.5px;display:flex;flex-direction:column;gap:3px;margin:8px 0}
.taToast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);opacity:0;pointer-events:none;z-index:100000;max-width:min(680px,92vw);padding:11px 16px;border-radius:11px;background:#0b3247;border:1px solid #5fe3ff;color:#eaf8fd;font:600 13.5px Inter,system-ui,sans-serif;box-shadow:0 12px 30px rgba(0,0,0,.45);transition:.2s}
.taToast.show{opacity:1;transform:translateX(-50%) translateY(0)}.taToast.bad{border-color:#ff9f99;background:#3a1717}
.taRowBtn{display:inline-block;margin-top:5px;padding:3px 9px;border-radius:7px;border:1px solid rgba(90,220,248,.4);background:rgba(13,72,101,.5);color:#bff0ff;font:700 11.5px Inter,system-ui,sans-serif;cursor:pointer}
.taRowBtn:hover{border-color:#23D3FF}.taRowBtn.done{border-color:rgba(82,229,165,.6);color:#9ff5cd}.taRowBtn.none{opacity:.65}
.lib600Btn[data-ta-libtab]{border-color:rgba(82,229,165,.5)}
.taHeroBtn{margin-top:8px}
/* Modal de partida */
body.taModalOpen{overflow:hidden}
.taModal{position:fixed;inset:0;z-index:99990;background:rgba(1,6,12,.78);backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding:22px 14px;overflow:auto;color:var(--ta-ink);font:14px/1.45 Inter,system-ui,sans-serif}
.taModal[hidden]{display:none}
.taModalCard{width:min(1320px,100%);border:1px solid var(--ta-line2);border-radius:18px;background:linear-gradient(180deg,#071c2b,#04121d);box-shadow:0 24px 60px rgba(0,0,0,.6)}
.taModalHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:16px 18px;border-bottom:1px solid var(--ta-line)}
.taModalHead small{letter-spacing:.06em}
.taModal .taWarnBox{margin:10px 18px 0}
.taModalBody{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,1fr);gap:14px;padding:14px 18px 18px}
.taModalMain,.taModalSide{display:flex;flex-direction:column;gap:12px;min-width:0}
@media (max-width:1100px){.taGrid,.taModalBody{grid-template-columns:1fr}.taKpis{grid-template-columns:repeat(3,minmax(0,1fr))}.taCard.sticky{position:static}}
@media (max-width:640px){.taKpis{grid-template-columns:repeat(2,minmax(0,1fr))}.taSource{grid-template-columns:1fr}.taFichaState{align-items:flex-start}}
.taModal .taTable th,.taCard .taTable th{position:static}
.taTable td:last-child .taBtn{white-space:nowrap}
.taFichaHead>div:first-child{flex:1 1 640px;min-width:0}
.taParamGrid label input{width:130px}
