/* Client pre-alerts */

.page-manager-prealert,
.page-manager-prealert-detail {
    display: grid;
    gap: 1.25rem;
}

.mgr-status-pill.is-approved {
    background: color-mix(in srgb, #1f9d55 16%, transparent);
    color: #1f9d55;
}

.mgr-status-pill.is-disapproved {
    background: color-mix(in srgb, #c0392b 14%, transparent);
    color: #c0392b;
}

.mgr-prealert-hero__badge {
    background: color-mix(in srgb, #d97706 16%, var(--vs-bg-muted));
    color: #b45309;
}

.mgr-prealert-stat--accent {
    border-color: color-mix(in srgb, #2563eb 24%, var(--vs-border));
    background: color-mix(in srgb, #2563eb 6%, var(--vs-bg-card));
}

.mgr-prealert-stat__hint {
    display: block;
    margin-top: 0.2rem;
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--vs-text-muted);
}

.mgr-prealert-lifecycle.is-approved {
    border-left-color: #1f9d55;
}

.mgr-prealert-lifecycle.is-disapproved {
    border-left-color: #c0392b;
}

.mgr-prealert-lifecycle__aside {
    display: grid;
    gap: 0.65rem;
    align-content: start;
}

.mgr-prealert-aside__label {
    margin: 0;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--vs-accent);
}

.mgr-prealert-aside__copy {
    margin: 0;
    font-size: 0.88rem;
    line-height: 1.55;
    color: var(--vs-text-muted);
}

.mgr-prealert-decision {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    border-radius: 0.85rem;
}

.mgr-prealert-decision--approved {
    background: color-mix(in srgb, #1f9d55 10%, transparent);
    border: 1px solid color-mix(in srgb, #1f9d55 22%, transparent);
}

.mgr-prealert-decision--disapproved {
    background: color-mix(in srgb, #c0392b 8%, transparent);
    border: 1px solid color-mix(in srgb, #c0392b 20%, transparent);
}

.mgr-prealert-decision__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    font-size: 0.9rem;
    font-weight: 700;
    flex-shrink: 0;
}

.mgr-prealert-decision--approved .mgr-prealert-decision__icon {
    background: color-mix(in srgb, #1f9d55 18%, transparent);
    color: #1f9d55;
}

.mgr-prealert-decision--disapproved .mgr-prealert-decision__icon {
    background: color-mix(in srgb, #c0392b 16%, transparent);
    color: #c0392b;
}

.mgr-prealert-decision strong {
    display: block;
    margin-bottom: 0.15rem;
}

.mgr-prealert-decision p {
    margin: 0;
    font-size: 0.84rem;
    color: var(--vs-text-muted);
}

.mgr-prealert-field--wide {
    grid-column: 1 / -1;
}

.mgr-prealert-reason {
    padding: 0.75rem 0.9rem;
    border-radius: 0.75rem;
    background: color-mix(in srgb, var(--vs-text-muted) 8%, transparent);
    line-height: 1.55;
}

.mgr-prealert-trucks-empty {
    display: grid;
    justify-items: center;
    gap: 0.55rem;
    text-align: center;
    padding: 1.5rem 1rem;
}

.mgr-prealert-trucks-empty__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--vs-text-muted) 12%, transparent);
    color: var(--vs-text-muted);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.05em;
}

.mgr-prealert-truck-reg {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.55rem;
    border-radius: 0.45rem;
    background: color-mix(in srgb, var(--vs-accent) 12%, transparent);
    color: var(--vs-accent);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.03em;
}

.mgr-prealert-driver-name {
    display: block;
    font-weight: 600;
}

.mgr-prealert-driver-id {
    display: block;
    margin-top: 0.15rem;
    font-size: 0.78rem;
    color: var(--vs-text-muted);
}

.mgr-prealert-contact {
    display: grid;
    gap: 0.15rem;
    font-size: 0.86rem;
}

.mgr-prealert-contact__alt {
    font-size: 0.78rem;
    color: var(--vs-text-muted);
}

.mgr-prealert-route {
    display: grid;
    gap: 0.15rem;
    font-size: 0.84rem;
    line-height: 1.45;
    max-width: 14rem;
}

.mgr-prealert-route__arrow {
    color: var(--vs-accent);
    font-weight: 700;
}

.mgr-prealert-trailer-chip {
    display: inline-block;
    padding: 0.18rem 0.5rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--vs-text-muted) 10%, transparent);
    font-size: 0.78rem;
    font-weight: 600;
    white-space: nowrap;
}

.mgr-prealert-trucks-table td {
    vertical-align: top;
}

.mgr-prealert-review {
    padding: 1.35rem 1.5rem;
    border: 1px solid color-mix(in srgb, var(--vs-accent) 22%, var(--vs-border));
    background:
        radial-gradient(circle at top right, color-mix(in srgb, var(--vs-accent) 8%, transparent), transparent 45%),
        var(--vs-surface);
}

.mgr-prealert-review__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1.25rem;
}

.mgr-prealert-review__approve,
.mgr-prealert-review__disapprove {
    display: grid;
    gap: 0.75rem;
    align-content: start;
    padding: 1rem 1.1rem;
    border: 1px solid var(--vs-border);
    border-radius: 0.95rem;
    background: color-mix(in srgb, var(--vs-bg-card) 88%, transparent);
}

.mgr-prealert-review__approve {
    border-color: color-mix(in srgb, #1f9d55 24%, var(--vs-border));
}

.mgr-prealert-review__disapprove {
    border-color: color-mix(in srgb, #c0392b 18%, var(--vs-border));
}

.mgr-prealert-review__approve h4,
.mgr-prealert-review__disapprove h4 {
    margin: 0;
    font-size: 0.95rem;
}

.mgr-prealert-review__approve p,
.mgr-prealert-review__disapprove p {
    margin: 0;
    font-size: 0.86rem;
    line-height: 1.55;
    color: var(--vs-text-muted);
}

.mgr-prealert-review__approve-btn {
    justify-self: start;
}

/* Dispatcher route confirmation */

.mgr-status-pill--pending,
.mgr-status-pill.mgr-status-pill--pending {
    background: color-mix(in srgb, #d97706 16%, transparent);
    color: #b45309;
}

.mgr-prealert-lifecycle--pending {
    border-left-color: #d97706;
}

.mgr-detail-stats--inline {
    margin-top: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
}

.mgr-allocation-pill {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 700;
}

.mgr-allocation-pill.is-required {
    background: color-mix(in srgb, #2563eb 14%, transparent);
    color: #2563eb;
}

.mgr-allocation-pill.is-optional {
    background: color-mix(in srgb, var(--vs-text-muted) 12%, transparent);
    color: var(--vs-text-muted);
}

.mgr-prealert-confirm-btn {
    justify-self: start;
    margin-top: 0.35rem;
}

.mgr-contract-row__action {
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--vs-accent);
    white-space: nowrap;
}
