.dz{position:relative;display:flex;flex-wrap:wrap;align-items:center;align-content:center;gap:var(--space-3) var(--space-5);min-height:calc(var(--control-lg) + 2 * var(--space-5));padding:var(--space-5);background:var(--surface-1);border:1px solid var(--stroke);border-radius:var(--r-lg);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.dz:hover{border-color:var(--ink-500)}.dz-text{flex:1 1 0;min-width:0}.dz-foot{flex-basis:100%}.dz-title{font-size:var(--fs-text);font-weight:600;line-height:var(--lh-ui);color:var(--ink-900)}.dz-meta{margin-top:var(--space-1);font-size:var(--fs-ui-label);line-height:var(--lh-ui);color:var(--ink-600)}.dz-foot.dz-meta{margin-top:0}.dz-error{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--fs-ui-label);font-weight:600;line-height:var(--lh-ui);color:var(--danger)}.dz-error .icon{flex:none;width:var(--icon-sm);height:var(--icon-sm);margin-top:1px}.dz-error a{color:var(--danger);text-decoration:underline}.dz-over-msg{display:flex;align-items:center;gap:var(--space-3);min-height:var(--control-lg);font-weight:600;color:var(--brand-700)}.dz-upload{display:grid;grid-template-columns:var(--thumb) minmax(0,1fr) auto;align-items:center;gap:var(--space-4);width:100%;cursor:default}.dz-thumb{width:var(--thumb);height:var(--thumb);border-radius:var(--r-sm);border:1px solid var(--stroke);object-fit:cover;background:var(--surface-0)}.dz-thumb:not([src]){visibility:hidden}.dz-status{margin-bottom:var(--space-2);overflow:hidden;font-size:var(--fs-ui-label);line-height:var(--lh-ui);color:var(--ink-600);text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.dz-bar{height:var(--space-2);overflow:hidden;border-radius:var(--r-pill);background:var(--surface-2)}.dz-bar > span{display:block;width:0;height:100%;border-radius:var(--r-pill);background:var(--brand-700);transition:width var(--dur-state) var(--ease-out)}.dz-over-msg,.dz-upload,.dz-error,.dz-error-only{display:none}.dz[data-state="over"]{border-color:var(--brand-600);box-shadow:inset 0 0 0 1px var(--brand-600);background:var(--brand-50)}.dz[data-state="over"] > :not(.dz-over-msg){display:none}.dz[data-state="over"] > .dz-over-msg{display:flex}.dz[data-state="uploading"]{cursor:default}.dz[data-state="uploading"] > :not(.dz-upload){display:none}.dz[data-state="uploading"] > .dz-upload{display:grid}.dz[data-state="error"]{border-color:var(--danger)}.dz[data-state="error"] > .dz-formats{display:none}.dz[data-state="error"] > .dz-error{display:flex}.dz[data-state="error"] .dz-rest-only{display:none}.dz[data-state="error"] .dz-error-only{display:inline}.dz-pick{flex:none}.allowance{font-size:var(--fs-ui-body);line-height:var(--lh-ui);color:var(--ink-600)}.allowance:empty{display:none}@media (max-width:560px){.dz{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:var(--space-3)}.dz-foot,.dz-text{flex:none}.dz > .btn-primary{width:100%}.dz-upload{grid-template-columns:var(--thumb) minmax(0,1fr)}.dz-upload > .btn-ghost{grid-column:1 / -1;min-height:var(--control-md)}}.cropSheet{max-width:680px}.cropStage{position:relative;width:100%;height:min(58vh,420px);margin-top:var(--space-3);overflow:hidden;border-radius:var(--r-sm);background:var(--ink-900);touch-action:none}#cropCanvas{display:block;width:100%;height:100%;cursor:crosshair}.szinfo{min-height:var(--space-4);margin-top:var(--space-3);font-size:var(--fs-ui-micro);color:var(--ink-600)}.samples{margin-top:var(--space-4)}.samplesTitle{margin-bottom:var(--space-2);font-size:var(--fs-ui-micro);color:var(--ink-600)}.samplesRow{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2);max-width:var(--col-form);margin:0 auto}.sample{position:relative;display:block;aspect-ratio:3 / 4;padding:0;overflow:hidden;border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--surface-0);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.sample img{display:block;width:100%;height:100%;object-fit:cover}.sample:hover{border-color:var(--brand-600);transform:translateY(-1px)}@media (max-width:900px){.samplesRow{max-width:none}.cropStage{height:46vh}}
