@import '_content/DOKGenius.Framework.Blazor.UI/DOKGenius.Framework.Blazor.UI.99y92cxr72.bundle.scp.css';

/* /Components/Layout/PlaygroundLayout.razor.rz.scp.css */
/* DOK-290 — the shell top bar (.dok-app-header*) is styled globally in
   wwwroot/css/dok-shell.css: those classes sit on MudBlazor component roots,
   which never receive the scoped-CSS attribute, so rules here would not apply.
   This file keeps only plain-HTML elements owned by this layout. */

.dok-areas-bar[b-1zqaw1kjpv] {
    position: fixed;
    top: 72px;
    left: 0;
    right: 0;
    z-index: 1100;
    height: 48px;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0 28px;
    background: var(--mud-palette-surface);
    border-bottom: 1px solid var(--dok-border-subtle);
}

.dok-has-areas-bar[b-1zqaw1kjpv] {
    padding-top: 120px !important;
}

.dok-area-link[b-1zqaw1kjpv] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 14px;
    border: none;
    background: transparent;
    border-radius: 8px;
    color: var(--mud-palette-text-secondary);
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
}

.dok-area-link:hover[b-1zqaw1kjpv] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
    color: var(--mud-palette-primary);
}

.dok-area-link.active[b-1zqaw1kjpv] {
    color: var(--mud-palette-primary);
    background: rgba(var(--mud-palette-primary-rgb), 0.10);
}

.dok-mobile-areas[b-1zqaw1kjpv] {
    display: none;
}

@media (max-width: 720px) {
    .dok-areas-bar[b-1zqaw1kjpv] {
        display: none;
    }

    .dok-has-areas-bar[b-1zqaw1kjpv] {
        padding-top: 80px !important;
    }

    .dok-mobile-areas[b-1zqaw1kjpv] {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1200;
        display: flex;
        justify-content: space-around;
        align-items: center;
        /* DOK-364 — single source of truth in dok-shell.css; the cadastro footers clear it. */
        height: var(--dok-mobile-areas-height);
        padding: 0 8px;
        background: var(--mud-palette-surface);
        border-top: 1px solid var(--dok-border-subtle);
    }


    .dok-mobile-areas .dok-area-link[b-1zqaw1kjpv] {
        flex-direction: column;
        gap: 2px;
        height: auto;
        padding: 4px 10px;
        font-size: 0.7rem;
    }
}
/* /Components/Pages/Authentication/AcceptInvitation.razor.rz.scp.css */
/* ===== Auth Page - Centered Card Design ===== */

.auth-page[b-gr91evttrh] {
    min-height: 100vh;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;
    padding: 2rem 1rem;
}

.auth-wrapper[b-gr91evttrh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    width: 100%;
    max-width: 400px;
}

/* ===== Brand Section ===== */
.brand-section[b-gr91evttrh] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.brand-icon[b-gr91evttrh] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #1a1a1a;
    border-radius: 6px;
    color: white;
}

.brand-icon[b-gr91evttrh]  .mud-icon-root {
    font-size: 16px;
}

.brand-name[b-gr91evttrh] {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1a1a1a;
}

/* ===== Auth Card ===== */
.auth-card[b-gr91evttrh] {
    width: 100%;
    background-color: #ffffff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e5e5;
}

/* ===== Header ===== */
.auth-header[b-gr91evttrh] {
    text-align: center;
    margin-bottom: 1.5rem;
}

.header-icon[b-gr91evttrh] {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f3f4f6;
    border-radius: 12px;
    margin: 0 auto 1rem;
    color: #1a1a1a;
}

.header-icon[b-gr91evttrh]  .mud-icon-root {
    font-size: 28px;
}

.auth-title[b-gr91evttrh] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 0.5rem 0;
}

.auth-subtitle[b-gr91evttrh] {
    font-size: 0.875rem;
    color: #6b7280;
    margin: 0;
}

/* ===== Form ===== */
.auth-form[b-gr91evttrh] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.form-group[b-gr91evttrh] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.form-label[b-gr91evttrh] {
    font-size: 0.875rem;
    font-weight: 500;
    color: #1a1a1a;
}

.form-input[b-gr91evttrh] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    font-size: 0.875rem;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    background-color: #ffffff;
    color: #1a1a1a;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    box-sizing: border-box;
}

.form-input[b-gr91evttrh]::placeholder {
    color: #9ca3af;
}

.form-input:hover[b-gr91evttrh] {
    border-color: #d1d5db;
}

.form-input:focus[b-gr91evttrh] {
    border-color: #1a1a1a;
    box-shadow: 0 0 0 1px #1a1a1a;
}

/* ===== Checkbox ===== */
.checkbox-group[b-gr91evttrh] {
    display: flex;
    align-items: center;
}

.checkbox-label[b-gr91evttrh] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: #6b7280;
    cursor: pointer;
}

.checkbox-input[b-gr91evttrh] {
    width: 16px;
    height: 16px;
    cursor: pointer;
    accent-color: #1a1a1a;
}

/* ===== Error Message ===== */
.error-message[b-gr91evttrh] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    color: #dc2626;
    font-size: 0.875rem;
}

.error-message[b-gr91evttrh]  .mud-icon-root {
    font-size: 18px;
}

/* ===== Error State ===== */
.error-state[b-gr91evttrh] {
    text-align: center;
}

.error-state-icon[b-gr91evttrh] {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fef2f2;
    border-radius: 50%;
    margin: 0 auto 1rem;
    color: #dc2626;
}

.error-state-icon[b-gr91evttrh]  .mud-icon-root {
    font-size: 32px;
}

/* ===== Success State ===== */
.success-state[b-gr91evttrh] {
    text-align: center;
}

.success-icon[b-gr91evttrh] {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #dcfce7;
    border-radius: 50%;
    margin: 0 auto 1rem;
    color: #16a34a;
}

.success-icon[b-gr91evttrh]  .mud-icon-root {
    font-size: 32px;
}

/* ===== Auth Button ===== */
.auth-button[b-gr91evttrh] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #ffffff;
    background-color: #1a1a1a;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.15s ease;
    margin-top: 0.5rem;
}

.auth-button:hover:not(:disabled)[b-gr91evttrh] {
    background-color: #333333;
}

.auth-button:active:not(:disabled)[b-gr91evttrh] {
    background-color: #0a0a0a;
}

.auth-button:disabled[b-gr91evttrh] {
    opacity: 0.7;
    cursor: not-allowed;
}

.auth-button[b-gr91evttrh]  .mud-progress-circular {
    width: 18px !important;
    height: 18px !important;
}

.auth-button-link[b-gr91evttrh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #ffffff;
    background-color: #1a1a1a;
    border: none;
    border-radius: 8px;
    text-decoration: none;
    transition: background-color 0.15s ease;
    margin-top: 1.5rem;
}

.auth-button-link:hover[b-gr91evttrh] {
    background-color: #333333;
}

/* ===== Back Link ===== */
.back-link[b-gr91evttrh] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: #6b7280;
    text-decoration: none;
    margin-top: 0.5rem;
    transition: color 0.15s ease;
}

.back-link:hover[b-gr91evttrh] {
    color: #1a1a1a;
}

.back-link[b-gr91evttrh]  .mud-icon-root {
    font-size: 18px;
}

/* ===== Responsive Design ===== */
@media (max-width: 480px) {
    .auth-page[b-gr91evttrh] {
        padding: 1rem;
    }

    .auth-card[b-gr91evttrh] {
        padding: 1.5rem;
    }

    .auth-title[b-gr91evttrh] {
        font-size: 1.25rem;
    }
}

/* ===== Focus States for Accessibility ===== */
.auth-button:focus-visible[b-gr91evttrh],
.auth-button-link:focus-visible[b-gr91evttrh],
.back-link:focus-visible[b-gr91evttrh] {
    outline: 2px solid #1a1a1a;
    outline-offset: 2px;
}

.form-input:focus-visible[b-gr91evttrh] {
    outline: none;
}
/* /Components/Pages/Authentication/ForgotPassword.razor.rz.scp.css */
.auth-page[b-ggvn53wlw7] {
    min-height: 100vh;
    width: 100%;
    display: grid;
    place-items: center;
    padding: 32px;
    background:
        radial-gradient(circle at 16% 12%, rgba(37, 99, 235, 0.10), transparent 30%),
        radial-gradient(circle at 86% 16%, rgba(15, 159, 143, 0.10), transparent 28%),
        #f6f8fb;
}

.auth-shell[b-ggvn53wlw7] {
    display: grid;
    grid-template-columns: minmax(380px, 0.86fr) minmax(520px, 1.14fr);
    width: min(1120px, 100%);
    min-height: 680px;
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.28);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.14);
}

.auth-panel[b-ggvn53wlw7] {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 22px;
    padding: 34px;
    background: rgba(255, 255, 255, 0.96);
}

.brand-section[b-ggvn53wlw7] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.brand-icon[b-ggvn53wlw7] {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #111827;
    color: #ffffff;
}

.brand-name[b-ggvn53wlw7] {
    color: #111827;
    font-size: 1.05rem;
    font-weight: 900;
}

.auth-card[b-ggvn53wlw7],
.auth-form[b-ggvn53wlw7],
.auth-header[b-ggvn53wlw7] {
    display: grid;
}

.auth-card[b-ggvn53wlw7] {
    gap: 18px;
}

.auth-form[b-ggvn53wlw7] {
    gap: 16px;
}

.auth-header[b-ggvn53wlw7] {
    gap: 8px;
}

.header-icon[b-ggvn53wlw7],
.success-icon[b-ggvn53wlw7] {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: #eff6ff;
    color: #2563eb;
}

.success-icon[b-ggvn53wlw7] {
    background: #dcfce7;
    color: #16a34a;
}

.auth-eyebrow[b-ggvn53wlw7],
.visual-kicker[b-ggvn53wlw7] {
    margin: 0;
    color: #2563eb;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

.auth-title[b-ggvn53wlw7] {
    margin: 0;
    color: #0f172a;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1.08;
}

.auth-subtitle[b-ggvn53wlw7] {
    max-width: 420px;
    margin: 0;
    color: #64748b;
    font-size: 0.92rem;
    font-weight: 650;
    line-height: 1.55;
}

.auth-subtitle strong[b-ggvn53wlw7] {
    color: #0f172a;
}

.form-group[b-ggvn53wlw7] {
    display: grid;
    gap: 7px;
}

.form-label[b-ggvn53wlw7] {
    color: #111827;
    font-size: 0.78rem;
    font-weight: 900;
}

.tenant-input[b-ggvn53wlw7],
.input-shell[b-ggvn53wlw7] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    min-height: 46px;
    padding: 0 12px;
    border: 1px solid #dbe3ef;
    border-radius: 10px;
    background: #ffffff;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.input-shell[b-ggvn53wlw7] {
    grid-template-columns: auto minmax(0, 1fr);
}

.tenant-input:focus-within[b-ggvn53wlw7],
.input-shell:focus-within[b-ggvn53wlw7] {
    border-color: rgba(37, 99, 235, 0.62);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.10);
}

.tenant-input[b-ggvn53wlw7]  .mud-icon-root,
.input-shell[b-ggvn53wlw7]  .mud-icon-root {
    color: #64748b;
    font-size: 18px;
}

.tenant-input span[b-ggvn53wlw7] {
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 850;
}

.form-input[b-ggvn53wlw7] {
    width: 100%;
    min-width: 0;
    height: 42px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #0f172a;
    font-size: 0.9rem;
    font-weight: 700;
}

.form-input[b-ggvn53wlw7]::placeholder {
    color: #94a3b8;
    font-weight: 650;
}

.error-message[b-ggvn53wlw7] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 11px 12px;
    border: 1px solid #fecaca;
    border-radius: 10px;
    background: #fef2f2;
    color: #b91c1c;
    font-size: 0.8rem;
    font-weight: 800;
}

.auth-button[b-ggvn53wlw7],
.auth-button-link[b-ggvn53wlw7] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 46px;
    margin-top: 8px;
    border: 0;
    border-radius: 10px;
    background: #2563eb;
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 900;
    text-decoration: none;
    cursor: pointer;
    box-shadow: 0 14px 26px rgba(37, 99, 235, 0.22);
    transition: background 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.auth-button:hover:not(:disabled)[b-ggvn53wlw7],
.auth-button-link:hover[b-ggvn53wlw7] {
    background: #1d4ed8;
    box-shadow: 0 18px 34px rgba(37, 99, 235, 0.28);
    transform: translateY(-1px);
}

.auth-button:disabled[b-ggvn53wlw7] {
    opacity: 0.72;
    cursor: not-allowed;
}

.auth-button[b-ggvn53wlw7]  .mud-progress-circular {
    width: 18px !important;
    height: 18px !important;
}

.back-link[b-ggvn53wlw7] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin-top: 10px;
    color: #64748b;
    font-size: 0.82rem;
    font-weight: 850;
    text-decoration: none;
}

.back-link:hover[b-ggvn53wlw7] {
    color: #2563eb;
}

.success-state[b-ggvn53wlw7] {
    display: grid;
    gap: 16px;
}

.resend-text[b-ggvn53wlw7],
.auth-footer[b-ggvn53wlw7] {
    margin: 0;
    color: #64748b;
    font-size: 0.8rem;
    font-weight: 700;
}

.resend-link[b-ggvn53wlw7] {
    border: 0;
    background: transparent;
    color: #2563eb;
    font: inherit;
    font-weight: 850;
    cursor: pointer;
}

.resend-link:hover[b-ggvn53wlw7] {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.resend-link:disabled[b-ggvn53wlw7] {
    opacity: 0.6;
    cursor: not-allowed;
}

.auth-footer[b-ggvn53wlw7] {
    max-width: 420px;
    line-height: 1.5;
}

.auth-visual[b-ggvn53wlw7] {
    position: relative;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 28px;
    padding: 48px;
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(15, 23, 42, 0.92), rgba(30, 41, 59, 0.86)),
        #0f172a;
    color: #ffffff;
}

.auth-visual[b-ggvn53wlw7]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 24% 20%, rgba(37, 99, 235, 0.36), transparent 28%),
        radial-gradient(circle at 82% 74%, rgba(15, 159, 143, 0.34), transparent 30%);
    pointer-events: none;
}

.auth-visual > *[b-ggvn53wlw7] {
    position: relative;
    z-index: 1;
}

.visual-copy h2[b-ggvn53wlw7] {
    margin: 8px 0 10px;
    font-size: clamp(2rem, 4vw, 3.35rem);
    font-weight: 950;
    line-height: 1.02;
}

.visual-copy p[b-ggvn53wlw7] {
    max-width: 500px;
    margin: 0;
    color: rgba(226, 232, 240, 0.86);
    font-size: 1rem;
    font-weight: 650;
    line-height: 1.58;
}

.recovery-visual[b-ggvn53wlw7] {
    align-self: center;
    display: grid;
    grid-template-columns: minmax(220px, 0.82fr) minmax(260px, 1fr);
    align-items: center;
    gap: 18px;
}

.secure-mail-card[b-ggvn53wlw7],
.security-steps[b-ggvn53wlw7] {
    border: 1px solid rgba(226, 232, 240, 0.24);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.12);
    box-shadow: 0 22px 48px rgba(0, 0, 0, 0.24);
    backdrop-filter: blur(12px);
}

.secure-mail-card[b-ggvn53wlw7] {
    display: grid;
    gap: 12px;
    min-height: 240px;
    padding: 22px;
}

.secure-mail-card[b-ggvn53wlw7]  .mud-icon-root {
    color: #5eead4;
    font-size: 48px;
}

.secure-mail-card strong[b-ggvn53wlw7] {
    font-size: 1.15rem;
}

.secure-mail-card span[b-ggvn53wlw7] {
    color: rgba(226, 232, 240, 0.78);
    font-size: 0.82rem;
    font-weight: 800;
}

.mail-lines[b-ggvn53wlw7] {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.mail-lines i[b-ggvn53wlw7] {
    display: block;
    height: 9px;
    border-radius: 999px;
    background: rgba(226, 232, 240, 0.32);
}

.mail-lines i:nth-child(2)[b-ggvn53wlw7] {
    width: 72%;
}

.mail-lines i:nth-child(3)[b-ggvn53wlw7] {
    width: 46%;
}

.security-steps[b-ggvn53wlw7] {
    display: grid;
    gap: 10px;
    padding: 16px;
}

.security-steps span[b-ggvn53wlw7],
.trust-strip span[b-ggvn53wlw7] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.10);
    color: rgba(248, 250, 252, 0.88);
    font-size: 0.78rem;
    font-weight: 900;
}

.security-steps[b-ggvn53wlw7]  .mud-icon-root {
    color: #93c5fd;
}

.trust-strip[b-ggvn53wlw7] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.trust-strip span[b-ggvn53wlw7] {
    border: 1px solid rgba(226, 232, 240, 0.22);
}

@media (max-width: 980px) {
    .auth-shell[b-ggvn53wlw7] {
        grid-template-columns: 1fr;
    }

    .auth-visual[b-ggvn53wlw7] {
        min-height: 540px;
        padding: 34px;
    }
}

@media (max-width: 640px) {
    .auth-page[b-ggvn53wlw7] {
        padding: 0;
        place-items: stretch;
    }

    .auth-shell[b-ggvn53wlw7] {
        min-height: 100vh;
        border: 0;
        border-radius: 0;
    }

    .auth-panel[b-ggvn53wlw7],
    .auth-visual[b-ggvn53wlw7] {
        padding: 24px;
    }

    .auth-title[b-ggvn53wlw7] {
        font-size: 1.65rem;
    }

    .recovery-visual[b-ggvn53wlw7] {
        grid-template-columns: 1fr;
    }
}

.auth-button:focus-visible[b-ggvn53wlw7],
.auth-button-link:focus-visible[b-ggvn53wlw7],
.back-link:focus-visible[b-ggvn53wlw7],
.resend-link:focus-visible[b-ggvn53wlw7] {
    outline: 2px solid #2563eb;
    outline-offset: 2px;
}
/* /Components/Pages/Authentication/ResetPassword.razor.rz.scp.css */
/* ===== Auth Page - Centered Card Design ===== */

.auth-page[b-oc73y6hpb2] {
    min-height: 100vh;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f5;
    padding: 2rem 1rem;
}

.auth-wrapper[b-oc73y6hpb2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    width: 100%;
    max-width: 400px;
}

/* ===== Brand Section ===== */
.brand-section[b-oc73y6hpb2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.brand-icon[b-oc73y6hpb2] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #1a1a1a;
    border-radius: 6px;
    color: white;
}

.brand-icon[b-oc73y6hpb2]  .mud-icon-root {
    font-size: 16px;
}

.brand-name[b-oc73y6hpb2] {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1a1a1a;
}

/* ===== Auth Card ===== */
.auth-card[b-oc73y6hpb2] {
    width: 100%;
    background-color: #ffffff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e5e5;
}

/* ===== Header ===== */
.auth-header[b-oc73y6hpb2] {
    text-align: center;
    margin-bottom: 1.5rem;
}

.header-icon[b-oc73y6hpb2] {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f3f4f6;
    border-radius: 12px;
    margin: 0 auto 1rem;
    color: #1a1a1a;
}

.header-icon[b-oc73y6hpb2]  .mud-icon-root {
    font-size: 28px;
}

.auth-title[b-oc73y6hpb2] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 0.5rem 0;
}

.auth-subtitle[b-oc73y6hpb2] {
    font-size: 0.875rem;
    color: #6b7280;
    margin: 0;
}

/* ===== Form ===== */
.auth-form[b-oc73y6hpb2] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.form-group[b-oc73y6hpb2] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.form-label[b-oc73y6hpb2] {
    font-size: 0.875rem;
    font-weight: 500;
    color: #1a1a1a;
}

.form-input[b-oc73y6hpb2] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    font-size: 0.875rem;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    background-color: #ffffff;
    color: #1a1a1a;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    box-sizing: border-box;
}

.form-input[b-oc73y6hpb2]::placeholder {
    color: #9ca3af;
}

/* DOK-719: the tenant arrives on the link and is shown, not asked for. Read-only rather than
   hidden — the reader must be able to see which workspace they are setting a password for. */
.form-input:disabled[b-oc73y6hpb2] {
    background-color: #f9fafb;
    color: #4b5563;
    cursor: not-allowed;
}

.form-hint[b-oc73y6hpb2] {
    margin: 0;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #6b7280;
}

.form-input:hover[b-oc73y6hpb2] {
    border-color: #d1d5db;
}

.form-input:focus[b-oc73y6hpb2] {
    border-color: #1a1a1a;
    box-shadow: 0 0 0 1px #1a1a1a;
}

/* ===== Checkbox ===== */
.checkbox-group[b-oc73y6hpb2] {
    display: flex;
    align-items: center;
}

.checkbox-label[b-oc73y6hpb2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: #6b7280;
    cursor: pointer;
}

.checkbox-input[b-oc73y6hpb2] {
    width: 16px;
    height: 16px;
    cursor: pointer;
    accent-color: #1a1a1a;
}

/* ===== Error Message ===== */
.error-message[b-oc73y6hpb2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    color: #dc2626;
    font-size: 0.875rem;
}

.error-message[b-oc73y6hpb2]  .mud-icon-root {
    font-size: 18px;
}

/* ===== Error State ===== */
.error-state[b-oc73y6hpb2] {
    text-align: center;
}

.error-state-icon[b-oc73y6hpb2] {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fef2f2;
    border-radius: 50%;
    margin: 0 auto 1rem;
    color: #dc2626;
}

.error-state-icon[b-oc73y6hpb2]  .mud-icon-root {
    font-size: 32px;
}

/* ===== Success State ===== */
.success-state[b-oc73y6hpb2] {
    text-align: center;
}

.success-icon[b-oc73y6hpb2] {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #dcfce7;
    border-radius: 50%;
    margin: 0 auto 1rem;
    color: #16a34a;
}

.success-icon[b-oc73y6hpb2]  .mud-icon-root {
    font-size: 32px;
}

/* ===== Auth Button ===== */
.auth-button[b-oc73y6hpb2] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #ffffff;
    background-color: #1a1a1a;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.15s ease;
    margin-top: 0.5rem;
}

.auth-button:hover:not(:disabled)[b-oc73y6hpb2] {
    background-color: #333333;
}

.auth-button:active:not(:disabled)[b-oc73y6hpb2] {
    background-color: #0a0a0a;
}

.auth-button:disabled[b-oc73y6hpb2] {
    opacity: 0.7;
    cursor: not-allowed;
}

.auth-button[b-oc73y6hpb2]  .mud-progress-circular {
    width: 18px !important;
    height: 18px !important;
}

.auth-button-link[b-oc73y6hpb2] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #ffffff;
    background-color: #1a1a1a;
    border: none;
    border-radius: 8px;
    text-decoration: none;
    transition: background-color 0.15s ease;
    margin-top: 1.5rem;
}

.auth-button-link:hover[b-oc73y6hpb2] {
    background-color: #333333;
}

/* ===== Back Link ===== */
.back-link[b-oc73y6hpb2] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: #6b7280;
    text-decoration: none;
    margin-top: 0.5rem;
    transition: color 0.15s ease;
}

.back-link:hover[b-oc73y6hpb2] {
    color: #1a1a1a;
}

.back-link[b-oc73y6hpb2]  .mud-icon-root {
    font-size: 18px;
}

/* ===== Responsive Design ===== */
@media (max-width: 480px) {
    .auth-page[b-oc73y6hpb2] {
        padding: 1rem;
    }

    .auth-card[b-oc73y6hpb2] {
        padding: 1.5rem;
    }

    .auth-title[b-oc73y6hpb2] {
        font-size: 1.25rem;
    }
}

/* ===== Focus States for Accessibility ===== */
.auth-button:focus-visible[b-oc73y6hpb2],
.auth-button-link:focus-visible[b-oc73y6hpb2],
.back-link:focus-visible[b-oc73y6hpb2] {
    outline: 2px solid #1a1a1a;
    outline-offset: 2px;
}

.form-input:focus-visible[b-oc73y6hpb2] {
    outline: none;
}
/* /Components/Pages/SimpleLogin.razor.rz.scp.css */
.login-page[b-2e4vmd91lt] {
    min-height: 100vh;
    width: 100%;
    display: grid;
    place-items: center;
    padding: 32px;
    background:
        radial-gradient(circle at 16% 12%, rgba(37, 99, 235, 0.10), transparent 30%),
        radial-gradient(circle at 86% 16%, rgba(15, 159, 143, 0.10), transparent 28%),
        #f6f8fb;
}

.login-shell[b-2e4vmd91lt] {
    display: grid;
    grid-template-columns: minmax(380px, 0.86fr) minmax(520px, 1.14fr);
    width: min(1120px, 100%);
    min-height: 680px;
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.28);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 32px 80px rgba(15, 23, 42, 0.18);
}

.login-panel[b-2e4vmd91lt] {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 22px;
    padding: 34px;
    background: rgba(255, 255, 255, 0.96);
}

.brand-section[b-2e4vmd91lt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.brand-lockup[b-2e4vmd91lt] {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Language selector (DOK-202) — native <details> dropdown, works pre-circuit + keyboard accessible. */
.lang-switch[b-2e4vmd91lt] {
    position: relative;
}

.lang-switch__toggle[b-2e4vmd91lt] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    border: 1px solid rgba(148, 163, 184, 0.30);
    border-radius: 9px;
    background: rgba(248, 250, 252, 0.74);
    color: #111827;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    list-style: none;
    user-select: none;
}

.lang-switch__toggle[b-2e4vmd91lt]::-webkit-details-marker {
    display: none;
}

.lang-switch__toggle:hover[b-2e4vmd91lt],
.lang-switch__toggle:focus-visible[b-2e4vmd91lt] {
    border-color: rgba(124, 92, 252, 0.55);
    outline: none;
}

.lang-switch__code[b-2e4vmd91lt] {
    letter-spacing: 0.02em;
}

.lang-switch__menu[b-2e4vmd91lt] {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    z-index: 20;
    min-width: 148px;
    display: grid;
    gap: 2px;
    padding: 6px;
    border: 1px solid rgba(148, 163, 184, 0.30);
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.16);
}

.lang-switch__option[b-2e4vmd91lt] {
    display: block;
    padding: 8px 10px;
    border-radius: 7px;
    color: #111827;
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
}

.lang-switch__option:hover[b-2e4vmd91lt],
.lang-switch__option:focus-visible[b-2e4vmd91lt] {
    background: rgba(124, 92, 252, 0.10);
    color: #7c5cfc;
    outline: none;
}

.brand-icon[b-2e4vmd91lt] {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: linear-gradient(135deg, #111827 0%, #2563eb 135%);
    color: #ffffff;
    box-shadow: 0 10px 22px rgba(37, 99, 235, 0.28);
}

.brand-name[b-2e4vmd91lt] {
    color: #111827;
    font-size: 1.05rem;
    font-weight: 900;
}

.login-card[b-2e4vmd91lt] {
    display: grid;
    gap: 18px;
}

.login-header[b-2e4vmd91lt] {
    display: grid;
    gap: 6px;
}

.login-eyebrow[b-2e4vmd91lt],
.visual-kicker[b-2e4vmd91lt] {
    margin: 0;
    color: #2563eb;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

.login-title[b-2e4vmd91lt] {
    margin: 0;
    color: #0f172a;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1.08;
}

.login-subtitle[b-2e4vmd91lt] {
    max-width: 420px;
    margin: 0;
    color: #64748b;
    font-size: 0.92rem;
    font-weight: 650;
    line-height: 1.55;
}

.login-error[b-2e4vmd91lt] {
    padding: 11px 13px;
    border: 1px solid rgba(185, 28, 28, 0.24);
    border-radius: 10px;
    background: rgba(254, 226, 226, 0.72);
    color: #991b1b;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.45;
}

.login-form[b-2e4vmd91lt] {
    display: grid;
    gap: 14px;
}

.form-group[b-2e4vmd91lt] {
    display: grid;
    gap: 7px;
}

.label-row[b-2e4vmd91lt],
.login-options[b-2e4vmd91lt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.form-label[b-2e4vmd91lt] {
    color: #111827;
    font-size: 0.78rem;
    font-weight: 900;
}

.forgot-link[b-2e4vmd91lt],
.signup-link[b-2e4vmd91lt],
.password-toggle[b-2e4vmd91lt] {
    color: #2563eb;
    font-size: 0.78rem;
    font-weight: 850;
    text-decoration: none;
}

.forgot-link:hover[b-2e4vmd91lt],
.signup-link:hover[b-2e4vmd91lt] {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.tenant-input[b-2e4vmd91lt],
.input-shell[b-2e4vmd91lt] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    min-height: 46px;
    padding: 0 12px;
    border: 1px solid #dbe3ef;
    border-radius: 10px;
    background: #ffffff;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.input-shell[b-2e4vmd91lt] {
    grid-template-columns: auto minmax(0, 1fr);
}

.input-shell--password[b-2e4vmd91lt] {
    grid-template-columns: auto minmax(0, 1fr) auto;
}

.tenant-input:focus-within[b-2e4vmd91lt],
.input-shell:focus-within[b-2e4vmd91lt] {
    border-color: rgba(37, 99, 235, 0.62);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.10);
}

.tenant-input[b-2e4vmd91lt]  .mud-icon-root,
.input-shell[b-2e4vmd91lt]  .mud-icon-root {
    color: #64748b;
    font-size: 18px;
}

.tenant-input span[b-2e4vmd91lt] {
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 850;
}

.form-input[b-2e4vmd91lt] {
    width: 100%;
    min-width: 0;
    height: 42px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #0f172a;
    font-size: 0.9rem;
    font-weight: 700;
}

.form-input[b-2e4vmd91lt]::placeholder {
    color: #94a3b8;
    font-weight: 650;
}

.remember-option[b-2e4vmd91lt] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #475569;
    font-size: 0.8rem;
    font-weight: 800;
}

.remember-option input[b-2e4vmd91lt] {
    width: 15px;
    height: 15px;
    accent-color: #2563eb;
}

.password-icon-button[b-2e4vmd91lt] {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #64748b;
    cursor: pointer;
}

.password-icon-button:hover[b-2e4vmd91lt] {
    background: #f1f5f9;
    color: #2563eb;
}

.login-button[b-2e4vmd91lt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    border: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, #2563eb 0%, #7c5cfc 100%);
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 16px 30px rgba(37, 99, 235, 0.26);
    transition: background 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.login-button:hover[b-2e4vmd91lt] {
    background: linear-gradient(135deg, #1d4ed8 0%, #6d4cf0 100%);
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.32);
    transform: translateY(-1px);
}

.divider[b-2e4vmd91lt] {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #94a3b8;
    font-size: 0.72rem;
    font-weight: 850;
}

.divider[b-2e4vmd91lt]::before,
.divider[b-2e4vmd91lt]::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #e2e8f0;
}

.social-buttons[b-2e4vmd91lt] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.social-button[b-2e4vmd91lt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    border: 1px solid #dbe3ef;
    border-radius: 10px;
    background: #ffffff;
    color: #334155;
    font-size: 0.78rem;
    font-weight: 900;
}

.social-button:disabled[b-2e4vmd91lt] {
    opacity: 0.72;
    cursor: not-allowed;
}

.signup-text[b-2e4vmd91lt],
.login-footer[b-2e4vmd91lt] {
    margin: 0;
    color: #64748b;
    font-size: 0.8rem;
    font-weight: 700;
}

.login-footer[b-2e4vmd91lt] {
    max-width: 420px;
    line-height: 1.5;
}

.login-visual[b-2e4vmd91lt] {
    position: relative;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 28px;
    padding: 48px;
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(15, 23, 42, 0.92), rgba(30, 41, 59, 0.86)),
        #0f172a;
    color: #ffffff;
}

.login-visual[b-2e4vmd91lt]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 24% 20%, rgba(37, 99, 235, 0.36), transparent 28%),
        radial-gradient(circle at 82% 74%, rgba(15, 159, 143, 0.34), transparent 30%);
    pointer-events: none;
}

.login-visual > *[b-2e4vmd91lt] {
    position: relative;
    z-index: 1;
}

.visual-copy[b-2e4vmd91lt] {
    max-width: 580px;
}

.visual-copy h2[b-2e4vmd91lt] {
    margin: 8px 0 10px;
    font-size: clamp(2rem, 4vw, 3.4rem);
    font-weight: 950;
    line-height: 1.02;
}

.visual-copy p[b-2e4vmd91lt] {
    max-width: 500px;
    margin: 0;
    color: rgba(226, 232, 240, 0.86);
    font-size: 1rem;
    font-weight: 650;
    line-height: 1.58;
}

.workflow-illustration[b-2e4vmd91lt] {
    align-self: stretch;
}

.wf-stage[b-2e4vmd91lt] {
    position: relative;
    height: 280px;
}

/* Invoice */
.doc-card[b-2e4vmd91lt] {
    position: absolute;
    left: 0;
    top: 0;
    width: 172px;
    height: 210px;
    padding: 16px;
    overflow: hidden;
    border-radius: 14px;
    background: #f1f5f9;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.4);
    transform: rotate(-3deg);
}

.doc-topline[b-2e4vmd91lt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}

.doc-topline span[b-2e4vmd91lt] {
    font-size: 0.76rem;
    font-weight: 800;
    color: #1a1a2e;
}

.doc-topline b[b-2e4vmd91lt] {
    padding: 3px 7px;
    border-radius: 6px;
    background: #e6f1fb;
    color: #185fa5;
    font-size: 0.6rem;
    font-weight: 800;
}

.doc-lines[b-2e4vmd91lt] {
    display: grid;
    gap: 7px;
    margin-bottom: 16px;
}

.doc-lines i[b-2e4vmd91lt] {
    display: block;
    height: 7px;
    border-radius: 4px;
    background: #dbe3ec;
}

.doc-lines i:nth-child(1)[b-2e4vmd91lt] { width: 80%; background: #cbd5e1; }
.doc-lines i:nth-child(2)[b-2e4vmd91lt] { width: 58%; }
.doc-lines i:nth-child(3)[b-2e4vmd91lt] { width: 70%; }

.doc-grid[b-2e4vmd91lt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.doc-grid i[b-2e4vmd91lt] {
    display: block;
    height: 26px;
    border-radius: 7px;
    background: #e2e8f0;
}

.doc-scan[b-2e4vmd91lt] {
    position: absolute;
    left: 0;
    right: 0;
    top: 14px;
    height: 3px;
    opacity: 0;
    background: linear-gradient(90deg, transparent, #5dcaa5, transparent);
    box-shadow: 0 0 12px 2px rgba(93, 202, 165, 0.6);
}

/* AI Extraction node */
.extract-node[b-2e4vmd91lt] {
    position: absolute;
    left: 150px;
    top: 88px;
    width: 124px;
    padding: 13px;
    border-radius: 13px;
    background: rgba(30, 41, 59, 0.92);
    border: 1px solid rgba(148, 163, 184, 0.18);
}

.extract-head[b-2e4vmd91lt] {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 6px;
}

.extract-head span[b-2e4vmd91lt] {
    font-size: 0.74rem;
    font-weight: 700;
    color: #e2e8f0;
}

.extract-node[b-2e4vmd91lt]  .mud-icon-root {
    width: 16px;
    height: 16px;
    font-size: 16px;
    color: #5dcaa5;
}

.extract-fields[b-2e4vmd91lt] {
    font-size: 0.7rem;
    color: #94a3b8;
}

.extract-score[b-2e4vmd91lt] {
    font-size: 1.05rem;
    font-weight: 800;
    color: #5dcaa5;
}

/* Work Item / Dossiê card */
.case-card[b-2e4vmd91lt] {
    position: absolute;
    right: 0;
    top: 50px;
    width: 236px;
    padding: 15px;
    border-radius: 14px;
    background: rgba(17, 24, 39, 0.94);
    border: 1px solid rgba(148, 163, 184, 0.2);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.45);
}

.case-head[b-2e4vmd91lt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}

.case-head span[b-2e4vmd91lt] {
    font-size: 0.7rem;
    font-weight: 700;
    color: #94a3b8;
    letter-spacing: 0.04em;
}

.case-head b[b-2e4vmd91lt] {
    padding: 3px 9px;
    border-radius: 9999px;
    background: #fceaea;
    color: #a32d2d;
    font-size: 0.62rem;
    font-weight: 800;
}

.case-card strong[b-2e4vmd91lt] {
    display: block;
    margin-bottom: 4px;
    font-size: 1rem;
    font-weight: 800;
    color: #fff;
}

.case-card small[b-2e4vmd91lt] {
    display: block;
    margin-bottom: 12px;
    font-size: 0.72rem;
    font-weight: 500;
    color: #94a3b8;
}

.case-steps[b-2e4vmd91lt] {
    display: flex;
    gap: 5px;
}

.case-steps i[b-2e4vmd91lt] {
    flex: 1;
    height: 6px;
    border-radius: 9999px;
    background: rgba(148, 163, 184, 0.25);
}

.case-step-1[b-2e4vmd91lt],
.case-step-2[b-2e4vmd91lt] {
    background: #1d9e75;
}

/* DOKPilot Q&A panel */
.pilot-card[b-2e4vmd91lt] {
    position: absolute;
    left: 6px;
    bottom: 0;
    width: 300px;
    padding: 14px;
    border-radius: 14px;
    background: rgba(17, 24, 39, 0.96);
    border: 1px solid rgba(124, 92, 252, 0.35);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.5);
}

.pilot-head[b-2e4vmd91lt] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.pilot-avatar[b-2e4vmd91lt] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 8px;
    background: linear-gradient(135deg, #4f46e5, #7c5cfc);
}

.pilot-avatar[b-2e4vmd91lt]  .mud-icon-root {
    width: 15px;
    height: 15px;
    font-size: 15px;
    color: #fff;
}

.pilot-name[b-2e4vmd91lt] {
    font-size: 0.8rem;
    font-weight: 800;
    color: #fff;
}

.pilot-question[b-2e4vmd91lt] {
    overflow: hidden;
    white-space: nowrap;
    margin-bottom: 9px;
}

.pilot-question span[b-2e4vmd91lt] {
    font-size: 0.76rem;
    font-weight: 600;
    color: #cbd5e1;
}

.pilot-answer[b-2e4vmd91lt] {
    display: flex;
    gap: 8px;
}

.pilot-answer[b-2e4vmd91lt]  .mud-icon-root {
    width: 15px;
    height: 15px;
    font-size: 15px;
    color: #7c5cfc;
    flex-shrink: 0;
    margin-top: 2px;
}

.pilot-answer span[b-2e4vmd91lt] {
    font-size: 0.76rem;
    font-weight: 500;
    color: #94a3b8;
    line-height: 1.4;
}

.trust-strip[b-2e4vmd91lt] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.trust-strip span[b-2e4vmd91lt] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 12px;
    border: 1px solid rgba(226, 232, 240, 0.22);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.10);
    color: rgba(248, 250, 252, 0.88);
    font-size: 0.76rem;
    font-weight: 900;
}

@media (max-width: 980px) {
    .login-page[b-2e4vmd91lt] {
        padding: 18px;
    }

    .login-shell[b-2e4vmd91lt] {
        grid-template-columns: 1fr;
    }

    .login-visual[b-2e4vmd91lt] {
        min-height: 540px;
        padding: 34px;
    }
}

@media (max-width: 640px) {
    .login-page[b-2e4vmd91lt] {
        padding: 0;
        place-items: stretch;
    }

    .login-shell[b-2e4vmd91lt] {
        min-height: 100vh;
        border: 0;
        border-radius: 0;
    }

    .login-panel[b-2e4vmd91lt],
    .login-visual[b-2e4vmd91lt] {
        padding: 24px;
    }

    .login-title[b-2e4vmd91lt] {
        font-size: 1.65rem;
    }

    .social-buttons[b-2e4vmd91lt] {
        grid-template-columns: 1fr;
    }

    .login-options[b-2e4vmd91lt] {
        align-items: flex-start;
        flex-direction: column;
    }
}

.login-button:focus-visible[b-2e4vmd91lt],
.social-button:focus-visible[b-2e4vmd91lt],
.forgot-link:focus-visible[b-2e4vmd91lt],
.signup-link:focus-visible[b-2e4vmd91lt],
.password-icon-button:focus-visible[b-2e4vmd91lt] {
    outline: 2px solid #2563eb;
    outline-offset: 2px;
}

/* DOK-241 — Login visual: invoice extraction → AI → Dossiê → DOKPilot Q&A.
   Decorative only (.workflow-illustration is aria-hidden). All motion gated behind
   prefers-reduced-motion: no-preference, so reduced-motion users get a sensible
   static composition (all cards visible, two approval steps filled, no scan line). */
@media (prefers-reduced-motion: no-preference) {
    .doc-scan[b-2e4vmd91lt] { animation: dokScan-b-2e4vmd91lt 9s ease-in-out infinite; }
    .extract-node[b-2e4vmd91lt] { animation: dokRise-b-2e4vmd91lt 9s ease-in-out infinite; }
    .case-card[b-2e4vmd91lt] { animation: dokCase-b-2e4vmd91lt 9s ease-in-out infinite; }
    .case-step-1[b-2e4vmd91lt] { animation: dokStep1-b-2e4vmd91lt 9s ease-in-out infinite; }
    .case-step-2[b-2e4vmd91lt] { animation: dokStep2-b-2e4vmd91lt 9s ease-in-out infinite; }
    .pilot-card[b-2e4vmd91lt] { animation: dokPilot-b-2e4vmd91lt 9s ease-in-out infinite; }
    .pilot-question[b-2e4vmd91lt] { width: 0; animation: dokType-b-2e4vmd91lt 9s steps(30) infinite; }
    .pilot-answer[b-2e4vmd91lt] { opacity: 0; animation: dokAnswer-b-2e4vmd91lt 9s ease-in-out infinite; }
}

@keyframes dokScan-b-2e4vmd91lt {
    0%, 12% { top: 14px; opacity: 0; }
    16% { opacity: 1; }
    40% { top: 150px; opacity: 1; }
    46%, 100% { top: 150px; opacity: 0; }
}

@keyframes dokRise-b-2e4vmd91lt {
    0%, 20% { opacity: 0; transform: translateY(14px); }
    30%, 100% { opacity: 1; transform: translateY(0); }
}

@keyframes dokCase-b-2e4vmd91lt {
    0%, 42% { opacity: 0; transform: translateY(16px) scale(0.97); }
    54%, 100% { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes dokStep1-b-2e4vmd91lt {
    0%, 46% { background: rgba(148, 163, 184, 0.25); }
    56%, 100% { background: #1d9e75; }
}

@keyframes dokStep2-b-2e4vmd91lt {
    0%, 58% { background: rgba(148, 163, 184, 0.25); }
    68%, 100% { background: #1d9e75; }
}

@keyframes dokPilot-b-2e4vmd91lt {
    0%, 66% { opacity: 0; transform: translateY(16px); }
    76%, 100% { opacity: 1; transform: translateY(0); }
}

@keyframes dokAnswer-b-2e4vmd91lt {
    0%, 80% { opacity: 0; }
    90%, 100% { opacity: 1; }
}

@keyframes dokType-b-2e4vmd91lt {
    0%, 70% { width: 0; }
    80%, 100% { width: 100%; }
}
/* /Components/Pages/Users/UserDetailPage.razor.rz.scp.css */
/* ===== User Detail Page - Widescreen Layout ===== */

/* Profile Card */
.profile-card[b-d8uuheaqeo] {
    border-radius: 10px;
}

.profile-avatar[b-d8uuheaqeo] {
    width: 96px;
    height: 96px;
    border-radius: 50%;
    background: rgba(148, 163, 184, .22);
    color: var(--mud-palette-text-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0 auto 1rem;
    border: 1px solid rgba(148, 163, 184, .25);
    overflow: hidden;
}

.profile-avatar[b-d8uuheaqeo]  .mud-image {
    width: 100%;
    height: 100%;
}

.profile-avatar[b-d8uuheaqeo]  .mud-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile-avatar .avatar-img[b-d8uuheaqeo] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile-avatar .avatar-initials[b-d8uuheaqeo] {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--mud-palette-text-primary);
    letter-spacing: -1px;
}

.status-indicator[b-d8uuheaqeo] {
    position: absolute;
    bottom: 4px;
    right: 4px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 3px solid var(--mud-palette-surface);
}

.status-indicator.active[b-d8uuheaqeo] {
    background: var(--mud-palette-success);
}

.status-indicator.inactive[b-d8uuheaqeo] {
    background: var(--mud-palette-error);
}

.profile-info[b-d8uuheaqeo] {
    padding: 24px 20px 20px;
    text-align: center;
}

.profile-details[b-d8uuheaqeo] {
    text-align: left;
}

.profile-details[b-d8uuheaqeo]  .mud-list-item {
    padding: 8px 0;
}

/* Action Panels (Accordion) */
.action-panels[b-d8uuheaqeo] {
    border: none !important;
}

.action-panel[b-d8uuheaqeo] {
    border-radius: 8px !important;
    border: 1px solid var(--mud-palette-lines-default) !important;
    margin-bottom: 8px !important;
    overflow: hidden;
}

.action-panel[b-d8uuheaqeo]::before {
    display: none !important;
}

.action-panel[b-d8uuheaqeo]  .mud-expand-panel-header {
    padding: 12px 16px !important;
    min-height: auto !important;
}

.action-panel[b-d8uuheaqeo]  .mud-expand-panel-content {
    padding: 16px !important;
    background: var(--mud-palette-background-gray);
}

/* DOK-346 — the promoted "send password reset" row. Deliberately identical to .danger-item below: the two
   sit side by side in the same grid and are the same shape (label + hint on the left, one button on the
   right), so they must read as one family. Separate class only because "danger" is the wrong word for a
   benign action. */
.action-item[b-d8uuheaqeo] {
    border-radius: 8px;
    background: rgba(148, 163, 184, .08);
    border: 1px solid rgba(148, 163, 184, .2);
}

.action-item:hover[b-d8uuheaqeo] {
    background: rgba(148, 163, 184, .12);
}

/* Danger Zone — neutral surface; the error-coloured action buttons carry the state. */
.danger-zone[b-d8uuheaqeo] {
    border: 1px solid rgba(148, 163, 184, .2) !important;
    border-radius: 10px;
    background: var(--mud-palette-surface) !important;
}

.danger-item[b-d8uuheaqeo] {
    border-radius: 8px;
    background: rgba(148, 163, 184, .08);
    border: 1px solid rgba(148, 163, 184, .2);
}

.danger-item:hover[b-d8uuheaqeo] {
    background: rgba(148, 163, 184, .12);
}

/* Animations */
@keyframes fadeInUp-b-d8uuheaqeo {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.profile-card[b-d8uuheaqeo] {
    animation: fadeInUp-b-d8uuheaqeo 0.3s ease-out;
}

.dok-card[b-d8uuheaqeo] {
    animation: fadeInUp-b-d8uuheaqeo 0.3s ease-out 0.1s backwards;
}

/* Responsive */
@media (max-width: 960px) {
    .profile-avatar[b-d8uuheaqeo] {
        width: 80px;
        height: 80px;
    }

    .profile-avatar .avatar-initials[b-d8uuheaqeo] {
        font-size: 1.5rem;
    }

    .profile-info[b-d8uuheaqeo] {
        padding-top: 20px;
    }
}
/* /Components/Shared/DokPasswordRequirements.razor.rz.scp.css */
/* DOK-814 — the live password requirement checklist.

   Colours are stated literally rather than through --dok-* tokens because the screens that host this
   component (reset password, accept invitation) are the anonymous auth pages, which paint their own
   fixed light palette in ResetPassword.razor.css / AcceptInvitation.razor.css and never see the tenant
   theme. Matching that palette here keeps the panel from being the only themed thing on the card.

   Red/green is not the only signal: the ::before glyph differs in shape and .dok-pwreq__state carries
   the state in words for assistive technology. */

.dok-pwreq[b-ovi55nhfl6] {
    margin: 0;
    padding: 0.75rem 0.875rem;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    background-color: #fafafa;
}

.dok-pwreq__title[b-ovi55nhfl6] {
    margin: 0 0 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    color: #1a1a1a;
}

.dok-pwreq__list[b-ovi55nhfl6] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.dok-pwreq__item[b-ovi55nhfl6] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.75rem;
    line-height: 1.4;
}

.dok-pwreq__icon[b-ovi55nhfl6] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 0.9rem;
    height: 1.05rem;
}

.dok-pwreq__icon svg[b-ovi55nhfl6] {
    width: 0.9rem;
    height: 0.9rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.dok-pwreq__text[b-ovi55nhfl6] {
    min-width: 0;
}

.dok-pwreq__item.is-pending[b-ovi55nhfl6] {
    color: #dc2626;
}

.dok-pwreq__item.is-met[b-ovi55nhfl6] {
    color: #15803d;
}

/* Present to a screen reader, absent on screen: the icon and the colour already say it there.
   Not display:none — that would remove it from the accessibility tree as well. */
.dok-pwreq__state[b-ovi55nhfl6] {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

@media (prefers-contrast: more) {
    .dok-pwreq__item.is-pending[b-ovi55nhfl6] {
        color: #a30d0d;
    }

    .dok-pwreq__item.is-met[b-ovi55nhfl6] {
        color: #0f5d2c;
    }
}
/* /Components/WorkItems/Camera/CameraCaptureDialog.razor.rz.scp.css */
.dok-camera[b-k8v1rwq5mh] {
    min-height: 28rem;
}

.dok-camera__preview[b-k8v1rwq5mh] {
    position: relative;
    display: grid;
    place-items: center;
    min-height: clamp(22rem, 58vh, 42rem);
    overflow: hidden;
    border-radius: 22px;
    background:
        radial-gradient(circle at 20% 18%, rgba(var(--mud-palette-primary-rgb), 0.18), transparent 32%),
        linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #111827 100%);
    border: 1px solid rgba(148, 163, 184, 0.32);
}

.dok-camera__loading[b-k8v1rwq5mh] {
    position: absolute;
    z-index: 2;
    display: grid;
    place-items: center;
    gap: 0.8rem;
    color: #fff;
}

.dok-camera__video[b-k8v1rwq5mh],
.dok-camera__image[b-k8v1rwq5mh] {
    width: 100%;
    height: 100%;
    min-height: clamp(22rem, 58vh, 42rem);
    object-fit: cover;
}

.dok-camera__video.is-hidden[b-k8v1rwq5mh] {
    display: none;
}

.dok-camera__actions[b-k8v1rwq5mh] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 1rem;
    width: 100%;
}

.dok-camera__actions > :last-child[b-k8v1rwq5mh] {
    justify-self: end;
}

.dok-camera__shutter[b-k8v1rwq5mh] {
    width: 4.4rem;
    height: 4.4rem;
    border-radius: 999px;
    box-shadow: 0 18px 34px rgba(var(--mud-palette-primary-rgb), 0.32);
}

.dok-camera__actions-spacer[b-k8v1rwq5mh] {
    display: block;
}

@media (max-width: 640px) {
    .dok-camera__actions[b-k8v1rwq5mh] {
        grid-template-columns: auto auto auto;
    }

    .dok-camera__preview[b-k8v1rwq5mh],
    .dok-camera__video[b-k8v1rwq5mh],
    .dok-camera__image[b-k8v1rwq5mh] {
        min-height: 20rem;
    }
}
/* /Components/WorkItems/Cards/DokStatCard.razor.rz.scp.css */
.dok-stat-card-wrapper[b-63660nw8jh] {
    height: 100%;
}

.dok-stat-card-wrapper[b-63660nw8jh]  .dok-stat-card {
    display: grid;
    grid-template-columns: 2.85rem minmax(0, 1fr);
    align-items: center;
    gap: .85rem;
    min-height: 6.35rem;
    height: 100%;
    padding: 1rem;
    border: 1px solid rgba(148, 163, 184, .18);
    border-radius: 8px;
    background: var(--mud-palette-surface);
    box-shadow: 0 18px 44px rgba(15, 23, 42, .055);
}

.dok-stat-card-wrapper[b-63660nw8jh]  .dok-stat-card__icon {
    display: grid;
    place-items: center;
    width: 2.85rem;
    height: 2.85rem;
    border-radius: 8px;
    color: var(--mud-palette-primary);
    background: rgba(var(--mud-palette-primary-rgb), .10);
}

.dok-stat-card-wrapper[b-63660nw8jh]  .dok-stat-card--success .dok-stat-card__icon {
    color: var(--mud-palette-success);
    background: rgba(var(--mud-palette-success-rgb), .13);
}

.dok-stat-card-wrapper[b-63660nw8jh]  .dok-stat-card--error .dok-stat-card__icon {
    color: var(--mud-palette-error);
    background: rgba(var(--mud-palette-error-rgb), .11);
}

.dok-stat-card-wrapper[b-63660nw8jh]  .dok-stat-card--warning .dok-stat-card__icon {
    color: var(--mud-palette-warning);
    background: rgba(var(--mud-palette-warning-rgb), .14);
}

.dok-stat-card-wrapper[b-63660nw8jh]  .dok-stat-card--info .dok-stat-card__icon {
    color: var(--mud-palette-info);
    background: rgba(var(--mud-palette-info-rgb), .12);
}

.dok-stat-card-wrapper[b-63660nw8jh]  .dok-stat-card--secondary .dok-stat-card__icon {
    color: var(--mud-palette-secondary);
    background: rgba(var(--mud-palette-secondary-rgb), .11);
}

.dok-stat-card-wrapper[b-63660nw8jh]  .dok-stat-card__label {
    color: var(--mud-palette-text-primary);
    font-size: .86rem;
    font-weight: 850;
}

.dok-stat-card-wrapper[b-63660nw8jh]  .dok-stat-card__value {
    margin-top: .25rem;
    color: var(--mud-palette-text-primary);
    font-size: 1.85rem;
    font-weight: 950;
    line-height: 1;
}
/* /Components/WorkItems/Cards/DokWorkItemCard.razor.rz.scp.css */
/* DokTicketCard Scoped Styles */
.dok-ticket-card-wrapper[b-ggl1ngzaoa]  .dok-ticket-card {
    border-radius: 12px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.dok-ticket-card-wrapper[b-ggl1ngzaoa]  .dok-ticket-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
}
/* /Components/WorkItems/Scanning/ScannedDocumentReviewDialog.razor.rz.scp.css */
.dok-scan-review-dialog[b-l705hrj7l1]  .mud-dialog {
    border-radius: 28px;
}

.dok-scan-review[b-l705hrj7l1] {
    width: min(1120px, 92vw);
}

.dok-scan-review__header[b-l705hrj7l1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.dok-scan-review__title[b-l705hrj7l1] {
    font-weight: 950;
    letter-spacing: -0.035em;
}

.dok-scan-review__layout[b-l705hrj7l1] {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 1rem;
    min-height: 560px;
}

.dok-scan-review__sidebar[b-l705hrj7l1] {
    border-radius: 22px;
    background: #f8fafc;
    border: 1px solid var(--dok-border-subtle);
    padding: 0.85rem;
    min-height: 0;
}

.dok-scan-review__sidebar-title[b-l705hrj7l1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 850;
    margin-bottom: 0.75rem;
}

.dok-scan-review__thumbs[b-l705hrj7l1] {
    display: grid;
    gap: 0.65rem;
    max-height: 500px;
    overflow: auto;
    padding-right: 0.2rem;
}

.dok-scan-review__thumb[b-l705hrj7l1] {
    border: 1px solid rgba(148, 163, 184, 0.25);
    border-radius: 16px;
    background: #fff;
    padding: 0.55rem;
    text-align: left;
    cursor: pointer;
    transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.dok-scan-review__thumb img[b-l705hrj7l1] {
    width: 100%;
    border-radius: 12px;
    display: block;
}

.dok-scan-review__thumb span[b-l705hrj7l1] {
    display: block;
    margin-top: 0.35rem;
    font-size: 0.78rem;
    font-weight: 800;
    color: #475569;
}

.dok-scan-review__thumb.is-selected[b-l705hrj7l1] {
    border-color: #7c3aed;
    box-shadow: 0 12px 32px rgba(124, 58, 237, 0.16);
    transform: translateY(-1px);
}

.dok-scan-review__thumb.is-deleted[b-l705hrj7l1] {
    opacity: 0.42;
}

.dok-scan-review__main[b-l705hrj7l1] {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    border-radius: 24px;
    background:
        radial-gradient(circle at 50% 0%, rgba(124, 58, 237, 0.12), transparent 34%),
        linear-gradient(180deg, #f8fafc, #eef2ff);
    border: 1px solid rgba(124, 58, 237, 0.11);
    overflow: hidden;
}

.dok-scan-review__toolbar[b-l705hrj7l1] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.65rem;
    border-bottom: 1px solid var(--dok-border-subtle);
    background: rgba(255, 255, 255, 0.72);
    backdrop-filter: blur(12px);
}

.dok-scan-review__toolbar-spacer[b-l705hrj7l1] {
    flex: 1;
}

.dok-scan-review__zoom[b-l705hrj7l1] {
    min-width: 3rem;
    text-align: center;
    font-weight: 850;
    color: #475569;
}

.dok-scan-review__preview-shell[b-l705hrj7l1] {
    display: grid;
    place-items: center;
    min-height: 0;
    overflow: auto;
    padding: 2rem;
}

.dok-scan-review__page-frame[b-l705hrj7l1] {
    width: 420px;
    min-height: 594px;
    display: grid;
    place-items: center;
    transform-origin: center top;
    transition: transform 0.16s ease;
}

.dok-scan-review__page-frame img[b-l705hrj7l1] {
    width: 420px;
    max-width: 100%;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 30px 80px rgba(15, 23, 42, 0.24);
    transition: transform 0.16s ease;
}

.dok-scan-review__pager[b-l705hrj7l1] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 0.75rem;
    font-weight: 850;
    color: #475569;
}

.dok-scan-review__filename[b-l705hrj7l1] {
    margin-top: 1rem;
}

@media (max-width: 860px) {
    .dok-scan-review__layout[b-l705hrj7l1] {
        grid-template-columns: 1fr;
    }

    .dok-scan-review__thumbs[b-l705hrj7l1] {
        grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
        max-height: 220px;
    }

    .dok-scan-review__toolbar[b-l705hrj7l1] {
        flex-wrap: wrap;
    }
}
/* /Components/WorkItems/Scanning/ScanProgressDialog.razor.rz.scp.css */
.dok-scan-dialog[b-j3leietdfa]  .mud-dialog {
    border-radius: 28px;
}

.dok-scan-progress[b-j3leietdfa] {
    width: min(760px, 88vw);
    padding: 0.35rem;
}

.dok-scan-progress__header[b-j3leietdfa],
.dok-scan-progress__device-row[b-j3leietdfa] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.dok-scan-progress__title[b-j3leietdfa] {
    font-weight: 900;
    letter-spacing: -0.03em;
}

.dok-scan-progress__subtitle[b-j3leietdfa] {
    color: var(--mud-palette-text-secondary);
    font-weight: 650;
}

.dok-scan-progress__device-row[b-j3leietdfa] {
    margin-top: 1.1rem;
    flex-wrap: wrap;
}

.dok-scan-progress__device-pill[b-j3leietdfa] {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.55rem 0.75rem;
    border-radius: 999px;
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
    color: var(--mud-palette-primary);
    font-weight: 800;
}

.dok-scanner-animation[b-j3leietdfa] {
    position: relative;
    height: 310px;
    margin: 1.6rem auto 1rem;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 24px;
    background:
        radial-gradient(circle at 50% 10%, rgba(var(--mud-palette-primary-rgb), 0.16), transparent 34%),
        linear-gradient(180deg, #f8fafc 0%, #eef2ff 100%);
    box-shadow: inset 0 0 0 1px rgba(124, 58, 237, 0.08);
}

.dok-scanner-animation__body[b-j3leietdfa] {
    position: absolute;
    bottom: 58px;
    width: 390px;
    height: 128px;
    border-radius: 28px 28px 34px 34px;
    background: linear-gradient(180deg, #27243a, #171525);
    box-shadow: 0 30px 70px rgba(17, 24, 39, 0.28);
}

.dok-scanner-animation__slot[b-j3leietdfa] {
    position: absolute;
    left: 44px;
    right: 44px;
    top: 34px;
    height: 16px;
    border-radius: 999px;
    background: #090817;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.dok-scanner-animation__light[b-j3leietdfa] {
    position: absolute;
    left: 58px;
    right: 58px;
    top: 54px;
    height: 6px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, #a78bfa, #22d3ee, transparent);
    opacity: 0.78;
    filter: blur(0.3px);
}

.is-scanning .dok-scanner-animation__light[b-j3leietdfa] {
    animation: scan-light-b-j3leietdfa 1.4s ease-in-out infinite;
}

.dok-scanner-animation__panel[b-j3leietdfa] {
    position: absolute;
    right: 42px;
    bottom: 28px;
    display: flex;
    gap: 0.45rem;
}

.dok-scanner-animation__panel span[b-j3leietdfa] {
    width: 11px;
    height: 11px;
    border-radius: 999px;
    background: #7c3aed;
    box-shadow: 0 0 18px rgba(124, 58, 237, 0.8);
}

.dok-scanner-animation__paper[b-j3leietdfa] {
    position: absolute;
    top: 30px;
    width: 250px;
    height: 310px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.16);
    border: 1px solid rgba(148, 163, 184, 0.25);
    transform: translateY(-48px);
}

.is-scanning .dok-scanner-animation__paper[b-j3leietdfa] {
    animation: paper-feed-b-j3leietdfa 2.1s cubic-bezier(.55, .05, .2, .99) infinite;
}

.dok-scanner-animation__paper div[b-j3leietdfa] {
    height: 8px;
    margin: 34px 34px 0;
    border-radius: 999px;
    background: #dbe2ea;
}

.dok-scanner-animation__paper div:first-child[b-j3leietdfa] {
    width: 112px;
    background: #7c3aed;
}

.dok-scan-progress__progress-copy[b-j3leietdfa] {
    text-align: center;
}

.dok-scan-progress__bar[b-j3leietdfa] {
    margin-top: 1rem;
}

.dok-scan-progress__question[b-j3leietdfa] {
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 18px;
    background: rgba(var(--mud-palette-primary-rgb), 0.06);
    border: 1px solid rgba(var(--mud-palette-primary-rgb), 0.16);
}

@keyframes paper-feed-b-j3leietdfa {
    0% { transform: translateY(-80px); }
    48% { transform: translateY(34px); }
    100% { transform: translateY(116px); }
}

@keyframes scan-light-b-j3leietdfa {
    0%, 100% { transform: translateX(-24px); opacity: 0.5; }
    50% { transform: translateX(24px); opacity: 1; }
}
/* /Components/WorkItems/Sections/DokAttachmentsSection.razor.rz.scp.css */
/* DOK-344 — this component only ever renders INSIDE a document accordion, which already draws a
   card. Its own border, radius and gradient made a card inside a card: four nested wrappers and
   five hairlines before the reader reached the first file name. The chrome is gone; the content
   is what should be visible. */
.dok-file-manager[b-ax6dfwdnfu] {
    width: 100%;
    overflow: hidden;
    background: transparent;
}

.dok-file-manager__content[b-ax6dfwdnfu] {
    width: 100%;
    padding: 0 !important;
}

.dok-file-manager__picker-host[b-ax6dfwdnfu] {
    display: none;
}

.dok-file-manager__dropzone[b-ax6dfwdnfu] {
    position: relative;
    width: 100%;
    min-height: 100%;
    background: var(--mud-palette-surface);
    transition: background-color 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
}

.dok-file-manager__dropzone[data-disabled="true"][b-ax6dfwdnfu] {
    opacity: 0.82;
}

.dok-file-manager__dropzone--dragging[b-ax6dfwdnfu] {
    background:
        linear-gradient(180deg, rgba(var(--mud-palette-primary-rgb), 0.07), rgba(var(--mud-palette-surface-rgb), 0.98));
    box-shadow: inset 0 0 0 2px rgba(var(--mud-palette-primary-rgb), 0.55),
        inset 0 0 0 6px rgba(var(--mud-palette-primary-rgb), 0.06);
}

.dok-file-manager__dropzone-surface[b-ax6dfwdnfu] {
    width: 100%;
    overflow: hidden;
    border-radius: inherit;
    background: transparent;
}

.dok-file-manager__toolbar[b-ax6dfwdnfu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-height: 3.55rem;
    padding: 0.58rem 0.72rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.15);
    /* DOK-344 — the tint used to be keyed to --mud-palette-background, which in light mode is
       almost the same as surface: the toolbar only looked separated in dark mode. A neutral slate
       wash reads in both. */
    background:
        linear-gradient(90deg, rgba(var(--mud-palette-primary-rgb), 0.04), transparent 55%),
        rgba(148, 163, 184, 0.07);
}

/* DOK-344 — "text-right" is not a class this app ships, so the Size and Actions columns were
   never actually right-aligned; the numbers wandered under a left-aligned header. */
.dok-file-manager__table .text-right[b-ax6dfwdnfu] { text-align: right; }

/* DOK-368 — feedback while the selected files are read and sent. Sits between the toolbar and the
   table so it appears exactly where the new rows are about to land. */
.dok-file-manager__receiving[b-ax6dfwdnfu] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.7rem 0.72rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.15);
    background: rgba(var(--mud-palette-primary-rgb), 0.05);
    font-size: 0.86rem;
    color: var(--mud-palette-text-secondary);
}

.dok-file-manager__toolbar-copy[b-ax6dfwdnfu] {
    display: flex;
    align-items: center;
    gap: 0.58rem;
    min-width: 0;
}

.dok-file-manager__toolbar-icon[b-ax6dfwdnfu] {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    border-radius: 8px;
    background: rgba(var(--mud-palette-primary-rgb), 0.1);
    color: var(--mud-palette-primary);
}

.dok-file-manager__toolbar-text[b-ax6dfwdnfu] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    line-height: 1.2;
}

.dok-file-manager__toolbar-text strong[b-ax6dfwdnfu] {
    overflow: hidden;
    color: var(--mud-palette-text-primary);
    font-size: 0.82rem;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dok-file-manager__toolbar-text span[b-ax6dfwdnfu] {
    margin-top: 0.12rem;
    color: var(--mud-palette-text-secondary);
    font-size: 0.68rem;
    font-weight: 600;
}

.dok-file-manager__toolbar-actions[b-ax6dfwdnfu] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.2rem;
}

.dok-file-manager__toolbar-actions[b-ax6dfwdnfu]  .mud-button-root {
    min-width: 0;
    min-height: 2rem;
    padding: 0.28rem 0.58rem;
    border-radius: 8px;
    font-size: 0.72rem;
}

.dok-file-manager__upload-button[b-ax6dfwdnfu] {
    white-space: nowrap;
}

.dok-file-manager__table[b-ax6dfwdnfu] {
    width: 100%;
}

.dok-file-manager__table[b-ax6dfwdnfu]  .mud-table-container,
.dok-file-manager__table[b-ax6dfwdnfu]  table {
    width: 100%;
}

.dok-file-manager__table[b-ax6dfwdnfu]  table {
    border-collapse: collapse;
}

.dok-file-manager__table[b-ax6dfwdnfu]  .mud-table-root {
    border: 0;
    background: transparent;
    box-shadow: none;
}

.dok-file-manager__table[b-ax6dfwdnfu]  .mud-table-head .mud-table-cell {
    padding-top: 0.48rem;
    padding-bottom: 0.48rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.15);
    background: rgba(var(--mud-palette-background-rgb), 0.14);
    color: var(--mud-palette-text-secondary);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.025em;
    text-transform: uppercase;
}

.dok-file-manager__table[b-ax6dfwdnfu]  .mud-table-body .mud-table-cell {
    padding-top: 0.58rem;
    padding-bottom: 0.58rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.1);
}

.dok-file-manager__table[b-ax6dfwdnfu]  .mud-table-row {
    transition: background-color 0.16s ease;
}

/* DOK-344 — 3.5% is below the threshold where a hover reads as feedback; on a light surface it was
   indistinguishable from no hover at all. Doubled, with a primary edge so the eye can also find
   which row it is on when scanning a long list. */
.dok-file-manager__table[b-ax6dfwdnfu]  .mud-table-row:hover {
    background: rgba(var(--mud-palette-primary-rgb), 0.07);
    box-shadow: inset 2px 0 0 rgba(var(--mud-palette-primary-rgb), 0.45);
}

.dok-file-manager__file[b-ax6dfwdnfu] {
    display: flex;
    align-items: center;
    gap: 0.52rem;
    min-width: 0;
}

.dok-file-manager__detail-toggle[b-ax6dfwdnfu],
.dok-file-manager__detail-toggle-spacer[b-ax6dfwdnfu] {
    width: 1.75rem;
    height: 1.75rem;
    flex: 0 0 auto;
}

.dok-file-manager__detail-toggle[b-ax6dfwdnfu] {
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: var(--mud-palette-text-secondary);
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.dok-file-manager__detail-toggle:hover[b-ax6dfwdnfu] {
    background: rgba(var(--mud-palette-primary-rgb), 0.09);
    color: var(--mud-palette-primary);
}

.dok-file-manager__detail-toggle:focus-visible[b-ax6dfwdnfu] {
    outline: 0;
    box-shadow: 0 0 0 2px rgba(var(--mud-palette-primary-rgb), 0.32);
}

.dok-file-manager__detail-toggle-spacer[b-ax6dfwdnfu] {
    display: block;
}

/* DOK-344 — the icon glyph already differed per file type, but every tile was the same blue, so a
   list of ten files read as ten identical blue squares and the glyph did all the work at 1rem.
   Colouring the tile by family makes the type legible before the name is read. */
.dok-file-manager__file-icon[b-ax6dfwdnfu] {
    display: grid;
    place-items: center;
    width: 2.1rem;
    height: 2.1rem;
    flex: 0 0 auto;
    border-radius: 8px;
    background: rgba(148, 163, 184, 0.14);
    color: var(--mud-palette-text-secondary);
}

.dok-file-manager__file-icon--pdf[b-ax6dfwdnfu] { background: rgba(239, 68, 68, 0.12); color: #dc2626; }
.dok-file-manager__file-icon--sheet[b-ax6dfwdnfu] { background: rgba(22, 163, 74, 0.12); color: #16a34a; }
.dok-file-manager__file-icon--doc[b-ax6dfwdnfu] { background: rgba(37, 99, 235, 0.12); color: #2563eb; }
.dok-file-manager__file-icon--image[b-ax6dfwdnfu] { background: rgba(168, 85, 247, 0.12); color: #a855f7; }
.dok-file-manager__file-icon--media[b-ax6dfwdnfu] { background: rgba(234, 88, 12, 0.12); color: #ea580c; }
.dok-file-manager__file-icon--archive[b-ax6dfwdnfu] { background: rgba(202, 138, 4, 0.14); color: #ca8a04; }

.dok-file-manager__file-copy[b-ax6dfwdnfu] {
    min-width: 0;
}

.dok-file-manager__file-copy[b-ax6dfwdnfu]  .mud-typography {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dok-file-manager__file-copy span[b-ax6dfwdnfu] {
    display: block;
    margin-top: 0.08rem;
    color: var(--mud-palette-text-secondary);
    font-size: 0.69rem;
    font-weight: 650;
}

.dok-file-manager__pending-chip[b-ax6dfwdnfu] {
    margin-top: 0.25rem;
}

/* DOK-236 — subtle AI pipeline indicator; secondary to the document's operational status. */
.dok-file-manager__file-copy span.dok-file-manager__pipeline[b-ax6dfwdnfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin-top: 0.18rem;
    padding: 0.06rem 0.4rem;
    border-radius: 999px;
    font-size: 0.64rem;
    font-weight: 700;
}

.dok-file-manager__file-copy span.dok-file-manager__pipeline-label[b-ax6dfwdnfu] {
    display: inline;
    margin-top: 0;
    color: inherit;
    font-size: inherit;
}

.dok-file-manager__pipeline--muted[b-ax6dfwdnfu] {
    background: rgba(148, 163, 184, 0.14);
    color: var(--mud-palette-text-secondary);
}

.dok-file-manager__pipeline--failed[b-ax6dfwdnfu] {
    background: rgba(var(--mud-palette-error-rgb), 0.1);
    color: var(--mud-palette-error);
}

.dok-file-manager__pipeline .mud-icon-root[b-ax6dfwdnfu] {
    font-size: 0.85rem;
}

.dok-file-manager__modified[b-ax6dfwdnfu] {
    color: var(--mud-palette-text-secondary);
    font-size: 0.76rem;
    font-weight: 650;
}

.dok-file-manager__table[b-ax6dfwdnfu]  .dok-file-manager__details-row,
.dok-file-manager__table[b-ax6dfwdnfu]  .dok-file-manager__details-row:hover {
    background: rgba(var(--mud-palette-primary-rgb), 0.025);
}

.dok-file-manager__table[b-ax6dfwdnfu]  .dok-file-manager__details-cell {
    padding: 0 !important;
    border-bottom: 1px solid rgba(148, 163, 184, 0.13);
}

.dok-file-manager__details-content[b-ax6dfwdnfu] {
    margin: 0 0.8rem 0.72rem 3.95rem;
    padding: 0.72rem 0.82rem;
    border-left: 2px solid rgba(var(--mud-palette-primary-rgb), 0.24);
    border-radius: 0 8px 8px 0;
    background: rgba(var(--mud-palette-background-rgb), 0.34);
}

/* DOK-77 — the comment icon sits beside the overflow menu, not inside it, so the badge is readable
   without opening anything. The row keeps the cell right-aligned as it was. */
.dok-file-manager__row-actions[b-ax6dfwdnfu] {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.1rem;
}

.dok-file-manager__comments[b-ax6dfwdnfu] {
    margin: 0 0.8rem 0.72rem 3.95rem;
    padding: 0.72rem 0.82rem;
    border-left: 2px solid rgba(var(--mud-palette-primary-rgb), 0.24);
    border-radius: 0 8px 8px 0;
    background: rgba(var(--mud-palette-background-rgb), 0.34);
}

.dok-file-manager__comments-head[b-ax6dfwdnfu] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.5rem;
    color: var(--mud-palette-text-secondary);
    font-size: 0.78rem;
    font-weight: 700;
}

.dok-file-manager__comments-empty[b-ax6dfwdnfu],
.dok-file-manager__comments-readonly[b-ax6dfwdnfu] {
    display: block;
    color: var(--mud-palette-text-secondary);
}

.dok-file-manager__comments-add-col[b-ax6dfwdnfu] {
    display: flex;
    align-items: center;
}

.dok-file-manager__loading-state[b-ax6dfwdnfu],
.dok-file-manager__empty-state[b-ax6dfwdnfu] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 11rem;
    color: var(--mud-palette-text-secondary);
}

.dok-file-manager__loading-state[b-ax6dfwdnfu] {
    gap: 0.65rem;
    font-size: 0.82rem;
    font-weight: 650;
}

.dok-file-manager__empty-state[b-ax6dfwdnfu] {
    flex-direction: column;
    gap: 0.42rem;
    padding: 1.5rem 1rem;
    text-align: center;
}

.dok-file-manager__empty-icon[b-ax6dfwdnfu] {
    display: grid;
    place-items: center;
    width: 3.25rem;
    height: 3.25rem;
    margin-bottom: 0.18rem;
    border-radius: 50%;
    background: rgba(var(--mud-palette-primary-rgb), 0.09);
    color: var(--mud-palette-primary);
    box-shadow: 0 0 0 7px rgba(var(--mud-palette-primary-rgb), 0.035);
}

.dok-file-manager__table[b-ax6dfwdnfu]  .mud-table-empty-row,
.dok-file-manager__table[b-ax6dfwdnfu]  .mud-table-loading {
    height: auto;
}

@media (max-width: 720px) {
    .dok-file-manager__toolbar[b-ax6dfwdnfu] {
        align-items: flex-start;
        flex-direction: column;
        padding: 0.68rem;
    }

    .dok-file-manager__toolbar-copy[b-ax6dfwdnfu],
    .dok-file-manager__toolbar-actions[b-ax6dfwdnfu] {
        width: 100%;
    }

    .dok-file-manager__toolbar-actions[b-ax6dfwdnfu] {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.35rem;
    }

    .dok-file-manager__toolbar-actions[b-ax6dfwdnfu]  .mud-tooltip-root,
    .dok-file-manager__toolbar-actions[b-ax6dfwdnfu]  .mud-button-root {
        width: 100%;
    }

    .dok-file-manager__details-content[b-ax6dfwdnfu] {
        margin-right: 0.55rem;
        margin-left: 0.55rem;
    }
}

@media (max-width: 480px) {
    .dok-file-manager__toolbar-actions[b-ax6dfwdnfu]  .mud-button-root {
        padding-right: 0.35rem;
        padding-left: 0.35rem;
        font-size: 0.67rem;
    }

    .dok-file-manager__detail-toggle-spacer[b-ax6dfwdnfu] {
        display: none;
    }

    .dok-file-manager__empty-state[b-ax6dfwdnfu] {
        min-height: 9.5rem;
    }
}
/* /Components/WorkItems/Sections/DokFilePreviewDialog.razor.rz.scp.css */
/* DOK-348 — attachment preview dialog content. The dialog CHROME (radius, content padding) is
   styled from the global dok-shell.css: the Class lands on MudBlazor's own .mud-dialog root,
   which never carries this component's scope attribute, so ::deep rules here can never match
   (the repo's documented MudBlazor scoped-CSS gotcha). Only scoped inner-content rules live here. */
.dok-file-preview__title[b-zybb9aj1dv] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-width: 0;
}

.dok-file-preview__title-copy[b-zybb9aj1dv] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.dok-file-preview__title-name[b-zybb9aj1dv] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dok-file-preview__title-meta[b-zybb9aj1dv] {
    color: var(--mud-palette-text-secondary);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.dok-file-preview[b-zybb9aj1dv] {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    width: min(1120px, 92vw);
    min-height: 60vh;
}

.dok-file-preview__state[b-zybb9aj1dv] {
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    min-height: 20rem;
    color: var(--mud-palette-text-secondary);
}

.dok-file-preview__state--empty[b-zybb9aj1dv] {
    flex-direction: column;
    gap: 0.35rem;
    border: 1px dashed rgba(148, 163, 184, 0.4);
    border-radius: 12px;
    background: var(--mud-palette-background-gray);
}

.dok-file-preview__image-wrap[b-zybb9aj1dv] {
    display: grid;
    place-items: center;
    overflow: auto;
    max-height: 72vh;
    border-radius: 12px;
    background: var(--mud-palette-background-gray);
}

.dok-file-preview__image[b-zybb9aj1dv] {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

/* PDF (native viewer) and the sandboxed docx/xlsx HTML both render in this frame. White
   background so converted Office HTML (dark text) stays readable in dark mode too. */
.dok-file-preview__frame[b-zybb9aj1dv] {
    width: 100%;
    height: min(72vh, 56rem);
    border: 0;
    border-radius: 12px;
    background: #ffffff;
}

.dok-file-preview__text-wrap[b-zybb9aj1dv] {
    overflow: auto;
    max-height: 68vh;
    border: 1px solid rgba(148, 163, 184, 0.25);
    border-radius: 12px;
    background: var(--mud-palette-background-gray);
}

.dok-file-preview__text[b-zybb9aj1dv] {
    margin: 0;
    padding: 1rem 1.15rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.82rem;
    line-height: 1.5;
    white-space: pre-wrap;
    word-break: break-word;
}

.dok-file-preview__truncated[b-zybb9aj1dv] {
    color: var(--mud-palette-text-secondary);
    font-size: 0.78rem;
    font-style: italic;
}
