/* Parts ASAP brand kit — consistent with the ISP Portal (navy #1E3A8A / red #C8102E). */
:root {
    --pa-navy: #1E3A8A;
    --pa-navy-dark: #1E2A5E;
    --pa-red: #C8102E;
    --pa-red-soft: rgba(200, 16, 46, .08);
    --pa-ink: #1f2937;
    --pa-ink-soft: #6b7280;
}

body { color: var(--pa-ink); background: #f8fafc; }
a, .btn-link { color: var(--pa-navy); }

.btn-primary { background-color: var(--pa-red); border-color: var(--pa-red); color: #fff; font-weight: 600; }
.btn-primary:hover, .btn-primary:focus { background-color: #a60d26; border-color: #a60d26; color: #fff; }
.loading-progress circle:last-child { stroke: var(--pa-navy); }

/* App shell — top navbar like the ISP portal. */
.pa-navbar { background: #fff; border-bottom: 1px solid #e5e7eb; box-shadow: 0 .25rem .75rem rgba(0,0,0,.05); }
.pa-navbar .navbar-brand { font-weight: 700; }
.pa-navbar .navbar-brand .dot { color: var(--pa-red); }
.pa-navbar .navbar-brand .pa-sub { color: var(--pa-ink-soft); font-weight: 400; font-size: .85rem; }
.pa-navbar .nav-link { color: var(--pa-ink); }
.pa-navbar .nav-link.active { color: var(--pa-navy); font-weight: 600; }

.pa-main { max-width: 960px; margin: 0 auto; padding: 1.25rem 1rem 5rem; }
.pa-footer { border-top: 1px solid #e5e7eb; color: var(--pa-ink-soft); font-size: .85rem; padding: 1rem; text-align: center; }

.pa-card { background: #fff; border: 1px solid #e5e7eb; border-radius: 1rem; padding: 1.5rem; box-shadow: 0 10px 30px rgba(15,23,42,.06); }
.pa-eyebrow { text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; font-weight: 600; color: var(--pa-navy); }

/* Offline / sync banner. */
.pa-offline-banner { background: var(--pa-red-soft); border: 1px solid #FECACA; color: #991B1B; border-radius: .55rem; padding: .5rem .9rem; margin-bottom: 1rem; font-size: .9rem; display:flex; align-items:center; gap:.5rem; }
.pa-online-pill { font-size: .72rem; padding: .15rem .5rem; border-radius: 1rem; }
.pa-online { background:#dcfce7; color:#166534; }
.pa-offline { background:#fee2e2; color:#991b1b; }

/* Status chips. */
.pa-status { font-size: .72rem; font-weight: 600; padding: .2rem .6rem; border-radius: 1rem; white-space: nowrap; }
.pa-status-New { background:#e0e7ff; color:#3730a3; }
.pa-status-UnderReview { background:#fef9c3; color:#854d0e; }
.pa-status-Assigned { background:#dbeafe; color:#1e40af; }
.pa-status-Converted { background:#dcfce7; color:#166534; }
.pa-status-Closed { background:#f3f4f6; color:#374151; }

/* Mobile-first capture form. */
.pa-field { margin-bottom: 1rem; }
.pa-field label { font-weight: 600; font-size: .85rem; margin-bottom: .25rem; display:block; }
.pa-photo-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(90px,1fr)); gap:.5rem; }
.pa-photo-grid img { width:100%; height:90px; object-fit:cover; border-radius:.5rem; border:1px solid #e5e7eb; }
.pa-sticky-actions { position: sticky; bottom: 0; background: #fff; padding: .75rem 0; border-top: 1px solid #e5e7eb; }
