:root {
    --yes-bg: #f5f8f4;
    --yes-surface: #ffffff;
    --yes-surface-2: #f4f7f3;
    --yes-border: #d7e1d8;
    --yes-text: #04171a;
    --yes-muted: #5f7374;
    --yes-accent: #5eb8ac;
    --yes-accent-2: #2f8f83;
    --yes-header-footer-bg: #f7fbf8;
    --yes-header-footer-border: #d7e1d8;
}

html, body {
    background:
        radial-gradient(circle at 25% 0%, #e6f0ea 0%, transparent 38%),
        linear-gradient(180deg, #f7fbf8 0%, #eff5ef 100%);
    color: var(--yes-text);
}

body {
    font-size: 15px;
}

h1, h2, h3, h4, h5, h6,
.display-1, .display-2, .display-3, .display-4, .display-5, .display-6 {
    color: #062126 !important;
    font-weight: 700;
}

p, li, td, th, label, .form-label, .card-text, .lead {
    color: #102e34;
}

.navbar.bg-dark {
    background: var(--yes-header-footer-bg) !important;
    border-bottom: 1px solid var(--yes-header-footer-border);
    backdrop-filter: blur(8px);
}

.navbar-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    color: #0b242a !important;
}

.yes-logo {
    height: 26px;
    width: auto;
    display: inline-block;
}

.nav-link {
    color: #1e3a40 !important;
}

.nav-link.active,
.nav-link:hover {
    color: var(--yes-accent) !important;
}

.navbar .fas,
.navbar i {
    color: #2a4a4d !important;
}

.card {
    background: linear-gradient(180deg, var(--yes-surface-2), var(--yes-surface));
    border: 1px solid var(--yes-border);
    box-shadow: 0 8px 20px rgba(10, 40, 34, 0.08);
}

.card.bg-primary,
.card.bg-info,
.card.bg-warning,
.card.bg-success {
    background: linear-gradient(135deg, #e7f3ef, #dcece7) !important;
    border-color: #c8ddd7 !important;
}

.card.bg-primary h1,
.card.bg-primary h2,
.card.bg-primary h3,
.card.bg-primary h4,
.card.bg-primary h5,
.card.bg-primary h6,
.card.bg-primary p,
.card.bg-info h1,
.card.bg-info h2,
.card.bg-info h3,
.card.bg-info h4,
.card.bg-info h5,
.card.bg-info h6,
.card.bg-info p,
.card.bg-warning h1,
.card.bg-warning h2,
.card.bg-warning h3,
.card.bg-warning h4,
.card.bg-warning h5,
.card.bg-warning h6,
.card.bg-warning p,
.card.bg-success h1,
.card.bg-success h2,
.card.bg-success h3,
.card.bg-success h4,
.card.bg-success h5,
.card.bg-success h6,
.card.bg-success p {
    color: #08262b !important;
}

.card.bg-primary i,
.card.bg-info i,
.card.bg-warning i,
.card.bg-success i {
    color: #0f4345 !important;
}

.btn-primary,
.btn-info,
.btn-success {
    background: linear-gradient(135deg, var(--yes-accent-2), var(--yes-accent));
    border-color: transparent;
    color: #031614;
    font-weight: 600;
}

.btn-primary:hover,
.btn-info:hover,
.btn-success:hover {
    filter: brightness(1.05);
}

.btn-outline-light,
.btn-outline-info,
.btn-outline-primary {
    border-color: var(--yes-accent);
    color: var(--yes-accent);
}

.btn-outline-light:hover,
.btn-outline-info:hover,
.btn-outline-primary:hover {
    background: var(--yes-accent);
    color: #041312;
}

.form-control,
.form-select {
    background-color: #ffffff;
    border: 1px solid var(--yes-border);
    color: var(--yes-text);
}

.form-control:focus,
.form-select:focus {
    background-color: #ffffff;
    border-color: var(--yes-accent);
    box-shadow: 0 0 0 0.2rem rgba(94, 184, 172, 0.2);
    color: var(--yes-text);
}

.table {
    --bs-table-bg: transparent;
    --bs-table-color: var(--yes-text);
    --bs-table-border-color: var(--yes-border);
}

.table th,
.table td,
.table tr,
.table.table-striped > tbody > tr > * {
    color: #0b252a !important;
}

.table.table-striped > tbody > tr:nth-of-type(odd) > * {
    background-color: #f2f7f3 !important;
}

.table.table-striped > tbody > tr:nth-of-type(even) > * {
    background-color: #ffffff !important;
}

.alert {
    border-color: var(--yes-border);
}

.text-muted,
.form-text,
small {
    color: var(--yes-muted) !important;
}

footer.bg-dark {
    background: var(--yes-header-footer-bg) !important;
    border-top: 1px solid var(--yes-header-footer-border);
}

footer.bg-dark,
footer.bg-dark h1,
footer.bg-dark h2,
footer.bg-dark h3,
footer.bg-dark h4,
footer.bg-dark h5,
footer.bg-dark h6,
footer.bg-dark p,
footer.bg-dark li,
footer.bg-dark a {
    color: #0f2f34 !important;
}

footer.bg-dark a:hover {
    color: var(--yes-accent) !important;
}
