:root {
    --pm-brand: #6d28d9;
    --pm-brand-dark: #4c1d95;
    --pm-brand-light: #a78bfa;
    --pm-sidebar-bg: #1e1b2e;
    --pm-sidebar-active: #6d28d9;
}

body {
    background-color: #f4f5f9;
}

.guest-brand-logo {
    display: block;
    width: min(210px, 70vw);
    height: 150px;
    object-fit: contain;
    margin-inline: auto;
}

.pm-brand-logo {
    width: 34px;
    height: 34px;
    object-fit: contain;
    flex: 0 0 auto;
}

/* ---------- Tela de login (guest) ---------- */
.guest-body {
    min-height: 100vh;
    background: linear-gradient(135deg, var(--pm-brand-dark), var(--pm-brand) 60%, var(--pm-brand-light));
}

.brand-badge {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    color: #fff;
}

.guest-card {
    border-radius: 16px;
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.25);
}

/* ---------- Layout autenticado ---------- */
.pm-sidebar {
    width: 260px;
    height: 100vh;
    background: var(--pm-sidebar-bg);
    color: #cbd5e1;
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    overflow: visible;
    transition: width 0.2s ease-in-out, transform 0.2s ease-in-out;
    z-index: 1040;
}

.pm-sidebar-header {
    min-height: 68px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    flex: 0 0 auto;
}

.pm-sidebar .pm-brand {
    color: #fff;
    font-weight: 700;
    font-size: 1.15rem;
    min-width: 0;
}

.pm-sidebar .pm-brand i {
    flex: 0 0 auto;
}

.pm-sidebar-collapse,
.pm-sidebar-scroll-control {
    border: 0;
    background: transparent;
    color: #94a3b8;
    cursor: pointer;
    border-radius: 6px;
    transition: color 0.15s ease, background 0.15s ease;
}

.pm-sidebar-collapse {
    width: 30px;
    height: 30px;
    font-size: 1.35rem;
    line-height: 1;
    flex: 0 0 auto;
}

.pm-sidebar-collapse:hover,
.pm-sidebar-scroll-control:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
}

.pm-sidebar-nav-frame {
    display: flex;
    flex-direction: column;
    min-height: 0;
    flex: 1 1 auto;
    padding: 0 0.75rem 0.75rem;
}

.pm-sidebar-scroll {
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: rgba(148, 163, 184, 0.38) transparent;
    padding: 0.15rem 0.15rem 0.5rem;
    gap: 0.2rem !important;
}

.pm-sidebar-scroll::-webkit-scrollbar {
    width: 6px;
}

.pm-sidebar-scroll::-webkit-scrollbar-track {
    background: transparent;
}

.pm-sidebar-scroll::-webkit-scrollbar-thumb {
    background: rgba(148, 163, 184, 0.38);
    border-radius: 999px;
}

.pm-sidebar-scroll-control {
    width: 100%;
    min-height: 22px;
    max-height: 22px;
    flex: 0 0 auto;
    font-size: 0.75rem;
    opacity: 1;
    overflow: hidden;
    transition: opacity 0.16s ease, max-height 0.16s ease, min-height 0.16s ease;
}

.pm-sidebar-scroll-control.is-hidden {
    min-height: 0;
    max-height: 0;
    opacity: 0;
    pointer-events: none;
}

.pm-sidebar .nav-link,
.pm-nav-group-toggle {
    width: 100%;
    min-height: 42px;
    color: #cbd5e1;
    border: 0;
    border-radius: 8px;
    padding: 0.42rem 0.7rem;
    text-decoration: none;
    text-align: left;
    cursor: pointer;
    background: transparent;
    transition: background 0.15s ease, color 0.15s ease;
}

.pm-sidebar .nav-link:hover,
.pm-nav-group-toggle:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.pm-sidebar .nav-link.active,
.pm-nav-group-toggle.active {
    background: var(--pm-sidebar-active);
    color: #fff;
}

.pm-nav-group {
    margin-top: 0.15rem;
}

.pm-nav-group-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    font-weight: 600;
}

.pm-nav-group-toggle > span {
    min-width: 0;
}

.pm-nav-group-chevron {
    font-size: 0.72rem;
    transition: transform 0.18s ease;
}

.pm-nav-group-toggle[aria-expanded="true"] .pm-nav-group-chevron {
    transform: rotate(90deg);
}

.pm-nav-group-panel {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    padding: 0 0 0 0.65rem;
    transform: translateY(-4px);
    visibility: hidden;
    transition: max-height 0.18s ease, opacity 0.18s ease, padding 0.18s ease, transform 0.18s ease, visibility 0s linear 0.18s;
}

.pm-nav-group-panel.is-open {
    max-height: 40rem;
    opacity: 1;
    padding-block: 0.12rem;
    transform: translateY(0);
    visibility: visible;
    transition-delay: 0s;
}

.pm-nav-subitem {
    min-height: 36px !important;
    font-size: 0.94rem;
}

.pm-nav-subitem.active {
    box-shadow: inset 3px 0 0 var(--pm-brand-light);
}

.pm-sidebar .nav-link.disabled {
    color: #6b7280;
    pointer-events: none;
}

.pm-sidebar .nav-link:focus-visible,
.pm-nav-group-toggle:focus-visible,
.pm-sidebar-collapse:focus-visible,
.pm-sidebar-scroll-control:focus-visible {
    outline: 2px solid var(--pm-brand-light);
    outline-offset: 2px;
}

.pm-content {
    margin-left: 260px;
    min-height: 100vh;
    transition: margin-left 0.2s ease-in-out;
}

body.pm-sidebar-collapsed .pm-sidebar {
    width: 78px;
}

body.pm-sidebar-collapsed .pm-content {
    margin-left: 78px;
}

body.pm-sidebar-collapsed .pm-sidebar-header {
    justify-content: center;
    padding-inline: 0.7rem;
}

body.pm-sidebar-collapsed .pm-brand {
    justify-content: center;
}

body.pm-sidebar-collapsed .pm-sidebar-collapse {
    position: absolute;
    right: 0.35rem;
    top: 1.1rem;
}

body.pm-sidebar-collapsed .pm-sidebar-nav-frame {
    padding-inline: 0.55rem;
}

body.pm-sidebar-collapsed .pm-sidebar .nav-link,
body.pm-sidebar-collapsed .pm-nav-group-toggle {
    justify-content: center;
    padding-inline: 0.5rem;
}

body.pm-sidebar-collapsed .pm-nav-group-toggle > span {
    justify-content: center;
}

body.pm-sidebar-collapsed .pm-nav-group-chevron {
    display: none;
}

body.pm-sidebar-collapsed .pm-nav-group-panel {
    padding-left: 0;
}

.pm-sidebar-tooltip {
    position: fixed;
    z-index: 2000;
    min-width: max-content;
    padding: 0.35rem 0.55rem;
    border-radius: 5px;
    background: #111827;
    color: #fff;
    font-size: 0.78rem;
    font-weight: 500;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.12s ease;
}

.pm-sidebar-tooltip.is-visible {
    opacity: 1;
    visibility: visible;
}

@media (prefers-reduced-motion: reduce) {
    .pm-sidebar,
    .pm-content,
    .pm-nav-group-panel,
    .pm-nav-group-chevron,
    .pm-sidebar-scroll,
    .pm-sidebar-scroll-control,
    .pm-sidebar-tooltip {
        transition: none !important;
        scroll-behavior: auto !important;
    }
}

.pm-header {
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
}

.pm-stat-card {
    border: none;
    border-radius: 14px;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.06);
}

.pm-sidebar-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1030;
}

@media (max-width: 991.98px) {
    .pm-sidebar {
        transform: translateX(-100%);
        width: 280px;
    }

    .pm-sidebar.show {
        transform: translateX(0);
    }

    .pm-content {
        margin-left: 0;
    }

    body.pm-sidebar-collapsed .pm-sidebar {
        width: 280px;
    }

    body.pm-sidebar-collapsed .pm-content {
        margin-left: 0;
    }

    .pm-sidebar-collapse {
        display: none;
    }

    .pm-sidebar-backdrop.show {
        display: block;
    }
}

/* Modal de preview de imagem (kits/componentes) — ocupar o máximo da
   viewport possível, sem nunca ultrapassá-la. */
.image-preview-dialog {
    max-width: 94vw;
}

.image-preview-content {
    min-height: 70vh;
    max-height: 90vh;
}

.image-preview-stage {
    width: 100%;
    height: 78vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.image-preview-img {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
}

@media (max-width: 767.98px) {
    .image-preview-dialog {
        max-width: 95vw;
    }

    .image-preview-content {
        min-height: 0;
        max-height: none;
    }

    .image-preview-stage {
        height: 70vh;
    }

    .image-preview-img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
}

/* Seletor de categorias do kit — lista vertical, 1 card por linha. */
.pm-category-picker {
    max-height: 260px;
    overflow-y: auto;
    padding-right: 4px;
}

.pm-category-card {
    border-radius: 8px;
    padding: 0.5rem 0.75rem;
    margin: 0;
}

.pm-category-card .form-check-label {
    cursor: pointer;
}

/* Badge de categoria (listagem/ficha de kit) — mesma paleta do seletor.
   width: fit-content evita que .d-block estique o badge pra ocupar a
   célula inteira da tabela — cada um fica do tamanho do próprio texto,
   empilhado à esquerda, alinhado embaixo do cabeçalho "Categoria". */
.pm-category-badge {
    color: #3a3a3a;
    font-weight: 500;
    border-radius: 6px;
    width: fit-content;
}

/* EstokeiKit landing/login */
.estokei-login-page{min-height:100vh;background:#f7faff;color:#102447;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}.estokei-login-nav{height:74px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,5vw,4.5rem);gap:1rem;border-bottom:1px solid #edf2f8}.estokei-brand{display:inline-flex}.estokei-brand img{width:190px;height:58px;object-fit:contain}.estokei-login-nav nav{display:flex;gap:2rem}.estokei-login-nav nav a{color:#102447;text-decoration:none;font-weight:600;font-size:.93rem}.estokei-login-nav nav a:first-child{color:#0867f2;border-bottom:2px solid #0867f2;padding-bottom:.4rem}.estokei-nav-actions{display:flex;gap:.65rem}.estokei-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none;border-radius:11px;padding:.72rem 1.25rem;font-weight:700;white-space:nowrap}.estokei-btn.outline{border:1px solid #0867f2;color:#0867f2;background:#fff}.estokei-btn.primary{background:#0867f2;color:#fff;box-shadow:0 8px 18px #0867f233}.estokei-btn.green{background:#48d64b;color:#fff;box-shadow:0 10px 24px #48d64b55}.estokei-btn.ghost{border:1px solid #ffffff77;color:#fff;background:#ffffff0d}.estokei-hero{min-height:525px;background:radial-gradient(circle at 75% 40%,#0a63b9,#073b78 38%,#031f4c 82%);color:#fff;display:grid;grid-template-columns:minmax(320px,.85fr) minmax(420px,1.15fr);gap:2rem;align-items:center;padding:4rem clamp(1.2rem,5.5vw,5.5rem);overflow:hidden}.hero-copy{max-width:570px}.eyebrow{font-size:.72rem;letter-spacing:.28rem;font-weight:800;color:#dceeff}.eyebrow.blue{color:#0867f2}.hero-copy h1{font-size:clamp(2.7rem,4vw,4.3rem);line-height:1.02;letter-spacing:-.06em;margin:1.15rem 0;font-weight:800}.hero-copy h1 strong{color:#55dc4e}.hero-copy p{font-size:1.05rem;line-height:1.55;max-width:480px;color:#e8f2ff}.hero-actions{display:flex;gap:1rem;margin:1.8rem 0 2.2rem;flex-wrap:wrap}.benefits{display:flex;gap:1.4rem;flex-wrap:wrap;color:#d6eaff;font-size:.8rem}.benefits span{display:inline-flex;align-items:center;gap:.45rem}.benefits i{color:#32a8ff;font-size:1.3rem}.mockup{background:#f5f8fc;border:7px solid #cbd7e5;border-radius:18px;padding:1rem;color:#13284c;box-shadow:0 24px 50px #00142e99;transform:perspective(1200px) rotateY(-4deg)}.mock-top{display:flex;align-items:center;gap:.7rem;font-size:.75rem}.mock-top b{display:flex;align-items:center;gap:.3rem}.mock-top img{width:22px;height:22px;object-fit:contain}.mock-top span{flex:1;background:#fff;border:1px solid #e3eaf2;color:#9aacbf;padding:.45rem .7rem;border-radius:7px}.mock-top em{background:#1b65ca;color:#fff;border-radius:50%;padding:.35rem;font-size:.6rem;font-style:normal}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem;margin:1rem 0}.metrics div,.mock-grid>div{background:#fff;border:1px solid #edf1f5;border-radius:9px;padding:.75rem}.metrics small{display:block;color:#718096;font-size:.63rem}.metrics b{font-size:1.5rem;color:#1262c4}.metrics .red{color:#e32938}.mock-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:.65rem}.mock-grid>div{font-size:.72rem}.mock-grid p{border-top:1px solid #edf1f5;padding-top:.55rem;color:#405675}.mock-grid p i{color:#1262c4;margin-right:.3rem}.mock-grid mark{float:right;background:#d8f5df;color:#16803a;border-radius:8px;padding:.2rem .35rem;font-size:.55rem}.calendar{line-height:2.5;color:#58708f}.calendar b{display:inline-flex;background:#176ee0;color:#fff;border-radius:50%;width:25px;height:25px;align-items:center;justify-content:center;margin-right:.4rem}.features{background:#fff;text-align:center;padding:4rem clamp(1.2rem,5vw,5rem)}.features h2,.access h2{font-size:clamp(2rem,3vw,3rem);letter-spacing:-.05em;margin:.8rem 0 .4rem;color:#102447}.features>p{font-size:1.05rem;color:#50617b;margin-bottom:2.5rem}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem 2.6rem;text-align:left;max-width:1200px;margin:auto}.feature-grid article{display:grid;grid-template-columns:56px 1fr;column-gap:.8rem;align-items:center}.feature-grid article i{grid-row:span 2;width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#e8f1ff;color:#145be0;font-size:1.45rem}.feature-grid article i.green{color:#1ca351;background:#e4f8e9}.feature-grid article i.orange{color:#f08b00;background:#fff1d8}.feature-grid article i.red{color:#d73744;background:#ffe4e5}.feature-grid article i.purple{color:#5737d7;background:#eee7ff}.feature-grid article i.yellow{color:#e5a800;background:#fff5ce}.feature-grid article i.blue{color:#00a4ca;background:#ddf7ff}.feature-grid article i.gray{color:#637083;background:#e9edf2}.feature-grid small{color:#5c6c84;line-height:1.4}.access{display:grid;grid-template-columns:1fr 430px;gap:3rem;align-items:center;padding:4.5rem clamp(1.2rem,8vw,8rem);background:linear-gradient(135deg,#f8fbff,#eaf3ff)}.access-copy{max-width:620px}.access-copy p{font-size:1.05rem;line-height:1.55;color:#50617b}.access-copy ul{list-style:none;padding:0;margin:1.6rem 0 0;display:grid;gap:.85rem;color:#263a5c}.access-copy li{display:flex;gap:.65rem;align-items:center}.access-copy li i{color:#29b9ff}.login-card{background:#fff;border-radius:20px;padding:1.8rem;box-shadow:0 20px 50px #183d6b1c;border:1px solid #e1eaf4}.login-card-head{display:flex;align-items:center;gap:.8rem;margin-bottom:1.5rem}.login-card-head img{width:52px;height:52px;object-fit:contain}.login-card-head span{display:block;color:#718096;font-size:.85rem}.login-card-head strong{display:block;color:#102447;font-size:1.35rem}.login-intro{display:none}.field{margin-bottom:1rem}.field label{display:block;color:#263a5c;font-size:.85rem;font-weight:700;margin-bottom:.4rem}.field label i{color:#0867f2;margin-right:.25rem}.field input{width:100%;border:1px solid #d8e2ee;border-radius:10px;padding:.82rem .9rem;outline:none;color:#102447;background:#fbfdff}.field input:focus{border-color:#2383f5;box-shadow:0 0 0 3px #0867f522}.password{position:relative}.password input{padding-right:3rem}.password button{position:absolute;right:.65rem;top:50%;transform:translateY(-50%);border:0;background:none;color:#718096}.submit{width:100%;border:0;border-radius:10px;background:#0867f2;color:#fff;font-weight:800;padding:.9rem;margin-top:.35rem;box-shadow:0 8px 18px #0867f233}.login-safe{color:#718096;font-size:.75rem;text-align:center;margin-top:1rem}.login-safe i{color:#24ae59;margin-right:.3rem}.estokei-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#031d43;color:#fff;padding:1.7rem clamp(1.2rem,5vw,5rem)}.estokei-footer>img{width:175px;height:58px;object-fit:contain}.estokei-footer>div{text-align:center}.estokei-footer b,.estokei-footer small{display:block}.estokei-footer small{color:#b9d5f4;margin-top:.3rem}@media(max-width:1050px){.estokei-login-nav nav{display:none}.estokei-hero{grid-template-columns:1fr}.mockup{max-width:760px;width:100%;margin:auto}.feature-grid{grid-template-columns:repeat(2,1fr)}.access{grid-template-columns:1fr}.login-card{max-width:500px;width:100%;margin:auto}}@media(max-width:640px){.estokei-login-nav{height:66px}.estokei-brand img{width:150px}.estokei-nav-actions .outline{display:none}.estokei-nav-actions .primary{padding:.6rem .8rem;font-size:.8rem}.estokei-hero{padding:3rem 1.1rem}.hero-copy h1{font-size:2.8rem}.metrics{grid-template-columns:repeat(2,1fr)}.mock-grid{grid-template-columns:1fr}.mockup{transform:none}.feature-grid{grid-template-columns:1fr;gap:1.4rem}.access{padding:3rem 1.1rem}.estokei-footer{flex-direction:column;text-align:center}}

/* EstokeiKit: login compacto */
.estokeikit-compact-login{min-height:100vh;background:#f5f8fc;color:#11284c;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;display:flex;flex-direction:column}
.compact-login-header{height:78px;background:#fff;border-bottom:1px solid #e5edf6;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,6vw,6rem)}
.compact-brand{display:inline-flex}.compact-brand img{width:178px;height:60px;object-fit:contain}.compact-header-label{font-size:.82rem;color:#647793}.compact-header-label i{color:#20a957;margin-right:.3rem}
.compact-login-main{width:min(1080px,calc(100% - 2rem));margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,450px);grid-template-rows:auto auto;column-gap:clamp(3rem,8vw,8rem);align-items:center;padding:3.5rem 0}
.compact-intro{grid-column:1;grid-row:1;max-width:535px}.compact-eyebrow{color:#0867f2;font-size:.72rem;font-weight:800;letter-spacing:.25rem}.compact-intro h1{font-size:clamp(2.3rem,4.2vw,4rem);line-height:1.08;letter-spacing:-.055em;margin:1rem 0 1.1rem;color:#102447}.compact-intro h1:after{content:"";display:block;width:58px;height:5px;border-radius:4px;background:#51d94f;margin-top:1.35rem}.compact-intro p{font-size:1.05rem;line-height:1.55;color:#5c6d86;max-width:490px;margin:0}
.compact-login-card{grid-column:2;grid-row:1 / span 2;background:#fff;border:1px solid #e0e9f3;border-radius:18px;padding:2rem;box-shadow:0 18px 45px rgba(22,57,96,.10)}
.compact-card-heading{display:flex;align-items:center;gap:.8rem}.compact-card-heading img{width:48px;height:48px;object-fit:contain}.compact-card-heading span{display:block;font-size:.8rem;color:#75859b}.compact-card-heading h2{font-size:1.75rem;margin:.1rem 0 0;color:#102447}.compact-card-subtitle{font-size:.9rem;color:#75859b;margin:.55rem 0 1.5rem}.compact-auth-form{display:grid;gap:1rem}.compact-field label{display:block;font-size:.84rem;font-weight:700;color:#2d4260;margin-bottom:.4rem}.compact-field input{width:100%;height:50px;padding:.7rem .85rem;border:1px solid #d5e0ec;border-radius:9px;color:#102447;background:#fbfdff;outline:none}.compact-field input:focus{border-color:#1676ea;box-shadow:0 0 0 3px rgba(22,118,234,.12)}.compact-password{position:relative}.compact-password input{padding-right:3rem}.compact-password button{position:absolute;right:.7rem;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#718096}.compact-submit{height:50px;border:0;border-radius:9px;background:#0867f2;color:#fff;font-weight:800;font-size:1rem;box-shadow:0 7px 16px rgba(8,103,242,.22);margin-top:.15rem}.compact-submit:hover{background:#075bcf}.compact-secure-note{text-align:center;color:#7a899c;font-size:.75rem;margin-top:1.2rem}.compact-secure-note i{color:#20a957;margin-right:.25rem}
.compact-benefits{grid-column:1;grid-row:2;display:flex;gap:1.3rem;flex-wrap:wrap;margin-top:3rem}.compact-benefits div{display:flex;align-items:center;gap:.55rem;color:#2b4363;font-size:.84rem;font-weight:700}.compact-benefits i{display:flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:50%;background:#e2efff;color:#0867f2;font-size:1rem}.compact-benefits div:nth-child(2) i{background:#e4f8e8;color:#1a9c4e}.compact-benefits div:nth-child(3) i{background:#fff3d7;color:#d28b00}
.compact-login-footer{text-align:center;color:#718199;font-size:.8rem;padding:0 1rem 1.2rem}
@media(max-width:800px){.compact-login-main{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:1.5rem;padding:2.3rem 0}.compact-intro{grid-column:1;grid-row:1}.compact-intro h1{font-size:clamp(2.1rem,9vw,3.1rem);margin-top:.8rem}.compact-intro h1:after{margin-top:1rem}.compact-intro p{font-size:.96rem}.compact-login-card{grid-column:1;grid-row:2;padding:1.5rem;max-width:500px;width:100%;justify-self:center}.compact-benefits{grid-column:1;grid-row:3;margin-top:.1rem;justify-content:center;gap:.8rem 1.2rem}.compact-benefits div{font-size:.78rem}.compact-login-header{height:68px}.compact-brand img{width:150px;height:54px}}
@media(max-width:430px){.compact-login-main{width:calc(100% - 1.25rem);padding-top:1.5rem}.compact-header-label{font-size:.72rem}.compact-intro h1{font-size:2rem}.compact-login-card{padding:1.25rem}.compact-benefits{justify-content:flex-start;flex-direction:column;align-items:flex-start}}

/* EstokeiKit: tela de autenticação premium em uma única tela */
.estokei-auth-page{min-height:100vh;margin:0;background:#f5f7fa;color:#0b2a50;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.auth-screen{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(390px,.9fr)}
.auth-showcase{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:100vh;padding:clamp(2rem,5vh,4.2rem) clamp(2rem,6vw,7rem);background:radial-gradient(circle at 80% 25%,#116dcc 0,#0b4786 38%,#0b2a50 78%);color:#fff}
.auth-showcase:before,.auth-showcase:after{content:"";position:absolute;border:1px solid rgba(84,214,75,.22);border-radius:50%;pointer-events:none}.auth-showcase:before{width:520px;height:520px;right:-220px;top:-210px}.auth-showcase:after{width:380px;height:380px;right:-150px;bottom:-190px;border-color:rgba(6,103,232,.5)}
.auth-logo{position:relative;z-index:1;display:inline-flex;width:max-content}.auth-logo img{width:205px;height:70px;object-fit:contain}
.auth-showcase-copy{position:relative;z-index:1;max-width:590px;margin-top:clamp(2rem,7vh,5.5rem)}.auth-eyebrow{font-size:.7rem;letter-spacing:.27rem;font-weight:800;color:#dceeff}.auth-showcase h1{font-size:clamp(2.8rem,4.7vw,5rem);line-height:.98;letter-spacing:-.065em;margin:1.1rem 0 1.25rem;font-weight:800}.auth-showcase h1 strong{color:#54d64b}.auth-showcase-copy p{max-width:510px;margin:0;color:#e6f2ff;font-size:1.05rem;line-height:1.55}
.auth-product-mockup{position:relative;z-index:1;width:min(680px,100%);margin:auto 0 2rem;background:#f4f8fd;border:5px solid #b9cbe0;border-bottom-width:9px;border-radius:13px 13px 7px 7px;color:#17365f;box-shadow:0 22px 45px rgba(0,19,55,.38);transform:perspective(1400px) rotateY(-3deg)}.mockup-bar{height:35px;display:flex;align-items:center;gap:.55rem;padding:0 .7rem;background:#fff;border-bottom:1px solid #e2e9f2;font-size:.55rem}.mockup-brand{display:flex;align-items:center;gap:.25rem;font-weight:800}.mockup-brand img{width:18px;height:18px;object-fit:contain}.mockup-search{flex:1;border:1px solid #e7edf5;border-radius:5px;color:#94a5ba;padding:.3rem .5rem}.mockup-bar>b{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#0867e8;color:#fff;font-size:.45rem}.mockup-body{display:grid;grid-template-columns:115px 1fr;min-height:155px}.mockup-body aside{display:flex;flex-direction:column;gap:.35rem;padding:.7rem .45rem;background:#f8fbff;border-right:1px solid #e2e9f2;color:#6c7e96;font-size:.53rem}.mockup-body aside span{padding:.38rem .35rem;border-radius:4px}.mockup-body aside .active{background:#0867e8;color:#fff}.mockup-body aside i{margin-right:.25rem}.mockup-content{padding:.75rem}.mockup-heading{font-size:.7rem;font-weight:800}.mockup-heading small{display:block;color:#91a0b3;font-size:.5rem;font-weight:400;margin-top:.2rem}.mockup-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin-top:.6rem}.mockup-cards span{display:flex;flex-direction:column;gap:.18rem;padding:.5rem;background:#fff;border:1px solid #e7edf5;border-radius:6px}.mockup-cards i{color:#0867e8}.mockup-cards b{font-size:.57rem}.mockup-cards small{font-size:.45rem;color:#8090a5}.mockup-lines{display:grid;gap:.3rem;margin-top:.65rem}.mockup-lines span{display:block;height:5px;border-radius:4px;background:#dfe9f3}.mockup-lines span:nth-child(1){width:92%}.mockup-lines span:nth-child(2){width:75%}.mockup-lines span:nth-child(3){width:86%}.mockup-lines span:nth-child(4){width:62%}
.auth-benefits{position:relative;z-index:1;display:flex;gap:1.25rem;flex-wrap:wrap;color:#e0efff;font-size:.74rem}.auth-benefits span{display:inline-flex;align-items:center;gap:.4rem}.auth-benefits i{color:#54d64b;font-size:1rem}
.auth-login-area{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;background:#f7f9fc}.auth-login-card{width:min(100%,450px);padding:clamp(2rem,4vw,2.8rem);background:#fff;border:1px solid #e1e9f2;border-radius:20px;box-shadow:0 18px 50px rgba(11,42,80,.1)}.auth-card-heading{display:flex;align-items:center;gap:.8rem}.auth-card-heading img{width:52px;height:52px;object-fit:contain}.auth-card-heading span{display:block;font-size:.8rem;color:#71819a}.auth-card-heading h1{margin:.12rem 0 0;font-size:1.65rem;letter-spacing:-.03em;color:#0b2a50}.auth-card-subtitle{margin:.65rem 0 1.7rem;color:#71819a;font-size:.9rem}.auth-form{display:grid;gap:1rem}.auth-field label{display:block;margin-bottom:.4rem;color:#2d4260;font-size:.84rem;font-weight:700}.auth-field label i{margin-right:.25rem;color:#0667e8}.auth-field input{width:100%;height:51px;border:1px solid #d4dfec;border-radius:9px;background:#fcfdff;color:#0b2a50;padding:.7rem .9rem;outline:0}.auth-field input:focus{border-color:#0667e8;box-shadow:0 0 0 3px rgba(6,103,232,.12)}.auth-password{position:relative}.auth-password input{padding-right:3rem}.auth-password button{position:absolute;right:.7rem;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#71819a}.auth-options{font-size:.82rem;color:#596d88}.auth-options input{accent-color:#0667e8;margin-right:.25rem}.auth-submit{height:52px;border:0;border-radius:9px;background:#0667e8;color:#fff;font-size:1rem;font-weight:800;box-shadow:0 8px 18px rgba(6,103,232,.2);transition:background .2s,box-shadow .2s}.auth-submit:hover,.auth-submit:focus{background:#54b947;box-shadow:0 8px 18px rgba(84,214,75,.25)}.auth-security{margin-top:1.35rem;text-align:center;color:#7a899e;font-size:.75rem}.auth-security i{margin-right:.25rem;color:#1fa653}.auth-footer{margin-top:1.4rem;color:#8492a5;font-size:.75rem;text-align:center}
@media(max-width:1050px){.auth-screen{grid-template-columns:minmax(0,1.35fr) minmax(360px,.9fr)}.auth-showcase{padding-left:clamp(1.5rem,4vw,3rem);padding-right:clamp(1.5rem,4vw,3rem)}.auth-product-mockup{margin-top:2rem}.auth-showcase-copy{margin-top:3rem}.auth-showcase h1{font-size:clamp(2.5rem,4.2vw,4rem)}}
@media(max-width:800px){.auth-screen{display:block}.auth-showcase{min-height:auto;padding:1.5rem 1.25rem 1.4rem}.auth-logo img{width:165px;height:58px}.auth-showcase-copy{margin-top:1.6rem}.auth-showcase h1{font-size:clamp(2.35rem,10vw,3.4rem);margin:.8rem 0 1rem}.auth-showcase-copy p{font-size:.94rem}.auth-product-mockup{display:none}.auth-benefits{margin-top:1.5rem;gap:.7rem 1rem}.auth-benefits span{font-size:.73rem}.auth-login-area{min-height:auto;padding:1.25rem}.auth-login-card{padding:1.5rem}.auth-footer{margin-top:.9rem;padding-bottom:.4rem}}
@media(max-width:430px){.auth-showcase{padding-top:1rem}.auth-showcase-copy{margin-top:1.25rem}.auth-showcase h1{font-size:2.25rem}.auth-showcase-copy p{font-size:.88rem}.auth-benefits{display:grid;grid-template-columns:1fr 1fr;font-size:.7rem}.auth-login-card{border-radius:15px;padding:1.25rem}}

/* Logo completa posicionada como imagem visual do painel */
.auth-art{position:relative;z-index:1;width:min(440px,72%);margin:auto 0 1.2rem auto;display:flex;justify-content:flex-end}
.auth-art img{display:block;width:100%;height:auto;max-height:245px;object-fit:contain;object-position:right center;filter:drop-shadow(0 18px 25px rgba(0,18,55,.28))}
@media(max-width:1050px){.auth-art{width:min(380px,78%);margin-top:2rem}}
@media(max-width:800px){.auth-art{width:min(280px,80%);margin:1.5rem auto .4rem}.auth-art img{max-height:170px}}
@media(max-width:430px){.auth-art{width:240px;margin-top:1rem}.auth-art img{max-height:145px}}
.auth-art{margin-left:0;margin-right:auto;justify-content:flex-start}
.auth-art img{object-position:left center}
@media(max-width:800px){.auth-art{margin-left:auto;margin-right:auto;justify-content:center}}
.auth-showcase{background:#fff;color:#0b2a50}
.auth-showcase:before,.auth-showcase:after{display:none}
.auth-eyebrow{color:#0667e8}
.auth-showcase-copy p{color:#5c6d86}
.auth-benefits{color:#2b4363}
.auth-art{width:min(620px,100%);margin:auto 0 1rem;justify-content:flex-start}
.auth-art img{width:100%;max-height:360px;object-fit:contain;object-position:left center;filter:none}
@media(max-width:1050px){.auth-art{width:min(520px,100%)}.auth-art img{max-height:300px}}
@media(max-width:800px){.auth-showcase{background:#fff}.auth-art{width:min(360px,100%);margin:1.5rem auto .4rem;justify-content:center}.auth-art img{max-height:210px;object-position:center}}
.auth-logo{align-self:flex-end;margin-left:auto}
.auth-logo{display:none}
.auth-art{width:min(1000px,100%);margin:auto 0 1rem}
.auth-art img{max-height:560px}
@media(max-width:1050px){.auth-art{width:min(760px,100%)}.auth-art img{max-height:430px}}
@media(max-width:800px){.auth-art{width:min(440px,100%)}.auth-art img{max-height:250px}}
@media(max-width:430px){.auth-art{width:320px}.auth-art img{max-height:190px}}

/* Composição final da tela de login */
.estokei-auth-page{background:#f5f8fc}
.auth-screen{grid-template-columns:minmax(0,1.5fr) minmax(420px,.9fr);min-height:100vh}
.auth-showcase{justify-content:center;min-height:100vh;padding:clamp(2rem,5vh,4rem) clamp(2.5rem,6vw,7rem);background:radial-gradient(circle at 8% 15%,rgba(6,103,232,.13),transparent 31%),linear-gradient(135deg,#fff 0%,#f6fbff 55%,#edf6ff 100%)}
.auth-showcase:before{display:block;width:480px;height:480px;right:-240px;top:-220px;border-color:rgba(6,103,232,.12)}.auth-showcase:after{display:block;width:300px;height:300px;left:-170px;bottom:-170px;border-color:rgba(84,214,75,.18)}
.auth-showcase-copy{position:relative;z-index:1;max-width:620px;margin:0}.auth-eyebrow{color:#0667e8;font-size:.7rem;letter-spacing:.25rem}.auth-showcase h1{font-size:clamp(2.45rem,4vw,4.4rem);line-height:1;letter-spacing:-.06em;color:#0b2a50;margin:1rem 0 1rem}.auth-showcase h1 strong{color:#42bc45}.auth-showcase-copy p{max-width:530px;margin:0;color:#61718a;font-size:1.02rem;line-height:1.5}
.auth-art{width:min(360px,72%);margin:clamp(1.2rem,3vh,2.2rem) auto 1.2rem 0;position:relative;z-index:1}.auth-art img{width:100%;max-height:225px;object-fit:contain;object-position:left center;filter:drop-shadow(0 12px 18px rgba(11,42,80,.14))}
.auth-benefits{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(190px,1fr));gap:.75rem 1rem;width:min(600px,100%);margin:0}.auth-benefits span{display:flex;align-items:center;gap:.6rem;padding:.6rem .7rem;border:1px solid #dfeaf5;border-radius:10px;background:rgba(255,255,255,.72);color:#2b4363;font-size:.8rem}.auth-benefits i{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:#e4f0ff;color:#0667e8}.auth-benefits span:nth-child(2) i{background:#e5f8e7;color:#24a44a}.auth-benefits span:nth-child(3) i{background:#fff3d5;color:#d58a00}.auth-benefits span:nth-child(4) i{background:#e6f7fb;color:#129db9}
.auth-login-area{background:radial-gradient(circle at 50% 45%,#fff 0,#f7fafd 58%,#eef4fa 100%);padding:clamp(1.5rem,4vw,3.5rem)}.auth-login-card{width:min(100%,470px);padding:clamp(2.2rem,4vw,3rem);border-radius:22px;box-shadow:0 20px 55px rgba(11,42,80,.12)}.auth-card-heading img{width:44px;height:44px}.auth-card-heading h1{font-size:1.8rem}.auth-card-subtitle{margin-bottom:1.9rem}.auth-field input{height:55px;border-radius:11px}.auth-submit{height:56px;border-radius:11px}.auth-footer{margin-top:1.2rem}
@media(max-width:1050px){.auth-screen{grid-template-columns:minmax(0,1.25fr) minmax(370px,.9fr)}.auth-showcase{padding-left:2rem;padding-right:2rem}.auth-art{width:310px}.auth-benefits{grid-template-columns:1fr 1fr}.auth-login-card{padding:2rem}}
@media(max-width:800px){.auth-screen{display:block}.auth-showcase{min-height:auto;padding:2rem 1.25rem 1.5rem}.auth-showcase-copy{margin:0}.auth-showcase h1{font-size:clamp(2.2rem,9vw,3.4rem)}.auth-showcase-copy p{font-size:.94rem}.auth-art{width:min(310px,75%);margin:1.3rem auto .9rem}.auth-art img{max-height:185px;object-position:center}.auth-benefits{width:100%;gap:.6rem}.auth-benefits span{font-size:.73rem;padding:.5rem}.auth-login-area{min-height:auto;padding:1.25rem}.auth-login-card{width:100%;max-width:470px;margin:auto}.auth-footer{padding-bottom:.3rem}}
@media(max-width:430px){.auth-showcase{padding-top:1.5rem}.auth-eyebrow{font-size:.62rem;letter-spacing:.17rem}.auth-showcase h1{font-size:2.2rem}.auth-art{width:250px}.auth-art img{max-height:150px}.auth-benefits{grid-template-columns:1fr}.auth-benefits span{justify-content:flex-start}.auth-login-card{padding:1.35rem}}

/* Login: painel visual com background fornecido pelo EstokeiKit */
.auth-screen {
    grid-template-columns: minmax(420px, .9fr) minmax(0, 1.5fr) !important;
    background: #f5f8fc;
}

.auth-showcase {
    grid-column: 2;
    grid-row: 1;
    padding: 0 !important;
    min-width: 0;
    overflow: hidden;
    background: #061d43 !important;
    border-radius: 0 !important;
    display: block !important;
}

.auth-background-image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 100vh;
    object-fit: cover;
    object-position: center;
}

.auth-login-area {
    grid-column: 1;
    grid-row: 1;
    min-width: 0;
    background: #f5f8fc !important;
}

@media (max-width: 1050px) {
    .auth-screen {
        grid-template-columns: minmax(360px, .95fr) minmax(0, 1.25fr) !important;
    }
}

@media (max-width: 800px) {
    .auth-screen {
        display: block !important;
        min-height: 100vh;
    }

    .auth-login-area {
        min-height: 100vh;
    }

    .auth-showcase {
        display: none !important;
    }
}

/* Composição EstokeiKit inspirada na referência: imagem à esquerda e login à direita */
.auth-screen {
    grid-template-columns: minmax(0, 1.5fr) minmax(420px, .9fr) !important;
    background: #f5f8fc;
}

.auth-showcase {
    grid-column: 1;
    grid-row: 1;
    background: #061d43 !important;
}

.auth-login-area {
    grid-column: 2;
    grid-row: 1;
    background: #f5f8fc !important;
}

.auth-background-image {
    object-position: center center;
}

@media (max-width: 1050px) {
    .auth-screen {
        grid-template-columns: minmax(0, 1.25fr) minmax(360px, .95fr) !important;
    }
}

@media (max-width: 800px) {
    .auth-showcase {
        display: none !important;
    }

    .auth-login-area {
        grid-column: 1;
        min-height: 100vh;
    }
}

/* Preserva a proporção original do material de apresentação */
.auth-background-image {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #061d43;
}

/* Login sobre a imagem em tela inteira */
.auth-screen {
    position: relative;
    display: block !important;
    min-height: 100vh;
    overflow: hidden;
    background: #061d43 !important;
}

.auth-showcase {
    position: absolute !important;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    padding: 0 !important;
    background: #061d43 !important;
}

.auth-background-image {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    background: #061d43;
}

.auth-login-area {
    position: relative;
    z-index: 2;
    width: min(42%, 620px);
    min-height: 100vh;
    margin-left: auto;
    padding: 40px 48px;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    background: rgba(245, 248, 252, .93) !important;
    backdrop-filter: blur(3px);
}

.auth-login-card {
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
}

.auth-footer {
    width: 100%;
    max-width: 480px;
    margin: 18px auto 0;
}

@media (max-width: 1050px) {
    .auth-login-area {
        width: min(48%, 540px);
        padding: 28px;
    }
}

@media (max-width: 800px) {
    .auth-showcase {
        display: block !important;
    }

    .auth-login-area {
        width: 100%;
        min-height: 100vh;
        padding: 20px;
        background: rgba(245, 248, 252, .94) !important;
    }
}

/* Tela de autenticação: painel visual + card de login */
.auth-screen {
    display: grid !important;
    grid-template-columns: minmax(0, 1.38fr) minmax(420px, 1fr) !important;
    min-height: 100vh;
    height: 100vh;
    overflow: hidden;
    position: relative;
    background: #f3f7fb !important;
}

.auth-showcase {
    position: relative !important;
    inset: auto !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: auto !important;
    height: 100% !important;
    min-width: 0;
    overflow: hidden;
    padding: 0 !important;
    background: #061d43 !important;
}

.auth-showcase::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(3, 23, 55, .08), rgba(3, 23, 55, .02));
}

.auth-background-image {
    position: relative;
    z-index: 0;
    display: block;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    background: #061d43;
}

.auth-login-area {
    position: relative !important;
    z-index: 1;
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: auto !important;
    min-width: 0;
    min-height: 100% !important;
    height: 100%;
    margin: 0 !important;
    padding: 32px clamp(24px, 4vw, 52px) 24px !important;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #f3f7fb !important;
    backdrop-filter: none !important;
}

.auth-login-card {
    width: 100% !important;
    max-width: 460px !important;
    margin: 0 auto !important;
    padding: 40px 42px !important;
    border: 1px solid rgba(17, 71, 125, .12) !important;
    border-radius: 24px !important;
    background: #fff !important;
    box-shadow: 0 20px 60px rgba(0, 40, 90, .12) !important;
}

.auth-card-heading {
    gap: 14px;
    margin-bottom: 12px;
}

.auth-card-heading img {
    width: 44px;
    height: 44px;
    object-fit: contain;
}

.auth-card-heading span {
    color: #5d7188;
    font-size: .78rem;
}

.auth-card-heading h1 {
    margin-top: 2px;
    color: #0b2a50;
    font-size: clamp(1.55rem, 2.2vw, 1.9rem);
    line-height: 1.15;
}

.auth-card-subtitle {
    margin-bottom: 28px;
    color: #64778d;
}

.auth-field {
    margin-bottom: 18px;
}

.auth-field input,
.auth-password input {
    height: 54px;
    border-radius: 12px;
    background: #f8fafc;
    border: 1px solid #dce5ef;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.auth-field input:focus,
.auth-password input:focus {
    border-color: #0667e8;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(6, 103, 232, .12);
}

.auth-submit {
    width: 100%;
    height: 56px;
    margin-top: 8px;
    border-radius: 12px;
    background: #0667e8;
    font-weight: 600;
    transition: background .18s ease, transform .18s ease, box-shadow .18s ease;
}

.auth-submit:hover {
    background: #0457c7;
    box-shadow: 0 10px 24px rgba(6, 103, 232, .22);
    transform: translateY(-1px);
}

.auth-security {
    margin-top: 26px;
    text-align: center;
    color: #5eaa5d;
}

.auth-footer {
    width: 100%;
    max-width: 460px;
    margin: 16px auto 0 !important;
    text-align: center;
    color: #718399;
    font-size: .78rem;
}

@media (max-width: 1050px) {
    .auth-screen {
        grid-template-columns: minmax(0, 1.15fr) minmax(390px, 1fr) !important;
    }

    .auth-login-card {
        padding: 34px 32px !important;
    }
}

@media (max-width: 800px) {
    .auth-screen {
        display: block !important;
        height: auto;
        min-height: 100vh;
        overflow: auto;
        background: #f3f7fb !important;
    }

    .auth-showcase {
        display: none !important;
    }

    .auth-login-area {
        width: 100% !important;
        min-height: 100vh !important;
        height: auto;
        padding: 24px 16px !important;
    }

    .auth-login-card {
        max-width: 420px !important;
        padding: 32px 24px !important;
    }
}

/* Somente o card de login deve permanecer destacado */
.auth-login-area {
    background: transparent !important;
    backdrop-filter: none !important;
}

/* Arte em tela inteira para evitar o zoom causado pela coluna estreita */
.auth-screen {
    display: block !important;
    position: relative;
    width: 100%;
    min-height: 100vh;
    height: 100vh;
    overflow: hidden;
    background: #061d43 !important;
}

.auth-showcase {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    background: #061d43 !important;
}

.auth-background-image {
    display: block;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

.auth-login-area {
    position: relative !important;
    z-index: 2;
    width: min(42%, 620px) !important;
    min-height: 100vh !important;
    height: 100vh;
    margin-left: auto !important;
    padding: 32px 48px 24px !important;
    background: transparent !important;
    backdrop-filter: none !important;
}

@media (max-width: 1050px) {
    .auth-login-area {
        width: min(48%, 540px) !important;
        padding: 28px !important;
    }
}

@media (max-width: 800px) {
    .auth-showcase {
        display: block !important;
    }

    .auth-login-area {
        width: 100% !important;
        min-height: 100vh !important;
        height: auto;
        padding: 20px 16px !important;
        background: rgba(243, 247, 251, .92) !important;
    }
}

/* Card de login em estilo glass */
.auth-login-card {
    background: rgba(255, 255, 255, .78) !important;
    border: 1px solid rgba(255, 255, 255, .82) !important;
    box-shadow:
        0 24px 70px rgba(0, 18, 48, .28),
        inset 0 1px 0 rgba(255, 255, 255, .9) !important;
    backdrop-filter: blur(22px) saturate(145%);
    -webkit-backdrop-filter: blur(22px) saturate(145%);
}

.auth-card-heading h1,
.auth-card-heading span,
.auth-card-subtitle,
.auth-field label {
    text-shadow: 0 1px 2px rgba(255, 255, 255, .5);
}

.auth-field input,
.auth-password input {
    background: rgba(248, 250, 252, .82) !important;
    border-color: rgba(156, 177, 199, .65) !important;
}

.auth-field input:focus,
.auth-password input:focus {
    background: rgba(255, 255, 255, .94) !important;
}

/* Painel glass vertical atrás do card de login */
.auth-login-area {
    isolation: isolate;
}

.auth-login-area::before {
    content: "";
    position: absolute;
    inset: 24px;
    z-index: 0;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 32px;
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, .24),
        rgba(255, 255, 255, .10)
    );
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .35),
        0 18px 55px rgba(0, 18, 48, .12);
    backdrop-filter: blur(18px) saturate(130%);
    -webkit-backdrop-filter: blur(18px) saturate(130%);
    pointer-events: none;
}

.auth-login-area > * {
    position: relative;
    z-index: 1;
}

@media (max-width: 800px) {
    .auth-login-area::before {
        inset: 10px;
        border-radius: 24px;
    }
}
