@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#f5f7fa;--panel:#fff;--ink:#182637;--muted:#7b899c;--line:#e4eaf0;--soft:#f7f9fb;--orange:#ee7652;--peach:#fff0e7;--teal:#24988c;--shadow:0 4px 18px #20304504}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:13px 'DM Sans',system-ui,sans-serif}body.dark{--bg:#0e191e;--panel:#15242b;--ink:#edf4f5;--muted:#8fa8b3;--line:#2a3d46;--soft:#1a2c34;--peach:#3c2b25}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:9px;padding:10px 14px;font-weight:600;transition:.18s}button:hover{border-color:#ee9e7e;transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed;transform:none}button:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid #2aa79c;outline-offset:3px}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:var(--panel);border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink);font:800 23px Manrope,system-ui;letter-spacing:-1px}.brandmark{width:44px;height:44px;background:linear-gradient(135deg,#f46749,#f4bd72);border-radius:13px;color:white;display:grid;place-content:center;font-size:29px;position:relative;letter-spacing:-4px;padding-right:9px}.brandmark span{position:absolute;left:22px;top:8px;color:#fff9;font-size:25px}.brand small{display:block;font:600 8px 'DM Sans',sans-serif;letter-spacing:2.2px;margin-top:5px;color:var(--muted)}.orange{color:var(--orange)}.headright{display:flex;gap:12px;align-items:center}.privacy{font-size:11px;color:var(--teal);display:flex;align-items:center;gap:7px}.privacy i,.live i,.statusdot{width:6px;height:6px;border-radius:50%;background:var(--teal);display:inline-block}.build{font-size:9px;letter-spacing:1px;color:var(--muted);border:1px solid var(--line);padding:8px;border-radius:5px}.profile{display:flex;align-items:center;gap:9px;padding:6px 10px}.avatar{border-radius:50%;background:var(--peach);color:var(--orange);font-size:10px;padding:8px}.welcome{padding:25px 30px 23px;display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:9px;font-weight:700;letter-spacing:1.5px;color:var(--muted)}.welcome .eyebrow{color:var(--teal)}h1{font:800 27px Manrope,system-ui;letter-spacing:-1px;margin:6px 0 0}h1 span{font-weight:500;color:var(--muted)}.welcome p{line-height:1.7;color:var(--muted);margin:0;font-size:12px}nav{display:flex;gap:7px;padding:0 28px 20px;overflow-x:auto;scrollbar-width:thin}nav button{white-space:nowrap;display:flex;align-items:center;gap:10px;padding:12px 15px;border-radius:11px;font-size:12px}nav button .ico{font-size:17px;color:var(--orange)}nav button.active{background:linear-gradient(115deg,#ef7755,#f1b972);border-color:transparent;color:#2a271f;box-shadow:0 4px 10px #e77a5222}nav button.active .ico{color:#523421}main{display:grid;grid-template-columns:258px minmax(320px,1fr) 288px;gap:15px;padding:0 24px 92px;min-height:calc(100vh - 245px)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.panelhead{display:flex;align-items:center;justify-content:space-between;padding:20px 18px 16px}h2{font:800 14px Manrope,system-ui;margin:5px 0 0}.count{font:600 10px 'DM Sans';padding:3px 6px;background:var(--soft);border-radius:5px;color:var(--muted);margin-left:4px}.peach{background:var(--peach);color:var(--orange);border-color:transparent;padding:7px 11px}.left{display:flex;flex-direction:column}.field{padding:15px 18px;border-top:1px solid var(--line)}label{display:block;font-size:11px;font-weight:600;margin:0 0 8px;color:var(--ink)}select,input:not([type=range]):not([type=checkbox]),textarea{border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);padding:10px;width:100%;min-width:0}select{font-size:12px}#drop{margin:7px 16px 15px;border:1.5px dashed #b8d7d2;border-radius:12px;background:linear-gradient(150deg,var(--soft),var(--panel));padding:26px 10px;text-align:center;cursor:pointer}#drop.drag{background:var(--peach);border-color:var(--orange)}.uploadicon{width:42px;height:42px;margin:0 auto 13px;background:var(--peach);border:1px solid #f7c9b7;color:var(--orange);border-radius:12px;font-size:28px}#drop strong{font-size:12px}#drop p{font-size:11px;color:var(--muted);margin:5px 0 14px}#drop small{font-size:9px;color:var(--muted)}#queue{padding:0 12px;max-height:380px;overflow:auto}.file{display:flex;gap:9px;align-items:center;margin-bottom:8px;padding:9px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.file.selected{border-color:var(--orange);background:var(--peach)}.file img{width:35px;height:43px;object-fit:contain;background:white;border-radius:4px}.file .info{min-width:0;flex:1}.file strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.file small{font-size:9px;color:var(--muted)}.file button{padding:4px;border:0;background:transparent;color:var(--muted)}.leftbottom{margin-top:auto;padding:24px 20px;color:var(--muted);font-size:10px}.leftbottom span{color:var(--teal)}.leftbottom p{line-height:1.6}.textbutton{border:0;background:transparent;color:var(--orange);padding:7px 0;font-size:11px}.editorbar{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.editoractions{display:flex;gap:6px}.editoractions button{font-size:10px;padding:7px 9px}.hint{padding:10px 18px;color:var(--muted);font-size:10px;background:var(--soft);border-bottom:1px solid var(--line)}#stage{min-height:420px;display:flex;align-items:center;justify-content:center;padding:22px;background-color:var(--soft);background-image:radial-gradient(var(--line) .8px,transparent .8px);background-size:16px 16px;position:relative;overflow:hidden}#empty{text-align:center;padding:18px 10px 25px}#empty h3{font:800 25px Manrope;letter-spacing:-.7px;line-height:1.25;margin:20px 0 10px}#empty p{font-size:12px;line-height:1.7;color:var(--muted);margin-bottom:23px}#empty button{display:block;margin:9px auto}.emptyart{height:139px;width:190px;position:relative;margin:auto}.mini-card{position:absolute;border-radius:10px;border:1px solid #dedfe4;width:108px;height:137px;background:white;box-shadow:0 10px 20px #20304512;top:0}.mini-card.back{transform:rotate(-13deg);left:26px;background:linear-gradient(135deg,#f9dbc5,#e5e8dd);top:5px}.mini-card.front{transform:rotate(8deg);left:65px;padding:12px 9px}.mini-card svg{display:block;background:#e9f2ef;margin:auto;width:80px;height:90px;border-radius:4px}.mini-card b{display:block;font-size:5px;letter-spacing:.4px;color:#829089;margin-top:9px}.spark{position:absolute;color:var(--orange);font-size:28px;right:0;top:-12px}.primary{background:linear-gradient(110deg,#ee7854,#f2b96f);color:#34291e;border-color:transparent;box-shadow:0 4px 8px #ed875425;padding:12px 22px}.primary span{margin-left:18px}#editor{max-width:100%;max-height:560px;touch-action:none;box-shadow:0 7px 26px #20304515}canvas[hidden]{display:none!important}.stagefoot{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:var(--muted);padding:13px 18px;border-top:1px solid var(--line)}.live{font-size:8px;color:var(--teal);letter-spacing:1px;display:flex;gap:5px;align-items:center}#previewWrap{margin:0 15px 16px;background:repeating-conic-gradient(var(--soft) 0% 25%,var(--panel) 0% 50%) 50%/16px 16px;border:1px solid var(--line);min-height:180px;border-radius:12px;display:flex;align-items:center;justify-content:center;padding:20px}#preview{max-height:220px;max-width:100%;object-fit:contain;box-shadow:0 4px 14px #20304520}#previewEmpty{text-align:center;color:var(--muted);font-size:11px;line-height:1.6}#previewEmpty span{font-size:36px;color:#c5d2d7}.setting{padding:14px 17px;border-top:1px solid var(--line)}.setting h3{font-size:11px;margin:0 0 11px;display:flex;align-items:center;justify-content:space-between}.setting small,.note{font-size:10px;color:var(--muted);line-height:1.6;display:block}.setting button.full{width:100%;margin:4px 0 9px;background:var(--peach);color:var(--orange);border-color:#f3c6b2}.swatches{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 0}.swatches button{padding:0;width:24px;height:24px;border:1px solid #bbc6cf;border-radius:7px}.swatches button.chosen{outline:2px solid var(--teal);outline-offset:2px}.slideline{display:flex;justify-content:space-between;font-size:10px;margin-top:11px}input[type=range]{width:100%;accent-color:var(--orange);margin:8px 0 2px}input[type=checkbox]{accent-color:var(--teal)}.row{display:flex;gap:9px}.row>*{flex:1;min-width:0}.compact{font-size:10px!important}footer{position:fixed;bottom:0;left:0;width:100%;background:var(--panel);border-top:1px solid var(--line);padding:15px 27px;display:flex;align-items:center;justify-content:space-between;z-index:5;gap:20px}footer>div:first-child{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--muted)}.footeractions{display:flex;gap:10px}.footeractions button{min-width:130px}.small{font-size:10px;padding:8px}#toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:#203343;color:white;padding:13px 22px;border-radius:10px;box-shadow:0 8px 28px #0002;z-index:30;max-width:90vw;display:none;line-height:1.5}dialog{border:1px solid var(--line);border-radius:20px;max-width:95vw;width:780px;background:var(--panel);color:var(--ink);padding:0;max-height:90vh}dialog::backdrop{background:#17253199;backdrop-filter:blur(5px)}.modalhead{padding:22px 25px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.modalhead h2{font-size:18px;margin:0}.modalbody{padding:24px}.modalfoot{border-top:1px solid var(--line);padding:18px 25px;display:flex;justify-content:flex-end;gap:9px}.modalbody p{color:var(--muted);line-height:1.7}.printgrid{display:grid;grid-template-columns:225px 1fr;gap:24px}.printgrid label{margin-top:13px}#sheetPreview{width:100%;max-height:460px;object-fit:contain;background:var(--soft)}.badge{display:inline-block;background:var(--peach);color:var(--orange);padding:5px 8px;font-size:9px;border-radius:5px}.warning{padding:10px;background:var(--peach);color:var(--orange)!important;border-radius:8px;font-size:11px}.cvgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}#cvForm{width:100%;max-width:600px}.progress{height:5px;background:var(--line);border-radius:3px;overflow:hidden;margin:8px 0}.progress>div{height:100%;background:var(--teal)}
@media(min-width:1550px){main{grid-template-columns:290px minmax(500px,1fr) 330px}#stage{min-height:530px}#previewWrap{min-height:240px}}@media(max-width:1100px){.privacy,.build{display:none}main{grid-template-columns:220px minmax(280px,1fr) 245px;padding-left:14px;padding-right:14px;gap:10px}.welcome{padding:20px}.editorbar{padding:16px 12px}.editoractions button{padding:5px}nav{padding-left:16px}.stagefoot span:last-child{display:none}}@media(max-width:850px){main{grid-template-columns:190px 1fr}.right{grid-column:1/-1;display:grid;grid-template-columns:240px 1fr}.right .panelhead{grid-column:1/-1}.right #settings{display:grid;grid-template-columns:1fr 1fr}.headright #shopLabel{display:none}.welcome p{display:none}h1{font-size:24px}header{padding:0 16px;height:72px}.brand{font-size:19px}.brand small{font-size:6px}#stage{min-height:370px}.printgrid{grid-template-columns:200px 1fr}}@media(max-width:560px){.brand small{display:none}.brandmark{width:35px;height:35px}.brandmark span{top:4px;left:18px}.headright{gap:5px}.profile{display:none}main{display:flex;flex-direction:column}.left #drop{padding:12px}.left #drop .uploadicon,.leftbottom{display:none}#queue{display:flex;gap:8px;overflow-x:auto;max-height:140px}.file{min-width:165px}.left .panelhead{padding:13px 16px}.field{padding:10px 16px}.right{display:block}.right #settings{display:block}.welcome{padding:18px}.welcome h1{font-size:22px}nav{padding-bottom:15px}nav button{font-size:11px;padding:10px 12px}#stage{min-height:330px;padding:15px}footer{padding:12px}footer>div:first-child{display:none}.footeractions{width:100%}.footeractions button{flex:1}.printgrid{grid-template-columns:1fr}#sheetPreview{max-height:300px}.cvgrid{grid-template-columns:1fr}.brand{font-size:17px}.stagefoot{font-size:8px}}
/* Studio 0.2 — fit the working tools into the viewport */
@media(min-width:1000px){body{height:100dvh;overflow:hidden}header{height:65px;padding:0 22px}.welcome{display:none}nav{padding:13px 20px;flex-shrink:0;height:67px}main{height:calc(100dvh - 207px);min-height:0;padding:0 18px 10px;grid-template-columns:265px minmax(320px,1fr) 325px;gap:12px}.panel{min-height:0}.left,.right{overflow-y:auto;scrollbar-width:thin}.middle{display:flex;flex-direction:column}.editorbar{padding:13px 16px;flex-shrink:0}#stage{flex:1;min-height:0;padding:18px}#editor{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain}#previewWrap{min-height:210px;margin-bottom:12px}#preview{max-height:265px}.stagefoot{flex-shrink:0}footer{height:75px}.leftbottom{padding:15px 18px}#drop{padding:16px 10px}#queue{flex-shrink:0;max-height:260px}h2{font-size:15px}.setting h3{font-size:12px}.setting{padding:15px 18px}.slideline{font-size:11px}.brand small{font-size:7px}}
.toolcontrols{display:flex;gap:6px;flex-wrap:wrap;padding:10px 15px;background:var(--panel);border-bottom:1px solid var(--line);align-items:center}.toolcontrols button{padding:7px 10px;font-size:11px}.toolcontrols button.active{background:var(--peach);border-color:var(--orange);color:var(--orange)}.toolcontrols input{width:72px!important;margin:0}.toolcontrols small{font-size:10px;color:var(--muted)}.swatches button{width:29px;height:29px}.bgselect{margin-bottom:10px}.qualitytag{display:block;color:var(--teal);font-size:10px;margin:7px 0}.layoutTabs{display:grid;grid-template-columns:repeat(3,1fr);padding:5px;background:var(--soft);border:1px solid var(--line);border-radius:11px;gap:4px;margin-bottom:18px}.layoutTabs button{padding:12px 5px;border:0;background:transparent;font-size:11px}.layoutTabs button.active{background:var(--teal);color:white}.layoutTabs small{display:block;margin-top:5px;font-size:9px;opacity:.8}.quickcopies{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.quickcopies button{text-align:left;font-size:11px;padding:12px}.quickcopies button.active{border-color:var(--teal);background:#25998b15}.quickcopies small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.sheetcount{display:flex;gap:10px;align-items:center}.sheetcount input{max-width:70px;text-align:center}.printgrid{grid-template-columns:280px 1fr}dialog{width:980px}#sheetPreview{max-height:570px;border:1px solid var(--line);padding:14px;border-radius:12px}.capacity{height:5px;background:var(--line);border-radius:5px;overflow:hidden}.capacity span{display:block;height:100%;background:var(--teal)}.finishactions{display:flex;gap:6px}.finishactions button{font-size:10px;padding:6px 8px}.studioReady{color:var(--teal);font-size:9px}.photoLook{display:flex;gap:5px;margin-top:12px}.photoLook button{font-size:10px;flex:1;padding:8px 5px}
@media(max-width:1100px) and (min-width:1000px){main{grid-template-columns:215px minmax(280px,1fr) 270px}.headright .privacy{display:none}}
@media(max-width:700px){.printgrid{grid-template-columns:1fr}.toolcontrols{padding:8px}#sheetPreview{max-height:340px}}
.fullstudio{font-size:10px;color:var(--teal);text-decoration:none;white-space:nowrap;border:1px solid var(--line);padding:9px;border-radius:8px}.fullstudio:hover{border-color:var(--teal)}@media(max-width:600px){.fullstudio{display:none}}
/* Background processing stays over the customer's photo. */
#stage{position:relative}#stage.processing #editor,#previewWrap.processing canvas{filter:blur(7px);transition:filter .35s}#bgOverlay{position:absolute;inset:0;z-index:8;background:#eaf2f55c;display:grid;place-items:center;padding:20px;backdrop-filter:blur(3px)}#bgOverlay[hidden]{display:none}.bgcard{width:min(360px,100%);padding:24px;border:1px solid #ffffffb3;border-radius:24px;background:#ffffffed;box-shadow:0 24px 64px #12324524;text-align:center;color:#163346}.bgcard small{font-size:9px;letter-spacing:2px;color:#289f94}.bgcard h3{font-size:18px;margin:12px 0}.bgspark{margin:auto auto 15px;width:48px;height:48px;border-radius:16px;background:#fff0e7;color:#f37d55;font-size:32px;display:grid;place-items:center;animation:bgPulse 2s ease-in-out infinite}.bgpercent{font-size:42px;font-weight:750;font-variant-numeric:tabular-nums}.bgtrack{margin:12px 0 16px;height:7px;border-radius:10px;background:#e7efef;overflow:hidden}.bgtrack span{display:block;height:100%;width:0;background:linear-gradient(90deg,#f57b53,#f3b870,#21a597);transition:width .4s;position:relative}.bgtrack span:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ffffff88,transparent);animation:bgShimmer 1.7s linear infinite}.bgcard p{font-size:12px;line-height:1.6;overflow-wrap:anywhere;max-height:130px;overflow:auto}.bgmeta{display:flex;justify-content:space-between;font-size:9px;color:#67828a;margin:20px 0}.bgcard button{font-size:11px}.failed .bgspark{animation:none;color:#bd493b}.failed .bgtrack span{background:#bd493b}.complete .bgspark{animation:none;color:#149c8d}.complete .bgtrack span:after{animation:none}@keyframes bgPulse{50%{transform:scale(1.08) rotate(15deg);box-shadow:0 0 0 12px #f47b550a}}@keyframes bgShimmer{from{transform:translateX(-100%)}to{transform:translateX(100%)}}@media(prefers-reduced-motion:reduce){.bgspark,.bgtrack span:after{animation:none}.bgtrack span{transition:none}}

/* 0.5: visible controls, same studio layout and palette. */
nav button .ico{font-size:24px;line-height:1;color:#c45332}body.dark nav button .ico{color:#ffac8c}
.editoractions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:7px 10px;font-size:12px}.actionIcon{font-size:25px;line-height:1}
.file button,#closeModal{width:40px;height:40px;min-width:40px;padding:0;display:grid;place-items:center;font-size:30px;font-weight:500;line-height:1;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:9px}.file button:hover,#closeModal:hover{color:#be4824;border-color:#be4824}
#theme{min-width:42px;min-height:42px;font-size:23px;padding:5px}.toolcontrols{flex-shrink:0}.toolcontrols button{min-height:38px;font-size:12px;padding:8px 10px}.swatches button{width:32px;height:32px}
.straighten{flex-shrink:0;padding:10px 16px 9px;border-top:1px solid var(--line);background:var(--panel)}.straighten[hidden]{display:none}.angleHeading{display:flex;align-items:center;gap:12px;margin-bottom:5px}.angleHeading label{font-size:12px;margin:0}.angleHeading output{font-size:18px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ink)}.angleHeading button{margin-left:auto;font-size:11px;padding:6px 9px;min-height:32px}.angleControls{display:flex;gap:8px;align-items:center}.angleControls>button{width:40px;height:40px;flex:0 0 40px;padding:0;font-size:26px;line-height:1}.angleControls input[type=range]{min-width:40px;flex:1;margin:0;height:32px}.degreeInput{display:flex;align-items:center;gap:3px;flex:0 0 90px}.degreeInput input{font-size:14px!important;padding:8px!important;text-align:center;font-variant-numeric:tabular-nums}.degreeInput span{font-size:20px}.straighten small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.stagefoot{font-size:10px}
@media(min-width:1000px){#stage{min-height:100px}.middle{overflow-y:auto}.editorbar,.hint{flex-shrink:0}}
@media(max-width:560px){.straighten{padding:10px}.angleControls{gap:5px}.degreeInput{flex-basis:82px}.editorbar{gap:8px}.editoractions{display:flex;gap:5px}.toolcontrols button{min-height:40px}.file{min-width:210px}}

/* 0.6: fitted editing viewport, compact auto-applied rotation and live colour. */
#editorViewport{position:absolute;inset:14px 62px 14px 14px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}#editorViewport[hidden],#zoomTools[hidden]{display:none}#editorSurface{display:flex;width:max-content;min-width:100%;min-height:100%;padding:16px;box-sizing:border-box}#editor{display:block;flex:none;margin:auto;max-width:none;max-height:none;object-fit:fill}
#zoomTools{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:7px;align-items:center;z-index:3}#zoomTools button{width:36px;height:36px;min-width:36px;padding:0;font-size:24px;display:grid;place-items:center;background:var(--panel);box-shadow:0 2px 7px #20304512}#zoomTools output{font-size:10px;font-variant-numeric:tabular-nums;font-weight:700}#panView[aria-pressed=true]{background:var(--peach);border-color:var(--orange)}
.straighten{position:relative;display:flex;justify-content:center;align-items:center;gap:9px;padding:6px 14px;min-height:48px;z-index:4}.straighten .roundRotate{border-radius:50%;width:34px;height:34px;padding:0;font-size:23px;line-height:1}.straighten>output{font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.autoNote{font-size:10px;color:var(--muted)}#anglePopover{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);width:min(390px,calc(100% - 20px));padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 6px 26px #142b3830}#anglePopover[hidden]{display:none}.angleHeading{margin-bottom:7px}.angleControls>button{height:34px;width:34px;flex-basis:34px;font-size:21px}.degreeInput{flex-basis:82px}
#previewWrap{position:sticky;top:0;z-index:4;background-color:var(--panel);min-height:0;padding:12px;margin-bottom:12px;flex-shrink:0}#preview{max-height:190px;max-width:100%;object-fit:contain}.right .panelhead{flex-shrink:0}
@media(min-width:1000px){main{height:calc(100dvh - 207px);min-height:480px}.middle{overflow:visible;min-height:0}#stage{flex:1 1 0;min-height:160px;padding:0}.stagefoot{padding:8px 14px}.right{display:block;overflow-y:auto;scroll-padding-top:215px}#previewWrap{min-height:0}#preview{max-height:min(190px,25dvh)}}
@media(min-width:1000px) and (max-height:700px){body{height:auto;min-height:100dvh;overflow:auto}main{height:560px;margin-bottom:75px}}
@media(max-width:999px){#stage{height:440px;min-height:320px;flex:none}.middle{overflow:visible}.right #previewWrap{position:static}#preview{max-height:220px}}
@media(max-width:560px){#stage{height:390px;min-height:300px}#editorViewport{inset:8px 53px 8px 8px}#zoomTools{right:8px}#zoomTools button{width:34px;height:36px;min-width:34px}.stagefoot{font-size:9px}}

/* 0.7: Cyber Sathi Pro brand and mixed-customer print sheets. */
.proBrand{gap:10px;letter-spacing:-.5px;font-size:20px;flex-shrink:0}.proBrand>img{width:52px;height:52px;border-radius:10px;object-fit:contain;background:#040c32}.proBrand b{font-size:13px;letter-spacing:.4px;color:#6747d9;background:#eee9ff;border-radius:5px;padding:3px 6px;vertical-align:middle}.proBrand small{font-size:7px;letter-spacing:1.2px}
.mixedPrint{grid-template-columns:minmax(280px,340px) minmax(0,1fr)}#customerPrintList{margin:12px 0;max-height:290px;overflow-y:auto;scrollbar-width:thin}.customerPrintRow{display:flex;align-items:center;gap:9px;padding:10px 7px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;background:var(--soft)}.customerPrintRow>input[type=checkbox]{width:18px;height:18px;flex:none}.customerPrintRow>img{width:37px;height:49px;object-fit:contain;background:white}.customerName{flex:1;min-width:0}.customerName strong{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customerName small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.customerPrintRow label{width:59px;flex:none;margin:0;font-size:10px}.customerPrintRow input[type=number]{padding:7px;text-align:center;margin-top:4px}.bulkCopies{display:grid;grid-template-columns:1fr 60px auto;align-items:center;gap:6px;margin:12px 0}.bulkCopies label{font-size:10px;margin:0}.bulkCopies input{padding:7px}.bulkCopies button{font-size:10px;padding:8px}.mixedPrint #sheetPreview{position:sticky;top:0;background:var(--soft)}#noPrintSelection{padding:35px 15px;background:var(--soft);border-radius:12px;text-align:center}.mixedPrint #sheetPreview[hidden],#noPrintSelection[hidden]{display:none}
@media(max-width:700px){.mixedPrint{grid-template-columns:1fr}.proBrand{font-size:16px}.proBrand>img{width:40px;height:40px}.proBrand b{font-size:10px}.proBrand small{display:none}.mixedPrint #sheetPreview{position:static}}

/* Compact custom colour and portrait controls */
.swatches .customColour{display:inline-grid;place-items:center;position:relative;width:34px;height:34px;border-radius:50%;background:conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red);border:2px solid white;cursor:pointer;overflow:hidden;margin:0;flex-shrink:0}
.customColour input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;padding:0}.customColour span{font-size:22px;font-weight:bold;color:white;text-shadow:0 1px 3px black;pointer-events:none}.customColour:focus-within{outline:3px solid #21b7b1;outline-offset:3px}
.moreTones{margin:14px 0}.moreTones summary{cursor:pointer;color:var(--muted);font-size:12px;padding:6px 0}.moreTones input{width:100%}.healStrength{display:flex;align-items:center;gap:6px;font-size:11px}.healStrength[hidden]{display:none}.toolcontrols .healStrength input{width:64px}

#tools .moreTools{margin-left:auto;flex-shrink:0;display:flex;align-items:center;gap:10px;padding:12px 15px;border:1px solid var(--orange,#ef7755);border-radius:11px;font:600 12px system-ui;white-space:nowrap;text-decoration:none;color:inherit;background:var(--panel,transparent)}
#tools .moreTools:focus-visible{outline:3px solid #ef7755;outline-offset:2px}

/* PhotoFixo wordmark; editor controls remain unchanged. */
header .brand img{width:170px;height:57px;object-fit:contain;background:#fff;border-radius:8px;padding:3px}header .brand>span{display:none}@media(max-width:640px){header .brand img{width:130px;height:44px}}
