/* ==========================================
   NEBO MY ACCOUNT
========================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Poppins,sans-serif;
}

body{
    background:#F6F0E3;
    color:#0B1F3A;
}

/* Header */

.topbar{
    position:sticky;
    top:0;
    z-index:1000;
    height:72px;
    background:#0B1F3A;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 20px;
}

.topbar h2{
    color:#fff;
    font-size:24px;
    font-weight:700;
}

.backBtn{
    position:absolute;
    left:20px;
    width:46px;
    height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    color:#fff;
    font-size:24px;
}

/* Layout */

.accountContainer{
    max-width:900px;
    margin:30px auto;
    padding:0 18px;
}

/* Profile */

.profileCard{
    background:#fff;
    border:1px solid #E5E7EB;
    padding:40px 25px;
    text-align:center;
}

.profileCard img{
    width:120px;
    height:120px;
    border-radius:50%;
    object-fit:cover;
    border:4px solid #0B1F3A;
    margin-bottom:18px;
}

.profileCard h2{
    font-size:28px;
    color:#0B1F3A;
    margin-bottom:8px;
}

.profileCard p{
    color:#6B7280;
    margin-bottom:24px;
}

#editProfile{
    border:none;
    background:#0B1F3A;
    color:#fff;
    padding:14px 30px;
    font-size:15px;
    font-weight:700;
    cursor:pointer;
}

/* Menu */

.menuSection{
    margin-top:28px;
    background:#fff;
    border:1px solid #E5E7EB;
}

.menuItem{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:22px;
    text-decoration:none;
    color:#0B1F3A;
    border-bottom:1px solid #ECECEC;
}

.menuItem:last-child{
    border-bottom:none;
}

.menuItem:hover{
    background:#FAFAFA;
}

.menuItem>span:first-child{
    width:52px;
    height:52px;
    background:#0B1F3A;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
}

.menuItem div{
    flex:1;
}

.menuItem h3{
    font-size:18px;
    margin-bottom:4px;
}

.menuItem p{
    color:#6B7280;
    font-size:14px;
}

.menuItem>span:last-child{
    font-size:22px;
    color:#9CA3AF;
}

/* Logout */

.logoutBtn{
    width:100%;
    margin-top:28px;
    border:none;
    background:#C62828;
    color:#fff;
    padding:16px;
    font-size:16px;
    font-weight:700;
    cursor:pointer;
}

/* Modal */

.modal{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.6);
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
    z-index:5000;
}

.modal.active{
    display:flex;
}

.modalContent{
    width:100%;
    max-width:520px;
    max-height:90vh;
    overflow:auto;
    background:#fff;
    padding:30px;
}

.modalContent h2{
    color:#0B1F3A;
    margin-bottom:22px;
}

.photoArea{
    text-align:center;
    margin-bottom:24px;
}

.photoArea img{
    width:110px;
    height:110px;
    border-radius:50%;
    object-fit:cover;
    border:4px solid #0B1F3A;
    margin-bottom:16px;
}

#changePhotoBtn{
    border:none;
    background:#0B1F3A;
    color:#fff;
    padding:12px 20px;
    cursor:pointer;
}

.modalContent input{
    width:100%;
    height:54px;
    margin-bottom:16px;
    border:1px solid #D1D5DB;
    padding:0 16px;
    font-size:15px;
    outline:none;
}

.modalContent input:focus{
    border-color:#0B1F3A;
}

.modalContent hr{
    margin:24px 0;
    border:none;
    border-top:1px solid #E5E7EB;
}

.modalContent h3{
    margin-bottom:18px;
    color:#0B1F3A;
}

.modalButtons{
    display:flex;
    gap:14px;
    margin-top:10px;
}

.modalButtons button{
    flex:1;
    height:54px;
    border:none;
    font-size:15px;
    font-weight:700;
    cursor:pointer;
}

#saveProfile{
    background:#0B1F3A;
    color:#fff;
}

#closeModal{
    background:#E5E7EB;
    color:#0B1F3A;
}

/* Mobile */

@media(max-width:768px){

.accountContainer{
    margin:20px auto;
}

.profileCard{
    padding:30px 18px;
}

.profileCard h2{
    font-size:24px;
}

.menuItem{
    padding:18px;
}

.menuItem>span:first-child{
    width:46px;
    height:46px;
    font-size:20px;
}

.menuItem h3{
    font-size:17px;
}

.menuItem p{
    font-size:13px;
}

.modalContent{
    padding:22px;
}

.modalButtons{
    flex-direction:column;
}

}