/* /Components/Exemplos/Pages/Chart.razor.rz.scp.css */
.chart-tooltip[b-q5jfbn5bem] {
    margin: 0.5rem;
}

.chart-tooltip-title[b-q5jfbn5bem] {
    text-align: center;
    font-weight: var(--dxds-font-weight-title-strong);
}
/* /Components/Exemplos/Pages/Counter.razor.rz.scp.css */
.counter-block[b-ddhryvfbk2] {
    align-items: center;
    border-radius: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    height: 17rem;
    justify-content: center;
    padding: 2.5rem 1.5rem 1.5rem;
    width: 16.875rem;
    border: 1px solid var(--dxds-color-border-neutral-default-rest);
}

.counter-block .counter-content[b-ddhryvfbk2] {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.counter-block .counter-count[b-ddhryvfbk2] {
    font-size: 7.5rem;
    font-weight: 400;
    line-height: 7.75rem;
}
/* /Components/Exemplos/Pages/Index/Index.razor.rz.scp.css */
[b-q3adyq3zg7] .index-gridlayout {
    container-type: inline-size;
    height: auto;
    margin-top: auto;
    margin-bottom: auto;
    padding-bottom: 9rem;
}

[b-q3adyq3zg7] .title {
    padding-bottom: 3rem;
    text-align: center;
}

[b-q3adyq3zg7] .tiles {
    --tile-column-count: 4;

    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(var(--tile-column-count), max-content);
    justify-content: center;

    @container (max-width: 60.5rem) {
        --tile-column-count: 3;
    }
    @container (max-width: 45.125rem) {
        --tile-column-count: 2;
    }
    @container (max-width: 29.75rem) {
        --tile-column-count: 1;
    }
}
/* /Components/Exemplos/Pages/Index/IndexTile.razor.rz.scp.css */
.tile[b-nlkh2wlf67] {
    border-radius: 0.75rem;
    height: 7.5rem;
    transition: box-shadow 0.2s;
    width: 14.375rem;
    border: 1px solid var(--dxds-color-border-neutral-default-rest);
}

.tile:hover[b-nlkh2wlf67] {
    box-shadow: 0 4px 8px 0 rgba(170, 170, 170, 0.24), 0 0 2px 0 rgba(170, 170, 170, 0.2);
}

.tile[b-nlkh2wlf67]  > a {
    text-decoration: none;
}

[b-nlkh2wlf67] .tile-content {
    padding: 1rem;
}

[b-nlkh2wlf67] .tile-icon {
    border-radius: 0.375rem;
    height: 2.75rem;
    padding: 0.75rem;
    width: 2.75rem;
    border: 1px solid var(--dxds-color-border-neutral-default-rest);
}

[b-nlkh2wlf67] .tile-title {
    align-self: center;
    color: var(--dxds-color-content-neutral-default-rest);
    font-size: var(--dxds-font-size-base-md);
    font-weight: var(--dxds-font-weight-base-strong);
    letter-spacing: var(--dxds-letter-spacing-base-md);
    line-height: var(--dxds-line-height-base-md);
}

[b-nlkh2wlf67] .tile-description {
    color: var(--dxds-color-content-neutral-subdued-rest);
    font-size: var(--dxds-font-size-base-sm);
    font-weight: var(--dxds-font-weight-base-default);
    letter-spacing: var(--dxds-letter-spacing-base-sm);
    line-height: var(--dxds-line-height-base-sm);
}
/* /Components/Layout/Drawer.razor.rz.scp.css */
.drawer-container[b-u5qealvlzy] {
    height: 100%;
}

.navigation-drawer-shading[b-u5qealvlzy] {
    height: 100%;
    position: absolute;
    transition: ease 300ms;
    transition-property: opacity, visibility;
    visibility: visible;
    width: 100%;
    z-index: 99;
    background-color: var(--dxds-color-surface-backdrop-default-rest);
}

.navigation-drawer.mobile.panel-closed .navigation-drawer-shading[b-u5qealvlzy] {
    opacity: 0;
    visibility: hidden;
}

[b-u5qealvlzy] .navigation-drawer > .dxbl-drawer-panel {
    display: flex;
}

[b-u5qealvlzy] .navigation-drawer.mobile > .dxbl-drawer-panel {
    display: none;
}

.navigation-drawer-shading[b-u5qealvlzy] {
    display: none;
}

[b-u5qealvlzy] .panel-open:not(.mobile) .nav-buttons-container .menu-button {
    display: none;
}

@media (max-width: 768px) {
    [b-u5qealvlzy] .navigation-drawer > .dxbl-drawer-panel {
        display: none;
    }

    [b-u5qealvlzy] .navigation-drawer.mobile > .dxbl-drawer-panel {
        display: flex;
    }

    .navigation-drawer-shading[b-u5qealvlzy] {
        display: block;
    }

    [b-u5qealvlzy] .panel-open:not(.mobile) .nav-buttons-container .menu-button {
        display: flex;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* ==========================================================
   MainLayout — scoped overrides
   (global co-* styles estao em wwwroot/css/components.css)
   ========================================================== */

/* Garante que o header nao obscurece foco de teclado */
.co-header[b-1ey3vf8crm] { isolation: isolate; }

/* Scroll na area principal sem afectar o header sticky */
.co-main[b-1ey3vf8crm] { overflow-y: auto; }

/* Dropdown do utilizador */
.co-user-wrap[b-1ey3vf8crm] {
    position: relative;
}

.co-user-chevron[b-1ey3vf8crm] {
    transition: transform .15s ease;
}

.co-user-wrap.is-open .co-user-chevron[b-1ey3vf8crm] {
    transform: rotate(180deg);
}

.co-user-dropdown[b-1ey3vf8crm] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 200px;
    background: var(--surface, #fff);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: var(--r-md, 8px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.12);
    padding: .35rem;
    z-index: 200;
    color: var(--text, #111827);
}

.co-user-dd-item[b-1ey3vf8crm] {
    display: flex;
    align-items: center;
    gap: 9px;
    width: 100%;
    padding: .45rem .65rem;
    border: 0;
    border-radius: var(--r-sm, 5px);
    font-size: 13px;
    font-family: var(--co-font-sans);
    color: var(--text, #111827);
    background: transparent;
    text-decoration: none;
    cursor: pointer;
    text-align: left;
    transition: background .1s ease;
}

.co-user-dd-item:hover[b-1ey3vf8crm] {
    background: var(--surface-hover, #f3f4f6);
}

.co-user-dd-sep[b-1ey3vf8crm] {
    height: 1px;
    background: var(--border, #e5e7eb);
    margin: .3rem .35rem;
}

.co-user-dd-logout[b-1ey3vf8crm] {
    color: oklch(0.45 0.18 25);
}

.co-user-dd-logout:hover[b-1ey3vf8crm] {
    background: oklch(0.96 0.03 25);
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* ==========================================================
   NavMenu — scoped styles
   Mega menu activado por CSS :hover (sem roundtrip SignalR)
   ========================================================== */

/* Por defeito o mega esta escondido */
.co-mega[b-b86pin828f] {
    display: none;
}

/* Mostrar mega ao fazer hover no item pai */
.co-nav-item.has-mega:hover > .co-mega[b-b86pin828f] {
    display: block;
}

/* Indicador de underline para itens com mega em hover */
.co-nav-underline .co-nav-item.has-mega:hover .co-nav-link[b-b86pin828f] {
    color: var(--text);
}

.co-nav-underline .co-nav-item.has-mega:hover .co-nav-link[b-b86pin828f]::after {
    content: '';
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 0;
    height: 2px;
    background: var(--primary);
}

/* Garantir que o drawer esta relativo ao co-nav */
.co-nav[b-b86pin828f] {
    position: relative;
}

/* NavLink activo gerado pelo Blazor (override da classe default) */
a.co-nav-link.active[b-b86pin828f] {
    color: var(--primary);
    font-weight: 600;
}

.co-nav-underline a.co-nav-link.active[b-b86pin828f]::after {
    content: '';
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 0;
    height: 2px;
    background: var(--primary);
}

/* Secção de itens directos no topo do mega menu (sem sub-grupo) */
.co-mega-direct[b-b86pin828f] {
    display: flex;
    flex-wrap: wrap;
    gap: .25rem .5rem;
    padding: .5rem .75rem .75rem;
    border-bottom: 1px solid var(--border, #e5e7eb);
    margin-bottom: .5rem;
}

.co-mega-direct-item[b-b86pin828f],
[b-b86pin828f] .co-mega-direct a {
    padding: .3rem .6rem;
    border-radius: var(--r-sm, 4px);
    font-size: .85rem;
    text-decoration: none;
    white-space: nowrap;
}

.co-mega-direct-item:hover[b-b86pin828f],
[b-b86pin828f] .co-mega-direct a:hover {
    background: var(--surface, #f3f4f6);
}

.co-mega-direct-item.co-mega-item--disabled[b-b86pin828f] {
    color: var(--text-muted, #aaa);
    cursor: not-allowed;
    opacity: .5;
}

/* Itens sem permissao */
.co-mega-item--disabled[b-b86pin828f] {
    display: block;
    padding: .35rem .5rem;
    color: var(--text-muted, #aaa);
    cursor: not-allowed;
    opacity: .5;
    user-select: none;
}

.co-drawer-item--disabled[b-b86pin828f] {
    display: block;
    padding: .4rem .75rem;
    color: var(--text-muted, #aaa);
    opacity: .5;
    cursor: not-allowed;
}

/* Skeleton de carregamento */
.co-nav-skeleton[b-b86pin828f] {
    background: var(--surface, #eee);
    border-radius: 4px;
    animation: co-pulse-b-b86pin828f 1.2s ease-in-out infinite;
    color: transparent;
    pointer-events: none;
}

@keyframes co-pulse-b-b86pin828f {
    0%, 100% { opacity: 1; }
    50%       { opacity: .4; }
}
/* /Components/Paginas/Autenticacao/Login.razor.rz.scp.css */
/* ==========================================================
   ClassOne — Login page styles (Variante A)
   ========================================================== */

.lg-loading[b-32qp2azxds] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
    width: 100%;
}

.lg-spinner-overlay[b-32qp2azxds] {
    position: fixed;
    inset: 0;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.6);
    backdrop-filter: blur(2px);
}

/* Grelha principal: 56% branding / 44% form */
.lg-page[b-32qp2azxds] {
    display: grid;
    width: 100%;
    height: 100%;
    min-height: 100vh;
    overflow: hidden;
    background: var(--bg);
    color: var(--text);
}

.lg-page-a[b-32qp2azxds] {
    grid-template-columns: 56fr 44fr;
}

/* ---- Painel de branding ---- */
.lg-brand[b-32qp2azxds] {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: var(--s-9);
    overflow: hidden;
}

.lg-brand-primary[b-32qp2azxds] {
    background: var(--primary);
    color: var(--on-primary);
}

/* Grelha decorativa */
.lg-brand[b-32qp2azxds]::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(currentColor 1px, transparent 1px),
        linear-gradient(90deg, currentColor 1px, transparent 1px);
    background-size: 64px 64px;
    opacity: 0.05;
    pointer-events: none;
}

/* Circulo decorativo */
.lg-brand[b-32qp2azxds]::after {
    content: '';
    position: absolute;
    right: -120px;
    top: -120px;
    width: 480px;
    height: 480px;
    border-radius: 50%;
    background: radial-gradient(circle, currentColor 0%, transparent 65%);
    opacity: 0.08;
    pointer-events: none;
}

.lg-brand-head[b-32qp2azxds] {
    display: flex;
    align-items: center;
    gap: 12px;
    position: relative;
    z-index: 1;
}

.lg-brand-mark[b-32qp2azxds] {
    width: 56px;
    height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--r-md);
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.18);
    flex-shrink: 0;
    padding: 6px;
}

.lg-brand-mark--rect[b-32qp2azxds] {
    width: 180px;
    height: 52px;
    border-radius: var(--r-sm);
    padding: 8px 12px;
}

.lg-brand-name[b-32qp2azxds] {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.01em;
    line-height: 1.3;
}

.lg-brand-tenant[b-32qp2azxds] {
    font-size: 11.5px;
    opacity: 0.75;
    margin-top: 1px;
}

.lg-brand-body[b-32qp2azxds] {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    z-index: 1;
    max-width: 480px;
}

.lg-brand-eyebrow[b-32qp2azxds] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.10em;
    margin-bottom: 16px;
    opacity: 0.85;
}

.lg-brand-title[b-32qp2azxds] {
    font-size: 36px;
    line-height: 1.1;
    letter-spacing: -0.025em;
    font-weight: 600;
    margin: 0 0 var(--s-4);
}

.lg-brand-lead[b-32qp2azxds] {
    font-size: 15px;
    line-height: 1.55;
    margin: 0;
    max-width: 38ch;
    opacity: 0.85;
}

.lg-brand-foot[b-32qp2azxds] {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: var(--s-4);
    margin-top: var(--s-7);
}

.lg-divider[b-32qp2azxds] {
    height: 1px;
    background: rgba(255,255,255,0.18);
}

.lg-contacts[b-32qp2azxds] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--s-3) var(--s-5);
}

.lg-contact[b-32qp2azxds] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 12.5px;
}

.lg-contact-ic[b-32qp2azxds] {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--r-sm);
    background: rgba(255,255,255,0.10);
}

.lg-contact-l[b-32qp2azxds] {
    font-size: 10.5px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    opacity: 0.65;
    margin-bottom: 1px;
}

.lg-contact-v[b-32qp2azxds] {
    font-weight: 500;
    line-height: 1.4;
}

.lg-contact-v a[b-32qp2azxds] { color: inherit; text-decoration: none; }
.lg-contact-v a:hover[b-32qp2azxds] { text-decoration: underline; }

.lg-legal[b-32qp2azxds] {
    font-size: 11px;
    opacity: 0.65;
}

/* ---- Painel do formulario ---- */
.lg-form-pane[b-32qp2azxds] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--surface);
    padding: var(--s-9);
}

.lg-form-topbar[b-32qp2azxds] {
    position: absolute;
    top: var(--s-5);
    left: var(--s-7);
    right: var(--s-7);
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 12px;
    color: var(--text-muted);
}

.lg-form-topbar a[b-32qp2azxds] { color: inherit; text-decoration: none; }
.lg-form-topbar a:hover[b-32qp2azxds] { color: var(--text); }

.lg-form-card[b-32qp2azxds] {
    width: 100%;
    max-width: 380px;
    display: flex;
    flex-direction: column;
}

.lg-form-eyebrow[b-32qp2azxds] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.10em;
    color: var(--primary);
    margin-bottom: 8px;
}

.lg-form-title[b-32qp2azxds] {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -0.02em;
    margin: 0 0 6px;
    color: var(--text);
}

.lg-form-sub[b-32qp2azxds] {
    font-size: 13px;
    color: var(--text-muted);
    margin: 0 0 var(--s-6);
    line-height: 1.5;
}

/* Selector de perfil */
.lg-roles[b-32qp2azxds] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2px;
    background: var(--bg-subtle);
    padding: 3px;
    border-radius: var(--r-md);
    border: 1px solid var(--border);
    margin-bottom: var(--s-5);
}

.lg-role[b-32qp2azxds] {
    background: transparent;
    border: 0;
    cursor: pointer;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    border-radius: var(--r-sm);
    font-family: var(--co-font-sans);
    font-size: 11px;
    font-weight: 500;
    color: var(--text-muted);
    transition: all 0.12s ease;
    padding: 0 4px;
    white-space: nowrap;
}

.lg-role.is-active[b-32qp2azxds] {
    background: var(--surface);
    color: var(--text);
    box-shadow: var(--shadow-sm);
}

.lg-role:hover:not(.is-active)[b-32qp2azxds] { color: var(--text-2); }

/* Campos */
.lg-field[b-32qp2azxds] {
    display: flex;
    flex-direction: column;
    margin-bottom: var(--s-4);
}

.lg-label[b-32qp2azxds] {
    font-size: 12px;
    font-weight: 500;
    color: var(--text-2);
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.lg-label-link[b-32qp2azxds] {
    font-size: 11.5px;
    font-weight: 500;
    color: var(--primary);
    text-decoration: none;
}

.lg-label-link:hover[b-32qp2azxds] { text-decoration: underline; }

.lg-input[b-32qp2azxds] {
    position: relative;
    display: flex;
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r-md);
    transition: all 0.12s ease;
}

.lg-input:focus-within[b-32qp2azxds] {
    border-color: var(--primary);
    box-shadow: 0 0 0 3px color-mix(in oklch, var(--primary) 18%, transparent);
}

.lg-input-ic[b-32qp2azxds] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    color: var(--text-muted);
    flex-shrink: 0;
}

.lg-input input[b-32qp2azxds] {
    flex: 1;
    min-width: 0;
    height: 38px;
    padding: 0 12px 0 0;
    border: 0;
    background: transparent;
    outline: none;
    font-family: var(--co-font-sans);
    font-size: 13.5px;
    color: var(--text);
}

.lg-input input[b-32qp2azxds]::placeholder { color: var(--text-faint); }

.lg-input-trail[b-32qp2azxds] {
    display: inline-flex;
    align-items: center;
    padding-right: 8px;
}

.lg-input-trail-btn[b-32qp2azxds] {
    width: 28px;
    height: 28px;
    background: transparent;
    border: 0;
    border-radius: var(--r-sm);
    color: var(--text-muted);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.lg-input-trail-btn:hover[b-32qp2azxds] { background: var(--surface-hover); color: var(--text); }

/* Manter sessao */
.lg-row[b-32qp2azxds] {
    display: flex;
    align-items: center;
    margin-bottom: var(--s-5);
}

.lg-check[b-32qp2azxds] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    color: var(--text-2);
    cursor: pointer;
    user-select: none;
}

.lg-check-box[b-32qp2azxds] {
    width: 16px;
    height: 16px;
    border: 1.5px solid var(--border-strong);
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--surface);
    flex-shrink: 0;
}

.lg-check.is-checked .lg-check-box[b-32qp2azxds] {
    background: var(--primary);
    border-color: var(--primary);
    color: var(--on-primary);
}

/* Erro */
.lg-error[b-32qp2azxds] {
    padding: 10px 12px;
    border-radius: var(--r-md);
    background: oklch(0.96 0.03 25);
    border: 1px solid oklch(0.88 0.07 25);
    color: oklch(0.45 0.18 25);
    font-size: 12.5px;
    margin-bottom: var(--s-4);
    line-height: 1.4;
}

/* Botao Entrar */
.lg-submit[b-32qp2azxds] {
    width: 100%;
    height: 40px;
    background: var(--primary);
    color: var(--on-primary);
    border: 0;
    border-radius: var(--r-md);
    font-family: var(--co-font-sans);
    font-size: 13.5px;
    font-weight: 500;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    transition: background 0.12s ease;
    box-shadow: 0 1px 2px rgba(0,0,0,0.10), inset 0 1px 0 rgba(255,255,255,0.14);
}

.lg-submit:hover:not(:disabled)[b-32qp2azxds] { background: var(--primary-hover); }
.lg-submit:disabled[b-32qp2azxds] { opacity: 0.65; cursor: not-allowed; }

.lg-spin[b-32qp2azxds] { animation: lg-spin-b-32qp2azxds 0.8s linear infinite; }

@keyframes lg-spin-b-32qp2azxds { to { transform: rotate(360deg); } }

/* Separador ou */
.lg-or[b-32qp2azxds] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: var(--s-5) 0;
    font-size: 11px;
    color: var(--text-faint);
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.lg-or[b-32qp2azxds]::before, .lg-or[b-32qp2azxds]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--border);
}

/* Botao SSO */
.lg-sso[b-32qp2azxds] {
    width: 100%;
    height: 40px;
    background: var(--surface);
    color: var(--text-2);
    border: 1px solid var(--border);
    border-radius: var(--r-md);
    font-family: var(--co-font-sans);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    transition: all 0.12s ease;
}

.lg-sso:hover[b-32qp2azxds] { background: var(--surface-hover); color: var(--text); }

.lg-foot[b-32qp2azxds] {
    margin-top: var(--s-6);
    font-size: 12px;
    color: var(--text-muted);
    text-align: center;
}

.lg-foot a[b-32qp2azxds] { color: var(--primary); text-decoration: none; font-weight: 500; }
.lg-foot a:hover[b-32qp2azxds] { text-decoration: underline; }

/* ==========================================================
   Responsivo — container queries (ancora: coapp)
   ========================================================== */

@container coapp (max-width: 1023px) {
    .lg-page[b-32qp2azxds], .lg-page-a[b-32qp2azxds] {
        grid-template-columns: 1fr;
        grid-template-rows: auto 1fr;
        overflow-y: auto;
        min-height: 100vh;
    }
    .lg-brand[b-32qp2azxds] { padding: var(--s-7); min-height: 0; }
    .lg-brand-body[b-32qp2azxds] { padding: var(--s-4) 0; }
    .lg-brand-title[b-32qp2azxds] { font-size: 26px; }
    .lg-form-pane[b-32qp2azxds] { padding: var(--s-7); }
    .lg-form-topbar[b-32qp2azxds] { position: static; margin-bottom: var(--s-5); }
    .lg-form-card[b-32qp2azxds] { max-width: 480px; }
}

@container coapp (max-width: 640px) {
    .lg-brand[b-32qp2azxds] { padding: var(--s-5); }
    .lg-brand[b-32qp2azxds]::before, .lg-brand[b-32qp2azxds]::after { display: none; }
    .lg-brand-body[b-32qp2azxds] { display: none; }
    .lg-brand-foot[b-32qp2azxds] { display: none; }
    .lg-form-pane[b-32qp2azxds] { padding: var(--s-5); align-items: flex-start; }
    .lg-form-card[b-32qp2azxds] { max-width: 100%; margin-top: var(--s-5); }
    .lg-roles[b-32qp2azxds] { grid-template-columns: repeat(2, 1fr); }
    .lg-form-title[b-32qp2azxds] { font-size: 20px; }
}
/* /Components/Paginas/Configuracoes/Branding.razor.rz.scp.css */
.co-branding-layout[b-rl9gfs4rkg] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: var(--s-5, 1.25rem);
    margin-bottom: var(--s-5, 1.25rem);
}

.co-branding-section[b-rl9gfs4rkg] {
    padding: var(--s-5, 1.25rem);
}

.co-section-title[b-rl9gfs4rkg] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text, #111827);
    margin: 0 0 .25rem;
}

.co-section-sub[b-rl9gfs4rkg] {
    font-size: 12.5px;
    color: var(--text-muted, #6b7280);
    margin: 0 0 var(--s-4, 1rem);
}

/* Logótipo */
.co-logo-editor[b-rl9gfs4rkg] {
    display: flex;
    align-items: flex-start;
    gap: var(--s-4, 1rem);
}

.co-logo-preview[b-rl9gfs4rkg] {
    width: 96px;
    height: 96px;
    border: 1.5px dashed var(--border, #e5e7eb);
    border-radius: var(--r-md, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: var(--surface, #f9fafb);
    overflow: hidden;
}

.co-logo-preview img[b-rl9gfs4rkg] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.co-logo-empty[b-rl9gfs4rkg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .4rem;
    color: var(--text-muted, #9ca3af);
    font-size: 11px;
}

.co-logo-formato[b-rl9gfs4rkg] {
    display: flex;
    flex-direction: column;
    gap: .35rem;
    justify-content: center;
}

.co-formato-toggle[b-rl9gfs4rkg] {
    display: flex;
    gap: .25rem;
    background: var(--bg-subtle, #f3f4f6);
    padding: 3px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid var(--border, #e5e7eb);
}

.co-formato-btn[b-rl9gfs4rkg] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: .3rem .6rem;
    border: 0;
    border-radius: var(--r-xs, 3px);
    font-size: 12px;
    font-family: var(--co-font-sans);
    color: var(--text-muted, #6b7280);
    background: transparent;
    cursor: pointer;
    transition: all .12s ease;
    white-space: nowrap;
}

.co-formato-btn.is-active[b-rl9gfs4rkg] {
    background: var(--surface, #fff);
    color: var(--text, #111827);
    box-shadow: var(--shadow-sm);
}

.co-logo-actions[b-rl9gfs4rkg] {
    display: flex;
    flex-direction: column;
    gap: var(--s-2, .5rem);
    justify-content: center;
}

/* Cores */
.co-color-grid[b-rl9gfs4rkg] {
    display: flex;
    flex-direction: column;
    gap: var(--s-4, 1rem);
}

.co-color-field[b-rl9gfs4rkg] {
    display: flex;
    flex-direction: column;
    gap: .35rem;
}

.co-color-label[b-rl9gfs4rkg] {
    font-size: 12.5px;
    font-weight: 500;
    color: var(--text, #374151);
}

.co-color-input[b-rl9gfs4rkg] {
    display: flex;
    align-items: center;
    gap: var(--s-2, .5rem);
}

.co-color-input input[type="color"][b-rl9gfs4rkg] {
    width: 36px;
    height: 36px;
    border: 1.5px solid var(--border, #e5e7eb);
    border-radius: var(--r-sm, 4px);
    padding: 2px;
    cursor: pointer;
    background: none;
}

.co-color-input input[type="text"][b-rl9gfs4rkg] {
    width: 100px;
    padding: .4rem .6rem;
    border: 1.5px solid var(--border, #e5e7eb);
    border-radius: var(--r-sm, 4px);
    font-size: 13px;
    color: var(--text, #111827);
    background: var(--bg, #fff);
}

.co-color-swatch[b-rl9gfs4rkg] {
    width: 100%;
    height: 6px;
    border-radius: 99px;
    margin-top: 2px;
}

/* Footer */
.co-branding-footer[b-rl9gfs4rkg] {
    display: flex;
    justify-content: flex-end;
    padding-top: var(--s-4, 1rem);
    border-top: 1px solid var(--border, #e5e7eb);
}

/* Alerts */
.co-alert[b-rl9gfs4rkg] {
    padding: .6rem 1rem;
    border-radius: var(--r-sm, 6px);
    font-size: 13px;
    margin-bottom: var(--s-3, .75rem);
}

.co-alert-success[b-rl9gfs4rkg] {
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.co-alert-error[b-rl9gfs4rkg] {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
}
/* /Components/Paginas/Index/IndexTile.razor.rz.scp.css */
.tile[b-g2mntr4v1n] {
    border-radius: 0.75rem;
    height: 7.5rem;
    transition: box-shadow 0.2s;
    width: 14.375rem;
    border: var(--bs-border-width) solid var(--bs-border-color);
}

.tile:hover[b-g2mntr4v1n] {
    box-shadow: 0px 4px 6px -1px rgba(0, 0, 0, 0.1), 0px 2px 4px -2px rgba(0, 0, 0, 0.1);
}

.tile[b-g2mntr4v1n]  > a {
    text-decoration: none;
}

[b-g2mntr4v1n] .tile-content {
    padding: 1rem;
}

[b-g2mntr4v1n] .tile-icon {
    border-radius: 0.375rem;
    height: 2.75rem;
    padding: 0.75rem;
    width: 2.75rem;
    border: var(--bs-border-width) solid var(--bs-border-color);
}

[b-g2mntr4v1n] .tile-title {
    align-self: center;
    color: var(--bs-body-color);
    font-size: 0.875rem;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.25rem;
}

[b-g2mntr4v1n] .tile-description {
    color: var(--bs-secondary-color);
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1rem;
}
/* /Components/Paginas/Utilizadores/AlterarSenha.razor.rz.scp.css */
.as-layout[b-jrzr7v06kv] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: var(--s-5, 1.25rem);
    margin-bottom: var(--s-5, 1.25rem);
}

.as-section[b-jrzr7v06kv] { padding: var(--s-5, 1.25rem); }

.as-field[b-jrzr7v06kv] {
    display: flex;
    flex-direction: column;
    gap: .35rem;
    margin-bottom: var(--s-4, 1rem);
}

.as-label[b-jrzr7v06kv] {
    font-size: 12.5px;
    font-weight: 500;
    color: var(--text-2, #374151);
}

.as-input[b-jrzr7v06kv] {
    display: flex;
    align-items: center;
    border: 1.5px solid var(--border, #e5e7eb);
    border-radius: var(--r-md, 6px);
    background: var(--bg, #fff);
    transition: border-color .12s;
}

.as-input:focus-within[b-jrzr7v06kv] {
    border-color: var(--primary);
    box-shadow: 0 0 0 3px color-mix(in oklch, var(--primary) 18%, transparent);
}

.as-input input[b-jrzr7v06kv] {
    flex: 1;
    height: 38px;
    padding: 0 .75rem;
    border: 0;
    background: transparent;
    outline: none;
    font-size: 13.5px;
    font-family: var(--co-font-sans);
    color: var(--text, #111827);
}

.as-eye[b-jrzr7v06kv] {
    width: 36px;
    height: 36px;
    border: 0;
    background: transparent;
    color: var(--text-muted, #9ca3af);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--r-sm);
}
.as-eye:hover[b-jrzr7v06kv] { color: var(--text); }

/* Toggle 2FA */
.as-toggle-row[b-jrzr7v06kv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--s-4);
    cursor: pointer;
    padding: var(--s-3) 0;
}

.as-toggle-info[b-jrzr7v06kv] { flex: 1; }

.as-toggle-title[b-jrzr7v06kv] {
    display: block;
    font-size: 13.5px;
    font-weight: 500;
    color: var(--text, #111827);
    margin-bottom: 2px;
}

.as-toggle-desc[b-jrzr7v06kv] {
    display: block;
    font-size: 12px;
    color: var(--text-muted, #6b7280);
    line-height: 1.4;
}

.as-toggle[b-jrzr7v06kv] {
    width: 44px;
    height: 24px;
    border-radius: 99px;
    background: var(--border, #d1d5db);
    position: relative;
    flex-shrink: 0;
    transition: background .2s ease;
    cursor: pointer;
}

.as-toggle.is-on[b-jrzr7v06kv] { background: var(--primary); }

.as-toggle-thumb[b-jrzr7v06kv] {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,.2);
    transition: transform .2s ease;
}

.as-toggle.is-on .as-toggle-thumb[b-jrzr7v06kv] { transform: translateX(20px); }

/* Footer */
.as-footer[b-jrzr7v06kv] {
    display: flex;
    justify-content: flex-end;
    padding-top: var(--s-4);
    border-top: 1px solid var(--border, #e5e7eb);
}
