.pm3d-studio .studio-title{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.pm3d-studio .design-save-bar{display:flex;align-items:center;gap:12px;padding:10px 24px;background:var(--theme-surface);border-bottom:1px solid var(--theme-border);font-size:12px}
.pm3d-studio .design-save-bar input{min-width:140px;max-width:220px;flex:1;border:1px solid var(--theme-border);background:var(--theme-field);color:var(--theme-text);border-radius:4px;padding:8px}
.pm3d-studio .design-save-bar a{color:var(--theme-link);text-decoration:underline}
.pm3d-studio #design-save-status{color:var(--theme-text-muted);font-size:11px}
.pm3d-studio .mobile-save-actions{display:none;gap:8px;width:100%}
.pm3d-studio .mobile-save-actions button{border:1px solid var(--theme-border);border-radius:4px;background:var(--theme-surface);color:var(--theme-link);padding:9px 12px;font-size:12px;min-height:40px}
.pm3d-studio .workspace{min-height:calc(100dvh - 125px)}
.pm3d-studio .collection,.pm3d-studio .editor{max-height:calc(100dvh - 125px)}
.pm3d-studio .preset{min-height:102px}
.pm3d-studio .preset-image{height:80px;display:grid;place-items:center;color:var(--theme-action);background:var(--theme-thumbnail-surface)}
.pm3d-studio .preset-image:not([src]){visibility:visible}
.pm3d-studio .preset-image svg{display:block;width:80%;height:75%;filter:drop-shadow(3px 4px 0 color-mix(in srgb,var(--theme-action) 15%,transparent))}
.pm3d-studio .preset-title{padding-top:8px}
.pm3d-studio .studio-controls{display:grid;gap:18px;margin-bottom:24px}
.pm3d-studio .studio-control{display:grid;gap:7px}
.pm3d-studio .studio-control label,.pm3d-studio .studio-source label{font-size:13px;font-weight:600}
.pm3d-studio .studio-control input:not([type=range]):not([type=checkbox]),.pm3d-studio .studio-control select,.pm3d-studio .studio-source input{width:100%;min-height:40px;border:1px solid var(--theme-border);border-radius:4px;background:var(--theme-field);color:var(--theme-text);padding:8px}
.pm3d-studio .studio-control input[type=range]{margin:9px 0}
.pm3d-studio .studio-control small{font:11px JetBrains,monospace;color:var(--theme-text-muted)}
.pm3d-studio .studio-control-row{display:flex;justify-content:space-between;gap:12px}
.pm3d-studio .studio-control-row output{font:12px JetBrains,monospace;color:var(--theme-text-muted)}
.pm3d-studio .studio-control-check{display:flex;align-items:center;gap:9px}
.pm3d-studio .studio-source{padding:15px;margin:0 0 20px;border:1px solid var(--theme-border);border-radius:5px;background:var(--theme-surface-muted)}
.pm3d-studio .studio-source input{margin-top:8px}
.pm3d-studio .photo-crop-preview{display:block;width:100%;height:auto;max-height:240px;object-fit:contain;margin-top:12px;border:1px solid var(--theme-border);border-radius:3px;background:#ffffff}
.pm3d-studio .photo-crop-preview[hidden]{display:none}
.pm3d-studio .studio-source[hidden]{display:none}
.pm3d-studio .request-panel{border-top:1px solid var(--theme-border);padding-top:23px;margin-top:24px}
.pm3d-studio .request-panel h3{font:600 20px Hanken,Inter,sans-serif;margin:0 0 7px}
.pm3d-studio .request-panel p{font-size:12px;line-height:1.6;color:var(--theme-text-muted)}
.pm3d-studio .request-panel form{display:grid;gap:7px}
.pm3d-studio .request-panel label{font-size:12px;margin-top:7px}
.pm3d-studio .request-panel input,.pm3d-studio .request-panel textarea{width:100%;border:1px solid var(--theme-border);border-radius:4px;background:var(--theme-field);color:var(--theme-text);padding:10px}
.pm3d-studio .request-panel .primary{margin-top:12px}
.pm3d-studio #request-summary{font-weight:600;color:var(--theme-text)}
.pm3d-studio #request-status,.pm3d-studio #photo-state{min-height:1.2em}
.pm3d-studio .print-check{margin-top:16px}
.pm3d-studio .model-badge{top:110px}
.pm3d-studio #viewport{inset:0 0 148px}
.pm3d-studio #viewport canvas{display:block;touch-action:none}
.pm3d-studio .header .primary{white-space:nowrap}
@media(max-width:650px){.pm3d-studio .header-actions #save-design,.pm3d-studio .header-actions #save-copy{display:none}}
.pm3d-studio .colour-deck select{width:70px}
.pm3d-studio[data-kind="qr_stand"] .colour-deck,.pm3d-studio[data-kind="photo_light"] .colour-deck{display:none}
.pm3d-studio[data-kind="qr_stand"] #viewport,.pm3d-studio[data-kind="photo_light"] #viewport{bottom:82px}
.pm3d-studio[data-kind="qr_stand"] .measurements,.pm3d-studio[data-kind="photo_light"] .measurements{bottom:20px}
.pm3d-studio[data-kind="qr_stand"] .stage-base,.pm3d-studio[data-kind="photo_light"] .stage-base{bottom:96px}
@media(max-width:900px){.pm3d-studio .collection,.pm3d-studio .editor{max-height:none}.pm3d-studio .preset{min-height:85px}}
@media(max-width:650px){.pm3d-studio .design-save-bar{padding:9px 15px;flex-wrap:wrap}.pm3d-studio .design-save-bar input{max-width:none}.pm3d-studio .design-save-bar #design-save-status{flex-basis:100%}.pm3d-studio .mobile-save-actions{display:flex}.pm3d-studio .stage{height:590px;min-height:590px}.pm3d-studio .header .primary{font-size:12px}.pm3d-studio .model-badge{top:98px}.pm3d-studio .preset{flex-basis:105px}.pm3d-studio .preset-image{height:72px}}
