.photo-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:24px}.photo-settings,.photo-editor,.photo-result{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:24px;min-width:0}.photo-settings>label,.photo-settings>div>label{margin-top:20px}.photo-settings input[type=file]{width:100%;max-width:100%;font-size:.85rem;margin-top:12px}.photo-settings input::file-selector-button{font:inherit;padding:10px;border:1px solid var(--line);border-radius:6px;background:var(--sage);color:var(--ink)}.photo-settings fieldset,.photo-editor fieldset{border:1px solid var(--line);margin:20px 0 0;padding:16px;min-width:0}.photo-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.photo-spec{font-weight:700;background:var(--sage);padding:12px;margin-top:20px}.photo-notice{font-size:.9rem;padding:12px 0;white-space:pre-line}.photo-notice:empty{display:none}.crop-wrap{position:relative;max-width:320px;margin:24px auto 12px;line-height:0;background:#fff;overflow:hidden;box-shadow:0 0 0 1px var(--line)}#photo-canvas{display:block;width:100%;height:auto;touch-action:none;cursor:grab}#photo-canvas:focus-visible{outline-offset:-4px}#photo-guides{position:absolute;inset:0;pointer-events:none}.guide-crown,.guide-chin,.guide-eyes{position:absolute;left:0;right:0;line-height:1.4;font-size:11px;font-weight:700;color:#102c26;text-shadow:0 0 3px white;background:#b7e7db88;border-top:2px dashed #236852;text-align:left;padding-left:4px}.guide-eyes{background:#ffe4aa88;border-color:#865300}.guide-chin{background:#b7e7db88;border-bottom:2px dashed #236852}.photo-actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.photo-actions button{flex:1;min-width:90px}.photo-editor input[type=range]{width:100%;min-height:44px;accent-color:var(--brown)}.photo-editor output{font-variant-numeric:tabular-nums}.photo-result{margin-top:24px}.photo-result h3{font-size:1rem;margin-top:16px}#result-content{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:28px;margin-top:20px}#result-image{max-width:100%;height:auto;max-height:440px;object-fit:contain;justify-self:center}.approval-note{border-left:3px solid var(--brown);padding-left:14px}.photo-result select{max-width:280px}
@media(max-width:760px){.photo-workspace,#result-content{grid-template-columns:1fr}.photo-settings,.photo-editor,.photo-result{padding:18px}.photo-fields{grid-template-columns:1fr 1fr}}
@media(max-width:360px){.photo-fields{grid-template-columns:1fr}}
@media print{.photo-workspace,.photo-result{display:none!important}}
