/* Autenticação do TelaLog — extraído de recuperar.php para melhorar cache/PageSpeed. */
        :root{
          --bg:#0e0e12;
          --panel:#10131c;
          --panel2:#0f1320;
          --line:#1e2842;
          --blue:#4a8bff;
          --muted:#9fb0d1;
          --text:#e7ecff;
        }

        *{box-sizing:border-box;margin:0;padding:0;font-family:'Inter',sans-serif}
        html{min-height:100%;background:#0e0e12}
        body{
          min-height:100vh;
          min-height:100svh;
          display:flex;
          align-items:center;
          justify-content:center;
          padding:28px;
          color:#fff;
          background:
            radial-gradient(circle at 14% 12%, rgba(74,139,255,.08), transparent 34%),
            radial-gradient(circle at 86% 18%, rgba(123,92,255,.06), transparent 32%),
            #0e0e12;
        }

        a{color:inherit;text-decoration:none}

        .auth-page{
          position:relative;
          width:min(1060px,100%);
        }

        .auth-container::before{
          content:"TL";
          position:absolute;
          top:50%;
          right:38px;
          transform:translateY(-50%);
          color:rgba(74,139,255,.12);
          font-size:11rem;
          font-weight:950;
          line-height:1;
          pointer-events:none;
          user-select:none;
        }

        .auth-container{
          position:relative;
          z-index:1;
          display:grid;
          grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
          overflow:hidden;
          background:#10131c;
          border:1px solid #1e2842;
          border-radius:28px;
          box-shadow:0 24px 68px rgba(0,0,0,.46);
        }

        .auth-left{
          position:relative;
          overflow:hidden;
          display:flex;
          align-items:center;
          justify-content:center;
          padding:44px;
          background:
            radial-gradient(circle at 22% 16%, rgba(74,139,255,.10), transparent 36%),
            radial-gradient(circle at 82% 76%, rgba(123,92,255,.07), transparent 40%),
            #0f1320;
        }

        .auth-left::before{
          content:"";
          position:absolute;
          inset:20px;
          border-radius:24px;
          border:1px solid rgba(255,255,255,.055);
          pointer-events:none;
        }

        .auth-left-inner{
          position:relative;
          z-index:1;
          max-width:420px;
        }

        .auth-left h1{
          color:#fff;
          font-size:clamp(2rem,4vw,3.25rem);
          line-height:.98;
          letter-spacing:-.06em;
          font-weight:950;
          margin-bottom:18px;
        }

        .auth-left p{
          max-width:390px;
          color:#b8bfd3;
          font-size:1rem;
          line-height:1.8;
        }

        .feature-list{
          display:grid;
          gap:10px;
          margin-top:24px;
        }

        .feature-item{
          display:flex;
          align-items:center;
          gap:10px;
          min-height:42px;
          padding:10px 12px;
          border-radius:16px;
          background:rgba(255,255,255,.032);
          border:1px solid rgba(255,255,255,.08);
          color:#dbe8ff;
          font-weight:850;
          backdrop-filter:blur(8px);
        }

        .feature-dot{
          width:9px;
          height:9px;
          border-radius:999px;
          background:#4a8bff;
          box-shadow:0 0 0 4px rgba(74,139,255,.12), 0 0 18px rgba(74,139,255,.22);
          flex:0 0 auto;
        }

        .auth-right{
          padding:34px;
          background:#10131c;
          border-left:1px solid rgba(255,255,255,.06);
        }

        .auth-card{
          position:relative;
          z-index:1;
          min-height:520px;
          max-width:430px;
          margin:0 auto;
          display:flex;
          flex-direction:column;
          justify-content:center;
        }

        .form-logo{margin-bottom:24px;text-align:center}

        .brand-link{
          display:inline-flex;
          align-items:baseline;
          gap:0;
          line-height:1;
        }

        .brand-main,
        .brand-number{
          font-size:1.54rem;
          font-weight:950;
          letter-spacing:-.045em;
        }

        .brand-number{
          color:#4a8bff;
          text-shadow:0 0 18px rgba(74,139,255,.22);
        }

        .auth-eyebrow{
          display:inline-flex;
          width:max-content;
          min-height:30px;
          align-items:center;
          padding:6px 10px;
          margin:0 auto 12px;
          border-radius:999px;
          background:rgba(74,139,255,.09);
          border:1px solid rgba(74,139,255,.20);
          color:#cfe0ff;
          font-size:.78rem;
          font-weight:900;
          text-transform:uppercase;
          letter-spacing:.08em;
        }

        .auth-right h2{
          margin:0 0 9px;
          color:#e7ecff;
          font-size:clamp(1.72rem,3vw,2.2rem);
          line-height:1.05;
          letter-spacing:-.045em;
          font-weight:950;
          text-align:center;
        }

        .auth-sub{
          color:#b7c7ff;
          line-height:1.6;
          margin-bottom:20px;
          text-align:center;
        }

        .erro,
        .ok{
          padding:12px 13px;
          margin-bottom:16px;
          border-radius:16px;
          font-weight:800;
          font-size:.92rem;
          line-height:1.45;
        }

        .erro{
          background:rgba(239,68,68,.12);
          border:1px solid rgba(239,68,68,.38);
          color:#fecaca;
        }

        .ok{
          background:rgba(34,197,94,.12);
          border:1px solid rgba(34,197,94,.35);
          color:#bbf7d0;
        }

        form{display:grid;gap:12px}

        label.field{display:block}

        .field-label{
          display:block;
          margin:0 0 7px;
          color:#cfe0ff;
          font-size:.86rem;
          font-weight:850;
        }

        input[type="email"]{
          width:100%;
          min-height:48px;
          padding:13px 14px;
          border-radius:16px;
          border:1px solid #243055;
          background:#0b0f1a;
          color:#e7ecff;
          font-size:1rem;
          outline:none;
          transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
          color-scheme:dark;
        }

        input::placeholder{color:#7f8aa3}

        input:focus{
          border-color:#4a8bff;
          background:#0d1322;
          box-shadow:0 0 0 3px rgba(74,139,255,.18);
        }

        .submit-btn{
          width:100%;
          min-height:48px;
          margin-top:4px;
          padding:13px 16px;
          border:1px solid #4a8bff;
          border-radius:16px;
          background:#4a8bff;
          color:#fff;
          font-weight:950;
          font-size:1rem;
          cursor:pointer;
          box-shadow:0 12px 28px rgba(74,139,255,.24);
          transition:filter .16s ease, transform .16s ease, box-shadow .16s ease;
        }

        .submit-btn:hover{
          filter:brightness(1.06);
          transform:translateY(-1px);
          box-shadow:0 16px 34px rgba(74,139,255,.28);
        }

        .link-row{
          display:grid;
          gap:10px;
          margin-top:18px;
          color:#9fb0d1;
          font-size:.94rem;
          text-align:center;
        }

        .link-row a{
          color:#9ec5ff;
          font-weight:850;
          transition:color .16s ease;
        }

        .link-row a:hover{color:#cfe0ff}

        .back-home{
          margin-top:14px;
          text-align:center;
          font-size:.9rem;
        }

        .back-home a{
          color:#9fb0d1;
          font-weight:800;
          transition:color .16s ease;
        }

        .back-home a:hover{color:#fff}

        @media (max-width:860px){
          html,
          body{
            height:100%;
            overflow:hidden;
          }

          body{
            min-height:100dvh;
            height:100dvh;
            align-items:center;
            justify-content:center;
            padding:16px;
          }

          .auth-container{
            grid-template-columns:1fr;
            border-radius:24px;
            max-height:calc(100dvh - 32px);
            overflow:hidden;
          }

          .auth-left{display:none}

          .auth-right{
            padding:24px 18px;
            border-left:0;
          }

          .auth-card{
            min-height:auto;
            max-width:none;
          }

          .form-logo{margin-bottom:22px}
        }

        @media (max-width:420px){
          body{padding:12px}
          .auth-container{max-height:calc(100dvh - 24px)}
          .auth-right{padding:22px 14px}
          .brand-main,.brand-number{font-size:1.42rem}
          .auth-right h2{font-size:1.62rem}
        }
