
    /* ===== BEST LOGIN (CENTERED, PREMIUM, TEMPLATE-FRIENDLY) ===== */
    .auth-page{

      padding: 85px 0;
      position: relative;
      display:flex;
      align-items:center;
    }


        /* validation */
        .err {
          display: none;
          margin-top: 6px;
          font-size: 12px;
          font-weight: 500;
          color: #b00020;
        }
    
        .is-invalid {
          border-color: rgba(176, 0, 32, .45) !important;
          box-shadow: 0 0 0 4px rgba(176, 0, 32, .08) !important;
        }
      


    .auth-shell{
      position: relative;
      z-index: 2;
      width: 100%;
      max-width: 560px;
      margin: 0 auto;
      border-radius: 24px;
      background: #fff;
      border: 1px solid rgba(0,0,0,.06);
      box-shadow: 0 35px 100px rgba(0,0,0,.12);
      overflow: hidden;
    }

    /* top accent header */
    .auth-top{
      padding: 22px 26px;

          color: var(--title-color);
    }

    .primary-btn6{
      border: 0;
    }

    .auth-logo{
      display:flex;
      align-items:center;
      gap: 10px;
      text-decoration:none;
      color:#fff;
    }
    .auth-logo img{ height: 26px; }
    .auth-chip{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding: 9px 12px;
      border-radius: 999px;
      background: rgba(255,255,255,.10);
      border: 1px solid rgba(255,255,255,.12);
      font-size: 12px;
      font-weight: 700;
      letter-spacing:.2px;
      white-space: nowrap;
    }
    .auth-head{
      margin-top: 14px;
    }
    .auth-head h1{
      font-size: 26px;
      font-weight: 600;
      margin: 0 0 6px;
      line-height: 1.15;
    }
    .auth-head p{
      margin: 0;
      opacity: .86;
    }

    .auth-body{
      padding: 26px;
    }
    @media (max-width: 575px){
      .auth-top, .auth-body{ padding: 18px; }
      .auth-shell{ border-radius: 18px; }
    }

    /* fields */
    .field{ margin-bottom: 14px; }
    .field .lbl{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 12px;
      margin-bottom: 8px;
      font-size: 13px;
      font-weight: 600;
      color: rgba(0,0,0,.75);
    }
    .field .lbl a{
      font-size: 12px;
      font-weight: 600;
      text-decoration:none;
      color: rgba(0,0,0,.55);
    }
    .field .lbl a:hover{ color: rgba(0,0,0,.85); }

    .inwrap{ position: relative; }
    .inicon{
      position:absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 18px;
      color: rgba(0,0,0,.45);
    }
    .auth-input{
      width:100%;
      height: 54px;
      border-radius: 14px;
      border: 1px solid rgba(0,0,0,.12);
      padding: 0 14px 0 46px;
      outline: none;
      transition: .2s ease;
      font-weight: 650;
      background: #fff;
    }
    .auth-input:focus{
      border-color: rgba(0,0,0,.35);
      box-shadow: 0 0 0 4px rgba(0,0,0,.06);
    }

    .pw-btn{
      position:absolute;
      right: 10px;
      top: 50%;
      transform: translateY(-50%);
      width: 40px;
      height: 40px;
      border-radius: 12px;
      border: 1px solid rgba(0,0,0,.10);
      background:#fff;
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
    }

    /* remember row */
    .meta-row{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 12px;
      flex-wrap: wrap;
      margin: 14px 0 18px;
    }

    /* ticker switch */
    .switch{
      display:flex;
      align-items:center;
      gap: 10px;
      user-select:none;
      cursor:pointer;
    }
    .switch input{ display:none; }
    .slider{
      width: 50px;
      height: 28px;
      border-radius: 999px;
      background: rgba(0,0,0,.18);
      position: relative;
      transition: .2s ease;
      box-shadow: inset 0 0 0 1px rgba(0,0,0,.12);
    }
    .slider:after{
      content:"";
      position:absolute;
      width: 22px;
      height: 22px;
      top: 3px;
      left: 3px;
      border-radius: 50%;
      background:#fff;
      box-shadow: 0 10px 20px rgba(0,0,0,.18);
      transition: .2s ease;
    }
    .switch input:checked + .slider{
      background: #0f1013;
    }
    .switch input:checked + .slider:after{
      transform: translateX(22px);
    }
    .switch .txt{
      font-weight: 600;
      font-size: 14px;
      color: rgba(0,0,0,.70);
    }

    .secure-note{
      display:flex;
      align-items:center;
      gap: 8px;
      font-size: 12px;
      font-weight: 600;
      color: rgba(0,0,0,.45);
    }

    /* actions */
    .actions{
      display:flex;
      gap: 12px;
      flex-wrap: wrap;
      margin-top: 6px;
    }
    .actions .primary-btn6{
      width: 100%;
      justify-content:center;
    }
    @media (min-width: 576px){
      .actions .primary-btn6{ width: auto; }
      .actions .primary-btn6:first-child{ flex: 1; }
    }

    .helper{
      margin-top: 16px;
      padding: 14px;
      border-radius: 16px;
      background: rgba(0,0,0,.03);
      border: 1px solid rgba(0,0,0,.06);
      display:flex;
      gap: 10px;
      align-items:flex-start;
      color: rgba(0,0,0,.65);
      font-size: 14px;
      align-items: center;
    }
    .helper i{ font-size: 18px; margin-top: 1px; }

    .bottom-links{
      margin-top: 14px;
      display:flex;
      justify-content:space-between;
      gap: 12px;
      flex-wrap: wrap;
      font-size: 14px;
    }
    .bottom-links a{
      text-decoration:none;
      font-weight: 850;
    }

            /* Success box (green accent) */
            .ok.ok-green {
              display: flex;
              /* hidden until JS shows it */
              padding: 14px 14px;
              border-radius: 16px;
              background: rgba(22, 163, 74, .08);
              /* soft green */
              border: 1px solid rgba(22, 163, 74, .22);
              box-shadow: 0 18px 45px rgba(0, 0, 0, .06);
              gap: 12px;
              align-items: flex-start;
              margin-bottom: 12px;
            }
      
            .ok.ok-green .ok-ic {
              width: 42px;
              height: 42px;
              border-radius: 14px;
              background: rgba(22, 163, 74, .14);
              border: 1px solid rgba(22, 163, 74, .28);
              display: flex;
              align-items: center;
              justify-content: center;
              flex: 0 0 42px;
            }
      
            .ok.ok-green .ok-ic i {
              font-size: 22px;
              color: #16a34a;
            }
      
            .ok.ok-green .ok-title {
              font-weight: 600;
              font-size: 14px;
              color: rgba(0, 0, 0, .82);
              line-height: 1.2;
              margin-top: 2px;
            }
      
            .ok.ok-green .ok-sub {
              margin-top: 4px;
              color: rgba(0, 0, 0, .62);
              font-weight: 500;
              font-size: 13px;
              line-height: 1.55;
            }
      
            .ok.ok-green.is-show {
              display: flex;
            }
      
            /* Mobile spacing */
            @media (max-width: 575px) {
              .ok.ok-green {
                padding: 12px;
                border-radius: 14px;
              }
      
              .ok.ok-green .ok-ic {
                width: 40px;
                height: 40px;
                border-radius: 13px;
              }
            }