body {
    background:
        radial-gradient(circle at top left, rgba(0, 140, 225, 0.08), transparent 32%),
        radial-gradient(circle at top right, rgba(7, 164, 118, 0.08), transparent 26%),
        #f5f8fc;
}

body .container-fluid {
    padding-bottom: 28px;
}

body .container-fluid,
body .row-fluid,
body [class*="span"] {
    min-width: 0;
}

body .page-header {
    margin: 0 0 18px;
    padding: 22px 24px;
    border: 1px solid #dbe8f3;
    border-radius: 18px;
    background: linear-gradient(135deg, #f3f9ff 0%, #ffffff 58%, #f4fbf7 100%);
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.06);
}

body .page-header h1 {
    margin: 0;
    color: #1f2937;
    font-size: 30px;
    line-height: 1.15;
    font-weight: 700;
}

body .page-header h1 small {
    color: #667085;
    font-size: 14px;
    font-weight: 500;
}

body .breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0 0 18px;
    padding: 12px 16px;
    border: 1px solid #e4ebf3;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04);
}

body .breadcrumb li,
body .breadcrumb a,
body .breadcrumb span,
body .breadcrumb .active {
    color: #667085;
}

body .breadcrumb a:hover {
    color: #005f99;
    text-decoration: none;
}

body .box-conteudo,
body .dash-card,
body .modern-box {
    margin-bottom: 18px;
    padding: 20px;
    border: 1px solid #dde6f0;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

body .box-conteudo {
    overflow-x: auto;
}

body .alert {
    border: 0;
    border-radius: 14px;
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.07);
}

body .alert-success {
    background: linear-gradient(135deg, #effcf5 0%, #f7fffb 100%);
    color: #0f5132;
}

body .alert-error,
body .alert-danger {
    background: linear-gradient(135deg, #fff1f1 0%, #fff7f7 100%);
    color: #842029;
}

body .btn,
body .btn-search,
body .btn-success,
body .btn-primary,
body .btn-warning,
body .btn-danger {
    border-radius: 999px;
    box-shadow: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
}

body .btn:hover,
body .btn-search:hover,
body .btn-success:hover,
body .btn-primary:hover,
body .btn-warning:hover,
body .btn-danger:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.12);
}

body .btn-primary,
body .btn-search {
    border-color: #0078c2;
    background: linear-gradient(135deg, #008ce1 0%, #0f7eb8 100%);
    color: #fff;
}

body .btn-success {
    border-color: #0d7d57;
    background: linear-gradient(135deg, #07a476 0%, #0b8d66 100%);
    color: #fff;
}

body .btn-warning {
    border-color: #d97706;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: #fff;
}

body input[type="text"],
body input[type="password"],
body input[type="email"],
body input[type="number"],
body input[type="search"],
body select,
body textarea {
    min-height: 40px;
    border: 1px solid #d7e2ec;
    border-radius: 12px;
    background: #fff;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.03);
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

body input[type="text"]:focus,
body input[type="password"]:focus,
body input[type="email"]:focus,
body input[type="number"]:focus,
body input[type="search"]:focus,
body select:focus,
body textarea:focus {
    border-color: #7bc0ec;
    box-shadow: 0 0 0 4px rgba(0, 140, 225, 0.12);
    outline: 0;
}

body input.span1,
body input.span2,
body input.span3,
body input.span4,
body input.span5,
body input.span6,
body input.span7,
body input.span8,
body input.span9,
body input.span10,
body input.span11,
body input.span12,
body select.span1,
body select.span2,
body select.span3,
body select.span4,
body select.span5,
body select.span6,
body select.span7,
body select.span8,
body select.span9,
body select.span10,
body select.span11,
body select.span12,
body textarea.span1,
body textarea.span2,
body textarea.span3,
body textarea.span4,
body textarea.span5,
body textarea.span6,
body textarea.span7,
body textarea.span8,
body textarea.span9,
body textarea.span10,
body textarea.span11,
body textarea.span12 {
    box-sizing: border-box;
    max-width: 100%;
}

body .table,
body table.table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #fff;
}

body .table th,
body .table td,
body table.table th,
body table.table td {
    border-top: 1px solid #edf2f7;
    vertical-align: middle;
}

body .table thead th,
body table.table thead th {
    border-top: 0;
    background: #f7fbff;
    color: #344054;
}

body .pagination ul > li > a,
body .pagination ul > li > span {
    border-radius: 10px;
    margin: 0 2px;
}

body #listagem_informacoes,
body #listagem_form_busca {
    margin-bottom: 14px;
    color: #667085;
}

body #listagem_form_busca .inline-inputs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

body .tituloOpcao,
body .box-title h4 {
    color: #1f2937;
}

@media (max-width: 991px) {
    body .page-header {
        padding: 18px;
    }

    body .page-header h1 small {
        display: block;
        margin-top: 8px;
    }

    body .breadcrumb {
        align-items: flex-start;
    }
}

body .ia-page-breadcrumb__meta {
    padding-top: 3px;
    color: #667085;
}

body .ia-page-header__title i {
    margin-right: 8px;
    color: #005f99;
}
