.upload-section[data-astro-cid-jvjabeys]{margin-bottom:var(--space-lg)}.upload-zone[data-astro-cid-jvjabeys]{position:relative;border:2px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-xl);cursor:pointer;transition:border-color .15s,background .15s;min-height:160px;display:flex;align-items:center;justify-content:center;overflow:hidden}.upload-zone[data-astro-cid-jvjabeys]:hover,.upload-zone[data-astro-cid-jvjabeys].drag-over{border-color:var(--color-primary);background:var(--color-primary-subtle)}.upload-zone[data-astro-cid-jvjabeys] input[data-astro-cid-jvjabeys][type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.upload-placeholder[data-astro-cid-jvjabeys]{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);color:var(--color-text-muted);text-align:center;pointer-events:none}.upload-label[data-astro-cid-jvjabeys]{font-size:var(--font-body);color:var(--color-text-secondary);margin:0}.upload-hint[data-astro-cid-jvjabeys]{font-size:.875rem;color:var(--color-text-muted);margin:0}#photo-preview[data-astro-cid-jvjabeys]{max-width:100%;max-height:240px;border-radius:var(--radius-sm);object-fit:contain;pointer-events:none}.upload-zone[data-astro-cid-jvjabeys].has-image .upload-placeholder[data-astro-cid-jvjabeys]{display:none}.controls-section[data-astro-cid-jvjabeys]{margin-bottom:var(--space-lg)}.section-heading[data-astro-cid-jvjabeys]{font-size:var(--font-h3, 1.125rem);font-weight:600;color:var(--color-text);margin:0 0 var(--space-md);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-border)}input[data-astro-cid-jvjabeys][type=range]{width:100%;height:6px;accent-color:var(--color-primary);cursor:pointer;margin-top:var(--space-xs)}input[data-astro-cid-jvjabeys][type=color]{width:100%;height:48px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:2px 4px;cursor:pointer}.input-hint[data-astro-cid-jvjabeys]{font-size:.8125rem;color:var(--color-text-muted);margin:var(--space-xs) 0 0}.detect-actions[data-astro-cid-jvjabeys]{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-md)}.point-count[data-astro-cid-jvjabeys]{font-size:.875rem;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;padding:0 var(--space-xs)}.detect-status[data-astro-cid-jvjabeys]{font-size:.875rem;color:var(--color-error)}.manual-tip[data-astro-cid-jvjabeys]{background:var(--color-primary-subtle);border-left:3px solid var(--color-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:var(--space-sm) var(--space-md);font-size:.875rem;color:var(--color-text-secondary);margin-top:var(--space-sm)}.form-group--inline[data-astro-cid-jvjabeys]{display:flex;align-items:center;padding-top:var(--space-sm)}.checkbox-label[data-astro-cid-jvjabeys]{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-body);cursor:pointer;min-height:48px}.checkbox-label[data-astro-cid-jvjabeys] input[data-astro-cid-jvjabeys][type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-primary)}.preview-panel[data-astro-cid-jvjabeys]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);min-height:200px;display:flex;align-items:center;justify-content:center;overflow:hidden}.preview-panel[data-astro-cid-jvjabeys] canvas[data-astro-cid-jvjabeys]{border-radius:var(--radius-sm)}.export-bar[data-astro-cid-jvjabeys]{display:flex;gap:var(--space-md);align-items:flex-end;flex-wrap:wrap;padding:var(--space-md) 0}.export-size-group[data-astro-cid-jvjabeys]{min-width:220px}.export-size-group[data-astro-cid-jvjabeys] select[data-astro-cid-jvjabeys]{min-height:44px}.export-buttons[data-astro-cid-jvjabeys]{display:flex;gap:var(--space-sm);flex-wrap:wrap;align-items:center}.faq-item[data-astro-cid-jvjabeys]{margin-bottom:var(--space-lg)}.faq-item[data-astro-cid-jvjabeys] h3[data-astro-cid-jvjabeys]{font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 var(--space-xs)}
