/* ========================================
   AFFIRMATIONS DRAWER - Hype Playlist Edition
   Matching History/Wins visual style
   ======================================== */

/* ===== DRAWER TITLE - Make it POP ===== */
.affirmations-drawer .drawer__title {
  font-size: 28px;
  font-weight: 800;
  letter-spacing: -0.5px;
  
  /* Gradient text effect */
  background: linear-gradient(
    135deg,
    var(--p-blazing-yellow) 0%,
    #fff 25%,
    var(--p-capri, #61d9fb) 50%,
    #fff 75%,
    var(--p-blazing-yellow) 100%
  );
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  
  /* Shimmer animation */
  animation: title-shimmer 4s ease-in-out infinite;
}

@keyframes title-shimmer {
  0%, 100% { background-position: 0% center; }
  50% { background-position: 200% center; }
}

/* ===== STAMPS - Outlined pill style ===== */
.affirm-stamps {
  display: flex;
  gap: 10px;
  margin-bottom: 12px;
}

.affirm-stamps .stamp {
  padding: 6px 12px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  background: transparent;
  border: 2px solid currentColor;
  transform: rotate(var(--r, 0deg));
}

.affirm-stamps .stamp--hype {
  --r: -2deg;
  color: #ff6b6b;
  border-color: #ff6b6b;
  box-shadow: 0 0 12px rgba(255, 107, 107, 0.3);
}

.affirm-stamps .stamp--vibes {
  --r: 2deg;
  color: #6bcf8e;
  border-color: #6bcf8e;
  box-shadow: 0 0 12px rgba(107, 207, 142, 0.3);
}

/* ===== INTRO TEXT ===== */
.affirm-intro {
  margin: 0 0 16px;
  font-size: 13px;
  font-weight: 500;
  color: var(--ink-mute);
  line-height: 1.5;
}

/* ===== ADD FORM ===== */
.affirm-add-form {
  display: flex;
  gap: 8px;
  margin-bottom: 20px;
}

.affirm-input {
  flex: 1;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.05);
  color: var(--ink);
  font-size: 14px;
  font-weight: 500;
  transition: all 0.2s ease;
}

.affirm-input:focus {
  outline: none;
  border-color: var(--p-blazing-yellow);
  background: rgba(255, 255, 255, 0.08);
  box-shadow: 0 0 0 4px rgba(210, 173, 59, 0.15);
}

.affirm-input::placeholder {
  color: var(--ink-mute);
  opacity: 0.5;
}

.affirm-add-btn {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  border: none;
  background: linear-gradient(135deg, var(--p-blazing-yellow) 0%, #d4a f 100%);
  color: var(--p-charcoal, #1a1a1a);
  font-size: 24px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.15s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}

.affirm-add-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 4px 16px rgba(210, 173, 59, 0.4);
}

.affirm-add-btn:active {
  transform: scale(0.95);
}

/* ===== LIST ITEMS ===== */
.affirm-list {
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 45vh;
  overflow-y: auto;
}

.affirm-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 12px;
  font-size: 14px;
  font-weight: 500;
  color: var(--ink);
  transition: all 0.15s ease;
}

.affirm-list li:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.1);
}

/* Delete button */
.affirm-list li button {
  flex-shrink: 0;
  padding: 6px 10px;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.05);
  color: var(--ink-mute);
  font-size: 14px;
  cursor: pointer;
  transition: all 0.15s ease;
}

.affirm-list li button:hover {
  border-color: rgba(179, 57, 57, 0.4);
  background: rgba(179, 57, 57, 0.1);
  color: rgba(179, 57, 57, 0.9);
}

/* ===== FOOTER ===== */
.affirm-footer {
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.affirm-reset-btn {
  width: 100%;
  padding: 14px 20px;
  border-radius: 12px;
  border: 1px solid rgba(179, 57, 57, 0.25);
  background: rgba(179, 57, 57, 0.08);
  color: rgba(179, 57, 57, 0.8);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.15s ease;
}

.affirm-reset-btn:hover {
  background: rgba(179, 57, 57, 0.15);
  border-color: rgba(179, 57, 57, 0.4);
  color: rgba(179, 57, 57, 1);
}