/* ===========================================================
   REGISTER PLAYER — simple centered form page
===========================================================*/

.register-wrap{
    max-width:660px;
    margin:var(--space-7) auto;
    padding:0 var(--space-4);
}

.register-card{
    border:1px solid var(--color-gold);
    border-radius:var(--radius-lg);
    padding:var(--space-6);
    background:var(--color-surface);
}

.register-head{
    text-align:center;
    margin-bottom:var(--space-6);
}

.register-head .icon{
    font-size:2.2rem;
    display:inline-block;
    margin-bottom:var(--space-3);
    color:var(--color-gold);
}

.register-head h1{
    font-size:1.6rem;
    margin-bottom:6px;
}

.register-head h1 .gold{
    color:var(--color-gold);
}

.register-head p{
    color:var(--color-text-muted);
    font-size:var(--fs-small);
    margin-bottom:var(--space-3);
}

.register-head::after{
    content:"";
    display:block;
    width:60px;
    height:2px;
    background:var(--color-gold);
    margin:var(--space-3) auto 0;
}

.register-form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:var(--space-4);
    margin-bottom:var(--space-4);
}

.register-form-group label{
    display:block;
    font-size:var(--fs-small);
    font-weight:600;
    margin-bottom:8px;
}

.register-form-group label .required{
    color:var(--color-danger);
}

.register-form-group label .optional{
    color:var(--color-text-faint);
    font-weight:400;
}

.register-input-icon{
    position:relative;
}

.register-input-icon svg,
.register-input-icon .field-icon{
    position:absolute;
    left:14px;
    top:50%;
    transform:translateY(-50%);
    color:var(--color-text-faint);
    pointer-events:none;
}

.register-input-icon .form-control{
    padding-left:40px;
}

.register-hint{
    font-size:var(--fs-tiny);
    color:var(--color-text-faint);
    margin-top:6px;
}

.register-upload-zone{
    border:2px dashed var(--color-border);
    border-radius:var(--radius-md);
    padding:var(--space-6) var(--space-4);
    text-align:center;
    cursor:pointer;
    transition:border-color var(--transition-fast);
}

.register-upload-zone:hover,
.register-upload-zone.drag-over{
    border-color:var(--color-gold);
}

.register-upload-zone .icon{
    font-size:1.8rem;
    color:var(--color-text-faint);
    margin-bottom:var(--space-2);
}

.register-upload-zone .primary-text{
    font-weight:600;
    font-size:var(--fs-small);
}

.register-upload-zone .secondary-text{
    font-size:var(--fs-tiny);
    color:var(--color-text-faint);
    margin-top:4px;
}

.register-upload-preview{
    display:none;
    align-items:center;
    gap:var(--space-3);
    margin-top:var(--space-3);
}

.register-upload-preview.show{
    display:flex;
}

.register-upload-preview img{
    width:56px;
    height:56px;
    border-radius:var(--radius-sm);
    object-fit:cover;
    border:1px solid var(--color-border);
}

.register-upload-preview .filename{
    font-size:var(--fs-small);
    color:var(--color-text-muted);
    word-break:break-all;
}

.register-submit-btn{
    width:100%;
    margin-top:var(--space-2);
}

.register-footnote{
    text-align:center;
    font-size:var(--fs-tiny);
    color:var(--color-text-faint);
    margin-top:var(--space-4);
    line-height:1.6;
}

@media (max-width: 600px){
    .register-form-row{
        grid-template-columns:1fr;
        gap:var(--space-3);
    }

    .register-card{
        padding:var(--space-4);
    }
}