/**
 * client-dashboard.css — Client portal dashboard styles
 */

/* ── Layout ────────────────────────────────────────────────── */

.client-dash {
    padding: var(--space-16) 0;
    max-width: 900px;
}

/* ── Header ────────────────────────────────────────────────── */

.client-dash__header {
    margin-bottom: var(--space-32);
}

.client-dash__header h1 {
    margin-bottom: var(--space-8);
}

/* ── Messages ──────────────────────────────────────────────── */

.client-dash__error {
    display: flex;
    align-items: center;
    gap: var(--space-8);
    padding: var(--space-8) var(--space-12);
    border-radius: var(--radius-8);
    font-size: var(--text-14);
    margin-bottom: var(--space-16);
    background: color-mix(in srgb, var(--semantic-danger) 8%, transparent);
    color: var(--semantic-danger);
}

/* ── Sections ──────────────────────────────────────────────── */

.client-dash__section {
    margin-bottom: var(--space-24);
}

.client-dash__section-title {
    font-size: var(--text-16);
    font-weight: 600;
    margin-bottom: var(--space-12);
}

/* ── Card Grid ─────────────────────────────────────────────── */

.client-dash__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: var(--space-16);
}

.client-dash__card {
    background: var(--surface-card);
    border: 1px solid var(--surface-border);
    border-radius: var(--radius-12);
    padding: var(--space-24);
    transition: border-color 0.15s;
}

.client-dash__card:hover {
    border-color: var(--brand-primary);
}

.client-dash__card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-8);
    margin-bottom: var(--space-8);
}

.client-dash__card-title {
    font-size: var(--text-16);
    font-weight: 600;
    margin: 0;
}

/* ── Badges ────────────────────────────────────────────────── */

.client-dash__badge {
    display: inline-block;
    padding: var(--space-4) var(--space-8);
    border-radius: var(--radius-full);
    font-size: var(--text-14);
    font-weight: 500;
    text-transform: capitalize;
    background: var(--surface-sunken);
    color: var(--surface-text-medium);
    white-space: nowrap;
}

.client-dash__badge--active {
    background: color-mix(in srgb, var(--semantic-success) 12%, transparent);
    color: var(--semantic-success);
}

.client-dash__badge--closed {
    background: var(--surface-sunken);
    color: var(--surface-text-disabled);
}

/* ── Card Actions ──────────────────────────────────────────── */

.client-dash__card-actions {
    display: flex;
    gap: var(--space-8);
    margin-top: var(--space-16);
}

.client-dash__card-actions .btn {
    font-size: var(--text-14);
}

/* ── Responsive ────────────────────────────────────────────── */

@media (max-width: 600px) {
    .client-dash__grid {
        grid-template-columns: 1fr;
    }
}
