/* Interior collar detail uses the same front mockup and a calibrated crop. */
.photo-mockup.side-mirror{transform:scaleX(-1)}
.collar-crop{position:relative;width:100%;height:100%;overflow:hidden;isolation:isolate;border-radius:10px}
.collar-crop>.photo-mockup{position:absolute;width:var(--collar-scale,600%);height:var(--collar-scale,600%);left:var(--collar-left,-250%);top:var(--collar-top,-4%);margin:0}
.collar-crop .photo-mockup img{width:100%;height:100%;max-width:none;object-fit:contain}
/* One viewport for the editor; only the property panels scroll. */
html,body{height:100%;min-height:0}body{height:100dvh;overflow:hidden;display:grid;grid-template-rows:58px 42px minmax(0,1fr) 72px}header{height:58px;padding:0 26px;min-width:0}header .brand{font-size:28px}.project-bar{height:42px;min-height:0;padding:5px 26px}.project-bar-actions button{padding:6px 11px}.workspace{min-height:0;height:100%;grid-template-columns:72px 265px minmax(0,1fr) 292px;overflow:hidden;position:relative}.tool-rail{min-height:0;overflow-y:auto;padding:15px 6px 10px;gap:5px}.tool-rail button{min-height:59px;width:58px}.rail-bottom{padding-top:16px}.panel{height:100%;min-height:0;overflow:hidden;padding:24px 20px 0}.panel-heading{position:relative;flex-shrink:0}.panel-heading h1{font-size:22px;margin:10px 0 20px}.panel #panelContent{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:2px 4px 14px 1px;flex:1;scrollbar-width:thin;scrollbar-color:#c4cbbb transparent}.panel-foot{flex-shrink:0;padding:13px 0;margin-top:12px}.details{display:block;height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 19px;scrollbar-width:thin;scrollbar-color:#c4cbbb transparent}.details .secure-note{display:none}.details h2{margin-top:15px}.details .print-settings{display:block}.details .selection-controls{display:block}.exact-grid{grid-template-columns:1fr 1fr}.details #imageActions{grid-template-columns:1fr 1fr}.details #imageActions button:first-child{grid-column:1/3}.canvas-section{display:grid;grid-template-rows:35px minmax(0,1fr) 54px 27px;min-height:0;height:100%;overflow:hidden;align-items:center;justify-items:center;position:relative}.canvas-top{grid-row:1;align-self:stretch;padding:8px 22px;min-width:0}.canvas-top>div:first-child{min-width:0}.canvas-top #saveStatus{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.canvas-title{display:none}.canvas-section>.garment-wrap{grid-row:2;margin:0;width:min(calc(100dvh - 288px),calc(100vw - 665px),740px);height:auto;aspect-ratio:1;max-width:97%;align-self:center}.canvas-bottom{grid-row:3;width:100%;margin:0;padding:5px 18px;display:flex;flex-wrap:nowrap!important;gap:8px;align-self:center}.canvas-bottom .side-switch{width:auto;flex:1;flex-wrap:nowrap;min-width:0}.side-switch button{font-size:8px;padding:8px 6px;white-space:nowrap;min-width:0}.canvas-bottom .zoom{margin:0;gap:5px;flex-shrink:0}.canvas-bottom .preview-btn{margin:0;flex-shrink:0;padding:10px 8px}.canvas-note{grid-row:4;margin:0;padding:0 9px;font-size:8px;line-height:1.4;max-width:100%;align-self:start}.studio-footer{display:flex;gap:20px;align-items:center;padding:10px 22px;border-top:1px solid var(--line);background:#fff;min-width:0;z-index:5}.studio-footer .variants-bar{padding:0;border:0;background:none;min-width:0;flex:1}.studio-footer .variants-bar>button{font-size:9px;padding:10px}.studio-footer .variant-tab{font-size:9px;max-width:205px}.studio-footer .price-block{padding:0;margin:0;border:0;flex-shrink:0;max-width:230px}.studio-footer .price-block strong{font-size:21px;margin:0}.studio-footer .price-block small{font-size:8px;max-width:200px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.studio-footer .price-symbol{display:none}.studio-footer>.primary{width:210px;flex-shrink:0;padding:17px;font-size:11px}.drawer-close,.adjust-toggle{display:none}.review-mode{grid-template-rows:58px 42px minmax(0,1fr)}.review-mode .studio-footer{display:none}.review-view{height:100%;min-height:0;max-width:1200px;width:100%;overflow-y:auto;padding:30px;scrollbar-width:thin}.review-view .variant-review .review-preview{position:static}.review-view .garment-wrap{height:auto;width:min(430px,100%)}.review-view .review-preview{overflow:hidden}.modal{z-index:60}.modal-card{max-height:calc(100dvh - 40px)}.toast{z-index:100}.panel .attachment-section{margin-top:17px;padding-top:14px}.panel .upload-box{padding:22px 12px}.panel .upload-box>span{font-size:30px}.panel .panel-tip{margin-top:16px}.panel .art-tile{min-height:105px}.panel .art-tile .art-symbol{height:56px}.tool-rail button:hover{background:#f3f4ec}
/* Selection chrome is separate from the clipped printable artwork. */
#printArea{overflow:visible!important}#artLayer{overflow:hidden}.design-item.selected{outline:none!important}.transform-box{position:absolute;z-index:12;pointer-events:none;border:1px solid #2677e9;transform-origin:center;box-sizing:border-box;touch-action:none}.transform-handle{position:absolute;pointer-events:auto;padding:0;touch-action:none;user-select:none;z-index:2;display:grid;place-items:center;min-width:0;min-height:0;box-sizing:border-box}.size-handle{width:13px;height:13px;border:2px solid #2677e9;background:#fff;border-radius:2px}.size-handle.se{right:0;bottom:0;transform:translate(50%,50%);cursor:nwse-resize}.size-handle.nw{left:0;top:0;transform:translate(-50%,-50%);cursor:nwse-resize}.size-handle.sw{left:0;bottom:0;transform:translate(-50%,50%);cursor:nesw-resize}.rotate-handle{width:15px;height:15px;left:50%;top:-27px;transform:translate(-50%,-50%);border:2px solid #2677e9;background:#fff;border-radius:50%;cursor:grab}.rotation-stem{position:absolute;left:50%;top:-27px;height:27px;width:1px;background:#2677e9}.object-delete{width:21px;height:21px;border:0;border-radius:50%;background:#eb5757;color:#fff;font:18px/1 Arial,sans-serif;right:0;top:0;transform:translate(50%,-50%);cursor:pointer}.object-measure{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);color:white;background:#273043;padding:4px 6px;border-radius:4px;font:9px/1.3 'DM Sans',sans-serif;letter-spacing:0;white-space:nowrap;pointer-events:none}.object-angle{position:absolute;left:50%;bottom:calc(100% + 40px);transform:translateX(-50%);background:#fff;color:#296cd0;font:10px/1 'DM Sans',sans-serif;border:1px solid #c8d9f4;border-radius:4px;padding:4px 6px;display:none;white-space:nowrap}.is-rotating .object-angle{display:block}.transform-handle:focus-visible{outline:3px solid #a9c9ff;outline-offset:4px}.transform-handle:before{content:'';position:absolute;inset:-7px}.manipulating,.manipulating *{user-select:none!important}.manipulating .design-item,.manipulating .rotate-handle{cursor:grabbing}.context-surface{pointer-events:none}.guides-off .transform-box{opacity:1}
@media(min-width:1600px){.workspace{grid-template-columns:78px 300px minmax(0,1fr) 310px}.canvas-section>.garment-wrap{width:min(calc(100dvh - 284px),calc(100vw - 720px),800px)}.canvas-bottom{padding-left:25px;padding-right:25px}.panel{padding:25px 24px 0}}
@media(max-width:1150px) and (min-width:901px){.workspace{grid-template-columns:62px 225px minmax(0,1fr) 250px}.tool-rail button{width:50px}.panel{padding:20px 15px 0}.details{padding:20px 13px}.canvas-section>.garment-wrap{width:min(calc(100dvh - 280px),calc(100vw - 555px))}.canvas-bottom .zoom{display:none}.canvas-bottom{gap:5px;padding:5px 10px;flex-wrap:wrap!important}.canvas-bottom .preview-btn{font-size:9px}.side-switch button{font-size:7px;padding:8px 4px}.studio-footer{gap:13px;padding:10px 15px}.studio-footer>.primary{width:175px}.studio-footer .price-block{max-width:150px}.studio-footer .price-block small{max-width:150px}.panel-heading h1{font-size:20px}.canvas-note{font-size:7px}}
@media(max-width:900px){body{grid-template-rows:52px 38px minmax(0,1fr) 72px}header{height:52px;padding:0 17px}header .brand{font-size:25px}.project-bar{height:38px;padding:3px 15px}.project-bar input{width:min(240px,36vw);font-size:11px}.project-bar-actions button{font-size:9px;padding:6px 8px}.workspace{display:grid;grid-template-columns:60px minmax(0,1fr)}.tool-rail{height:100%;grid-column:1;grid-row:1;flex-direction:column;justify-content:flex-start;padding:12px 4px;gap:5px;border-right:1px solid var(--line);border-bottom:0}.tool-rail button{width:51px;min-height:56px;font-size:8px}.tool-rail button>span{font-size:22px}.rail-bottom{display:block;margin-top:auto;padding-top:10px}.rail-bottom button:last-child{display:flex}.canvas-section{grid-column:2;grid-row:1;min-height:0;grid-template-rows:33px minmax(0,1fr) 76px 27px}.canvas-section>.garment-wrap{width:min(calc(100dvh - 310px),calc(100vw - 80px),700px);max-width:97%;margin:0}.canvas-top{padding:7px 10px;font-size:8px}.canvas-top .history{gap:0}.canvas-top .history button{width:22px;font-size:18px}.canvas-bottom{padding:3px 12px!important;flex-wrap:wrap!important;justify-content:center;gap:5px}.canvas-bottom .side-switch{flex:0 0 100%;width:100%;padding:3px}.side-switch button{font-size:8px;padding:8px 5px;flex:1}.canvas-bottom .preview-btn{padding:8px 12px;font-size:10px;margin:0}.canvas-bottom .zoom{display:none}.adjust-toggle{display:block;border:1px solid #ced8c1;background:#fff;padding:8px 13px;font-size:10px;border-radius:5px}.canvas-note{font-size:7px;padding:0 12px;align-self:center}.panel{display:none;position:absolute;left:60px;top:0;bottom:0;width:min(320px,calc(100% - 60px));height:100%;z-index:30;box-shadow:12px 0 30px #23351b24;padding:22px 18px 0;grid-column:auto}.tools-open .panel{display:flex}.panel-heading{padding-right:26px}.panel-heading h1{font-size:21px}.panel-heading .eyebrow{font-size:8px}.panel .art-grid{grid-template-columns:1fr 1fr}.panel .art-tile{min-height:105px}.panel .art-tile .art-symbol{font-size:45px}.panel .art-tile small{font-size:9px}.panel .text-form{display:block}.panel .text-form label{font-size:10px}.details{display:none;position:absolute;right:0;top:0;bottom:0;width:min(320px,calc(100% - 25px));height:100%;z-index:30;background:#fff;box-shadow:-10px 0 30px #23351b24;padding:20px;grid-column:auto}.details-open .details{display:block}.drawer-close{display:block;position:absolute;right:-1px;top:-8px;color:#7d8c6c;font-size:27px;line-height:1;padding:6px}.detail-heading{position:relative;padding-right:26px}.detail-heading .drawer-close{right:-8px;top:-10px}.details .detail-heading .eyebrow{font-size:8px}.details h2{font-size:18px}.details .label-row h3{font-size:11px}.details .exact-grid{grid-template-columns:1fr 1fr}.details .exact-grid input{font-size:12px;padding:9px}.details .edit-actions button,.details #imageActions button{font-size:10px;padding:10px}.details .product-desc{font-size:10px}.details .swatches{margin-bottom:15px}.studio-footer{display:grid;grid-template-columns:minmax(0,1fr) 128px;grid-template-rows:32px 24px;padding:8px 12px;gap:0 12px}.studio-footer .variants-bar{grid-column:1;grid-row:1;width:100%;gap:5px}.studio-footer .variants-bar>button{font-size:8px;padding:7px}.studio-footer .variant-tab{font-size:8px;padding:7px;max-width:160px}.studio-footer .price-block{grid-column:1;grid-row:2;max-width:none;width:100%;display:block}.studio-footer .price-block>div{display:flex;align-items:baseline;gap:8px}.studio-footer .price-block>div>span{font-size:8px}.studio-footer .price-block strong{font-size:16px}.studio-footer .price-block small{display:none}.studio-footer>.primary{grid-column:2;grid-row:1/3;width:100%;height:46px;align-self:center;font-size:10px;padding:13px}.studio-footer>.primary span{font-size:15px}.review-mode{grid-template-rows:52px 38px minmax(0,1fr)}.review-view{padding:24px 20px}.review-grid{grid-template-columns:1fr}.review-title{font-size:28px}.review-view .garment-wrap{width:min(330px,100%)}.modal-card{max-height:calc(100dvh - 24px)}.size-handle{width:16px;height:16px}.rotate-handle{width:18px;height:18px;top:-29px}.rotation-stem{top:-29px;height:29px}.object-delete{width:24px;height:24px;font-size:20px}.object-measure{font-size:9px}.object-angle{bottom:calc(100% + 44px)}}
@media(max-width:480px){header .steps{gap:7px}header .steps>span{width:10px}header .steps button{font-size:0;gap:0}header .steps i{font-size:10px;width:22px;height:22px}.project-bar label{font-size:6px;gap:6px}.project-bar input{width:130px;font-size:10px}.project-bar-actions{gap:4px}.project-bar-actions button{font-size:8px;padding:6px}.canvas-section>.garment-wrap{width:min(calc(100dvh - 310px),calc(100vw - 76px))}.studio-footer{grid-template-columns:minmax(0,1fr) 114px;gap:0 8px}.studio-footer .variants-bar #addVariant{font-size:0;width:28px;height:28px;position:relative}.studio-footer .variants-bar #addVariant:after{content:'+';font-size:19px;position:absolute;inset:0;display:grid;place-items:center}.studio-footer .variants-bar #removeVariant{width:24px;height:28px;padding:0;font-size:15px}.studio-footer .variant-tab{max-width:140px}.studio-footer .price-block>div>span{font-size:7px}.studio-footer .price-block strong{font-size:14px}.side-switch button{font-size:7px;padding:8px 3px}.tool-rail .rail-bottom button:last-child{display:none}.toast{bottom:83px}}
@media(max-height:620px) and (min-width:901px){body{grid-template-rows:48px 34px minmax(0,1fr) 60px}header{height:48px}.project-bar{height:34px}.studio-footer{padding-top:7px;padding-bottom:7px}.studio-footer>.primary{padding:14px}.canvas-section{grid-template-rows:29px minmax(0,1fr) 45px 20px}.canvas-section>.garment-wrap{width:min(calc(100dvh - 245px),calc(100vw - 665px))}.panel{padding-top:16px}.panel-heading h1{font-size:19px;margin-bottom:14px}.panel-foot{padding:8px 0;margin-top:7px}.review-mode{grid-template-rows:48px 34px minmax(0,1fr)}}
