:root{--bg:#eef3f1;--surface:#ffffff;--surface-soft:#f5f8f7;--canvas:#f1f5f3;--text:#13201d;--muted:#60706c;--line:#d7e0dd;--line-strong:#bac9c5;--teal:#008f83;--teal-dark:#006f67;--teal-soft:#e2f5f1;--coral:#e65b49;--coral-soft:#fff0ed;--blue:#438edb;--warning:#d99a20;--danger:#c44235;--shadow:0 18px 48px rgb(19 32 29/9%);color-scheme:light}:root[data-theme=dark]{--bg:#101615;--surface:#18201f;--surface-soft:#1c2624;--canvas:#121a18;--text:#eef4f2;--muted:#a6b2af;--line:#2d3937;--line-strong:#3c4946;--teal:#39bbae;--teal-dark:#6dd2c8;--teal-soft:#183d39;--coral:#f27867;--coral-soft:#422724;--blue:#72aeea;--warning:#efb64b;--danger:#ff8a7d;--shadow:0 12px 32px rgb(0 0 0/24%);color-scheme:dark}*{box-sizing:border-box}html{font-family:Avenir Next,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:var(--text);scroll-behavior:smooth}body,html{background:var(--bg)}body{min-width:320px;margin:0;line-height:1.45}button,input{font:inherit;letter-spacing:0}a,button{-webkit-tap-highlight-color:transparent}a,button{color:inherit}a{text-decoration:none}svg{width:18px;height:18px;stroke-width:1.8}::selection{background:var(--teal);color:#fff}*{scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin}:focus-visible{outline:3px solid color-mix(in srgb,var(--teal) 32%,transparent);outline-offset:2px}.locale-loading{display:grid;place-items:center;color:var(--muted)}.app-shell,.locale-loading{min-height:100vh}.topbar{position:sticky;z-index:30;top:0;display:flex;height:66px;gap:16px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 97%,transparent);padding:0 22px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand,.topbar{align-items:center}.brand{display:inline-flex;gap:10px;white-space:nowrap}.brand strong{font-size:19px;font-weight:750}.brand-mark{display:grid;width:40px;height:40px;place-items:center;border-radius:8px;background:var(--teal);color:#fff;box-shadow:0 8px 20px rgb(0 143 131/24%)}.brand-mark svg{width:24px;height:24px}.privacy-chip{display:inline-flex;height:34px;align-items:center;gap:7px;border-left:1px solid var(--line);padding-left:16px;color:var(--teal-dark);font-size:13px;font-weight:650}.privacy-chip svg:last-child{width:14px;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.top-actions a,.top-actions button{display:inline-flex;height:40px;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:8px;background:transparent;padding:0 11px;color:var(--muted);cursor:pointer;font-size:13px;transition:background .16s ease,color .16s ease,border-color .16s ease}.top-actions a:hover,.top-actions button:hover{border-color:var(--line);background:var(--surface-soft);color:var(--text)}.top-actions .icon-button{width:38px;padding:0;border-color:var(--line);background:var(--surface)}.studio-grid{display:grid;min-height:calc(100vh - 66px);grid-template-columns:204px minmax(580px,1fr) 344px;align-items:stretch}.workflow-rail{position:sticky;top:66px;height:calc(100vh - 66px);border-right:1px solid var(--line);background:var(--surface);padding:28px 18px}.workflow-list{display:grid;gap:0}.workflow-step{position:relative;display:grid;min-height:104px;grid-template-columns:36px 1fr;gap:12px;color:var(--muted)}.workflow-step:after{position:absolute;top:38px;bottom:5px;left:16px;width:1px;content:"";background:var(--line)}.workflow-step:last-child:after{display:none}.workflow-step>span{z-index:1;display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--line-strong);border-radius:50%;background:var(--surface);font-weight:700;transition:background .16s ease,border-color .16s ease,color .16s ease}.workflow-step>span svg{width:16px}.workflow-step strong{display:block;padding-top:7px;font-size:14px;font-weight:700}.workflow-step small{display:block;margin-top:10px;color:var(--muted);font-size:12px;font-weight:500;line-height:1.7}.workflow-step.active{color:var(--teal-dark)}.workflow-step.active>span{border-color:var(--teal);background:var(--teal);color:#fff;animation:active-step 2.4s ease-in-out infinite}.workflow-step.done>span{border-color:var(--teal);color:var(--teal)}.local-note{position:absolute;bottom:22px;left:18px;right:18px;display:grid;grid-template-columns:24px 1fr;gap:3px 8px;border-radius:8px;background:var(--teal-soft);padding:13px}.local-note svg{color:var(--coral)}.local-note strong{font-size:12px}.local-note small{grid-column:2;color:var(--muted);font-size:11px}.local-note:after{position:absolute;top:13px;right:13px;width:7px;height:7px;border-radius:50%;background:#2aae70;content:"";box-shadow:0 0 0 4px rgb(42 174 112/12%)}.workspace{min-width:0;padding:20px}.editor-toolbar{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px;border-radius:8px 8px 0 0;background:var(--surface);padding:6px 9px;box-shadow:0 6px 22px rgb(19 32 29/6%)}.editor-toolbar>div{display:flex;flex-wrap:wrap;gap:2px}.editor-toolbar button{display:inline-flex;height:34px;align-items:center;gap:6px;border:0;border-right:1px solid var(--line);background:transparent;padding:0 12px;color:var(--muted);cursor:pointer;font-size:12px;transition:color .16s ease,background .16s ease}.editor-toolbar button:last-child{border-right:0}.editor-toolbar button:hover:not(:disabled){color:var(--teal-dark)}.editor-toolbar button:disabled{cursor:not-allowed;opacity:.35}.mobile-inspector-button{display:none!important}.toolbar-status{display:inline-flex;align-items:center;gap:7px;padding-right:5px;color:var(--muted);font-size:11px;white-space:nowrap}.toolbar-status>span{width:7px;height:7px;border-radius:50%;background:#35a86b}.toolbar-status.working>span{background:var(--warning);animation:status-pulse 1.1s ease-in-out infinite}.portrait-stage{position:relative;display:grid;min-height:600px;place-items:center;border-radius:0 0 8px 8px;background:var(--canvas);padding:38px 56px 62px;overflow:hidden;box-shadow:0 18px 54px rgb(19 32 29/8%)}.portrait-frame{position:relative;width:min(420px,64%);max-height:520px;overflow:hidden;background:#dbe3e2;box-shadow:0 22px 52px rgb(19 32 29/20%);touch-action:none;-webkit-user-select:none;user-select:none}.is-processing .portrait-frame{box-shadow:0 24px 64px rgb(0 143 131/24%)}.portrait-frame.draggable{cursor:grab}.portrait-frame.draggable:active{cursor:grabbing}.portrait-frame>img{width:100%;height:100%;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;animation:media-reveal .42s cubic-bezier(.16,1,.3,1)}.guide{position:absolute;right:0;left:0;z-index:2;border-top:1px dashed rgb(255 255 255/84%);box-shadow:0 1px rgb(23 33 31/26%);pointer-events:none}.guide span{position:absolute;right:calc(100% + 22px);top:-10px;width:92px;color:var(--muted);font-size:11px;text-align:right;white-space:nowrap;text-shadow:0 1px var(--surface)}.guide span:after{position:absolute;top:8px;left:calc(100% + 8px);width:12px;border-top:1px solid var(--line-strong);content:""}.guide-top{top:8%}.guide-eyes{top:38%}.guide-chin{top:67%}.guide-center{top:0;bottom:0;left:50%;border-left:1px dashed rgb(255 255 255/70%)}.guide-center,.guide-safe{position:absolute;z-index:2;pointer-events:none}.guide-safe{inset:5%;border:1px dashed rgb(255 255 255/72%)}.measurement{position:absolute;z-index:3;color:var(--muted);font-size:11px}.measurement.vertical{top:50%;right:max(18px,calc(50% - 270px));width:34px;height:64%;transform:translateY(-50%);border-right:1px solid var(--line-strong)}.measurement.vertical:after,.measurement.vertical:before{position:absolute;right:-5px;width:10px;border-top:1px solid var(--line-strong);content:""}.measurement.vertical:before{top:0}.measurement.vertical:after{bottom:0}.measurement.vertical span{position:absolute;top:50%;right:-12px;transform:translate(100%,-50%);white-space:nowrap}.measurement.horizontal{bottom:26px;left:50%;width:min(430px,46%);border-bottom:1px solid var(--line-strong);transform:translateX(-50%);text-align:center}.measurement.horizontal:after,.measurement.horizontal:before{position:absolute;bottom:-5px;height:10px;border-left:1px solid var(--line-strong);content:""}.measurement.horizontal:before{left:0}.measurement.horizontal:after{right:0}.measurement.horizontal span{position:relative;top:18px;background:var(--canvas);padding:0 8px;white-space:nowrap}.stage-zoom{position:absolute;right:14px;bottom:14px;display:inline-grid;grid-template-columns:34px 52px 34px;align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface);overflow:hidden;box-shadow:0 8px 22px rgb(19 32 29/9%)}.stage-zoom button{display:grid;width:30px;height:30px;place-items:center;border:0;background:transparent;cursor:pointer;font-size:18px}.stage-zoom button:disabled{opacity:.3}.stage-zoom strong{font-size:11px;text-align:center}.upload-overlay{position:absolute;z-index:5;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:17px;background:rgb(8 28 25/52%);padding:30px 16px;color:#fff;text-align:center}.upload-copy{display:grid;place-items:center;gap:7px;text-shadow:0 1px 3px rgb(0 0 0/30%)}.upload-copy>svg{width:30px;height:30px}.upload-copy strong{font-size:15px}.upload-copy span{font-size:11px;opacity:.88}.upload-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.upload-actions button{display:inline-flex;min-height:40px;align-items:center;gap:6px;border:0;border-radius:7px;background:rgb(255 255 255/96%);padding:0 12px;color:#19302c;cursor:pointer;font-size:12px;font-weight:700;box-shadow:0 8px 20px rgb(0 0 0/14%);transition:transform .16s ease,box-shadow .16s ease}.upload-actions button:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgb(0 0 0/18%)}.upload-actions button.primary{border-color:var(--coral);background:var(--coral);color:#fff}.processing-overlay{position:absolute;z-index:6;inset:0;display:grid;align-content:center;justify-items:center;gap:12px;background:rgb(247 250 249/91%);color:#19302c;padding:24px;text-align:center}:root[data-theme=dark] .processing-overlay{background:rgb(16 22 21/92%);color:var(--text)}.processing-overlay>svg{width:32px;height:32px;color:var(--teal);animation:spin .9s linear infinite}.processing-overlay strong{font-size:13px}.processing-overlay small{color:var(--muted)}.progress{width:min(280px,80%);height:5px;border-radius:3px;background:var(--line);overflow:hidden}.progress span{position:relative;display:block;height:100%;background:var(--teal)}.progress span:after{position:absolute;top:0;bottom:0;left:0;width:42px;background:rgb(255 255 255/35%);content:"";transform:translateX(-44px);animation:progress-sweep 1.2s ease-in-out infinite}.error-banner{position:absolute;z-index:8;right:14px;bottom:52px;left:14px;display:flex;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--danger) 30%,var(--line));border-radius:7px;background:var(--surface);padding:10px 12px;color:var(--danger);font-size:12px}.export-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.export-panel{display:flex;min-width:0;flex-direction:column;border-radius:8px;background:var(--surface);padding:16px;box-shadow:var(--shadow)}.export-heading{display:flex;align-items:center;gap:10px}.export-heading>svg{width:24px;height:24px;color:var(--teal)}.export-heading small,.export-heading strong{display:block}.export-heading strong{font-size:14px}.export-heading small{margin-top:2px;color:var(--muted);font-size:11px}.digital-summary{display:grid;min-height:150px;flex:1 1;grid-template-columns:minmax(110px,34%) 1fr;align-items:center;gap:18px;margin:16px 0}.mini-photo{display:grid;width:100%;max-height:230px;place-items:center;overflow:hidden;background:var(--surface-soft);box-shadow:inset 0 0 0 1px var(--line);color:var(--muted)}.mini-photo img{width:100%;height:100%;object-fit:cover;animation:media-reveal .42s cubic-bezier(.16,1,.3,1)}.digital-summary dl{display:grid;gap:7px;margin:0}.digital-summary dl div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:6px;font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.digital-summary dt{color:var(--muted)}.digital-summary dd{margin:0;font-weight:650}.sheet-preview{display:grid;width:100%;height:auto;aspect-ratio:3/2;place-items:center;margin:12px 0 9px;background:#f7f8f6;padding:7px;overflow:hidden;color:#80908d;box-shadow:inset 0 0 0 1px var(--line)}.sheet-preview img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;animation:media-reveal .42s cubic-bezier(.16,1,.3,1)}.copy-picker{display:flex;min-height:34px;align-items:center;gap:6px;margin-bottom:7px;font-size:11px}.copy-picker span{margin-right:auto;color:var(--muted)}.copy-picker button{width:34px;height:30px;border:1px solid var(--line);border-radius:6px;background:var(--surface);cursor:pointer;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:border-color .16s ease,background .16s ease}.copy-picker button.selected{border-color:var(--teal);background:var(--teal-soft);color:var(--teal-dark)}.download-button{display:inline-flex;width:100%;height:42px;align-items:center;justify-content:center;gap:7px;margin-top:auto;border:0;border-radius:7px;background:var(--coral);color:#fff;cursor:pointer;font-size:12px;font-weight:750;box-shadow:0 9px 22px rgb(230 91 73/20%);transition:background .16s ease,transform .16s ease,box-shadow .16s ease}.download-button:hover:not(:disabled){background:#cc4939;transform:translateY(-1px);box-shadow:0 12px 26px rgb(230 91 73/28%)}.download-button:active:not(:disabled){transform:translateY(0);box-shadow:0 6px 14px rgb(230 91 73/18%)}.download-button.secondary{background:var(--coral);color:#fff}.download-button:disabled{cursor:not-allowed;opacity:.4}.inspector{position:sticky;top:66px;height:calc(100vh - 66px);overflow-y:auto;border-left:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%,var(--bg))}.mobile-inspector-backdrop,.mobile-inspector-heading{display:none}.inspector-section{border-bottom:1px solid var(--line);padding:18px 16px}.inspector-section h2{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px;font-size:13px;font-weight:750}.inspector-section h2 span{color:var(--teal-dark);font-size:11px}.preset-trigger{display:flex;width:100%;min-height:62px;align-items:center;justify-content:space-between;gap:10px;border:1px solid color-mix(in srgb,var(--teal) 55%,var(--line));border-radius:8px;background:var(--teal-soft);padding:10px 11px;cursor:pointer;text-align:left;transition:border-color .16s ease,background .16s ease}.preset-trigger:hover{border-color:var(--teal);background:color-mix(in srgb,var(--teal-soft) 75%,var(--surface))}.preset-trigger small,.preset-trigger span,.preset-trigger strong{display:block;min-width:0}.preset-trigger strong{font-size:13px}.preset-trigger small{margin-top:4px;color:var(--muted);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.custom-size{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.custom-size label{color:var(--muted);font-size:10px}.custom-size input{width:100%;height:36px;margin-top:5px;border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:0 8px;color:var(--text);font-size:16px}.color-row{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.color-custom,.color-row button{position:relative;display:grid;aspect-ratio:1;place-items:center;border:1px solid var(--line-strong);border-radius:8px;cursor:pointer;transition:transform .16s ease,border-color .16s ease}.color-custom:hover,.color-row button:hover{transform:translateY(-1px);border-color:var(--teal)}.color-row button.selected{outline:2px solid var(--teal);outline-offset:2px}.color-row button svg{width:15px;color:#fff;filter:drop-shadow(0 1px 1px rgb(0 0 0/45%))}.color-custom{overflow:hidden;background:var(--surface-soft)}.color-custom input{position:absolute;width:150%;height:150%;opacity:0;cursor:pointer}.color-custom span{font-size:20px;color:var(--muted)}.position-controls{display:grid;grid-template-columns:82px 1fr;gap:13px}.dpad{display:grid;grid-template-columns:repeat(3,26px);grid-template-rows:repeat(3,26px);align-self:center;gap:2px}.dpad button{border:1px solid var(--line);border-radius:5px;background:var(--surface-soft);cursor:pointer}.dpad button:first-child{grid-column:2}.dpad button:nth-child(2){grid-column:1;grid-row:2}.dpad button:nth-child(3){grid-column:2;grid-row:2;color:var(--teal)}.dpad button:nth-child(4){grid-column:3;grid-row:2}.dpad button:nth-child(5){grid-column:2;grid-row:3}.sliders{display:grid;gap:9px}.range-control{display:grid;gap:5px}.range-control>span{display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.range-control strong{color:var(--text);font-weight:650}.range-control input{width:100%;height:4px;margin:0;accent-color:var(--teal)}.segment{display:grid;grid-template-columns:1fr 1fr;gap:3px;border:1px solid var(--line);border-radius:7px;background:var(--surface-soft);padding:3px;margin-bottom:12px}.segment button{height:34px;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;font-size:11px}.segment button.selected{background:var(--surface);color:var(--coral);box-shadow:0 1px 4px rgb(23 33 31/10%);font-weight:700}.target-input{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}.target-input span:last-child{display:flex;align-items:center;gap:5px}.target-input input{width:76px;height:34px;border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:0 8px;color:var(--text);font-size:16px;text-align:right}.check-list,.check-list>div{display:grid;gap:8px}.check-list>div{grid-template-columns:1fr auto 18px;align-items:center;min-height:24px;font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.check-list>div>span{color:var(--muted)}.check-list>div>strong{font-weight:650}.check-list svg{width:15px;height:15px}.check-list .pass{color:#2ba56b}.check-list .warn{color:var(--warning)}.checks p{display:flex;gap:6px;margin:12px 0 0;border-top:1px solid var(--line);padding-top:10px;color:var(--muted);font-size:10px;line-height:1.55}.checks p svg{width:14px;flex:0 0 14px;color:var(--blue)}.info-band{display:flex;max-width:1120px;align-items:center;gap:14px;margin:28px auto 0;border-radius:8px;background:var(--surface);padding:19px 22px;box-shadow:var(--shadow)}.info-band>svg{width:28px;height:28px;color:var(--teal)}.info-band div{flex:1 1}.info-band strong{font-size:13px}.info-band p{margin:4px 0 0;color:var(--muted);font-size:11px}.info-band>span{color:var(--coral);font-size:11px;font-weight:650;white-space:nowrap}footer{display:flex;max-width:1120px;justify-content:space-between;margin:0 auto;padding:22px 4px 30px;color:var(--muted);font-size:10px}.dialog-backdrop{position:fixed;z-index:80;inset:0;display:grid;place-items:center;background:rgb(11 20 18/58%);padding:20px}.preset-dialog{width:min(780px,100%);max-height:min(800px,calc(100vh - 40px));overflow:hidden;border-radius:8px;background:var(--surface);box-shadow:0 30px 90px rgb(0 0 0/32%)}.preset-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:16px 18px}.preset-dialog header small,.preset-dialog header strong{display:block}.preset-dialog header strong{font-size:15px}.preset-dialog header small{margin-top:4px;color:var(--muted);font-size:10px}.preset-dialog header button{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:6px;background:var(--surface);cursor:pointer}.preset-search{display:flex;align-items:center;gap:9px;margin:14px 16px 10px;border:1px solid var(--line-strong);border-radius:7px;padding:0 11px}.preset-search svg{color:var(--muted)}.preset-search input{width:100%;height:42px;border:0;outline:0;background:transparent;color:var(--text);font-size:16px}.preset-tabs{display:flex;gap:6px;margin:0 16px 10px;overflow-x:auto;scrollbar-width:none}.preset-tabs::-webkit-scrollbar{display:none}.preset-tabs button{min-width:max-content;height:32px;border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:0 11px;color:var(--muted);cursor:pointer;font-size:11px}.preset-tabs button.selected{border-color:var(--teal);background:var(--teal-soft);color:var(--teal-dark);font-weight:700}.preset-grid{display:grid;max-height:min(540px,calc(100vh - 230px));grid-template-columns:1fr 1fr;gap:8px;overflow-y:auto;padding:6px 16px 18px}.preset-grid>button{position:relative;display:grid;min-height:94px;grid-template-columns:52px 1fr;align-items:center;gap:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:11px;cursor:pointer;text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.preset-grid>button:hover{transform:translateY(-1px);border-color:var(--teal);background:var(--surface-soft)}.preset-grid>button.selected{border-color:var(--coral);background:var(--coral-soft)}.preset-grid>button>svg{position:absolute;top:9px;right:9px;color:var(--coral)}.preset-ratio{display:grid;width:46px;max-height:66px;place-items:center;border:1px solid var(--line-strong);background:#eaf0ef;color:#647673}.preset-grid em,.preset-grid small,.preset-grid strong{display:block}.preset-grid strong{font-size:13px}.preset-grid small{margin-top:4px;color:var(--muted);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.preset-grid em{margin-top:6px;color:var(--teal-dark);font-size:10px;font-style:normal}.preset-empty{grid-column:1/-1;padding:40px 12px;color:var(--muted);text-align:center}.drop-screen{position:fixed;z-index:100;inset:16px;display:none;place-items:center;align-content:center;gap:12px;border:2px dashed var(--teal);border-radius:8px;background:color-mix(in srgb,var(--surface) 94%,transparent);color:var(--teal-dark);pointer-events:none}.drop-screen.visible{display:grid}.drop-screen svg{width:42px;height:42px}@keyframes spin{to{transform:rotate(1turn)}}@keyframes media-reveal{0%{opacity:.82;filter:blur(2px);transform:scale(.992)}to{opacity:1;filter:blur(0);transform:scale(1)}}@keyframes status-pulse{50%{box-shadow:0 0 0 5px rgb(217 154 32/16%);transform:scale(.9)}}@keyframes active-step{50%{box-shadow:0 0 0 6px rgb(0 143 131/10%)}}@keyframes progress-sweep{65%,to{transform:translateX(280px)}}@keyframes inspector-from-right{0%{opacity:.85;transform:translateX(18px)}}@keyframes inspector-from-bottom{0%{opacity:.85;transform:translateY(18px)}}@media (max-width:1250px){.studio-grid{grid-template-columns:74px minmax(520px,1fr) 320px}.workflow-rail{padding:22px 12px}.workflow-step{min-height:82px;grid-template-columns:34px;justify-content:center}.local-note,.workflow-step>div{display:none}.portrait-stage{min-height:570px}}@media (max-width:980px){.topbar{height:58px;padding:0 14px}.brand strong{font-size:17px}.privacy-chip{font-size:11px}.top-actions a:not(.icon-button){display:none}.studio-grid{display:block;min-height:auto}.workflow-rail{position:static;width:100%;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:9px 14px;overflow-x:auto}.workflow-list{display:flex;min-width:620px}.workflow-step{min-height:42px;flex:1 1;grid-template-columns:28px 1fr;align-items:center}.workflow-step:after{top:20px;right:7px;bottom:auto;left:35px;width:auto;height:1px}.workflow-step>span{width:28px;height:28px;font-size:11px}.workflow-step>div{display:block}.workflow-step strong{padding-top:0;font-size:11px}.workflow-step small{display:none}.workspace{padding:12px}.editor-toolbar .mobile-inspector-button{display:inline-flex!important;border-right:0;color:var(--teal-dark)}.inspector{display:none}.inspector.mobile-open{position:fixed;z-index:70;top:58px;right:0;bottom:0;display:block;width:min(440px,100%);height:auto;border-left:1px solid var(--line);background:var(--surface);box-shadow:-20px 0 60px rgb(0 0 0/24%);animation:inspector-from-right .26s cubic-bezier(.16,1,.3,1);overscroll-behavior:contain}.mobile-inspector-heading{position:sticky;z-index:2;top:0;display:flex;min-height:56px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--surface);padding:8px 16px}.mobile-inspector-heading button{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:7px;background:var(--surface-soft);cursor:pointer}.mobile-inspector-backdrop{position:fixed;z-index:60;inset:0;display:block;border:0;background:rgb(11 20 18/58%)}.portrait-stage{min-height:600px}.portrait-frame{width:min(440px,65%)}}@media (max-width:680px){.topbar{gap:8px}.brand strong{font-size:15px}.brand-mark{width:34px;height:34px}.privacy-chip{display:none}.top-actions{gap:4px}.workspace{padding:8px}.editor-toolbar{position:sticky;z-index:20;top:58px;align-items:flex-start}.toolbar-status{display:none}.editor-toolbar button{min-width:42px;min-height:42px;justify-content:center;padding:0 9px;font-size:0}.editor-toolbar button svg{width:19px;height:19px}.editor-toolbar .mobile-inspector-button{display:inline-flex!important;gap:6px;border-right:0;padding:0 10px;font-size:11px;color:var(--teal-dark)}.portrait-stage{min-height:clamp(440px,122vw,520px);padding:24px 26px 52px}.portrait-frame{width:min(340px,82%);max-height:410px}.guide span{display:none}.measurement.vertical{right:7px}.measurement.vertical span{right:-9px;font-size:9px;writing-mode:vertical-rl}.measurement.horizontal{width:58%}.upload-overlay{justify-content:flex-end;padding:18px 8px}.upload-copy strong{max-width:230px;font-size:12px}.upload-copy span{font-size:10px}.upload-actions{gap:6px}.upload-actions button{min-height:42px;padding:0 10px;font-size:11px}.stage-zoom{right:8px;bottom:8px}.export-row{grid-template-columns:1fr;gap:10px;margin-top:10px}.export-panel{padding:12px}.digital-summary{min-height:92px;grid-template-columns:58px 1fr;gap:11px;margin:9px 0}.mini-photo{width:56px;max-height:84px}.sheet-preview{width:100%;height:auto;aspect-ratio:3/2;margin:10px 0;padding:7px}.copy-picker{height:auto;min-height:44px;flex-wrap:wrap;gap:6px}.copy-picker span{flex-basis:100%}.copy-picker button{min-width:40px;height:40px;flex:1 1}.download-button{height:46px;font-size:13px}.inspector{display:none}.inspector.mobile-open{position:fixed;z-index:70;top:auto;right:0;bottom:0;left:0;display:block;width:100%;height:auto;max-height:min(86dvh,720px);border:1px solid var(--line);border-radius:8px 8px 0 0;box-shadow:0 -20px 60px rgb(0 0 0/28%);animation-name:inspector-from-bottom;overscroll-behavior:contain}.inspector-section{border-right:0;padding:16px}.inspector-section h2{font-size:14px}.preset-trigger{min-height:62px}.preset-trigger strong{font-size:14px}.preset-trigger small{font-size:11px}.color-row{gap:10px}.position-controls{grid-template-columns:128px 1fr;gap:14px}.dpad{grid-template-columns:repeat(3,40px);grid-template-rows:repeat(3,40px);gap:4px}.dpad button{font-size:16px}.range-control{gap:3px}.range-control>span{font-size:12px}.range-control input{min-height:32px}.segment button{height:40px;font-size:12px}.target-input{min-height:44px;font-size:12px}.target-input input{height:42px}.info-band{align-items:flex-start;margin:18px 12px 0}.info-band>span{display:none}footer{display:grid;gap:5px;padding:18px 14px 24px}.dialog-backdrop{align-items:end;padding:0}.preset-dialog{max-height:90dvh;border-radius:10px 10px 0 0}.preset-dialog header{padding:12px 14px}.preset-dialog header strong{font-size:16px}.preset-dialog header small{font-size:11px}.preset-dialog header button{width:42px;height:42px;flex:0 0 42px}.preset-search{margin:12px 14px 9px}.preset-search input{height:46px}.preset-tabs{margin-right:14px;margin-left:14px}.preset-tabs button{height:38px;font-size:12px}.preset-grid{grid-template-columns:1fr;max-height:calc(90dvh - 205px);padding:5px 14px calc(18px + env(safe-area-inset-bottom))}.preset-grid>button{min-height:92px;padding:11px}.preset-grid strong{font-size:14px}.preset-grid small{font-size:12px}.preset-grid em{font-size:11px}.workflow-list{width:100%;min-width:0}.workflow-step{min-width:0;grid-template-columns:24px;justify-items:center;gap:3px;text-align:center}.workflow-step:after{top:14px;right:-5px;left:calc(50% + 16px)}.workflow-step>span{width:26px;height:26px}.workflow-step>div{display:block}.workflow-step strong{width:72px;padding-top:0;font-size:10px;line-height:1.2}}@media (max-width:390px){.topbar{padding-right:8px;padding-left:8px}.brand{gap:7px}.brand strong{max-width:150px;overflow:hidden;text-overflow:ellipsis}.portrait-stage{min-height:440px;padding-right:22px;padding-left:22px}.portrait-frame{width:84%}.upload-actions button{padding:0 8px;font-size:10px}.position-controls{grid-template-columns:1fr}.dpad{justify-self:center}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}