:root {
    --pp-primary: #8FA998;
    --pp-primary-dark: #728C7C;
    --pp-bg: #F7F5F0;
    --pp-surface: #FFFFFF;
    --pp-text: #4A4A48;
    --pp-border: #E3DFD4;

    --pp-success-bg: #DCEAD9;
    --pp-success-text: #3F6146;
    --pp-danger-bg: #F1DCDC;
    --pp-danger-text: #8B5252;
    --pp-warning-bg: #F7EBD2;
    --pp-warning-text: #8A6D2E;
    --pp-info-bg: #DCE6EA;
    --pp-info-text: #4A6670;
    --pp-secondary-bg: #E6E2D8;
    --pp-secondary-text: #6B675E;
}

body {
    background-color: var(--pp-bg);
    color: var(--pp-text);
}

.navbar.bg-primary {
    background-color: var(--pp-primary-dark) !important;
}

.card {
    background-color: var(--pp-surface);
    border-color: var(--pp-border);
}

.table {
    color: var(--pp-text);
}

.btn-primary {
    background-color: var(--pp-primary);
    border-color: var(--pp-primary);
    color: #2F3B34;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background-color: var(--pp-primary-dark) !important;
    border-color: var(--pp-primary-dark) !important;
    color: #FFFFFF !important;
}

.btn-outline-primary {
    color: var(--pp-primary-dark);
    border-color: var(--pp-primary);
}
.btn-outline-primary:hover {
    background-color: var(--pp-primary);
    border-color: var(--pp-primary);
    color: #2F3B34;
}

.btn-success {
    background-color: var(--pp-success-bg);
    border-color: var(--pp-success-bg);
    color: var(--pp-success-text);
}
.btn-success:hover, .btn-success:focus {
    background-color: #C8DEC3 !important;
    border-color: #C8DEC3 !important;
    color: var(--pp-success-text) !important;
}

.btn-danger {
    background-color: var(--pp-danger-bg);
    border-color: var(--pp-danger-bg);
    color: var(--pp-danger-text);
}
.btn-danger:hover, .btn-danger:focus {
    background-color: #E6C4C4 !important;
    border-color: #E6C4C4 !important;
    color: var(--pp-danger-text) !important;
}

.btn-outline-secondary {
    color: var(--pp-secondary-text);
    border-color: var(--pp-border);
}
.btn-outline-secondary:hover {
    background-color: var(--pp-secondary-bg);
    border-color: var(--pp-border);
    color: var(--pp-text);
}

.alert-success {
    background-color: var(--pp-success-bg);
    border-color: var(--pp-success-bg);
    color: var(--pp-success-text);
}
.alert-danger {
    background-color: var(--pp-danger-bg);
    border-color: var(--pp-danger-bg);
    color: var(--pp-danger-text);
}
.alert-warning {
    background-color: var(--pp-warning-bg);
    border-color: var(--pp-warning-bg);
    color: var(--pp-warning-text);
}
.alert-info {
    background-color: var(--pp-info-bg);
    border-color: var(--pp-info-bg);
    color: var(--pp-info-text);
}

.badge.bg-success {
    background-color: var(--pp-success-bg) !important;
    color: var(--pp-success-text) !important;
}
.badge.bg-danger {
    background-color: var(--pp-danger-bg) !important;
    color: var(--pp-danger-text) !important;
}
.badge.bg-secondary {
    background-color: var(--pp-secondary-bg) !important;
    color: var(--pp-secondary-text) !important;
}
