@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root{
    --bg:#C4936A;

    --card:#271303;
    --card-secondary:#1d2735;

    --border:rgba(255,255,255,.06);

    --text:#edf4ff;
    --muted:#C4936A;

    --accent:#573519;
    --accent-hover:#C4936A;

    --danger:#f87171;
    --success:#4ade80;

    --radius:18px;

    --transition:.15s cubic-bezier(.2,.8,.2,1);
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    min-height:100vh;
    min-height:100dvh;

    display:flex;
    justify-content:center;
    align-items:center;

    padding:20px;

    font-family:'Inter',sans-serif;

    background:
    linear-gradient(rgba(8,12,18,.82), rgba(8,12,18,.88)),
    url('./img/assest/bagground.png');

    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;

    color:var(--text);

    -webkit-font-smoothing:antialiased;
}

/* ======================
   LOGIN CARD
====================== */

.login-container{
    width:100%;
    max-width:410px;

    background:var(--card);

    border:1px solid var(--border);

    border-radius:var(--radius);

    overflow:hidden;

    box-shadow:
    0 18px 45px rgba(0,0,0,.35);
}

/* top accent */
.top-bar{
    width:100%;
    height:3px;

    background:var(--accent);
}

/* ======================
   HEADER
====================== */

.login-header{
    padding:28px 28px 22px;

    border-bottom:1px solid var(--border);

    background:
    linear-gradient(
    180deg,
    rgba(255,255,255,.02),
    transparent
    );
}

.header-brand{
    display:flex;
    align-items:center;
    gap:14px;
}

.header-logo{
    width:58px;
    height:58px;

    object-fit:contain;
}

.header-text h1{
    font-size:22px;

    font-weight:700;

    letter-spacing:.03em;

    color:var(--text);
}

.header-text p{
    margin-top:6px;

    color:var(--muted);

    font-size:12px;

    line-height:1.6;
}

/* ======================
   BODY
====================== */

.login-body{
    padding:26px 28px 28px;
}

.input-group{
    margin-bottom:18px;
}

.input-group label{
    display:block;

    margin-bottom:8px;

    font-size:11px;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

    color:#bfd1ea;
}

.input-group input{
    width:100%;
    height:50px;

    padding:0 15px;

    border-radius:13px;

    border:1px solid var(--border);

    background:var(--bg);

    color:var(--text);

    font-size:13px;

    outline:none;

    transition:
    border-color var(--transition),
    background var(--transition),
    box-shadow var(--transition);
}

.input-group input::placeholder{
    color:#70839f;
}

.input-group input:focus{
    border-color:rgba(122,162,247,.45);

    box-shadow:
    0 0 0 4px rgba(122,162,247,.08);
}

/* ======================
   BUTTON
====================== */
/* From Uiverse.io by adamgiebl */ 
button {
  border: none;
  display: block;
  position: relative;
  padding: 0.7em 2.4em;
  font-size: 18px;
  background: transparent;
  cursor: pointer;
  user-select: none;
  overflow: hidden;
  color: royalblue;
  z-index: 1;
  font-family: inherit;
  font-weight: 500;
}

button span {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: transparent;
  z-index: -1;
  border: 4px solid royalblue;
}

button span::before {
  content: "";
  display: block;
  position: absolute;
  width: 8%;
  height: 500%;
  background: var(--lightgray);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-60deg);
  transition: all 0.3s;
}

button:hover span::before {
  transform: translate(-50%, -50%) rotate(-90deg);
  width: 100%;
  background: royalblue;
}

button:hover {
  color: white;
}

button:active span::before {
  background: #2751cd;
}

.login-button{
    width:100%;
    height:52px;

    border:none;

    border-radius:14px;

    background:var(--accent);

    color:white;

    font-size:12px;

    font-weight:700;

    letter-spacing:.12em;

    cursor:pointer;

    transition:
    background var(--transition),
    transform var(--transition),

}

.login-button:hover{
    background:var(--accent-hover);

    transform:translateY(-1px);
}

.login-button:active{
    transform:scale(.99);
}

/* ======================
   REGISTER
====================== */

.register-text{
    margin-top:16px;

    text-align:center;
}

.register-text a{
    color:var(--accent);

    text-decoration:none;

    color: #ffffff;

    font-size:12px;

    font-weight:500;
}

/* ======================
   NOTIFICATION
====================== */

.login-notify{
    margin-top:16px;

    padding:13px;

    border-radius:13px;

    text-align:center;

    font-size:12px;

    font-weight:600;

    border:1px solid;
}

.login-notify.success{
    background:rgba(74,222,128,.08);

    border-color:rgba(74,222,128,.20);

    color:#bbf7d0;
}

.login-notify.error{
    background:rgba(248,113,113,.08);

    border-color:rgba(248,113,113,.20);

    color:#fecaca;
}

/* ======================
   RESPONSIVE
====================== */

@media(max-width:480px){

    body{
        padding:14px;
    }

    .login-container{
        max-width:100%;
    }

    .login-header{
        padding:24px 22px 20px;
    }

    .login-body{
        padding:22px;
    }

    .header-logo{
        width:52px;
        height:52px;
    }

    .header-text h1{
        font-size:20px;
    }

    .input-group input,
    .login-button{
        height:48px;
    }
}