.tasks-page { max-width: 920px; margin: 0 auto; padding: 4px 2px 40px; }

.tasks-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.tasks-head h1 { font-size: clamp(26px, 4vw, 34px); font-weight: 900; letter-spacing: -.03em; color: var(--text); margin: 0; }
.tasks-earned {
  display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: 999px;
  background: rgba(var(--green-rgb),0.10); border: 1px solid rgba(var(--green-rgb),0.30);
  color: var(--green); font-weight: 800; font-size: 13px;
}
.tasks-earned .usdt-icon { width: 16px; height: 16px; }
.tasks-earned i { font-size: 13px; }

.tasks-tabs { display: inline-flex; gap: 6px; padding: 5px; border-radius: 14px; background: var(--bg-2); border: 1px solid var(--line); margin-bottom: 22px; }
.tasks-tab { display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; border-radius: 10px; font-weight: 700; font-size: 13.5px; color: var(--text-dim); background: transparent; transition: background-color .15s, color .15s; }
.tasks-tab.active { background: var(--bg-3); color: var(--text); box-shadow: 0 2px 10px rgba(0,0,0,.35); }
.tt-count { min-width: 22px; padding: 1px 7px; border-radius: 999px; font-size: 11px; font-weight: 800; background: var(--green); color: var(--bg); }
.tasks-tab:not(.active) .tt-count { background: var(--line-strong); color: var(--text-dim); }

.tasks-hero {
  position: relative; overflow: hidden; border-radius: 22px; padding: 26px;
  background:
    radial-gradient(700px 280px at 90% -30%, rgba(var(--cyan-rgb),0.20), transparent 60%),
    linear-gradient(135deg, var(--bg-3), var(--bg-1) 72%);
  border: 1px solid var(--line-strong); margin-bottom: 22px;
}
.tasks-hero .badges { display: flex; gap: 8px; margin-bottom: 14px; }
.tasks-hero .hb { font-size: 11px; font-weight: 800; padding: 4px 10px; border-radius: 8px; }
.hb.hot { background: rgba(var(--gold-rgb),0.16); color: var(--gold); }
.hb.ends { background: rgba(var(--green-rgb),0.14); color: var(--green); }
.tasks-hero h2 { font-size: clamp(22px, 3.6vw, 32px); font-weight: 900; color: var(--text); line-height: 1.05; margin: 0 0 18px; letter-spacing: -.02em; max-width: 62%; }
.tasks-hero h2 b { color: var(--green); }
.hero-panel { display: flex; align-items: center; gap: 16px; background: rgba(2,6,23,0.45); border: 1px solid var(--line); border-radius: 16px; padding: 14px 16px; max-width: 560px; }
.hero-coin { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: rgba(var(--green-rgb),0.10); border: 1px solid rgba(var(--green-rgb),0.30); box-shadow: 0 6px 16px rgba(0,168,122,.25); }
.hero-coin .usdt-icon { width: 30px; height: 30px; }
.hero-reward { line-height: 1.1; }
.hero-reward .k { font-size: 11px; color: var(--text-dim); font-weight: 700; }
.hero-reward .v { font-size: 18px; color: var(--text); font-weight: 900; }
.hero-progress-wrap { flex: 1; min-width: 120px; }
.hero-progress-top { display: flex; justify-content: space-between; font-size: 12px; color: var(--text-dim); font-weight: 700; margin-bottom: 6px; }
.hero-bar { height: 8px; border-radius: 999px; background: var(--line-strong); overflow: hidden; }
.hero-bar > i { display: block; height: 100%; border-radius: 999px; background: linear-gradient(90deg, var(--cyan), var(--green)); transition: width .5s ease; }
.tasks-hero .hero-glyph { position: absolute; right: -10px; bottom: -30px; font-size: 200px; color: rgba(255,255,255,0.04); pointer-events: none; }

.tasks-list { display: flex; flex-direction: column; gap: 14px; }
.task-card {
  position: relative; overflow: hidden; border-radius: 18px; padding: 20px 22px;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  background: var(--bg-1); border: 1px solid var(--line);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
  animation: taskIn .3s ease both;
}
@keyframes taskIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.task-card:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(0,0,0,0.45); border-color: var(--line-strong); }
.task-card .tc-left { position: relative; z-index: 2; flex: 1; min-width: 0; }
.task-card h3 { font-size: 18px; font-weight: 800; color: var(--text); margin: 0 0 12px; letter-spacing: -.01em; }
.task-card h3 .tc-desc { display: block; font-size: 12px; font-weight: 500; color: var(--text-dim); margin-top: 3px; }

.tc-right { display: flex; align-items: center; gap: 14px; position: relative; z-index: 2; flex: none; }

.tc-reward-row { display: inline-flex; align-items: center; gap: 14px; background: rgba(2,6,23,0.45); border: 1px solid var(--line); border-radius: 13px; padding: 8px 8px 8px 12px; }
.tc-coin { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: rgba(var(--green-rgb),0.10); border: 1px solid rgba(var(--green-rgb),0.30); flex: none; }
.tc-coin .usdt-icon { width: 24px; height: 24px; }
.tc-reward-meta { line-height: 1.05; padding-right: 4px; }
.tc-reward-meta .k { font-size: 10px; color: var(--text-dim); font-weight: 700; letter-spacing: .04em; }
.tc-reward-meta .v { font-size: 15px; color: var(--text); font-weight: 900; white-space: nowrap; }

.tc-streak { margin-top: 12px; }
.tc-streak-top { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 800; color: var(--gold); margin-bottom: 7px; }
.tc-streak-top i { font-size: 12px; }
.tc-streak-dots { display: flex; gap: 6px; }
.tcs-dot { width: 22px; height: 6px; border-radius: 999px; background: var(--line-strong); transition: background-color .2s, box-shadow .2s; }
.tcs-dot.on { background: linear-gradient(90deg, var(--gold-dim), var(--gold)); box-shadow: 0 0 8px rgba(var(--gold-rgb),.45); }
.tcs-dot.next { background: rgba(var(--gold-rgb),0.25); box-shadow: inset 0 0 0 1px rgba(var(--gold-rgb),.55); animation: tcsPulse 1.4s ease-in-out infinite; }
@keyframes tcsPulse { 0%,100% { opacity: .55; } 50% { opacity: 1; } }
.tc-btn {
  border: none; cursor: pointer; padding: 10px 20px; border-radius: 11px; font-weight: 800; font-size: 13.5px;
  background: var(--bg-3); color: var(--text); border: 1px solid var(--line-strong);
  transition: filter .15s, transform .1s, background-color .15s; white-space: nowrap;
}
.tc-btn:hover { filter: brightness(1.12); }
.tc-btn:active { transform: translateY(1px); }
.tc-btn.claim { background: linear-gradient(135deg, var(--green), var(--green-deep)); color: var(--bg); border-color: transparent; box-shadow: 0 6px 18px rgba(var(--green-rgb),.30); }
.tc-btn.done { background: rgba(var(--green-rgb),0.10); color: var(--green); border-color: rgba(var(--green-rgb),0.25); cursor: default; }
.tc-btn.done:hover { filter: none; }
.tc-btn:disabled { opacity: .6; cursor: progress; }

.task-glyph { flex: none; width: 56px; height: 56px; display: grid; place-items: center; opacity: .9; }
.task-glyph svg { width: 38px; height: 38px; }
.task-glyph i { font-size: 32px; }
.task-glyph.float { filter: drop-shadow(0 8px 14px rgba(0,0,0,.45)); animation: taskFloat 3.5s ease-in-out infinite; }
@keyframes taskFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }

.tk-x .task-glyph        { color: var(--text); }
.tk-telegram .task-glyph { color: #2aabee; }
.tk-discord .task-glyph  { color: #5865F2; }
.tk-emerald .task-glyph  { color: var(--green); }
.tk-violet .task-glyph   { color: #7c5cff; }
.tk-amber .task-glyph    { color: var(--gold); }
.tk-green .task-glyph    { color: var(--green); }
.tk-cyan .task-glyph     { color: var(--cyan); }

.tasks-empty { text-align: center; color: var(--text-dim); padding: 50px 20px; font-size: 14px; }
.tasks-empty i { display: block; font-size: 38px; margin-bottom: 12px; color: var(--text-muted); }

@media (max-width: 620px) {
  .tasks-hero h2 { max-width: 100%; }
  .tasks-hero .hero-glyph { display: none; }
  .hero-panel { flex-wrap: wrap; }
  .task-card { padding: 16px 16px; flex-wrap: wrap; }
  .task-glyph { display: none; }
  .task-card h3 { font-size: 16px; }
  .tc-btn { padding: 9px 16px; }
}