/* The Cat's Suite 1.6 safe presentation; isolated and deliberately does not replace templates. */
.single-product .product .summary,
.single-product .product .summary .woocommerce-product-details__short-description,
.single-product .product .summary .woocommerce-product-details__short-description :is(p,span,strong,li,a),
.single-product .product .summary .product_meta,
.single-product .product .summary .product_meta a,
.single-product .product .summary .tc-rec-editor,
.single-product .product .summary .tc-rec-editor :is(label,small,p,h3,span){color:#202020!important}
.single-product .product .summary :is(input:not([type=radio]):not([type=checkbox]),select,textarea){color:#1b1b1b!important;background-color:#fff!important}
.single-product .product .summary :is(.single_add_to_cart_button,.button.alt){color:#fff!important}
.single-product .product_meta .sku_wrapper,.single-product .tc-supplier-ref,.single-product [data-supplier-ref]{display:none!important}
.woocommerce div.product div.images .flex-control-thumbs{display:flex!important;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 2px!important;flex-wrap:nowrap}
.woocommerce div.product div.images .flex-control-thumbs li{float:none!important;flex:0 0 76px!important;width:76px!important;scroll-snap-align:start}
.woocommerce div.product div.images .flex-control-thumbs img{height:76px!important;width:76px!important;object-fit:contain;border:1px solid #ddd;border-radius:9px}
.tc-rec-photo-picker{margin:14px 0 18px;padding:12px;border:1px solid #e5e2db;border-radius:14px}
.tc-rec-photo-picker strong{display:block;color:#222;margin-bottom:8px}
.tc-rec-photo-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:9px}
.tc-rec-photo-choice{flex:0 0 74px;border:1px solid #e0ded9;background:#fff;border-radius:10px;cursor:pointer;min-height:102px;padding:5px;color:#282828}
.tc-rec-photo-choice[aria-pressed=true]{outline:2px solid #ad8a45}
.tc-rec-photo-choice img{display:block;width:64px;height:70px;object-fit:contain;margin:auto}
.tc-rec-photo-choice span{font-size:10px;display:block;line-height:1.3;margin-top:2px;color:#292929}
.tc-rec-editor{padding:18px;border:1px solid #ddd;border-radius:14px;background:#fff;margin:24px 0;box-sizing:border-box;clear:both}
.tc-rec-editor *{box-sizing:border-box}
.tc-rec-editor h3{font-size:19px;line-height:1.35;margin:0 0 6px}
.tc-rec-desc,.tc-rec-note,.tc-rec-stage-tip{font-size:13px;line-height:1.5;color:#555;margin:7px 0 14px}
.tc-rec-field{display:flex;flex-direction:column;gap:5px;padding:8px 0;font-weight:600;font-size:14px}
.tc-rec-field input,.tc-rec-field select{width:100%!important;max-width:100%!important;min-height:42px;border:1px solid #d7d7d7;border-radius:8px;padding:8px 10px}
.tc-rec-field input[type=file]{min-height:56px;line-height:24px;padding:12px;border:1px dashed #b6b1a7;background:#faf9f7!important}
.tc-rec-field small{font-size:11px;color:#666!important;font-weight:400}
.tc-rec-dad{margin:16px auto;max-width:540px}
.tc-rec-stage{position:relative;width:100%;aspect-ratio:1/1;background:#f5f5f5;border:1px solid #ddd;border-radius:12px;overflow:hidden}
.tc-rec-stage>img{height:100%;width:100%;object-fit:contain;display:block}
.tc-rec-stage svg.tc-rec-dad-letters{position:absolute;left:31%;top:36%;width:38%;height:24%;touch-action:none;overflow:visible;filter:drop-shadow(0 1px 1px #3338)}
.tc-rec-stage svg text{user-select:none}
.tc-rec-zoom-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;background:#f7f7f6;border-radius:10px;padding:12px;margin:12px 0}
.tc-rec-zoom-controls label{font-size:13px;display:flex;flex-direction:column;gap:6px}
.tc-rec-zoom-controls select{min-height:36px;border:1px solid #ddd;background:#fff;color:#111}
.tc-rec-zoom-controls input[type=range]{min-width:120px;accent-color:#ae8a45}
.tc-rec-stage-tip{margin-bottom:5px}
.tc-rec-lightbox{position:fixed;inset:0;z-index:999990;background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;padding:30px}
.tc-rec-lightbox img{max-width:100%;max-height:90vh;object-fit:contain}
.tc-rec-lightbox button{position:absolute;right:16px;top:16px;background:#fff;color:#171717;border:0;border-radius:100%;width:46px;height:46px;font-size:24px;cursor:pointer}
@media(max-width:760px){.tc-rec-editor{padding:14px}.tc-rec-photo-choice{flex-basis:68px}.tc-rec-zoom-controls{flex-direction:column;align-items:stretch}.woocommerce div.product div.images .flex-control-thumbs li{flex-basis:65px!important;width:65px!important}}

.tc-rec-enlarge{display:block;margin:10px 0 8px;border:1px solid #999;border-radius:9px;background:#fff;color:#252525;padding:8px 12px;cursor:pointer;font-size:13px}

.tc-rec-model-price{font-size:18px;font-weight:500;color:#171717!important;padding:9px 12px;background:#f7f6f4;border-radius:8px;margin:6px 0 12px}.tc-rec-model-price del{color:#757575;margin-right:5px}.tc-rec-model-price strong{font-size:22px;color:#151515!important}.tc-rec-sale-tag{display:inline-block;font-size:11px;font-weight:700;color:#7b262b!important;background:#fff0f0;border-radius:10px;padding:3px 7px;margin-left:6px}

/* 1.7: editor universal - photos always clipped to the printable area */
.tc-rec-design-live{border:1px solid #ddd;background:#fff;border-radius:14px;padding:12px;margin:18px 0;color:#222}
.tc-rec-live-header,.tc-rec-live-controls,.tc-rec-live-sides{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:space-between;margin:8px 0}
.tc-rec-live-controls label{display:grid;gap:4px;font-size:12px;min-width:115px;flex:1}.tc-rec-live-controls input,.tc-rec-live-controls select{max-width:100%}
.tc-rec-live-stage{position:relative;aspect-ratio:1/1;overflow:hidden;background:#f7f6f3;border-radius:10px;touch-action:pan-y}
.tc-rec-live-garment{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.tc-rec-print-zone{position:absolute;top:29%;left:34%;width:32%;height:31%;pointer-events:auto;overflow:hidden;clip-path:inset(0);}
.tc-rec-design-live[data-design-key^="TC-BB"] .tc-rec-print-zone,.tc-rec-design-live[data-design-key^="TC-L4-0"] .tc-rec-print-zone{top:33%;left:33%;width:34%;height:24%}
.tc-rec-photo-slot{position:absolute;border-radius:3px;overflow:hidden;background:#dad8d6;border:1px solid #fff5;touch-action:none;cursor:grab}
.tc-rec-photo-slot img{display:none;width:100%;height:100%;object-fit:cover;transform-origin:center center;pointer-events:none;user-select:none}
.tc-rec-photo-slot.is-loaded img{display:block}.tc-rec-photo-slot.is-loaded .tc-rec-placeholder{display:none}
.tc-rec-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:8px;color:#454545}
.tc-rec-design-text{position:absolute;left:2%;width:96%;text-align:center;font-size:clamp(7px,1vw,14px);font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;text-shadow:0 1px 1px #aaa6}
.tc-rec-design-expanded .tc-rec-live-stage{max-width:740px;margin-inline:auto}
.tc-rec-live-sides button{cursor:pointer;border:1px solid #cfcfcf;border-radius:8px;padding:6px 13px;background:#fff;color:#222}
.tc-rec-live-sides button.active{background:#222;color:white}
/* Resistant to the theme's white-on-white summary defaults. */
body.single-product .woocommerce div.product .summary .woocommerce-product-details__short-description,
body.single-product .woocommerce div.product .summary .woocommerce-product-details__short-description *,
body.single-product .woocommerce div.product .summary .tc-rec-editor,
body.single-product .woocommerce div.product .summary .tc-rec-editor *:not(.tc-rec-live-sides button.active){color:#222!important}
/* Header backup + shop category navigation */
.tc-rec-category-navigation{display:flex;gap:9px;align-items:center;flex-wrap:wrap;padding:11px 14px;margin:16px auto;max-width:1200px;border:1px solid #ece8e1;border-radius:11px;background:#fff}
.tc-rec-category-navigation a{font-size:13px;font-weight:700;text-decoration:none;color:#181818!important;white-space:nowrap;padding:7px 11px;background:#f4f3f0;border-radius:9px}
.tc-rec-category-navigation a:hover{background:#e8e2d8}
.tc-rec-category-navigation strong{font-size:13px;margin:0 8px 0 0}

/* 1.7.5 — premium visual configurator */
body.single-product .tc-rec-editor{border:1px solid #e7e1d7;border-radius:22px;padding:clamp(18px,3vw,32px);background:#fff;box-shadow:0 14px 42px #17120b0b}
body.single-product .tc-rec-editor h3{font-size:clamp(21px,2.2vw,28px);font-weight:750;letter-spacing:-.03em;margin:0 0 12px}
body.single-product .tc-rec-editor .tc-rec-field{margin:12px 0 18px;gap:12px;font-weight:700}
.tc-rec-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.tc-rec-choice{appearance:none;border:1px solid #d8d6d2;background:#fff;border-radius:12px;padding:12px 16px;color:#161616;min-height:48px;font-weight:650;cursor:pointer;transition:border-color .16s,box-shadow .16s;line-height:1.25}
.tc-rec-choice[aria-pressed="true"]{border-color:#ad8b4d;box-shadow:0 0 0 2px #ad8b4d55;background:#faf7ef}
.tc-rec-choice:focus-visible{outline:3px solid #ad8b4d;outline-offset:2px}
.tc-rec-choices-colors .tc-rec-choice{min-width:52px;padding:8px 9px;display:flex;align-items:center;flex-direction:column;gap:6px}
.tc-rec-swatch{display:block;width:30px;height:30px;border:1px solid #cfcfcf;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff66}
.tc-rec-choices-colors .tc-rec-choice small{font-size:10px;font-weight:500;max-width:80px;white-space:normal}
.tc-rec-field:has(.tc-rec-choices) > select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important;pointer-events:none!important;min-height:0!important;padding:0!important;border:0!important}
.tc-rec-upload-card{border:1px dashed #bfb7a9;border-radius:16px;padding:18px!important;background:#faf9f7;align-items:center;text-align:center;cursor:pointer}
.tc-rec-upload-card.has-file{border-color:#ad8b4d;background:#fbf7ed}
.tc-rec-upload-icon{font-size:26px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#eee7da;color:#735a29}
.tc-rec-upload-card input[type=file]{width:100%!important;background:transparent!important;border:0!important;min-height:0!important;padding:8px!important;font-size:12px}
.tc-rec-upload-status{font-size:12px;font-style:normal;color:#6c655a}
.tc-rec-design-live{border:1px solid #e5dfd4;border-radius:20px;padding:clamp(14px,2vw,24px);background:#fcfbf9}
.tc-rec-original{display:grid;gap:10px;margin:0 0 18px;padding:14px;border-radius:16px;background:#fff;border:1px solid #eee8de}
.tc-rec-original img{width:100%;max-height:440px;object-fit:contain;background:#f8f8f8;border-radius:12px}
.tc-rec-original small{font-size:12px;color:#625d56}
.tc-rec-mockup-warning{border-left:3px solid #a9843e;background:#fff8e8;padding:12px;font-size:13px}
.tc-rec-live-stage{max-width:680px;margin:12px auto;border:1px solid #eee8de}
@media(max-width:650px){.tc-rec-choice{padding:10px 12px;min-height:44px}.tc-rec-choices-colors .tc-rec-choice{min-width:46px}}

/* 1.7.6 — original-mockup-first editor: never present a second, unrelated blank garment. */
.tc-rec-mockup-stage{aspect-ratio:1/1;background:#fff;max-width:680px;margin:12px auto 18px;border:1px solid #e9e5dd;border-radius:18px;overflow:hidden}
.tc-rec-mockup-stage .tc-rec-live-garment{object-fit:contain}
.tc-rec-mockup-stage .tc-rec-print-zone{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;clip-path:none!important;overflow:visible!important;pointer-events:none}
.tc-rec-mockup-stage .tc-rec-editorial-slot{position:absolute;display:none;pointer-events:auto;touch-action:none;border:1px solid #fff9;border-radius:1px;overflow:hidden;background:transparent;cursor:grab}
.tc-rec-mockup-stage .tc-rec-editorial-slot.is-loaded{display:block}
.tc-rec-mockup-stage .tc-rec-editorial-slot .tc-rec-placeholder{display:none}
.tc-rec-mockup-stage .tc-rec-editorial-slot img{filter:grayscale(1);width:100%;height:100%;object-fit:cover}
.tc-rec-photo-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px;margin:16px 0}
.tc-rec-upload-thumb{min-height:98px;background:#f6f4f0;border:1px solid #e4ded3;border-radius:12px;padding:8px;display:grid;gap:6px;align-content:center;justify-items:center}
.tc-rec-upload-thumb img{display:none;width:100%;height:90px;object-fit:cover;border-radius:8px}
.tc-rec-upload-thumb.is-loaded img{display:block}
.tc-rec-upload-thumb span{font-size:11px;font-weight:650;color:#4b453d}
.tc-rec-mockup-stage + .tc-rec-live-sides{display:none}
.tc-rec-design-live .tc-rec-live-header strong{font-size:clamp(17px,2.3vw,23px)}
.tc-rec-design-live .tc-rec-expand{padding:9px 16px;background:#bb9b5b;color:#16120d;border:0;border-radius:9px;font-weight:700}
.tc-rec-design-live .tc-rec-mockup-warning{border-radius:9px}
/* 1.8 — artwork editor: print composition independent from product photograph */
.tc-layer-editor{margin:24px 0;padding:20px;background:#faf9f6;border:1px solid #ded7c8;border-radius:16px}.tc-layer-editor h3{margin:0 0 6px}.tc-layer-editor .tc-layer-sub{font-size:13px;color:#625b51}.tc-layer-editor canvas{width:100%;max-width:620px;aspect-ratio:1;display:block;margin:16px auto;background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 50%/20px 20px;border:1px solid #dedbd6;border-radius:8px;touch-action:none}.tc-layer-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.tc-layer-controls label{flex:1;min-width:120px;font-size:13px;font-weight:600}.tc-layer-controls select,.tc-layer-controls input{width:100%;margin-top:6px}.tc-layer-status{font-size:13px;font-weight:600;color:#5c4720}
