/* Sessions (Shift) page - B60 OS (page-scoped) */

.sessions-page {
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-6);
}

.sessions-active-card {
    padding: var(--ds-space-6);
}

.sessions-active-head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--ds-space-4);
    margin-block-end: var(--ds-space-6);
}

.sessions-active-id {
    margin: var(--ds-space-2) 0 0;
    font-family: var(--ds-font-mono);
    font-size: var(--ds-text-lg);
    font-weight: var(--ds-fw-semibold);
    color: var(--ds-text-primary);
}

.sessions-timer-block {
    text-align: end;
}

.sessions-timer {
    font-size: var(--ds-text-2xl);
    font-weight: var(--ds-fw-bold);
    font-family: var(--ds-font-mono);
    font-variant-numeric: tabular-nums;
    color: var(--ds-text-primary);
}

.sessions-timer-sub {
    font-size: var(--ds-text-sm);
    color: var(--ds-text-secondary);
    margin-block-start: var(--ds-space-1);
}

.sessions-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--ds-space-4);
    margin-block-end: var(--ds-space-6);
}

.sessions-stat-grid--secondary {
    margin-block-end: var(--ds-space-6);
}

.sessions-stat-grid .ds-stat-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--ds-space-3);
}

.sessions-stat-grid .ds-stat-card-value {
    color: var(--ds-text-primary);
}

.sessions-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ds-space-3);
    justify-content: flex-end;
}

.sessions-empty {
    text-align: center;
    padding: var(--ds-space-12) var(--ds-space-6);
}

.sessions-empty-icon {
    width: 64px;
    height: 64px;
    margin-inline: auto;
    margin-block-end: var(--ds-space-4);
    color: var(--ds-text-tertiary);
}

.sessions-empty-title {
    margin: 0 0 var(--ds-space-2);
    font-size: var(--ds-text-lg);
    font-weight: var(--ds-fw-semibold);
}

.sessions-empty-desc {
    margin: 0 0 var(--ds-space-6);
    color: var(--ds-text-secondary);
    font-size: var(--ds-text-sm);
}

.sessions-history-wrap {
    overflow-x: auto;
    border: 1px solid var(--ds-border);
    border-radius: var(--ds-radius-lg);
}

.sessions-close-summary {
    padding: var(--ds-space-5);
    background: var(--ds-bg-inset);
    border-radius: var(--ds-radius-md);
    margin-block-end: var(--ds-space-5);
}

.sessions-close-row {
    display: flex;
    justify-content: space-between;
    margin-block-end: var(--ds-space-2);
    font-size: var(--ds-text-sm);
}

.sessions-close-row.is-total {
    font-weight: var(--ds-fw-bold);
    padding-block-start: var(--ds-space-3);
    margin-block-start: var(--ds-space-2);
    border-block-start: 1px solid var(--ds-border);
}

.sessions-detail-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--ds-space-2);
    margin-block-end: var(--ds-space-4);
}

.sessions-detail-stat {
    padding: var(--ds-space-3);
    border-radius: var(--ds-radius-md);
    text-align: center;
    background: var(--ds-bg-inset);
}

.sessions-detail-stat.is-success {
    background: var(--ds-success-tint);
}

.sessions-detail-stat.is-danger {
    background: var(--ds-danger-tint);
}

.sessions-detail-stat.is-info {
    background: var(--ds-info-tint);
}

.sessions-order-list {
    border: 1px solid var(--ds-border);
    border-radius: var(--ds-radius-md);
    overflow: hidden;
}

.sessions-order-item {
    display: flex;
    align-items: center;
    padding: var(--ds-space-3);
    border-block-end: 1px solid var(--ds-border);
    gap: var(--ds-space-3);
}

.sessions-order-item:last-child {
    border-block-end: none;
}

@media (max-width: 768px) {
    .sessions-stat-grid,
    .sessions-detail-stats {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 480px) {
    .sessions-stat-grid,
    .sessions-detail-stats {
        grid-template-columns: 1fr;
    }
}
