.tbtp-customizer{margin:1.25rem 0;padding:1rem;border:1px solid #ddd;border-radius:10px}.tbtp-customizer h3{margin:0 0 .8rem}.tbtp-side-tabs{display:flex;gap:.5rem;margin-bottom:1rem}.tbtp-side-tabs button{padding:.55rem .9rem;border:1px solid #bbb;background:#fff;border-radius:6px}.tbtp-side-tabs .is-active{color:#fff;background:#222;border-color:#222}.tbtp-upload{display:grid;gap:.4rem;margin-bottom:1rem;font-weight:600}.tbtp-upload input{max-width:100%}.tbtp-stage{max-width:620px;margin:0 auto 1rem}.tbtp-stage canvas{display:block;width:100%;height:auto;touch-action:none;border-radius:8px;background:#f3f3f3;cursor:move}.tbtp-hint{font-size:.86rem;color:#666;margin:.45rem 0}.tbtp-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:1rem;align-items:end}.tbtp-controls label{display:grid;gap:.25rem}.tbtp-error{color:#b00020;font-weight:600;margin-top:.75rem}.tbtp-cart-thumb{display:block;width:90px!important;height:auto!important;border-radius:4px}.woocommerce-product-gallery>.tbtp-product-mode{position:absolute;inset:0;z-index:5;pointer-events:none;max-width:none}.woocommerce-product-gallery>.tbtp-product-mode canvas{pointer-events:auto;background:#fff0}.woocommerce-product-gallery>.tbtp-product-mode .tbtp-hint{display:none}@media(max-width:600px){.tbtp-controls{grid-template-columns:1fr}.woocommerce-product-gallery>.tbtp-product-mode{position:relative}}.tbtp-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.tbtp-actions .button{margin:0}.tbtp-customizer dialog{width:min(92vw,680px);border:0;border-radius:12px;padding:22px;box-shadow:0 20px 60px rgb(0 0 0 / .28)}.tbtp-customizer dialog::backdrop{background:rgb(0 0 0 / .62)}.tbtp-preview-dialog img{display:block;width:100%;height:auto;border-radius:8px}.tbtp-dialog-close{position:absolute;right:12px;top:8px;border:0;background:#fff0;font-size:28px;cursor:pointer}.tbtp-dialog-actions{display:flex;gap:.7rem;margin-top:1rem}.tbtp-quote-form{display:grid;gap:.8rem}.tbtp-quote-form label{display:grid;gap:.25rem}.tbtp-quote-form input,.tbtp-quote-form textarea{width:100%}.tbtp-quote-status{font-weight:600}.tbtp-quote-dialog[open],.tbtp-preview-dialog[open]{z-index:999999}.tbtp-back-note{margin:-.45rem 0 1rem;color:#666;font-size:.88rem}.tbtp-include-back{display:flex;align-items:center;gap:.45rem;margin:1rem 0 .25rem;font-weight:600}.tbtp-include-back input{width:auto;margin:0}.tbtp-side-tabs button{cursor:pointer}