*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

background:#FFC107;

font-family:Poppins,sans-serif;

display:flex;

justify-content:center;

align-items:center;

min-height:100vh;

padding:20px;

}

.register-box{

width:100%;
max-width:450px;

background:#fff;

padding:40px;

border-radius:20px;

box-shadow:0 15px 40px rgba(0,0,0,.12);

text-align:center;

}

.logo{

width:170px;

margin-bottom:20px;

}

h2{

font-size:30px;

margin-bottom:10px;

}

p{

color:#666;

margin-bottom:25px;

}

form input{

width:100%;

padding:15px;

margin-bottom:15px;

border:1px solid #ddd;

border-radius:10px;

font-size:16px;

outline:none;

}

form input:focus{

border-color:#FFC107;

}

.check{

display:flex;

gap:10px;

font-size:14px;

margin:10px 0 20px;

align-items:center;

}

button{

width:100%;

padding:16px;

background:#111;

color:#fff;

border:none;

border-radius:10px;

font-size:18px;

font-weight:600;

cursor:pointer;

transition:.3s;

}

button:hover{

background:#000;

}

.login-link{

margin-top:25px;

font-size:15px;

}

.login-link a{

text-decoration:none;

font-weight:700;

color:#111;

}

@media(max-width:480px){

.register-box{

padding:25px;

}

.logo{

width:140px;

}

h2{

font-size:24px;

}

}

.profile-upload{
text-align:center;
margin-bottom:20px;
}

.profile-preview{
width:120px;
height:120px;
border-radius:50%;
object-fit:cover;
border:4px solid #FFC107;
margin-bottom:12px;
background:#eee;
}

.upload-btn{
display:inline-block;
background:#FFC107;
color:#111;
padding:10px 18px;
border-radius:30px;
font-weight:600;
cursor:pointer;
margin-bottom:8px;
}

.upload-btn:hover{
background:#ffb300;
}

.profile-upload small{
display:block;
font-size:12px;
color:#777;
margin-top:5px;
}

.error-message{
background:#ffe5e5;
color:#d10000;
padding:12px;
border-radius:8px;
margin-bottom:15px;
font-size:14px;
text-align:center;
}


.profile-upload{

    display:flex;
    flex-direction:column;
    align-items:center;
    margin-bottom:30px;

}

.profile-label{

    position:relative;
    cursor:pointer;

}

.profile-preview{

    width:120px;
    height:120px;
    border-radius:50%;
    object-fit:cover;
    border:4px solid #FFC107;
    background:#f3f3f3;
    transition:.3s;

}

.profile-preview:hover{

    transform:scale(1.03);

}

.camera-icon{

    position:absolute;
    bottom:5px;
    right:5px;

    width:36px;
    height:36px;

    border-radius:50%;
    background:#FFC107;

    display:flex;
    justify-content:center;
    align-items:center;

    font-size:18px;

    box-shadow:0 4px 12px rgba(0,0,0,.2);

}

.upload-text{

    margin-top:12px;
    font-size:15px;
    font-weight:600;
    color:#555;

}