/* DTF Printing Direct Christmas Jumper Studio v3 — all styles scoped to this one product. */
.cjs{--purple:#7622c5;--violet:#5521a1;--ink:#161319;--line:#e4e1e9;--muted:#64616c;position:fixed!important;inset:0!important;width:100vw!important;max-width:none!important;height:100vh!important;height:100dvh!important;margin:0!important;padding:0!important;z-index:2147483000!important;background:#fff!important;box-shadow:none!important;border:0!important;border-radius:0!important;color:var(--ink);font:14px/1.4 system-ui,-apple-system,"Segoe UI",Arial,sans-serif;display:flex;flex-direction:column;overflow:hidden;isolation:isolate;text-align:left}
body.cjs-design-mode{overflow:hidden!important}
.cjs,.cjs *{box-sizing:border-box}.cjs h2,.cjs h3,.cjs p,.cjs label{margin:0!important;padding:0}.cjs button,.cjs textarea,.cjs select,.cjs input{font-family:inherit}.cjs button{cursor:pointer}.cjs button:focus-visible,.cjs a:focus-visible,.cjs input:focus-visible,.cjs textarea:focus-visible{outline:3px solid #a86fe6!important;outline-offset:2px}.cjs button[disabled]{opacity:.45;cursor:not-allowed}
.cjs-brandbar{flex:0 0 78px;min-height:78px;background:linear-gradient(112deg,#0b0b10,#16151b 85%,#6521a9 100%);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 24px 10px 36px;gap:25px}
.cjs-brand{text-decoration:none!important;color:#fff!important;display:flex;align-items:center;gap:13px;min-width:280px}.cjs-brand-mark{font-size:39px;line-height:1;font-weight:900;background:linear-gradient(135deg,#ff791e 20%,#ff173f 43%,#17bb9e 70%);color:transparent;-webkit-background-clip:text;background-clip:text;transform:rotate(-18deg)}.cjs-brand-text strong{font-size:27px;letter-spacing:-1.3px;line-height:1;white-space:nowrap;color:#fff}.cjs-brand-text strong span{color:#a342ff}.cjs-brand-text small{font-size:9px;display:block;color:#eee;margin-top:4px;font-weight:750;letter-spacing:-.1px}
.cjs-benefits{display:flex;align-items:center;justify-content:space-evenly;gap:32px;flex:1;white-space:nowrap;font-size:13px;font-weight:800;color:#f7f7f8}.cjs-benefits span{white-space:nowrap}.cjs-close{display:flex;gap:4px;align-items:center;white-space:nowrap;color:#fff!important;border:1px solid #ffffff55;border-radius:9px;padding:8px 11px;text-decoration:none!important;font-weight:650}.cjs-close:hover{background:#ffffff24}
.cjs-header{flex:0 0 100px;min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:14px 28px 13px 32px;background:#fff;box-shadow:0 3px 13px #24213313;position:relative;z-index:1}.cjs-title{display:flex;align-items:center;gap:19px;min-width:0}.cjs-tree{font-size:47px;line-height:1;flex:none}.cjs h2{font-size:clamp(25px,3.2vw,43px)!important;line-height:1.12!important;font-weight:900!important;letter-spacing:-1.5px!important;color:#0c0c10!important;white-space:normal}.cjs-title p{font-size:15px;color:#1c1b23;margin-top:5px!important;line-height:1.28}.cjs-header-actions{display:flex;align-items:center;gap:9px;flex:none}.cjs-top-btn,.cjs-preview-btn{border:1px solid #e1dfe7!important;background:#fff!important;color:#231a33!important;border-radius:12px!important;min-height:49px;padding:9px 13px!important;font-size:18px!important;font-weight:800!important;box-shadow:0 3px 9px #00000012!important}.cjs-top-caption{font-size:11px}.cjs-preview-btn{color:#5e11ac!important;border:2px solid #6d24c0!important;margin-left:14px!important;min-width:156px;font-size:17px!important}.cjs-preview-btn.is-active{color:#fff!important;background:#7726c8!important}
.cjs-workspace{min-height:0;flex:1;display:grid;grid-template-columns:90px minmax(255px,325px) minmax(360px,1fr) minmax(280px,345px);background:#f7f6f9;overflow:hidden;gap:0}
.cjs-rail{background:linear-gradient(180deg,#f7f6fc,#f9f9fc);display:flex;flex-direction:column;gap:9px;padding:14px 9px;overflow:auto;border-right:1px solid var(--line)}.cjs-rail button{background:#fff!important;color:#19141f!important;border:1px solid #e8e5ed!important;border-radius:12px!important;min-height:79px;flex:none;padding:8px 3px!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px!important;font-weight:780!important;box-shadow:0 4px 10px #2721330d!important;line-height:1.1!important}.cjs-rail-icon{font-size:29px;line-height:1.1;font-family:Arial,sans-serif}.cjs-rail button.is-on{color:#fff!important;background:linear-gradient(145deg,#ae4ef0,#5600b3)!important;border-color:#8a2ad3!important;box-shadow:0 5px 13px #8021c447!important}.cjs-rail button:last-child{margin-top:0}
.cjs-side{background:#fff;padding:18px 14px;overflow-y:auto;overscroll-behavior:contain;min-width:0;min-height:0}.cjs-side h3{font-size:19px!important;font-weight:900!important;letter-spacing:-.45px!important;line-height:1.3!important;color:#161219!important}.cjs-panel{display:none}.cjs-panel.is-on{display:block}.cjs-panel>h3{display:flex;justify-content:space-between}.cjs-panel>p{margin:12px 0!important;font-size:12px;color:var(--muted)}.cjs-category-filter{display:flex;gap:5px;overflow-x:auto;margin:16px 0 12px;padding-bottom:2px}.cjs-category-filter button{border:1px solid #dcd8e5!important;color:#231e29!important;background:#fff!important;padding:7px 10px!important;border-radius:9px!important;font-size:11px!important;white-space:nowrap;flex:none;font-weight:750!important}.cjs-category-filter button.is-active{background:var(--purple)!important;border-color:var(--purple)!important;color:#fff!important}.cjs-template-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cjs-template{background:linear-gradient(155deg,#0f1013,#23252a)!important;color:#fff!important;border:1px solid #ccc!important;border-radius:11px!important;padding:10px 5px!important;min-height:131px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-weight:800!important;line-height:1.2;font-size:12px!important}.cjs-template:hover{border-color:#a244ec!important;box-shadow:0 0 0 2px #a244ec47}.cjs-template[hidden]{display:none!important}.cjs-template img{display:block;width:81px!important;height:81px!important;object-fit:contain!important}.cjs-template span{text-align:center}.cjs-note{font-size:11px;color:#74707d;line-height:1.55;margin:13px 0!important}.cjs-graphics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.cjs-graphic{border:1px solid #e1dce9!important;background:#f8f5fc!important;color:#201629!important;border-radius:12px!important;padding:10px 4px!important;display:flex;flex-direction:column;align-items:center;gap:6px;font-weight:750!important;font-size:10px!important}.cjs-graphic img{width:60px!important;height:60px!important;object-fit:contain!important}.cjs label{display:block!important;font-size:12px!important;font-weight:750!important;margin:10px 0 6px!important}.cjs textarea,.cjs select{display:block!important;width:100%!important;border-radius:10px!important;padding:10px 11px!important;border:1px solid #c9c3d1!important;background:#fff!important;color:#171319!important;font-size:13px!important}.cjs textarea{min-height:76px!important;line-height:1.5!important;resize:vertical}.cjs-add{display:block;width:100%;margin-top:15px;border:0!important;border-radius:10px!important;padding:12px!important;color:#fff!important;background:var(--purple)!important;font-weight:850!important}.cjs-upload{min-height:175px;border:2px dashed #9f75ca!important;background:#f7f1ff!important;border-radius:16px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:7px;cursor:pointer;padding:25px 7px!important;text-align:center}.cjs-upload span{font-size:40px}.cjs-upload strong{font-size:15px;color:#59259a}.cjs-upload small{font-size:10px}
.cjs-garment-side{background:radial-gradient(circle at 50% 40%,#fff 0,#f7f6f9 56%,#f0eef4 100%);padding:10px 8px 4px;position:relative;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.cjs-stage-top{position:absolute;top:11px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between;pointer-events:none;z-index:2}.cjs-stage-top>*{pointer-events:auto}.cjs-stage-badge{background:#fff;border:1px solid #ece9f0;border-radius:7px;padding:7px 9px;color:#4c2b6e;font-size:10px;letter-spacing:.65px;font-weight:850}.cjs-smallbtn{border:1px solid #dfd9e8!important;border-radius:9px!important;background:#fff!important;color:#332c3a!important;padding:8px 10px!important;font-size:11px!important;font-weight:800!important;white-space:nowrap!important}.cjs-smallbtn:hover{border-color:#7c2ac6!important}.cjs-view{width:min(100%,calc(100vh - 285px),720px);height:min(100%,calc(100vh - 285px),720px);aspect-ratio:1/1;position:relative;margin:auto;flex:none;overflow:hidden;touch-action:pan-y}.cjs-jumper-inner{position:absolute;inset:0;width:100%;height:100%;transform:scale(1.12);transform-origin:50% 41%;transition:transform .18s ease}.cjs.is-zoom .cjs-jumper-inner{transform:scale(1.24)}.cjs.is-preview .cjs-jumper-inner{transform:scale(1)}.cjs-photo{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;pointer-events:none;user-select:none;max-width:none!important}.cjs-print-rect{position:absolute;left:29.1%;top:22.6%;width:42.8%;height:53.5%;border:1.5px dashed #eee2dbec;box-shadow:0 0 0 1px #0005;z-index:1}.cjs-print-rect canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:move}.cjs-print-rect:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 25px #ffffff16;pointer-events:none}.cjs-safe-label{position:absolute;white-space:nowrap;left:50%;bottom:-25px;transform:translateX(-50%);font-size:10px;font-weight:850;letter-spacing:.7px;background:#fff;color:#564468;border-radius:7px;padding:4px 8px}.cjs.is-preview .cjs-print-rect{border-color:transparent;box-shadow:none}.cjs.is-preview .cjs-safe-label{display:none}.cjs.has-unsafe .cjs-print-rect{border-color:#e3303c}.cjs.has-unsafe .cjs-safe-label{color:#ad2133}.cjs-stage-foot{margin:0 auto!important;font-size:11px;color:#706b78;text-align:center;max-width:90%;padding-bottom:4px!important}.cjs-stage-foot strong{color:#25202a}.cjs-stage-buttons{display:flex;justify-content:center;align-items:center;gap:7px;padding:7px 4px 8px}.cjs-stage-buttons .cjs-smallbtn{padding:6px 10px!important}
.cjs-right{border-left:1px solid #e7e3eb;padding:16px 15px}.cjs-right-heading{padding:0 0 15px;border-bottom:1px solid #e7e3eb}.cjs-right-heading p{margin:5px 0 0!important}.cjs-properties{padding:11px 0;border-bottom:1px solid #ece9ef}.cjs-properties[hidden]{display:none!important}.cjs-edit-title{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px}.cjs-edit-title strong{font-size:13px}.cjs-edit-title span{font-size:10px;font-weight:850;color:var(--purple)}.cjs-properties label{margin:11px 0 6px!important}.cjs-custom-color-label{font-size:10px!important}.cjs-color{height:36px!important;width:100%!important;border:1px solid #d8d3dd!important;background:#fff!important;padding:3px!important;cursor:pointer}.cjs-colors{display:flex;gap:7px;flex-wrap:nowrap;margin:8px 0 5px}.cjs-colors button{width:30px;height:30px;border-radius:50%!important;flex:none;background:var(--sw)!important;border:2px solid #fff!important;box-shadow:0 0 0 1px #c8c3d1!important;padding:0!important}.cjs-colors button.is-on{box-shadow:0 0 0 2px #7c26c3!important}.cjs-range{width:100%;accent-color:var(--purple)}.cjs-inline{display:flex;gap:8px;margin-top:12px}.cjs-inline button{flex:1}.cjs-layer-head{display:flex;justify-content:space-between;align-items:center;margin:16px 0 10px}.cjs-layer-head h3{font-size:17px!important}.cjs-layer-list{display:flex;flex-direction:column;gap:7px;max-height:240px;overflow-y:auto}.cjs-layer{width:100%;display:block;text-align:left;padding:11px 12px!important;border:1px solid #e2dce9!important;border-radius:10px!important;background:#fff!important;color:#29222f!important;font-size:12px!important;font-weight:700!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cjs-layer.is-on{border-color:#8e47cd!important;background:#f7f0fc!important}.cjs-empty-layers{font-size:12px;color:#857c8b;margin:10px 0!important}.cjs-print-note{border-top:1px solid #eeebf1;margin-top:16px!important;padding-top:12px!important}
.cjs-orderbar{flex:0 0 auto;min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 21px 9px;background:#fff;border-top:1px solid #e5e1e9;box-shadow:0 -6px 20px #0000000b;z-index:3}.cjs-sizes{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.cjs-size-label{font-size:15px;font-weight:850;white-space:nowrap}.cjs-size-groups{display:flex;gap:4px;flex:none}.cjs-size-group{border:1px solid #e0dce6!important;border-radius:9px!important;background:#fff!important;color:#1b1920!important;font-weight:800!important;font-size:13px!important;padding:13px 12px!important;white-space:nowrap}.cjs-size-group small{font-size:9px;color:inherit;font-weight:500;display:inline}.cjs-size-group.is-active{color:#fff!important;background:#7622c5!important;border-color:#7622c5!important}.cjs-size-pills{display:flex;flex-wrap:nowrap;overflow-x:auto;align-items:center;gap:5px;min-width:0;padding:3px 1px}.cjs-size-pills button{border:1px solid #d9d5e1!important;background:#fff!important;color:#161319!important;border-radius:8px!important;padding:10px 9px!important;font-size:13px!important;font-weight:850!important;white-space:nowrap}.cjs-size-pills button.is-active{border-color:#7622c5!important;background:#f1e5fb!important;color:#5916a2!important}.cjs-order-right{display:flex;align-items:center;gap:18px;flex:none}.cjs-order-price{display:flex;flex-direction:column;line-height:1.1;text-align:right;white-space:nowrap}.cjs-order-price strong{font-size:31px;font-weight:950;color:#6412a8}.cjs-order-price small{font-size:11px;color:#51465c;margin-top:4px}.cjs-woo-slot{display:flex;align-items:center;gap:8px}.cjs-woo-slot .variations{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.cjs-woo-slot .single_variation_wrap{display:block!important}.cjs-woo-slot .single_variation,.cjs-woo-slot .woocommerce-variation{display:none!important}.cjs-woo-slot .woocommerce-variation-add-to-cart{display:flex!important;align-items:center;gap:8px;margin:0!important}.cjs-woo-slot .quantity{margin:0!important;float:none!important;display:flex;align-items:center}.cjs-woo-slot .quantity input.qty{width:56px!important;height:46px!important;border-radius:8px!important;border:1px solid #d5cee0!important;background:#fff!important;text-align:center!important;margin:0!important}.cjs-woo-slot button.single_add_to_cart_button{background:linear-gradient(110deg,#9634df,#6514ae)!important;color:#fff!important;padding:13px 18px!important;border-radius:10px!important;min-width:167px!important;min-height:47px!important;text-align:center!important;border:0!important;font-size:15px!important;font-weight:850!important;margin:0!important;float:none!important;line-height:1.2!important}.cjs-woo-slot button.single_add_to_cart_button:before{content:'🛒 ';font-size:17px}.cjs-woo-slot button.single_add_to_cart_button[disabled]{opacity:.45!important}.cjs-disclosure{background:#fff;padding:3px 22px;font-size:10px;color:#595260}.cjs-disclosure label{display:flex!important;align-items:center;gap:7px;font-weight:550!important;font-size:10px!important;margin:0!important}.cjs-disclosure input{margin:0!important;flex:none;accent-color:#7d24ca}.cjs-feedback{background:#f6fbf5;color:#235b2d;text-align:center;font-size:11px;font-weight:700;flex:0 0 auto;line-height:20px;min-height:20px}.cjs-feedback.is-error{background:#fff2f3;color:#ad2533}.cjs-readiness{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)}.cjs-saving{opacity:.5;cursor:progress!important}
@media(max-width:1380px){.cjs-workspace{grid-template-columns:75px 265px minmax(340px,1fr) 290px}.cjs-brandbar{padding-left:18px}.cjs-benefits{gap:12px;font-size:11px}.cjs-brand-text strong{font-size:24px}.cjs-header{padding:12px 16px}.cjs h2{font-size:31px!important}.cjs-title p{font-size:13px}.cjs-orderbar{padding:9px 12px}.cjs-sizes{gap:7px}.cjs-size-group{font-size:11px!important;padding:10px 9px!important}.cjs-size-pills button{font-size:12px!important;padding:9px 8px!important}.cjs-order-price strong{font-size:26px}.cjs-woo-slot button.single_add_to_cart_button{min-width:145px!important;padding:11px 12px!important}}
@media(max-width:1060px){.cjs-benefits span:last-child{display:none}.cjs-workspace{grid-template-columns:68px 220px minmax(280px,1fr) 245px}.cjs-rail{padding:9px 5px}.cjs-rail button{min-height:65px;font-size:10px!important}.cjs-template{min-height:100px}.cjs-template img{width:65px!important;height:65px!important}.cjs-side{padding:13px 9px}.cjs-title p{font-size:12px}.cjs-orderbar{display:grid;grid-template-columns:minmax(0,1fr) auto}.cjs-size-groups small{display:none}.cjs-order-right{gap:9px}}
@media(max-width:840px){.cjs-brandbar{min-height:56px;flex-basis:56px;padding:5px 12px}.cjs-brand-mark{font-size:29px}.cjs-brand-text strong{font-size:19px}.cjs-brand-text small{font-size:7px}.cjs-brand{min-width:0;gap:7px}.cjs-benefits{display:none}.cjs-close span{display:none}.cjs-close{font-size:22px;padding:4px 10px}.cjs-header{min-height:82px;flex-basis:82px;padding:9px 12px}.cjs-title{gap:8px}.cjs-tree{font-size:31px}.cjs h2{font-size:23px!important;letter-spacing:-.7px!important}.cjs-title p{font-size:11px}.cjs-top-btn{min-width:37px;padding:7px!important;min-height:38px}.cjs-top-caption{display:none}.cjs-preview-btn{min-width:90px;margin-left:0!important;font-size:13px!important;padding:8px!important;min-height:38px}.cjs-header-actions{gap:4px}.cjs-workspace{grid-template-columns:68px minmax(190px,240px) minmax(320px,1fr)}.cjs-right{display:none}.cjs-view{height:min(100%,calc(100vh - 260px),610px);width:min(100%,calc(100vh - 260px),610px)}.cjs-garment-side{padding-bottom:1px}.cjs-orderbar{grid-template-columns:1fr;gap:6px}.cjs-order-right{justify-content:flex-end}.cjs-sizes{justify-content:flex-start}.cjs-disclosure{padding:4px 11px}}
@media(max-width:620px){.cjs-brandbar{min-height:47px;flex-basis:47px}.cjs-brand-text strong{font-size:17px}.cjs-brand-text small{display:none}.cjs-header{min-height:83px;flex-basis:83px;gap:6px}.cjs-tree{display:none}.cjs h2{font-size:21px!important;line-height:1.05!important}.cjs-title p{font-size:10px;margin-top:5px!important}.cjs-preview-btn{min-width:68px;font-size:11px!important}.cjs-header-actions{gap:2px}.cjs-top-btn{display:none}.cjs-workspace{display:grid;grid-template-columns:1fr;grid-template-rows:61px minmax(0,1fr) minmax(150px,30vh)}.cjs-rail{grid-row:1;grid-column:1;flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:5px;gap:5px}.cjs-rail button{min-width:68px;min-height:50px;padding:4px 3px!important;font-size:9px!important;gap:0}.cjs-rail-icon{font-size:22px}.cjs-garment-side{grid-row:2;grid-column:1;padding:4px;overflow:hidden}.cjs-stage-top{top:3px;left:5px;right:5px}.cjs-stage-badge{font-size:8px;padding:3px 5px}.cjs-stage-top .cjs-smallbtn{font-size:9px!important;padding:4px 6px!important}.cjs-view{width:min(100%,calc(100dvh - 430px),440px);height:min(100%,calc(100dvh - 430px),440px);min-height:170px;margin:auto}.cjs-jumper-inner{transform:scale(1.10)}.cjs-stage-foot{font-size:9px}.cjs-stage-buttons{display:none}.cjs-side{grid-column:1;grid-row:3;border-top:1px solid var(--line);overflow-y:auto;padding:10px 12px}.cjs-panel>h3{font-size:15px!important}.cjs-category-filter{margin:8px 0}.cjs-template-list{display:flex;overflow-x:auto;gap:7px}.cjs-template{min-width:98px;min-height:92px;padding:4px!important;gap:3px}.cjs-template img{height:53px!important;width:53px!important}.cjs-template span{font-size:9px}.cjs-graphics{display:flex;overflow-x:auto}.cjs-graphic{min-width:65px}.cjs-note{margin:4px 0!important}.cjs-orderbar{min-height:114px;padding:7px;gap:5px}.cjs-size-label{font-size:11px}.cjs-sizes{gap:5px;min-width:0}.cjs-size-group{padding:8px 5px!important;font-size:10px!important}.cjs-size-pills{gap:4px}.cjs-size-pills button{padding:8px 7px!important;font-size:11px!important}.cjs-order-right{justify-content:space-between}.cjs-order-price strong{font-size:22px}.cjs-order-price small{font-size:9px}.cjs-woo-slot button.single_add_to_cart_button{min-width:160px!important;font-size:12px!important;min-height:40px!important;padding:9px!important}.cjs-woo-slot .quantity input.qty{height:40px!important;width:46px!important}.cjs-disclosure{padding:2px 8px}.cjs-disclosure label{font-size:9px!important}.cjs-feedback{font-size:9px;line-height:16px;min-height:16px}}
@media(max-height:720px) and (min-width:840px){.cjs-brandbar{min-height:51px;flex-basis:51px}.cjs-header{min-height:76px;flex-basis:76px}.cjs-workspace{min-height:0}.cjs-orderbar{min-height:76px}.cjs-view{width:min(100%,calc(100vh - 245px),700px);height:min(100%,calc(100vh - 245px),700px)}.cjs-rail button{min-height:60px}}

/* On phones, Layers opens an editing drawer instead of hiding important controls. */
.cjs-workspace{position:relative}
@media(max-width:840px){.cjs.cjs-show-layers .cjs-right{display:block!important;position:absolute;z-index:10;right:0;top:0;bottom:0;width:min(330px,85vw);box-shadow:-9px 0 35px #0002;border-left:1px solid #ddd;overflow-y:auto;background:#fff}.cjs.cjs-show-layers .cjs-rail{z-index:11}}
@media(max-width:620px){.cjs.cjs-show-layers .cjs-right{top:61px;bottom:0;width:min(330px,90vw)}}

/* v3.1: premium graphic and template library, no additional theme dependencies. */
.cjs-template{min-height:164px!important;padding:8px 6px!important;gap:5px!important}
.cjs-template-preview{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:120px;border-radius:9px;overflow:hidden;background:radial-gradient(circle at 50% 35%,#36323b,#141316 72%)}
.cjs-template-preview img{width:102px!important;height:94px!important;object-fit:contain!important;filter:drop-shadow(0 2px 3px #0008)}
.cjs-template-preview-title{position:absolute;bottom:3px;left:3px;right:3px;text-align:center;font-size:10px!important;line-height:1.13;letter-spacing:.15px;font-weight:900!important;color:#fff;text-shadow:0 1px 4px #000,0 2px 2px #000;background:linear-gradient(transparent,#131116d0);padding:5px 2px 1px}
.cjs-template-name{font-size:11px;font-weight:850;line-height:1.2;text-align:center}
.cjs-graphic-search{display:block!important;width:100%!important;padding:9px 11px!important;border-radius:9px!important;border:1px solid #d8d1e4!important;color:#241f2a!important;background:white!important;font-size:12px!important}
.cjs-graphic-filters{display:flex;gap:5px;overflow-x:auto;margin:10px 0 14px;padding-bottom:4px;scrollbar-width:thin}
.cjs-graphic-filters button{background:white!important;color:#29212e!important;border:1px solid #e0dce9!important;padding:7px 10px!important;white-space:nowrap;border-radius:8px!important;font-size:11px!important;font-weight:750!important}
.cjs-graphic-filters button.is-active{background:var(--purple)!important;border-color:var(--purple)!important;color:#fff!important}
.cjs-graphic{min-height:110px;justify-content:center!important;padding:8px 4px!important;background:linear-gradient(145deg,#f9f8fb,#f1eef7)!important}
.cjs-graphic img{width:83px!important;height:80px!important;filter:drop-shadow(0 2px 2px #0002)}
.cjs-graphic span{line-height:1.2!important;text-align:center;font-size:10px!important}
.cjs-graphic[hidden]{display:none!important}
.cjs-graphic:hover{border-color:#8e4de3!important;box-shadow:0 0 0 2px #a87bdf44}
@media(max-width:1060px){.cjs-template{min-height:137px!important}.cjs-template-preview{height:91px}.cjs-template-preview img{height:78px!important}.cjs-graphic img{width:70px!important;height:68px!important}.cjs-graphic{min-height:101px}}
@media(max-width:620px){.cjs-template{min-height:120px!important}.cjs-template-preview{height:81px}.cjs-template-preview img{width:82px!important;height:76px!important}}

/* v3.2 premium previews show the exact layered designs, not a lone clipart graphic. */
.cjs-template-preview{height:143px;background:#151719!important;border:1px solid #3f3944}
.cjs-template-preview img{width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;filter:none!important}
.cjs-template{min-height:187px!important;padding:6px!important;background:linear-gradient(160deg,#15131b,#26212d)!important}
.cjs-template-name{font-weight:800!important;letter-spacing:.05px}
.cjs-graphic img{width:91px!important;height:86px!important;object-fit:contain!important}
@media(max-width:1060px){.cjs-template-preview{height:113px}.cjs-template{min-height:154px!important}}
@media(max-width:620px){.cjs-template-preview{height:91px}.cjs-template{min-height:125px!important}.cjs-graphic img{width:67px!important;height:67px!important}}

/* v3.3: touch-first mobile studio with the canvas unobstructed until a tool is opened */
.cjs-mobile-close{display:none}
@media (max-width:620px){
  .cjs{height:100dvh!important;overflow:hidden!important}
  .cjs-brandbar{flex:0 0 39px!important;min-height:39px!important;padding:3px 12px!important}
  .cjs-brand-mark{font-size:25px!important}
  .cjs-brand-text strong{font-size:17px!important}
  .cjs-close{font-size:18px!important;padding:3px 9px!important}
  .cjs-header{flex:0 0 68px!important;min-height:68px!important;padding:8px 11px!important;gap:8px!important}
  .cjs-title{min-width:0!important}
  .cjs h2{font-size:clamp(17px,4.8vw,22px)!important;line-height:1.05!important;letter-spacing:-.5px!important}
  .cjs-title p{font-size:10px!important;line-height:1.2!important;max-height:24px;overflow:hidden}
  .cjs-preview-btn{min-width:69px!important;max-width:75px!important;font-size:11px!important;padding:8px 5px!important;line-height:1.1!important}
  .cjs-workspace{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr) 57px!important;flex:1!important;min-height:0!important;overflow:hidden!important}
  .cjs-garment-side{grid-column:1!important;grid-row:1!important;overflow:hidden!important;padding:0!important;min-height:0!important;align-items:center!important}
  .cjs-stage-top{top:5px!important;left:8px!important;right:8px!important}
  .cjs-view{width:min(100vw,calc(100dvh - 245px),550px)!important;height:min(100vw,calc(100dvh - 245px),550px)!important;min-height:0!important;max-width:100%!important;aspect-ratio:1!important;margin:auto!important;flex:none!important;touch-action:none}
  .cjs-jumper-inner{transform:scale(1.23)!important;transform-origin:50% 43%!important}
  .cjs.is-zoom .cjs-jumper-inner{transform:scale(1.38)!important}
  .cjs.is-preview .cjs-jumper-inner{transform:scale(1.08)!important}
  .cjs-stage-foot,.cjs-stage-buttons{display:none!important}
  .cjs-rail{grid-column:1!important;grid-row:2!important;z-index:6!important;display:flex!important;flex-direction:row!important;align-items:stretch!important;overflow-x:auto!important;overflow-y:hidden!important;gap:6px!important;padding:4px 8px!important;scrollbar-width:none!important;border-top:1px solid #e6e2ec!important;border-bottom:0!important}
  .cjs-rail button{min-height:47px!important;min-width:65px!important;padding:4px 6px!important;flex:none!important;border-radius:9px!important;font-size:10px!important}
  .cjs-rail-icon{font-size:18px!important}
  .cjs-side:not(.cjs-right){display:none!important;position:absolute!important;z-index:8!important;grid-row:auto!important;grid-column:auto!important;bottom:57px!important;top:auto!important;left:0!important;right:0!important;width:100%!important;height:min(360px,53%)!important;min-height:180px!important;overflow-y:auto!important;border-top:2px solid #a454ec!important;border-radius:17px 17px 0 0!important;background:#fff!important;padding:10px 14px 16px!important;box-shadow:0 -14px 40px #100c1930!important}
  .cjs.cjs-mobile-panel-open .cjs-side:not(.cjs-right){display:block!important}
  .cjs-mobile-close{display:flex!important;align-items:center;justify-content:center;gap:8px;position:sticky;top:0;float:right;z-index:2;border:1px solid #e2d8f0!important;background:#f5f0fc!important;color:#572296!important;padding:4px 10px!important;border-radius:8px!important;font-size:12px!important;font-weight:800!important}
  .cjs-panel>h3{min-height:32px;font-size:16px!important;padding-top:6px!important}
  .cjs-template-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;overflow:visible!important;gap:7px!important}
  .cjs-template{min-width:0!important;width:100%!important;min-height:100px!important;padding:5px 4px!important}
  .cjs-template-preview{height:68px!important}
  .cjs-template-preview img{width:70px!important;height:63px!important}
  .cjs-graphics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;overflow:visible!important}
  .cjs-graphic{min-width:0!important}
  .cjs-upload{min-height:132px!important;padding:16px 5px!important}
  .cjs-orderbar{flex:0 0 auto!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;min-height:107px!important;gap:5px!important;padding:5px 8px!important;box-shadow:0 -4px 12px #1111!important}
  .cjs-sizes{display:grid!important;grid-template-columns:auto 1fr!important;gap:4px 6px!important;width:100%!important}
  .cjs-size-label{font-size:10px!important;white-space:nowrap!important}
  .cjs-size-groups{justify-self:start!important;gap:4px!important}
  .cjs-size-group{padding:4px 8px!important;font-size:10px!important;min-height:25px!important}
  .cjs-size-pills{grid-column:1 / -1!important;width:100%!important;padding:1px 0!important;overflow-x:auto!important}
  .cjs-size-pills button{padding:4px 8px!important;min-height:27px!important}
  .cjs-order-right{display:flex!important;justify-content:space-between!important;align-items:center!important;width:100%!important;gap:8px!important}
  .cjs-order-price strong{font-size:19px!important}
  .cjs-order-price small{font-size:9px!important}
  .cjs-woo-slot{flex:0 0 auto}
  .cjs-woo-slot button.single_add_to_cart_button{min-width:125px!important;min-height:35px!important;font-size:11px!important;padding:7px 9px!important}
  .cjs-woo-slot .quantity input.qty{width:39px!important;height:35px!important}
  .cjs-disclosure{flex:0 0 auto!important;padding:3px 8px!important}
  .cjs-disclosure label{font-size:9px!important;line-height:1.2!important}
  .cjs-feedback{flex:0 0 auto!important;font-size:10px!important;line-height:16px!important;min-height:16px!important}
  .cjs.cjs-show-layers .cjs-right{display:block!important;position:absolute!important;z-index:12!important;grid-column:auto!important;grid-row:auto!important;right:0!important;top:0!important;bottom:57px!important;width:min(330px,88vw)!important;overflow-y:auto!important;background:#fff!important;box-shadow:-10px 0 40px #0003!important}
}
@media(max-width:360px){.cjs h2{font-size:17px!important}.cjs-header{flex-basis:64px!important;min-height:64px!important}.cjs-title p{display:none!important}.cjs-view{width:min(100vw,calc(100dvh - 220px))!important;height:min(100vw,calc(100dvh - 220px))!important}.cjs-rail button{min-width:61px!important}.cjs-template-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* v3.4 - True scrolling mobile app layout. No panels over the jumper or cart bar. */
@media (max-width:620px) {
 .cjs{height:100dvh!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain!important;display:flex!important;flex-direction:column!important;scrollbar-width:thin!important;scroll-padding-top:52px!important}
 .cjs-brandbar{position:sticky!important;top:0!important;z-index:20!important;flex:0 0 40px!important;min-height:40px!important;max-width:100vw!important}
 .cjs-brand{min-width:0!important;max-width:calc(100% - 55px)!important;overflow:hidden!important}
 .cjs-brand-text strong{font-size:17px!important;white-space:nowrap!important}
 .cjs-brand-text small{display:none!important}
 .cjs-header{position:relative!important;z-index:2!important;min-height:64px!important;flex:0 0 auto!important;padding:8px 12px!important;gap:5px!important}
 .cjs-tree{display:none!important}
 .cjs-title{min-width:0!important;flex:1!important}
 .cjs-title>div{min-width:0!important}
 .cjs h2{font-size:clamp(18px,5.4vw,22px)!important;line-height:1.08!important;letter-spacing:-.4px!important;margin:0!important}
 .cjs-title p{font-size:10px!important;line-height:1.35!important;max-height:28px!important}
 .cjs-header-actions{flex:none!important;gap:4px!important}
 .cjs-preview-btn{min-width:65px!important;font-size:11px!important;margin:0!important;padding:7px 3px!important;min-height:36px!important;white-space:nowrap!important}
 .cjs-workspace{display:flex!important;flex-direction:column!important;flex:0 0 auto!important;min-height:0!important;height:auto!important;overflow:visible!important;gap:0!important;position:relative!important;background:#fff!important}
 .cjs-rail{order:0!important;position:relative!important;z-index:2!important;flex:0 0 auto!important;display:flex!important;flex-direction:row!important;align-items:stretch!important;overflow-x:auto!important;overflow-y:hidden!important;gap:5px!important;padding:6px 8px!important;width:100%!important;min-height:60px!important;max-height:60px!important;border-bottom:1px solid #eae6f0!important;background:#fff!important}
 .cjs-rail button{flex:1 0 60px!important;min-width:60px!important;max-width:105px!important;min-height:46px!important;border-radius:11px!important;padding:4px 5px!important;font-size:11px!important}
 .cjs-rail-icon{font-size:19px!important}
 .cjs-garment-side{order:1!important;position:relative!important;display:flex!important;flex-direction:column!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;min-height:0!important;height:auto!important;width:100%!important;padding:18px 0 6px!important;overflow:visible!important}
 .cjs-stage-top{top:3px!important;left:7px!important;right:7px!important}
 .cjs-stage-badge{font-size:9px!important;padding:4px 5px!important;letter-spacing:0!important}
 .cjs-smallbtn{font-size:10px!important;padding:5px 7px!important}
 .cjs-view{width:min(100%,490px)!important;height:auto!important;min-height:0!important;max-width:none!important;aspect-ratio:1 / 1!important;margin:0 auto!important;touch-action:pan-y!important;overflow:hidden!important;position:relative!important}
 .cjs-jumper-inner{transform:scale(1.02)!important;transform-origin:50% 48%!important}
 .cjs.is-zoom .cjs-jumper-inner{transform:scale(1.13)!important}
 .cjs.is-preview .cjs-jumper-inner{transform:scale(1.0)!important}
 .cjs-print-rect canvas{touch-action:none!important}
 .cjs-side:not(.cjs-right),.cjs.cjs-mobile-panel-open .cjs-side:not(.cjs-right){position:relative!important;order:2!important;z-index:3!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;width:100%!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;border:0!important;border-top:2px solid #a454ec!important;border-radius:0!important;box-shadow:none!important;padding:12px 12px 18px!important;background:#fff!important;margin:0!important}
 .cjs-side:not(.cjs-right){display:none!important}
 .cjs.cjs-mobile-panel-open .cjs-side:not(.cjs-right){display:block!important}
 .cjs-mobile-close{float:right!important;position:relative!important;top:0!important;z-index:4!important}
 .cjs-category-filter{gap:5px!important;max-width:100%!important}
 .cjs-category-filter button{min-width:0!important;padding:5px 8px!important;font-size:11px!important}
 .cjs-template-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;max-width:100%!important}
 .cjs-template{min-width:0!important;min-height:120px!important}
 .cjs-template-preview{height:90px!important}
 .cjs-template-preview img{height:100%!important;width:100%!important}
 .cjs-graphics{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
 .cjs-graphic{min-height:104px!important}
 .cjs-right{display:none!important}
 .cjs.cjs-show-layers .cjs-right{display:block!important;position:fixed!important;inset:46px 0 0 auto!important;height:auto!important;max-height:calc(100dvh - 46px)!important;width:min(360px,94vw)!important;z-index:40!important;box-shadow:-12px 0 28px #0003!important;overflow-y:auto!important}
 .cjs-orderbar{position:relative!important;z-index:1!important;display:flex!important;flex-direction:column!important;flex:0 0 auto!important;gap:8px!important;margin:0!important;padding:12px 10px!important;max-width:100%!important;width:100%!important;min-height:0!important;border-top:1px solid #e7e2ed!important;box-shadow:none!important}
 .cjs-sizes{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:7px!important;width:100%!important;max-width:100%!important}
 .cjs-size-label{font-size:12px!important}
 .cjs-size-groups{display:flex!important;gap:6px!important}
 .cjs-size-group{padding:7px 11px!important;font-size:11px!important;min-height:34px!important}
 .cjs-size-pills{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;width:100%!important;gap:5px!important;overflow:visible!important;padding:3px 0!important}
 .cjs-size-pills button{min-width:0!important;min-height:33px!important;flex:1 1 40px!important;padding:6px 4px!important;font-size:11px!important}
 .cjs-order-right{display:flex!important;width:100%!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
 .cjs-order-price strong{font-size:25px!important}
 .cjs-order-price small{font-size:10px!important}
 .cjs-woo-slot{flex:0 1 auto!important;min-width:0!important}
 .cjs-woo-slot button.single_add_to_cart_button{min-width:120px!important;font-size:12px!important;padding:10px 12px!important;min-height:41px!important}
 .cjs-woo-slot .quantity input.qty{min-height:41px!important;width:48px!important}
 .cjs-disclosure{flex:0 0 auto!important;padding:7px 12px!important}
 .cjs-disclosure label{font-size:11px!important;line-height:1.4!important}
 .cjs-feedback{flex:0 0 auto!important;min-height:26px!important;line-height:1.4!important;font-size:11px!important;padding:5px 10px!important}
}
@media (max-width:359px){
 .cjs h2{font-size:17px!important}
 .cjs-title p{display:none!important}
 .cjs-view{width:100%!important;height:auto!important}
 .cjs-template-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .cjs-rail button{min-width:58px!important;flex-basis:58px!important}
 .cjs-size-pills button{font-size:10px!important;flex-basis:36px!important}
}

/* Studio 3.5: truly dismissible mobile tool panels and compact ordering drawer. */
.cjs-mobile-panel-top,.cjs-mobile-order-toggle{display:none!important}
@media(max-width:620px){
 .cjs-mobile-panel-top{display:flex!important;align-items:center!important;justify-content:space-between!important;position:sticky!important;top:0!important;z-index:25!important;padding:8px 10px!important;margin:-12px -12px 10px!important;background:#fff!important;border-bottom:1px solid #e7dff0!important;min-height:50px!important}
 .cjs-mobile-panel-top strong{font-size:15px!important;font-weight:800!important;color:#24152c!important;letter-spacing:0!important}
 .cjs-mobile-panel-top button{touch-action:manipulation!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;min-width:118px!important;border-radius:10px!important;background:#6421b2!important;border:0!important;color:#fff!important;font-size:13px!important;font-weight:800!important;line-height:1.25!important;cursor:pointer!important;padding:8px 13px!important}
 .cjs-mobile-order-toggle{display:flex!important;align-items:center!important;gap:10px!important;width:100%!important;min-height:49px!important;background:#fff!important;color:#231d2c!important;padding:9px 12px!important;border:1px solid #ded7e6!important;border-radius:12px!important;cursor:pointer!important;touch-action:manipulation!important;text-align:left!important}
 .cjs-mobile-order-toggle strong{font-size:21px!important;line-height:1!important;color:#6b1dc1!important;font-weight:900!important;white-space:nowrap!important}
 .cjs-mobile-order-toggle span{flex:1!important;font-size:13px!important;font-weight:750!important;white-space:normal!important}
 .cjs-mobile-order-toggle b{font-size:23px!important;color:#6b1dc1!important}
 .cjs:not(.cjs-order-open) .cjs-orderbar .cjs-sizes,.cjs:not(.cjs-order-open) .cjs-orderbar .cjs-order-right,.cjs:not(.cjs-order-open) .cjs-disclosure{display:none!important}
 .cjs.cjs-order-open .cjs-orderbar .cjs-sizes,.cjs.cjs-order-open .cjs-orderbar .cjs-order-right{display:flex!important}
 .cjs-orderbar{padding:6px 9px!important}
 .cjs.cjs-mobile-panel-open .cjs-side:not(.cjs-right){display:block!important}
 .cjs:not(.cjs-mobile-panel-open) .cjs-side:not(.cjs-right){display:none!important}
 .cjs .cjs-template-list{max-height:none!important}
}
