:root{
    --tm-navy:#02182B;
    --tm-gold:#C69C40;
    --tm-gold-hover:#b08a35;
    --text-muted:#64748B;
  }

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

  body{
    height:100vh;
    display:flex;
    overflow:hidden;
    background:#fff;
  }

  /* LEFT SIDE (BRANDING) */
  .brand-side{
    flex:1;
    background: url("/bg-client.webp") center/cover no-repeat;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    padding:40px;
    position:relative;
  }

  .brand-pattern,
  .brand-content,
  .brand-overlay,
  .overlay,
  .brand-text{
    display:none !important;
  }

  /* RIGHT SIDE (LOGIN) */
  .login-side{
    width:500px;
    max-width:100%;
    background:#fff;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:60px;
  }

  .logo-img{
    width:180px;
    max-width:60%;
    height:auto;
    margin-bottom:36px;
  }

  .form-header{
    margin-bottom:28px;
  }

  .form-header h2{
    font-family:'Poppins',sans-serif;
    font-size:28px;
    color:var(--tm-navy);
    margin-bottom:6px;
    font-weight: 700;
  }

  .form-header p{
    color:var(--text-muted);
    font-size:14px;
  }

  /* FORM */
  .input-group{margin-bottom:20px;}
  .input-group label{
    display:block;
    font-size:13px;
    font-weight:600;
    color:var(--tm-navy);
    margin-bottom:8px;
  }

  .input-wrapper{
    position:relative;
  }

  .input-wrapper input{
    width:100%;
    padding:14px 44px 14px 14px;
    border:1px solid #E2E8F0;
    border-radius:8px;
    font-size:14px;
    outline:none;
    transition:.2s;
  }

  .input-wrapper input:focus{
    border-color:var(--tm-gold);
    box-shadow:0 0 0 3px rgba(198,156,64,.12);
  }

  .input-wrapper i{
    position:absolute;
    left:14px;
    top:50%;
    transform:translateY(-50%);
    color:var(--text-muted);
    font-size:20px;
    transition:opacity .2s;
  }

  .input-wrapper:focus-within i{
    opacity:0;
  }

  .input-wrapper.has-value i{
    opacity:0;
  }

  .toggle-pass{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    border:0;
    background:transparent;
    cursor:pointer;
    font-size:18px;
    opacity:.7;
  }
  .toggle-pass:hover{opacity:1;}

  .actions{
    display:flex;
    justify-content:space-between;
    margin-bottom:24px;
    font-size:13px;
  }

  .actions label{
    display:flex;
    gap:8px;
    align-items:center;
    cursor:pointer;
  }

  .actions a{
    color:var(--tm-gold);
    cursor: pointer;
  }
  .actions a:hover{
    text-decoration: underline;
  }

  .btn-login{
    width:100%;
    padding:14px;
    background:var(--tm-gold);
    color:#fff;
    border:none;
    border-radius:8px;
    font-size:15px;
    font-weight:700;
    cursor:pointer;
    font-family:'Poppins',sans-serif;
    transition:.2s;
  }
  .btn-login:hover{background:var(--tm-gold-hover);}

  .sso-divider{
    display:flex;
    align-items:center;
    gap:12px;
    color:var(--text-muted);
    font-size:12px;
    margin:18px 0;
  }
  .sso-divider::before,
  .sso-divider::after{
    content:"";
    flex:1;
    height:1px;
    background:#E2E8F0;
  }
  .btn-sso{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:12px;
    border:1px solid #E2E8F0;
    border-radius:8px;
    text-decoration:none;
    color:var(--tm-navy);
    font-size:14px;
    font-weight:600;
    transition:.2s;
  }
  .btn-sso:hover{
    border-color:var(--tm-gold);
    box-shadow:0 0 0 3px rgba(198,156,64,.12);
  }
  .btn-sso-icon{
    width:22px;
    height:22px;
    border-radius:50%;
    background:#fff;
    border:1px solid #E2E8F0;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    color:#EA4335;
  }

  .signup-link{
    text-align:center;
    margin-top:16px;
    font-size:14px;
    color:var(--text-muted);
  }
  .signup-link a{
    color:var(--tm-gold);
    text-decoration: none;
  }
  .signup-link a:hover{
    text-decoration: underline;
  }

  /* RESPONSIVE */
  @media(max-width:900px){
    .brand-side{display:none;}
    .login-side{width:100%;}
  }
