/* RQ ERP design tokens — ARCHITECTURE.md Section 14/15 */
:root {
    --rq-primary: #1769AA;
    --rq-secondary: #00A6A6;
    --rq-dark: #172B4D;
    --rq-bg: #F5F8FC;
    --rq-surface: #FFFFFF;
    --rq-text: #172B4D;
    --rq-text-muted: #5B6B85;
    --rq-border: #E2E8F0;
    --rq-success: #1BA97A;
    --rq-warning: #E0A030;
    --rq-danger: #D64550;
    --rq-info: #3B82C4;
    --rq-sidebar-bg: #172B4D;
    --rq-sidebar-text: #C9D6E8;
    --rq-sidebar-active: #1769AA;
}

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
        --rq-bg: #0F1B30;
        --rq-surface: #16233C;
        --rq-text: #E7ECF5;
        --rq-text-muted: #93A2BE;
        --rq-border: #26365555;
        --rq-primary: #4A9FDB;
        --rq-secondary: #29C4C4;
        --rq-sidebar-bg: #0B1526;
        --rq-sidebar-text: #A9B8D2;
        --rq-sidebar-active: #4A9FDB;
    }
}

:root[data-theme="dark"] {
    --rq-bg: #0F1B30;
    --rq-surface: #16233C;
    --rq-text: #E7ECF5;
    --rq-text-muted: #93A2BE;
    --rq-border: #26365555;
    --rq-primary: #4A9FDB;
    --rq-secondary: #29C4C4;
    --rq-sidebar-bg: #0B1526;
    --rq-sidebar-text: #A9B8D2;
    --rq-sidebar-active: #4A9FDB;
}

body {
    background: var(--rq-bg);
    color: var(--rq-text);
    font-family: "Segoe UI", Tahoma, sans-serif;
}

a { color: var(--rq-primary); }

.rq-navbar {
    background: var(--rq-surface);
    border-bottom: 1px solid var(--rq-border);
}

.rq-sidebar {
    background: var(--rq-sidebar-bg);
    color: var(--rq-sidebar-text);
    min-height: 100vh;
    width: 260px;
}

.rq-sidebar .nav-link {
    color: var(--rq-sidebar-text);
    border-radius: .5rem;
    margin-inline: .5rem;
}

.rq-sidebar .nav-link.active,
.rq-sidebar .nav-link:hover {
    background: var(--rq-sidebar-active);
    color: #fff;
}

.rq-sidebar .nav-section {
    text-transform: uppercase;
    font-size: .72rem;
    letter-spacing: .06em;
    color: #7E8FB0;
    padding-inline: 1rem;
    margin-top: 1rem;
}

.rq-sidebar .nav-link.disabled {
    color: #5C6C8A;
}

.rq-sidebar .badge-soon {
    font-size: .65rem;
}

.card {
    background: var(--rq-surface);
    border: 1px solid var(--rq-border);
}

.btn-primary {
    background-color: var(--rq-primary);
    border-color: var(--rq-primary);
}

.btn-primary:hover {
    filter: brightness(0.92);
}

.text-rq-secondary { color: var(--rq-secondary); }
.bg-rq-success { background: var(--rq-success); }
.badge-status-active { background: var(--rq-success); }
.badge-status-trialing { background: var(--rq-info); }
.badge-status-past_due, .badge-status-suspended { background: var(--rq-warning); color: #3a2a00; }
.badge-status-cancelled, .badge-status-expired { background: var(--rq-danger); }

.auth-shell {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
}

.auth-card {
    max-width: 440px;
    width: 100%;
}

.rq-brand {
    font-weight: 700;
    color: var(--rq-primary);
}
