/* Base Duralux / theme-ocean – fonts, variáveis e resets */
@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

:root {
    --bs-primary: #3454d1;
    --bs-secondary: #64748b;
    --bs-success: #17c666;
    --bs-info: #3dc7be;
    --bs-warning: #ffa21d;
    --bs-danger: #ea4d4d;
    --bs-body-bg: #f0f2f8;
    --bs-body-color: #4b5563;
    --bs-border-color: #e5e7eb;
    --bs-dark: #283c50;
    --bs-font-sans-serif: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}

body {
    font-family: var(--bs-font-sans-serif);
    font-size: .84rem;
    line-height: 1.6;
    color: #6b7885;
    background-color: #f3f4f6;
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    color: var(--bs-dark);
    font-weight: 700;
}

a {
    color: var(--bs-dark);
    font-weight: 600;
    text-decoration: none;
}
a:hover { color: var(--bs-primary); }

.form-control, .form-select {
    border-radius: 5px;
    border-color: var(--bs-border-color);
    font-size: .845rem;
}
.form-control:focus, .form-select:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 0.2rem rgba(52, 84, 209, 0.15);
}
.form-label { font-weight: 600; color: var(--bs-dark); font-size: 12px; }

.btn {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    font-size: 10px;
    border-radius: 3px;
    padding: 12px 16px;
}
.btn-primary { background-color: var(--bs-primary); border-color: var(--bs-primary); color: #fff; }
.btn-primary:hover { background-color: #2c47b2; border-color: #2c47b2; color: #fff; }
.btn-dark { background-color: var(--bs-dark); border-color: var(--bs-dark); color: #fff; }

.card {
    border-radius: 10px;
    border: 1px solid var(--bs-border-color);
    box-shadow: 0 1px 3px rgba(0,0,0,.08);
}
.card-header { border-bottom-color: var(--bs-border-color); font-weight: 700; color: var(--bs-dark); }
.card-footer { border-top-color: var(--bs-border-color); }

.table th { font-size: 10px; font-weight: 700; text-transform: uppercase; color: #64748b; }
.table td { vertical-align: middle; }

.modal-content { border-radius: 10px; border: none; box-shadow: 0 10px 40px rgba(0,0,0,.15); }
.modal-header { border-bottom-color: var(--bs-border-color); }
.modal-footer { border-top-color: var(--bs-border-color); }

.alert { border-radius: 6px; }
.text-muted { color: #64748b !important; }
.text-primary { color: var(--bs-primary) !important; }
.bg-light { background-color: #eff0f6 !important; }
