/* sessions.css — Sessions status view */

.sessions-view {
  max-width: 560px;
  margin: 0 auto;
  padding: 16px;
}

.sessions-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.sessions-title {
  font-size: 22px;
  font-weight: 600;
  color: var(--md-sys-color-on-surface, #1a1a1a);
  margin: 0;
}

.sessions-refresh-btn {
  font-size: 13px;
  padding: 6px 14px;
  border-radius: 8px;
  border: 1px solid var(--md-sys-color-outline-variant, #c4c4c4);
  background: var(--md-sys-color-surface-container, #f0f0f0);
  color: var(--md-sys-color-on-surface, #1a1a1a);
  cursor: pointer;
}

.sessions-refresh-btn:hover {
  background: var(--md-sys-color-surface-container-highest, #e0e0e0);
}

.sessions-card {
  background: var(--md-sys-color-surface-container, #f5f5f5);
  border: 1px solid var(--md-sys-color-outline-variant, #c4c4c4);
  border-radius: 12px;
  padding: 20px;
}

.sessions-loading {
  text-align: center;
  color: var(--md-sys-color-on-surface-variant, #666);
  font-size: 14px;
  padding: 24px 0;
}

/* State-specific card borders */
.sessions-active {
  border-color: #4caf50;
}

.sessions-stale {
  border-color: #ff9800;
}

.sessions-unavailable,
.sessions-auth-error {
  border-color: var(--md-sys-color-outline-variant, #c4c4c4);
}

/* Status pill */
.sessions-pill-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}

.sessions-pill {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  padding: 4px 14px;
  border-radius: 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.sessions-active .sessions-pill {
  background: #e8f5e9;
  color: #2e7d32;
}

.sessions-idle .sessions-pill {
  background: #e3f2fd;
  color: #1565c0;
}

.sessions-stale .sessions-pill {
  background: #fff3e0;
  color: #e65100;
}

.sessions-unavailable .sessions-pill,
.sessions-auth-error .sessions-pill {
  background: var(--md-sys-color-surface-container-highest, #e0e0e0);
  color: var(--md-sys-color-on-surface-variant, #666);
}

.sessions-attached {
  font-size: 12px;
  color: #2e7d32;
  opacity: 0.8;
}

/* Detail rows */
.sessions-details {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 6px 16px;
  font-size: 14px;
  margin-bottom: 16px;
}

.sessions-detail-label {
  color: var(--md-sys-color-on-surface-variant, #666);
  white-space: nowrap;
}

.sessions-detail-value {
  color: var(--md-sys-color-on-surface, #1a1a1a);
  word-break: break-all;
}

/* Messages */
.sessions-message {
  font-size: 14px;
  color: var(--md-sys-color-on-surface-variant, #666);
  margin: 0 0 16px;
  line-height: 1.5;
}

.sessions-warning {
  font-size: 13px;
  color: #e65100;
  margin: 0 0 16px;
  padding: 8px 12px;
  background: #fff3e0;
  border-radius: 8px;
  line-height: 1.4;
}

/* Terminal button */
.sessions-actions {
  margin-top: 8px;
}

.sessions-terminal-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 500;
  padding: 10px 20px;
  border-radius: 8px;
  background: var(--md-sys-color-primary, #006a6a);
  color: var(--md-sys-color-on-primary, #fff);
  text-decoration: none;
  transition: opacity 0.15s;
}

.sessions-terminal-btn:hover {
  opacity: 0.9;
}

/* Dark theme overrides */
[data-theme="dark"] .sessions-active .sessions-pill {
  background: rgba(76, 175, 80, 0.2);
  color: #81c784;
}

[data-theme="dark"] .sessions-idle .sessions-pill {
  background: rgba(33, 150, 243, 0.2);
  color: #64b5f6;
}

[data-theme="dark"] .sessions-stale .sessions-pill {
  background: rgba(255, 152, 0, 0.2);
  color: #ffb74d;
}

[data-theme="dark"] .sessions-warning {
  background: rgba(255, 152, 0, 0.15);
  color: #ffb74d;
}

[data-theme="dark"] .sessions-attached {
  color: #81c784;
}
