/* WRAPPER */
.auth-wrapper{
    min-height:100vh;
    background: #f4f6f9; /* soft gray */
    padding:40px 15px;
}

/* CARD */
.auth-container{
    max-width:650px;
    margin:auto;
    background:#ffffff;
    padding:35px;
    border-radius:16px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    color:#1f2937;
}

/* HEADINGS */
.auth-container h2{
    text-align:center;
    margin-bottom:10px;
    font-weight:600;
}

.auth-container h3{
    margin-top:25px;
    font-size:15px;
    border-left:4px solid #2563eb;
    padding-left:10px;
    color:#374151;
}

/* INPUTS */
.auth-container input,
.auth-container select{
    width:100%;
    padding:12px;
    margin-top:10px;
    border-radius:10px;
    border:1px solid #e5e7eb;
    background:#fff;
    color:#111827;
    transition:0.25s;
}

/* PLACEHOLDER */
.auth-container input::placeholder{
    color:#9ca3af;
}

/* FOCUS */
.auth-container input:focus,
.auth-container select:focus{
    border-color:#2563eb;
    box-shadow:0 0 0 3px rgba(37,99,235,0.1);
}

/* PASSWORD ICON */
.input-group{
    position:relative;
}

.toggle-eye{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    cursor:pointer;
    color:#6b7280;
}

/* BUTTON */
.auth-container button{
    width:100%;
    padding:14px;
    background:#2563eb;
    color:#fff;
    border:none;
    border-radius:12px;
    font-weight:600;
    margin-top:20px;
    transition:0.25s;
}

.auth-container button:hover{
    background:#1d4ed8;
    transform:translateY(-1px);
}

/* AGE DISPLAY */
#ageDisplay{
    font-weight:500;
    color:#374151;
}

/* MOBILE */
@media(max-width:768px){
    .auth-container{
        padding:25px;
    }
}
/* ================= FORM GROUP ================= */
.form-group{
    margin-bottom:15px;
    text-align:left;
}

.form-group label{
    font-size:13px;
    font-weight:500;
    display:block;
    margin-bottom:5px;
    color:#374151;
}

.form-group i{
    margin-right:6px;
    color:#111827;
}
/* FIX TEXTAREA ALIGNMENT */
.form-group textarea{
    width:100%;
    padding:12px;
    border-radius:10px;
    border:1px solid #e5e7eb;
    outline:none;
    transition:0.2s;
    resize:none;
    min-height:100px;
    font-family:'Poppins', sans-serif;
}

/* FOCUS */
.form-group textarea:focus{
    border-color:#111827;
    box-shadow:0 0 0 3px rgba(0,0,0,0.05);
}
.form-group{
    margin-bottom:18px; /* dagdag spacing */
}
/* FIX TEXTAREA ALIGNMENT */
.form-group textarea{
    width:100%;
    display:block;
    margin-top:8px;
    padding:12px;
    border-radius:10px;
    border:1px solid #e5e7eb;
    resize:none;
}

/* FIX LABEL SPACING */
.form-group label{
    display:block;
    margin-bottom:5px;
}
.terms-box{
    justify-content:center;
}
/* TERMS BOX */

.terms-box{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:15px;
}

.terms-box input[type="checkbox"]{
    width:18px;
    height:18px;
    cursor:pointer;
}

.terms-box label{
    font-size:14px;
    color:#333;
}

.terms-box a{
    color:#2563eb;
    text-decoration:none;
}

.terms-box a:hover{
    text-decoration:underline;
}
.modal{
    display:none;
    position:fixed;
    z-index:999;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.5);
}

.modal-content{
    background:#fff;
    width:90%;
    max-width:800px;
    margin:3% auto;
    padding:20px;
    border-radius:10px;
    position:relative;
}

.modal iframe{
    width:100%;
    height:70vh;
    border:none;
    border-radius:10px;
}

.close{
    position:absolute;
    right:15px;
    top:10px;
    font-size:28px;
    cursor:pointer;
}
.open-modal{
    color:#2563eb;
    font-weight:600;
    cursor:pointer;
    text-decoration:none;
}

.open-modal:hover{
    color:#1d4ed8;
    text-decoration:underline;
}