/* ==========================================
   OJA EDE PROFILE
   profile.css
========================================== */

:root{

    --primary:#0F9D58;
    --primary-dark:#087443;
    --secondary:#FFC107;

    --background:#F6F8FA;
    --card:#FFFFFF;

    --text:#1F2937;
    --text-light:#6B7280;

    --danger:#E53935;

    --border:#E5E7EB;

    --radius:24px;

    --shadow:
    0 10px 30px rgba(0,0,0,.08);

}

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

body{

    background:var(--background);

    color:var(--text);

    font-family:
    "Poppins",
    sans-serif;

    padding:25px 18px 120px;

}

/* ==========================================
HEADER
========================================== */

.profile-header{

    display:flex;

    align-items:center;

    justify-content:space-between;

    margin-bottom:25px;

}

.profile-header h2{

    font-size:24px;

    font-weight:700;

}

.back-btn{

    width:45px;

    height:45px;

    border:none;

    border-radius:50%;

    background:#fff;

    box-shadow:var(--shadow);

    cursor:pointer;

    font-size:18px;

}

/* ==========================================
HERO CARD
========================================== */

.profile-hero{

    background:

    rgba(255,255,255,.92);

    backdrop-filter:blur(15px);

    border-radius:30px;

    padding:30px;

    text-align:center;

    box-shadow:var(--shadow);

    margin-bottom:25px;

}

.avatar-wrapper{

    position:relative;

    width:130px;

    height:130px;

    margin:auto;

}

.avatar-wrapper img{

    width:130px;

    height:130px;

    border-radius:50%;

    object-fit:cover;

    border:5px solid var(--primary);

}

#change-avatar-btn{

    position:absolute;

    right:0;

    bottom:0;

    width:42px;

    height:42px;

    border:none;

    border-radius:50%;

    background:var(--primary);

    color:#fff;

    cursor:pointer;

    box-shadow:0 6px 15px rgba(15,157,88,.35);

}

.profile-hero h1{

    margin-top:18px;

    font-size:28px;

    font-weight:700;

}

.member-badge{

    display:inline-flex;

    align-items:center;

    gap:8px;

    margin-top:10px;

    background:#E8F7EF;

    color:var(--primary);

    padding:8px 16px;

    border-radius:50px;

    font-size:14px;

    font-weight:600;

}

#joined-date{

    color:var(--text-light);

    margin-top:12px;

    font-size:14px;

}

/* ==========================================
PROFILE COMPLETION
========================================== */

.completion{

    margin-top:28px;

    text-align:left;

}

.completion-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:10px;

}

.completion-header span{

    font-size:14px;

    color:var(--text-light);

    font-weight:500;

}

.completion-header strong{

    color:var(--primary);

    font-size:15px;

}

.progress{

    width:100%;

    height:12px;

    background:#E5E7EB;

    border-radius:30px;

    overflow:hidden;

}

#completion-bar{

    width:0;

    height:100%;

    background:linear-gradient(
        90deg,
        #0F9D58,
        #37C871
    );

    border-radius:30px;

    transition:width .8s ease;

}

/* ==========================================
EDIT PROFILE BUTTON
========================================== */

#edit-profile-btn{

    margin-top:25px;

    width:100%;

    border:none;

    border-radius:18px;

    padding:16px;

    background:var(--primary);

    color:#fff;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}

#edit-profile-btn i{

    margin-right:8px;

}

#edit-profile-btn:hover{

    background:var(--primary-dark);

    transform:translateY(-2px);

}

/* ==========================================
PROFILE SECTIONS
========================================== */

.profile-section{

    background:#fff;

    border-radius:24px;

    padding:22px;

    margin-bottom:22px;

    box-shadow:var(--shadow);

}

.profile-section h3{

    font-size:18px;

    margin-bottom:18px;

    color:var(--text);

}

/* ==========================================
MENU LIST
========================================== */

.menu-list{

    display:flex;

    flex-direction:column;

}

.menu-list a{

    display:flex;

    align-items:center;

    justify-content:space-between;

    text-decoration:none;

    color:inherit;

    padding:16px 0;

    border-bottom:1px solid var(--border);

    transition:.25s;

}

.menu-list a:last-child{

    border-bottom:none;

}

.menu-list a:hover{

    transform:translateX(5px);

}

.menu-list a i:first-child{

    width:42px;

    height:42px;

    border-radius:14px;

    background:#EEF7F2;

    color:var(--primary);

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:18px;

    margin-right:15px;

    flex-shrink:0;

}

.menu-list span{

    flex:1;

    font-size:15px;

    font-weight:500;

}

.menu-list .fa-chevron-right{

    color:#BDBDBD;

    font-size:14px;

}

/* ==========================================
LOGOUT SECTION
========================================== */

.logout-section{

    text-align:center;

    margin-top:30px;

    margin-bottom:30px;

}

#logout-btn{

    width:100%;

    border:none;

    border-radius:22px;

    padding:18px;

    background:var(--danger);

    color:#fff;

    font-size:17px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

    box-shadow:
    0 10px 25px rgba(229,57,53,.25);

}

#logout-btn:hover{

    transform:translateY(-3px);

    background:#C62828;

}

#logout-btn i{

    margin-right:10px;

}

.logout-section p{

    margin-top:25px;

    font-size:16px;

    font-weight:700;

    color:var(--primary);

}

.logout-section small{

    display:block;

    margin-top:8px;

    color:var(--text-light);

    font-size:13px;

}

/* ==========================================
CARD ANIMATIONS
========================================== */

.profile-hero,

.profile-section,

.logout-section{

    animation:fadeUp .6s ease forwards;

}

.profile-section:nth-child(3){

    animation-delay:.1s;

}

.profile-section:nth-child(4){

    animation-delay:.2s;

}

.profile-section:nth-child(5){

    animation-delay:.3s;

}

.profile-section:nth-child(6){

    animation-delay:.4s;

}

.profile-section:nth-child(7){

    animation-delay:.5s;

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:

        translateY(30px);

    }

    to{

        opacity:1;

        transform:

        translateY(0);

    }

}

/* ==========================================
BUTTON PRESS EFFECT
========================================== */

button:active{

    transform:scale(.97);

}

.menu-list a:active{

    transform:scale(.98);

}

/* ==========================================
SCROLLBAR
========================================== */

::-webkit-scrollbar{

    width:7px;

}

::-webkit-scrollbar-thumb{

    background:#D5D5D5;

    border-radius:20px;

}

/* ==========================================
RESPONSIVE
========================================== */

@media (max-width:768px){

body{

    padding:18px 16px 120px;

}

.profile-header h2{

    font-size:22px;

}

.profile-hero{

    padding:25px;

}

.avatar-wrapper{

    width:110px;

    height:110px;

}

.avatar-wrapper img{

    width:110px;

    height:110px;

}

.profile-hero h1{

    font-size:24px;

}

.profile-section{

    padding:18px;

}

.menu-list span{

    font-size:14px;

}

}

/* ==========================================
TABLET
========================================== */

@media (min-width:769px){

.profile-hero{

    max-width:700px;

    margin:auto;

    margin-bottom:25px;

}

.profile-section{

    max-width:700px;

    margin-left:auto;

    margin-right:auto;

    margin-bottom:25px;

}

.logout-section{

    max-width:700px;

    margin:auto;

}

}

/* ==========================================
DARK MODE
========================================== */

body.dark{

    --background:#101418;

    --card:#1B1F24;

    --text:#F5F5F5;

    --text-light:#B8B8B8;

    --border:#2E3238;

}

body.dark .profile-section,

body.dark .profile-hero,

body.dark .back-btn{

    background:var(--card);

    color:var(--text);

}

body.dark .menu-list a{

    border-color:var(--border);

}

body.dark .member-badge{

    background:rgba(15,157,88,.15);

}

/* ==========================================
SAFE AREA
========================================== */

body{

    padding-bottom:
    calc(130px + env(safe-area-inset-bottom));

}