﻿.achv-summary{ margin:0 0 30px; font-size:0.92rem; color:var(--paper-dim); }

/* Recurring streaks -- visually distinct from the one-time-unlock .achv-card
   grid below: these reset if a day is skipped, unlike anything else here. */
#achvStreaks{ display:grid; grid-template-columns:repeat(auto-fit, minmax(280px, 1fr)); gap:14px; margin-bottom:34px; }
.achv-streak-card{
  display:flex; flex-direction:column; gap:8px;
  padding:18px 20px; border-radius:var(--radius-m);
  border:1px solid var(--gold-dim); background:rgba(205,166,95,0.05);
}
.achv-streak-card__header{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.achv-streak-card__title{
  margin:0; font-family:var(--font-display); font-weight:500;
  font-size:1.02rem; color:var(--paper);
}
.achv-streak-card__badge{
  flex:none; font-size:0.72rem; font-weight:600; color:var(--gold);
  border:1px solid var(--gold-dim); border-radius:999px; padding:3px 10px; white-space:nowrap;
}
.achv-streak-card__stats{ margin:0; font-size:0.78rem; color:var(--paper-dim); }
.achv-streak-card__stats strong{ color:var(--gold); font-weight:600; }

.achv-group{ margin-bottom:34px; }
.achv-group__title{
  margin:0 0 14px; font-family:var(--font-display); font-weight:500;
  font-size:1.1rem; color:var(--paper);
}

.achv-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); gap:12px; }

.achv-card{
  display:flex; flex-direction:column; gap:8px;
  padding:16px 18px; border-radius:var(--radius-m);
  border:1px solid var(--line); background:rgba(236,231,220,0.02);
  transition:border-color .2s var(--ease), background .2s var(--ease);
}
.achv-card--unlocked{
  border-color:var(--gold-dim); background:rgba(205,166,95,0.06);
}

.achv-card__header{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.achv-card__title{
  margin:0; font-family:var(--font-display); font-weight:500;
  font-size:1.02rem; color:var(--paper);
}
.achv-card--unlocked .achv-card__title{ color:var(--gold); }
.achv-card__badge{
  flex:none; font-size:0.68rem; letter-spacing:0.04em; color:var(--gold);
  border:1px solid var(--gold-dim); border-radius:999px; padding:3px 9px;
  white-space:nowrap;
}

.achv-card__description{ margin:0; font-size:0.84rem; line-height:1.5; color:var(--paper-dim); }

.achv-card__progress-track{
  height:5px; border-radius:999px; background:rgba(236,231,220,0.08); overflow:hidden;
}
.achv-card__progress-fill{ height:100%; background:var(--accent); border-radius:999px; }
.achv-card--unlocked .achv-card__progress-fill{ background:var(--gold); }
.achv-card__progress-label{ margin:0; font-size:0.72rem; color:var(--paper-dim); }

.achv-card__footer{
  margin-top:auto; padding-top:6px; display:flex; align-items:center;
  justify-content:space-between; gap:10px; font-size:0.76rem;
}
.achv-card__reward{ color:var(--accent); }
.achv-card__date{ color:var(--paper-dim); }

