.tc-archivos-campo { background:#f8fbfd; border:1px solid #d6e5ed; border-radius:12px; padding:18px; margin:18px 0; box-sizing:border-box; }
.tc-archivos-campo label { font-size:17px; display:block; margin-bottom:7px; }
.tc-archivos-campo label span { color:#c0392b; }
.tc-archivos-campo p { margin:0 0 10px; font-size:14px; line-height:1.6; }
.tc-archivos-campo input[type=file] { display:block; width:100%; max-width:100%; background:#fff; border:1px dashed #8cb1c5; border-radius:8px; padding:13px; box-sizing:border-box; font-size:14px; }
.tc-archivos-campo small { display:block; margin-top:10px; color:#52616b; }

/* v0.1.3 — Cursor visual only.
 * The prohibited cursor appeared over the Quantity/Printing variation
 * SELECTs, not exclusively on Add to cart. Force ordinary arrow throughout
 * the product purchase form, including disabled widgets and their wrappers.
 * No pointer-events changes. No disabled/required attribute changes.
 * WooCommerce and server-side upload validation are untouched.
 */
body.single-product form.cart,
body.single-product form.cart *,
body.single-product form.cart *::before,
body.single-product form.cart *::after,
body.single-product .woocommerce div.product form.cart,
body.single-product .woocommerce div.product form.cart *,
body.single-product .woocommerce div.product form.cart *::before,
body.single-product .woocommerce div.product form.cart *::after {
    cursor: default !important;
}

/* v0.1.7 — local file previews for ordinary mandatory uploads. */
.tcap-tools{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:11px}
.tc-archivos-campo .tcap-open,.tc-archivos-campo .tcap-mini-open{cursor:pointer!important;border:1px solid #8b218e;background:#8e218f;color:white;border-radius:7px;padding:8px 13px;font-size:13px;font-weight:700}
.tcap-open:disabled{opacity:.5;cursor:not-allowed!important}
.tcap-status{font-size:12px;color:#586274}
.tcap-mini-list[hidden],.tcap-modal[hidden],.tcap-tabs[hidden]{display:none!important}
.tcap-mini-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-top:12px}
.tcap-mini{min-width:0;display:flex;flex-direction:column;gap:6px;padding:7px;border:1px solid #d9dfe7;border-radius:8px;background:white}
.tcap-thumb{position:relative;height:104px;background:#eef1f7;overflow:hidden;display:flex;align-items:center;justify-content:center}
.tcap-thumb img{width:100%;height:100%;object-fit:contain}
.tcap-thumb iframe{width:100%;height:100%;border:0;pointer-events:none;background:white}
.tcap-pdf{position:absolute;bottom:4px;right:4px;color:white;background:#a52838;padding:2px 4px;border-radius:3px;font-size:10px;font-weight:700}
.tcap-mini-name{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tc-archivos-campo .tcap-mini-open{padding:6px 8px;background:#fff;color:#78167b!important;cursor:pointer!important}
.tcap-modal-open{overflow:hidden}
.tcap-modal{position:fixed;inset:0;z-index:999999;padding:12px;display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.tcap-backdrop{position:absolute;inset:0;background:rgba(15,22,31,.83)}
.tcap-dialog{position:relative;display:flex;flex-direction:column;box-sizing:border-box;width:min(100%,940px);height:min(90dvh,820px);background:white;border-radius:13px;overflow:hidden;box-shadow:0 20px 45px rgba(0,0,0,.3);color:#293347}
.tcap-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #d9e1ea}
.tcap-header strong{font-size:18px}
.tcap-close{border:0!important;border-radius:50%;height:38px;width:38px;min-width:38px;font-size:28px;background:#e8ebf0!important;color:#222!important;cursor:pointer!important}
.tcap-tabs{display:flex;overflow-x:auto;gap:7px;padding:10px}
.tcap-tab{flex-shrink:0;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid #bbc6d6;border-radius:6px;padding:7px 11px;font-size:13px;color:#35465c;background:#f3f6fa;cursor:pointer!important}
.tcap-tab.is-active{background:#801884;color:white;border-color:#801884}
.tcap-filename{margin:0!important;padding:8px 16px;font-size:13px;overflow-wrap:anywhere}
.tcap-display{flex:1;min-height:0;overflow:auto;margin:0 14px;background:#f1f3f6;display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:7px}
.tcap-display img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.tcap-display iframe{width:100%;height:100%;border:0;flex:1;min-height:0;background:white}
.tcap-display a{font-size:12px;padding:8px;color:#225685!important;text-decoration:underline}
.tcap-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 15px}
.tcap-footer span{font-size:12px;max-width:600px;line-height:1.5}
.tcap-done{background:#8e218f!important;color:#fff!important;border:0!important;padding:10px 14px!important;border-radius:7px!important;font-weight:700;cursor:pointer!important;flex-shrink:0}
.tcap-modal button:focus-visible,.tcap-tools button:focus-visible{outline:3px solid #ffa726;outline-offset:2px}
@media(max-width:600px){.tcap-modal{padding:5px}.tcap-dialog{height:96dvh}.tcap-footer{display:block}.tcap-footer span{display:block;margin-bottom:7px}.tcap-done{width:100%}.tcap-mini-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
