
/* -------------------------------------------------- */
/*                 GLOBAL VARIABLES                    */
/* -------------------------------------------------- */
:root {
    --green-main: #16A34A;
    --green-pill: #0F9F6E;
    --green-pill-bg: #E6F7EE;

    --bg-body: #F5F7FA;
    --bg-card: #FFFFFF;

    --text-dark: #1A1D1F;
    --text-light: #6B7280;

    --border-soft: #E5E7EB;
    --border-card: #EAEDF0;

    --radius-card: 16px;
    --radius-pill: 30px;

    --shadow-card: 0 4px 16px rgba(0,0,0,0.06);
}

/* -------------------------------------------------- */
/*               GLOBAL DEFAULT STYLING                */
/* -------------------------------------------------- */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:"Inter",sans-serif;
}

body{
    background:var(--bg-body);
    min-height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;
    padding:20px;
}

h1,h2,h3{
    color:var(--text-dark);
    font-weight:600;
}

p,small,label{
    color:var(--text-light);
}

/* -------------------------------------------------- */
/*                      CARD WRAPPER                   */
/* -------------------------------------------------- */
.login-card{
    width:100%;
    max-width:420px;
    background:var(--bg-card);
    border:1px solid var(--border-card);
    border-radius:var(--radius-card);
    box-shadow:var(--shadow-card);
    padding:32px 36px;
}

/* -------------------------------------------------- */
/*                  LOGO + TITLE SECTION               */
/* -------------------------------------------------- */
.logo{
    font-size:26px;
    font-weight:700;
    color:var(--green-main);
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:20px;
}

.logo i{
    font-size:28px;
}

.login-card h2{
    margin-bottom:6px;
    font-size:24px;
}

.login-card p{
    margin-bottom:28px;
    font-size:14px;
}

/* -------------------------------------------------- */
/*                      FORM SECTION                   */
/* -------------------------------------------------- */
.input-group{
    margin-bottom:20px;
}

label{
    display:block;
    margin-bottom:6px;
    font-size:14px;
}

input{
    width:100%;
    padding:14px 16px;
    border-radius:12px;
    border:2px solid var(--border-soft);
    background:white;
    font-size:14px;
    outline:none;
}

input:focus{
    border-color:var(--green-main);
}

/* -------------------------------------------------- */
/*                      BUTTONS                        */
/* -------------------------------------------------- */
.btn{
    width:100%;
    padding:14px 16px;
    background:var(--green-main);
    color:white;
    font-size:15px;
    border:none;
    border-radius:12px;
    cursor:pointer;
    font-weight:600;
    transition:0.2s ease;
}

.btn:hover{
    background:#0d8a3f;
}

.forgot{
    text-align:right;
    font-size:14px;
    margin-top:-10px;
    margin-bottom:20px;
}

.forgot a{
    color:var(--green-main);
    text-decoration:none;
}

/* -------------------------------------------------- */
/*                   FOOTER LINKS                      */
/* -------------------------------------------------- */
.register{
    margin-top:24px;
    text-align:center;
    font-size:14px;
}

.register a{
    color:var(--green-main);
    text-decoration:none;
}

/* -------------------------------------------------- */
/*                    MOBILE FRIENDLY                  */
/* -------------------------------------------------- */
@media(max-width:500px){
    .login-card{
        padding:26px 24px;
    }
}