
/* Aurora-like accent variables */
:root{--accent:#8a2be2;--accent-light:#7dd3fc}
/* .session-banner removed */
.session-banner { display: none;
  background: #eef3ff;
  border-bottom: 1px solid #c7d2ff;
  color: #1f3d99;
  font-family: 'Roboto', sans-serif;
  font-size: 0.9rem;
  margin: 0 0 1.25rem;
  padding: 6px 12px;
}
.session-banner strong {
  font-weight: 600;
}

/* Running status - yellow gradient shimmer */
.status-text-running {
  font-weight: 700;
  color: #f6c200;
  background-image: linear-gradient(120deg, #ffd54a 0%, #ffca28 25%, #ffb300 50%, #ffca28 75%, #ffd54a 100%);
  background-size: 260% 100%;
  background-repeat: no-repeat;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: statusRunningYellow 2.6s ease-in-out infinite;
  text-shadow: 0 2px 10px rgba(255, 193, 7, 0.14);
}

/* Merged status - purple gradient */
.status-text-merged {
  font-weight: 700;
  color: #7c3aed;
  background-image: linear-gradient(120deg, #9f7ae7 0%, #7c3aed 50%, #5b21b6 100%);
  background-size: 260% 100%;
  background-repeat: no-repeat;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: statusMergedPurple 3s ease-in-out infinite;
  text-shadow: 0 2px 10px rgba(124, 58, 237, 0.12);
}

@keyframes statusMergedPurple {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

@keyframes statusRunningYellow {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

/* Runs sidebar: branch bubble */
.runs-sidebar__item-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.runs-sidebar__item-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.1rem 0.55rem;
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 600;
    background: rgba(124,58,237,0.12);
    color: var(--accent-strong, #8b5cf6);
    border: 1px solid rgba(124,58,237,0.24);
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.01em;
}

.runs-sidebar__item-number.is-hidden {
    display: none;
}

.runs-sidebar__branch {
    display: inline-block;
    padding: 0.15rem 0.6rem;
    border-radius: 999px;
    font-size: 0.82rem;
    line-height: 1;
    background: rgba(124,58,237,0.16);
    color: var(--accent-strong, #8b5cf6);
    border: 1px solid rgba(124,58,237,0.28);
    margin-left: 0.5rem;
    font-weight: 600;
}

/* Cookie consent banner */
#cookieBanner {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--surface, rgba(15, 23, 42, 0.94));
  color: var(--text-color, #e2e8f0);
  padding: 0.6rem 1rem;
  border-top: 1px solid var(--surface-border, rgba(148, 163, 184, 0.45));
  display: none;
  z-index: 1100;
  text-align: center;
  box-shadow: 0 -12px 32px rgba(15, 23, 42, 0.55);
}

#cookieBanner button {
  margin-left: 1rem;
  background: var(--accent, #7c3aed);
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 0.35rem 0.85rem;
  cursor: pointer;
  font-weight: 600;
}

#cookieBanner button:hover {
  background: var(--accent-strong, #8b5cf6);
}


/* Selected run highlight: brighter, thicker purple border */
.runs-sidebar__item.is-active {
  border: 3px solid rgba(139, 92, 246, 0.95);
  box-shadow:
    0 8px 24px rgba(124, 58, 237, 0.28),
    0 0 0 1px rgba(139, 92, 246, 0.35),
    inset 0 0 0 1px rgba(255, 255, 255, 0.06);
  background: radial-gradient(circle at top left, rgba(139, 92, 246, 0.24), rgba(30, 27, 75, 0.45));
  transform: translateY(-1px);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.runs-sidebar__item.is-active .runs-sidebar__item-header {
  /* make header text a touch stronger */
  color: #f5f3ff;
  font-weight: 700;
}

.runs-sidebar__item.is-active .runs-sidebar__item-meta,
.runs-sidebar__item.is-active .runs-sidebar__item-title {
  color: #ede9fe;
}
