
    :root{
      --bg: #0f0f0f;
      --card-bg: #ffffff;
      --muted: #8b93a0;
      --input-bg: #f6f6f6;
      --primary: #0f1d37; /* deep navy */
      --radius: 18px;
      --max-w: 520px;
      --font: 'Inter', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
    }

    * { box-sizing: border-box; }
    html,body { height:100%; margin:0; font-family:var(--font); background:var(--bg); color:#1d2a3a; }

    .page{
      min-height:100vh;
      display:flex;
      align-items:center;
      justify-content:center;
      padding: 48px 24px;
    }

    .forgot-card{
      width:100%;
      max-width: var(--max-w);
      background: var(--card-bg);
      border-radius: var(--radius);
      padding: 44px 48px;
      box-shadow: 0 6px 30px rgba(0,0,0,0.55);
      text-align: center;
    }

    .title{
      font-size: 30px;
      margin: 0 0 8px 0;
      font-weight: 700;
      color: #1d2a3a;
      letter-spacing: 0.2px;
    }

    .subtitle{
      color: var(--muted);
      margin: 0 0 28px 0;
      font-size: 14px;
      max-width: 420px;
      margin-left:auto;
      margin-right:auto;
      line-height:1.5;
    }

    .forgot-form {
      display:flex;
      flex-direction:column;
      gap: 18px;
      margin-top: 6px;
    }

    .label{
      display:block;
      text-align:left;
      font-size:13px;
      color:#3b4b59;
      font-weight:600;
      margin-left:2px;
    }

    .input{
      width:100%;
      height:48px;
      border-radius:10px;
      border: none;
      background: var(--input-bg);
      padding: 12px 16px;
      font-size: 15px;
      color: #333;
      outline: none;
      box-shadow: inset 0 0 0 1px rgba(20,20,20,0.03);
    }

    .input:focus {
      box-shadow: 0 0 0 2px rgba(15,29,55,0.2);
    }

    .primary-btn{
      height:52px;
      border-radius: 10px;
      border: none;
      background: var(--primary);
      color: #fff;
      font-weight:700;
      font-size:15px;
      cursor:pointer;
      margin-top:6px;
      transition: all 0.2s ease;
    }

    .primary-btn:hover{
      background:#16294d;
      transform: translateY(-1px);
    }

    .links{
      margin-top: 20px;
      display:flex;
      flex-direction:column;
      gap: 12px;
      align-items:center;
    }

    .link{
      font-size: 14px;
      color: var(--primary);
      text-decoration: none;
      font-weight:600;
      transition: color 0.2s;
    }

    .link:hover { color:#16294d; }

    .link.subtle{
      color: var(--muted);
      font-weight:400;
    }

    @media (max-width:420px){
      .forgot-card{
        padding: 28px 20px;
        border-radius: 14px;
      }
      .title{ font-size: 22px; }
      .subtitle{ font-size:13px; }
      .primary-btn{ height:48px; }
    }
  