.tt_invPage { --tt-in: #0f9f6e; --tt-inBg: rgba(15, 159, 110, .12); --tt-out: #d9480f; --tt-outBg: rgba(217, 72, 15, .12); --tt-adj: #6d5bd0; --tt-adjBg: rgba(109, 91, 208, .12); --tt-warn: #c27c0e; }
.tt_invPage[data-theme="dark"] { --tt-in: #34d399; --tt-out: #fb8c5a; --tt-adj: #a99bf5; --tt-warn: #fbbf24; }
.tt_invPage .tt_admWrap { max-width: 1280px; }
.tt_invPage .tt_admTopIn { max-width: 1280px; }
.tt_invHeadBtns { display: flex; gap: 10px; flex-wrap: wrap; }
.tt_invBtnIn { background: var(--tt-in); color: #fff !important; border-color: var(--tt-in); }
.tt_invBtnOut { background: var(--tt-out); color: #fff !important; border-color: var(--tt-out); }
.tt_invBtnIn:hover, .tt_invBtnOut:hover { filter: brightness(1.08); }
.tt_invStats { grid-template-columns: repeat(5, 1fr); }
.tt_invStatClick { cursor: pointer; transition: border-color .2s; }
.tt_invStatClick:hover { border-color: var(--tt-teal); }
.tt_invWarnTxt { color: var(--tt-warn); }
.tt_invTabs .scad_tabMenu { display: flex; gap: 6px; border-bottom: 2px solid var(--tt-line); margin-bottom: 18px; }
.tt_invTabs .scad_tab_icon { display: none; }
.tt_invTabs .scad_tabConteItem { margin-bottom: -2px; border-bottom: 3px solid transparent; cursor: pointer; user-select: none; }
.tt_invTabLink { display: inline-flex; align-items: center; gap: 8px; padding: 11px 18px; color: var(--tt-muted); font: 600 15px "Poppins", sans-serif; white-space: nowrap; }
.tt_invTabLink .tt_ico { width: 18px; height: 18px; }
.tt_invTabs .scad_tabConteItem:hover .tt_invTabLink { color: var(--tt-txt); }
.tt_invTabs .checkITem:checked + .scad_tabConteItem { border-bottom-color: var(--tt-teal); }
.tt_invTabs .checkITem:checked + .scad_tabConteItem .tt_invTabLink { color: var(--tt-teal2); }
.tt_page[data-theme="dark"] .tt_invTabs .checkITem:checked + .scad_tabConteItem .tt_invTabLink { color: var(--tt-teal); }
.tt_invTools { flex-wrap: wrap; align-items: stretch; }
.tt_invTools .tt_admSearch { min-width: 240px; }
.tt_invTools .tt_admSelect { width: 200px; }
.tt_invTools .tt_admIcoBtn { height: auto; min-height: 46px; width: 46px; background: var(--tt-card); }
.tt_invFecha { display: flex; align-items: center; gap: 8px; padding: 0 12px; border-radius: 11px; border: 1.5px solid var(--tt-line); background: var(--tt-card); font-size: 13px; color: var(--tt-muted); }
.tt_invFecha input { border: 0; background: transparent; color: var(--tt-txt); font: 400 14px "Inter", sans-serif; padding: 10px 0; outline: none; }
.tt_page[data-theme="dark"] .tt_invFecha input { color-scheme: dark; }
.tt_invChip { display: inline-flex; align-items: center; gap: 8px; padding: 7px 8px 7px 14px; margin-bottom: 14px; border-radius: 99px; background: var(--tt-tealSoft); border: 1px solid var(--tt-teal); font-size: 14px; }
.tt_invChip .tt_ico { width: 16px; height: 16px; color: var(--tt-teal2); }
.tt_invChip button { width: 26px; height: 26px; border: 0; border-radius: 50%; background: transparent; color: var(--tt-txt); cursor: pointer; display: flex; align-items: center; justify-content: center; }
.tt_invChip button:hover { background: rgba(0, 0, 0, .08); }
.tt_invResumen { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 22px; margin-bottom: 14px; font-size: 14.5px; }
.tt_invResumen > span { display: inline-flex; align-items: center; gap: 6px; }
.tt_invResumen .tt_ico { width: 17px; height: 17px; }
.tt_invTabla { background: var(--tt-card); border: 1px solid var(--tt-line); border-radius: 16px; overflow-x: auto; }
.tt_invTabla table { width: 100%; border-collapse: collapse; font-size: 14.5px; }
.tt_invTabla th { text-align: left; padding: 13px 14px; font: 600 12.5px "Inter", sans-serif; letter-spacing: .4px; text-transform: uppercase; color: var(--tt-muted); background: var(--tt-bgAlt); border-bottom: 1px solid var(--tt-line); white-space: nowrap; }
.tt_invTabla td { padding: 11px 14px; border-bottom: 1px solid var(--tt-line); vertical-align: middle; }
.tt_invTabla tbody tr:last-child td { border-bottom: 0; }
.tt_invTabla tbody tr:hover { background: var(--tt-bgAlt); }
.tt_invTabla .tt_num { text-align: right; white-space: nowrap; }
.tt_invTabla code { font: 600 12.5px ui-monospace, Consolas, monospace; padding: 3px 8px; border-radius: 6px; background: var(--tt-bgAlt); border: 1px solid var(--tt-line); white-space: nowrap; }
.tt_invProdCell b { display: block; font-weight: 600; }
.tt_invProdCell b[data-acc] { cursor: pointer; }
.tt_invProdCell b[data-acc]:hover { color: var(--tt-teal2); }
.tt_invProdCell small { display: block; font-size: 12.5px; color: var(--tt-muted); }
.tt_invNoWrap { white-space: nowrap; }
.tt_invWeb { display: inline-flex; align-items: center; gap: 4px; margin-right: 8px; padding: 1px 8px; border-radius: 99px; background: var(--tt-tealSoft); color: var(--tt-teal2); font-weight: 600; font-size: 11.5px; vertical-align: 1px; }
.tt_page[data-theme="dark"] .tt_invWeb { color: var(--tt-teal); }
.tt_invWeb .tt_ico { width: 12px; height: 12px; }
.tt_invAvisoWeb { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; margin: 0 0 14px; border-radius: 11px; background: var(--tt-tealSoft); font-size: 13.5px; line-height: 1.5; }
.tt_invAvisoWeb .tt_ico { width: 18px; height: 18px; flex-shrink: 0; margin-top: 2px; color: var(--tt-teal2); }
.tt_invNota { color: var(--tt-muted); font-size: 13.5px; max-width: 260px; }
.tt_invActs { white-space: nowrap; text-align: right; }
.tt_invActs .tt_admIcoBtn { width: 34px; height: 34px; border-radius: 9px; margin-left: 4px; }
.tt_invActs .tt_admIcoBtn .tt_ico { width: 16px; height: 16px; }
.tt_invActs .tt_admIcoBtn:disabled { opacity: .35; cursor: not-allowed; }
.tt_invIcoIn:hover:not(:disabled) { border-color: var(--tt-in); color: var(--tt-in); }
.tt_invIcoOut:hover:not(:disabled) { border-color: var(--tt-out); color: var(--tt-out); }
.tt_invPie { margin-top: 10px; text-align: right; }
.tt_invAnulado td { opacity: .5; }
.tt_invAnulado td b { text-decoration: line-through; }
.tt_invStock { display: inline-block; min-width: 38px; padding: 3px 10px; border-radius: 99px; text-align: center; font: 700 14px "Poppins", sans-serif; }
.tt_invS_ok { background: var(--tt-inBg); color: var(--tt-in); }
.tt_invS_bajo { background: rgba(245, 158, 11, .16); color: var(--tt-warn); }
.tt_invS_cero { background: var(--tt-errBg); color: var(--tt-err); }
.tt_invTipo { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 99px; font-size: 13px; font-weight: 600; white-space: nowrap; }
.tt_invTipo .tt_ico { width: 14px; height: 14px; }
.tt_invTipo.tt_invIn { background: var(--tt-inBg); }
.tt_invTipo.tt_invOut { background: var(--tt-outBg); }
.tt_invTipo.tt_invAdj { background: var(--tt-adjBg); }
.tt_invIn { color: var(--tt-in); }
.tt_invOut { color: var(--tt-out); }
.tt_invAdj { color: var(--tt-adj); }
.tt_invSeg { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; padding: 5px; border-radius: 13px; background: var(--tt-bgAlt); margin-bottom: 16px; }
.tt_invSeg button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 10px 6px; border: 0; border-radius: 9px; background: transparent; font: 600 14px "Poppins", sans-serif; cursor: pointer; opacity: .75; }
.tt_invSeg button .tt_ico { width: 17px; height: 17px; }
.tt_invSeg button.tt_on { opacity: 1; background: var(--tt-card); box-shadow: 0 2px 8px rgba(0, 0, 0, .1); }
.tt_invProdSel { margin-top: 6px; padding: 6px !important; height: auto; }
.tt_invProdSel option { padding: 7px 8px; border-radius: 6px; }
.tt_invInfo { display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: center; padding: 11px 14px; margin-bottom: 14px; border-radius: 11px; background: var(--tt-bgAlt); font-size: 14.5px; }
.tt_invInfo span { display: inline-flex; align-items: center; gap: 6px; }
.tt_invInfo .tt_ico { width: 15px; height: 15px; color: var(--tt-muted); }
.tt_invProdBox { max-width: 620px; }
.tt_invStockFijo { display: flex; align-items: center; gap: 10px; min-height: 48px; }
.tt_invStockFijo small { color: var(--tt-muted); font-size: 12.5px; }
.tt_invTools .tt_btnPrimary { white-space: nowrap; }
.tt_invCliTipo { display: inline-flex; align-items: center; gap: 4px; margin-right: 8px; padding: 1px 8px; border-radius: 99px; font-weight: 600; font-size: 11.5px; }
.tt_invCliTipo .tt_ico { width: 12px; height: 12px; }
.tt_invCliT_pri { background: var(--tt-bgAlt); color: var(--tt-muted); border: 1px solid var(--tt-line); }
.tt_invCliT_emp { background: var(--tt-adjBg); color: var(--tt-adj); }
.tt_invContacto span { display: flex; align-items: center; gap: 6px; font-size: 13.5px; white-space: nowrap; }
.tt_invContacto .tt_ico { width: 14px; height: 14px; color: var(--tt-muted); }
.tt_invIcoWa { color: #1faa53 !important; }
.tt_invIcoWa:hover { border-color: #25d366 !important; }
.tt_invIcoWa .tt_ico { width: 17px; height: 17px; }
.tt_invBtnWa { background: #25d366; border-color: #25d366; color: #fff !important; }
.tt_invBtnWa:hover { filter: brightness(1.05); }
.tt_invCliLink { display: inline-flex; align-items: center; gap: 5px; margin-right: 8px; padding: 2px 9px; border-radius: 99px; border: 1px solid var(--tt-line); background: var(--tt-card); color: var(--tt-txt); font: 600 12.5px "Inter", sans-serif; }
button.tt_invCliLink { cursor: pointer; }
button.tt_invCliLink:hover { border-color: var(--tt-teal); color: var(--tt-teal2); }
.tt_invCliLink .tt_ico { width: 13px; height: 13px; }
.tt_invCliPick { display: grid; grid-template-columns: 1fr auto; gap: 8px; }
.tt_invCliPick input { grid-column: 1 / -1; }
.tt_invCliPick input, .tt_invCliPick select {
width: 100%; padding: 12px 14px; border-radius: 11px; border: 1.5px solid var(--tt-line);
background: var(--tt-bg); color: var(--tt-txt); font: 400 15px "Inter", sans-serif; outline: none;
}
.tt_invCliPick input:focus, .tt_invCliPick select:focus { border-color: var(--tt-teal); box-shadow: 0 0 0 4px rgba(var(--tt-tealRgb), .15); }
.tt_repBox .tt_admModalFoot { flex-wrap: wrap; gap: 12px 16px; }
.tt_repFootNota { display: block; flex: 1 1 200px; max-width: 290px; font-size: 12.5px; line-height: 1.45; color: var(--tt-muted); }
.tt_repFootNota:empty { display: none; }
.tt_repFootNota .tt_ico { width: 14px; height: 14px; margin-right: 5px; vertical-align: -2px; color: var(--tt-teal2); }
.tt_repFootNota b { color: var(--tt-txt); }
.tt_repBox .tt_admModalFoot > div { flex-wrap: nowrap; justify-content: flex-end; gap: 8px; margin-left: auto; }
.tt_repBox .tt_admModalFoot .tt_btn { padding-left: 18px; padding-right: 18px; white-space: nowrap; }
@media (max-width: 1000px) { .tt_repBox .tt_admModalFoot > div { flex-wrap: wrap; } }
.tt_invCliNuevoBtn { padding: 0 14px; white-space: nowrap; }
.tt_cb_cont { display: flex; flex-direction: column; gap: 8px; }
.tt_cb_search { display: flex; gap: 8px; align-items: stretch; }
.tt_cb_input { flex: 1; min-width: 0; padding: 12px 14px 12px 42px; border-radius: 11px; border: 1.5px solid var(--tt-line); color: var(--tt-txt); font: 400 15px "Inter", sans-serif; outline: none;
background: var(--tt-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 14px center / 18px; }
.tt_cb_input:focus { border-color: var(--tt-teal); box-shadow: 0 0 0 4px rgba(var(--tt-tealRgb), .15); }
.tt_cb_btnNew, .tt_cb_btnChange { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 14px; min-height: 46px; border-radius: 11px; font: 600 14.5px "Inter", sans-serif; white-space: nowrap; }
.tt_cb_btnNew { border: 1.5px solid var(--tt-teal); background: transparent; color: var(--tt-teal2); }
.tt_cb_btnNew:hover { background: var(--tt-tealSoft); }
.tt_cb_btnChange { border: 0; background: var(--tt-card); color: var(--tt-txt); }
.tt_cb_btnChange:hover { box-shadow: 0 2px 8px rgba(0, 0, 0, .1); }
.tt_cb_btnNew .tt_ico, .tt_cb_btnChange .tt_ico { width: 18px; height: 18px; }
.tt_cb_list { display: flex; flex-direction: column; gap: 4px; max-height: 260px; overflow-y: auto; }
.tt_cb_list:empty { display: none; }
.tt_cb_title { padding: 2px 4px; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .4px; color: var(--tt-muted); }
.tt_cb_item { display: flex; align-items: center; gap: 11px; width: 100%; padding: 8px 11px; border-radius: 11px; border: 1.5px solid var(--tt-line); background: var(--tt-bg); color: var(--tt-txt); cursor: pointer; text-align: left; font: 500 14px "Inter", sans-serif; }
.tt_cb_item small { display: block; font-size: 12.5px; color: var(--tt-muted); }
.tt_cb_item:hover, .tt_cb_item.tt_cb_on { border-color: var(--tt-teal); background: var(--tt-tealSoft); }
.tt_cb_new { border-style: dashed; color: var(--tt-teal2); }
.tt_cb_new .tt_cb_item_av { background: var(--tt-tealSoft); color: var(--tt-teal2); border: 1.5px dashed var(--tt-teal); font-size: 20px; }
.tt_cb_item_av, .tt_cb_sel_av { width: 36px; height: 36px; flex-shrink: 0; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--tt-teal), var(--tt-navy3)); color: #fff; font: 700 13px "Poppins", sans-serif; }
.tt_cb_sel { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 12px; border: 1.5px solid var(--tt-teal); background: var(--tt-tealSoft); }
.tt_cb_sel_av { width: 44px; height: 44px; font-size: 15px; }
.tt_cb_sel_info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.tt_cb_sel_info b { font-size: 15px; }
.tt_cb_sel_badge { font: 600 11.5px ui-monospace, Consolas, monospace; padding: 1px 6px; border-radius: 6px; background: var(--tt-card); border: 1px solid var(--tt-line); }
.tt_cb_sel_info small { font-size: 13px; color: var(--tt-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tt_cb_note { margin: 0; font-size: 12.5px; color: var(--tt-muted); }
.tt_cbDup { margin: 0; padding: 9px 12px; border-radius: 10px; background: rgba(245, 158, 11, .14); color: var(--tt-txt); font-size: 13.5px; }
.tt_cbDup .tt_ico { width: 15px; height: 15px; color: var(--tt-warn); vertical-align: -2px; }
.tt_cbDup .tt_admLinkBtn { display: inline; margin-left: 4px; }
@media (max-width: 560px) { .tt_cb_sel { flex-wrap: wrap; } .tt_cb_btnChange { width: 100%; } }
.tt_invCliRapido { display: flex; flex-direction: column; gap: 10px; padding: 12px 14px; border-radius: 12px; border: 1px dashed var(--tt-teal); background: var(--tt-tealSoft); }
.tt_invCliRapido .tt_admField { margin-bottom: 0; }
.tt_admLinkBtn { align-self: flex-start; border: 0; background: none; padding: 0; color: var(--tt-teal2); font: 600 13.5px "Inter", sans-serif; cursor: pointer; }
.tt_admLinkBtn:hover { text-decoration: underline; }
.tt_invSeg2 { grid-template-columns: 1fr 1fr; }
.tt_invSeg2 button { color: var(--tt-txt); }
.tt_invCap { flex: 0 0 130px; }
.tt_invPriv { align-items: flex-start; line-height: 1.45; margin: 2px 0 12px; }
.tt_invPriv i { margin-top: 1px; }
.tt_invPriv em { font-style: normal; color: var(--tt-muted); }
.tt_invFicha { max-width: 980px; }
.tt_invFichaTit { display: flex; align-items: center; gap: 14px; min-width: 0; }
.tt_invFichaTit h2 { font-size: 20px; }
.tt_invFichaTit small { color: var(--tt-muted); font-size: 13px; }
.tt_invFichaTit code { font: 600 12px ui-monospace, Consolas, monospace; padding: 1px 6px; border-radius: 6px; background: var(--tt-bgAlt); border: 1px solid var(--tt-line); }
.tt_invAvatar { width: 48px; height: 48px; flex-shrink: 0; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--tt-teal), var(--tt-navy3)); color: #fff; font: 700 17px "Poppins", sans-serif; }
.tt_invCliStats { grid-template-columns: repeat(4, 1fr); }
.tt_invCliStats b { font-size: 21px; }
.tt_invUltima { font-size: 17px !important; }
.tt_invFichaGrid { display: grid; grid-template-columns: 300px 1fr; gap: 20px; align-items: start; }
.tt_invFichaGrid h3 { font-size: 16px; margin-bottom: 10px; }
.tt_invDatos { padding: 16px; border-radius: 14px; border: 1px solid var(--tt-line); background: var(--tt-bgAlt); }
.tt_invDato { display: grid; grid-template-columns: 18px 1fr; gap: 2px 10px; padding: 8px 0; border-bottom: 1px dashed var(--tt-line); font-size: 14px; }
.tt_invDato:last-of-type { border-bottom: 0; }
.tt_invDato .tt_ico { width: 16px; height: 16px; color: var(--tt-teal2); grid-row: span 2; margin-top: 2px; }
.tt_invDato span { color: var(--tt-muted); font-size: 12px; }
.tt_invDato b { font-weight: 600; word-break: break-word; }
.tt_invDato a { color: var(--tt-teal2) !important; }
.tt_invCliNota { margin: 10px 0 0 !important; padding: 10px 12px; border-radius: 10px; background: var(--tt-card); font-size: 13.5px; color: var(--tt-muted); }
.tt_invHist .tt_invTabla { max-height: 380px; overflow-y: auto; }
.tt_invHistVacio { padding: 30px 16px; }
.tt_invFicha .tt_admModalFoot > div { flex-wrap: wrap; justify-content: flex-end; }
.tt_invPage { --tt-rs-rec: #64748b; --tt-rs-dia: #2563eb; --tt-rs-rep: #c27c0e; --tt-rs-ok: #6d5bd0; --tt-rs-listo: #0f9f6e; --tt-rs-ent: #475569; --tt-rs-no: #c2410c; }
.tt_invPage[data-theme="dark"] { --tt-rs-rec: #94a3b8; --tt-rs-dia: #60a5fa; --tt-rs-rep: #fbbf24; --tt-rs-ok: #a99bf5; --tt-rs-listo: #34d399; --tt-rs-ent: #94a3b8; --tt-rs-no: #fb923c; }
.tt_rs_rec { --c: var(--tt-rs-rec); } .tt_rs_dia { --c: var(--tt-rs-dia); } .tt_rs_rep { --c: var(--tt-rs-rep); } .tt_rs_ok { --c: var(--tt-rs-ok); }
.tt_rs_listo { --c: var(--tt-rs-listo); } .tt_rs_ent { --c: var(--tt-rs-ent); } .tt_rs_no { --c: var(--tt-rs-no); }
.tt_repEst { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: 99px; font: 600 12.5px "Inter", sans-serif; white-space: nowrap; color: var(--c, var(--tt-muted)); background: color-mix(in srgb, var(--c, #888) 13%, transparent); }
.tt_repEst .tt_ico { width: 13px; height: 13px; }
.tt_repResumen { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.tt_repResumen button { display: flex; align-items: baseline; gap: 6px; padding: 9px 14px; border-radius: 12px; border: 1px solid var(--tt-line); background: var(--tt-card); color: var(--tt-txt); cursor: pointer; font: 500 13.5px "Inter", sans-serif; border-left: 4px solid var(--c, var(--tt-teal)); }
.tt_repResumen button b { font: 700 18px "Poppins", sans-serif; color: var(--c, var(--tt-teal2)); }
.tt_repResumen button:hover { border-color: var(--c, var(--tt-teal)); }
.tt_repGrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 14px; }
.tt_repCard { display: flex; flex-direction: column; gap: 8px; padding: 16px; border-radius: 16px; background: var(--tt-card); border: 1px solid var(--tt-line); border-top: 4px solid var(--c, var(--tt-line)); transition: box-shadow .2s; }
.tt_repCard:hover { box-shadow: var(--tt-shadow); }
.tt_repCardTop { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.tt_repCard code, .tt_repBox h2 code, .tt_repMini code { font: 700 12.5px ui-monospace, Consolas, monospace; padding: 2px 8px; border-radius: 6px; background: var(--tt-bgAlt); border: 1px solid var(--tt-line); }
.tt_repCard h3 { font-size: 17px; cursor: pointer; }
.tt_repCard h3:hover { color: var(--tt-teal2); }
.tt_repCard h3 small { font: 400 13px "Inter", sans-serif; color: var(--tt-muted); }
.tt_repCli { display: flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; }
.tt_repCli span { font-weight: 400; color: var(--tt-muted); }
.tt_repCli .tt_ico { width: 15px; height: 15px; color: var(--tt-teal2); }
.tt_repProb { font-size: 13.5px; color: var(--tt-muted); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.tt_repMeta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; font-size: 12.5px; color: var(--tt-muted); margin-top: auto; padding-top: 6px; border-top: 1px dashed var(--tt-line); }
.tt_repMeta span { display: inline-flex; align-items: center; gap: 4px; }
.tt_repMeta .tt_ico { width: 13px; height: 13px; }
.tt_repMeta b { margin-left: auto; font: 700 15px "Poppins", sans-serif; color: var(--tt-txt); }
.tt_repAtr { color: var(--tt-err); font-weight: 600; }
.tt_repActs { display: flex; gap: 8px; }
.tt_repActs .tt_btn { flex: 1; padding: 9px 12px; }
.tt_repBox { max-width: 820px; }
.tt_repBox h2 { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.tt_repSec { padding: 16px; margin-bottom: 14px; border-radius: 14px; border: 1px solid var(--tt-line); background: var(--tt-card); }
.tt_repSec .tt_admField:last-child { margin-bottom: 0; }
.tt_repSecTit { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; font-size: 15px; flex-wrap: wrap; }
.tt_repSecTit .tt_ico { width: 18px; height: 18px; color: var(--tt-teal2); }
.tt_repSecTit small { color: var(--tt-muted); font-size: 12.5px; }
.tt_repChips { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }
.tt_repChips button { padding: 7px 12px; border-radius: 99px; border: 1.5px solid var(--tt-line); background: var(--tt-bg); color: var(--tt-txt); font: 500 13px "Inter", sans-serif; cursor: pointer; }
.tt_repChips button.tt_on { border-color: var(--tt-teal); background: var(--tt-tealSoft); color: var(--tt-teal2); font-weight: 600; }
.tt_repFotos { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 8px; margin: 6px 0 12px; }
.tt_repFotos > p { grid-column: 1 / -1; display: flex; align-items: center; gap: 8px; margin: 0; padding: 14px; border-radius: 12px; border: 2px dashed var(--tt-line); }
.tt_repFotos figure { position: relative; margin: 0; aspect-ratio: 1; border-radius: 10px; overflow: hidden; border: 1px solid var(--tt-line); background: var(--tt-bgAlt); }
.tt_repFotos img { width: 100%; height: 100%; object-fit: cover; cursor: zoom-in; display: block; }
.tt_repFotos em { position: absolute; left: 6px; bottom: 6px; padding: 1px 7px; border-radius: 99px; background: var(--tt-teal); color: #fff; font: 600 11px "Inter", sans-serif; font-style: normal; }
.tt_repFotos .tt_repFotoFecha { left: 0 !important; right: 0; bottom: 0 !important; border-radius: 0 !important; display: flex; align-items: center; gap: 4px; padding: 3px 6px !important; background: rgba(12, 17, 27, .72) !important; font-size: 10.5px !important; }
.tt_repFotoFecha .tt_ico { width: 11px; height: 11px; }
.tt_repFotos figure button { position: absolute; top: 5px; right: 5px; width: 26px; height: 26px; border: 0; border-radius: 50%; background: rgba(12, 17, 27, .65); color: #fff; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.tt_repFotos figure button .tt_ico { width: 14px; height: 14px; }
.tt_repFotoBtns { display: flex; gap: 10px; flex-wrap: wrap; }
.tt_repFotoBtns .tt_btn { flex: 1; min-width: 180px; justify-content: center; }
.tt_repSeg4 { grid-template-columns: repeat(4, 1fr); }
.tt_repSeg4 button { color: var(--tt-txt); }
.tt_repSecreto { display: flex; gap: 8px; }
.tt_repSecreto input { flex: 1; font-family: ui-monospace, Consolas, monospace !important; letter-spacing: 2px; }
.tt_repSecreto .tt_admIcoBtn { height: auto; }
.tt_repPatBox { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; }
.tt_pat { position: relative; width: 240px; height: 240px; flex-shrink: 0; border-radius: 18px; background: linear-gradient(160deg, var(--tt-navy), var(--tt-navy3)); touch-action: none; user-select: none; cursor: crosshair; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08); }
.tt_pat_readOnly { cursor: default; }
.tt_pat_line { fill: none; stroke: var(--tt-teal); stroke-width: 9; stroke-linecap: round; stroke-linejoin: round; opacity: .85; }
.tt_pat_tip { stroke: var(--tt-teal); stroke-width: 7; stroke-linecap: round; opacity: .45; }
.tt_pat_point i { width: 18px; height: 18px; border-radius: 50%; background: rgba(255, 255, 255, .85); transition: transform .15s, background .15s; }
.tt_pat_point.tt_pat_on i { background: var(--tt-teal); transform: scale(1.35); box-shadow: 0 0 0 7px rgba(var(--tt-tealRgb), .25); }
.tt_pat_point.tt_pat_first i { background: #fff; box-shadow: 0 0 0 4px var(--tt-teal), 0 0 0 10px rgba(var(--tt-tealRgb), .25); }
.tt_pat_point em { position: absolute; top: 14%; right: 18%; font: 700 12px "Inter", sans-serif; font-style: normal; color: #fff; opacity: .9; }
.tt_repPatInfo { flex: 1; min-width: 200px; display: flex; flex-direction: column; gap: 10px; align-items: flex-start; }
.tt_repPatInfo p { margin: 0; font-size: 14px; color: var(--tt-txt); }
.tt_repEstados { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }
.tt_repEstados button { display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border-radius: 10px; border: 1.5px solid var(--tt-line); background: var(--tt-bg); color: var(--c); font: 600 13px "Inter", sans-serif; cursor: pointer; }
.tt_repEstados button .tt_ico { width: 15px; height: 15px; }
.tt_repEstados button:hover:not(:disabled) { border-color: var(--c); }
.tt_repEstados button.tt_on { background: var(--c); border-color: var(--c); color: #fff; cursor: default; }
.tt_repTimeline { list-style: none; margin: 0; padding: 0 0 0 14px; border-left: 2px solid var(--tt-line); display: flex; flex-direction: column; gap: 8px; }
.tt_repTimeline li { position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; font-size: 13px; }
.tt_repTimeline li::before { content: ""; position: absolute; left: -20px; top: 7px; width: 10px; height: 10px; border-radius: 50%; background: var(--tt-teal); border: 2px solid var(--tt-card); }
.tt_repTimeline li > span { color: var(--tt-muted); min-width: 108px; }
.tt_repTimeline em { color: var(--tt-muted); }
.tt_repEstadoBox p { margin: 10px 0 0; display: flex; align-items: center; gap: 6px; }
.tt_repEstadoBox p .tt_ico { width: 15px; height: 15px; }
.tt_foto { position: fixed; inset: 0; z-index: 500; display: flex; align-items: center; justify-content: center; padding: 20px; background: rgba(5, 8, 14, .88); cursor: zoom-out; }
.tt_foto_cont, .tt_foto_cont_body, .tt_foto_cont_body_cont { display: contents; }
.tt_foto img { max-width: 100%; max-height: 100%; border-radius: 10px; box-shadow: 0 20px 60px rgba(0, 0, 0, .5); }
.tt_foto_cont_head { position: fixed !important; top: 16px !important; right: 16px; left: auto !important; width: auto !important; height: auto !important; }
.tt_foto_cont_head_btnExit { width: 42px; height: 42px; border-radius: 50%; border: 0; background-color: rgba(255, 255, 255, .15) !important; background-size: 18px !important;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E") !important; }
.tt_invCliRep { margin-top: 18px; }
.tt_repMini { display: flex; flex-direction: column; gap: 6px; }
.tt_repMini button { display: flex; align-items: center; gap: 12px; padding: 9px 12px; border-radius: 11px; border: 1px solid var(--tt-line); background: var(--tt-card); color: var(--tt-txt); cursor: pointer; text-align: left; font: 500 14px "Inter", sans-serif; }
.tt_repMini button:hover { border-color: var(--tt-teal); }
.tt_repMini button > span:not(.tt_repEst) { flex: 1; display: flex; flex-direction: column; }
.tt_repMini small { color: var(--tt-muted); font-size: 12px; }
@media (max-width: 1100px) {
.tt_invStats { grid-template-columns: repeat(3, 1fr); }
.tt_invFichaGrid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
.tt_invHeadBtns { display: grid; grid-template-columns: 1fr 1fr; }
.tt_invHeadBtns .tt_btnPrimary { grid-column: 1 / -1; }
.tt_invStats { grid-template-columns: repeat(2, 1fr); }
.tt_invStats > div:nth-child(3) { grid-column: 1 / -1; order: -1; }
.tt_invCliStats { grid-template-columns: repeat(2, 1fr); }
.tt_invCliStats > div:nth-child(3) { grid-column: auto; order: 0; }
.tt_invTabLink { padding: 11px 12px; font-size: 14px; }
.tt_invCliPick { grid-template-columns: 1fr auto; }
.tt_invCliPick input { grid-column: 1 / -1; }
.tt_invCap { flex: 1; }
.tt_invTools .tt_btnPrimary { flex-basis: 100%; justify-content: center; }
.tt_repSeg4 button { font-size: 12.5px; padding: 9px 4px; }
.tt_repPatBox { justify-content: center; }
.tt_pat { width: 260px; height: 260px; }
.tt_repSec { padding: 13px; }
.tt_repBox .tt_admModalFoot { flex-direction: column; align-items: stretch; }
.tt_repBox .tt_admModalFoot > div { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; width: 100%; margin-left: 0; }
.tt_repBox .tt_admModalFoot > div [data-cerrar] { grid-column: 1 / -1; }
.tt_repBox .tt_admModalFoot > div .tt_btn { justify-content: center; }
.tt_repBox .tt_admModalFoot > div .tt_btnPrimary { grid-column: 1 / -1; order: -1; }
.tt_repFootNota { order: 2; max-width: none; text-align: center; }
.tt_repResumen button { flex: 1 1 40%; }
.tt_invTabs .scad_tabMenu { overflow-x: auto; scrollbar-width: none; }
.tt_invTabs .scad_tabConteItem { flex-shrink: 0; }
.tt_invTools { flex-direction: row !important; gap: 8px; }
.tt_invTools .tt_admSearch { min-width: 0; flex-basis: 100%; }
.tt_invTools .tt_admSelect { flex: 1; width: auto; }
.tt_invFecha { flex: 1; }
.tt_invFecha input { width: 100%; }
.tt_invTabla { background: transparent; border: 0; overflow: visible; }
.tt_invTabla table, .tt_invTabla tbody, .tt_invTabla tr, .tt_invTabla td { display: block; width: 100%; }
.tt_invTabla thead { display: none; }
.tt_invTabla tr { background: var(--tt-card); border: 1px solid var(--tt-line); border-radius: 14px; padding: 10px 14px; margin-bottom: 10px; display: grid; grid-template-columns: 1fr 1fr; gap: 2px 12px; }
.tt_invTabla tbody tr:hover { background: var(--tt-card); }
.tt_invTabla td { border: 0; padding: 5px 0; text-align: left !important; }
.tt_invTabla td[data-label]::before { content: attr(data-label); display: block; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .4px; color: var(--tt-muted); }
.tt_invTabla td.tt_invProdCell, .tt_invTabla td.tt_invNota { grid-column: 1 / -1; }
.tt_invTabla td.tt_invProdCell { order: -1; }
.tt_invTabla td.tt_invProdCell::before { display: none; }
.tt_invTabla td.tt_invNota:empty { display: none; }
.tt_invActs { grid-column: 1 / -1; display: flex !important; gap: 6px; padding-top: 8px !important; border-top: 1px solid var(--tt-line) !important; margin-top: 4px; }
.tt_invActs:empty { display: none !important; }
.tt_invActs .tt_admIcoBtn { flex: 1; margin: 0; height: 38px; }
}
.tt_invBarTag { display: inline-flex; align-items: center; gap: 4px; margin-left: 8px; font-family: ui-monospace, Consolas, monospace; font-size: 11.5px; color: var(--tt-muted); }
.tt_invBarTag .tt_ico { width: 13px; height: 13px; }
.tt_escBox h2 { display: flex; align-items: center; gap: 8px; }
.tt_escBox h2 .tt_ico { width: 22px; height: 22px; color: var(--tt-teal2); }
.tt_escProd b { display: block; font: 600 19px "Poppins", sans-serif; }
.tt_escProd small { color: var(--tt-muted); font-size: 13px; }
.tt_escProd code { font: 600 12px ui-monospace, Consolas, monospace; padding: 2px 7px; border-radius: 6px; background: var(--tt-bgAlt); border: 1px solid var(--tt-line); }
.tt_escDatos { display: flex; flex-wrap: wrap; gap: 8px 22px; align-items: center; margin: 14px 0; padding: 12px 14px; border-radius: 12px; background: var(--tt-bgAlt); font-size: 14px; color: var(--tt-muted); }
.tt_escDatos b { color: var(--tt-txt); }
.tt_escBtns { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.tt_escBtns .tt_btn { justify-content: center; }
.tt_escNota { margin: 12px 0 0; font-size: 12.5px; text-align: center; }
.tt_invProdCell:has(.tt_invMini) { position: relative; padding-left: 70px !important; min-width: 220px; }
.tt_invProdCell .tt_invMini { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; padding: 3px; object-fit: contain; border-radius: 9px; border: 1px solid var(--tt-line); background: #fff; cursor: pointer; }
.tt_invMiniVacio { display: flex; align-items: center; justify-content: center; background: var(--tt-bgAlt) !important; border-style: dashed !important; color: var(--tt-gray); }
.tt_invMiniVacio .tt_ico { width: 18px; height: 18px; }
#tt_rQr.tt_on { border-color: var(--tt-teal); background: var(--tt-tealSoft); color: var(--tt-teal2); }
.tt_repQr { display: flex; gap: 18px; align-items: flex-start; margin-top: 12px; padding: 16px; border-radius: 14px; border: 1.5px solid var(--tt-teal); background: var(--tt-tealSoft); }
.tt_repQrCode { flex-shrink: 0; padding: 10px; border-radius: 12px; background: #fff; box-shadow: 0 4px 14px rgba(0, 0, 0, .08); }
.tt_repQrCode img, .tt_repQrCode canvas { display: block; }
.tt_repQrInfo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 8px; align-items: flex-start; font-size: 14px; }
.tt_repQrInfo > b:first-child { font: 600 16px "Poppins", sans-serif; }
.tt_repQrInfo ol { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; color: var(--tt-txt); }
.tt_repQrEstado { margin: 4px 0 0; display: flex; align-items: center; gap: 8px; font-size: 14px; }
.tt_repQrEstado .tt_ico { width: 16px; height: 16px; color: var(--tt-teal2); }
.tt_repQrPunto { width: 10px; height: 10px; border-radius: 50%; background: var(--tt-teal); animation: tt_qrLatido 1.2s ease-in-out infinite; }
@keyframes tt_qrLatido { 50% { opacity: .3; transform: scale(.7); } }
.tt_repQrUrl { max-width: 100%; overflow-wrap: anywhere; font: 11.5px ui-monospace, Consolas, monospace; color: var(--tt-muted); }
@media (max-width: 640px) { .tt_repQr { flex-direction: column; align-items: center; } }
