/*!*************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../../node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[12].use[2]!../../node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[12].use[3]!./app/login/login.css ***!
  \*************************************************************************************************************************************************************************************************************************************************************************/
.auth-page {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;

  background:
    radial-gradient(circle at top right, rgba(216,255,62,0.08), transparent 30%),
    radial-gradient(circle at bottom left, rgba(56,189,248,0.08), transparent 30%),
    var(--bg);
}

.auth-card {
  width: 100%;
  max-width: 420px;
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));
  border: 1px solid var(--border);
  border-radius: 28px;
  padding: 32px;
  box-shadow: var(--shadow);
}

/* TOPO */



/* HEADER */

.auth-header {
  text-align: center;
  margin-bottom: 24px;
}

.auth-badge {
  display: inline-flex;
  padding: 6px 14px;
  border-radius: 999px;
  background: rgba(216,255,62,0.1);
  border: 1px solid rgba(216,255,62,0.2);
  color: var(--primary);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 14px;
}

.auth-logo-wrap {
  margin-bottom: 10px;
}

.auth-logo {
  margin: 0 auto;
  display: block;
}

.auth-subtitle {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.6;
}

/* FORM */

.auth-form {
  display: grid;
  grid-gap: 16px;
  gap: 16px;
  margin-top: 20px;
}

.form-group {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.form-label {
  font-size: 13px;
  font-weight: 700;
  color: var(--text);
}

.form-input {
  height: 48px;
  border-radius: 14px;
  border: 1px solid var(--border);
  background: rgba(255,255,255,0.04);
  color: var(--text);
  padding: 0 14px;
  outline: none;
  transition: 0.2s ease;
}

.form-input:focus {
  border-color: rgba(216,255,62,0.4);
  box-shadow: 0 0 0 4px rgba(216,255,62,0.08);
}

/* BOTÃO */

.auth-submit {
  height: 50px;
  border: 0;
  border-radius: 16px;
  background: var(--primary);
  color: var(--primary-dark);
  font-weight: 900;
  cursor: pointer;
  transition: 0.2s ease;
}

.auth-submit:hover {
  transform: translateY(-1px);
}

.auth-submit:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.auth-error,
.auth-notice {
  margin: 0;
  padding: 12px 14px;
  border-radius: 14px;
  font-size: 13px;
  line-height: 1.45;
}

.auth-error {
  background: rgba(239, 68, 68, 0.12);
  border: 1px solid rgba(239, 68, 68, 0.24);
  color: #fecaca;
}

.auth-notice {
  background: rgba(34, 197, 94, 0.12);
  border: 1px solid rgba(34, 197, 94, 0.24);
  color: #bbf7d0;
}

.auth-ios-block-card {
  text-align: center;
}

.auth-ios-block-title {
  margin: 0 0 12px;
  color: var(--text);
  font-size: 28px;
  line-height: 1.1;
  font-weight: 900;
}

.auth-ios-block-actions {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
  margin-top: 24px;
}

.auth-ios-site-link {
  display: inline-flex;
  justify-content: center;
  min-height: 44px;
  align-items: center;
}

/* REGISTRO */

.auth-register-box {
  margin-top: 22px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  font-size: 13px;
}

.auth-register-link {
  color: var(--primary);
  font-weight: 800;
}

.auth-register-link:hover {
  text-decoration: underline;
}


.auth-secondary-link {
    font-size: 12px;
    color: var(--muted);
}

    .auth-secondary-link:hover {
        color: var(--text);
    }

.auth-logo {
    margin: 0 auto;
    display: block;
    width: auto;
    height: auto;
    max-width: 220px;
}

.password-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

    .password-input-wrapper .form-input {
        width: 100%;
        padding-right: 52px;
    }

.password-toggle {
    position: absolute;
    right: 14px;
    background: transparent;
    border: none;
    cursor: pointer;
    font-size: 18px;
    color: #94a3b8;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .password-toggle:hover {
        color: #38bdf8;
    }


/* RESPONSIVO */

@media (max-width: 480px) {
    .auth-page {
        align-items: stretch;
        justify-content: flex-start;
        padding: 14px;
    }

    .auth-card {
        max-width: none;
        min-height: calc(100vh - 28px);
        border-radius: 24px;
        padding: 28px 20px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .auth-topbar {
        display: none;
    }

    .auth-register-box .auth-secondary-link:last-child {
        display: none;
    }

    .auth-header {
        margin-bottom: 18px;
    }

    .auth-badge {
        margin-bottom: 12px;
    }

    .auth-logo {
        max-width: 210px;
    }

    .auth-subtitle {
        font-size: 13px;
        line-height: 1.45;
        max-width: 300px;
        margin: 0 auto;
    }

    .auth-form {
        gap: 15px;
        margin-top: 18px;
    }

    .form-input {
        height: 54px;
        border-radius: 16px;
        font-size: 16px;
    }

    .auth-submit {
        height: 56px;
        border-radius: 18px;
        font-size: 18px;
    }

    .auth-register-box {
        margin-top: 20px;
        gap: 7px;
    }

    .auth-page.webview {
        padding: 16px;
        align-items: center;
        justify-content: center;
    }

        .auth-page.webview .auth-card {
            min-height: auto;
            padding: 24px 20px;
            border-radius: 24px;
        }

        .auth-page.webview .auth-register-box,
        .auth-page.webview .auth-badge,
        .auth-page.webview .auth-topbar,
        .auth-page.webview .auth-logo-wrap,
        .auth-page.webview .auth-subtitle {
            display: none !important;
        }

        .auth-page.webview h1 {
            margin-top: 0;
            text-align: center;
            font-size: 1.8rem;
        }

        .auth-page.webview p {
            text-align: center;
            font-size: 14px;
            line-height: 1.5;
        }

    .auth-page.webview {
        min-height: 100dvh;
        padding: 0;
        background: var(--bg);
    }

        .auth-page.webview .auth-card {
            width: 100%;
            max-width: none;
            min-height: 100dvh;
            border: 0;
            border-radius: 0;
            box-shadow: none;
            background: transparent;
            padding: 28px 20px;
        }

        .auth-page.webview .auth-header,
        .auth-page.webview .auth-register-box,
        .auth-page.webview a[href="/login"] {
            display: none !important;
        }
}

/* WEBVIEW CLEAN MODE */

.auth-page.webview {
    min-height: 100dvh !important;
    padding: 0 !important;
    background: var(--bg) !important;
    align-items: stretch !important;
    justify-content: stretch !important;
}

    .auth-page.webview .auth-card {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 100dvh !important;
        padding: 24px 20px !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    /* REMOVE CABEÇALHOS */

    .auth-page.webview .auth-header,
    .auth-page.webview .auth-topbar,
    .auth-page.webview .auth-badge,
    .auth-page.webview .auth-logo-wrap,
    .auth-page.webview .auth-subtitle,
    .auth-page.webview .auth-register-box,
    .auth-page.webview a[href="/login"] {
        display: none !important;
    }

    /* REMOVE FLOATINGS */

    .auth-page.webview .cadastro-whatsapp,
    .auth-page.webview .whatsapp-button,
    .auth-page.webview .floating-whatsapp,
    .auth-page.webview .whatsapp-float,
    .auth-page.webview .whatsapp-fixed,
    .auth-page.webview .btn-whatsapp,
    .auth-page.webview .floating-button,
    .auth-page.webview .floating-actions {
        display: none !important;
    }

    /* LIMPA MARGENS */

    .auth-page.webview h1 {
        margin-top: 0 !important;
        text-align: center;
    }

    .auth-page.webview p {
        text-align: center;
    }

/* WEBVIEW GLOBAL CLEAN */

body.webview-mode header,
body.webview-mode nav,
body.webview-mode footer,
body.webview-mode .site-header,
body.webview-mode .public-header,
body.webview-mode .landing-header,
body.webview-mode .auth-topbar,
body.webview-mode .whatsapp-button,
body.webview-mode .floating-whatsapp,
body.webview-mode .whatsapp-float,
body.webview-mode .whatsapp-fixed,
body.webview-mode .btn-whatsapp,
body.webview-mode .cadastro-whatsapp,
body.webview-mode [href*="wa.me"],
body.webview-mode [href*="whatsapp"],
body.webview-mode [href="/login"] {
    display: none !important;
}

body.webview-mode .auth-page {
    min-height: 100dvh !important;
    padding: 0 !important;
    background: var(--bg) !important;
}

body.webview-mode .auth-card {
    max-width: none !important;
    width: 100% !important;
    min-height: 100dvh !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

.auth-webview-logo-wrap {
    display: none;
}

body.webview-mode .auth-webview-logo-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 22px;
}

body.webview-mode .auth-webview-logo {
    width: auto;
    height: auto;
    max-width: 190px;
    display: block;
}
.auth-version {
    margin-top: 24px;
    text-align: center;
    font-size: 13px;
    color: rgba(255,255,255,.45);
    font-weight: 600;
}

