
/* Dr. Checklist - Gestão Técnica compacta segura
   Mantém fontes/cards menores, mas NÃO trava a página.
   Correção: removido overflow:hidden/height:100vh que cortava conteúdo e escondia navegação. */

body.catalogo-gestao-compact {
    font-size: 13px;
    line-height: 1.28;
    color: #102033;
    overflow: auto !important;
}

body.catalogo-gestao-compact .app-bg {
    opacity: .09;
}

/* Base geral */
body.catalogo-gestao-compact h1,
body.catalogo-gestao-compact .h1 {
    font-size: 1.12rem !important;
    line-height: 1.08 !important;
    letter-spacing: -.035em;
}

body.catalogo-gestao-compact h2,
body.catalogo-gestao-compact .h2,
body.catalogo-gestao-compact .display-6 {
    font-size: 1.28rem !important;
    line-height: 1.08 !important;
    letter-spacing: -.045em;
}

body.catalogo-gestao-compact h3,
body.catalogo-gestao-compact .h3 {
    font-size: 1rem !important;
    line-height: 1.1 !important;
}

body.catalogo-gestao-compact h4,
body.catalogo-gestao-compact .h4 {
    font-size: .92rem !important;
}

body.catalogo-gestao-compact p,
body.catalogo-gestao-compact small,
body.catalogo-gestao-compact .small {
    font-size: .74rem;
}

body.catalogo-gestao-compact .fw-black {
    font-weight: 900 !important;
}

body.catalogo-gestao-compact .badge,
body.catalogo-gestao-compact .badge-soft,
body.catalogo-gestao-compact .hero-chip,
body.catalogo-gestao-compact .mv-eyebrow,
body.catalogo-gestao-compact .hero-tag {
    font-size: .66rem !important;
    padding: .28rem .5rem !important;
}

body.catalogo-gestao-compact .btn,
body.catalogo-gestao-compact .pill-btn,
body.catalogo-gestao-compact .light-btn,
body.catalogo-gestao-compact .primary-btn,
body.catalogo-gestao-compact .admin-btn,
body.catalogo-gestao-compact .version-edit-btn,
body.catalogo-gestao-compact .btn-search,
body.catalogo-gestao-compact .admin-pill,
body.catalogo-gestao-compact .user-pill {
    min-height: 34px !important;
    padding: .34rem .68rem !important;
    border-radius: 12px !important;
    font-size: .78rem !important;
}

body.catalogo-gestao-compact .back-btn,
body.catalogo-gestao-compact .mv-back {
    width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    border-radius: 12px !important;
    padding: 0 !important;
}

body.catalogo-gestao-compact .form-label,
body.catalogo-gestao-compact .field label,
body.catalogo-gestao-compact .edit-field label {
    font-size: .66rem !important;
    margin-bottom: .2rem !important;
    letter-spacing: .035em !important;
}

body.catalogo-gestao-compact .form-control,
body.catalogo-gestao-compact .form-select,
body.catalogo-gestao-compact .field input,
body.catalogo-gestao-compact .field select,
body.catalogo-gestao-compact .field textarea,
body.catalogo-gestao-compact .edit-field input,
body.catalogo-gestao-compact .edit-field textarea {
    min-height: 36px !important;
    padding: .38rem .62rem !important;
    font-size: .82rem !important;
    border-radius: 12px !important;
}

body.catalogo-gestao-compact textarea.form-control,
body.catalogo-gestao-compact .field textarea,
body.catalogo-gestao-compact .edit-field textarea {
    min-height: 72px !important;
}

body.catalogo-gestao-compact .card,
body.catalogo-gestao-compact .mv-card,
body.catalogo-gestao-compact .panel-card,
body.catalogo-gestao-compact .section-card,
body.catalogo-gestao-compact .hero-card,
body.catalogo-gestao-compact .mv-hero,
body.catalogo-gestao-compact .compact-hero {
    border-radius: 18px !important;
}

body.catalogo-gestao-compact .card-body,
body.catalogo-gestao-compact .detail-body {
    padding: .78rem !important;
}

body.catalogo-gestao-compact .card-header,
body.catalogo-gestao-compact .panel-head,
body.catalogo-gestao-compact .section-head {
    padding: .65rem .78rem !important;
}

/* Topos e heros */
body.catalogo-gestao-compact .gestao-shell,
body.catalogo-gestao-compact .mv-shell,
body.catalogo-gestao-compact .produtos-page,
body.catalogo-gestao-compact .container-fluid {
    padding: 8px 10px 24px !important;
    height: auto !important;
    min-height: 100vh !important;
    overflow: visible !important;
}

body.catalogo-gestao-compact .gestao-topbar,
body.catalogo-gestao-compact .mv-topbar,
body.catalogo-gestao-compact .produtos-top {
    margin: -8px -10px 8px !important;
    padding: 8px 10px !important;
    min-height: 46px !important;
}

body.catalogo-gestao-compact .gestao-title h1,
body.catalogo-gestao-compact .mv-title h1,
body.catalogo-gestao-compact .produtos-top h1 {
    font-size: 1.03rem !important;
}

body.catalogo-gestao-compact .gestao-title p,
body.catalogo-gestao-compact .mv-title p,
body.catalogo-gestao-compact .produtos-top small {
    font-size: .72rem !important;
    margin-top: 2px !important;
}

body.catalogo-gestao-compact .hero-card,
body.catalogo-gestao-compact .mv-hero,
body.catalogo-gestao-compact .compact-hero {
    padding: .82rem 1rem !important;
    margin-bottom: 8px !important;
    gap: 10px !important;
}

body.catalogo-gestao-compact .hero-card h2,
body.catalogo-gestao-compact .mv-hero h2,
body.catalogo-gestao-compact .compact-hero h2 {
    margin: .35rem 0 .25rem !important;
}

body.catalogo-gestao-compact .hero-card p,
body.catalogo-gestao-compact .mv-hero p,
body.catalogo-gestao-compact .compact-hero p {
    font-size: .76rem !important;
    line-height: 1.28 !important;
}

/* Métricas */
body.catalogo-gestao-compact .metrics-grid,
body.catalogo-gestao-compact .kpi-grid,
body.catalogo-gestao-compact .stats-row {
    gap: 7px !important;
    margin: 7px 0 !important;
}

body.catalogo-gestao-compact .metric-card,
body.catalogo-gestao-compact .kpi-card,
body.catalogo-gestao-compact .kpi,
body.catalogo-gestao-compact .stat-card,
body.catalogo-gestao-compact .dc-admin-stat {
    min-height: 56px !important;
    padding: .58rem .72rem !important;
    border-radius: 16px !important;
}

body.catalogo-gestao-compact .metric-card span,
body.catalogo-gestao-compact .kpi span,
body.catalogo-gestao-compact .stat-card small,
body.catalogo-gestao-compact .kpi-card small {
    font-size: .66rem !important;
}

body.catalogo-gestao-compact .metric-card strong,
body.catalogo-gestao-compact .kpi strong,
body.catalogo-gestao-compact .stat-card strong,
body.catalogo-gestao-compact .kpi-card strong,
body.catalogo-gestao-compact .h3.fw-black {
    font-size: 1.05rem !important;
    margin-top: .18rem !important;
}

/* Cards/listas */
body.catalogo-gestao-compact .model-item,
body.catalogo-gestao-compact .model-row,
body.catalogo-gestao-compact .review-item,
body.catalogo-gestao-compact .mini-item,
body.catalogo-gestao-compact .service-card,
body.catalogo-gestao-compact .menu-card,
body.catalogo-gestao-compact .list-group-item {
    padding: .58rem .72rem !important;
    border-radius: 13px !important;
}

body.catalogo-gestao-compact .model-item strong,
body.catalogo-gestao-compact .model-row strong,
body.catalogo-gestao-compact .mini-item strong,
body.catalogo-gestao-compact .service-card strong,
body.catalogo-gestao-compact .menu-card strong {
    font-size: .83rem !important;
}

body.catalogo-gestao-compact .model-item small,
body.catalogo-gestao-compact .model-row small,
body.catalogo-gestao-compact .mini-item small,
body.catalogo-gestao-compact .service-card small,
body.catalogo-gestao-compact .menu-card p {
    font-size: .7rem !important;
}

/* Scroll interno seguro: limita listas, mas não trava a página inteira */
body.catalogo-gestao-compact .model-list,
body.catalogo-gestao-compact .review-list,
body.catalogo-gestao-compact .mini-list,
body.catalogo-gestao-compact .service-list,
body.catalogo-gestao-compact .summary-list,
body.catalogo-gestao-compact .table-wrap,
body.catalogo-gestao-compact .produto-table-wrap {
    max-height: 54vh !important;
    overflow: auto !important;
}

body.catalogo-gestao-compact .main-grid,
body.catalogo-gestao-compact .layout,
body.catalogo-gestao-compact .produtos-grid {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    gap: 8px !important;
}

/* Pacotes */
body.catalogo-gestao-compact .action-zone {
    padding: .72rem !important;
}

body.catalogo-gestao-compact .version-switch-box {
    margin: 8px 0 10px !important;
    padding: .72rem !important;
    border-radius: 16px !important;
}

body.catalogo-gestao-compact .version-pill {
    min-height: 32px !important;
    padding: .25rem .62rem !important;
    font-size: .76rem !important;
}

body.catalogo-gestao-compact .package-editor {
    padding: .72rem !important;
    border-radius: 16px !important;
    gap: .55rem !important;
}

body.catalogo-gestao-compact .package-kpis {
    gap: 6px !important;
}

body.catalogo-gestao-compact .package-kpi {
    padding: .5rem .6rem !important;
    border-radius: 13px !important;
}

body.catalogo-gestao-compact .package-kpi span {
    font-size: .62rem !important;
}

body.catalogo-gestao-compact .package-kpi strong {
    font-size: .9rem !important;
}

body.catalogo-gestao-compact .items-editor {
    padding: .6rem !important;
    border-radius: 14px !important;
}

body.catalogo-gestao-compact .items-head h4 {
    font-size: .82rem !important;
}

body.catalogo-gestao-compact .item-row {
    grid-template-columns: 105px minmax(170px,1.2fr) 90px 70px 90px 82px !important;
    padding: .55rem !important;
    gap: 6px !important;
    border-radius: 13px !important;
}

body.catalogo-gestao-compact .check-row {
    padding: .45rem .55rem !important;
    border-radius: 12px !important;
    font-size: .78rem !important;
}

/* Produtos */
body.catalogo-gestao-compact .produto-table {
    font-size: .76rem !important;
}

body.catalogo-gestao-compact .produto-table thead th {
    font-size: .62rem !important;
    padding: .45rem .55rem !important;
}

body.catalogo-gestao-compact .produto-table td {
    padding: .46rem .55rem !important;
}

body.catalogo-gestao-compact .produto-name {
    max-width: 420px;
    font-size: .8rem !important;
}

body.catalogo-gestao-compact .produto-sub,
body.catalogo-gestao-compact .code-pill {
    font-size: .66rem !important;
}

/* TMO */
body.catalogo-gestao-compact .service-form,
body.catalogo-gestao-compact .form-box {
    padding: .72rem !important;
}

body.catalogo-gestao-compact .form-grid {
    gap: 8px !important;
}

body.catalogo-gestao-compact .service-head {
    padding: .65rem .75rem !important;
}

/* Desktop: listas com scroll, página com scroll normal */
@media (min-width: 992px) {
    body.catalogo-gestao-compact .hero-card,
    body.catalogo-gestao-compact .mv-hero {
        grid-template-columns: minmax(0, 1fr) minmax(300px, 440px) !important;
    }

    body.catalogo-gestao-compact .form-card {
        position: sticky !important;
        top: 8px !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.catalogo-gestao-compact .model-list,
    body.catalogo-gestao-compact .review-list,
    body.catalogo-gestao-compact .mini-list,
    body.catalogo-gestao-compact .service-list,
    body.catalogo-gestao-compact .summary-list,
    body.catalogo-gestao-compact .produto-table-wrap {
        max-height: 58vh !important;
    }
}

/* Tablet/celular */
@media (max-width: 991px) {
    body.catalogo-gestao-compact .main-grid,
    body.catalogo-gestao-compact .layout,
    body.catalogo-gestao-compact .produtos-grid,
    body.catalogo-gestao-compact .hero-card,
    body.catalogo-gestao-compact .mv-hero,
    body.catalogo-gestao-compact .filter-grid,
    body.catalogo-gestao-compact .stats-row {
        grid-template-columns: 1fr !important;
        height: auto !important;
    }

    body.catalogo-gestao-compact .model-list,
    body.catalogo-gestao-compact .review-list,
    body.catalogo-gestao-compact .mini-list,
    body.catalogo-gestao-compact .service-list,
    body.catalogo-gestao-compact .produto-table-wrap {
        max-height: 420px !important;
        overflow: auto !important;
    }

    body.catalogo-gestao-compact .item-row {
        grid-template-columns: 1fr !important;
    }
}
