/* Estilos de autenticação da Folha — paleta .theme-payroll (teal profundo) */

:root {
    color-scheme: light;

    /* Paleta .theme-payroll */
    --background: #F5F9F8;
    --card: #FFFFFF;
    --foreground: #123330;
    --muted-foreground: #5C7673;
    --primary: #328C7E;
    --primary-deep: #1F534E;
    --primary-glow: #7EEBC8;
    --accent: #DDF3EE;
    --secondary: #EFFFFA;
    --border: #D3E7E4;
    --input: #ECF2F1;
    --destructive: #E2151A;
    --gradient-primary: var(--primary);
    --gradient-overlay: rgb(18 51 48 / 0.35);
    --shadow-soft: 0 1px 2px rgb(18 51 48 / 0.06), 0 12px 28px rgb(18 51 48 / 0.08);
    --shadow-elegant: 0 10px 28px rgb(50 140 126 / 0.28), 0 2px 8px rgb(31 83 78 / 0.16);


    /* Primitivas */
    --folha-radius-control: var(--radius-md, 8px);
    --folha-radius-panel: var(--radius-lg, 12px);
    --color-paper-0: #FFFFFF;
    --color-paper-25: #DDF3EE;
    --color-paper-50: #EFFFFA;
    --color-paper-100: #D3E7E4;
    --color-ink-50: #DDF3EE;
    --color-ink-200: #9bb5b1;
    --color-ink-500: var(--muted-foreground);
    --color-ink-700: var(--primary-deep);
    --color-ink-900: var(--foreground);
    --color-catalog-orange-100: var(--accent);
    --color-catalog-orange-300: var(--primary-glow);
    --color-catalog-orange-600: var(--primary);
    --color-catalog-orange-800: var(--primary-deep);
    --color-info-blue-100: #eef6ff;
    --color-info-blue-300: #b7d7ff;
    --color-info-blue-600: #2f6fbb;
    --color-info-blue-800: #24558f;
    --color-registry-jade-100: #e5f7ed;
    --color-registry-jade-300: #7bd4a0;
    --color-registry-jade-600: #16834f;
    --color-registry-jade-800: #0f5c38;
    --color-warning-amber-100: #e8f6e8;
    --color-warning-amber-300: #f0c764;
    --color-warning-amber-600: #3d8a3d;
    --color-warning-amber-800: #2c6b2c;
    --color-risk-red-100: #e5f7ee;
    --color-risk-red-300: #f38a78;
    --color-risk-red-600: var(--destructive);
    --color-risk-red-800: #274b27;
    --color-authority-violet-100: #ece7ff;
    --color-authority-violet-300: #a99af5;
    --color-authority-violet-600: #604cc7;
    --color-authority-violet-800: #3d3187;
    --color-steel-50: #f4f7f6;
    --color-steel-100: #e5ecea;
    --color-steel-300: #a8b9b5;
    --color-steel-400: #829894;
    --color-steel-700: #40534f;
    --color-steel-900: #17231f;
    --color-ink-900-alpha-08: #12333014;
    --color-ink-900-alpha-32: #12333052;
    --color-catalog-orange-600-alpha-32: #328C7E52;
    --color-info-blue-600-alpha-24: #2f6fbb3d;

    /* Superfícies de fundo */
    --surface-canvas-start-alpha: #f7f3ecf7;
    --surface-canvas-mid-alpha: #eef5f2ec;
    --surface-canvas-end-alpha: #FFFFFFf0;
    --surface-topbar-alpha: #FFFFFFf2;
    --surface-topbar-soft: #DDF3EEe8;
    --surface-topbar-veil: #DDF3EE66;
    --surface-topbar-highlight: #ffffffc7;
    --topbar-pill-bg: #FFFFFFd9;
    --topbar-pill-bg-hover: #DDF3EEa6;
    --topbar-pill-border: #D3E7E4;
    --topbar-pill-shadow: 0 8px 22px #2b4a2b10;
    --topbar-accent-shadow: #328C7E24;

    /* Navegação lateral */
    --surface-nav: #123330;
    --surface-nav-muted: #223322;
    --surface-nav-soft: #1c2a1c;
    --surface-nav-border: #3a523a;
    --surface-nav-active: #DDF3EE;
    --surface-nav-glow: #328C7E24;
    --surface-nav-shadow: #13090642;
    --text-on-nav: #DDF3EE;
    --text-on-nav-muted: #9bb5b1;
    --nav-item-height: 2.875rem;
    --nav-item-radius: var(--radius-md);
    --nav-item-gap: 0.375rem;
    --nav-item-bg-hover: #DDF3EE18;
    --nav-item-bg-active: var(--color-catalog-orange-100);
    --nav-item-border-hover: var(--color-catalog-orange-300);
    --nav-item-border-active: var(--color-catalog-orange-300);
    --nav-item-text: var(--text-on-nav-muted);
    --nav-item-text-hover: var(--text-on-nav);
    --nav-item-text-active: var(--action-primary-hover);
    --nav-item-icon-active: var(--action-primary-hover);
    --nav-item-icon-bg-hover: #DDF3EE12;
    --nav-item-icon-bg-active: transparent;
    --nav-item-badge-bg: #DDF3EE10;
    --nav-item-badge-border: #DDF3EE24;
    --nav-item-badge-active-bg: var(--color-catalog-orange-100);
    --nav-item-badge-active-border: var(--color-catalog-orange-300);
    --nav-item-badge-active-text: var(--action-primary-hover);
    --nav-item-shadow-hover: inset 0 1px 0 #ffffff14, 0 0 0 3px var(--surface-nav-glow);
    --nav-item-shadow-active: none;
    --nav-item-shadow-active-hover: 0 0 0 3px var(--surface-nav-glow);
    --nav-control-bg: transparent;
    --nav-control-bg-hover: #DDF3EE18;
    --nav-control-border: transparent;
    --nav-control-icon: var(--text-on-nav);
    --nav-control-shadow: none;
    --nav-control-shadow-hover: inset 0 1px 0 #ffffff14, 0 0 0 3px var(--surface-nav-glow);

    /* Semânticos de superfície */
    --surface-canvas: var(--background);
    --surface-base: var(--card);
    --surface-raised: #FFFFFF;
    --surface-panel-header: #DDF3EE;
    --surface-panel-header-strong: #ffffff;
    --surface-panel-header-border: #D3E7E4;
    --brand-accent-line: var(--primary);
    --brand-accent-line-shadow: 0 0 10px #328C7E24;
    --surface-muted: #ECF2F1;
    --surface-glass: #FFFFFFd9;
    --border-default: var(--border);
    --border-subtle: var(--border);
    --border-strong: #9bb5b1;
    --text-primary: var(--foreground);
    --text-secondary: var(--color-ink-700);
    --text-muted: var(--muted-foreground);
    --action-primary: var(--primary, var(--color-catalog-orange-600));
    --action-primary-hover: var(--primary-deep, var(--color-catalog-orange-800));
    --folha-action-primary: var(--action-primary);
    --folha-action-primary-hover: var(--action-primary-hover);
    --folha-text-primary: var(--foreground, var(--text-primary));
    --folha-text-muted: var(--muted-foreground, var(--text-muted));
    --status-success: var(--color-registry-jade-600);
    --status-warning: var(--color-warning-amber-600);
    --status-danger: var(--color-risk-red-600);
    --status-info: var(--color-info-blue-600);

    /* Espaçamento */
    --space-2xs: 0.25rem;
    --space-xs: 0.5rem;
    --space-sm: 0.75rem;
    --space-md: 1rem;
    --space-lg: 1.5rem;
    --space-xl: 2rem;
    --space-2xl: 3rem;

    /* Tipografia */
    --font-family-base: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-size-micro: 0.6875rem;
    --font-size-caption: 0.75rem;
    --font-size-meta: 0.8125rem;
    --font-size-small: 0.875rem;
    --font-size-body: 0.875rem;
    --font-size-lead: 1rem;
    --font-size-subtitle: 1.125rem;
    --font-size-title: 1.25rem;
    --font-size-page-title: 1.5rem;
    --font-size-display: 1.75rem;
    --font-size-stat: 2.375rem;
    --font-size-kpi: 3.75rem;
    --font-size-control: var(--font-size-body);
    --font-size-label: var(--font-size-small);
    --font-size-panel-title: var(--font-size-lead);
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-bold: 700;
    --line-height-tight: 1.18;
    --line-height-heading: 1.25;
    --line-height-compact: 1.35;
    --line-height-body: 1.43;
    --line-height-display: 1.28;

    /* Motion */
    --duration-instant: 80ms;
    --duration-fast: 160ms;
    --duration-base: 240ms;
    --duration-slow: 420ms;

    /* Raios */
    --radius-xs: 4px;
    --radius-sm: 6px;
    --radius-md: 8px;
    --radius-lg: 12px;

    /* Sombras */
    --shadow-raised: 0 1px 2px var(--color-ink-900-alpha-08), 0 12px 34px #1233300f;
    --shadow-panel: 0 1px 2px #1233300a, 0 18px 48px #12333010;
    --shadow-floating: 0 1px 2px #1233300d, 0 24px 60px #12333018;
    --shadow-focus: 0 0 0 3px var(--color-catalog-orange-600-alpha-32);

    /* Controles */
    --control-height: 2.5rem;
    --control-radius: 0.72rem;
    --control-border: #2a522a29;
    --control-border-hover: #1F534E57;
    --control-border-focus: #328C7Eb8;
    --control-bg: #EFFFFAe0;
    --control-bg-hover: #FFFFFFf5;
    --control-bg-focus: #fffffff0;
    --control-placeholder: #1F534E94;
    --control-shadow: inset 0 1px 1px #12333006, 0 1px 2px #12333005;
    --control-shadow-hover: inset 0 1px 1px #12333005, 0 7px 18px #2b4a2b0a;
    --control-shadow-focus: 0 0 0 3px #328C7E29, inset 0 1px 1px #12333005;
    --control-disabled-bg: #D3E7E459;
    --control-disabled-text: #5C76739c;

    /* Shell */
    --shell-rail-width: 17rem;
    --shell-rail-collapsed-width: 4.75rem;
    --shell-topbar-height: 4.25rem;

    /* Aliases core (compatibilidade com componentes core/) */
    --core-color-surface-page: var(--surface-canvas);
    --core-color-surface-panel: var(--surface-raised);
    --core-color-surface-raised: var(--surface-base);
    --core-color-surface-elevated: var(--surface-base);
    --core-color-surface-inset: var(--surface-muted);
    --core-color-border-subtle: var(--border-subtle);
    --core-color-border-strong: var(--border-strong);
    --core-color-border-interactive: var(--action-primary);
    --core-color-text: var(--text-secondary);
    --core-color-text-strong: var(--text-primary);
    --core-color-text-muted: var(--text-muted);
    --core-color-text-subtle: var(--text-secondary);
    --core-color-link: var(--action-primary);
    --core-color-link-hover: var(--action-primary-hover);
    --core-color-action-primary: var(--action-primary);
    --core-color-action-primary-hover: var(--action-primary-hover);
    --core-color-action-on-primary: var(--color-paper-0);
    --core-color-info: var(--status-info);
    --core-color-success: var(--status-success);
    --core-color-warning: var(--status-warning);
    --core-color-error: var(--status-danger);
    --core-color-focus: var(--action-primary);
    --core-radius-md: var(--radius-md);
    --core-radius-sm: var(--radius-sm);
    --core-font-family: var(--font-family-base);
    --core-ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
    --core-ease-emphasized: cubic-bezier(0.2, 0, 0, 1);
    --core-duration-quick: 160ms;
    --core-duration-normal: 240ms;
}

body.folha-auth-page {
    margin: 0;
    background: #0f1f1e;
    overflow: hidden;
}

.folha-auth-shell {
    --folha-auth-panel-width: clamp(24rem, 27vw, 28rem);
    --folha-auth-panel-offset: clamp(1.25rem, 3vw, 3.5rem);
    --folha-auth-panel-max-height: min(46rem, calc(100svh - clamp(1rem, 6vh, 4rem)));
    --folha-auth-card-min-height: min(45.5rem, var(--folha-auth-panel-max-height));
    --folha-auth-safe-width: calc(100vw - var(--folha-auth-panel-width) - var(--folha-auth-panel-offset));
    --folha-auth-safe-center: calc(var(--folha-auth-safe-width) / 2);
    min-height: 100vh;
    min-height: 100svh;
    height: 100vh;
    height: 100svh;
    position: relative;
    isolation: isolate;
    display: block;
    padding: 0;
    overflow: hidden;
}

.folha-auth-visual,

.folha-auth-panel {
    min-width: 0;
}

.folha-auth-visual {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    min-height: 100vh;
    overflow: hidden;
    pointer-events: none;
}

.folha-auth-visual::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    background: none;
    pointer-events: none;
}

.folha-auth-visual::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 0;
    background: none;
    clip-path: polygon(0 0, 100% 0, 100% 42%, 0 64%);
    pointer-events: none;
}

.folha-auth-carousel {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
    pointer-events: none;
}

.folha-auth-backdrops,

.folha-auth-backdrop {
    position: absolute;
    inset: 0;
}

.folha-auth-backdrops {
    z-index: 0;
    overflow: hidden;
}

.folha-auth-backdrop {
    opacity: 0;
    transform: scale(1.02);
    transition:
        opacity 900ms var(--core-ease-standard),
        transform 1200ms var(--core-ease-standard);
}

.folha-auth-backdrop.is-active,

.folha-auth-carousel:not(.is-ready) .folha-auth-backdrop--folha {
    opacity: 1;
    transform: scale(1);
}

.folha-auth-backdrop::before,

.folha-auth-backdrop::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.folha-auth-backdrop::before {
    background: none;
    background-image: none;
    background-size: auto;
    mask-image: none;
}

.folha-auth-backdrop::after {
    background: none;
    mix-blend-mode: normal;
}

.folha-auth-backdrop--folha {
    background: #0f1f1e;
}

.folha-auth-backdrop--padronizacao {
    background: #0f1f1e;
}

.folha-auth-backdrop--auditoria {
    background: #0f1f1e;
}

.folha-auth-visual-content {
    position: absolute;
    z-index: 2;
    left: var(--folha-auth-safe-center);
    top: 50%;
    width: calc(var(--folha-auth-safe-width) - clamp(2rem, 5vw, 5rem));
    height: min(52rem, calc(100svh - clamp(4.5rem, 8vh, 6rem)));
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(15.5rem, 0.62fr) minmax(27rem, 1.38fr);
    grid-template-rows: minmax(0, 1fr) auto;
    grid-template-areas:
        "copy board"
        "signals board";
    align-items: stretch;
    gap: clamp(2rem, 3.6vw, 4.4rem);
    padding: clamp(0.75rem, 2vw, 2rem) clamp(1rem, 2.2vw, 2.4rem);
    border: 0;
    border-radius: 0;
    color: #3d6b3d;
    background: transparent;
    box-shadow: none;
    overflow: visible;
    opacity: 0;
    transform: translate3d(-50%, -48%, 0) scale(0.985);
    transform-origin: 50% 50%;
    transition:
        opacity 720ms var(--core-ease-standard),
        transform 820ms var(--core-ease-standard),
        filter 720ms var(--core-ease-standard);
    filter: saturate(0.86) blur(1px);
}

.folha-auth-carousel:not(.is-ready) .folha-auth-slide:first-of-type,

.folha-auth-slide.is-active {
    opacity: 1;
    transform: translate3d(-50%, -50%, 0) scale(1);
    filter: saturate(1) blur(0);
}

.folha-auth-slide--padronizacao {
    color: #406140;
}

.folha-auth-slide--auditoria {
    color: #2b5c2b;
}

.folha-auth-visual-content::before {
    content: none;
}

.folha-auth-visual-content > * {
    position: relative;
}

.folha-showcase-copy {
    grid-area: copy;
    min-width: 0;
    max-width: min(100%, 24rem);
    display: grid;
    align-content: center;
    justify-self: start;
    gap: clamp(0.7rem, 1.45vw, 1.15rem);
}

.folha-auth-kicker {
    width: 100%;
    margin: 0;
    color: color-mix(in srgb, currentColor 72%, transparent);
    font-size: 0.75rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0;
}

.folha-auth-window-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(0.65rem, 1.2vw, 1.1rem);
    width: 100%;
    max-width: 24rem;
    margin: 0;
    color: rgb(138 55 0 / 0.84);
    font-size: clamp(0.82rem, 1vw, 0.98rem);
    font-weight: 600;
}

.folha-auth-window-nav strong {
    display: inline-flex;
    align-items: center;
    min-height: 2.35rem;
    padding: 0.5rem 1rem;
    border-radius: var(--folha-radius-control);
    color: #ffffff;
    background: var(--folha-action-primary);
    box-shadow: 0 16px 30px rgb(50 140 126 / 0.28);
    text-transform: uppercase;
    font-size: 0.75rem;
    margin-left: auto;
}

.folha-auth-header h1,

.folha-headline h1 {
    margin: 0;
    color: inherit;
    line-height: 1.08;
    letter-spacing: 0;
}

.folha-auth-window-title {
    display: grid;
    gap: 0.08rem;
    width: 100%;
    max-width: min(100%, 23.5rem);
    margin-top: 0;
    margin-left: 0;
    font-weight: 900;
    line-height: 0.92;
    letter-spacing: 0;
}

.folha-auth-window-title span,

.folha-auth-window-title strong {
    display: block;
    font-size: clamp(2.35rem, 3.35vw, 4rem);
}

.folha-auth-window-title strong {
    padding-left: clamp(0.4rem, 1.8vw, 1.8rem);
    color: #3d6b3d;
}

.folha-showcase-lead {
    max-width: 23.5rem;
    margin: 0;
    color: rgb(74 45 28 / 0.78);
    font-size: clamp(1rem, 1.35vw, 1.18rem);
    font-weight: 600;
    line-height: 1.55;
}

.folha-showcase-board {
    grid-area: board;
    position: relative;
    align-self: center;
    justify-self: end;
    width: 100%;
    max-width: 34.5rem;
    min-height: 0;
    height: min(30.5rem, 82%);
    margin: 0;
    display: grid;
    gap: clamp(0.75rem, 1.25vw, 1.05rem);
    color: var(--folha-text-primary);
    overflow: visible;
}

.folha-showcase-board--painel {
    grid-template-columns: minmax(0, 1.05fr) minmax(10rem, 0.78fr);
    grid-template-rows: minmax(0, 1fr) auto;
    grid-template-areas:
        "record note"
        "route note";
}

.folha-showcase-board--padronizacao {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    grid-template-rows: minmax(0, 1fr) auto;
    grid-template-areas:
        "compare standard"
        "checks checks";
}

.folha-showcase-board--auditoria {
    grid-template-columns: minmax(0, 1fr) minmax(12rem, 0.9fr);
    grid-template-areas: "timeline receipt";
}

.folha-showcase-record,

.folha-showcase-note,

.folha-showcase-compare,

.folha-showcase-standard,

.folha-showcase-receipt,

.folha-showcase-timeline,

.folha-showcase-checklist li {
    position: relative;
    min-width: 0;
    border: 1px solid rgb(255 255 255 / 0.36);
    border-radius: var(--folha-radius-panel);
    background:
        linear-gradient(155deg, rgb(255 252 247 / 0.6), rgb(255 225 194 / 0.34)),
        rgb(255 242 228 / 0.24);
    box-shadow:
        inset 0 1px 0 rgb(255 255 255 / 0.46),
        0 18px 34px rgb(134 70 26 / 0.1);
    backdrop-filter: blur(18px) saturate(135%);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
    overflow: hidden;
}

.folha-showcase-record,

.folha-showcase-note,

.folha-showcase-compare,

.folha-showcase-standard,

.folha-showcase-receipt,

.folha-showcase-timeline {
    padding: clamp(1rem, 1.6vw, 1.35rem);
}

.folha-showcase-record::after,

.folha-showcase-note::after,

.folha-showcase-standard::after,

.folha-showcase-receipt::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 0.2rem;
    background: linear-gradient(90deg, rgb(50 140 126 / 0.56), rgb(194 244 194 / 0.26));
    pointer-events: none;
}

.folha-showcase-record {
    grid-area: record;
    display: grid;
    align-content: end;
    gap: clamp(0.75rem, 1.3vw, 1rem);
    background:
        radial-gradient(circle at 82% 16%, rgb(50 140 126 / 0.12) 0 3rem, transparent 3.05rem),
        linear-gradient(150deg, rgb(255 253 248 / 0.68), rgb(255 227 196 / 0.4)),
        rgb(255 238 220 / 0.26);
}

.folha-showcase-record-head,

.folha-showcase-route {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
}

.folha-showcase-record-head span,

.folha-showcase-note span,

.folha-showcase-compare span,

.folha-showcase-standard span,

.folha-showcase-receipt > span,

.folha-showcase-route span,

.folha-showcase-route strong,

.folha-showcase-timeline span,

.folha-showcase-checklist span {
    color: var(--folha-text-muted);
    font-size: 0.7rem;
    font-weight: 800;
    line-height: 1.2;
    text-transform: uppercase;
}

.folha-showcase-record-head strong {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.36rem 0.72rem;
    border-radius: var(--folha-radius-control);
    color: #ffffff;
    background: rgb(154 67 24 / 0.82);
}

.folha-showcase-board h2,

.folha-showcase-board p,

.folha-showcase-board dl,

.folha-showcase-board dd,

.folha-showcase-board ul,

.folha-showcase-board ol,

.folha-showcase-board small {
    margin: 0;
}

.folha-showcase-record h2,

.folha-showcase-standard strong,

.folha-showcase-receipt strong {
    max-width: 18rem;
    font-size: clamp(1.45rem, 2.25vw, 2.25rem);
    line-height: 1.05;
}

.folha-showcase-record p,

.folha-showcase-standard small,

.folha-showcase-note p,

.folha-showcase-timeline small,

.folha-showcase-receipt dd {
    color: rgb(74 45 28 / 0.72);
    font-size: clamp(0.78rem, 0.9vw, 0.9rem);
    font-weight: 700;
    line-height: 1.4;
}

.folha-showcase-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.48rem;
    margin-top: 0.2rem;
}

.folha-showcase-facts div,

.folha-showcase-receipt dl div {
    min-width: 0;
    padding: 0.58rem 0.65rem;
    border-radius: var(--folha-radius-control);
    background: rgb(255 255 255 / 0.3);
}

.folha-showcase-facts dt,

.folha-showcase-receipt dt {
    color: var(--folha-text-muted);
    font-size: 0.65rem;
    font-weight: 800;
    text-transform: uppercase;
}

.folha-showcase-facts dd {
    margin-top: 0.18rem;
    font-size: 0.78rem;
    font-weight: 800;
}

.folha-showcase-route {
    grid-area: route;
    min-height: 3.9rem;
    padding: 0.72rem 0.78rem;
    border-radius: var(--folha-radius-panel);
    background: rgb(255 255 255 / 0.24);
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.35);
}

.folha-showcase-route span,

.folha-showcase-route strong {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 2.3rem;
    padding: 0.35rem 0.55rem;
    border-radius: 999px;
    background: rgb(255 255 255 / 0.3);
    text-align: center;
}

.folha-showcase-route strong {
    color: #ffffff;
    background: rgb(154 67 24 / 0.78);
}

.folha-showcase-note {
    grid-area: note;
    display: grid;
    align-content: end;
    gap: 0.55rem;
}

.folha-showcase-note strong {
    font-size: clamp(1rem, 1.25vw, 1.25rem);
    line-height: 1.12;
}

.folha-showcase-note::before {
    content: "01";
    position: absolute;
    top: clamp(0.8rem, 1.4vw, 1.1rem);
    right: clamp(0.8rem, 1.4vw, 1.1rem);
    color: rgb(154 67 24 / 0.18);
    font-size: clamp(2.7rem, 4.6vw, 4.5rem);
    font-weight: 900;
    line-height: 1;
}

.folha-showcase-compare {
    grid-area: compare;
    display: grid;
    align-content: center;
    gap: 0.62rem;
}

.folha-showcase-compare p {
    padding: 0.72rem 0.82rem;
    border: 1px solid rgb(154 67 24 / 0.12);
    border-radius: var(--folha-radius-control);
    background: rgb(255 255 255 / 0.28);
    color: rgb(74 45 28 / 0.76);
    font-size: clamp(0.78rem, 0.95vw, 0.92rem);
    font-weight: 800;
}

.folha-showcase-standard {
    grid-area: standard;
    display: grid;
    align-content: center;
    gap: 0.65rem;
    background:
        radial-gradient(circle at 84% 18%, rgb(50 140 126 / 0.12) 0 2.6rem, transparent 2.65rem),
        linear-gradient(150deg, rgb(255 252 247 / 0.7), rgb(255 220 186 / 0.38)),
        rgb(255 238 220 / 0.26);
}

.folha-showcase-checklist {
    grid-area: checks;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(0.6rem, 1vw, 0.85rem);
    padding: 0;
    list-style: none;
}

.folha-showcase-checklist li {
    display: grid;
    align-content: center;
    gap: 0.3rem;
    min-height: 5.4rem;
    padding: 0.82rem;
}

.folha-showcase-checklist strong {
    font-size: clamp(1.1rem, 1.55vw, 1.5rem);
    line-height: 1;
}

.folha-showcase-timeline {
    grid-area: timeline;
    display: grid;
    align-content: center;
    gap: 0.72rem;
    padding-left: clamp(1.15rem, 1.8vw, 1.45rem);
    list-style: none;
}

.folha-showcase-timeline li {
    position: relative;
    display: grid;
    grid-template-columns: 3.75rem minmax(0, 1fr);
    gap: 0.18rem 0.75rem;
    padding: 0.72rem 0 0.72rem 1rem;
    border-left: 2px solid rgb(154 67 24 / 0.2);
}

.folha-showcase-timeline li::before {
    content: "";
    position: absolute;
    top: 1.12rem;
    left: -0.36rem;
    width: 0.62rem;
    height: 0.62rem;
    border: 2px solid rgb(255 255 255 / 0.72);
    border-radius: 999px;
    background: rgb(154 67 24 / 0.82);
    box-shadow: 0 0 0 0.28rem rgb(154 67 24 / 0.1);
}

.folha-showcase-timeline span {
    grid-row: 1 / span 2;
    align-self: start;
    color: rgb(154 67 24 / 0.78);
}

.folha-showcase-timeline strong {
    font-size: clamp(0.94rem, 1.05vw, 1.08rem);
    line-height: 1.15;
}

.folha-showcase-receipt {
    grid-area: receipt;
    display: grid;
    align-content: center;
    gap: clamp(0.7rem, 1.25vw, 1rem);
}

.folha-showcase-receipt dl {
    display: grid;
    gap: 0.55rem;
}

.folha-showcase-receipt dd {
    margin-top: 0.16rem;
}

.folha-auth-signal-list {
    grid-area: signals;
    align-self: end;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.5rem;
    width: 100%;
    max-width: min(100%, 24rem);
    margin: 0;
}

.folha-auth-signal-list div {
    min-width: 0;
    padding: 0.6rem 0.7rem;
    border: 1px solid rgb(50 140 126 / 0.14);
    border-radius: var(--folha-radius-control);
    background: rgb(255 255 255 / 0.36);
}

.folha-auth-signal-list dt,

.folha-auth-signal-list dd {
    margin: 0;
}

.folha-auth-signal-list dt {
    font-weight: 800;
}

.folha-auth-signal-list dd {
    margin-top: 0.18rem;
    color: rgb(54 64 74 / 0.78);
    font-size: 0.75rem;
    line-height: 1.28;
}

.folha-auth-carousel-controls {
    position: fixed;
    left: var(--folha-auth-safe-center);
    bottom: clamp(1rem, 3vh, 1.75rem);
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 0.42rem;
    padding: 0.24rem 0.42rem;
    border: 1px solid rgb(255 255 255 / 0.35);
    border-radius: 999px;
    background: rgb(255 255 255 / 0.22);
    box-shadow: 0 18px 42px rgb(134 70 26 / 0.22);
    backdrop-filter: blur(22px) saturate(150%);
    -webkit-backdrop-filter: blur(22px) saturate(150%);
    pointer-events: auto;
    transform: translateX(-50%);
}

.folha-auth-carousel-option {
    position: relative;
    width: 0.72rem;
    height: 0.72rem;
    min-width: 0.72rem;
    min-height: 0.72rem;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    padding: 0;
    color: rgb(138 55 0 / 0.84);
    background: transparent;
    cursor: pointer;
    font: inherit;
    transition:
        color 160ms var(--core-ease-standard),
        background-color 160ms var(--core-ease-standard),
        box-shadow 160ms var(--core-ease-standard),
        transform 160ms var(--core-ease-standard);
}

.folha-auth-carousel-option:focus-visible {
    outline: 2px solid var(--folha-action-primary);
    outline-offset: 3px;
}

.folha-auth-carousel-option:not(.folha-auth-carousel-option--motion)::before {
    content: "";
    width: 0.52rem;
    height: 0.52rem;
    border-radius: 999px;
    background: rgb(138 55 0 / 0.34);
    transition: background-color 160ms var(--core-ease-standard),
        box-shadow 160ms var(--core-ease-standard),
        transform 160ms var(--core-ease-standard);
}

.folha-auth-carousel-option:not(.folha-auth-carousel-option--motion):hover::before,

.folha-auth-carousel-option:not(.folha-auth-carousel-option--motion):focus-visible::before {
    background: rgb(50 140 126 / 0.72);
    transform: scale(1.18);
}

.folha-auth-carousel-option:not(.folha-auth-carousel-option--motion).is-active::before {
    background: var(--folha-action-primary);
    box-shadow: 0 0 0 0.22rem rgb(50 140 126 / 0.18);
    transform: scale(1.22);
}

.folha-auth-carousel-option--motion {
    width: 1.38rem;
    height: 1.38rem;
    min-width: 1.38rem;
    min-height: 1.38rem;
    margin-left: 0.08rem;
    color: #ffffff;
    background: var(--folha-action-primary);
    box-shadow: 0 10px 24px rgb(50 140 126 / 0.26);
}

.folha-auth-carousel-option--motion::before,

.folha-auth-carousel-option--motion::after {
    content: "";
    position: absolute;
    width: 0.1rem;
    height: 0.42rem;
    border-radius: 999px;
    background: currentColor;
    transition:
        opacity 160ms var(--core-ease-standard),
        transform 160ms var(--core-ease-standard),
        border-color 160ms var(--core-ease-standard);
}

.folha-auth-carousel-option--motion::before {
    transform: translateX(-0.11rem);
}

.folha-auth-carousel-option--motion::after {
    transform: translateX(0.11rem);
}

.folha-auth-carousel-option--motion:hover,

.folha-auth-carousel-option--motion:focus-visible {
    transform: translateY(-1px);
}

.folha-auth-carousel-option--motion[aria-pressed="true"] {
    color: var(--folha-action-primary);
    background: rgb(255 255 255 / 0.68);
}

.folha-auth-carousel-option--motion[aria-pressed="true"]::before {
    width: 0;
    height: 0;
    border-top: 0.25rem solid transparent;
    border-bottom: 0.25rem solid transparent;
    border-left: 0.38rem solid currentColor;
    border-radius: 0;
    background: transparent;
    transform: translateX(0.04rem);
}

.folha-auth-carousel-option--motion[aria-pressed="true"]::after {
    opacity: 0;
    transform: translateX(0.12rem) scale(0.7);
}

.folha-auth-panel {
    position: fixed;
    top: auto;
    bottom: 0;
    inset-inline-end: var(--folha-auth-panel-offset);
    z-index: 3;
    width: var(--folha-auth-panel-width);
    height: auto;
    max-height: var(--folha-auth-panel-max-height);
    min-height: 0;
    display: flex;
    align-items: stretch;
    justify-content: center;
    padding: 0;
    margin: 0;
    background: transparent;
    transform: none;
}

.folha-auth-card {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    height: auto;
    min-height: var(--folha-auth-card-min-height);
    max-height: var(--folha-auth-panel-max-height);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: clamp(1.65rem, 5svh, 3.35rem) clamp(1.55rem, 3vw, 2.15rem) clamp(1.35rem, 3vw, 2.15rem);
    font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    border: 1px solid rgb(238 241 245 / 0.96);
    border-radius: var(--folha-radius-panel) var(--folha-radius-panel) 0 0;
    background: #ffffff;
    box-shadow:
        0 24px 72px rgb(93 47 18 / 0.12),
        -18px 0 54px rgb(15 23 42 / 0.05);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.folha-auth-card,

.folha-auth-org-list {
    scrollbar-color: rgb(50 140 126 / 0.58) transparent;
    scrollbar-width: thin;
}

.folha-auth-card::-webkit-scrollbar,

.folha-auth-org-list::-webkit-scrollbar {
    width: 0.38rem;
    height: 0.38rem;
}

.folha-auth-card::-webkit-scrollbar-track,

.folha-auth-org-list::-webkit-scrollbar-track {
    background: transparent;
}

.folha-auth-card::-webkit-scrollbar-thumb,

.folha-auth-org-list::-webkit-scrollbar-thumb {
    min-height: 2.5rem;
    border: 0.1rem solid transparent;
    border-radius: 999px;
    background: rgb(50 140 126 / 0.54);
    background-clip: padding-box;
}

.folha-auth-card::-webkit-scrollbar-thumb:hover,

.folha-auth-org-list::-webkit-scrollbar-thumb:hover {
    background: rgb(95 211 95 / 0.7);
    background-clip: padding-box;
}

.folha-auth-card:has(.folha-auth-flow--mfa-config) {
    padding-block-start: clamp(1.35rem, 4.2svh, 2.65rem);
}

.folha-auth-card:has(.folha-auth-flow--mfa-config) .folha-auth-header {
    gap: 0.58rem;
    margin-bottom: 1rem;
}

.folha-auth-card.core-motion-fade-in {
    animation: folha-auth-card-rise 3000ms cubic-bezier(0.16, 1, 0.3, 1) 90ms both;
}

.folha-auth-card::before {
    content: none;
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: none;
    filter: none;
    opacity: 0;
    pointer-events: none;
}

.folha-auth-card::after {
    content: none;
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: none;
    box-shadow: none;
    pointer-events: none;
}

.folha-auth-card > * {
    position: relative;
    z-index: 2;
}

.folha-auth-card :where(input, button, select, textarea) {
    font-family: inherit;
}

.folha-auth-header {
    display: grid;
    justify-items: stretch;
    gap: 0.72rem;
    margin-bottom: 1.65rem;
    text-align: left;
}

.folha-brand-lockup {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    width: fit-content;
    margin-inline: auto;
    margin-bottom: 1.35rem;
    color: var(--folha-text-primary);
}

.folha-brand-mark {
    position: relative;
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    flex: 0 0 2.75rem;
    border: 0;
    border-radius: 0.7rem;
    background: var(--primary);
    color: #ffffff;
    box-shadow: var(--shadow-elegant);
    overflow: hidden;
    font-family: Inter, "Segoe UI", sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.02em;
}

.folha-brand-mark::before,
.folha-brand-mark::after {
    content: none;
    display: none;
}

.folha-brand-emblem,
.folha-brand-index {
    display: none;
}

.folha-brand-copy {
    display: inline-flex;
    align-items: baseline;
    gap: 0.35rem;
    min-width: 0;
    font-family: Inter, "Segoe UI", sans-serif;
    line-height: 1.1;
}

.folha-brand-copy strong,
.folha-brand-copy span {
    display: inline;
}

.folha-brand-prefix {
    color: var(--muted-foreground, #5C7673);
    font-size: 1.35rem;
    font-weight: 600;
    letter-spacing: -0.02em;
}

.folha-brand-name {
    color: var(--primary);
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: -0.02em;
}

.folha-auth-card .folha-auth-kicker {
    width: auto;
    margin: 0;
}

.folha-auth-header h1 {
    color: var(--folha-text-primary);
    font-size: 1.75rem;
    font-weight: 600;
    line-height: 1.18;
    letter-spacing: 0;
}

.folha-auth-subtitle,

.folha-auth-footnote {
    margin: 0;
    color: var(--folha-text-muted);
    font-size: 0.9375rem;
    line-height: 1.48;
}

@media (min-width: 64rem) {
    .folha-auth-header h1 {
        font-size: 1.875rem;
    }

    .folha-auth-subtitle,
    .folha-auth-footnote {
        font-size: 1rem;
    }
}

.folha-auth-content {
    display: grid;
    align-content: start;
    gap: 1rem;
    min-height: 0;
}

.folha-auth-flow {
    display: grid;
    gap: 0.9rem;
}

.folha-auth-flow--mfa-config {
    align-content: start;
}

.folha-auth-mfa-intro,

.folha-auth-methods,

.folha-auth-method-panel,

.folha-auth-totp-config,

.folha-auth-recovery-card {
    animation: folha-auth-step-in 220ms var(--core-ease-standard) both;
}

.folha-auth-flow--mfa-config[data-folha-mfa-state]:not([data-folha-mfa-state="escolha"]) {
    gap: 0.78rem;
}

.folha-auth-form {
    display: grid;
    gap: 1rem;
}

.folha-auth-form--standard {
    gap: 1.35rem;
}

.folha-auth-form--standard .core-field {
    gap: 0.5rem;
    margin-bottom: 0;
}

.folha-auth-form--standard .core-label,
.folha-auth-form--standard .form-label {
    color: var(--folha-text-primary);
    font-size: 0.92rem;
    font-weight: 600;
    line-height: 1.25;
}

.folha-auth-form--standard .core-required {
    display: none;
}

.folha-auth-form--standard .core-input,
.folha-auth-form--standard .form-control {
    min-height: 3.1rem;
    border-color: var(--border);
    border-radius: 0.55rem;
    background: var(--input);
    box-shadow: none;
    padding-inline: 0.95rem;
}

.folha-auth-form--standard .core-input::placeholder,
.folha-auth-form--standard .form-control::placeholder {
    color: #a1a5b7;
}

.folha-auth-form--standard .core-input:hover,
.folha-auth-form--standard .form-control:hover {
    border-color: #b5b5c3;
}

.folha-auth-form--standard .core-input:focus,
.folha-auth-form--standard .form-control:focus {
    border-color: var(--project-color-primary, var(--primary));
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb, 50, 140, 126), 0.18);
}

.folha-auth-field-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.85rem;
}

.folha-auth-password-control {
    position: relative;
}

.folha-auth-password-control .core-input,
.folha-auth-password-control .form-control {
    padding-right: 3.35rem;
}

.folha-auth-password-toggle {
    position: absolute;
    top: 50%;
    right: 0.5rem;
    width: 2.45rem;
    height: 2.45rem;
    display: inline-grid;
    place-items: center;
    border: 1px solid transparent;
    border-radius: 999px;
    color: rgb(79 58 47 / 0.68);
    background: transparent;
    cursor: pointer;
    transform: translateY(-50%);
    transition:
        color 160ms var(--core-ease-standard),
        background-color 160ms var(--core-ease-standard),
        border-color 160ms var(--core-ease-standard),
        box-shadow 160ms var(--core-ease-standard);
}

.folha-auth-password-toggle:hover,

.folha-auth-password-toggle:focus-visible {
    color: var(--folha-action-primary-hover);
    background: rgb(50 140 126 / 0.08);
    border-color: rgb(50 140 126 / 0.16);
    outline: none;
}

.folha-auth-password-toggle:focus-visible {
    box-shadow: 0 0 0 3px rgb(50 140 126 / 0.16);
}

.folha-auth-password-toggle[aria-pressed="true"] {
    color: var(--folha-action-primary-hover);
    background: rgb(50 140 126 / 0.12);
    border-color: rgb(50 140 126 / 0.2);
}

.folha-auth-password-icon {
    position: relative;
    display: block;
    width: 1.28rem;
    height: 1.28rem;
}

.folha-auth-password-icon-svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: 0;
    transform: scale(0.86);
    transition:
        opacity 160ms var(--core-ease-standard),
        transform 160ms var(--core-ease-standard);
}

.folha-auth-password-icon-svg circle {
    fill: currentColor;
    stroke: none;
}

.folha-auth-password-icon-svg--show {
    opacity: 1;
    transform: scale(1);
}

.folha-auth-password-toggle[aria-pressed="true"] .folha-auth-password-icon-svg--show {
    opacity: 0;
    transform: scale(0.86);
}

.folha-auth-password-toggle[aria-pressed="true"] .folha-auth-password-icon-svg--hide {
    opacity: 1;
    transform: scale(1);
}

.folha-auth-options {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-height: 1.5rem;
}

.folha-auth-remember {
    display: inline-flex;
    align-items: center;
    gap: 0.58rem;
    color: rgb(79 58 47 / 0.9);
    font-size: 0.9rem;
    font-weight: 600;
    line-height: 1.35;
    cursor: pointer;
}

.folha-auth-remember-input {
    width: 1rem;
    height: 1rem;
    margin: 0;
    flex: 0 0 auto;
    accent-color: var(--folha-action-primary);
}

.folha-auth-form--actions {
    gap: 0.75rem;
}

.folha-auth-submit {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    min-height: 3.05rem;
    margin-top: 0.25rem;
    border-color: transparent;
    border-radius: 0.72rem;
    background: var(--primary);
    color: #ffffff;
    font-weight: 600;
    text-shadow: none;
    box-shadow:
        inset 0 1px 0 rgb(255 255 255 / 0.28),
        0 14px 28px rgb(95 211 95 / 0.22),
        0 2px 7px rgb(83 31 0 / 0.12);
    transform: translateZ(0);
    transition: background-color var(--core-duration-quick) var(--core-ease-standard),
        border-color var(--core-duration-quick) var(--core-ease-standard),
        color var(--core-duration-quick) var(--core-ease-standard),
        box-shadow 180ms var(--core-ease-standard),
        transform 180ms var(--core-ease-standard),
        filter 180ms var(--core-ease-standard);
}

.folha-auth-submit::before {
    content: "";
    position: absolute;
    inset: -52% -28%;
    z-index: 0;
    background:
        linear-gradient(110deg,
            rgb(255 255 255 / 0) 24%,
            rgb(255 255 255 / 0.2) 45%,
            rgb(255 255 255 / 0.58) 50%,
            rgb(255 255 255 / 0.18) 56%,
            rgb(255 255 255 / 0) 76%);
    opacity: 0;
    transform: translateX(-64%) rotate(0.001deg);
    pointer-events: none;
}

.folha-auth-submit::after {
    content: "";
    position: absolute;
    inset: 1px;
    z-index: 0;
    border-radius: calc(0.72rem - 1px);
    box-shadow:
        inset 0 0 0 1px rgb(255 255 255 / 0.18),
        inset 0 -12px 24px rgb(128 45 0 / 0.12);
    pointer-events: none;
}

.folha-auth-submit-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.folha-auth-submit:hover,

.folha-auth-submit:focus-visible {
    background: var(--primary-deep);
    color: #ffffff;
    box-shadow:
        inset 0 1px 0 rgb(255 255 255 / 0.34),
        0 20px 34px rgb(95 211 95 / 0.3),
        0 4px 12px rgb(83 31 0 / 0.14);
    filter: saturate(1.05);
    transform: translateY(-2px);
}

.folha-auth-submit:hover::before,

.folha-auth-submit:focus-visible::before {
    animation: folha-auth-submit-shine 920ms var(--core-ease-standard) forwards;
}

.folha-auth-submit:active {
    box-shadow:
        inset 0 2px 8px rgb(91 31 0 / 0.18),
        0 8px 18px rgb(95 211 95 / 0.2);
    filter: saturate(0.98);
    transform: translateY(0);
}

.folha-auth-help-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 0.85rem;
}

.folha-auth-help-link {
    color: var(--folha-action-primary-hover);
    font-size: 0.86rem;
    font-weight: 800;
    text-decoration: none;
}

.folha-auth-help-link:hover,

.folha-auth-help-link:focus-visible {
    color: var(--folha-action-primary);
    text-decoration: underline;
    text-underline-offset: 0.18rem;
}

.core-visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

body.folha-auth-page [hidden] {
    display: none !important;
}

.folha-auth-methods {
    display: grid;
    gap: 0.75rem;
}

.folha-auth-org-picker {
    padding: 1rem 1.1rem;
    border: 1px solid var(--border);
    border-radius: 0.625rem;
    background: color-mix(in srgb, var(--accent) 42%, var(--card));
    box-shadow: 0 0.1rem 0.35rem 0.05rem rgb(18 51 48 / 0.05);
}

.folha-auth-org-filter {
    display: grid;
    gap: 0.45rem;
    margin-bottom: 0.85rem;
}

.folha-auth-org-filter .core-label,
.folha-auth-org-filter .form-label {
    margin-bottom: 0;
    color: var(--folha-text-primary);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.folha-auth-org-filter .core-input,
.folha-auth-org-filter .form-control,
.folha-auth-org-search {
    width: 100%;
    min-height: 2.75rem;
    padding: 0.65rem 0.85rem;
    border: 1px solid var(--border);
    border-radius: var(--folha-radius-control);
    color: var(--folha-text-primary);
    background: var(--maap-surface, var(--card));
    font-size: 0.88rem;
    line-height: 1.35;
    outline: none;
    box-shadow: none;
    transition:
        border-color var(--core-duration-quick) var(--core-ease-standard),
        box-shadow var(--core-duration-quick) var(--core-ease-standard),
        background-color var(--core-duration-quick) var(--core-ease-standard);
}

.folha-auth-org-filter .core-input:focus,
.folha-auth-org-filter .form-control:focus,
.folha-auth-org-search:focus {
    border-color: rgb(var(--bs-primary-rgb) / 0.55);
    background: var(--maap-surface, var(--card));
    box-shadow: 0 0 0 3px rgb(var(--bs-primary-rgb) / 0.14);
}

.folha-auth-org-summary {
    min-height: 1.15rem;
    margin: 0;
    color: var(--folha-text-muted);
    font-size: 0.76rem;
    font-weight: 600;
    line-height: 1.4;
}

.folha-auth-org-list {
    gap: 0.5rem;
    max-height: min(21rem, 38svh);
    padding-right: 0.15rem;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.folha-auth-org-form {
    margin: 0;
}

.folha-auth-org-option {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    width: 100%;
    min-height: 3.35rem;
    min-width: 0;
    padding: 0.7rem 0.85rem;
    border: 1px solid var(--border);
    border-radius: var(--folha-radius-control);
    color: var(--folha-text-primary);
    background: var(--maap-surface, var(--card));
    text-align: left;
    cursor: pointer;
    box-shadow: 0 0.1rem 0.25rem 0.02rem rgb(18 51 48 / 0.04);
    transition:
        border-color var(--core-duration-quick) var(--core-ease-standard),
        background-color var(--core-duration-quick) var(--core-ease-standard),
        box-shadow var(--core-duration-quick) var(--core-ease-standard),
        transform var(--core-duration-quick) var(--core-ease-standard);
}

.folha-auth-org-option-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
}

.folha-auth-org-option:hover,
.folha-auth-org-option:focus-visible {
    border-color: rgb(var(--bs-primary-rgb) / 0.42);
    background: var(--maap-surface, var(--card));
    box-shadow: 0 0.15rem 0.45rem 0.04rem rgb(var(--bs-primary-rgb) / 0.12);
    outline: none;
    transform: translateY(-1px);
}

.folha-auth-org-option strong {
    display: block;
    min-width: 0;
    overflow: hidden;
    color: var(--folha-text-primary);
    font-size: 0.86rem;
    font-weight: 700;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.folha-auth-org-option .folha-auth-org-meta {
    display: block;
    min-width: 0;
    overflow: hidden;
    color: var(--folha-text-muted);
    font-size: 0.74rem;
    font-weight: 600;
    line-height: 1.35;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.folha-auth-org-chevron {
    color: var(--folha-text-muted);
    font-size: 0.9rem;
    opacity: 0.55;
    transition:
        color var(--core-duration-quick) var(--core-ease-standard),
        opacity var(--core-duration-quick) var(--core-ease-standard),
        transform var(--core-duration-quick) var(--core-ease-standard);
}

.folha-auth-org-option:hover .folha-auth-org-chevron,
.folha-auth-org-option:focus-visible .folha-auth-org-chevron {
    color: var(--primary);
    opacity: 1;
    transform: translateX(1px);
}

.folha-auth-org-switch {
    min-width: 11rem;
    min-height: 2.65rem;
    padding-inline: 1.15rem;
    font-weight: 700;
}

[data-bs-theme="dark"] .folha-auth-org-picker {
    background: color-mix(in srgb, var(--accent) 55%, var(--card));
    box-shadow: 0 0.1rem 0.35rem 0.05rem rgb(0 0 0 / 0.28);
}

[data-bs-theme="dark"] .folha-auth-org-option {
    background: var(--maap-surface, var(--card));
    border-color: var(--border);
    box-shadow: 0 0.1rem 0.25rem 0.02rem rgb(0 0 0 / 0.22);
}

[data-bs-theme="dark"] .folha-auth-org-option:hover,
[data-bs-theme="dark"] .folha-auth-org-option:focus-visible {
    border-color: rgb(var(--bs-primary-rgb) / 0.5);
    box-shadow: 0 0.15rem 0.45rem 0.04rem rgb(var(--bs-primary-rgb) / 0.18);
}

.folha-auth-method-button {
    display: grid;
    gap: 0.25rem;
    width: 100%;
    min-height: 4.5rem;
    padding: 0.9rem 1rem;
    border: 1px solid rgb(50 140 126 / 0.2);
    border-radius: var(--folha-radius-control);
    color: var(--folha-text-primary);
    background: rgb(255 255 255 / 0.42);
    text-align: left;
    cursor: pointer;
    transition:
        border-color var(--core-duration-quick) var(--core-ease-standard),
        background-color var(--core-duration-quick) var(--core-ease-standard),
        box-shadow var(--core-duration-quick) var(--core-ease-standard);
}

.folha-auth-method-button:hover,

.folha-auth-method-button:focus-visible {
    border-color: rgb(95 211 95 / 0.42);
    background: rgb(255 255 255 / 0.68);
    box-shadow: 0 0 0 3px rgb(50 140 126 / 0.12);
    outline: none;
}

.folha-auth-method-button strong {
    font-size: 0.95rem;
}

.folha-auth-org-empty {
    margin-top: 0.35rem;
}

.folha-auth-method-button span,

.folha-auth-method-panel p {
    color: var(--folha-text-muted);
    line-height: 1.5;
}

.folha-auth-method-panel[hidden],

.folha-auth-totp-config[hidden] {
    display: none;
}

.folha-auth-method-panel {
    display: grid;
    gap: 0.85rem;
}

.folha-auth-method-panel h2 {
    margin: 0;
    color: var(--folha-text-primary);
    font-size: 1rem;
}

.folha-auth-method-panel p {
    margin: 0;
}

.folha-auth-totp-config {
    display: grid;
    gap: 0.75rem;
}

.folha-auth-secret-box {
    min-height: 2.75rem;
    padding: 0.75rem;
    border: 1px solid rgb(50 140 126 / 0.18);
    border-radius: var(--folha-radius-control);
    color: var(--folha-action-primary-hover);
    background: rgb(255 252 248 / 0.72);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 0.9rem;
    overflow-wrap: anywhere;
}

.folha-auth-secret-box--uri {
    color: var(--folha-text-muted);
    font-size: 0.78rem;
}

.folha-auth-recovery-card {
    display: grid;
    gap: 0.45rem;
    padding: 0.9rem 1rem;
    border: 1px solid var(--border);
    border-radius: var(--folha-radius-panel);
    background: color-mix(in srgb, var(--accent) 42%, var(--card));
    box-shadow: 0 0.1rem 0.35rem 0.05rem rgb(18 51 48 / 0.05);
}

.folha-auth-recovery-card[hidden] {
    display: none;
}

.folha-auth-recovery-card strong {
    color: var(--folha-text-primary);
    font-size: 0.95rem;
}

.folha-auth-recovery-card p {
    margin: 0;
    color: var(--folha-text-muted);
    line-height: 1.5;
}

.folha-auth-secondary-actions {
    display: flex;
    justify-content: center;
    margin-top: 0.75rem;
}

.folha-auth-footer-actions {
    display: grid;
    gap: 0.45rem;
    margin-top: 0.2rem;
}

.folha-auth-secondary-actions--quiet,

.folha-auth-secondary-actions--primary {
    margin-top: 0;
}

.folha-auth-secondary-actions--quiet {
    justify-content: center;
}

.folha-auth-secondary-actions--primary {
    justify-content: stretch;
}

.folha-auth-secondary-actions--primary .core-button {
    width: 100%;
}

.folha-auth-footnote {
    margin-top: 1rem;
    font-size: 0.875rem;
}


.rail-brand .folha-brand-lockup {
    width: 100%;
    min-width: 0;
    margin: 0;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.65rem;
    color: var(--text-on-nav, #fff);
    text-align: left;
}

.rail-brand .folha-brand-mark {
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 2.5rem;
    border: 0;
    border-radius: 0.65rem;
    background: var(--primary);
    color: #ffffff;
    box-shadow: none;
    font-size: 1.05rem;
}

.rail-brand .folha-brand-mark::before,
.rail-brand .folha-brand-mark::after {
    content: none;
    display: none;
}

.rail-brand .folha-brand-copy {
    display: inline-flex;
    align-items: baseline;
    gap: 0.3rem;
    min-width: 0;
    text-align: left;
}

.rail-brand .folha-brand-prefix {
    color: var(--text-on-nav-muted, #c4c4d4);
    font-size: 1.05rem;
    font-weight: 600;
}

.rail-brand .folha-brand-name {
    color: #328C7E;
    font-size: 1.05rem;
    font-weight: 700;
}

.folha-shell[data-rail-collapsed="true"] .rail-brand .folha-brand-lockup {
    justify-content: center;
}

.folha-shell[data-rail-collapsed="true"] .rail-brand .folha-brand-copy {
    display: none;
}

@media (max-width: 64rem) {
    .folha-auth-shell {
        --folha-auth-panel-width: clamp(20rem, 40vw, 24rem);
        --folha-auth-panel-offset: clamp(0.85rem, 2.2vw, 1.4rem);
        --folha-auth-safe-width: calc(100vw - var(--folha-auth-panel-width) - var(--folha-auth-panel-offset));
        --folha-auth-safe-center: calc(var(--folha-auth-safe-width) / 2);
        min-height: 100svh;
        padding: 0;
    }

    .folha-auth-panel {
        width: var(--folha-auth-panel-width);
        min-height: 0;
        justify-content: center;
        margin: 0;
    }

    .folha-auth-visual-content {
        left: var(--folha-auth-safe-center);
        top: 50%;
        width: min(58rem, calc(var(--folha-auth-safe-width) - 2rem));
        height: calc(100svh - 4rem);
        grid-template-columns: 1fr;
        grid-template-rows: auto minmax(15rem, 1fr) auto;
        grid-template-areas:
            "copy"
            "board"
            "signals";
        gap: clamp(0.8rem, 2vw, 1.15rem);
        padding: clamp(1.25rem, 3vw, 2.35rem);
        transform: translate3d(-50%, -48%, 0) scale(0.985);
    }

    .folha-auth-carousel:not(.is-ready) .folha-auth-slide:first-of-type,
    .folha-auth-slide.is-active {
        transform: translate3d(-50%, -50%, 0) scale(1);
    }

    .folha-auth-carousel-controls {
        left: var(--folha-auth-safe-center);
    }

    .folha-auth-window-title {
        width: 100%;
        max-width: 100%;
        margin-right: 0;
    }

    .folha-showcase-copy,
    .folha-auth-window-nav,
    .folha-showcase-lead,
    .folha-auth-signal-list {
        max-width: 100%;
    }

    .folha-auth-window-title span,
    .folha-auth-window-title strong {
        font-size: clamp(2.75rem, 5.1vw, 3.75rem);
    }

    .folha-auth-window-title strong {
        padding-left: clamp(1.25rem, 4vw, 3.5rem);
    }

    .folha-auth-signal-list {
        display: grid;
    }

    .folha-showcase-board {
        align-self: stretch;
        justify-self: stretch;
        height: min(28rem, 100%);
        max-width: none;
        min-height: 0;
    }

    .folha-showcase-record,
    .folha-showcase-note,
    .folha-showcase-compare,
    .folha-showcase-standard,
    .folha-showcase-receipt,
    .folha-showcase-timeline {
        padding: clamp(0.82rem, 1.8vw, 1.05rem);
    }

    .folha-showcase-record h2,
    .folha-showcase-standard strong,
    .folha-showcase-receipt strong {
        font-size: clamp(1.25rem, 2.5vw, 1.65rem);
    }

    .folha-showcase-checklist li {
        min-height: 4.8rem;
        padding: 0.72rem;
    }
}

@media (max-width: 48rem) {
    body.folha-auth-page {
        overflow-y: auto;
    }

    .folha-auth-shell {
        --folha-auth-panel-width: min(100%, 30rem);
        --folha-auth-panel-offset: 0px;
        --folha-auth-safe-width: 100vw;
        --folha-auth-safe-center: 50%;
        display: grid;
        grid-template-columns: 1fr;
        place-items: center;
        padding: clamp(0.85rem, 4vw, 1.25rem);
        overflow-x: hidden;
        overflow-y: auto;
    }

    .folha-auth-visual::before {
        opacity: 0;
    }

    .folha-auth-visual::after {
        background: none;
    }

    .folha-auth-visual-content,
    .folha-auth-carousel-controls {
        display: none;
    }

    .folha-auth-panel {
        position: relative;
        inset: auto;
        width: min(100%, 30rem);
        height: auto;
        max-height: none;
        min-height: auto;
        justify-content: center;
        padding: 0;
        margin-inline: auto;
        transform: none;
    }

    .folha-auth-card {
        width: 100%;
        height: auto;
        max-height: none;
        min-height: auto;
        display: block;
        overflow: visible;
        padding: clamp(1.2rem, 5vw, 1.5rem);
        border-radius: var(--folha-radius-panel);
    }

    .folha-auth-visual-content {
        left: 48%;
        top: 57%;
        width: clamp(36rem, 154vw, 46rem);
        align-content: start;
        padding: 1.25rem;
        transform: translate3d(-50%, -47%, 0) scale(0.985);
    }

    .folha-auth-carousel:not(.is-ready) .folha-auth-slide:first-of-type,
    .folha-auth-slide.is-active {
        transform: translate3d(-50%, -50%, 0) scale(1);
    }

    .folha-auth-carousel-controls {
        bottom: 0.75rem;
        max-width: calc(100vw - 1rem);
        gap: 0.38rem;
        padding: 0.22rem 0.38rem;
        overflow-x: visible;
    }

    .folha-auth-carousel-option {
        width: 0.68rem;
        height: 0.68rem;
        min-width: 0.68rem;
        min-height: 0.68rem;
    }

    .folha-auth-carousel-option:not(.folha-auth-carousel-option--motion)::before {
        width: 0.48rem;
        height: 0.48rem;
    }

    .folha-auth-carousel-option--motion {
        width: 1.32rem;
        height: 1.32rem;
        min-width: 1.32rem;
        min-height: 1.32rem;
    }

    .folha-auth-header {
        gap: 0.78rem;
        margin-bottom: 1.2rem;
    }

    .folha-auth-content {
        gap: 0.85rem;
    }

    .folha-auth-method-button {
        min-height: 4.2rem;
        padding: 0.82rem 0.9rem;
    }

    .folha-auth-footer-actions {
        gap: 0.32rem;
    }

    .folha-brand-lockup {
        --folha-brand-mark-size: clamp(2.8rem, 12.5vw, 3.7rem);
        --folha-brand-mark-radius: clamp(0.86rem, 3.1vw, 1.08rem);
        --folha-brand-ring-inset: clamp(0.38rem, 1.55vw, 0.5rem);
        --folha-brand-ring-width: clamp(0.27rem, 1.1vw, 0.36rem);
        --folha-brand-outline-inset: clamp(0.14rem, 0.55vw, 0.18rem);
        --folha-brand-outline-radius: clamp(0.76rem, 2.8vw, 0.96rem);
    }

    .folha-brand-copy strong {
        font-size: 1.125rem;
    }

    .folha-brand-copy span {
        font-size: 0.72rem;
    }

    .folha-auth-header h1 {
        font-size: 1.875rem;
    }

    .folha-headline h1 {
        font-size: 1.65rem;
    }

    .folha-auth-window-nav {
        width: 68%;
        gap: 1rem;
        font-size: 0.85rem;
        opacity: 0.86;
    }

    .folha-auth-window-nav strong {
        min-height: 2.5rem;
        padding: 0.55rem 0.85rem;
    }

    .folha-auth-window-title span,
    .folha-auth-window-title strong {
        font-size: clamp(1.65rem, 7.8vw, 2rem);
    }

    .folha-auth-window-title {
        width: min(17rem, 48%);
        margin-top: clamp(5.5rem, 17vh, 8rem);
        margin-right: clamp(5.85rem, 30vw, 7.5rem);
        gap: 0;
        line-height: 0.82;
    }

    .folha-auth-window-title strong {
        padding-left: clamp(0.85rem, 3vw, 1.5rem);
    }

    .folha-showcase-board {
        display: none;
        width: 72%;
        min-height: 15rem;
    }

    .folha-auth-signal-list {
        display: none;
        width: 72%;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    /* Shell responsivo mobile (≤ 48rem) */
    .folha-shell {
        grid-template-columns: 1fr;
        grid-template-rows: var(--shell-topbar-height) minmax(0, 1fr);
    }

    .folha-topbar {
        grid-column: 1;
        grid-row: 1;
    }

    .folha-main {
        grid-column: 1;
        grid-row: 2;
        padding: var(--space-md);
    }

    .folha-rail {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 40;
        height: 100vh;
        width: var(--shell-rail-width);
        transform: translateX(-100%);
        transition: transform var(--duration-base) cubic-bezier(0.2, 0.8, 0.2, 1);
    }

    .folha-shell[data-rail-open="true"] .folha-rail {
        transform: translateX(0);
    }

    .folha-shell[data-rail-open="true"] .rail-backdrop {
        display: block;
    }

    .rail-mobile-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 2.5rem;
        height: 2.5rem;
        border: 1px solid transparent;
        border-radius: var(--radius-sm);
        background: transparent;
        color: var(--text-secondary);
        cursor: pointer;
    }

    .topbar-search {
        width: clamp(10rem, 40vw, 18rem);
    }
}

@media (max-width: 22.5rem) {
    .folha-auth-visual-content {
        width: clamp(42rem, 190vw, 48rem);
    }

    .folha-auth-window-title {
        width: min(12rem, 40%);
        margin-top: clamp(11.75rem, 33vh, 15rem);
        margin-right: clamp(9.5rem, 54vw, 12rem);
    }

    .folha-auth-window-title span,
    .folha-auth-window-title strong {
        font-size: clamp(1.25rem, 6vw, 1.5rem);
    }
}

@media (max-height: 46rem) and (min-width: 64.0625rem) {
    .folha-auth-visual-content {
        top: 50%;
        width: calc(var(--folha-auth-safe-width) - clamp(2rem, 4vw, 4rem));
        height: calc(100svh - 3rem);
        gap: 0.75rem;
        padding: clamp(1.5rem, 3vw, 2.5rem);
    }

    .folha-auth-window-nav {
        width: 100%;
    }

    .folha-auth-window-title {
        width: 100%;
    }

    .folha-auth-window-title span,
    .folha-auth-window-title strong {
        font-size: clamp(2.65rem, 4.5vw, 4rem);
    }

    .folha-showcase-board {
        width: 100%;
        height: 100%;
        max-width: none;
        min-height: 0;
        gap: 0.6rem;
    }

    .folha-showcase-record,
    .folha-showcase-note,
    .folha-showcase-compare,
    .folha-showcase-standard,
    .folha-showcase-receipt,
    .folha-showcase-timeline {
        padding: 0.72rem;
    }

    .folha-showcase-record h2,
    .folha-showcase-standard strong,
    .folha-showcase-receipt strong {
        font-size: clamp(1.12rem, 2vw, 1.55rem);
    }

    .folha-showcase-facts,
    .folha-showcase-checklist {
        gap: 0.42rem;
    }

    .folha-showcase-checklist li {
        min-height: 4.2rem;
        padding: 0.58rem;
    }

    .folha-showcase-timeline {
        gap: 0.34rem;
    }

    .folha-showcase-timeline li {
        padding-block: 0.42rem;
    }

    .folha-auth-signal-list {
        display: grid;
    }
}

body.folha-auth-page .folha-auth-backdrop {
    transform: scale(1.015);
}

body.folha-auth-page .folha-auth-backdrop::before {
    background: none;
    background-image: none;
    background-size: auto;
    mask-image: none;
}

body.folha-auth-page .folha-auth-backdrop::after {
    background: none;
    mix-blend-mode: normal;
}

body.folha-auth-page .folha-auth-backdrop--folha {
    background: #0f1f1e;
}

body.folha-auth-page .folha-auth-backdrop--padronizacao {
    background: #0f1f1e;
}

body.folha-auth-page .folha-auth-backdrop--auditoria {
    background: #0f1f1e;
}

body.folha-auth-page .folha-auth-visual-content {
    left: var(--folha-auth-safe-center);
    top: 50%;
    width: min(72rem, calc(var(--folha-auth-safe-width) - clamp(2rem, 5vw, 5rem)));
    height: min(48rem, calc(100svh - clamp(4rem, 8vh, 6rem)));
    display: grid;
    grid-template-columns: minmax(17.5rem, 0.38fr) minmax(28rem, 0.62fr);
    grid-template-rows: minmax(0, 1fr) auto;
    grid-template-areas:
        "copy image"
        "proof image";
    align-items: center;
    gap: clamp(1.4rem, 3.2vw, 3.8rem);
    padding: clamp(1.1rem, 2.4vw, 2.4rem);
    color: #345034;
    opacity: 0;
    transform: translate3d(-50%, -48%, 0) scale(0.982);
    filter: saturate(0.92) blur(1px);
}

body.folha-auth-page .folha-auth-carousel:not(.is-ready) .folha-auth-slide:first-of-type,

body.folha-auth-page .folha-auth-slide.is-active {
    opacity: 1;
    transform: translate3d(-50%, -50%, 0) scale(1);
    filter: saturate(1) blur(0);
}

.folha-showcase-narrative {
    grid-area: copy;
    position: relative;
    isolation: isolate;
    display: grid;
    align-content: center;
    gap: clamp(0.75rem, 1.5vw, 1.15rem);
    min-width: 0;
    max-width: 26rem;
    color: #f3faf3;
    padding: clamp(0.95rem, 1.8vw, 1.35rem) clamp(1rem, 2vw, 1.55rem);
    text-shadow:
        0 1px 1px rgb(9 21 28 / 0.6),
        0 0.26rem 1.15rem rgb(9 21 28 / 0.42);
}

.folha-showcase-narrative::before {
    content: "";
    position: absolute;
    inset: clamp(-0.55rem, -1vw, -0.35rem) clamp(-1.8rem, -2.8vw, -1rem) clamp(-0.65rem, -1vw, -0.45rem) clamp(-1.2rem, -2vw, -0.75rem);
    z-index: -1;
    border-radius: 7px;
    background:
        radial-gradient(ellipse at left center, rgb(9 21 28 / 0.62), rgb(9 21 28 / 0.34) 42%, transparent 74%),
        linear-gradient(90deg, rgb(9 21 28 / 0.52), rgb(9 21 28 / 0.2) 54%, transparent 100%);
    filter: blur(0.5px);
    pointer-events: none;
}

.folha-showcase-eyebrow {
    width: fit-content;
    min-height: 1.7rem;
    display: inline-flex;
    align-items: center;
    padding: 0.34rem 0.62rem;
    border: 1px solid rgb(255 255 255 / 0.2);
    border-radius: var(--folha-radius-control);
    background: rgb(9 21 28 / 0.42);
    color: #7EEBC8;
    font-size: 0.78rem;
    font-weight: 900;
    line-height: 1.2;
    text-transform: uppercase;
}

.folha-showcase-title,

.folha-showcase-narrative p,

.folha-showcase-proof-list,

.folha-showcase-proof-list dd {
    margin: 0;
}

.folha-showcase-title {
    display: grid;
    gap: 0.12rem;
    color: #f3faf3;
    font-size: clamp(2.3rem, 3.65vw, 4.35rem);
    font-weight: 900;
    line-height: 0.98;
    text-shadow:
        0 1px 1px rgb(9 21 28 / 0.7),
        0 0.32rem 1.3rem rgb(9 21 28 / 0.48);
}

.folha-showcase-title span,

.folha-showcase-title strong {
    display: block;
}

.folha-showcase-title strong {
    color: #7EEBC8;
}

.folha-showcase-narrative p {
    color: rgb(255 248 241 / 0.9);
    font-size: clamp(0.96rem, 1.15vw, 1.1rem);
    font-weight: 700;
    line-height: 1.52;
    text-shadow:
        0 1px 1px rgb(9 21 28 / 0.58),
        0 0.2rem 0.95rem rgb(9 21 28 / 0.38);
}

.folha-showcase-proof-list {
    grid-area: proof;
    align-self: end;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.55rem;
    width: 100%;
    max-width: 27rem;
}

.folha-showcase-proof-list div {
    min-width: 0;
    padding: 0.68rem 0.72rem;
    border: 1px solid rgb(255 255 255 / 0.72);
    border-radius: var(--folha-radius-control);
    background: rgb(255 255 255 / 0.82);
    box-shadow:
        inset 0 1px 0 rgb(255 255 255 / 0.78),
        0 0.35rem 1.1rem rgb(9 21 28 / 0.1);
    backdrop-filter: blur(16px) saturate(118%);
    -webkit-backdrop-filter: blur(16px) saturate(118%);
}

.folha-showcase-proof-list dt,

.folha-showcase-proof-list dd {
    margin: 0;
}

.folha-showcase-proof-list dt {
    color: #123330;
    font-size: 0.78rem;
    font-weight: 900;
    line-height: 1.2;
}

.folha-showcase-proof-list dd {
    margin-top: 0.18rem;
    color: rgb(47 64 57 / 0.82);
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.28;
}

@media (max-width: 64rem) {
    body.folha-auth-page .folha-auth-visual-content {
        width: min(58rem, calc(var(--folha-auth-safe-width) - 2rem));
        height: calc(100svh - 4rem);
        grid-template-columns: 1fr;
        grid-template-rows: minmax(16rem, 1fr) auto auto;
        grid-template-areas:
            "image"
            "copy"
            "proof";
        align-content: center;
        gap: clamp(0.85rem, 2vw, 1.2rem);
        padding: clamp(1rem, 3vw, 2rem);
    }

    .folha-showcase-narrative,
    .folha-showcase-proof-list {
        max-width: 100%;
    }

    .folha-showcase-title {
        font-size: clamp(2rem, 4.4vw, 3.25rem);
    }
}

@media (max-width: 48rem) {
    body.folha-auth-page .folha-auth-visual-content,
    body.folha-auth-page .folha-auth-carousel-controls {
        display: none;
    }
}

@media (max-height: 46rem) and (min-width: 64.0625rem) {
    body.folha-auth-page .folha-auth-visual-content {
        width: calc(var(--folha-auth-safe-width) - clamp(2rem, 4vw, 4rem));
        height: calc(100svh - 3rem);
        grid-template-rows: minmax(0, 1fr);
        grid-template-areas: "copy image";
        gap: clamp(1rem, 2.2vw, 2.5rem);
        padding: clamp(1rem, 2vw, 1.5rem);
    }

    .folha-showcase-proof-list {
        display: none;
    }

    .folha-showcase-title {
        font-size: clamp(2rem, 3.4vw, 3.4rem);
    }

    .folha-showcase-narrative p {
        font-size: clamp(0.9rem, 1vw, 1rem);
    }
}

body.folha-auth-page .folha-auth-backdrop-image {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
    width: 100%;
    min-width: 100vw;
    height: 100%;
    min-height: 100svh;
    object-fit: cover;
    object-position: center center;
    transform: none;
    transition: opacity 900ms var(--core-ease-standard);
}

body.folha-auth-page .folha-auth-backdrop.is-active .folha-auth-backdrop-image,

body.folha-auth-page .folha-auth-carousel:not(.is-ready) .folha-auth-backdrop--folha .folha-auth-backdrop-image {
    transform: none;
}

body.folha-auth-page .folha-auth-backdrop::before {
    z-index: 1;
    background: none;
    background-image: none;
    background-size: auto;
    mask-image: none;
}

body.folha-auth-page .folha-auth-backdrop::after {
    z-index: 2;
    background: none;
    mix-blend-mode: normal;
}

body.folha-auth-page .folha-auth-backdrop--folha .folha-auth-backdrop-image {
    object-position: center center;
}

body.folha-auth-page .folha-auth-backdrop--padronizacao .folha-auth-backdrop-image {
    object-position: center center;
}

body.folha-auth-page .folha-auth-backdrop--auditoria .folha-auth-backdrop-image {
    object-position: center center;
}

body.folha-auth-page .folha-auth-visual-content {
    left: clamp(3.25rem, 7vw, 7rem);
    top: auto;
    bottom: clamp(5.4rem, 10vh, 7.4rem);
    width: min(29.5rem, calc(var(--folha-auth-safe-width) - clamp(2rem, 5vw, 5rem)));
    height: auto;
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 1fr) auto;
    grid-template-areas:
        "copy"
        "proof";
    align-content: end;
    align-items: start;
    justify-items: start;
    padding: 0;
    color: #123330;
    transform: translate3d(0, 0.85rem, 0) scale(0.982);
}

body.folha-auth-page .folha-auth-carousel:not(.is-ready) .folha-auth-slide:first-of-type,

body.folha-auth-page .folha-auth-slide.is-active {
    transform: translate3d(0, 0, 0) scale(1);
}

.folha-showcase-narrative {
    position: relative;
    isolation: isolate;
    width: 100%;
    max-width: 35.5rem;
    display: grid;
    gap: 0.75rem;
    color: #ffffff;
    font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    padding: clamp(0.35rem, 1vw, 0.6rem) 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    text-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.folha-showcase-narrative::before {
    content: none;
    position: absolute;
    inset: clamp(-1.2rem, -2vw, -0.8rem) clamp(-7rem, -9vw, -3rem) clamp(-1.4rem, -2vw, -0.9rem) clamp(-2.2rem, -3vw, -1.2rem);
    z-index: -1;
    border-radius: 0;
    background: none;
    pointer-events: none;
}

.folha-showcase-eyebrow {
    width: fit-content;
    min-height: 1.55rem;
    display: inline-flex;
    align-items: center;
    padding: 0.32rem 0.72rem;
    border: 1px solid rgb(255 255 255 / 0.22);
    border-radius: 999px;
    background: rgb(255 255 255 / 0.16);
    color: #ffffff;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1.05;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.16);
    backdrop-filter: blur(10px) saturate(130%);
    -webkit-backdrop-filter: blur(10px) saturate(130%);
}

.folha-showcase-title {
    max-width: 35.5rem;
    color: #ffffff;
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.25;
    text-shadow: none;
    text-wrap: balance;
}

.folha-showcase-title strong {
    color: #ffffff;
    font-weight: inherit;
}

.folha-showcase-narrative p {
    max-width: 34rem;
    color: rgb(255 255 255 / 0.9);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.45;
    text-shadow: none;
}

@media (min-width: 64rem) {
    .folha-showcase-title {
        font-size: 2.25rem;
    }

    .folha-showcase-narrative p {
        font-size: 1.125rem;
    }
}

.folha-showcase-proof-list {
    display: none;
}

.folha-showcase-proof-list div {
    padding: 0.62rem 0.66rem;
    border-color: rgb(255 255 255 / 0.78);
    background: rgb(255 255 255 / 0.9);
    box-shadow:
        inset 0 1px 0 rgb(255 255 255 / 0.84),
        0 0.45rem 1.2rem rgb(9 21 28 / 0.12);
    backdrop-filter: blur(14px) saturate(112%);
    -webkit-backdrop-filter: blur(14px) saturate(112%);
}

.folha-showcase-proof-list dt {
    color: #123330;
    font-size: 0.7rem;
    font-weight: 900;
    line-height: 1.1;
}

.folha-showcase-proof-list dd {
    margin-top: 0.16rem;
    color: rgb(47 64 57 / 0.82);
    font-size: 0.68rem;
    font-weight: 700;
    line-height: 1.22;
}

body.folha-auth-page .folha-auth-carousel-controls {
    gap: 0.42rem;
    padding: 0.24rem 0.42rem;
}

body.folha-auth-page .folha-auth-carousel-option:not(.folha-auth-carousel-option--motion) {
    width: 0.72rem;
    height: 0.72rem;
    min-width: 0.72rem;
    min-height: 0.72rem;
}

body.folha-auth-page .folha-auth-carousel-option:not(.folha-auth-carousel-option--motion)::before {
    width: 0.52rem;
    height: 0.52rem;
    border-radius: 999px;
    background: rgb(255 255 255 / 0.58);
    box-shadow: 0 0 0 1px rgb(255 255 255 / 0.26), 0 0.16rem 0.62rem rgb(9 21 28 / 0.16);
}

body.folha-auth-page .folha-auth-carousel-option:not(.folha-auth-carousel-option--motion):hover::before,

body.folha-auth-page .folha-auth-carousel-option:not(.folha-auth-carousel-option--motion):focus-visible::before {
    background: rgb(255 255 255 / 0.86);
}

body.folha-auth-page .folha-auth-carousel-option:not(.folha-auth-carousel-option--motion).is-active::before {
    background: rgb(255 255 255 / 0.98);
    box-shadow: 0 0 0 0.22rem rgb(255 255 255 / 0.22), 0 0.2rem 0.9rem rgb(9 21 28 / 0.22);
    transform: scale(1.22);
}

@media (max-width: 64rem) {
    body.folha-auth-page .folha-auth-backdrop-image {
        width: 100%;
        min-width: 100vw;
        object-position: 50% center;
    }

    body.folha-auth-page .folha-auth-visual-content {
        left: clamp(1.25rem, 3vw, 2rem);
        top: auto;
        bottom: clamp(4.5rem, 8vh, 6rem);
        width: min(30rem, calc(var(--folha-auth-safe-width) - 1.6rem));
        height: auto;
        grid-template-columns: 1fr;
        grid-template-rows: minmax(0, 1fr) auto;
        grid-template-areas:
            "copy"
            "proof";
        align-content: end;
        padding: 0;
    }

    .folha-showcase-title {
        font-size: 1.875rem;
    }

    .folha-showcase-narrative p {
        font-size: 1rem;
    }
}

@media (max-height: 46rem) and (min-width: 64.0625rem) {
    body.folha-auth-page .folha-auth-visual-content {
        left: clamp(2rem, 5vw, 4rem);
        top: auto;
        bottom: clamp(2rem, 5vh, 3.4rem);
        width: min(32rem, calc(var(--folha-auth-safe-width) - clamp(2rem, 4vw, 4rem)));
        height: auto;
        grid-template-areas:
            "copy"
            "proof";
        gap: 0.7rem;
    }

    .folha-showcase-proof-list {
        display: grid;
    }
}

@media (prefers-reduced-motion: reduce) {
    .folha-auth-card.core-motion-fade-in,
    .folha-auth-visual-content,
    .folha-auth-carousel-option,
    .folha-auth-submit,
    .folha-auth-submit::before,
    body.folha-auth-page .folha-auth-backdrop-image {
        animation: none;
        transition: none;
    }

    .folha-auth-card.core-motion-fade-in {
        opacity: 1;
        transform: none;
    }

    .folha-auth-submit:hover,
    .folha-auth-submit:focus-visible,
    .folha-auth-submit:active {
        transform: none;
    }

    .folha-auth-submit:hover::before,
    .folha-auth-submit:focus-visible::before {
        animation: none;
        opacity: 0;
    }
}

body.folha-auth-page .folha-auth-visual::before,

body.folha-auth-page .folha-auth-visual::after,

body.folha-auth-page .folha-auth-backdrop::before,

body.folha-auth-page .folha-auth-backdrop::after {
    background: none;
    background-image: none;
    mask-image: none;
    mix-blend-mode: normal;
}

body.folha-auth-page .folha-auth-backdrop::after {
    inset: auto 0 0;
    height: 75%;
    z-index: 2;
    background:
        radial-gradient(ellipse at 24% 100%, rgb(0 0 0 / 0.32), rgb(0 0 0 / 0.22) 34%, rgb(0 0 0 / 0) 76%),
        linear-gradient(
            180deg,
            rgb(0 0 0 / 0) 0%,
            rgb(0 0 0 / 0.08) 32%,
            rgb(0 0 0 / 0.22) 52%,
            rgb(0 0 0 / 0.5) 67%,
            rgb(0 0 0 / 0.68) 100%
        );
    background-image:
        radial-gradient(ellipse at 24% 100%, rgb(0 0 0 / 0.32), rgb(0 0 0 / 0.22) 34%, rgb(0 0 0 / 0) 76%),
        linear-gradient(
            180deg,
            rgb(0 0 0 / 0) 0%,
            rgb(0 0 0 / 0.08) 32%,
            rgb(0 0 0 / 0.22) 52%,
            rgb(0 0 0 / 0.5) 67%,
            rgb(0 0 0 / 0.68) 100%
        );
    mix-blend-mode: normal;
}

body.folha-auth-page .folha-auth-backdrop--folha,

body.folha-auth-page .folha-auth-backdrop--padronizacao,

body.folha-auth-page .folha-auth-backdrop--auditoria {
    background: #0f1f1e;
    background-image: none;
}

body.folha-auth-page .folha-auth-backdrop,

body.folha-auth-page .folha-auth-backdrop.is-active,

body.folha-auth-page .folha-auth-backdrop-image,

body.folha-auth-page .folha-auth-backdrop.is-active .folha-auth-backdrop-image,

body.folha-auth-page .folha-auth-carousel:not(.is-ready) .folha-auth-backdrop--folha .folha-auth-backdrop-image {
    transform: none;
}

body.folha-auth-page .folha-auth-visual-content,

body.folha-auth-page .folha-auth-carousel:not(.is-ready) .folha-auth-slide:first-of-type,

body.folha-auth-page .folha-auth-slide.is-active {
    top: auto;
    bottom: clamp(5.4rem, 10vh, 7.4rem);
    transform: none;
}

body.folha-auth-page .folha-auth-slide {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    z-index: 1;
}

body.folha-auth-page .folha-auth-carousel:not(.is-ready) .folha-auth-slide:first-of-type,

body.folha-auth-page .folha-auth-slide.is-active {
    visibility: visible;
    opacity: 1;
    z-index: 3;
}

body.folha-auth-page .folha-showcase-proof-list {
    display: none;
}

@media (max-height: 46rem) and (min-width: 64.0625rem) {
    body.folha-auth-page .folha-auth-visual-content,
    body.folha-auth-page .folha-auth-carousel:not(.is-ready) .folha-auth-slide:first-of-type,
    body.folha-auth-page .folha-auth-slide.is-active {
        top: auto;
        bottom: clamp(2rem, 5vh, 3.4rem);
        transform: none;
    }
}

@media (max-height: 42rem) {
    body.folha-auth-page {
        overflow-y: auto;
    }

    body.folha-auth-page .folha-auth-shell {
        min-height: 100svh;
        height: auto;
        overflow-x: hidden;
        overflow-y: auto;
    }

    body.folha-auth-page .folha-auth-panel {
        height: auto;
        max-height: calc(100svh - 0.75rem);
    }

    body.folha-auth-page .folha-auth-card {
        max-height: calc(100svh - 0.75rem);
        overflow-y: auto;
        overscroll-behavior: contain;
        scrollbar-gutter: stable;
        padding: clamp(1rem, 3.2vh, 1.55rem) clamp(1.15rem, 2.4vw, 1.65rem) clamp(1rem, 3vh, 1.35rem);
    }

    body.folha-auth-page .folha-auth-header {
        gap: 0.48rem;
        margin-bottom: 1rem;
    }

    body.folha-auth-page .folha-brand-lockup {
        --folha-brand-mark-size: clamp(2.45rem, 8svh, 3.1rem);
        --folha-brand-mark-radius: clamp(0.74rem, 2.3svh, 0.92rem);
        --folha-brand-ring-inset: clamp(0.32rem, 1.08svh, 0.42rem);
        --folha-brand-ring-width: clamp(0.23rem, 0.78svh, 0.3rem);
        --folha-brand-outline-inset: clamp(0.12rem, 0.38svh, 0.16rem);
        --folha-brand-outline-radius: clamp(0.66rem, 2.05svh, 0.82rem);
        gap: 0.36rem;
        margin-bottom: clamp(0.34rem, 1.1svh, 0.58rem);
    }

    body.folha-auth-page .folha-brand-copy strong {
        font-size: 1rem;
    }

    body.folha-auth-page .folha-auth-header h1 {
        font-size: 1.5rem;
        line-height: 1.18;
    }

    body.folha-auth-page .folha-auth-subtitle,
    body.folha-auth-page .folha-auth-footnote {
        font-size: 0.875rem;
        line-height: 1.42;
    }

    body.folha-auth-page .folha-auth-form--standard {
        gap: 0.78rem;
    }

    body.folha-auth-page .folha-auth-form--standard .core-field {
        gap: 0.34rem;
    }

    body.folha-auth-page .folha-auth-form--standard .core-input {
        min-height: 2.6rem;
    }

    body.folha-auth-page .folha-auth-submit {
        min-height: 2.72rem;
        margin-top: 0.08rem;
    }
}

@media (max-width: 64rem) and (max-height: 34rem) {
    body.folha-auth-page .folha-auth-shell {
        --folha-auth-panel-width: min(100%, 28rem);
        --folha-auth-panel-offset: 0px;
        --folha-auth-safe-width: 100vw;
        --folha-auth-safe-center: 50%;
        display: grid;
        grid-template-columns: 1fr;
        place-items: center;
        padding: clamp(0.5rem, 2vh, 0.85rem) clamp(0.75rem, 3vw, 1rem);
    }

    body.folha-auth-page .folha-auth-visual-content,
    body.folha-auth-page .folha-auth-carousel-controls {
        display: none;
    }

    body.folha-auth-page .folha-auth-panel {
        position: relative;
        inset: auto;
        width: var(--folha-auth-panel-width);
        max-height: none;
        margin-inline: auto;
    }

    body.folha-auth-page .folha-auth-card {
        width: 100%;
        height: auto;
        max-height: none;
        border-radius: var(--folha-radius-panel);
    }
}

/* -------------------------------------------------------------------------- */
/* Ponte local: formulário/ações sem plugins.bundle / style.bundle (Metronic). */
/* -------------------------------------------------------------------------- */

body.folha-auth-page {
    margin: 0;
    font-family: Inter, "Segoe UI", sans-serif;
    color: var(--folha-text-primary, var(--foreground));
    background: #FFFFFF;
}

body.folha-auth-page *,
body.folha-auth-page *::before,
body.folha-auth-page *::after {
    box-sizing: border-box;
}


body.folha-auth-page .folha-brand-lockup {
    margin-bottom: 1.5rem;
}

body.folha-auth-page .folha-brand-mark {
    width: 2.75rem;
    height: 2.75rem;
    flex-basis: 2.75rem;
}

body.folha-auth-page .folha-auth-header {
    gap: 0.45rem;
    margin-bottom: 1.75rem;
    text-align: left;
}

body.folha-auth-page .folha-auth-header h1 {
    margin: 0;
    font-size: 1.7rem;
    font-weight: 700;
    letter-spacing: -0.02em;
}

body.folha-auth-page .folha-auth-subtitle {
    margin: 0.15rem 0 0;
}

body.folha-auth-page .fv-row {
    display: grid;
    gap: 0.4rem;
}

body.folha-auth-page .d-flex {
    display: flex;
}

body.folha-auth-page .flex-column {
    flex-direction: column;
}

body.folha-auth-page .align-items-center {
    align-items: center;
}

body.folha-auth-page .justify-content-between {
    justify-content: space-between;
}

body.folha-auth-page .mb-0 {
    margin-bottom: 0;
}

body.folha-auth-page .mb-2 {
    margin-bottom: 0.5rem;
}

body.folha-auth-page .w-100 {
    width: 100%;
}

body.folha-auth-page .fw-semibold {
    font-weight: 600;
}

body.folha-auth-page .fs-7 {
    font-size: 0.86rem;
}

body.folha-auth-page .form-label {
    display: inline-block;
    margin: 0;
}

body.folha-auth-page .form-control {
    display: block;
    width: 100%;
    padding: 0.78rem 0.95rem;
    border: 1px solid var(--border);
    border-radius: 0.55rem;
    background: var(--input);
    color: inherit;
    font: inherit;
    line-height: 1.4;
    appearance: none;
    outline: none;
    transition:
        border-color 160ms var(--core-ease-standard),
        box-shadow 160ms var(--core-ease-standard),
        background-color 160ms var(--core-ease-standard);
}

body.folha-auth-page .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: 2.75rem;
    padding: 0.7rem 1.1rem;
    border: 1px solid transparent;
    border-radius: 0.72rem;
    background: transparent;
    color: inherit;
    font: inherit;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 160ms var(--core-ease-standard),
        border-color 160ms var(--core-ease-standard),
        color 160ms var(--core-ease-standard),
        box-shadow 160ms var(--core-ease-standard),
        transform 160ms var(--core-ease-standard);
}

body.folha-auth-page .btn:disabled {
    opacity: 0.65;
    cursor: not-allowed;
}

body.folha-auth-page .btn-lg {
    min-height: 3.05rem;
    padding: 0.85rem 1.2rem;
}

body.folha-auth-page .btn-primary {
    border-color: transparent;
    border-radius: 0.72rem;
    background: var(--primary);
    color: #ffffff;
    text-shadow: none;
    box-shadow: none;
}

body.folha-auth-page .btn-primary:hover,
body.folha-auth-page .btn-primary:focus-visible {
    background: var(--primary-deep);
    border-color: var(--primary-deep);
    color: #ffffff;
    outline: none;
    transform: none;
    filter: none;
    box-shadow: var(--shadow-elegant);
}

body.folha-auth-page .btn-light {
    border-color: var(--primary);
    background: var(--card);
    color: var(--primary-deep);
    box-shadow: none;
}

body.folha-auth-page .btn-light:hover,
body.folha-auth-page .btn-light:focus-visible {
    border-color: var(--primary-deep);
    background: var(--accent);
    color: var(--primary-deep);
    outline: none;
}


body.folha-auth-page .folha-auth-forgot {
    justify-self: start;
    margin-top: 0.15rem;
}

body.folha-auth-page .link-primary {
    color: var(--primary-deep);
    text-decoration: none;
}

body.folha-auth-page .link-primary:hover,
body.folha-auth-page .link-primary:focus-visible {
    color: var(--folha-action-primary, var(--primary));
    text-decoration: underline;
    text-underline-offset: 0.18rem;
}

body.folha-auth-page .alert {
    display: grid;
    gap: 0.25rem;
    margin: 0 0 1rem;
    padding: 0.85rem 0.95rem;
    border: 1px solid transparent;
    border-radius: 0.72rem;
    font-size: 0.92rem;
    line-height: 1.4;
}

body.folha-auth-page .alert-danger {
    border-color: rgb(199 53 34 / 0.22);
    background: #eaf7ea;
    color: #274b27;
}

body.folha-auth-page .alert-primary {
    border-color: rgb(50 140 126 / 0.22);
    background: #DDF3EE;
    color: #2b4a2b;
}

body.folha-auth-page .alert-warning {
    border-color: rgb(166 111 0 / 0.22);
    background: #e8f6e8;
    color: #2c6b2c;
}

body.folha-auth-page .alert-info {
    border-color: rgb(47 111 187 / 0.22);
    background: #eef6ff;
    color: #24558f;
}

body.folha-auth-page .alert-success {
    border-color: rgb(22 131 79 / 0.22);
    background: #e5f7ed;
    color: #0f5c38;
}
