/* Componentes compartilhados — substitui panels e blocos Bootstrap */

.page-panel--success {
    border-color: #d6e9c6;
}

.page-panel--success .page-panel__heading {
    background: #dff0d8;
    border-bottom-color: #d6e9c6;
    color: #3c763d;
}

.page-panel--success .page-panel__heading h3 {
    margin: 0;
    font-size: var(--text-lg-md, 16px);
    font-weight: 600;
}

.page-panel--compact .page-panel__body {
    padding: 12px 15px;
}

.alerta-meta {
    margin-bottom: 12px;
}

.alerta-meta__client {
    font-size: var(--text-xl, 18px);
}

.alerta-meta__line {
    font-size: var(--text-lg, 15px);
    margin-top: 4px;
}

.alerta-meta__details {
    font-size: var(--text-lg, 15px);
    margin-top: 4px;
}

.alerta-meta__badge {
    font-size: var(--text-lg-md, 16px);
    font-weight: 700;
}

.eventos-legenda {
    margin: 20px 0 15px;
    padding: 12px;
    background: #f9f9f9;
    border: 1px solid #e5e5e5;
    border-radius: 4px;
    font-size: var(--text-md, 13px);
    line-height: 1.6;
}

.eventos-legenda hr {
    margin: 8px 0;
    border: 0;
    border-top: 1px solid #e5e5e5;
}

.app-table-head {
    background-color: #1c699d;
    color: #fff;
}

.app-table-head th {
    padding: 10px;
    vertical-align: middle;
}

.io-panel {
    margin-bottom: 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    background: #fff;
    overflow: hidden;
}

.io-panel__heading {
    padding: 10px 12px;
    background: #f5f5f5;
    border-bottom: 1px solid #ddd;
    font-size: var(--text-md, 13px);
    font-weight: 700;
    text-transform: uppercase;
}

.io-panel__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.io-panel__item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px;
    border-bottom: 1px solid #eee;
}

.io-panel__item:last-child {
    border-bottom: 0;
}

.header-admin-classic {
    margin: -10px 0 -30px;
}

.header-admin-classic__table {
    width: 100%;
}

.relatorios-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 12px;
}

.relatorios-grid__item {
    display: block;
    width: 100%;
    padding: 12px;
    background-color: #e0e0e0;
    border: none;
    border-radius: 4px;
    text-align: center;
    cursor: pointer;
}

.relatorios-grid__item:hover {
    background-color: #d5d5d5;
}

.relatorios-grid__item img {
    height: 45px;
}

.relatorios-grid__item h4 {
    margin: 8px 0 0;
    font-size: var(--text-base-lg, 14px);
    font-weight: 600;
}

.ibutton-config .page-panel__body {
    padding: 16px;
}
