﻿:root {
    --bg-1: #f5fffb;
    --bg-2: #dff9f0;
    --brand-turquoise: #14b8a6;
    --brand-green: #16a34a;
    --brand-yellow: #facc15;
    --brand-deep: #0f766e;
    --ink: #0f172a;
}

body {
    font-family: "Segoe UI", "Trebuchet MS", sans-serif;
    color: var(--ink);
    background: linear-gradient(135deg, var(--bg-1), var(--bg-2));
    min-height: 100vh;
}

.navbar-brand {
    font-weight: 700;
    letter-spacing: 0.3px;
}

.card {
    border: 1px solid rgba(20, 184, 166, 0.2);
    border-radius: 14px;
    box-shadow: 0 10px 25px rgba(15, 118, 110, 0.08);
}

.btn-primary {
    --bs-btn-bg: var(--brand-turquoise);
    --bs-btn-border-color: var(--brand-turquoise);
    --bs-btn-hover-bg: var(--brand-deep);
    --bs-btn-hover-border-color: var(--brand-deep);
}

.badge-status-missing {
    background: #fef08a;
    color: #854d0e;
}

.badge-status-in-progress {
    background: #86efac;
    color: #14532d;
}

.badge-status-closed {
    background: #5eead4;
    color: #134e4a;
}

.hero-strip {
    background: linear-gradient(90deg, rgba(20, 184, 166, 0.12), rgba(250, 204, 21, 0.12));
    border: 1px solid rgba(22, 163, 74, 0.2);
    border-radius: 16px;
    padding: 1rem;
}

.progress {
    height: 14px;
    border-radius: 999px;
}

.progress-bar {
    background: linear-gradient(90deg, var(--brand-green), var(--brand-turquoise));
}

.missing-docs-alert {
    border-color: #dc2626 !important;
    animation: missing-docs-pulse 1.2s ease-in-out infinite;
}

@keyframes missing-docs-pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.55);
    }
    70% {
        box-shadow: 0 0 0 14px rgba(220, 38, 38, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(220, 38, 38, 0);
    }
}
