.tb-myfiles{background:#fff;border:1px solid #dee6f1;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #243a5910}.tb-myfiles-head{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:18px 20px;border-bottom:1px solid #e5ebf3}.tb-myfiles-head h2{font-size:19px;margin:0;display:flex;gap:8px;align-items:center}.tb-myfiles-head p{margin:4px 0 0;color:#6b778d;font-size:12px}.tb-myfiles-search{display:flex;align-items:center;gap:8px;margin:16px 20px;padding:7px 10px;border:1px solid #cfd9e7;border-radius:8px;width:min(330px,calc(100% - 40px))}.tb-myfiles-search input{border:0;outline:none;min-width:0;width:100%;font:inherit;font-size:12px}.tb-myfiles-scroll{overflow-x:auto}.tb-myfiles-table{width:100%;border-collapse:collapse;min-width:900px;font-size:12px;text-align:left}.tb-myfiles-table th{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#586b86;background:#f8fafd;font-weight:700}.tb-myfiles-table th,.tb-myfiles-table td{padding:13px 12px;border-bottom:1px solid #e8edf5;vertical-align:middle}.tb-myfiles-table td:first-child,.tb-myfiles-table th:first-child{padding-left:20px}.tb-myfiles-table td:last-child,.tb-myfiles-table th:last-child{padding-right:20px}.tb-myfiles-table tr:hover{background:#fafcff}.tb-myfiles-table tr[hidden]{display:none!important}.tb-file-title{display:flex;align-items:center;gap:6px;max-width:230px;font-weight:600}.tb-file-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tb-muted{display:block;color:#7a879a;font-size:10px;padding-top:5px}.tb-highlights{display:inline-flex;color:#1d57bd;text-decoration:none;font-size:10px;margin-top:5px;border:1px solid #c9d9f5;border-radius:6px;padding:3px 6px}.tb-myfiles-foot{padding:4px 20px 12px;color:#79869c;font-size:11px}

/* HF7: compact authenticated upload modal. No new endpoint or quota logic. */
.tb-upload-modal{z-index:1100;align-items:center;justify-items:center;padding:12px;overflow:auto}
.tb-upload-modal .modal{width:min(1060px,100%);max-height:calc(100dvh - 24px);display:flex;flex-direction:column;border-radius:12px}
.tb-upload-modal .modal-head{flex:none;padding:14px 18px;border-bottom:1px solid #e7ebf3}
.tb-upload-modal .modal-body{overflow:auto;min-height:0;padding:16px 18px}
.tb-upload-modal .ws-upload-grid{grid-template-columns:minmax(0,1.65fr) minmax(230px,.7fr);gap:14px}
.tb-upload-modal .ws-upload-grid .ws-panel{padding:15px;margin:0 0 12px;box-shadow:none;border-radius:9px}
.tb-upload-modal .ws-upload-grid .ws-panel-head{margin-bottom:10px}
.tb-upload-modal .ws-dropzone{padding:14px}
.tb-upload-modal .ws-drop-icon{margin-bottom:7px;height:34px;width:34px}
.tb-upload-modal .ws-setting-group{padding-top:12px;margin-top:0}
.tb-upload-modal .ws-view-choice>span{min-height:72px;padding:9px 26px 9px 10px}
.tb-upload-modal .ws-form{gap:10px}
.tb-upload-modal .ws-upload-grid aside .ws-credit-number{font-size:29px}
.tb-myfiles .tb-file-title{max-width:200px}
@media(max-width:790px){.tb-upload-modal .ws-upload-grid{grid-template-columns:1fr}.tb-upload-modal .ws-upload-grid>aside{grid-template-columns:1fr}.tb-upload-modal .modal{max-height:calc(100dvh - 12px)}}

/* HF8: all three actions present, real user-scoped folders, compact rows. */
.tb-head-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}
.tb-head-actions .btn{white-space:nowrap;font-size:12px;display:inline-flex;align-items:center;gap:5px}
.tb-myfiles .tb-folder-entry{background:transparent;border:0;padding:2px 0;display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:#263752;font:inherit;text-align:left}
.tb-folder-entry svg{color:#df9828}.tb-folder-row{background:#fff}.tb-folder-count{color:#67778f}.tb-back{border:0;background:transparent;color:#225eb8;padding:7px 0 0;cursor:pointer;font:inherit;font-size:12px}.tb-current-folder{font-size:12px;color:#586b86;margin:4px 0 0;display:flex;align-items:center;gap:6px}
.tb-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.tb-row-actions .btn{white-space:nowrap}.tb-move-select{max-width:128px;padding:5px 8px;border:1px solid #cfd9e7;background:white;border-radius:6px;font:inherit;font-size:11px;color:#263752}.tb-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.tb-myfiles-table td:last-child{min-width:200px}@media(max-width:700px){.tb-myfiles-head{align-items:flex-start}.tb-head-actions{justify-content:flex-start}.tb-head-actions .btn{font-size:11px;padding:8px 9px}}

/* =========================================================
   VIEWER LIVE — MIS DOCUMENTOS
   ========================================================= */

[data-tb-doc-row] td{
  vertical-align:middle;
  padding-top:14px;
  padding-bottom:14px
}

.tb-doc-id{
  color:#1263d6;
  font-weight:700;
  white-space:nowrap
}

.tb-file-title span{
  font-weight:650;
  max-width:310px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}

.ws-table-score.ai,
.ws-table-score.sim{
  font-size:18px;
  font-weight:800
}

.ws-table-score.ai{
  color:#059447
}

.ws-table-score.sim{
  color:#049735
}

.tb-highlights{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:6px 11px;
  border:1px solid #1769e0;
  border-radius:7px;
  color:#1769e0;
  background:#fff;
  font-size:12px;
  font-weight:650;
  text-decoration:none;
  white-space:nowrap
}

.tb-highlights:hover{
  background:#f0f6ff
}

.tb-row-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap
}

.tb-row-actions .btn{
  white-space:nowrap
}

[data-tb-doc-row] .badge{
  white-space:nowrap
}


/* TB EXACT MYFILES 20261002 */

[data-tb-doc-row] td{
  vertical-align:middle!important;
  padding-top:16px!important;
  padding-bottom:16px!important;
}

.tb-provider-id{
  color:#1262d6;
  font-weight:700;
  white-space:nowrap;
}

.tb-provider-filename{
  display:block;
  margin-top:4px;
  max-width:250px;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.tb-file-title{
  min-width:225px;
}

.tb-file-title span{
  font-weight:650;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.tb-score-stack{
  min-width:100px;
  display:grid;
  justify-items:start;
  align-content:center;
  gap:7px;
}

.ws-table-score.ai,
.ws-table-score.sim{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:800!important;
  color:#06a23c!important;
}

.tb-result-download{
  min-height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:6px 10px;
  border-radius:6px;
  background:#08a83d;
  color:#fff!important;
  font-size:11px;
  font-weight:700;
  line-height:1;
  text-decoration:none!important;
  white-space:nowrap;
  box-shadow:none;
}

.tb-result-download:hover{
  background:#078f35;
}

.tb-highlights{
  min-height:31px;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:6px 10px!important;
  border:1px solid #1768ed!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#1768ed!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.1;
  text-decoration:none!important;
  white-space:nowrap;
}

.tb-highlights:hover{
  background:#f3f7ff!important;
}

.tb-view-report{
  min-height:31px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:7px 11px;
  border-radius:6px;
  background:#2368ed;
  color:#fff!important;
  font-size:11px;
  font-weight:700;
  line-height:1;
  text-decoration:none!important;
  white-space:nowrap;
}

.tb-view-report:hover{
  background:#1557d8;
}

.tb-row-actions{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:nowrap!important;
}

/* END TB EXACT MYFILES 20261002 */


/* =========================================================
   TB COMMERCIAL MY FILES
   ========================================================= */

table:has([data-tb-doc-row]){
  width:100%!important;
  min-width:970px!important;
  table-layout:fixed!important;
}

table:has([data-tb-doc-row]) th,
table:has([data-tb-doc-row]) td{
  vertical-align:middle!important;
}

table:has([data-tb-doc-row]) th:nth-child(1),
table:has([data-tb-doc-row]) td:nth-child(1){
  width:9%;
}

table:has([data-tb-doc-row]) th:nth-child(2),
table:has([data-tb-doc-row]) td:nth-child(2){
  width:24%;
}

table:has([data-tb-doc-row]) th:nth-child(3),
table:has([data-tb-doc-row]) td:nth-child(3){
  width:12%;
}

table:has([data-tb-doc-row]) th:nth-child(4),
table:has([data-tb-doc-row]) td:nth-child(4){
  width:12%;
}

table:has([data-tb-doc-row]) th:nth-child(5),
table:has([data-tb-doc-row]) td:nth-child(5){
  width:12%;
}

table:has([data-tb-doc-row]) th:nth-child(6),
table:has([data-tb-doc-row]) td:nth-child(6){
  width:15%;
}

table:has([data-tb-doc-row]) th:nth-child(7),
table:has([data-tb-doc-row]) td:nth-child(7){
  width:9%;
}

table:has([data-tb-doc-row]) th:nth-child(8),
table:has([data-tb-doc-row]) td:nth-child(8){
  width:14%;
}

[data-tb-doc-row] td{
  padding-top:17px!important;
  padding-bottom:17px!important;
}

.tb-provider-id{
  color:#1262d6!important;
  font-size:12px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}

.tb-file-title{
  max-width:240px;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.tb-file-title span{
  color:#17263b;
  font-size:12px;
  font-weight:600;
}

.tb-provider-filename{
  display:block;
  margin-top:4px;
  max-width:240px;
  overflow:hidden;
  color:#738098;
  font-size:10px;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.tb-score-stack{
  display:grid;
  justify-items:start;
  gap:8px;
}

.tb-table-score{
  color:#05a43b!important;
  font-size:18px!important;
  font-weight:800!important;
  line-height:1!important;
}

.tb-result-download{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  min-height:27px!important;
  padding:6px 10px!important;
  border-radius:6px!important;
  background:#08a83d!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:700!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

.tb-result-download svg{
  width:13px;
  height:13px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.tb-result-download:hover{
  background:#078f34!important;
}

.tb-status-completed{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:5px 10px;
  border-radius:999px;
  background:#eaf9ef;
  color:#008636;
  font-size:10px;
  font-weight:700;
}

.tb-highlights{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  min-height:29px!important;
  padding:6px 9px!important;
  border:1px solid #1768ed!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#1768ed!important;
  font-size:10px!important;
  font-weight:500!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

.tb-highlights svg{
  width:12px;
  height:12px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.tb-free-badge{
  position:absolute;
  top:-6px;
  right:-8px;
  padding:1px 4px;
  border-radius:3px;
  background:#08a83d;
  color:#fff;
  font-size:7px;
  font-weight:800;
}

.tb-actions-final{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap!important;
}

.tb-view-report{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  min-height:29px!important;
  padding:7px 10px!important;
  border-radius:6px!important;
  background:#2869ec!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

.tb-view-report svg{
  width:13px;
  height:13px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.tb-view-report:hover{
  background:#1559d6!important;
}

.tb-delete-doc{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  padding:0!important;
  border:0!important;
  border-radius:7px!important;
  background:#e5232a!important;
  color:#fff!important;
  cursor:pointer!important;
}

.tb-delete-doc:hover{
  background:#c9141b!important;
}

.tb-delete-doc svg{
  width:13px;
  height:13px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}


/* 2026-10-02 Plan summary above My Documents */
.tb-plan-strip{
 display:grid;
 grid-template-columns:minmax(180px,1.35fr) repeat(3,minmax(145px,1fr)) auto;
 align-items:stretch;
 gap:0;
 margin:0 0 16px;
 border:1px solid #e1e5eb;
 border-radius:12px;
 background:#fff;
 overflow:hidden;
 box-shadow:0 1px 2px rgba(15,23,42,.04);
}
.tb-plan-strip>div{
 display:grid;
 align-content:center;
 gap:3px;
 min-height:78px;
 padding:14px 18px;
 border-right:1px solid #edf0f3;
}
.tb-plan-strip span{font-size:9px;font-weight:800;letter-spacing:.06em;color:#7b8490;}
.tb-plan-strip strong{font-size:15px;color:#111827;}
.tb-plan-strip small{font-size:10px;color:#7b8490;}
.tb-plan-strip .tb-plan-active{color:#169447;}
.tb-plan-manage{align-self:center;margin:0 16px;padding:9px 12px;border:1px solid #d8dde5;border-radius:7px;color:#245fd5;font-size:10px;font-weight:700;text-decoration:none;white-space:nowrap;}
@media(max-width:1000px){
 .tb-plan-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
 .tb-plan-strip>div{border-bottom:1px solid #edf0f3;}
 .tb-plan-manage{justify-self:start;margin:12px 16px 16px;}
}
@media(max-width:620px){
 .tb-plan-strip{grid-template-columns:1fr;}
 .tb-plan-strip>div{min-height:auto;border-right:0;}
}

/* Mis documentos: distribución de la referencia y rótulos en español. */
.tb-myfiles{border-radius:9px;box-shadow:0 1px 2px #243a5908}
.tb-myfiles .tb-myfiles-head{padding:19px 20px;min-height:68px;gap:12px}
.tb-myfiles .tb-myfiles-head h2{font-size:14px;font-weight:600}
.tb-myfiles .tb-myfiles-head h2 svg{width:15px;height:15px}
.tb-myfiles .tb-head-actions{gap:22px}
.tb-myfiles .tb-head-actions .btn{font-size:10px;font-weight:500;min-height:32px;padding:7px 12px;border-radius:6px}
.tb-myfiles .tb-head-actions .btn-secondary{background:transparent;border:0;box-shadow:none;color:#2563eb}
.tb-myfiles .tb-head-actions .btn-primary{background:#2860f5;color:#fff}
.tb-myfiles .tb-myfiles-search{margin:13px 20px;width:min(290px,calc(100% - 40px));height:30px;padding:5px 10px;background:#f9fafb;border-radius:7px}
.tb-myfiles .tb-myfiles-search input{background:transparent;font-size:11px}
.tb-myfiles .tb-myfiles-table{width:100%!important;min-width:1030px!important;table-layout:fixed!important;font-size:11px}
.tb-myfiles .tb-myfiles-table th,.tb-myfiles .tb-myfiles-table td{padding:14px 12px!important;vertical-align:middle!important}
.tb-myfiles .tb-myfiles-table th{height:42px;font-size:9px;font-weight:500;letter-spacing:0;color:#173458;background:#f8f9fb;white-space:nowrap}
.tb-myfiles .tb-myfiles-table td{height:79px;color:#173458}
.tb-myfiles .tb-myfiles-table th:first-child,.tb-myfiles .tb-myfiles-table td:first-child{padding-left:19px!important}
.tb-myfiles .tb-myfiles-table th:nth-child(1),.tb-myfiles .tb-myfiles-table td:nth-child(1){width:8%}
.tb-myfiles .tb-myfiles-table th:nth-child(2),.tb-myfiles .tb-myfiles-table td:nth-child(2){width:22%}
.tb-myfiles .tb-myfiles-table th:nth-child(3),.tb-myfiles .tb-myfiles-table td:nth-child(3){width:11%;text-align:center}
.tb-myfiles .tb-myfiles-table th:nth-child(4),.tb-myfiles .tb-myfiles-table td:nth-child(4){width:11%;text-align:center}
.tb-myfiles .tb-myfiles-table th:nth-child(5),.tb-myfiles .tb-myfiles-table td:nth-child(5){width:12%;text-align:center}
.tb-myfiles .tb-myfiles-table th:nth-child(6),.tb-myfiles .tb-myfiles-table td:nth-child(6){width:12%;text-align:center}
.tb-myfiles .tb-myfiles-table th:nth-child(7),.tb-myfiles .tb-myfiles-table td:nth-child(7){width:15%;font-size:9px}
.tb-myfiles .tb-myfiles-table th:nth-child(8),.tb-myfiles .tb-myfiles-table td:nth-child(8){width:9%;min-width:0!important;text-align:center}
.tb-myfiles .tb-provider-id{font-size:10px!important;font-weight:400!important;color:#173458!important;display:block;overflow:hidden;text-overflow:ellipsis}
.tb-myfiles .tb-file-title{max-width:100%;font-size:11px;font-weight:500}
.tb-myfiles .tb-file-title span{font-size:11px;font-weight:500;color:#173458}
.tb-myfiles .tb-provider-filename{max-width:100%;font-size:9px;margin-top:4px}
.tb-myfiles .tb-score-stack,.tb-myfiles .tb-status-stack{display:flex;flex-direction:column;align-items:center;gap:5px}
.tb-myfiles .tb-table-score{font-size:15px!important;font-weight:700!important;color:#00ad45!important}
.tb-myfiles .tb-result-download{font-size:9px!important;min-height:22px!important;padding:4px 6px!important;gap:4px!important;border-radius:6px!important;background:#0da842!important}
.tb-myfiles .tb-result-download svg{width:10px;height:10px}
.tb-myfiles .tb-status-completed{font-size:9px;font-weight:500;min-height:21px;padding:4px 9px;background:#effcf5}
.tb-myfiles .tb-view-report,.tb-myfiles .tb-highlights{font-size:9px!important;font-weight:600!important;min-height:22px!important;padding:4px 6px!important;gap:4px!important;border:0!important;border-radius:6px!important;background:#2860f5!important;color:white!important;margin:0}
.tb-myfiles .tb-view-report svg,.tb-myfiles .tb-highlights svg{width:11px;height:11px}
.tb-myfiles .tb-actions-final{justify-content:center}
.tb-myfiles .tb-delete-doc{width:22px!important;height:20px!important;min-width:22px!important;border-radius:6px!important}
.tb-myfiles .tb-delete-doc svg{width:11px;height:11px}
@media(max-width:700px){.tb-myfiles .tb-head-actions{gap:6px}.tb-myfiles .tb-myfiles-head{padding:14px}.tb-myfiles .tb-myfiles-search{margin-left:14px}.tb-myfiles .tb-head-actions .btn{font-size:10px;padding:7px 8px}}

.tb-myfiles .tb-myfiles-search{width:min(390px,calc(100% - 40px))}
