:root {
    --bp-navy: #0B1D33;
    --bp-blue: #2563EB;
    --bp-cyan: #06B6D4;
    --bp-success: #10B981;
    --bp-warning: #F59E0B;
    --bp-danger: #EF4444;
    --bp-info: #3B82F6;
    --bp-background: #F8FAFC;
    --bp-border: #DCE3EC;
    --bp-text: #0F172A;
    --bp-muted: #64748B;
    --bp-radius: 8px;
}

html { color-scheme: light; }
body {
    background: var(--bp-background) !important;
    color: var(--bp-text);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
}

.rounded-xl, .rounded-lg { border-radius: var(--bp-radius) !important; }
.shadow, .shadow-sm { box-shadow: 0 1px 2px rgb(15 23 42 / 0.06), 0 1px 3px rgb(15 23 42 / 0.04) !important; }
.shadow-lg, .shadow-xl { box-shadow: 0 12px 28px rgb(15 23 42 / 0.12) !important; }

.bg-blue-600 { background-color: var(--bp-blue) !important; }
.hover\:bg-blue-700:hover { background-color: #1D4ED8 !important; }
.text-blue-600, .hover\:text-blue-600:hover { color: var(--bp-blue) !important; }
.border-blue-600 { border-color: var(--bp-blue) !important; }
.focus\:ring-blue-500:focus { --tw-ring-color: rgb(37 99 235 / .35) !important; }

.bg-gray-950 { background-color: var(--bp-navy) !important; }
.border-gray-800 { border-color: rgb(255 255 255 / .10) !important; }
.text-gray-300 { color: #CBD5E1 !important; }
.text-gray-400, .text-gray-500 { color: var(--bp-muted) !important; }
.app-sidebar .text-gray-400, .app-sidebar .text-gray-500 { color: #94A3B8 !important; }
.app-sidebar .hover\:bg-gray-800:hover { background-color: rgb(255 255 255 / .08) !important; }

.bg-green-600 { background-color: var(--bp-success) !important; }
.text-green-600 { color: #059669 !important; }
.bg-yellow-600 { background-color: var(--bp-warning) !important; }
.text-yellow-600 { color: #D97706 !important; }
.bg-red-600 { background-color: var(--bp-danger) !important; }
.text-red-600 { color: #DC2626 !important; }

input, select, textarea {
    border-color: var(--bp-border) !important;
    border-radius: var(--bp-radius) !important;
}
input:focus, select:focus, textarea:focus {
    border-color: var(--bp-blue) !important;
    outline: none;
    box-shadow: 0 0 0 3px rgb(37 99 235 / .12) !important;
}

a, button { transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease; }
::selection { background: rgb(6 182 212 / .22); }
