.admin-wrap {
    padding: var(--esp-md);
    display: grid;
    gap: 12px;
}

.admin-hero {
    background:
        radial-gradient(circle at top left, rgba(59, 130, 246, .16), transparent 34%),
        linear-gradient(135deg, rgba(15, 23, 42, .96), rgba(30, 41, 59, .96));
    border: 1px solid rgba(59, 130, 246, .18);
    border-radius: var(--raio-lg);
    padding: clamp(20px, 4vw, 34px);
    box-shadow: var(--sombra-lg);
}

.admin-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(59, 130, 246, .12);
    color: #bfdbfe;
    font-size: var(--t-xs);
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-bottom: var(--esp-md);
}

.admin-titulo {
    margin: 0 0 8px;
    font-family: var(--fonte-titulo);
    font-size: clamp(1.8rem, 3vw, 2.6rem);
    color: #f8fafc;
    line-height: 1.05;
}

.admin-sub {
    margin: 0;
    max-width: 72ch;
    color: #cbd5e1;
    line-height: 1.7;
}

.admin-kpis {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: var(--esp-md);
}

.admin-kpi {
    background: var(--card);
    border: 1px solid var(--borda);
    border-radius: var(--raio-lg);
    padding: var(--esp-lg);
}

.admin-kpi-valor {
    display: block;
    font-family: var(--fonte-titulo);
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    color: var(--texto);
    line-height: 1;
    margin-bottom: 6px;
}

.admin-kpi-label {
    color: var(--texto-muted);
    font-size: var(--t-sm);
}

.admin-grid {
    display: grid;
    gap: var(--esp-lg);
    grid-template-columns: minmax(320px, .9fr) minmax(0, 1.4fr);
    min-width: 0;
}

.admin-grid > * {
    min-width: 0;
}

.admin-grid > *:only-child {
    grid-column: 1 / -1;
}

.admin-card {
    background: var(--card);
    border: 1px solid var(--borda);
    border-radius: var(--raio-lg);
    padding: var(--esp-md);
    box-shadow: var(--sombra-sm);
}

.admin-card h2 {
    margin: 0 0 10px;
    font-family: var(--fonte-titulo);
    font-size: 1.25rem;
    color: var(--texto);
}

.admin-card h3 {
    margin: 0 0 var(--esp-sm);
    font-size: var(--t-md);
    color: var(--texto);
}

.admin-card-topo {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.admin-card-topo h2 {
    margin: 0;
}

.admin-card-intro {
    margin: 4px 0 0;
    color: var(--texto-muted);
    line-height: 1.4;
    max-width: 72ch;
}

.admin-card-acoes-rodape {
    margin-top: var(--esp-md);
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.admin-filtros,
.admin-form-grid {
    display: grid;
    gap: 10px;
}

.admin-filtros {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.admin-form-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-form-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-form-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-form-grid-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.admin-campo {
    display: grid;
    gap: 4px;
}

.admin-campo-editor-foto {
    max-width: 560px;
    margin-bottom: 2px;
}

.admin-campo-curto {
    max-width: 160px;
}

.admin-campo-mini {
    max-width: 110px;
}

.admin-campo-medio {
    max-width: 220px;
}

.admin-campo label {
    font-size: .82rem;
    font-weight: 700;
    color: var(--texto);
    line-height: 1.2;
}

.admin-campo input,
.admin-campo select,
.admin-campo textarea {
    width: 100%;
    min-height: 34px;
    padding: 6px 9px;
    border-radius: var(--raio);
    border: 1px solid var(--borda);
    background: #fff;
    color: #0f172a;
    font-size: var(--t-sm);
    line-height: 1.25;
}

.admin-campo input[type="color"] {
    width: 56px;
    min-width: 56px;
    min-height: 38px;
    padding: 4px;
    border-radius: var(--raio);
    border: 1px solid var(--borda);
    background: #fff;
    cursor: pointer;
}

.admin-cor-linha {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
}

.admin-cor-valor {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    padding: 7px 10px;
    border-radius: var(--raio);
    border: 1px solid var(--borda);
    background: #fff;
    color: #0f172a;
    font-family: var(--fonte-mono);
    font-size: var(--t-sm);
    line-height: 1.25;
}

.admin-campo textarea {
    min-height: 76px;
    resize: vertical;
}

.admin-campo input:focus,
.admin-campo select:focus,
.admin-campo textarea:focus {
    outline: none;
    border-color: rgba(59, 130, 246, .55);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, .12);
}

.admin-actions,
.admin-inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.btn-acao,
.admin-acao-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.admin-acoes-linha {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.admin-acoes-nowrap,
.admin-acoes-nowrap .admin-acoes-linha,
.admin-acoes-nowrap .admin-inline-actions {
    white-space: nowrap;
}

.admin-acoes-linha form {
    margin: 0;
}

.btn-icone {
    width: 34px;
    min-width: 34px;
    height: 34px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-icone svg {
    width: 16px;
    height: 16px;
}

.admin-acao-icone {
    display: inline-block;
    width: 16px;
    min-width: 16px;
    max-width: 16px;
    height: 16px;
    min-height: 16px;
    max-height: 16px;
    object-fit: contain;
    flex: 0 0 16px;
    vertical-align: middle;
}

.btn-icone .admin-acao-icone,
.da-btn-icone .admin-acao-icone {
    width: 16px;
    height: 16px;
    min-width: 16px;
    max-width: 16px;
    min-height: 16px;
    max-height: 16px;
}

.admin-table-wrap .btn-icone,
.page-table-wrap .btn-icone,
.acessos-admin-col-acoes .btn-icone,
.da-tabela .da-btn-icone,
.da-lista .da-btn-icone {
    width: 28px;
    min-width: 28px;
    height: 28px;
    border-radius: 8px;
}

.admin-acao-rotulo {
    line-height: 1;
}

.btn-icone-danger {
    color: #b91c1c;
    border-color: transparent;
    background: transparent;
}

.btn-icone-danger:hover,
.btn-icone-danger:focus-visible {
    color: #991b1b;
    background: var(--card);
    border-color: transparent;
}

.admin-foto-thumb {
    width: 52px;
    height: 68px;
    object-fit: cover;
    object-position: center;
    border-radius: 10px;
    border: 1px solid var(--borda);
    background: #e2e8f0;
    box-shadow: var(--sombra-sm);
}

.admin-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.admin-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid var(--borda);
    background: var(--card);
    color: var(--texto);
    font-weight: 700;
    text-decoration: none;
}

.admin-tab.ativo {
    background: rgba(59, 130, 246, .12);
    border-color: rgba(59, 130, 246, .26);
    color: #1d4ed8;
}

.admin-feedback,
.admin-alert,
.admin-alerta {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 12px;
    border: 1px solid transparent;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .08);
}

.admin-feedback-icone {
    width: 34px;
    min-width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: rgba(255, 255, 255, .94);
    border: 1px solid rgba(255, 255, 255, .72);
    box-shadow: none;
}

.admin-feedback-icone .admin-acao-icone {
    width: 20px;
    min-width: 20px;
    max-width: 20px;
    height: 20px;
    min-height: 20px;
    max-height: 20px;
}

.admin-feedback-corpo {
    display: grid;
    gap: 3px;
}

.admin-feedback-titulo {
    color: inherit;
    font-size: .95rem;
    line-height: 1.2;
    font-weight: 800;
}

.admin-feedback-subtitulo {
    color: inherit;
    opacity: .92;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.admin-feedback-mensagem {
    color: inherit;
    font-size: var(--t-sm);
    line-height: 1.55;
    font-weight: 500;
}

.admin-feedback-ok,
.admin-alert-ok,
.admin-alerta-ok {
    background: #ecfdf3;
    color: #14532d;
    border-color: #86efac;
}

.admin-feedback-erro,
.admin-alert-erro,
.admin-alerta-erro {
    background: #fef2f2;
    color: #5f1111;
    border-color: #fca5a5;
}

.admin-feedback-aviso,
.admin-alert-aviso,
.admin-alerta-aviso {
    background: #fff7ed;
    color: #9a3412;
    border-color: #fdba74;
}

.admin-feedback-info,
.admin-alert-info,
.admin-alerta-info {
    background: #eff6ff;
    color: #1d4ed8;
    border-color: #93c5fd;
}

.admin-feedback-ok .admin-feedback-icone,
.admin-alert-ok .admin-feedback-icone,
.admin-alerta-ok .admin-feedback-icone {
    background: #dcfce7;
    color: #166534;
    border-color: #86efac;
}

.admin-feedback-erro .admin-feedback-icone,
.admin-alert-erro .admin-feedback-icone,
.admin-alerta-erro .admin-feedback-icone {
    background: #fee2e2;
    color: #991b1b;
    border-color: #fca5a5;
}

.admin-feedback-aviso .admin-feedback-icone,
.admin-alert-aviso .admin-feedback-icone,
.admin-alerta-aviso .admin-feedback-icone {
    background: #ffedd5;
    color: #c2410c;
    border-color: #fdba74;
}

.admin-feedback-info .admin-feedback-icone,
.admin-alert-info .admin-feedback-icone,
.admin-alerta-info .admin-feedback-icone {
    background: #dbeafe;
    color: #1d4ed8;
    border-color: #93c5fd;
}

.admin-table-wrap {
    overflow-x: auto;
    position: relative;
    min-width: 0;
    max-width: 100%;
}

.admin-table-wrap table {
    min-width: 100%;
}

.equipe-admin-tabela {
    table-layout: auto;
}

.equipe-admin-tabela th:nth-child(1),
.equipe-admin-tabela td:nth-child(1) {
    width: 70px;
}

.equipe-admin-tabela th:nth-child(2),
.equipe-admin-tabela td:nth-child(2) {
    width: 19%;
}

.equipe-admin-tabela th:nth-child(3),
.equipe-admin-tabela td:nth-child(3) {
    width: 15%;
}

.equipe-admin-tabela th:nth-child(4),
.equipe-admin-tabela td:nth-child(4) {
    width: 12%;
}

.equipe-admin-tabela th:nth-child(5),
.equipe-admin-tabela td:nth-child(5) {
    width: auto;
}

.equipe-admin-tabela th:nth-child(6),
.equipe-admin-tabela td:nth-child(6) {
    width: 1%;
    white-space: nowrap;
}

.equipe-admin-tabela th:nth-child(7),
.equipe-admin-tabela td:nth-child(7) {
    width: 1%;
    white-space: nowrap;
}

.equipe-admin-tabela td:nth-child(2),
.equipe-admin-tabela td:nth-child(3),
.equipe-admin-tabela td:nth-child(4),
.equipe-admin-tabela td:nth-child(5) {
    word-break: break-word;
    overflow-wrap: anywhere;
}

.equipe-admin-tabela .admin-inline-actions {
    justify-content: flex-end;
}

.equipe-admin-tabela .admin-acoes-linha {
    flex-wrap: nowrap;
}

.equipe-admin-tabela th:nth-child(6),
.equipe-admin-tabela th:nth-child(7),
.equipe-admin-tabela td:nth-child(6),
.equipe-admin-tabela td:nth-child(7) {
    text-align: center;
}

.equipe-admin-tabela .admin-inline-actions {
    justify-content: center;
}

.admin-pill {
    display: inline-flex;
    align-items: center;
    padding: 5px 10px;
    border-radius: 999px;
    font-size: var(--t-xs);
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.admin-pill-ok {
    background: rgba(34, 197, 94, .12);
    color: #166534;
}

.admin-pill-off {
    background: rgba(148, 163, 184, .14);
    color: #475569;
}

.admin-pill-warn {
    background: rgba(245, 158, 11, .12);
    color: #92400e;
}

.admin-pill-danger {
    background: rgba(239, 68, 68, .12);
    color: #991b1b;
}

.admin-resumo-lista {
    display: grid;
    gap: 10px;
}

.admin-resumo-item {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 10px 12px;
    border: 1px solid var(--borda-sutil);
    border-radius: var(--raio);
}

.admin-resumo-item strong {
    color: var(--texto);
}

.admin-mutado {
    color: var(--texto-muted);
}

.admin-kpis-compactos {
    margin-top: 14px;
}

.admin-preferencias-grid {
    display: grid;
    gap: 10px;
    margin-top: 10px;
}

.admin-preferencia-item {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    column-gap: 10px;
    row-gap: 2px;
    padding: 10px 12px;
    border: 1px solid var(--borda-sutil);
    border-radius: var(--raio);
    background: rgba(255, 255, 255, .02);
}

.admin-preferencia-item input[type="checkbox"] {
    grid-row: 1 / span 2;
    margin: 0;
}

.admin-preferencia-titulo {
    font-weight: 700;
    color: var(--texto);
}

.admin-preferencia-meta {
    font-size: var(--t-xs);
    color: var(--texto-muted);
}

.admin-preferencia-meta-on {
    color: #166534;
}

.admin-preferencia-meta-off {
    color: #991b1b;
}

@media (max-width: 1080px) {
    .admin-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .admin-wrap {
        padding: var(--esp-md);
    }

    .admin-campo-editor-foto {
        max-width: 100%;
    }

    .admin-form-grid-2,
    .admin-form-grid-3 {
        grid-template-columns: 1fr;
    }
}
