/* =======================================================================
   Tema MultiAdv para AjudaPrev
   Carregar depois de app.css.
   ======================================================================= */

:root {
    --bg: #f4f7fb;
    --bg-2: #eef3f8;
    --surface: #ffffff;
    --surface-strong: #ffffff;
    --text: #233043;
    --muted: #6c7a89;
    --brand: #016e9f;
    --brand-2: #084c68;
    --accent: #0d6efd;
    --danger: #b42318;
    --success: #17856f;
    --border: #e2e8f0;
    --shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

html,
body {
    background: var(--bg);
}

body {
    color: var(--text);
    background:
        linear-gradient(180deg, #ffffff 0, #f4f7fb 360px),
        var(--bg);
}

a {
    color: var(--accent);
}

.container {
    max-width: 1380px;
    padding-top: 28px;
}

/* Topo */
.topbar {
    min-height: 66px;
    padding: 10px 22px;
    background: linear-gradient(0deg, var(--brand-2), var(--brand));
    border-bottom: 0;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.18);
    backdrop-filter: none;
}

.topbar-brand {
    color: #ffffff;
}

.topbar-brand strong {
    color: #ffffff;
    font-size: 1.06rem;
}

.topbar-company,
.topbar .subtle {
    color: rgba(255, 255, 255, 0.78);
}

.brand-mark {
    border-radius: 8px;
    background: #ffffff;
    color: var(--brand);
    box-shadow: none;
}

.brand-mark-small {
    width: 42px;
    height: 42px;
    border-radius: 8px;
}


.nav {
    gap: 8px;
}

.nav-link {
    min-height: 38px;
    padding: 0 13px;
    border-radius: 7px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: transparent;
    color: #ffffff;
    font-weight: 700;
    letter-spacing: 0;
    box-shadow: none;
}

.nav-link:hover {
    transform: none;
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    box-shadow: none;
}

.nav-link-accent {
    background: rgba(255, 255, 255, 0.17);
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.36);
    box-shadow: none;
}

.nav-link-ghost {
    color: #ffffff;
    background: transparent;
}

/* Estrutura geral */
.page-head,
.section-head,
.review-section-head,
.planning-card-head {
    gap: 16px;
}

.page-head h1,
.section-head h2,
.review-section-head h3,
.planning-card-head h2 {
    color: #1f2a37;
    letter-spacing: 0;
}

.eyebrow,
.eyebrow-light,
.section-kicker,
.review-kicker,
.review-section-label,
.auth-kicker,
.stat-label,
.report-meta-label {
    color: var(--brand);
    letter-spacing: 0.06em;
}

.subtle,
.empty-note,
.empty-cell {
    color: var(--muted);
}

/* Cartoes e paineis */
.card,
.auth-card,
.form-card,
.dashboard-panel,
.review-board,
.form-shell,
.planning-card,
.planning-notes-card,
.report-meta-card,
.report-total-card,
.choice-card,
.trial-card {
    background: #ffffff;
    border: 1px solid var(--border);
    border-radius: 8px;
    box-shadow: var(--shadow);
    backdrop-filter: none;
}

.card {
    padding: 22px;
}

.dashboard-panel,
.form-shell,
.review-board,
.planning-card,
.planning-notes-card {
    overflow: hidden;
}

.section-head-strong,
.section-head-stroke,
.review-section-head-spaced {
    border-color: var(--border);
}

.hero-panel,
.auth-hero-panel,
.review-board-hero,
.report-board-hero,
.admin-hero,
.sales-hero-panel {
    border-radius: 8px;
    border: 1px solid #d7e6f5;
    background:
        linear-gradient(135deg, rgba(1, 110, 159, 0.96), rgba(8, 76, 104, 0.96));
    box-shadow: 0 14px 34px rgba(8, 76, 104, 0.18);
    color: #ffffff;
}

.hero-panel h1,
.hero-panel p,
.hero-panel .eyebrow,
.auth-hero-panel h1,
.auth-hero-panel p,
.auth-hero-panel .eyebrow,
.review-board-hero h2,
.review-board-hero p,
.report-board-hero h2,
.report-board-hero p,
.report-board-hero .review-kicker,
.admin-hero h1,
.admin-hero p,
.sales-hero-panel h1,
.sales-hero-panel p {
    color: #ffffff;
}

.hero-panel::after,
.auth-hero-panel::after,
.sales-hero-panel::after {
    display: none;
}

.hero-badge,
.report-total-card {
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.22);
    box-shadow: none;
}

.hero-badge strong,
.hero-badge small,
.hero-badge-label,
.report-total-card span,
.report-total-card strong,
.report-total-card small {
    color: #ffffff;
}

.stat {
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.stat strong {
    color: var(--brand);
}

.stat-highlight {
    background: linear-gradient(0deg, var(--brand-2), var(--brand));
    color: #ffffff;
    border-color: transparent;
}

.stat-highlight strong,
.stat-highlight .stat-label,
.stat-highlight span {
    color: #ffffff;
}

.stat-soft {
    background: #ffffff;
}

.stat-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.1);
}

/* Botoes */
button,
.button,
.auth-form button,
.trial-form button,
.sales-button,
.sales-button-outline {
    border-radius: 7px;
    background: var(--brand);
    border: 1px solid var(--brand);
    color: #ffffff;
    box-shadow: none;
    letter-spacing: 0;
}

button:hover,
.button:hover,
.auth-form button:hover,
.trial-form button:hover {
    background: var(--brand-2);
    border-color: var(--brand-2);
    transform: none;
    box-shadow: none;
}

.button-secondary,
.sales-button-outline {
    background: #ffffff;
    color: var(--brand);
    border-color: #b7d5e5;
}

.button-secondary:hover,
.sales-button-outline:hover {
    background: #f2f8fc;
    color: var(--brand-2);
    border-color: #8fc2da;
}

.link-button {
    box-shadow: none;
}

/* Formularios */
input,
select,
textarea {
    border-radius: 7px;
    border-color: #d6dee8;
    background: #ffffff;
    color: var(--text);
    box-shadow: none;
}

input:focus,
select:focus,
textarea:focus {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.12);
    outline: none;
}

label {
    color: #334155;
}

/* Tabelas e listas */
.table {
    background: #ffffff;
}

.table th {
    background: #f7f9fc;
    color: #334155;
    border-color: var(--border);
}

.table td {
    border-color: var(--border);
}

.table tbody tr:hover {
    background: #f8fbff;
}

.table-link,
.panel-link {
    color: var(--brand);
}

.time-pill,
.status-pill,
.mini-item-date,
.empresa-item-label {
    border-radius: 999px;
    background: #e8f0ff;
    color: #0b5ed7;
    border: 1px solid #d7e6ff;
}

.mini-item,
.auth-highlight-item,
.report-meta-card,
.choice-card {
    border-color: var(--border);
    background: #ffffff;
}

/* Telas de autenticacao */
.auth-page {
    background:
        linear-gradient(180deg, #ffffff 0, #f4f7fb 100%);
}

.auth-shell {
    align-items: stretch;
}

.auth-card-head h2 {
    color: #1f2a37;
}

.auth-card-head p,
.auth-highlight-item span {
    color: var(--muted);
}

.auth-support-link {
    color: var(--brand);
    font-weight: 700;
}

.auth-hero-panel p {
    color: #ffffff;
}

.auth-hero-panel .auth-highlight-item {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.2);
}

.auth-hero-panel .auth-highlight-item strong,
.auth-hero-panel .auth-highlight-item span {
    color: #ffffff;
}

/* Relatorios e planejamentos */
.review-page,
.report-page {
    color: var(--text);
}

.review-table-wrap,
.review-table-panel {
    border-radius: 8px;
    border-color: var(--border);
    background: #ffffff;
}

.row-imported {
    background: #fbfdff;
}

.row-manual {
    background: #fffdf7;
}

.planning-print-card,
.planning-print-executive-card {
    border-radius: 8px;
    border-color: var(--border);
}

.alert {
    border-radius: 8px;
    box-shadow: none;
}

/* Ajuste final dos cards de indicadores. Mantido no fim do tema para vencer regras antigas em cache/ordem. */
.card.stat {
    display: flex;
    min-height: 132px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.card.stat.stat-highlight,
.card.stat.stat-highlight .stat-label,
.card.stat.stat-highlight strong,
.card.stat.stat-highlight span {
    color: #ffffff;
}

.card.stat.stat-soft strong {
    color: var(--brand);
}

/* Cards de preco da pagina de vendas */
.card.sales-price-card.sales-price-card-featured {
    background: #ffffff;
    color: var(--text);
    border-color: var(--border);
    box-shadow: var(--shadow);
    transform: translateY(-10px);
}

.card.sales-price-card.sales-price-card-featured .sales-price-badge {
    background: rgba(39, 79, 214, 0.10);
    border: 1px solid rgba(39, 79, 214, 0.14);
    color: #274fd6;
}

.card.sales-price-card.sales-price-card-featured h3,
.card.sales-price-card.sales-price-card-featured .sales-price-value strong {
    color: #16213a;
}

.card.sales-price-card.sales-price-card-featured .sales-price-value small,
.card.sales-price-card.sales-price-card-featured p,
.card.sales-price-card.sales-price-card-featured .sales-price-list {
    color: #65738a;
}

.card.sales-product-card.sales-product-card-featured {
    background: #ffffff;
    color: var(--text);
    border-color: var(--border);
    box-shadow: var(--shadow);
}

.card.sales-product-card.sales-product-card-featured span {
    background: #172540;
    border: 1px solid #172540;
    color: #ffffff;
}

.card.sales-product-card.sales-product-card-featured h3 {
    color: #16213a;
}

.card.sales-product-card.sales-product-card-featured p {
    color: #65738a;
}

.dashboard-panel-side .mini-item {
    align-items: center;
}

.dashboard-panel-side .mini-item-date {
    align-self: center;
    font-size: 0.82rem;
}

@media (max-width: 920px) {
    .topbar {
        align-items: flex-start;
    }

    .nav-link {
        min-height: 36px;
    }

    .container {
        padding-inline: 14px;
    }
}
