.auth-card--wide { max-width: 480px; }

.upload-field { margin-bottom: var(--space-4); }

.upload-box {
    position: relative;
    border: 1.5px dashed var(--color-border);
    border-radius: 12px;
    height: 140px;
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; overflow: hidden;
    background: var(--color-bg-alt);
    transition: border-color 0.2s ease, background 0.2s ease;
}
.upload-box:hover {
    border-color: var(--color-primary);
    background: var(--color-primary-light);
}
.upload-box__preview {
    width: 100%; height: 100%; object-fit: cover;
}
.upload-box__placeholder {
    display: flex; flex-direction: column; align-items: center; gap: var(--space-1);
    color: var(--color-text-secondary); font-size: var(--font-size-sm);
    text-align: center; padding: 0 var(--space-2);
}
.upload-box__icon {
    width: 28px; height: 28px; opacity: 0.5;
}
.upload-box--filled { border-style: solid; }
.upload-box__remove {
    position: absolute; top: var(--space-1); right: var(--space-1);
    width: 26px; height: 26px; border-radius: 50%;
    background: rgba(0,0,0,0.55); color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 14px; line-height: 1;
}
.upload-box__remove:hover { background: rgba(0,0,0,0.75); }

.upload-box__actions {
    display: flex; align-items: center; gap: var(--space-2);
    margin-top: var(--space-2); font-size: var(--font-size-sm);
}
.upload-box__divider { color: var(--color-text-secondary); }

.upload-box__preview { width: 100%; height: 100%; object-fit: cover; }
.upload-box__placeholder { color: var(--color-text-secondary); font-size: var(--font-size-sm); }

.checkbox-row {
    display: flex; align-items: flex-start; gap: var(--space-2);
    font-size: var(--font-size-sm); margin: var(--space-3) 0;
}
.checkbox-row input { margin-top: 3px; }
.checkbox-row a { color: var(--color-primary); font-weight: 600; }