/* Local artwork selection and the same canvas for preview and exported proof. */
.artwork-panel{margin-bottom:1.7rem;border-bottom:1px solid #d2d8d6;padding-bottom:1.5rem}
.studio-controls .artwork-panel h3{font-size:1rem;margin-bottom:.65rem;letter-spacing:-.02em}
.studio-controls input[type=file]{display:block;width:100%;padding:.7rem;margin:.65rem 0;background:#fff;font-size:.8125rem;overflow:hidden}
input[type=file]::file-selector-button{background:#e9eeeb;border:0;border-radius:999px;padding:.65rem .85rem;margin-right:.65rem;color:#214e43;font:inherit;cursor:pointer}
.studio-controls .artwork-note,.studio-controls #artwork-status{font-size:.8125rem;line-height:1.55;color:#59635e;margin:.55rem 0;overflow-wrap:anywhere}
.studio-controls #artwork-status.field-error{color:#a12e22}
.artwork-file-row{display:flex;gap:.7rem;align-items:center;justify-content:space-between;margin:.75rem 0}
#artwork-filename{font-size:.8125rem;overflow-wrap:anywhere;min-width:0}
.artwork-panel button,.proof-actions button,.attached-preview button,.request-artwork button{font:inherit;font-size:.8125rem;color:#214e43;background:#fff;border:1px solid #b9c6bf;border-radius:999px;min-height:44px;padding:.6rem .9rem;cursor:pointer}
.artwork-file-row button{flex-shrink:0}
.studio-controls select{width:100%;min-height:48px;background:#fff;border:1px solid #c8cdd0;border-radius:.65rem;color:#1d1d1f;font:inherit;padding:.7rem;margin:.4rem 0 1rem}
.artwork-tools{display:grid;grid-template-columns:1fr auto;gap:.8rem;align-items:center}
.artwork-tools button{margin-top:.5rem}
.pdf-page-input{display:flex;gap:.7rem;align-items:center}
.studio-controls .pdf-page-input input{width:6rem;margin:.4rem 0 .9rem}
.pdf-page-input span{font-size:.8125rem}
.studio-controls input[type=range]{width:100%;padding:0;margin:.3rem 0 .7rem;min-height:36px;background:transparent;border:0;accent-color:#214e43}
.range-label{display:flex;justify-content:space-between;gap:1rem}
.range-label output{font-size:.8rem}
#template-fields{margin-bottom:.75rem}
.custom-card.card-front,.custom-card.card-back{border:0;background:#fff;display:block}
#card-canvas,#card-back-canvas{display:block;width:100%;height:100%;border-radius:inherit}
.studio-preview{align-self:start;position:sticky;top:6.5rem}
.proof-actions{display:flex;justify-content:center;gap:.7rem;margin-top:1.2rem}
.studio-preview>p.proof-note{max-width:28rem;text-align:center;font-size:.75rem}
button:disabled{opacity:.55;cursor:wait}
.attached-preview{margin:0 0 1.2rem;background:#f3f6f4;padding:1rem;border-radius:1rem}
.attached-preview img{display:block;width:100%;height:auto;aspect-ratio:1024/646;max-width:350px;border-radius:12px;box-shadow:0 3px 15px #1a372312;margin:0 auto .8rem}
.attached-preview p,.request-artwork p{font-size:.8125rem;line-height:1.6;margin:.6rem 0}
.attached-preview .preview-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}
.attached-preview a{font-size:.8125rem;text-decoration:underline;text-underline-offset:.2em;padding:.7rem}
.request-artwork{margin:1rem 0;padding:1rem;background:#eef3ef;border-radius:.8rem}
.request-form .upload-invite{display:inline-block;font-size:.875rem;text-decoration:underline;text-underline-offset:.2em;margin:0 0 1rem;min-height:32px}
.request-result #request-artwork-note{font-size:.875rem}
.artwork-note strong{color:#214e43}
@media(max-width:820px){.studio-preview{position:static}.studio-layout{flex-direction:column;gap:1.5rem}.studio-controls{max-width:none}.studio-preview{order:-1}.artwork-panel{margin-bottom:1.25rem}.studio-controls .button{position:static}.studio-preview:has(#card-canvas){min-height:0}}
@media(max-width:600px){.studio-preview{padding:1.25rem}.artwork-tools{grid-template-columns:1fr auto}.studio-controls select{font-size:1rem}.artwork-panel{scroll-margin-top:7rem}.attached-preview{padding:.8rem}}

.side-upload{padding:.7rem .8rem;background:#f8faf8;border:1px solid #d2d8d6;border-radius:.8rem;margin:.8rem 0}
.studio-controls .side-file-summary{font-size:.75rem;line-height:1.5;color:#59635e;overflow-wrap:anywhere;margin:.3rem 0 0}
.side-switch{display:flex;gap:.5rem;margin:1rem 0 .75rem}
.side-switch button{flex:1}
.side-switch button[aria-pressed=true]{background:#214e43;color:#fff;border-color:#214e43}
#editing-side{font-size:.9rem;margin:1rem 0 .5rem;letter-spacing:-.01em}
#proof-sides{display:block;font-weight:600;margin-bottom:.4rem}
.request-side-previews{display:grid;gap:1rem}
.request-side-previews figure{margin:0}
.request-side-previews figcaption{font-size:.8125rem;font-weight:650;margin:0 0 .5rem}
.request-side-previews [hidden]{display:none}
