.challenge-invite{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:28px 0;padding:26px 30px;border:1px solid #d8dfc5;border-radius:23px;background:linear-gradient(120deg,#e9eedb,#f9f4e3)}.challenge-invite h2{font-size:29px;margin:8px 0}.challenge-invite p{font-size:13px;color:var(--muted)}.invite-actions{display:flex;flex-direction:column;gap:13px;align-items:center;flex-shrink:0}.invite-actions .text-link{font-size:12px}.firefly-garden{height:235px;position:relative;overflow:hidden;border-radius:24px;isolation:isolate;background:linear-gradient(180deg,#cdded1,#f4e7b7);--hill:#85a985;--far:#acc9a0;--glow:#fff9bb}.garden-pond{background:linear-gradient(180deg,#243e59,#7d9aa0);--hill:#395c68;--far:#668c8f;--glow:#fff9c7}.garden-festival{background:linear-gradient(180deg,#704c62,#e2a278);--hill:#804f67;--far:#ad7c78;--glow:#ffe19e}.garden-moon{position:absolute;right:15%;top:25px;width:45px;height:45px;border-radius:50%;background:#fff4c3;box-shadow:0 0 25px #fff1b847;opacity:.9}.garden-hill{position:absolute;width:120%;height:150px;left:-15%;bottom:-90px;transform:rotate(-7deg);border-radius:50%;background:var(--hill)}.hill-back{left:15%;bottom:-64px;transform:rotate(9deg);background:var(--far)}.firefly-garden>img{position:absolute;bottom:24px;left:calc(50% - 48px);height:115px;width:96px;object-fit:contain;filter:drop-shadow(0 6px 8px #213c2820)}.garden-fireflies i{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--glow);box-shadow:0 0 14px 5px #ffe58866;animation:firefly-float calc(4s + var(--i)*.35s) ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.4s)}.garden-fireflies i:before,.garden-fireflies i:after{content:'';position:absolute;top:-4px;width:8px;height:5px;border-radius:90%;background:#fff8;transform:rotate(-25deg);left:-5px}.garden-fireflies i:after{left:6px;transform:rotate(25deg)}.garden-caption{position:absolute;bottom:10px;width:100%;text-align:center;color:#fafff3;font-size:11px;text-shadow:0 1px 3px #233c3388}.challenge-setup{margin-top:20px;text-align:center}.challenge-setup h2{font-size:34px;margin:13px 0}.challenge-setup>p:not(.eyebrow){max-width:590px;margin:12px auto;color:var(--muted);font-size:14px}.pace-picker{border:0;padding:0;margin:25px 0;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.pace-picker legend{margin:0 auto 15px;font-weight:650;font-size:14px}.pace-picker button{flex:1;min-width:135px;min-height:83px;padding:15px;background:#fbfaf5;border:1px solid var(--line);border-radius:15px;font-weight:650}.pace-picker button small{display:block;margin-top:8px;font-size:11px;font-weight:400}.pace-picker button.selected{border:2px solid #4f7560;background:#eaf0df}.personal-best{background:#f4efde;border-radius:12px;padding:12px}.challenge-play{text-align:center}.challenge-dashboard{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:25px}.challenge-clock{position:relative;flex:0 0 105px;width:105px;height:105px;display:grid;place-items:center}.challenge-clock svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);fill:none;stroke-width:7}.clock-track{stroke:#e5e8d9}.clock-progress{stroke:#779b68;stroke-linecap:round;transition:stroke-dashoffset .12s linear}.challenge-clock strong{font-variant-numeric:tabular-nums;font-size:24px;color:#335542}.light-trail{display:flex;gap:8px;flex-wrap:wrap;max-width:230px}.light-trail span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid #dce2d0;background:#f5f5ed;color:#809378;font-size:22px}.light-trail .current{border:2px solid #849d6e}.light-trail .lit{background:#faf0bc;color:#a27827;border-color:#ddcc84;box-shadow:0 0 12px #ebd67e44;animation:light-arrive .45s ease-out}.light-trail .learning{background:#e9edf0;border-color:#c8d5d9;color:#547380}.clock-note{font-size:11px;max-width:100px;color:var(--muted)}.untimed-pill{padding:13px;background:#eff3e5;color:#42624b;border-radius:24px;font-size:13px;white-space:nowrap}.challenge-pause{padding:35px 15px}.challenge-pause img{height:105px;max-width:110px;margin:0 auto 22px;object-fit:contain}.challenge-pause p{margin:14px 0 22px;color:var(--muted);font-size:14px}.rewards-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:30px;align-items:start}.rewards-garden{padding:20px}.reward-level{text-align:center;padding:28px 10px}.reward-level h2{margin:12px 0;font-size:30px}.reward-level p:not(.eyebrow){font-size:13px;color:var(--muted)}.reward-level .progress-track{margin-top:17px}.rewards-garden>h3{font-size:21px;margin:3px 0 17px}.garden-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.garden-choice{background:#fffdf7;border:1px solid var(--line);border-radius:13px;padding:8px;text-align:left}.garden-choice.selected{border:2px solid #5a795b}.garden-choice strong{display:block;font-size:12px;margin-top:10px}.garden-choice small{display:block;font-size:10px;line-height:1.5;margin-top:7px}.garden-choice:disabled{opacity:.62}.garden-swatch{display:block;border-radius:8px;height:50px;background:linear-gradient(135deg,#c8dfbe,#f5de9a)}.garden-swatch.garden-pond{background:linear-gradient(135deg,#304761,#9bc5bd)}.garden-swatch.garden-festival{background:linear-gradient(135deg,#7c4f6a,#f5b56a)}.calm-switch{display:flex;align-items:center;gap:10px;min-height:48px;margin-top:17px;font-size:13px}.calm-switch input{width:21px;height:21px;accent-color:var(--green)}.badge-collection{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rewards-heading{margin-top:0;align-items:center}.rewards-heading h2{font-size:26px}.reward-badge{display:flex;flex-direction:column;gap:13px;padding:20px;border:1px dashed #d8dbd0;border-radius:18px;background:#f8f7f0}.reward-badge.earned{background:#fffcf0;border:1px solid #ded2a4}.badge-symbol{width:46px;height:46px;display:grid;place-items:center;background:#e7e9dc;color:#71836b;font-size:29px;border-radius:15px}.earned .badge-symbol{background:#f5e7af;color:#9a762c;box-shadow:0 2px 9px #b4a36014}.reward-badge h3{font-size:17px;letter-spacing:-.02em}.reward-badge p{font-size:12px;color:var(--muted);margin:8px 0}.reward-badge small{font-size:10px;color:#697c5c}.calm-garden .garden-fireflies i,.calm-garden .light-trail .lit{animation:none}.calm-garden .clock-progress{transition:none}
@keyframes firefly-float{from{transform:translate(0,0)}to{transform:translate(12px,-13px)}}
@keyframes light-arrive{from{transform:scale(.75)}to{transform:scale(1)}}
@media(max-width:1150px){.site-header{flex-wrap:wrap}.site-header nav{order:3;width:100%;justify-content:center;border-top:1px solid var(--line);padding-top:13px}.rewards-layout{gap:18px}.rewards-garden{padding:17px}.reward-badge{padding:15px}.garden-picker{grid-template-columns:1fr}.garden-choice{display:grid;grid-template-columns:60px 1fr;gap:0 12px;align-items:center;padding:9px}.garden-swatch{grid-row:1/3}.garden-choice strong,.garden-choice small{margin:0}}
@media(max-width:700px){.challenge-invite{flex-direction:column;align-items:flex-start;padding:23px;gap:18px}.challenge-invite h2{font-size:27px}.invite-actions{align-items:flex-start;width:100%}.invite-actions .btn{width:100%}.rewards-layout{grid-template-columns:1fr}.firefly-garden{height:210px}.challenge-setup h2{font-size:29px}.pace-picker{gap:8px}.pace-picker button{min-width:85px;padding:12px 7px;font-size:13px}.pace-picker button small{font-size:10px}.challenge-dashboard{gap:9px;flex-wrap:wrap}.challenge-clock{flex-basis:85px;width:85px;height:85px}.challenge-clock strong{font-size:22px}.light-trail{gap:5px;max-width:155px}.light-trail span{width:26px;height:26px;font-size:18px}.challenge-dashboard>.btn{padding:10px 12px;min-height:44px}.rewards-heading{margin-top:14px}.rewards-heading h2{font-size:25px}.reward-badge h3{font-size:16px}.badge-collection{gap:10px}.garden-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.garden-choice{display:block}.garden-choice strong{margin-top:9px}.garden-choice small{margin-top:5px}.site-header nav a{padding-left:4px;padding-right:4px}}
@media(prefers-reduced-motion:reduce){.garden-fireflies i,.light-trail .lit{animation:none!important}.clock-progress{transition:none!important}}
