/* rq.css — Requirement & Quotation layer di atas dashboard.css (BCI-PM theme) */
:root {
    --rq-cyan: #06b6d4;
    --rq-sky: #0ea5e9;
    --rq-deep: #0284c7;
}

.panel-card {
    border: 1px solid var(--border-color, #e2e8f0);
    border-radius: 12px;
    background: var(--card-bg, #fff);
    box-shadow: var(--shadow-sm, 0 1px 3px rgba(0,0,0,.06));
    overflow: hidden;
    height: 100%;
}

.panel-header {
    background: linear-gradient(135deg, var(--rq-sky), var(--rq-deep));
    color: #fff;
    padding: .65rem 1rem;
    font-weight: 600;
    font-size: .92rem;
    display: flex;
    align-items: center;
    gap: .5rem;
}

.panel-body {
    padding: 1rem;
}

.kpi-value {
    font-size: 1.9rem;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.1;
}

.kpi-sub {
    font-size: .78rem;
    color: #64748b;
}

.status-badge {
    font-size: .72rem;
    font-weight: 600;
    padding: .3rem .6rem;
    border-radius: 999px;
    white-space: nowrap;
}

.st-draft       { background: #f1f5f9; color: #475569; }
.st-submitted   { background: #dbeafe; color: #1d4ed8; }
.st-pending_ea  { background: #fef3c7; color: #b45309; }
.st-pending_sm  { background: #ffedd5; color: #c2410c; }
.st-pending_ssm { background: #fae8ff; color: #a21caf; }
.st-quotation_created { background: #ccfbf1; color: #0f766e; }
.st-released    { background: #dcfce7; color: #15803d; }
.st-rejected    { background: #fee2e2; color: #b91c1c; }
.st-void, .st-cancelled { background: #e2e8f0; color: #64748b; }
.st-closed      { background: #e0e7ff; color: #3730a3; }

.workflow-steps {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    align-items: center;
}

.workflow-steps .step {
    padding: .35rem .7rem;
    border-radius: 999px;
    font-size: .74rem;
    font-weight: 600;
    background: #f1f5f9;
    color: #94a3b8;
}

.workflow-steps .step.done   { background: #dcfce7; color: #15803d; }
.workflow-steps .step.active { background: var(--rq-deep); color: #fff; }
.workflow-steps .step.rejected { background: #fee2e2; color: #b91c1c; }
.workflow-steps .arrow { color: #cbd5e1; font-size: .7rem; }

.item-row-input { min-width: 120px; }

.print-sheet {
    background: #fff;
    max-width: 900px;
    margin: 0 auto;
    padding: 2.2rem;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
}

.print-sheet table { width: 100%; }
.print-sheet th { background: #f1f5f9; }

/* ── Tombol Logout / Ubah Password (sidebar) ── */
.btn-logout {
    display: flex;
    align-items: center;
    gap: .55rem;
    width: 100%;
    margin-top: .45rem;
    padding: .55rem .8rem;
    border-radius: 8px;
    color: #fff;
    font-size: .84rem;
    font-weight: 600;
    text-decoration: none;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.14);
    transition: background .15s ease, border-color .15s ease;
}
.btn-logout:hover, .btn-logout:focus {
    background: #ef4444;
    border-color: #ef4444;
    color: #fff;
    text-decoration: none;
}
.sidebar-footer .user-info {
    display: flex;
    align-items: center;
    gap: .6rem;
    color: #fff;
    font-size: .82rem;
    margin-bottom: .5rem;
}
.sidebar-footer .user-info small { color: rgba(255,255,255,.75); }

/* ── Tombol Logout di top navbar ── */
.nav-logout {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .35rem .85rem;
    border-radius: 999px;
    font-size: .8rem;
    font-weight: 600;
    color: #b91c1c;
    background: #fee2e2;
    border: 1px solid #fecaca;
    text-decoration: none;
    transition: background .15s ease;
}
.nav-logout:hover, .nav-logout:focus {
    background: #ef4444;
    border-color: #ef4444;
    color: #fff;
    text-decoration: none;
}
@media print {
    .sidebar, .main-content > nav, .sidebar-footer, .no-print { display: none !important; }
    .main-content { margin-left: 0 !important; }
    .print-sheet { border: none; padding: 0; }
}
