/* ============================================================
   ABRAJ RUNNERS - theme-sunrise.css
   Sunrise / Warm Motivational Theme  →  body.theme-sunrise
   Colors: Warm orange, soft yellow, deep morning purple
   Fonts: Poppins (headings), Nunito (body)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&family=Nunito:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&display=swap');

/* ── Root palette ─────────────────────────────────────────── */
body.theme-sunrise {
  --sr-bg:          #1a0f2e;
  --sr-bg-2:        #1e1238;
  --sr-surface:     #221540;
  --sr-card:        #2a1f3d;
  --sr-card-2:      #251b38;
  --sr-orange:      #FF6B35;
  --sr-orange-mid:  #e05525;
  --sr-orange-dim:  rgba(255,107,53,.3);
  --sr-orange-glow: rgba(255,107,53,.15);
  --sr-yellow:      #FFC857;
  --sr-yellow-dim:  rgba(255,200,87,.25);
  --sr-purple:      #2D1B69;
  --sr-purple-mid:  #3d2880;
  --sr-purple-light:#6b50c8;
  --sr-purple-cool: #4a3870;
  --sr-white:       #f8f4ee;
  --sr-text:        #e0d4f0;
  --sr-text-dim:    #7a6a90;
  --sr-border:      rgba(255,107,53,.25);

  font-family: 'Nunito', sans-serif;
  background: linear-gradient(160deg, #1a0f2e 0%, #1e1238 40%, #261430 70%, #1a0f2e 100%);
  background-attachment: fixed;
  color: var(--sr-text);
  min-height: 100vh;
}

/* ── Sunrise glow atmosphere ──────────────────────────────── */
body.theme-sunrise::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background-image:
    radial-gradient(ellipse 90% 45% at 50% 100%, rgba(255,107,53,.12) 0%, transparent 55%),
    radial-gradient(ellipse 60% 35% at 50% 105%, rgba(255,200,87,.07) 0%, transparent 50%),
    radial-gradient(ellipse 70% 50% at 50% -10%, rgba(45,27,105,.5) 0%, transparent 60%),
    radial-gradient(ellipse 40% 30% at 90% 20%, rgba(255,107,53,.05) 0%, transparent 45%);
}

body.theme-sunrise > * { position: relative; z-index: 1; }

/* ── Headings ─────────────────────────────────────────────── */
body.theme-sunrise h1,
body.theme-sunrise h2,
body.theme-sunrise h3,
body.theme-sunrise h4 {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  color: var(--sr-yellow);
  letter-spacing: .02em;
}

/* ── Site Header ──────────────────────────────────────────── */
body.theme-sunrise .site-header {
  background: linear-gradient(135deg, rgba(26,15,46,.95) 0%, rgba(42,30,60,.9) 100%);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(255,107,53,.25);
  box-shadow:
    0 4px 30px rgba(0,0,0,.5),
    0 0 40px rgba(255,107,53,.05);
}

body.theme-sunrise .site-header__title,
body.theme-sunrise .site-header .logo {
  font-family: 'Poppins', sans-serif;
  font-size: 1.7rem;
  font-weight: 800;
  background: linear-gradient(135deg, var(--sr-orange), var(--sr-yellow));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  filter: drop-shadow(0 0 8px rgba(255,107,53,.4));
  letter-spacing: .04em;
}

body.theme-sunrise .site-header .tagline {
  color: rgba(224,212,240,.5);
  font-size: .82rem;
  font-family: 'Nunito', sans-serif;
}

/* ── Nav ──────────────────────────────────────────────────── */
body.theme-sunrise .site-header__nav a,
body.theme-sunrise .nav a,
body.theme-sunrise .nav-link {
  color: rgba(224,212,240,.7);
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  font-size: .88rem;
  padding: 8px 16px;
  border-radius: 20px;
  border: 1px solid transparent;
  transition: all .22s ease;
}

body.theme-sunrise .site-header__nav a:hover,
body.theme-sunrise .nav a:hover,
body.theme-sunrise .nav-link:hover {
  color: var(--sr-yellow);
  border-color: var(--sr-orange-dim);
  background: rgba(255,107,53,.08);
}

body.theme-sunrise .site-header__nav a.active,
body.theme-sunrise .nav a.active,
body.theme-sunrise .nav-link.active {
  color: var(--sr-white);
  background: linear-gradient(135deg, rgba(255,107,53,.25), rgba(255,200,87,.15));
  border-color: rgba(255,107,53,.45);
  font-weight: 600;
}

/* ── Stat Cards ───────────────────────────────────────────── */
body.theme-sunrise .stat-card {
  background: var(--sr-card);
  border: 1px solid var(--sr-border);
  border-radius: 16px;
  box-shadow:
    0 4px 20px rgba(0,0,0,.4),
    inset 0 1px 0 rgba(255,107,53,.08);
  position: relative;
  overflow: hidden;
}

body.theme-sunrise .stat-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--sr-orange), var(--sr-yellow), var(--sr-orange), transparent);
}

body.theme-sunrise .stat-value {
  font-family: 'Poppins', sans-serif;
  font-size: 2.4rem;
  font-weight: 800;
  background: linear-gradient(135deg, var(--sr-orange), var(--sr-yellow));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  filter: drop-shadow(0 0 8px rgba(255,107,53,.3));
  font-variant-numeric: tabular-nums;
}

body.theme-sunrise .stat-label {
  font-family: 'Nunito', sans-serif;
  font-size: .75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--sr-text-dim);
}

/* ── Runner Cards ─────────────────────────────────────────── */
body.theme-sunrise .runner-card {
  background: var(--sr-card);
  border: 1px solid rgba(255,107,53,.18);
  border-radius: 18px;
  box-shadow: 0 4px 20px rgba(0,0,0,.4);
  position: relative;
  overflow: hidden;
  transition: all .28s ease;
}

body.theme-sunrise .runner-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--sr-purple-light), var(--sr-orange), var(--sr-yellow), var(--sr-orange), var(--sr-purple-light));
  opacity: .5;
  transition: opacity .28s ease;
}

body.theme-sunrise .runner-card:hover {
  transform: translateY(-6px);
  border-color: rgba(255,107,53,.45);
  box-shadow:
    0 0 20px rgba(255,107,53,.18),
    0 0 40px rgba(255,200,87,.08),
    0 12px 32px rgba(0,0,0,.5);
}

body.theme-sunrise .runner-card:hover::before { opacity: 1; }

/* Avatar */
body.theme-sunrise .runner-card .avatar,
body.theme-sunrise .avatar {
  border: 3px solid var(--sr-orange);
  box-shadow:
    0 0 10px rgba(255,107,53,.4),
    0 0 24px rgba(255,107,53,.15);
  transition: box-shadow .28s ease;
}

body.theme-sunrise .runner-card:hover .avatar {
  box-shadow:
    0 0 16px rgba(255,107,53,.7),
    0 0 36px rgba(255,200,87,.3);
}

/* Name */
body.theme-sunrise .runner-card .name {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 1rem;
  color: var(--sr-white);
  letter-spacing: .02em;
}

/* KM total */
body.theme-sunrise .runner-card .km-total {
  color: var(--sr-yellow);
  font-weight: 600;
  font-size: .88rem;
}

/* ── Streak ───────────────────────────────────────────────── */
body.theme-sunrise .streak {
  background: linear-gradient(135deg, rgba(255,107,53,.15), rgba(255,200,87,.1));
  border: 1px solid rgba(255,107,53,.35);
  border-radius: 20px;
  padding: 4px 14px;
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  color: var(--sr-yellow);
  font-size: .88rem;
}

body.theme-sunrise .streak-fire {
  filter: drop-shadow(0 0 5px rgba(255,107,53,.9));
  animation: sunriseFirePulse .8s ease-in-out infinite alternate;
}

@keyframes sunriseFirePulse {
  from { filter: drop-shadow(0 0 4px rgba(255,107,53,.7)); }
  to   { filter: drop-shadow(0 0 12px rgba(255,200,87,1.0)); }
}

/* ── Medal Badges ─────────────────────────────────────────── */
body.theme-sunrise .medal-bronze {
  background: linear-gradient(135deg, #c08040, #8b5e30);
  color: #fff;
  box-shadow: 0 0 8px rgba(192,128,64,.4);
}

body.theme-sunrise .medal-silver {
  background: linear-gradient(135deg, #b0b8c8, #8090a8);
  color: #1a0f2e;
  box-shadow: 0 0 8px rgba(176,184,200,.4);
}

body.theme-sunrise .medal-gold {
  background: linear-gradient(135deg, var(--sr-orange), var(--sr-yellow), var(--sr-orange-mid));
  color: #1a0f2e;
  box-shadow: 0 0 14px rgba(255,107,53,.65), 0 0 28px rgba(255,200,87,.3);
  animation: sunriseGoldGlow 2s ease-in-out infinite;
}

@keyframes sunriseGoldGlow {
  0%, 100% { box-shadow: 0 0 14px rgba(255,107,53,.65), 0 0 28px rgba(255,200,87,.3); }
  50%       { box-shadow: 0 0 24px rgba(255,107,53,1.0), 0 0 48px rgba(255,200,87,.5); }
}

body.theme-sunrise .medal-platinum {
  background: linear-gradient(135deg, #c0b8d8, #9088b8);
  color: #1a0f2e;
  box-shadow: 0 0 12px rgba(192,184,216,.4);
}

body.theme-sunrise .medal-diamond {
  background: linear-gradient(135deg, #e8d0ff, #a060ff, #6b30d0);
  color: #fff;
  box-shadow: 0 0 16px rgba(160,96,255,.7), 0 0 32px rgba(107,48,208,.3);
  animation: sunriseDiamondGlow 1.8s ease-in-out infinite;
}

@keyframes sunriseDiamondGlow {
  0%, 100% { box-shadow: 0 0 16px rgba(160,96,255,.7), 0 0 32px rgba(107,48,208,.3); }
  50%       { box-shadow: 0 0 28px rgba(160,96,255,1.0), 0 0 56px rgba(107,48,208,.5); }
}

/* ── Bench Zone — cooler purple tones (sun hasn't reached) ── */
body.theme-sunrise .bench-zone {
  background: linear-gradient(135deg, rgba(26,15,46,.95), rgba(40,25,70,.9));
  border: 1px dashed rgba(107,80,200,.35);
  border-radius: 18px;
  box-shadow:
    0 4px 20px rgba(0,0,0,.4),
    inset 0 0 40px rgba(45,27,105,.2);
}

body.theme-sunrise .bench-zone h2,
body.theme-sunrise .bench-zone h3 {
  color: var(--sr-purple-light);
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
}

body.theme-sunrise .bench-days {
  color: var(--sr-purple-light);
  font-family: 'Nunito', sans-serif;
  font-weight: 700;
}

body.theme-sunrise .runner-card--benched,
body.theme-sunrise .bench-zone .runner-card {
  opacity: .55;
  background: rgba(26,15,46,.9);
  border-color: rgba(107,80,200,.25);
  filter: saturate(.4) brightness(.8);
  transform: scale(0.93);
}

body.theme-sunrise .runner-card--benched:hover,
body.theme-sunrise .bench-zone .runner-card:hover {
  opacity: .8;
  transform: scale(0.96);
  filter: saturate(.65) brightness(.9);
}

/* Bench speech bubble */
body.theme-sunrise .bench-bubble {
  background: rgba(26,15,46,.95);
  border: 1px solid rgba(107,80,200,.4);
  color: var(--sr-purple-light);
  border-radius: 12px;
  font-size: .78rem;
  font-family: 'Nunito', sans-serif;
  padding: 6px 12px;
  font-style: italic;
}

body.theme-sunrise .bench-bubble::after {
  border-top-color: rgba(107,80,200,.4);
}

/* ── Leaderboard ──────────────────────────────────────────── */
body.theme-sunrise .leaderboard {
  background: var(--sr-card);
  border: 1px solid var(--sr-border);
  border-radius: 18px;
  box-shadow: 0 4px 20px rgba(0,0,0,.4);
  overflow: hidden;
}

body.theme-sunrise .leaderboard__tab,
body.theme-sunrise .leaderboard-tab {
  color: var(--sr-text-dim);
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  font-size: .85rem;
  padding: 8px 18px;
  border-radius: 20px;
  border: none;
  background: transparent;
  transition: all .2s ease;
  cursor: pointer;
}

body.theme-sunrise .leaderboard__tab--active,
body.theme-sunrise .leaderboard-tab.active {
  background: linear-gradient(135deg, rgba(255,107,53,.2), rgba(255,200,87,.12));
  color: var(--sr-yellow);
  border: 1px solid rgba(255,107,53,.35);
  font-weight: 700;
}

body.theme-sunrise .leaderboard__table th,
body.theme-sunrise .leaderboard thead th {
  background: rgba(255,107,53,.06);
  color: var(--sr-orange);
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .1em;
  border-bottom: 1px solid var(--sr-border);
  padding: 12px 16px;
}

body.theme-sunrise .leaderboard__table td,
body.theme-sunrise .leaderboard tbody td {
  color: var(--sr-text);
  border-bottom: 1px solid rgba(255,255,255,.04);
  padding: 12px 16px;
  font-family: 'Nunito', sans-serif;
}

body.theme-sunrise .leaderboard tbody tr:hover td {
  background: rgba(255,107,53,.05);
}

body.theme-sunrise .leaderboard tbody tr:nth-child(1) td {
  color: var(--sr-yellow);
  background: rgba(255,200,87,.05);
}

body.theme-sunrise .leaderboard tbody tr:nth-child(2) td {
  background: rgba(176,184,200,.04);
}

body.theme-sunrise .leaderboard tbody tr:nth-child(3) td {
  color: #c08040;
  background: rgba(192,128,64,.04);
}

/* ── Today Status Banner ──────────────────────────────────── */
body.theme-sunrise .today-status__banner--active {
  background: linear-gradient(135deg, rgba(255,107,53,.15), rgba(42,30,60,.8));
  border: 1px solid rgba(255,107,53,.35);
  border-radius: 16px;
  color: var(--sr-yellow);
  box-shadow: 0 0 24px rgba(255,107,53,.12);
}

body.theme-sunrise .today-status__banner--idle {
  background: rgba(26,15,46,.8);
  border: 1px solid rgba(107,80,200,.25);
  border-radius: 16px;
  color: var(--sr-text-dim);
}

/* ── Coming Soon Cards ────────────────────────────────────── */
body.theme-sunrise .coming-soon__card,
body.theme-sunrise .coming-soon .feature-card {
  background: var(--sr-card);
  border: 1px solid rgba(255,107,53,.15);
  border-radius: 14px;
  position: relative;
  overflow: hidden;
}

body.theme-sunrise .coming-soon__card::before,
body.theme-sunrise .coming-soon .feature-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,107,53,.04), transparent);
}

body.theme-sunrise .coming-soon__card::after,
body.theme-sunrise .coming-soon .feature-card::after {
  background: rgba(255,107,53,.18);
  color: var(--sr-yellow);
}

/* ── Music Section ────────────────────────────────────────── */
body.theme-sunrise .music-section {
  background: var(--sr-card);
  border: 1px solid var(--sr-border);
  border-radius: 18px;
}

body.theme-sunrise .music-player {
  background: linear-gradient(135deg, rgba(26,15,46,.8), rgba(42,26,60,.7));
  border-radius: 14px;
  border: 1px solid rgba(255,107,53,.12);
}

body.theme-sunrise .music-player .track-name {
  color: var(--sr-yellow);
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
}

body.theme-sunrise .music-player .controls button {
  background: linear-gradient(135deg, var(--sr-orange-mid), var(--sr-orange));
  border: none;
  color: #fff;
  border-radius: 50%;
  transition: all .22s ease;
  box-shadow: 0 2px 10px rgba(255,107,53,.3);
}

body.theme-sunrise .music-player .controls button:hover {
  background: linear-gradient(135deg, var(--sr-orange), var(--sr-yellow));
  box-shadow: 0 4px 18px rgba(255,107,53,.5), 0 0 32px rgba(255,200,87,.2);
  transform: scale(1.08);
}

/* ── Buttons ──────────────────────────────────────────────── */
body.theme-sunrise .btn {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  border-radius: 20px;
  font-size: .9rem;
  letter-spacing: .03em;
  transition: all .22s ease;
}

body.theme-sunrise .btn-primary {
  background: linear-gradient(135deg, var(--sr-orange-mid), var(--sr-orange), var(--sr-yellow));
  color: #fff;
  border: none;
  box-shadow: 0 4px 16px rgba(255,107,53,.35);
}

body.theme-sunrise .btn-primary:hover {
  background: linear-gradient(135deg, var(--sr-orange), var(--sr-yellow));
  box-shadow: 0 6px 24px rgba(255,107,53,.55), 0 0 40px rgba(255,200,87,.2);
  transform: translateY(-2px);
}

body.theme-sunrise .btn-success {
  background: linear-gradient(135deg, #2d7a40, #3d9a50);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(45,120,60,.3);
}

body.theme-sunrise .btn-success:hover {
  background: linear-gradient(135deg, #3d9a50, #4dba60);
  box-shadow: 0 6px 20px rgba(45,120,60,.45);
  transform: translateY(-2px);
}

body.theme-sunrise .btn-danger {
  background: rgba(107,48,208,.2);
  color: #c090f0;
  border: 1px solid rgba(107,48,208,.4);
}

body.theme-sunrise .btn-danger:hover {
  background: rgba(107,48,208,.35);
  box-shadow: 0 4px 16px rgba(107,48,208,.3);
  transform: translateY(-1px);
}

/* ── Theme Switcher ───────────────────────────────────────── */
body.theme-sunrise .theme-switcher button,
body.theme-sunrise .theme-switcher__panel button {
  background: var(--sr-card);
  border: 1px solid rgba(255,107,53,.2);
  color: var(--sr-text-dim);
  border-radius: 20px;
  font-family: 'Nunito', sans-serif;
  font-weight: 600;
  transition: all .2s ease;
}

body.theme-sunrise .theme-switcher button:hover,
body.theme-sunrise .theme-switcher__panel button:hover {
  border-color: rgba(255,107,53,.5);
  color: var(--sr-yellow);
  background: rgba(255,107,53,.08);
}

body.theme-sunrise .theme-switcher button.active,
body.theme-sunrise .theme-switcher button[data-theme="sunrise"] {
  background: linear-gradient(135deg, rgba(255,107,53,.18), rgba(255,200,87,.1));
  border-color: var(--sr-orange);
  color: var(--sr-yellow);
  box-shadow: 0 0 16px rgba(255,107,53,.22);
}

/* ── Footer ───────────────────────────────────────────────── */
body.theme-sunrise .site-footer,
body.theme-sunrise .footer {
  color: var(--sr-text-dim);
  border-top: 1px solid rgba(255,107,53,.1);
  font-family: 'Nunito', sans-serif;
  font-size: .8rem;
}

/* ── Admin Cards ──────────────────────────────────────────── */
body.theme-sunrise .admin-card {
  background: var(--sr-card);
  border: 1px solid var(--sr-border);
  border-radius: 16px;
  position: relative;
  overflow: hidden;
}

body.theme-sunrise .admin-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--sr-purple-light), var(--sr-orange), var(--sr-yellow), var(--sr-orange), var(--sr-purple-light));
}

body.theme-sunrise .admin-card h3 {
  color: var(--sr-orange);
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
}

/* ── Forms ────────────────────────────────────────────────── */
body.theme-sunrise .form-group label {
  color: var(--sr-text-dim);
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}

body.theme-sunrise .form-group input,
body.theme-sunrise .form-group select,
body.theme-sunrise .form-group textarea {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,107,53,.2);
  border-radius: 12px;
  color: var(--sr-text);
  font-family: 'Nunito', sans-serif;
}

body.theme-sunrise .form-group input:focus,
body.theme-sunrise .form-group select:focus,
body.theme-sunrise .form-group textarea:focus {
  border-color: var(--sr-orange);
  background: rgba(255,107,53,.05);
  box-shadow: 0 0 0 3px rgba(255,107,53,.12);
  outline: none;
}

body.theme-sunrise .form-group input::placeholder,
body.theme-sunrise .form-group textarea::placeholder {
  color: rgba(122,106,144,.45);
}

/* ── Data Table ───────────────────────────────────────────── */
body.theme-sunrise .data-table {
  background: var(--sr-card);
  border: 1px solid var(--sr-border);
  border-radius: 14px;
  overflow: hidden;
}

body.theme-sunrise .data-table th {
  background: rgba(255,107,53,.06);
  color: var(--sr-orange);
  font-family: 'Poppins', sans-serif;
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  border-bottom: 1px solid var(--sr-border);
}

body.theme-sunrise .data-table td {
  color: var(--sr-text);
  border-bottom: 1px solid rgba(255,255,255,.04);
  font-family: 'Nunito', sans-serif;
}

body.theme-sunrise .data-table tr:hover td {
  background: rgba(255,107,53,.04);
}

/* ── Alerts ───────────────────────────────────────────────── */
body.theme-sunrise .alert-success {
  background: linear-gradient(135deg, rgba(45,120,60,.15), rgba(60,160,80,.1));
  color: #90e8a8;
  border: 1px solid rgba(45,160,80,.3);
  border-radius: 12px;
  box-shadow: 0 0 16px rgba(45,160,80,.1);
}

body.theme-sunrise .alert-error {
  background: linear-gradient(135deg, rgba(255,107,53,.12), rgba(180,40,40,.1));
  color: #ffb080;
  border: 1px solid rgba(255,107,53,.3);
  border-radius: 12px;
  box-shadow: 0 0 16px rgba(255,107,53,.1);
}

/* ── Running Track ────────────────────────────────────────── */
body.theme-sunrise .running-track {
  background: linear-gradient(90deg,
    var(--sr-bg) 0%,
    rgba(42,26,60,.9) 20%,
    rgba(80,40,80,.5) 50%,
    rgba(42,26,60,.9) 80%,
    var(--sr-bg) 100%);
  border-top: 2px solid var(--sr-orange-dim);
  border-bottom: 2px solid rgba(255,200,87,.2);
  box-shadow:
    0 0 20px rgba(255,107,53,.07),
    inset 0 0 40px rgba(45,27,105,.3);
}

/* ── Stats Bar ────────────────────────────────────────────── */
body.theme-sunrise .stats-bar {
  background: var(--sr-card);
  border: 1px solid var(--sr-border);
  border-radius: 18px;
  box-shadow:
    0 4px 20px rgba(0,0,0,.4),
    inset 0 1px 0 rgba(255,107,53,.07);
  position: relative;
  overflow: hidden;
}

body.theme-sunrise .stats-bar::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--sr-purple-light), var(--sr-orange), var(--sr-yellow), var(--sr-orange), var(--sr-purple-light), transparent);
}

/* ── Modal ────────────────────────────────────────────────── */
body.theme-sunrise .modal-content {
  background: var(--sr-card);
  border: 1px solid var(--sr-border);
  border-radius: 18px;
  box-shadow:
    0 0 40px rgba(255,107,53,.1),
    0 24px 60px rgba(0,0,0,.7);
}

body.theme-sunrise .modal-header h2 {
  color: var(--sr-yellow);
  font-family: 'Poppins', sans-serif;
  font-weight: 800;
}

body.theme-sunrise .modal-close {
  background: rgba(255,255,255,.05);
  color: var(--sr-text-dim);
  border-radius: 50%;
}

body.theme-sunrise .modal-close:hover {
  background: rgba(107,48,208,.2);
  color: #c090f0;
}
