/* /Components/Pages/PortalProfessor/Componentes/BadgePro.razor.rz.scp.css */
.badge-pro[b-59ac7eop3v] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover));
    color: var(--color-on-primary);
    padding: 0.15rem 0.5rem;
    border-radius: 9999px;
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    cursor: pointer;
    transition: transform 0.15s, box-shadow 0.15s;
    box-shadow: 0 2px 6px color-mix(in srgb, var(--color-warning) 30%, transparent);
    line-height: 1;
    vertical-align: middle;
}

.badge-pro:hover[b-59ac7eop3v] {
    transform: scale(1.05);
    box-shadow: 0 4px 10px color-mix(in srgb, var(--color-warning) 40%, transparent);
}

.badge-pro__icon[b-59ac7eop3v] {
    font-size: 0.7rem !important;
}

.badge-pro__texto[b-59ac7eop3v] {
    font-family: var(--font-body);
}
/* /Components/Pages/PortalProfessor/Componentes/ModalBloqueioPro.razor.rz.scp.css */
.mbp__overlay[b-gfqcd4k84v] {
    position: fixed;
    inset: 0;
    z-index: 300;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    animation: mbp-fade-b-gfqcd4k84v 0.2s ease;
}

@keyframes mbp-fade-b-gfqcd4k84v {
    from { opacity: 0; }
    to { opacity: 1; }
}

.mbp__modal[b-gfqcd4k84v] {
    position: relative;
    background: var(--color-card);
    border-radius: 0.75rem;
    width: 100%;
    max-width: 22rem;
    padding: 2rem 1.5rem;
    text-align: center;
    box-shadow: 0 24px 56px rgba(0, 0, 0, 0.2);
    animation: mbp-slide-b-gfqcd4k84v 0.3s ease;
}

@keyframes mbp-slide-b-gfqcd4k84v {
    from { opacity: 0; transform: translateY(1rem) scale(0.97); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.mbp__close[b-gfqcd4k84v] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    background: none;
    border: none;
    color: var(--color-muted-foreground);
    cursor: pointer;
    padding: 0.25rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
}

.mbp__close:hover[b-gfqcd4k84v] {
    background: var(--color-primary-soft);
    color: var(--color-foreground);
}

.mbp__icon[b-gfqcd4k84v] {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover));
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
}

.mbp__icon .icon[b-gfqcd4k84v] {
    font-size: 1.75rem;
    color: var(--color-on-primary);
}

.mbp__title[b-gfqcd4k84v] {
    font-family: var(--font-display);
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0 0 0.75rem;
}

.mbp__desc[b-gfqcd4k84v] {
    font-size: 0.9rem;
    color: var(--color-muted-foreground);
    line-height: 1.5;
    margin: 0 0 0.5rem;
}

.mbp__pro-label[b-gfqcd4k84v] {
    display: inline-flex;
    align-items: center;
    background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover));
    color: var(--color-on-primary);
    font-size: 0.65rem;
    font-weight: 700;
    padding: 0.1rem 0.4rem;
    border-radius: 9999px;
    vertical-align: middle;
    letter-spacing: 0.05em;
}

.mbp__sub[b-gfqcd4k84v] {
    font-size: 0.8rem;
    color: var(--color-muted-foreground);
    margin: 0 0 1.25rem;
    line-height: 1.5;
}

.mbp__help[b-gfqcd4k84v] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    background: var(--color-primary-soft);
    border-radius: 0.5rem;
    padding: 0.75rem;
    margin-bottom: 1.25rem;
    font-size: 0.75rem;
    color: var(--color-muted-foreground);
}

.mbp__help .icon[b-gfqcd4k84v] {
    font-size: 1rem;
    color: var(--color-secondary-accent);
}

.mbp__help a[b-gfqcd4k84v] {
    color: var(--color-primary);
    text-decoration: none;
    font-weight: 600;
}

.mbp__help a:hover[b-gfqcd4k84v] {
    text-decoration: underline;
}

.mbp__btn[b-gfqcd4k84v] {
    width: 100%;
    padding: 0.75rem;
    background: var(--color-primary);
    color: var(--color-on-primary);
    border: none;
    border-radius: 0.5rem;
    font-family: var(--font-display);
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.2s;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

.mbp__btn:hover[b-gfqcd4k84v] {
    opacity: 0.95;
}
/* /Components/Pages/PortalProfessor/DashboardPortalProfessor.razor.rz.scp.css */
/* ─── Dashboard Mobile-First (440px) ─── */
.db__loading[b-2jqsjz24jr],
.db__erro[b-2jqsjz24jr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 1rem;
    gap: 0.75rem;
    color: var(--color-muted-foreground);
}

.db__erro[b-2jqsjz24jr] {
    color: var(--color-error);
}

.db__loading p[b-2jqsjz24jr],
.db__erro p[b-2jqsjz24jr] {
    font-size: 0.85rem;
    margin: 0;
}

.db__dashboard[b-2jqsjz24jr] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ─── Header ─── */
.db__header[b-2jqsjz24jr] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.db__saudacao[b-2jqsjz24jr] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 500;
    color: var(--color-foreground);
    margin: 0;
    line-height: 1.3;
}

.db__saudacao strong[b-2jqsjz24jr] {
    font-weight: 700;
}

.db__escola[b-2jqsjz24jr] {
    font-size: 0.7rem;
    color: var(--color-muted-foreground);
    margin: 0.125rem 0 0;
}

/* ─── Card Aula ─── */
.db__card-aula[b-2jqsjz24jr] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.75rem;
    padding: 1.25rem;
    border-top: 3px solid var(--color-primary);
    position: relative;
    overflow: hidden;
}

.db__card-aula--live[b-2jqsjz24jr] {
    border-top-color: var(--color-secondary-accent);
}

.db__aula-topo[b-2jqsjz24jr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

.db__aula-chip[b-2jqsjz24jr] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.2rem 0.625rem;
    border-radius: 9999px;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.db__aula-chip--live[b-2jqsjz24jr] {
    background: color-mix(in srgb, var(--color-secondary-accent) 10%, transparent);
    color: var(--color-secondary-accent);
}

.db__aula-chip--proxima[b-2jqsjz24jr] {
    background: color-mix(in srgb, var(--color-primary) 8%, transparent);
    color: var(--color-primary);
}

.db__live-dot[b-2jqsjz24jr] {
    width: 0.4rem;
    height: 0.4rem;
    background: var(--color-secondary-accent);
    border-radius: 50%;
    animation: db-pulse-b-2jqsjz24jr 1.5s ease-in-out infinite;
}

@keyframes db-pulse-b-2jqsjz24jr {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}

.db__aula-horario[b-2jqsjz24jr] {
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--color-muted-foreground);
    background: var(--color-primary-soft);
    padding: 0.2rem 0.5rem;
    border-radius: 0.25rem;
}

.db__aula-disciplina[b-2jqsjz24jr] {
    font-family: var(--font-display);
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0 0 0.5rem;
}

.db__aula-meta[b-2jqsjz24jr] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1rem;
}

.db__aula-meta-item[b-2jqsjz24jr] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.8rem;
    color: var(--color-muted-foreground);
}

.db__aula-meta-item .icon[b-2jqsjz24jr] {
    font-size: 0.9rem;
    color: var(--color-muted-foreground);
}

.db__aula-acoes[b-2jqsjz24jr] {
    display: flex;
    gap: 0.625rem;
}

/* ─── Botoes ─── */
.db__btn[b-2jqsjz24jr] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    border: none;
    border-radius: 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

.db__btn .icon[b-2jqsjz24jr] {
    font-size: 0.9rem;
}

.db__btn-primary[b-2jqsjz24jr] {
    background: var(--color-primary);
    color: var(--color-on-primary);
    box-shadow: 0 2px 8px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

.db__btn-primary:hover[b-2jqsjz24jr] {
    filter: brightness(1.1);
}

.db__btn-outline[b-2jqsjz24jr] {
    background: transparent;
    color: var(--color-muted-foreground);
    border: 1px solid var(--color-border);
}

.db__btn-outline:hover[b-2jqsjz24jr] {
    background: var(--color-primary-soft);
}

/* ─── Turmas Carousel ─── */
.db__sec-turmas[b-2jqsjz24jr] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.db__sec-titulo[b-2jqsjz24jr] {
    font-family: var(--font-display);
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
}

.db__turmas-carousel[b-2jqsjz24jr] {
    display: flex;
    gap: 0.625rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0.25rem;
    scrollbar-width: none;
}

.db__turmas-carousel[b-2jqsjz24jr]::-webkit-scrollbar {
    display: none;
}

.db__turma-card[b-2jqsjz24jr] {
    flex: 0 0 auto;
    width: 8rem;
    min-height: 4.5rem;
    border-radius: 0.625rem;
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 0.125rem;
    scroll-snap-align: start;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.15s;
}

.db__turma-card:hover[b-2jqsjz24jr] {
    transform: scale(1.02);
}

.db__turma-card[b-2jqsjz24jr]::before {
    content: '';
    position: absolute;
    inset: 0;
    opacity: 0.15;
    background-image: radial-gradient(circle at 2px 2px, white 1px, transparent 0);
    background-size: 12px 12px;
}

.db__turma-nome[b-2jqsjz24jr] {
    font-family: var(--font-display);
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--color-on-primary);
    margin: 0;
    position: relative;
    z-index: 1;
}

.db__turma-alunos[b-2jqsjz24jr] {
    font-size: 0.6rem;
    color: rgba(255, 255, 255, 0.85);
    margin: 0;
    position: relative;
    z-index: 1;
}

/* ─── Accoes Rapidas ─── */
.db__sec-acoes[b-2jqsjz24jr] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.db__acoes-grid[b-2jqsjz24jr] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.625rem;
}

.db__acao[b-2jqsjz24jr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.625rem;
    padding: 0.875rem 0.5rem;
    cursor: pointer;
    transition: all 0.15s;
    position: relative;
}

.db__acao:hover[b-2jqsjz24jr] {
    background: var(--color-background);
    border-color: var(--color-primary);
}

.db__acao--locked[b-2jqsjz24jr] {
    opacity: 0.65;
}

.db__acao--locked:hover[b-2jqsjz24jr] {
    opacity: 1;
}

.db__acao-ico[b-2jqsjz24jr] {
    font-size: 1.5rem;
    color: var(--color-primary);
}

.db__acao-label[b-2jqsjz24jr] {
    font-size: 0.65rem;
    font-weight: 600;
    color: var(--color-muted-foreground);
}

/* ─── Mini Horario ─── */
.db__sec-horario[b-2jqsjz24jr] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.db__mini-horario[b-2jqsjz24jr] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.db__dia[b-2jqsjz24jr] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.625rem;
    overflow: hidden;
}

.db__dia-cabecalho[b-2jqsjz24jr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0.75rem;
    background: var(--color-primary-soft);
    border-bottom: 1px solid var(--color-border);
}

.db__dia-nome[b-2jqsjz24jr] {
    font-family: var(--font-display);
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--color-foreground);
}

.db__dia-data[b-2jqsjz24jr] {
    font-size: 0.6rem;
    color: var(--color-muted-foreground);
    font-weight: 600;
}

.db__dia-aula[b-2jqsjz24jr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid var(--color-primary-soft);
}

.db__dia-aula:last-child[b-2jqsjz24jr] {
    border-bottom: none;
}

.db__dia-aula-hora[b-2jqsjz24jr] {
    font-size: 0.6rem;
    font-weight: 700;
    color: var(--color-primary);
    background: color-mix(in srgb, var(--color-primary) 8%, transparent);
    padding: 0.15rem 0.375rem;
    border-radius: 0.25rem;
    white-space: nowrap;
    min-width: 3.5rem;
    text-align: center;
}

.db__dia-aula-disc[b-2jqsjz24jr] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--color-foreground);
    flex: 1;
}

.db__dia-aula-turma[b-2jqsjz24jr] {
    font-size: 0.6rem;
    color: var(--color-muted-foreground);
    white-space: nowrap;
}

.db__btn-ver-mais[b-2jqsjz24jr] {
    width: 100%;
    justify-content: center;
}

/* ─── Lista Alunos ─── */
.db__sec-alunos[b-2jqsjz24jr] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.db__alunos-lista[b-2jqsjz24jr] {
    display: flex;
    flex-direction: column;
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.625rem;
    overflow: hidden;
}

.db__aluno-linha[b-2jqsjz24jr] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid var(--color-primary-soft);
}

.db__aluno-linha:last-child[b-2jqsjz24jr] {
    border-bottom: none;
}

.db__aluno-numero[b-2jqsjz24jr] {
    font-size: 0.6rem;
    font-weight: 700;
    color: var(--color-muted-foreground);
    background: var(--color-primary-soft);
    padding: 0.2rem 0.375rem;
    border-radius: 0.25rem;
    min-width: 2rem;
    text-align: center;
}

.db__aluno-info[b-2jqsjz24jr] {
    display: flex;
    flex-direction: column;
    gap: 0.05rem;
    min-width: 0;
}

.db__aluno-nome[b-2jqsjz24jr] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-foreground);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.db__aluno-detalhes[b-2jqsjz24jr] {
    font-size: 0.6rem;
    color: var(--color-muted-foreground);
}

@keyframes spin-b-2jqsjz24jr {
    to { transform: rotate(360deg); }
}
/* /Components/Pages/PortalProfessor/DetalheAulaPortalProfessor.razor.rz.scp.css */
/* ─── Detalhe Aula - Mobile First ─── */
.da__topo[b-ky5sqvcnol] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
}

.da__voltar[b-ky5sqvcnol] {
    background: none;
    border: 1px solid var(--color-primary-soft);
    border-radius: 50%;
    width: 2.25rem;
    height: 2.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-muted-foreground);
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.15s;
}

.da__voltar:hover[b-ky5sqvcnol] {
    background: var(--color-primary-soft);
}

.da__topo-titulo[b-ky5sqvcnol] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
}

.da__topo-sub[b-ky5sqvcnol] {
    font-size: 0.75rem;
    color: var(--color-muted-foreground);
    margin: 0.125rem 0 0;
}

.da__loading[b-ky5sqvcnol] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    gap: 0.75rem;
    color: var(--color-muted-foreground);
}

.da__loading p[b-ky5sqvcnol] {
    font-size: 0.85rem;
    margin: 0;
}

.da__content[b-ky5sqvcnol] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* ─── Banner Retroactivo ─── */
.da__retroactivo-banner[b-ky5sqvcnol] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: linear-gradient(135deg, var(--color-warning-soft), var(--color-warning-soft));
    border: 1px solid var(--color-accent);
    border-radius: 0.75rem;
}

.da__retroactivo-banner .icon[b-ky5sqvcnol] {
    font-size: 1.5rem;
    color: var(--color-accent-hover);
    flex-shrink: 0;
}

.da__retroactivo-banner strong[b-ky5sqvcnol] {
    font-family: var(--font-display);
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--color-warning-strong);
    display: block;
}

.da__retroactivo-banner p[b-ky5sqvcnol] {
    font-size: 0.75rem;
    color: var(--color-warning-strong);
    margin: 0.125rem 0 0;
}

/* ─── Card Plano ─── */
.da__card[b-ky5sqvcnol] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.75rem;
    padding: 1.25rem;
}

.da__card--plano[b-ky5sqvcnol] {
    border-top: 3px solid var(--color-primary);
    background: linear-gradient(180deg, var(--color-background) 0%, var(--color-card) 100%);
}

.da__card--vazio[b-ky5sqvcnol] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 2rem 1.25rem;
}

.da__card-header[b-ky5sqvcnol] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
}

.da__card-icon[b-ky5sqvcnol] {
    color: var(--color-primary);
    font-size: 1.25rem;
}

.da__card-title[b-ky5sqvcnol] {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
    flex: 1;
}

.da__btn-editar[b-ky5sqvcnol] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    background: none;
    border: 1px solid var(--color-primary-soft);
    border-radius: 0.375rem;
    padding: 0.35rem 0.625rem;
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--color-primary);
    cursor: pointer;
    transition: background 0.15s;
}

.da__btn-editar:hover[b-ky5sqvcnol] {
    background: var(--color-primary-soft);
}

.da__btn-editar .icon[b-ky5sqvcnol] {
    font-size: 0.85rem;
}

/* ─── Campos ─── */
.da__campo[b-ky5sqvcnol] {
    margin-bottom: 1rem;
    padding-left: 0.75rem;
    border-left: 3px solid var(--color-border);
}

.da__campo:last-child[b-ky5sqvcnol] {
    margin-bottom: 0;
}

.da__campo-label[b-ky5sqvcnol] {
    display: block;
    font-size: 0.6rem;
    font-weight: 700;
    color: var(--color-primary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.25rem;
}

.da__campo-valor[b-ky5sqvcnol] {
    font-size: 0.85rem;
    color: var(--color-foreground);
    line-height: 1.5;
    margin: 0;
}

.da__tags[b-ky5sqvcnol] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

.da__tag[b-ky5sqvcnol] {
    background: var(--color-primary-soft);
    color: var(--color-primary);
    font-size: 0.65rem;
    font-weight: 600;
    padding: 0.2rem 0.5rem;
    border-radius: 9999px;
    border: 1px solid color-mix(in srgb, var(--color-primary) 15%, transparent);
}

/* ─── Tema Item ─── */
.da__tema-item[b-ky5sqvcnol] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.625rem 0.75rem;
    margin-bottom: 0.375rem;
    background: var(--color-card);
    border: 1px solid var(--color-surface-2);
    border-radius: 0.5rem;
}

.da__tema-item:last-child[b-ky5sqvcnol] {
    margin-bottom: 0;
}

.da__tema-ordem[b-ky5sqvcnol] {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--color-primary);
    min-width: 1.25rem;
}

.da__tema-info[b-ky5sqvcnol] {
    flex: 1;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.da__tema-nome[b-ky5sqvcnol] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-foreground);
}

.da__tema-duracao[b-ky5sqvcnol] {
    font-size: 0.65rem;
    color: var(--color-muted-foreground);
    background: var(--color-surface-2);
    padding: 0.15rem 0.5rem;
    border-radius: 9999px;
}

/* ─── Badge Estado ─── */
.da__badge-estado[b-ky5sqvcnol] {
    display: inline-block;
    font-size: 0.6rem;
    font-weight: 700;
    padding: 0.2rem 0.625rem;
    border-radius: 9999px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.da__badge-estado--rascunho[b-ky5sqvcnol] { background: var(--color-surface-2); color: var(--color-muted-foreground); }
.da__badge-estado--submetido[b-ky5sqvcnol] { background: var(--color-warning-soft); color: var(--color-accent-hover); }
.da__badge-estado--aprovado[b-ky5sqvcnol] { background: var(--color-primary-soft); color: var(--color-secondary-accent); }
.da__badge-estado--rejeitado[b-ky5sqvcnol] { background: var(--color-error-soft); color: var(--color-error); }

/* ─── Lista Alunos ─── */
.da__alunos-count[b-ky5sqvcnol] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--color-muted-foreground);
    background: var(--color-surface-2);
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
}

.da__alunos-lista[b-ky5sqvcnol] {
    max-height: 16rem;
    overflow-y: auto;
}

.da__aluno-linha[b-ky5sqvcnol] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 0;
    border-bottom: 1px solid var(--color-surface-2);
}

.da__aluno-linha:last-child[b-ky5sqvcnol] {
    border-bottom: none;
}

.da__aluno-num[b-ky5sqvcnol] {
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--color-muted-foreground);
    min-width: 1.5rem;
    text-align: center;
}

.da__aluno-info[b-ky5sqvcnol] {
    flex: 1;
    min-width: 0;
}

.da__aluno-nome[b-ky5sqvcnol] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--color-foreground);
}

.da__card-vazio-inline[b-ky5sqvcnol] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 0;
    color: var(--color-border);
}

.da__card-vazio-inline .icon[b-ky5sqvcnol] {
    font-size: 1.25rem;
}

.da__card-vazio-inline p[b-ky5sqvcnol] {
    font-size: 0.8rem;
    margin: 0;
}

/* ─── Accoes Secundarias ─── */
.da__acoes-secundarias[b-ky5sqvcnol] {
    display: flex;
    gap: 0.75rem;
}

.da__btn-acao[b-ky5sqvcnol] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.75rem;
    background: var(--color-card);
    border: 1.5px solid var(--color-primary-soft);
    border-radius: 0.5rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-primary);
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

.da__btn-acao:hover[b-ky5sqvcnol] {
    background: var(--color-primary-soft);
    border-color: var(--color-primary);
}

.da__btn-acao .icon[b-ky5sqvcnol] {
    font-size: 1.125rem;
}

/* ─── Erro ─── */
.da__erro[b-ky5sqvcnol] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 2rem 1rem;
    gap: 0.5rem;
    color: var(--color-error);
}

.da__erro p[b-ky5sqvcnol] {
    font-size: 0.85rem;
    margin: 0;
}

/* ─── Card Vazio ─── */
.da__vazio-icon[b-ky5sqvcnol] {
    font-size: 3rem;
    color: var(--color-border);
    margin-bottom: 0.5rem;
}

.da__vazio-titulo[b-ky5sqvcnol] {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0 0 0.25rem;
}

.da__vazio-desc[b-ky5sqvcnol] {
    font-size: 0.8rem;
    color: var(--color-muted-foreground);
    margin: 0 0 1rem;
}

.da__btn-criar[b-ky5sqvcnol] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    background: var(--color-primary);
    color: var(--color-on-primary);
    border: none;
    border-radius: 0.5rem;
    padding: 0.625rem 1.25rem;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.15s;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

.da__btn-criar:hover[b-ky5sqvcnol] {
    opacity: 0.95;
}

.da__btn-criar .icon[b-ky5sqvcnol] {
    font-size: 1.125rem;
}

/* ─── Botao Comecar ─── */
.da__btn-comecar[b-ky5sqvcnol] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.875rem;
    background: var(--color-secondary-accent);
    color: var(--color-on-primary);
    border: none;
    border-radius: 0.5rem;
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.15s, transform 0.1s;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--color-secondary-accent) 25%, transparent);
}

.da__btn-comecar:hover[b-ky5sqvcnol] {
    opacity: 0.95;
}

.da__btn-comecar:active[b-ky5sqvcnol] {
    transform: scale(0.98);
}

.da__btn-comecar:disabled[b-ky5sqvcnol] {
    opacity: 0.7;
    cursor: not-allowed;
}

.da__btn-comecar .icon[b-ky5sqvcnol] {
    font-size: 1.25rem;
}

@keyframes spin-b-ky5sqvcnol {
    to { transform: rotate(360deg); }
}
/* /Components/Pages/PortalProfessor/DetalheTurmaPortalProfessor.razor.rz.scp.css */
/* ─── Detalhe Turma ─── */
.dt-topo[b-mlwway4z9r] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.dt-topo-voltar[b-mlwway4z9r] {
    background: none;
    border: 1px solid var(--color-primary-soft);
    border-radius: 50%;
    width: 2.25rem;
    height: 2.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-muted-foreground);
    cursor: pointer;
    flex-shrink: 0;
}

.dt-topo-voltar:hover[b-mlwway4z9r] { background: var(--color-primary-soft); }

.dt-topo-titulo[b-mlwway4z9r] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
}

.dt-topo-sub[b-mlwway4z9r] {
    font-size: 0.7rem;
    color: var(--color-muted-foreground);
    margin: 0.125rem 0 0;
}

.dt-loading[b-mlwway4z9r], .dt-erro[b-mlwway4z9r] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    gap: 0.75rem;
    color: var(--color-muted-foreground);
}

.dt-erro[b-mlwway4z9r] { color: var(--color-error); }

/* ─── Card IA ─── */
.dt-card--ia[b-mlwway4z9r] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.75rem;
    margin-bottom: 0.75rem;
    background: linear-gradient(135deg, color-mix(in srgb, var(--color-secondary-accent) 5%, transparent), color-mix(in srgb, var(--color-primary) 5%, transparent));
    border: 1px dashed var(--color-secondary-accent);
    border-radius: 0.625rem;
}

/* ─── Tabs ─── */
.dt-tabs[b-mlwway4z9r] {
    display: flex;
    gap: 0.25rem;
    overflow-x: auto;
    padding-bottom: 0.5rem;
    margin-bottom: 0.75rem;
    scrollbar-width: none;
}

.dt-tabs[b-mlwway4z9r]::-webkit-scrollbar { display: none; }

.dt-tab[b-mlwway4z9r] {
    flex: 0 0 auto;
    padding: 0.4rem 0.75rem;
    border: 1px solid var(--color-border);
    border-radius: 9999px;
    background: var(--color-card);
    color: var(--color-muted-foreground);
    font-size: 0.7rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

.dt-tab:hover[b-mlwway4z9r] { background: var(--color-primary-soft); }

.dt-tab--ativa[b-mlwway4z9r] {
    background: var(--color-primary);
    color: var(--color-on-primary);
    border-color: var(--color-primary);
}

/* ─── Info Cards ─── */
.dt-info-cards[b-mlwway4z9r] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.dt-info-card[b-mlwway4z9r] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.625rem;
    padding: 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.dt-info-ico[b-mlwway4z9r] {
    font-size: 1.25rem;
    color: var(--color-primary);
}

.dt-info-dados[b-mlwway4z9r] {
    display: flex;
    flex-direction: column;
}

.dt-info-valor[b-mlwway4z9r] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-foreground);
}

.dt-info-label[b-mlwway4z9r] {
    font-size: 0.6rem;
    color: var(--color-muted-foreground);
    text-transform: uppercase;
}

/* ─── Card Generico ─── */
.dt-card[b-mlwway4z9r] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.625rem;
    padding: 0.75rem;
    margin-bottom: 0.75rem;
}

.dt-card-titulo[b-mlwway4z9r] {
    font-family: var(--font-display);
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0 0 0.5rem;
}

/* ─── Botoes ─── */
.dt-btn[b-mlwway4z9r] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    border: none;
    border-radius: 0.5rem;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.dt-btn .icon[b-mlwway4z9r] { font-size: 1rem; }

.dt-btn--ia[b-mlwway4z9r] {
    background: linear-gradient(135deg, var(--color-secondary-accent), var(--color-primary));
    color: var(--color-on-primary);
    flex: 1;
}

.dt-btn--ia:hover[b-mlwway4z9r] { filter: brightness(1.1); }
.dt-btn--ia:disabled[b-mlwway4z9r] { opacity: 0.7; cursor: not-allowed; }

.dt-btn--pro[b-mlwway4z9r] {
    background: transparent;
    color: var(--color-muted-foreground);
    border: 1px solid var(--color-border);
    width: 100%;
    justify-content: flex-start;
    gap: 0.625rem;
}

.dt-btn--pro:hover[b-mlwway4z9r] { background: var(--color-primary-soft); }

/* ─── Lista ─── */
.dt-lista[b-mlwway4z9r] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.625rem;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.dt-lista-linha[b-mlwway4z9r] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid var(--color-primary-soft);
}

.dt-lista-linha:last-child[b-mlwway4z9r] { border-bottom: none; }

.dt-lista-num[b-mlwway4z9r] {
    font-size: 0.65rem;
    font-weight: 700;
    color: var(--color-muted-foreground);
    background: var(--color-primary-soft);
    padding: 0.15rem 0.375rem;
    border-radius: 0.25rem;
    min-width: 2rem;
    text-align: center;
}

.dt-lista-ico[b-mlwway4z9r] {
    font-size: 1rem;
    color: var(--color-primary);
}

.dt-lista-info[b-mlwway4z9r] {
    flex: 1;
    min-width: 0;
}

.dt-lista-nome[b-mlwway4z9r] {
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-foreground);
}

.dt-lista-detalhes[b-mlwway4z9r] {
    font-size: 0.65rem;
    color: var(--color-muted-foreground);
}

/* ─── Vazio ─── */
.dt-vazio[b-mlwway4z9r] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1.5rem;
    gap: 0.375rem;
    color: var(--color-muted-foreground);
    font-size: 0.8rem;
}

.dt-vazio .icon[b-mlwway4z9r] { font-size: 1.25rem; }

/* ─── Botao Icone ─── */
.dt-btn-icon[b-mlwway4z9r] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: none;
    border-radius: 0.375rem;
    background: transparent;
    color: var(--color-muted-foreground);
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}

.dt-btn-icon:hover[b-mlwway4z9r] {
    background: var(--color-primary-soft);
    color: var(--color-primary);
}

.dt-btn-icon .icon[b-mlwway4z9r] {
    font-size: 1rem;
}

/* ─── Modal Edicao Presenca ─── */
.dt-modal-presenca-stats[b-mlwway4z9r] {
    display: flex;
    gap: 1rem;
    padding: 0.75rem 0;
    margin-bottom: 0.75rem;
    border-bottom: 1px solid var(--color-surface-2);
}

.dt-modal-stat[b-mlwway4z9r] {
    font-size: 0.75rem;
    font-weight: 600;
}

.dt-modal-stat strong[b-mlwway4z9r] {
    font-size: 0.9rem;
    font-weight: 700;
}

.dt-modal-stat--presentes[b-mlwway4z9r] { color: var(--color-secondary-accent); }
.dt-modal-stat--ausentes[b-mlwway4z9r] { color: var(--color-error); }
.dt-modal-stat--justificados[b-mlwway4z9r] { color: var(--color-accent-hover); }

.dt-modal-presenca-lista[b-mlwway4z9r] {
    max-height: 20rem;
    overflow-y: auto;
}

.dt-modal-aluno-linha[b-mlwway4z9r] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 0;
    border-bottom: 1px solid var(--color-surface-2);
}

.dt-modal-aluno-linha:last-child[b-mlwway4z9r] {
    border-bottom: none;
}

.dt-modal-aluno-num[b-mlwway4z9r] {
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--color-muted-foreground);
    min-width: 1.5rem;
    text-align: center;
}

.dt-modal-aluno-nome[b-mlwway4z9r] {
    flex: 1;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--color-foreground);
}

.dt-modal-aluno-toggle[b-mlwway4z9r] {
    display: flex;
    gap: 0.25rem;
}

.dt-modal-toggle[b-mlwway4z9r] {
    padding: 0.3rem 0.5rem;
    border-radius: 0.375rem;
    border: 1.5px solid var(--color-primary-soft);
    background: var(--color-card);
    font-size: 0.65rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    color: var(--color-muted-foreground);
}

.dt-modal-toggle:hover[b-mlwway4z9r] {
    border-color: var(--color-border);
}

.dt-modal-toggle--presente[b-mlwway4z9r] {
    background: var(--color-primary-soft);
    border-color: var(--color-secondary-accent);
    color: var(--color-secondary-accent);
}

.dt-modal-toggle--ausente[b-mlwway4z9r] {
    background: var(--color-error-soft);
    border-color: var(--color-error);
    color: var(--color-error);
}

.dt-modal-toggle--justificado[b-mlwway4z9r] {
    background: var(--color-warning-soft);
    border-color: var(--color-accent-hover);
    color: var(--color-accent-hover);
}

@keyframes spin-b-mlwway4z9r {
    to { transform: rotate(360deg); }
}

/* ─── Modal Base (Portal Professor) ─── */
.modal-criacao[b-mlwway4z9r] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 1rem;
    backdrop-filter: blur(4px);
}

.modal-cartao[b-mlwway4z9r] {
    background: var(--color-card);
    border-radius: 0.75rem;
    width: 100%;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
    animation: modal-in-b-mlwway4z9r 0.25s ease;
}

.modal-cartao--grande[b-mlwway4z9r] {
    max-width: 32rem;
}

@keyframes modal-in-b-mlwway4z9r {
    from { opacity: 0; transform: translateY(1rem) scale(0.97); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.modal-cartao__topo[b-mlwway4z9r] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 1.25rem 1.25rem 0;
    border-bottom: 1px solid var(--color-surface-2);
    padding-bottom: 1rem;
}

.modal-subtitulo[b-mlwway4z9r] {
    font-size: 0.65rem;
    font-weight: 700;
    color: var(--color-muted-foreground);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0 0 0.25rem;
}

.modal-cartao__topo h3[b-mlwway4z9r] {
    font-family: var(--font-display);
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
}

.modal-fechar[b-mlwway4z9r] {
    background: none;
    border: none;
    font-size: 1.5rem;
    color: var(--color-text-subtle);
    cursor: pointer;
    padding: 0.25rem;
    line-height: 1;
    transition: color 0.15s;
}

.modal-fechar:hover[b-mlwway4z9r] {
    color: var(--color-muted-foreground);
}

.bloco-modal[b-mlwway4z9r] {
    flex: 1;
    overflow-y: auto;
    padding: 1rem 1.25rem;
}

.modal-accoes[b-mlwway4z9r] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--color-surface-2);
}

.botao-secundario[b-mlwway4z9r] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    border: 1px solid var(--color-primary-soft);
    border-radius: 0.5rem;
    background: var(--color-card);
    color: var(--color-muted-foreground);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
}

.botao-secundario:hover[b-mlwway4z9r] {
    background: var(--color-primary-soft);
}

.botao-primario[b-mlwway4z9r] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    border: none;
    border-radius: 0.5rem;
    background: var(--color-primary);
    color: var(--color-on-primary);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.15s;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

.botao-primario:hover[b-mlwway4z9r] {
    opacity: 0.95;
}

.botao-primario:disabled[b-mlwway4z9r] {
    opacity: 0.7;
    cursor: not-allowed;
}

.form-alert[b-mlwway4z9r] {
    padding: 0.625rem 0.875rem;
    border-radius: 0.375rem;
    font-size: 0.8rem;
    font-weight: 500;
    margin-bottom: 0.75rem;
}

.form-alert-error[b-mlwway4z9r] {
    background: var(--color-error-soft);
    color: var(--color-error-strong);
    border-left: 3px solid var(--color-error);
}

.toast-sucesso[b-mlwway4z9r] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 0.875rem;
    background: var(--color-primary-soft);
    color: var(--color-success-strong);
    border-radius: 0.375rem;
    font-size: 0.8rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

/* ─── Modal Overlay ─── */
.dt-modal-overlay[b-mlwway4z9r] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 1rem;
    backdrop-filter: blur(4px);
}
/* /Components/Pages/PortalProfessor/EmAulaPortalProfessor.razor.rz.scp.css */
/* ─── Em Aula - Mobile First ─── */
.ea__topo[b-5ete2fak0p] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
}

.ea__voltar[b-5ete2fak0p] {
    background: none;
    border: 1px solid var(--color-primary-soft);
    border-radius: 50%;
    width: 2.25rem;
    height: 2.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-muted-foreground);
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.15s;
}

.ea__voltar:hover[b-5ete2fak0p] {
    background: var(--color-primary-soft);
}

.ea__topo-info[b-5ete2fak0p] {
    flex: 1;
    min-width: 0;
}

.ea__topo-titulo[b-5ete2fak0p] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
}

.ea__topo-sub[b-5ete2fak0p] {
    font-size: 0.75rem;
    color: var(--color-muted-foreground);
    margin: 0.125rem 0 0;
}

/* ─── Cronometro ─── */
.ea__cronometro-card[b-5ete2fak0p] {
    background: linear-gradient(135deg, var(--color-secondary-accent) 0%, var(--color-primary-hover) 100%);
    border-radius: 0.75rem;
    padding: 1rem 1.25rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
    box-shadow: 0 4px 16px color-mix(in srgb, var(--color-secondary-accent) 30%, transparent);
}

.ea__cronometro-centro[b-5ete2fak0p] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
}

.ea__cronometro-label[b-5ete2fak0p] {
    font-size: 0.6rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.7);
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.ea__cronometro-tempo[b-5ete2fak0p] {
    font-family: var(--font-display);
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--color-on-primary);
    line-height: 1;
    letter-spacing: 0.02em;
}

.ea__cronometro-estado[b-5ete2fak0p] {
    font-size: 0.65rem;
    color: rgba(255, 255, 255, 0.8);
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.ea__cronometro-dot[b-5ete2fak0p] {
    width: 0.4rem;
    height: 0.4rem;
    border-radius: 50%;
    background: var(--color-secondary-accent);
    animation: pulse-dot-b-5ete2fak0p 1.5s ease-in-out infinite;
}

.ea__cronometro-dot--pausado[b-5ete2fak0p] {
    background: var(--color-accent);
    animation: none;
}

@keyframes pulse-dot-b-5ete2fak0p {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

/* ─── Botao Intervalo (esquerda) ─── */
.ea__btn-intervalo[b-5ete2fak0p] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    border-radius: 0.5rem;
    border: 1.5px solid rgba(255, 255, 255, 0.4);
    background: rgba(255, 255, 255, 0.1);
    color: var(--color-on-primary);
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}

.ea__btn-intervalo:hover[b-5ete2fak0p] {
    background: rgba(255, 255, 255, 0.2);
}

.ea__btn-intervalo--retomar[b-5ete2fak0p] {
    border-color: var(--color-secondary-accent);
    background: color-mix(in srgb, var(--color-success) 15%, transparent);
}

.ea__btn-intervalo--retomar:hover[b-5ete2fak0p] {
    background: color-mix(in srgb, var(--color-success) 25%, transparent);
}

/* ─── Botao Encerrar (direita) ─── */
.ea__btn-encerrar-topo[b-5ete2fak0p] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    border-radius: 0.5rem;
    border: 1.5px solid color-mix(in srgb, var(--color-error) 50%, transparent);
    background: color-mix(in srgb, var(--color-error) 15%, transparent);
    color: var(--color-on-primary);
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}

.ea__btn-encerrar-topo:hover[b-5ete2fak0p] {
    background: color-mix(in srgb, var(--color-error) 30%, transparent);
}

.ea__btn-encerrar-topo:disabled[b-5ete2fak0p] {
    opacity: 0.6;
    cursor: not-allowed;
}

.ea__btn-encerrar-topo .icon[b-5ete2fak0p] {
    font-size: 1rem;
}

/* ─── Ficha da Aula ─── */
.ea__ficha[b-5ete2fak0p] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.75rem;
    padding: 1rem 1.25rem;
    margin-bottom: 1.25rem;
}

.ea__ficha-linha[b-5ete2fak0p] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.4rem 0;
    border-bottom: 1px solid var(--color-surface-2);
}

.ea__ficha-linha:last-child[b-5ete2fak0p] {
    border-bottom: none;
}

.ea__ficha-label[b-5ete2fak0p] {
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--color-muted-foreground);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.ea__ficha-valor[b-5ete2fak0p] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--color-foreground);
}

/* ─── Tema ─── */
.ea__tema-card[b-5ete2fak0p] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.75rem;
    padding: 1rem 1.25rem;
    margin-bottom: 1.25rem;
}

.ea__tema-label[b-5ete2fak0p] {
    display: block;
    font-size: 0.65rem;
    font-weight: 700;
    color: var(--color-primary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.5rem;
}

.ea__tema-input[b-5ete2fak0p] {
    width: 100%;
    padding: 0.625rem 0.75rem;
    border: 1.5px solid var(--color-primary-soft);
    border-radius: 0.5rem;
    font-family: var(--font-body);
    font-size: 0.85rem;
    color: var(--color-foreground);
    background: var(--color-card);
    transition: border-color 0.15s, background 0.15s;
    box-sizing: border-box;
}

.ea__tema-input:focus[b-5ete2fak0p] {
    outline: none;
    border-color: var(--color-primary);
    background: var(--color-card);
}

/* ─── Tabs ─── */
.ea__tabs[b-5ete2fak0p] {
    display: flex;
    gap: 0.25rem;
    overflow-x: auto;
    padding-bottom: 0.5rem;
    margin-bottom: 0.75rem;
    scrollbar-width: none;
}

.ea__tabs[b-5ete2fak0p]::-webkit-scrollbar {
    display: none;
}

.ea__tab[b-5ete2fak0p] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    border: 1px solid var(--color-border);
    border-radius: 9999px;
    background: var(--color-card);
    color: var(--color-muted-foreground);
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

.ea__tab:hover[b-5ete2fak0p] {
    background: var(--color-primary-soft);
}

.ea__tab--ativa[b-5ete2fak0p] {
    background: var(--color-primary);
    color: var(--color-on-primary);
    border-color: var(--color-primary);
}

/* ─── Lista Presenca ─── */
.ea__presenca-card[b-5ete2fak0p] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.75rem;
    margin-bottom: 1.25rem;
    overflow: hidden;
}

.ea__presenca-header[b-5ete2fak0p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.875rem 1.25rem;
    border-bottom: 1px solid var(--color-surface-2);
}

.ea__presenca-titulo[b-5ete2fak0p] {
    font-family: var(--font-display);
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.ea__presenca-titulo .icon[b-5ete2fak0p] {
    color: var(--color-primary);
    font-size: 1.125rem;
}

.ea__presenca-contador[b-5ete2fak0p] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--color-muted-foreground);
    background: var(--color-surface-2);
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
}

.ea__presenca-estatisticas[b-5ete2fak0p] {
    display: flex;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--color-card);
    border-bottom: 1px solid var(--color-surface-2);
}

.ea__stat[b-5ete2fak0p] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.7rem;
    font-weight: 600;
}

.ea__stat--presentes[b-5ete2fak0p] { color: var(--color-secondary-accent); }
.ea__stat--ausentes[b-5ete2fak0p] { color: var(--color-error); }
.ea__stat--justificados[b-5ete2fak0p] { color: var(--color-accent-hover); }

.ea__stat-num[b-5ete2fak0p] {
    font-size: 0.85rem;
    font-weight: 700;
}

.ea__presenca-lista[b-5ete2fak0p] {
    max-height: 24rem;
    overflow-y: auto;
}

.ea__aluno-linha[b-5ete2fak0p] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    border-bottom: 1px solid var(--color-surface-2);
    transition: background 0.1s;
}

.ea__aluno-linha:last-child[b-5ete2fak0p] {
    border-bottom: none;
}

.ea__aluno-linha:hover[b-5ete2fak0p] {
    background: var(--color-card);
}

.ea__aluno-num[b-5ete2fak0p] {
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--color-muted-foreground);
    min-width: 1.5rem;
    text-align: center;
}

.ea__aluno-info[b-5ete2fak0p] {
    flex: 1;
    min-width: 0;
}

.ea__aluno-nome[b-5ete2fak0p] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--color-foreground);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ea__aluno-toggle[b-5ete2fak0p] {
    display: flex;
    gap: 0.25rem;
}

.ea__toggle-btn[b-5ete2fak0p] {
    padding: 0.3rem 0.5rem;
    border-radius: 0.375rem;
    border: 1.5px solid var(--color-primary-soft);
    background: var(--color-card);
    font-size: 0.65rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    color: var(--color-muted-foreground);
}

.ea__toggle-btn:hover[b-5ete2fak0p] {
    border-color: var(--color-border);
}

.ea__toggle-btn--presente[b-5ete2fak0p] {
    background: var(--color-primary-soft);
    border-color: var(--color-secondary-accent);
    color: var(--color-secondary-accent);
}

.ea__toggle-btn--ausente[b-5ete2fak0p] {
    background: var(--color-error-soft);
    border-color: var(--color-error);
    color: var(--color-error);
}

.ea__toggle-btn--justificado[b-5ete2fak0p] {
    background: var(--color-warning-soft);
    border-color: var(--color-accent-hover);
    color: var(--color-accent-hover);
}

/* ─── Plano de Aula (Tab) ─── */
.ea__plano-card[b-5ete2fak0p] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.75rem;
    margin-bottom: 1.25rem;
    overflow: hidden;
}

.ea__plano-header[b-5ete2fak0p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem;
    border-bottom: 1px solid var(--color-surface-2);
}

.ea__plano-icon[b-5ete2fak0p] {
    color: var(--color-primary);
    font-size: 1.125rem;
}

.ea__plano-titulo[b-5ete2fak0p] {
    font-family: var(--font-display);
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
    flex: 1;
}

.ea__badge-estado[b-5ete2fak0p] {
    display: inline-block;
    font-size: 0.6rem;
    font-weight: 700;
    padding: 0.15rem 0.5rem;
    border-radius: 9999px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.ea__badge-estado--rascunho[b-5ete2fak0p] { background: var(--color-surface-2); color: var(--color-muted-foreground); }
.ea__badge-estado--submetido[b-5ete2fak0p] { background: var(--color-warning-soft); color: var(--color-accent-hover); }
.ea__badge-estado--aprovado[b-5ete2fak0p] { background: var(--color-primary-soft); color: var(--color-secondary-accent); }
.ea__badge-estado--rejeitado[b-5ete2fak0p] { background: var(--color-error-soft); color: var(--color-error); }

.ea__plano-section[b-5ete2fak0p] {
    padding: 0.75rem 1.25rem;
    border-bottom: 1px solid var(--color-surface-2);
}

.ea__plano-section:last-child[b-5ete2fak0p] {
    border-bottom: none;
}

.ea__plano-section-label[b-5ete2fak0p] {
    display: block;
    font-size: 0.6rem;
    font-weight: 700;
    color: var(--color-primary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.5rem;
}

.ea__plano-tema[b-5ete2fak0p] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.4rem 0;
}

.ea__plano-tema-ordem[b-5ete2fak0p] {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--color-primary);
    min-width: 1.25rem;
}

.ea__plano-tema-info[b-5ete2fak0p] {
    flex: 1;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.ea__plano-tema-nome[b-5ete2fak0p] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-foreground);
}

.ea__plano-tema-duracao[b-5ete2fak0p] {
    font-size: 0.65rem;
    color: var(--color-muted-foreground);
    background: var(--color-surface-2);
    padding: 0.15rem 0.5rem;
    border-radius: 9999px;
}

.ea__plano-texto[b-5ete2fak0p] {
    font-size: 0.8rem;
    color: var(--color-muted-foreground);
    line-height: 1.5;
    margin: 0;
}

.ea__plano-vazio[b-5ete2fak0p] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 2rem 1rem;
    gap: 0.5rem;
    color: var(--color-border);
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.75rem;
    margin-bottom: 1.25rem;
}

.ea__plano-vazio .icon[b-5ete2fak0p] {
    font-size: 2rem;
}

.ea__plano-vazio p[b-5ete2fak0p] {
    font-size: 0.8rem;
    margin: 0;
}

/* ─── Notas Placeholder (ELITE) ─── */
.ea__notas-placeholder[b-5ete2fak0p] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 2.5rem 1rem;
    gap: 0.5rem;
    background: var(--color-card);
    border: 1px dashed var(--color-border);
    border-radius: 0.75rem;
    margin-bottom: 1.25rem;
    text-align: center;
}

.ea__notas-placeholder .icon[b-5ete2fak0p] {
    font-size: 2.5rem;
    color: var(--color-border);
}

.ea__notas-placeholder h3[b-5ete2fak0p] {
    font-family: var(--font-display);
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
}

.ea__notas-placeholder p[b-5ete2fak0p] {
    font-size: 0.8rem;
    color: var(--color-muted-foreground);
    margin: 0;
}

/* ─── Intervalo Overlay ─── */
.ea__intervalo-overlay[b-5ete2fak0p] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    backdrop-filter: blur(4px);
}

.ea__intervalo-modal[b-5ete2fak0p] {
    background: var(--color-card);
    border-radius: 1rem;
    padding: 2rem;
    max-width: 20rem;
    width: 90%;
    text-align: center;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
}

.ea__intervalo-icon[b-5ete2fak0p] {
    font-size: 3rem;
    color: var(--color-accent);
    margin-bottom: 0.75rem;
}

.ea__intervalo-titulo[b-5ete2fak0p] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0 0 0.25rem;
}

.ea__intervalo-desc[b-5ete2fak0p] {
    font-size: 0.8rem;
    color: var(--color-muted-foreground);
    margin: 0 0 1.25rem;
}

.ea__intervalo-btn[b-5ete2fak0p] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.75rem;
    background: var(--color-secondary-accent);
    color: var(--color-on-primary);
    border: none;
    border-radius: 0.5rem;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.15s;
}

.ea__intervalo-btn:hover[b-5ete2fak0p] {
    opacity: 0.95;
}

/* ─── Loading / Erro / Sucesso ─── */
.ea__loading[b-5ete2fak0p] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    gap: 0.75rem;
    color: var(--color-muted-foreground);
}

.ea__loading p[b-5ete2fak0p] {
    font-size: 0.85rem;
    margin: 0;
}

.ea__erro[b-5ete2fak0p] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 2rem 1rem;
    gap: 0.5rem;
    color: var(--color-error);
}

.ea__erro p[b-5ete2fak0p] {
    font-size: 0.85rem;
    margin: 0;
}

.ea__sucesso[b-5ete2fak0p] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--color-primary-soft);
    color: var(--color-secondary-accent);
    border-radius: 0.5rem;
    font-size: 0.8rem;
    font-weight: 600;
    margin-top: 0.75rem;
}

@keyframes spin-b-5ete2fak0p {
    to { transform: rotate(360deg); }
}
/* /Components/Pages/PortalProfessor/HomePageGeral.razor.rz.scp.css */
.hp__nav[b-ztsj9lt2pv] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 50;
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--color-primary-soft);
    height: 64px;
}

.hp__nav-inner[b-ztsj9lt2pv] {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1rem;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}

.hp__logo[b-ztsj9lt2pv] {
    display: flex;
    align-items: center;
}

.hp__logo-img[b-ztsj9lt2pv] {
    height: 2.5rem;
    width: auto;
    object-fit: contain;
}

.hp__nav-links[b-ztsj9lt2pv] {
    display: none;
    align-items: center;
    gap: 1.5rem;
}

.hp__nav-links a[b-ztsj9lt2pv] {
    color: var(--color-muted-foreground);
    text-decoration: none;
    font-size: 1rem;
    transition: color 0.2s;
}

.hp__nav-links a:hover[b-ztsj9lt2pv] {
    color: var(--color-primary);
}

.hp__nav-links .hp__nav-active[b-ztsj9lt2pv] {
    color: var(--color-primary);
    border-bottom: 2px solid var(--color-primary);
    padding-bottom: 4px;
    font-weight: 600;
}

@media (min-width: 768px) {
    .hp__nav-links[b-ztsj9lt2pv] { display: flex; }
    .hp__nav-inner[b-ztsj9lt2pv] { padding: 0 2.5rem; }
}

.hp__btn-primary[b-ztsj9lt2pv] {
    background: var(--color-primary);
    color: var(--color-on-primary);
    border: none;
    padding: 0.5rem 1.5rem;
    border-radius: 0.5rem;
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 0.875rem;
    cursor: pointer;
    transition: opacity 0.2s, transform 0.15s;
}

.hp__btn-primary:hover[b-ztsj9lt2pv] { opacity: 0.9; }
.hp__btn-primary:active[b-ztsj9lt2pv] { transform: scale(0.95); }

.hp__btn-lg[b-ztsj9lt2pv] {
    padding: 1rem 2rem;
    font-size: 1rem;
    font-weight: 700;
    box-shadow: 0 4px 20px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

.hp__btn-outline[b-ztsj9lt2pv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--color-card);
    color: var(--color-secondary-accent);
    border: 1px solid var(--color-success);
    padding: 0.75rem 2rem;
    border-radius: 9999px;
    font-weight: 700;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.3s;
}

.hp__btn-outline:hover[b-ztsj9lt2pv] {
    background: var(--color-secondary-accent);
    color: var(--color-on-primary);
}

.hp__btn-outline .icon[b-ztsj9lt2pv] {
    font-size: 18px;
    transition: transform 0.3s;
}

.hp__btn-outline:hover .icon[b-ztsj9lt2pv] {
    transform: translateX(4px);
}

.hp__btn-secondary[b-ztsj9lt2pv] {
    width: 100%;
    padding: 0.75rem;
    background: transparent;
    color: var(--color-primary);
    border: 1px solid var(--color-primary);
    border-radius: 0.5rem;
    font-weight: 600;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.2s;
}

.hp__btn-secondary:hover[b-ztsj9lt2pv] {
    background: var(--color-primary);
    color: var(--color-on-primary);
}

.hp__btn-white[b-ztsj9lt2pv] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    background: var(--color-card);
    color: var(--color-primary);
    border: none;
    padding: 1rem;
    border-radius: 0.5rem;
    font-weight: 700;
    font-size: 0.875rem;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    cursor: pointer;
    transition: background 0.2s;
}

.hp__btn-white:hover[b-ztsj9lt2pv] {
    background: var(--color-primary-soft);
}

.hp__main[b-ztsj9lt2pv] {
    padding-top: 64px;
}

.hp__hero[b-ztsj9lt2pv] {
    position: relative;
    min-height: 716px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 1rem;
    overflow: hidden;
}

.hp__hero-bg[b-ztsj9lt2pv] {
    position: absolute;
    inset: 0;
    z-index: -10;
    background: linear-gradient(to bottom right, var(--color-background), var(--color-card));
}

.hp__hero-glow[b-ztsj9lt2pv] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 800px;
    height: 800px;
    background: color-mix(in srgb, var(--color-primary) 5%, transparent);
    border-radius: 50%;
    filter: blur(120px);
    z-index: -5;
}

.hp__hero-content[b-ztsj9lt2pv] {
    max-width: 56rem;
    width: 100%;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.hp__hero-title[b-ztsj9lt2pv] {
    font-family: var(--font-display);
    font-size: 2rem;
    line-height: 1.2;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
}

@media (min-width: 768px) {
    .hp__hero-title[b-ztsj9lt2pv] { font-size: 3rem; }
}

.hp__hero-subtitle[b-ztsj9lt2pv] {
    font-size: 1.125rem;
    line-height: 1.6;
    color: var(--color-muted-foreground);
    max-width: 42rem;
    margin: 0;
}

.hp__search-card[b-ztsj9lt2pv] {
    width: 100%;
    max-width: 36rem;
    margin-top: 2rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(12px);
    padding: 0.5rem;
    border-radius: 0.75rem;
    border: 1px solid var(--color-border);
    box-shadow: 0 4px 16px rgba(0,0,0,0.06);
}

@media (min-width: 768px) {
    .hp__search-card[b-ztsj9lt2pv] { flex-direction: row; }
}

.hp__search-input-wrap[b-ztsj9lt2pv] {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
}

.hp__search-icon[b-ztsj9lt2pv] {
    position: absolute;
    left: 1rem;
    color: var(--color-muted-foreground);
}

.hp__search-input[b-ztsj9lt2pv] {
    width: 100%;
    padding: 1rem 1rem 1rem 3rem;
    background: transparent;
    border: none;
    outline: none;
    font-size: 1rem;
    font-family: var(--font-body);
    color: var(--color-foreground);
}

.hp__search-input[b-ztsj9lt2pv]::placeholder {
    color: var(--color-muted-foreground);
}

.hp__search-hint[b-ztsj9lt2pv] {
    font-size: 0.75rem;
    color: var(--color-muted-foreground);
    margin-top: 0.5rem;
}

.hp__carreira[b-ztsj9lt2pv] {
    padding: 6rem 1rem;
    background: var(--color-primary-soft);
}

@media (min-width: 768px) {
    .hp__carreira[b-ztsj9lt2pv] { padding: 6rem 2.5rem; }
}

.hp__carreira-header[b-ztsj9lt2pv] {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
    margin-bottom: 3rem;
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 768px) {
    .hp__carreira-header[b-ztsj9lt2pv] { flex-direction: row; align-items: flex-end; }
}

.hp__section-title[b-ztsj9lt2pv] {
    font-family: var(--font-display);
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--color-foreground);
    margin: 0;
}

.hp__section-subtitle[b-ztsj9lt2pv] {
    color: var(--color-muted-foreground);
    font-size: 1rem;
    margin: 0.25rem 0 0;
}

.hp__bento[b-ztsj9lt2pv] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    max-width: 1280px;
    margin: 0 auto;
}

@media (min-width: 768px) {
    .hp__bento[b-ztsj9lt2pv] { grid-template-columns: repeat(3, 1fr); }
}

.hp__bento-card[b-ztsj9lt2pv] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.75rem;
    padding: 1.5rem;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
    transition: box-shadow 0.2s;
}

.hp__bento-card:hover[b-ztsj9lt2pv] {
    box-shadow: 0 4px 16px rgba(0,0,0,0.08);
}

.hp__bento-card-header[b-ztsj9lt2pv] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

.hp__bento-logo[b-ztsj9lt2pv] {
    width: 64px;
    height: 64px;
    background: var(--color-primary-soft);
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.875rem;
    color: var(--color-muted-foreground);
}

.hp__bento-badge[b-ztsj9lt2pv] {
    background: color-mix(in srgb, var(--color-secondary-accent) 10%, transparent);
    color: var(--color-secondary-accent);
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 500;
}

.hp__bento-card-title[b-ztsj9lt2pv] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 700;
    margin: 0 0 0.5rem;
    color: var(--color-foreground);
}

.hp__bento-card-local[b-ztsj9lt2pv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--color-muted-foreground);
    font-size: 0.75rem;
    margin-bottom: 1rem;
}

.hp__bento-card-local .icon[b-ztsj9lt2pv] {
    font-size: 18px;
}

.hp__bento-card-vagas[b-ztsj9lt2pv] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.hp__bento-card-vaga[b-ztsj9lt2pv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--color-muted-foreground);
    font-size: 0.75rem;
}

.hp__bento-card-vaga .icon[b-ztsj9lt2pv] {
    color: var(--color-secondary-accent);
    font-size: 18px;
}

.hp__bento-cta[b-ztsj9lt2pv] {
    position: relative;
    overflow: hidden;
    background: linear-gradient(to bottom right, var(--color-primary), var(--color-secondary-accent));
    border-radius: 0.75rem;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    color: var(--color-on-primary);
    box-shadow: 0 8px 32px rgba(0,0,0,0.12);
}

.hp__bento-cta-bg[b-ztsj9lt2pv] {
    position: absolute;
    right: -3rem;
    top: -3rem;
    width: 12rem;
    height: 12rem;
    background: rgba(255,255,255,0.1);
    border-radius: 50%;
    filter: blur(64px);
}

.hp__bento-cta-title[b-ztsj9lt2pv] {
    font-family: var(--font-display);
    font-size: 1.5rem;
    font-weight: 600;
    margin: 0 0 1rem;
}

.hp__bento-cta-text[b-ztsj9lt2pv] {
    font-size: 1rem;
    opacity: 0.9;
    margin: 0 0 2rem;
}

.hp__stats[b-ztsj9lt2pv] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    padding: 4rem 1rem;
    max-width: 1280px;
    margin: 0 auto;
    background: var(--color-background);
}

@media (min-width: 768px) {
    .hp__stats[b-ztsj9lt2pv] {
        grid-template-columns: repeat(4, 1fr);
        padding: 4rem 2.5rem;
    }
}

.hp__stat[b-ztsj9lt2pv] {
    text-align: center;
}

.hp__stat-value[b-ztsj9lt2pv] {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 700;
    color: var(--color-primary);
}

@media (min-width: 768px) {
    .hp__stat-value[b-ztsj9lt2pv] { font-size: 3rem; }
}

.hp__stat-label[b-ztsj9lt2pv] {
    font-size: 0.875rem;
    color: var(--color-muted-foreground);
    margin-top: 0.25rem;
}

.hp__footer[b-ztsj9lt2pv] {
    border-top: 1px solid var(--color-border);
    background: var(--color-primary-soft);
    padding: 2rem 1rem;
}

.hp__footer-inner[b-ztsj9lt2pv] {
    max-width: 1280px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    align-items: center;
}

@media (min-width: 768px) {
    .hp__footer-inner[b-ztsj9lt2pv] {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
    }
}

.hp__footer-logo[b-ztsj9lt2pv] {
    margin-bottom: 0.5rem;
}

.hp__footer-copy[b-ztsj9lt2pv] {
    font-size: 0.75rem;
    color: var(--color-muted-foreground);
    max-width: 20rem;
    margin: 0;
    text-align: center;
}

@media (min-width: 768px) {
    .hp__footer-copy[b-ztsj9lt2pv] { text-align: left; }
}

.hp__footer-links[b-ztsj9lt2pv] {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    justify-content: center;
}

.hp__footer-links a[b-ztsj9lt2pv] {
    font-size: 0.75rem;
    color: var(--color-muted-foreground);
    text-decoration: none;
    transition: color 0.2s;
}

.hp__footer-links a:hover[b-ztsj9lt2pv] {
    color: var(--color-primary);
}
/* /Components/Pages/PortalProfessor/Layout/PortalProfessorLayout.razor.rz.scp.css */
*[b-1eyl9hi0ap], *[b-1eyl9hi0ap]::before, *[b-1eyl9hi0ap]::after {
    box-sizing: border-box;
}

.ppl__root[b-1eyl9hi0ap] {
    min-height: 100vh;
    background: var(--color-background);
    font-family: var(--font-body);
    color: var(--color-foreground);
    position: relative;
}

/* ─── Sidebar ─── */
.ppl__sidebar[b-1eyl9hi0ap] {
    position: fixed;
    top: 0;
    left: 0;
    width: 16rem;
    height: 100vh;
    background: var(--color-card);
    border-right: 1px solid color-mix(in srgb, var(--color-border) 30%, transparent);
    display: flex;
    flex-direction: column;
    padding: 1.5rem 0;
    z-index: 100;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
}

.ppl__sidebar--open[b-1eyl9hi0ap] {
    transform: translateX(0);
}

@media (min-width: 1024px) {
    .ppl__sidebar[b-1eyl9hi0ap] {
        transform: translateX(0);
    }
}

.ppl__overlay[b-1eyl9hi0ap] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 90;
    backdrop-filter: blur(4px);
}

@media (min-width: 1024px) {
    .ppl__overlay[b-1eyl9hi0ap] { display: none; }
}

.ppl__sidebar-header[b-1eyl9hi0ap] {
    padding: 0 1.5rem;
    margin-bottom: 2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
}

.ppl__logo-icon[b-1eyl9hi0ap] {
    height: 2.5rem;
    width: auto;
    object-fit: contain;
}

.ppl__sidebar-label[b-1eyl9hi0ap] {
    font-size: 0.875rem;
    color: var(--color-muted-foreground);
    margin: 0;
}

.ppl__sidebar-nav[b-1eyl9hi0ap] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0 0.5rem;
}

.ppl__nav-item[b-1eyl9hi0ap] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    border-radius: 0.5rem;
    color: var(--color-muted-foreground);
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 500;
    border: none;
    background: transparent;
    cursor: pointer;
    width: 100%;
    text-align: left;
    transition: background 0.2s;
}

.ppl__nav-item:hover[b-1eyl9hi0ap] {
    background: rgba(0,0,0,0.04);
}

.ppl__nav-item--active[b-1eyl9hi0ap] {
    background: var(--color-success-soft);
    color: var(--color-secondary-accent);
    font-weight: 600;
}

.ppl__nav-item--sair[b-1eyl9hi0ap] {
    color: var(--color-error);
}

.ppl__nav-item--sair:hover[b-1eyl9hi0ap] {
    background: color-mix(in srgb, var(--color-error) 8%, transparent);
}

.ppl__nav-item--locked[b-1eyl9hi0ap] {
    opacity: 0.6;
    cursor: pointer;
}

.ppl__nav-item--locked:hover[b-1eyl9hi0ap] {
    opacity: 1;
    background: color-mix(in srgb, var(--color-warning) 8%, transparent);
}

.ppl__sidebar-footer[b-1eyl9hi0ap] {
    padding: 1rem 0.5rem 0;
    border-top: 1px solid color-mix(in srgb, var(--color-border) 30%, transparent);
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

/* ─── Main area ─── */
.ppl__main-area[b-1eyl9hi0ap] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

@media (min-width: 1024px) {
    .ppl__main-area[b-1eyl9hi0ap] {
        margin-left: 16rem;
    }
}

/* ─── Header ─── */
.ppl__header[b-1eyl9hi0ap] {
    position: sticky;
    top: 0;
    z-index: 40;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 3.25rem;
    padding: 0 0.75rem;
    background: color-mix(in srgb, var(--color-surface-2) 80%, transparent);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid color-mix(in srgb, var(--color-border) 30%, transparent);
}

@media (min-width: 768px) {
    .ppl__header[b-1eyl9hi0ap] { padding: 0 2.5rem; height: 4rem; }
}

.ppl__header-left[b-1eyl9hi0ap] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.ppl__menu-btn[b-1eyl9hi0ap] {
    display: flex;
    background: none;
    border: none;
    padding: 0.375rem;
    border-radius: 0.5rem;
    cursor: pointer;
    color: var(--color-muted-foreground);
}

@media (min-width: 1024px) {
    .ppl__menu-btn[b-1eyl9hi0ap] { display: none; }
}

.ppl__breadcrumb[b-1eyl9hi0ap] {
    display: none;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.875rem;
    color: var(--color-muted-foreground);
}

.ppl__breadcrumb .icon[b-1eyl9hi0ap] {
    font-size: 16px;
}

.ppl__breadcrumb-active[b-1eyl9hi0ap] {
    color: var(--color-primary);
    font-weight: 700;
}

@media (min-width: 768px) {
    .ppl__breadcrumb[b-1eyl9hi0ap] { display: flex; }
}

.ppl__header-right[b-1eyl9hi0ap] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.ppl__icon-btn[b-1eyl9hi0ap] {
    position: relative;
    background: none;
    border: none;
    padding: 0.5rem;
    border-radius: 0.5rem;
    cursor: pointer;
    color: var(--color-muted-foreground);
    transition: background 0.2s;
}

.ppl__icon-btn:hover[b-1eyl9hi0ap] {
    background: color-mix(in srgb, var(--color-primary) 5%, transparent);
}

.ppl__notif-dot[b-1eyl9hi0ap] {
    position: absolute;
    top: 0.25rem;
    right: 0.25rem;
    width: 0.5rem;
    height: 0.5rem;
    background: var(--color-error);
    border-radius: 50%;
    border: 2px solid var(--color-card);
}

.ppl__profile[b-1eyl9hi0ap] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    cursor: pointer;
}

.ppl__profile-info[b-1eyl9hi0ap] {
    display: none;
    text-align: right;
}

@media (min-width: 768px) {
    .ppl__profile-info[b-1eyl9hi0ap] { display: block; }
}

.ppl__profile-name[b-1eyl9hi0ap] {
    font-size: 0.875rem;
    font-weight: 600;
    margin: 0;
    color: var(--color-foreground);
}

.ppl__profile-role[b-1eyl9hi0ap] {
    font-size: 0.75rem;
    color: var(--color-muted-foreground);
    margin: 0;
}

.ppl__avatar[b-1eyl9hi0ap] {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: var(--color-success);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.75rem;
    color: var(--color-primary-hover);
    border: 2px solid color-mix(in srgb, var(--color-primary) 10%, transparent);
    flex-shrink: 0;
}

@media (min-width: 768px) {
    .ppl__avatar[b-1eyl9hi0ap] { width: 2.5rem; height: 2.5rem; font-size: 0.875rem; }
}

/* ─── Content ─── */
.ppl__content[b-1eyl9hi0ap] {
    flex: 1;
    padding: 0.75rem 0.75rem 5rem;
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
}

@media (min-width: 768px) {
    .ppl__content[b-1eyl9hi0ap] { padding: 1.5rem 2.5rem 1.5rem; }
}

/* ─── Bottom nav ─── */
.ppl__bottom-nav[b-1eyl9hi0ap] {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 50;
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 0.3rem 0.5rem 0.5rem;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(12px);
    border-top: 1px solid color-mix(in srgb, var(--color-border) 30%, transparent);
    box-shadow: 0 -2px 12px rgba(0,0,0,0.06);
}

@media (min-width: 1024px) {
    .ppl__bottom-nav[b-1eyl9hi0ap] { display: none; }
}

.ppl__bottom-item[b-1eyl9hi0ap] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.1rem;
    text-decoration: none;
    color: var(--color-muted-foreground);
    font-size: 0.6rem;
    padding: 0.25rem 0.625rem;
    border-radius: 0.5rem;
    transition: all 0.15s;
}

.ppl__bottom-item .icon[b-1eyl9hi0ap] {
    font-size: 1.125rem;
}

.ppl__bottom-item--active[b-1eyl9hi0ap] {
    color: var(--color-primary);
    background: color-mix(in srgb, var(--color-primary) 8%, transparent);
    font-weight: 600;
}

/* ─── Relogio ─── */
.ppl__relogio[b-1eyl9hi0ap] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.625rem;
    background: var(--color-surface-2);
    border-radius: 0.375rem;
    font-family: var(--font-display);
}

.ppl__relogio-ico[b-1eyl9hi0ap] {
    font-size: 1rem;
    color: var(--color-primary);
}

.ppl__relogio-tempo[b-1eyl9hi0ap] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--color-foreground);
    letter-spacing: 0.05em;
}

/* == Forest & Amber — overrides finais ==================================== */
.ppl__root[b-1eyl9hi0ap] { background: var(--color-background); color: var(--color-foreground); }

.ppl__sidebar[b-1eyl9hi0ap] {
    background: linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary-hover) 100%);
    border-right: 1px solid color-mix(in srgb, var(--color-on-dark) 14%, transparent);
}

.ppl__sidebar-label[b-1eyl9hi0ap] { color: color-mix(in srgb, var(--color-on-dark) 65%, transparent); }

.ppl__nav-item[b-1eyl9hi0ap] { color: color-mix(in srgb, var(--color-on-dark) 82%, transparent); }
.ppl__nav-item:hover[b-1eyl9hi0ap] { background: color-mix(in srgb, var(--color-on-dark) 8%, transparent); color: var(--color-on-dark); }
.ppl__nav-item--active[b-1eyl9hi0ap] { background: color-mix(in srgb, var(--color-secondary-accent) 28%, transparent); color: var(--color-on-dark); }
.ppl__nav-item--sair[b-1eyl9hi0ap] { color: color-mix(in srgb, var(--color-error) 35%, var(--color-on-dark)); }
.ppl__nav-item--sair:hover[b-1eyl9hi0ap] { background: color-mix(in srgb, var(--color-error) 22%, transparent); color: var(--color-on-dark); }
.ppl__nav-item--locked:hover[b-1eyl9hi0ap] { background: color-mix(in srgb, var(--color-accent) 16%, transparent); }
.ppl__sidebar-footer[b-1eyl9hi0ap] { border-top-color: color-mix(in srgb, var(--color-on-dark) 16%, transparent); }

.ppl__header[b-1eyl9hi0ap] {
    background: rgba(255, 255, 255, .92);
    border-bottom: 1px solid var(--color-border);
    box-shadow: 0 1px 2px color-mix(in srgb, var(--color-primary) 6%, transparent);
}
.ppl__menu-btn[b-1eyl9hi0ap] { color: var(--color-primary); }
.ppl__breadcrumb[b-1eyl9hi0ap] { color: var(--color-muted-foreground); }
.ppl__avatar[b-1eyl9hi0ap] { background: var(--color-primary); color: var(--color-on-dark); }

.ppl__bottom-nav[b-1eyl9hi0ap] {
    background: rgba(255, 255, 255, .96);
    border-top: 1px solid var(--color-border);
    box-shadow: 0 -8px 24px color-mix(in srgb, var(--color-primary) 8%, transparent);
}
.ppl__bottom-item--active[b-1eyl9hi0ap] { color: var(--color-primary); }
/* /Components/Pages/PortalProfessor/LoginPortalProfessor.razor.rz.scp.css */
.lp__page[b-yi5znbejz1] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    position: relative;
    overflow: hidden;
    background: var(--color-card);
    font-family: var(--font-body);
    color: var(--color-foreground);
    box-sizing: border-box;
}

[b-yi5znbejz1] *, [b-yi5znbejz1] *::before, [b-yi5znbejz1] *::after {
    box-sizing: inherit;
}

.lp__bg-glow[b-yi5znbejz1] {
    position: fixed;
    pointer-events: none;
    z-index: 0;
    border-radius: 50%;
    filter: blur(100px);
}

.lp__bg-glow--top[b-yi5znbejz1] {
    top: -20%;
    right: -10%;
    width: 80%;
    height: 50%;
    background: color-mix(in srgb, var(--color-primary-soft) 20%, transparent);
}

.lp__bg-glow--bottom[b-yi5znbejz1] {
    bottom: -10%;
    left: -10%;
    width: 60%;
    height: 40%;
    background: color-mix(in srgb, var(--color-primary-soft) 30%, transparent);
}

.lp__container[b-yi5znbejz1] {
    width: 100%;
    max-width: 24rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 1;
}

.lp__brand[b-yi5znbejz1] {
    margin-bottom: 2.5rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.lp__logo-img[b-yi5znbejz1] {
    height: 4rem;
    width: auto;
    object-fit: contain;
}

.lp__brand-label[b-yi5znbejz1] {
    font-size: 0.875rem;
    color: var(--color-muted-foreground);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-top: 0.5rem;
}

.lp__card[b-yi5znbejz1] {
    width: 100%;
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.75rem;
    padding: 1.5rem;
    box-shadow: 0 20px 40px -20px color-mix(in srgb, var(--color-primary) 12%, transparent);
}

.lp__field[b-yi5znbejz1] {
    margin-bottom: 1.25rem;
}

.lp__field label[b-yi5znbejz1] {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--color-muted-foreground);
    margin-bottom: 0.25rem;
    margin-left: 0.25rem;
}

.lp__input-group[b-yi5znbejz1] {
    position: relative;
    display: flex;
    align-items: center;
}

[b-yi5znbejz1] .lp__input {
    width: 100%;
    padding: 0.875rem 2.5rem 0.875rem 1rem;
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.5rem;
    font-size: 1rem;
    font-family: var(--font-body);
    color: var(--color-foreground);
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
}

[b-yi5znbejz1] .lp__input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 12%, transparent);
}

[b-yi5znbejz1] .lp__input::placeholder {
    color: var(--color-muted-foreground);
}

.lp__input-icon[b-yi5znbejz1] {
    position: absolute;
    right: 0.75rem;
    color: var(--color-muted-foreground);
    pointer-events: none;
    transition: color 0.2s;
}

.lp__input-group:focus-within .lp__input-icon[b-yi5znbejz1] {
    color: var(--color-primary);
}

.lp__toggle-pwd[b-yi5znbejz1] {
    position: absolute;
    right: 0.5rem;
    background: none;
    border: none;
    color: var(--color-muted-foreground);
    cursor: pointer;
    padding: 0.25rem;
    display: flex;
    align-items: center;
}

.lp__toggle-pwd:hover[b-yi5znbejz1] {
    color: var(--color-primary);
}

[b-yi5znbejz1] .lp__validation {
    font-size: 0.75rem;
    color: var(--color-error);
    margin-top: 0.25rem;
    display: block;
}

.lp__error[b-yi5znbejz1] {
    background: var(--color-error-soft);
    color: var(--color-error-strong);
    border-left: 4px solid var(--color-error);
    padding: 0.7rem 0.8rem;
    border-radius: 0.5rem;
    font-size: 0.95rem;
    margin-bottom: 1rem;
}

.lp__submit[b-yi5znbejz1] {
    width: 100%;
    padding: 1rem;
    background: var(--color-primary);
    color: var(--color-on-primary);
    border: none;
    border-radius: 0.5rem;
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    cursor: pointer;
    transition: transform 0.15s, opacity 0.2s;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

.lp__submit:hover[b-yi5znbejz1] {
    opacity: 0.95;
}

.lp__submit:active[b-yi5znbejz1] {
    transform: scale(0.98);
}

.lp__submit:disabled[b-yi5znbejz1] {
    opacity: 0.7;
    cursor: not-allowed;
}

.lp__spin[b-yi5znbejz1] {
    animation: lp-spin-b-yi5znbejz1 1s linear infinite;
}

@keyframes lp-spin-b-yi5znbejz1 {
    to { transform: rotate(360deg); }
}

.lp__links[b-yi5znbejz1] {
    margin-top: 1.5rem;
    text-align: center;
}

.lp__links a[b-yi5znbejz1] {
    color: var(--color-primary);
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
}

.lp__links a:hover[b-yi5znbejz1] {
    text-decoration: underline;
}

.lp__support[b-yi5znbejz1] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 2rem;
    padding: 1rem;
    background: var(--color-primary-soft);
    border: 1px solid color-mix(in srgb, var(--color-border) 30%, transparent);
    border-radius: 0.75rem;
}

.lp__support-icon[b-yi5znbejz1] {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: var(--color-success);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary-hover);
}

.lp__support-title[b-yi5znbejz1] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--color-foreground);
    margin: 0;
}

.lp__support-link[b-yi5znbejz1] {
    font-size: 0.75rem;
    color: var(--color-primary);
    text-decoration: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    font-family: var(--font-body);
}

.lp__support-arrow[b-yi5znbejz1] {
    margin-left: auto;
    color: var(--color-muted-foreground);
}

.lp__footer-brand[b-yi5znbejz1] {
    margin-top: 2rem;
    text-align: center;
}

.lp__footer-brand p[b-yi5znbejz1] {
    font-size: 0.75rem;
    color: var(--color-border);
    margin: 0;
}

.lp__footer-brand strong[b-yi5znbejz1] {
    color: var(--color-muted-foreground);
}

/* ─── Modal Suporte ─── */
.lp__modal-close[b-yi5znbejz1] {
    background: none;
    border: none;
    font-size: 1.5rem;
    color: var(--color-muted-foreground);
    cursor: pointer;
    padding: 0.25rem;
    line-height: 1;
    border-radius: 0.25rem;
}

.lp__modal-close:hover[b-yi5znbejz1] {
    color: var(--color-foreground);
    background: var(--color-primary-soft);
}

.lp__modal-chat[b-yi5znbejz1] {
    flex: 1;
    overflow-y: auto;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    min-height: 12rem;
    max-height: 20rem;
}

.lp__chat-msg[b-yi5znbejz1] {
    display: flex;
    gap: 0.5rem;
    max-width: 85%;
}

.lp__chat-msg--support[b-yi5znbejz1] {
    align-self: flex-start;
}

.lp__chat-msg--user[b-yi5znbejz1] {
    align-self: flex-end;
    flex-direction: row-reverse;
}

.lp__chat-avatar[b-yi5znbejz1] {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.lp__chat-avatar--support[b-yi5znbejz1] {
    background: var(--color-primary-soft);
    color: var(--color-secondary-accent);
    overflow: hidden;
}

.lp__chat-logo[b-yi5znbejz1] {
    height: 1.5rem;
    width: auto;
    object-fit: contain;
}

.lp__chat-bubble[b-yi5znbejz1] {
    padding: 0.625rem 0.875rem;
    border-radius: 0.75rem;
    font-size: 0.875rem;
    line-height: 1.4;
    word-break: break-word;
}

.lp__chat-msg--support .lp__chat-bubble[b-yi5znbejz1] {
    background: var(--color-primary-soft);
    color: var(--color-foreground);
    border-bottom-left-radius: 0.25rem;
}

.lp__chat-msg--user .lp__chat-bubble[b-yi5znbejz1] {
    background: var(--color-primary);
    color: var(--color-on-primary);
    border-bottom-right-radius: 0.25rem;
}

.lp__chat-bubble--pending[b-yi5znbejz1] {
    background: var(--color-primary-soft) !important;
    color: var(--color-muted-foreground) !important;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.lp__chat-spin[b-yi5znbejz1] {
    animation: lp-spin-b-yi5znbejz1 1s linear infinite;
    font-size: 1rem;
}

.lp__modal-input-area[b-yi5znbejz1] {
    display: flex;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-top: 1px solid color-mix(in srgb, var(--color-border) 30%, transparent);
}

.lp__modal-input[b-yi5znbejz1] {
    flex: 1;
    padding: 0.625rem 1rem;
    border: 1px solid var(--color-border);
    border-radius: 0.5rem;
    font-family: var(--font-body);
    font-size: 0.875rem;
    outline: none;
    transition: border-color 0.2s;
}

.lp__modal-input:focus[b-yi5znbejz1] {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 12%, transparent);
}

.lp__modal-input:disabled[b-yi5znbejz1] {
    background: var(--color-primary-soft);
}

.lp__modal-send[b-yi5znbejz1] {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: var(--color-primary);
    color: var(--color-on-primary);
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s;
    flex-shrink: 0;
}

.lp__modal-send:hover[b-yi5znbejz1] {
    opacity: 0.9;
}

.lp__modal-send:disabled[b-yi5znbejz1] {
    opacity: 0.5;
    cursor: not-allowed;
}

.lp__modal-send .icon[b-yi5znbejz1] {
    font-size: 20px;
}
/* /Components/Pages/PortalProfessor/PlanearAulaPortalProfessional.razor.rz.scp.css */
/* ─── Planear Aula - Scoped ─── */
.plan-topo[b-0311hf9glj] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
}

.plan-topo-voltar[b-0311hf9glj] {
    background: none;
    border: 1px solid var(--color-primary-soft);
    border-radius: 50%;
    width: 2.25rem;
    height: 2.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-muted-foreground);
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.15s;
}

.plan-topo-voltar:hover[b-0311hf9glj] {
    background: var(--color-primary-soft);
}

.plan-topo-titulo[b-0311hf9glj] {
    font-family: var(--font-display);
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0;
}

.plan-topo-sub[b-0311hf9glj] {
    font-size: 0.75rem;
    color: var(--color-muted-foreground);
    margin: 0.125rem 0 0;
}

/* ─── Card ─── */
.plan-card[b-0311hf9glj] {
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.75rem;
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 640px;
}

/* ─── Campos ─── */
.plan-campo[b-0311hf9glj] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.plan-label[b-0311hf9glj] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-foreground);
}

.plan-input[b-0311hf9glj],
.plan-textarea[b-0311hf9glj] {
    width: 100%;
    padding: 0.625rem 0.75rem;
    border: 1.5px solid var(--color-primary-soft);
    border-radius: 0.5rem;
    font-family: var(--font-body);
    font-size: 0.85rem;
    color: var(--color-foreground);
    background: var(--color-card);
    transition: border-color 0.15s, background 0.15s;
    box-sizing: border-box;
}

.plan-input:focus[b-0311hf9glj],
.plan-textarea:focus[b-0311hf9glj] {
    outline: none;
    border-color: var(--color-primary);
    background: var(--color-card);
}

.plan-input:disabled[b-0311hf9glj] {
    background: var(--color-surface-2);
    color: var(--color-muted-foreground);
    cursor: not-allowed;
}

.plan-linha[b-0311hf9glj] {
    display: flex;
    gap: 1rem;
}

.plan-campo--metade[b-0311hf9glj] {
    flex: 1;
}

/* ─── Erro ─── */
.plan-erro[b-0311hf9glj] {
    padding: 0.625rem 0.875rem;
    background: var(--color-error-soft);
    color: var(--color-error-strong);
    border-left: 3px solid var(--color-error);
    border-radius: 0.375rem;
    font-size: 0.8rem;
    font-weight: 500;
}

/* ─── Accoes IA ─── */
.plan-acoes-ia[b-0311hf9glj] {
    display: flex;
    justify-content: flex-start;
}

/* ─── Botoes ─── */
.plan-btn[b-0311hf9glj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.625rem 1.25rem;
    border: none;
    border-radius: 0.5rem;
    font-family: var(--font-body);
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.plan-btn .icon[b-0311hf9glj] {
    font-size: 1.125rem;
}

.plan-btn:disabled[b-0311hf9glj] {
    opacity: 0.7;
    cursor: not-allowed;
}

.plan-btn--primary[b-0311hf9glj] {
    background: var(--color-primary);
    color: var(--color-on-primary);
    box-shadow: 0 4px 12px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

.plan-btn--primary:hover:not(:disabled)[b-0311hf9glj] {
    opacity: 0.95;
}

.plan-btn--outline[b-0311hf9glj] {
    background: transparent;
    color: var(--color-muted-foreground);
    border: 1.5px solid var(--color-primary-soft);
}

.plan-btn--outline:hover:not(:disabled)[b-0311hf9glj] {
    background: var(--color-primary-soft);
}

.plan-btn--ia[b-0311hf9glj] {
    background: linear-gradient(135deg, var(--color-secondary-accent), var(--color-primary));
    color: var(--color-on-primary);
}

.plan-btn--ia:hover:not(:disabled)[b-0311hf9glj] {
    filter: brightness(1.1);
}

/* ─── Accoes Finais ─── */
.plan-acoes[b-0311hf9glj] {
    display: flex;
    gap: 0.75rem;
    margin-top: 0.5rem;
    flex-wrap: wrap;
}

@keyframes spin-b-0311hf9glj {
    to { transform: rotate(360deg); }
}

/* ─── Loading ─── */
.plan-loading[b-0311hf9glj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    gap: 0.75rem;
    color: var(--color-muted-foreground);
}

.plan-loading p[b-0311hf9glj] {
    font-size: 0.85rem;
    margin: 0;
}
/* /Components/Shared/ModalLoginProfessor.razor.rz.scp.css */
/* ─── Modal Login Professor ─── */
.mlp__overlay[b-szlkn60g57] {
    position: fixed;
    inset: 0;
    z-index: 100;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    animation: mlp-fade-in-b-szlkn60g57 0.2s ease;
}

@keyframes mlp-fade-in-b-szlkn60g57 {
    from { opacity: 0; }
    to { opacity: 1; }
}

.mlp__container[b-szlkn60g57] {
    position: relative;
    width: 100%;
    max-width: 48rem;
    max-height: 90vh;
    background: var(--color-card);
    border-radius: 1rem;
    box-shadow: 0 24px 56px rgba(0, 0, 0, 0.2);
    overflow: hidden;
    animation: mlp-slide-in-b-szlkn60g57 0.3s ease;
}

@keyframes mlp-slide-in-b-szlkn60g57 {
    from { opacity: 0; transform: translateY(1rem) scale(0.97); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.mlp__close-btn[b-szlkn60g57] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.9);
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-muted-foreground);
    z-index: 10;
    transition: all 0.2s;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.mlp__close-btn:hover[b-szlkn60g57] {
    background: var(--color-card);
    color: var(--color-foreground);
    transform: scale(1.1);
}

/* ─── Split Layout ─── */
.mlp__split[b-szlkn60g57] {
    display: flex;
    min-height: 28rem;
}

@media (max-width: 768px) {
    .mlp__split[b-szlkn60g57] {
        flex-direction: column;
        min-height: auto;
    }
}

/* ─── Brand Panel (Esquerda) ─── */
.mlp__brand-panel[b-szlkn60g57] {
    flex: 1;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-success-strong) 100%);
    padding: 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    overflow: hidden;
    color: var(--color-on-primary);
}

@media (max-width: 768px) {
    .mlp__brand-panel[b-szlkn60g57] {
        display: none;
    }
}

.mlp__brand-glow[b-szlkn60g57] {
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    filter: blur(60px);
}

.mlp__brand-glow--top[b-szlkn60g57] {
    top: -30%;
    right: -20%;
    width: 60%;
    height: 50%;
    background: rgba(255, 255, 255, 0.08);
}

.mlp__brand-glow--bottom[b-szlkn60g57] {
    bottom: -20%;
    left: -15%;
    width: 50%;
    height: 40%;
    background: rgba(255, 255, 255, 0.06);
}

.mlp__brand-content[b-szlkn60g57] {
    position: relative;
    z-index: 1;
    max-width: 24rem;
}

.mlp__brand-title[b-szlkn60g57] {
    font-family: var(--font-display);
    font-size: 1.75rem;
    font-weight: 700;
    margin: 0 0 1rem;
    line-height: 1.2;
}

.mlp__brand-subtitle[b-szlkn60g57] {
    font-size: 0.95rem;
    line-height: 1.6;
    margin: 0 0 2rem;
    opacity: 0.9;
}

.mlp__brand-card[b-szlkn60g57] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 0.75rem;
    padding: 1rem;
    backdrop-filter: blur(8px);
}

.mlp__brand-card-icon[b-szlkn60g57] {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.mlp__brand-card-icon .icon[b-szlkn60g57] {
    font-size: 1.25rem;
}

.mlp__brand-card-label[b-szlkn60g57] {
    font-size: 0.75rem;
    opacity: 0.8;
    margin: 0;
}

.mlp__brand-card-value[b-szlkn60g57] {
    font-size: 0.875rem;
    font-weight: 600;
    margin: 0;
}

/* ─── Form Panel (Direita) ─── */
.mlp__form-panel[b-szlkn60g57] {
    flex: 1;
    padding: 2rem 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow-y: auto;
}

@media (max-width: 768px) {
    .mlp__form-panel[b-szlkn60g57] {
        padding: 1.5rem;
    }
}

.mlp__form-mobile-header[b-szlkn60g57] {
    display: none;
    text-align: center;
    margin-bottom: 1.5rem;
}

@media (max-width: 768px) {
    .mlp__form-mobile-header[b-szlkn60g57] {
        display: block;
    }
}

.mlp__form-mobile-title[b-szlkn60g57] {
    font-family: var(--font-display);
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--color-primary);
    margin: 0 0 0.25rem;
}

.mlp__form-mobile-sub[b-szlkn60g57] {
    font-size: 0.8rem;
    color: var(--color-muted-foreground);
    margin: 0;
}

.mlp__form-title[b-szlkn60g57] {
    font-family: var(--font-display);
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--color-foreground);
    margin: 0 0 1.5rem;
}

/* ─── Form Fields ─── */
.mlp__form[b-szlkn60g57] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.mlp__field[b-szlkn60g57] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.mlp__label-row[b-szlkn60g57] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.mlp__label[b-szlkn60g57] {
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--color-muted-foreground);
}

.mlp__forgot[b-szlkn60g57] {
    font-size: 0.75rem;
    color: var(--color-primary);
    text-decoration: none;
}

.mlp__forgot:hover[b-szlkn60g57] {
    text-decoration: underline;
}

.mlp__input-wrap[b-szlkn60g57] {
    position: relative;
    display: flex;
    align-items: center;
}

.mlp__input-icon[b-szlkn60g57] {
    position: absolute;
    left: 0.75rem;
    color: var(--color-muted-foreground);
    font-size: 1.125rem;
    pointer-events: none;
    transition: color 0.2s;
}

.mlp__input-wrap:focus-within .mlp__input-icon[b-szlkn60g57] {
    color: var(--color-primary);
}

[b-szlkn60g57] .mlp__input {
    width: 100%;
    padding: 0.75rem 0.75rem 0.75rem 2.5rem;
    background: var(--color-card);
    border: 1px solid var(--color-border);
    border-radius: 0.5rem;
    font-size: 0.95rem;
    font-family: var(--font-body);
    color: var(--color-foreground);
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
}

[b-szlkn60g57] .mlp__input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 12%, transparent);
}

[b-szlkn60g57] .mlp__input::placeholder {
    color: var(--color-text-subtle);
}

.mlp__toggle-pwd[b-szlkn60g57] {
    position: absolute;
    right: 0.5rem;
    background: none;
    border: none;
    color: var(--color-muted-foreground);
    cursor: pointer;
    padding: 0.25rem;
    display: flex;
    align-items: center;
}

.mlp__toggle-pwd:hover[b-szlkn60g57] {
    color: var(--color-primary);
}

.mlp__toggle-pwd .icon[b-szlkn60g57] {
    font-size: 1.125rem;
}

[b-szlkn60g57] .mlp__validation {
    font-size: 0.7rem;
    color: var(--color-error);
    margin-top: 0.125rem;
    display: block;
}

/* ─── Error ─── */
.mlp__error[b-szlkn60g57] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--color-error-soft);
    color: var(--color-error-strong);
    border-left: 3px solid var(--color-error);
    padding: 0.625rem 0.75rem;
    border-radius: 0.375rem;
    font-size: 0.85rem;
}

.mlp__error .icon[b-szlkn60g57] {
    font-size: 1rem;
    flex-shrink: 0;
}

/* ─── Submit Button ─── */
.mlp__submit[b-szlkn60g57] {
    width: 100%;
    padding: 0.875rem;
    background: var(--color-primary);
    color: var(--color-on-primary);
    border: none;
    border-radius: 0.5rem;
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    cursor: pointer;
    transition: transform 0.15s, opacity 0.2s;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

.mlp__submit:hover[b-szlkn60g57] {
    opacity: 0.95;
}

.mlp__submit:active[b-szlkn60g57] {
    transform: scale(0.98);
}

.mlp__submit:disabled[b-szlkn60g57] {
    opacity: 0.7;
    cursor: not-allowed;
}

.mlp__spin[b-szlkn60g57] {
    animation: mlp-spin-b-szlkn60g57 1s linear infinite;
}

@keyframes mlp-spin-b-szlkn60g57 {
    to { transform: rotate(360deg); }
}

/* ─── Divider ─── */
.mlp__divider[b-szlkn60g57] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 1rem 0;
}

.mlp__divider-line[b-szlkn60g57] {
    flex: 1;
    height: 1px;
    background: var(--color-primary-soft);
}

.mlp__divider-text[b-szlkn60g57] {
    font-size: 0.7rem;
    color: var(--color-text-subtle);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* ─── Support ─── */
.mlp__support[b-szlkn60g57] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem;
    background: var(--color-primary-soft);
    border: 1px solid color-mix(in srgb, var(--color-border) 30%, transparent);
    border-radius: 0.625rem;
}

.mlp__support-icon[b-szlkn60g57] {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    background: var(--color-success);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary-hover);
    flex-shrink: 0;
}

.mlp__support-icon .icon[b-szlkn60g57] {
    font-size: 1rem;
}

.mlp__support-title[b-szlkn60g57] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-foreground);
    margin: 0;
}

.mlp__support-link[b-szlkn60g57] {
    font-size: 0.7rem;
    color: var(--color-primary);
    text-decoration: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    font-family: var(--font-body);
}

.mlp__support-link:hover[b-szlkn60g57] {
    text-decoration: underline;
}

.mlp__support-arrow[b-szlkn60g57] {
    margin-left: auto;
    color: var(--color-muted-foreground);
    font-size: 1rem;
}

/* ─── Modal Bloqueio ─── */
.mlp__overlay--block[b-szlkn60g57] {
    z-index: 110;
}

.mlp__block-modal[b-szlkn60g57] {
    background: var(--color-card);
    border-radius: 0.75rem;
    width: 100%;
    max-width: 24rem;
    text-align: center;
    padding: 2rem 1.5rem;
    box-shadow: 0 24px 56px rgba(0, 0, 0, 0.2);
    animation: mlp-slide-in-b-szlkn60g57 0.3s ease;
}

.mlp__block-icon[b-szlkn60g57] {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    background: var(--color-error-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
}

.mlp__block-icon .icon[b-szlkn60g57] {
    font-size: 2rem;
    color: var(--color-error);
}

.mlp__block-title[b-szlkn60g57] {
    font-family: var(--font-display);
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 1rem;
    color: var(--color-foreground);
}

.mlp__block-greeting[b-szlkn60g57] {
    font-size: 0.9rem;
    color: var(--color-muted-foreground);
    margin: 0 0 0.5rem;
}

.mlp__block-reason[b-szlkn60g57] {
    font-size: 0.9rem;
    color: var(--color-foreground);
    font-weight: 500;
    margin: 0 0 1.25rem;
    line-height: 1.5;
}

.mlp__block-help[b-szlkn60g57] {
    text-align: left;
    background: var(--color-primary-soft);
    border-radius: 0.5rem;
    padding: 1rem;
    margin-bottom: 1.25rem;
}

.mlp__block-help-title[b-szlkn60g57] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-foreground);
    margin: 0 0 0.75rem;
}

.mlp__block-help-item[b-szlkn60g57] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8rem;
    color: var(--color-muted-foreground);
    margin-bottom: 0.5rem;
}

.mlp__block-help-item:last-child[b-szlkn60g57] {
    margin-bottom: 0;
}

.mlp__block-help-item .icon[b-szlkn60g57] {
    font-size: 1rem;
    color: var(--color-muted-foreground);
    flex-shrink: 0;
}

.mlp__block-help-item a[b-szlkn60g57] {
    color: var(--color-primary);
    text-decoration: none;
}

.mlp__block-help-item a:hover[b-szlkn60g57] {
    text-decoration: underline;
}

.mlp__block-btn[b-szlkn60g57] {
    width: 100%;
    padding: 0.75rem;
    background: var(--color-primary);
    color: var(--color-on-primary);
    border: none;
    border-radius: 0.5rem;
    font-family: var(--font-display);
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.2s;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

.mlp__block-btn:hover[b-szlkn60g57] {
    opacity: 0.95;
}
