*{margin:0;padding:0;box-sizing:border-box}html{color-scheme:dark}body{font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0c1a10;color:#1a2d1e}button,input{font-family:inherit}button{cursor:pointer}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#bccda9;border-radius:5px}:focus-visible{outline:3px solid #A8E063;outline-offset:3px;border-radius:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes glowpulse{0%,to{box-shadow:0 0 #e1ffae80,0 8px 24px #00000059}50%{box-shadow:0 0 0 14px #e1ffae00,0 8px 24px #00000059}}@keyframes nudge{0%,to{box-shadow:0 0 #a8e06373}50%{box-shadow:0 0 0 10px #a8e06300}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scrimIn{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:scale(.8) translateY(20px)}60%{transform:scale(1.04) translateY(0)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes badgePop{0%{transform:scale(0) rotate(-30deg)}70%{transform:scale(1.25) rotate(8deg)}to{transform:scale(1) rotate(0)}}@keyframes confetti{0%{transform:translateY(-10px) rotate(0);opacity:1}to{transform:translateY(420px) rotate(540deg);opacity:0}}.rise{animation:rise .5s cubic-bezier(.2,.7,.3,1) both}.floaty{animation:floaty 3.5s ease-in-out infinite}.floaty-fast{animation:floaty 2.6s ease-in-out infinite}.glowpulse{animation:glowpulse 2.4s ease-in-out infinite}.node-ring.nudge{animation:nudge 2.8s ease-in-out 4}.stamp-btn.nudge{border-radius:50%;animation:nudge 2.8s ease-in-out 4}.badge-pop{animation:badgePop .6s .1s cubic-bezier(.2,.8,.3,1) both}.confetti{position:absolute;top:-10px;animation:confetti linear infinite}.page{min-height:100vh;background:radial-gradient(120% 80% at 50% -10%,#1b3a22,#0c1a10 60%);display:flex;flex-direction:column}.container{margin:0 auto;width:100%;padding:32px 24px 64px}.container-wide{max-width:1120px;padding-top:48px}.topnav{position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0c1a10b8;border-bottom:1px solid rgba(189,205,169,.14)}.topnav-inner{max-width:1120px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:10px;background:none;border:none;padding:0;text-align:left;line-height:1.1}.brand-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#a8e063,#56a044);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #56a04466}.brand-mark img{width:22px;height:22px;object-fit:contain;display:block}.brand-title{font-size:13px;font-weight:800;color:#eaf4dc;font-family:Space Grotesk,sans-serif;letter-spacing:.02em}.brand-sub{font-size:9px;color:#7e9476;font-weight:700;letter-spacing:.18em}.xp{flex:1;max-width:340px;display:flex;align-items:center;gap:10px}.xp-level{font-size:11px;font-weight:800;color:#a8e063;font-family:Space Grotesk,sans-serif;white-space:nowrap}.xp-track{flex:1;height:7px;border-radius:4px;background:#bdcda929;overflow:hidden}.xp-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#56a044,#a8e063);transition:width .5s cubic-bezier(.2,.7,.3,1);box-shadow:0 0 10px #a8e0638c}.xp-pct{font-size:11px;font-weight:800;color:#eaf4dc;white-space:nowrap}.nav-btns{display:flex;gap:8px;margin-left:auto}.nav-btn{display:flex;align-items:center;gap:6px;background:#bdcda91a;border:1px solid rgba(189,205,169,.18);border-radius:10px;padding:8px 13px;font-size:12.5px;font-weight:700;color:#eaf4dc;transition:.18s;white-space:nowrap}.nav-btn:hover{background:#a8e0632e;border-color:#a8e06366}.count-pill{background:#a8e063;color:#14301a;border-radius:6px;padding:1px 6px;font-size:10px;font-weight:800}.back-btn{display:flex;align-items:center;gap:7px;background:#bdcda914;border:1px solid rgba(189,205,169,.16);border-radius:10px;padding:8px 14px;color:#9db394;font-weight:700;font-size:13px;margin-bottom:24px;transition:.18s}.back-btn:hover{color:#eaf4dc;border-color:#a8e06366}.h1{font-family:Space Grotesk,sans-serif;font-weight:700;color:#fff;letter-spacing:-.01em}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;color:#a8e063;text-transform:uppercase}.section-label{font-size:11px;font-weight:800;letter-spacing:.16em;color:#7e9476;text-transform:uppercase}.rule{flex:1;height:1px;background:#bdcda924}.primary-btn{background:linear-gradient(135deg,#a8e063,#56a044);border:none;border-radius:12px;font-weight:800;color:#14301a;box-shadow:0 6px 16px #56a04466;transition:.18s}.primary-btn:hover{transform:translateY(-2px)}.card-soft{background:#bdcda90f;border:1px solid rgba(189,205,169,.14);border-radius:20px;padding:28px}.card-featured{background:linear-gradient(135deg,#56a04433,#a8e0630f);border:1px solid rgba(168,224,99,.3);border-radius:20px}.paper{background:#f7faf0;border-radius:24px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.hero{text-align:center;margin-bottom:8px}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:#a8e0631f;border:1px solid rgba(168,224,99,.3);border-radius:999px;padding:6px 14px;font-size:12px;font-weight:700;color:#a8e063;margin-bottom:20px}.hero h1{font-size:54px;line-height:1.05;letter-spacing:-.02em;margin-bottom:14px}.hero .grad{background:linear-gradient(135deg,#a8e063,#56a044);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero p{font-size:17px;color:#9db394;max-width:480px;margin:0 auto;line-height:1.6}.hero .hint{display:inline-flex;align-items:center;gap:8px;margin:18px auto 0;padding:8px 16px;border-radius:999px;background:#a8e06324;border:1px solid rgba(168,224,99,.35);font-size:13px;font-weight:700;color:#eaf4dc;line-height:1.4}.stats{display:flex;justify-content:center;gap:14px;margin:32px 0 8px;flex-wrap:wrap}.stat{background:#bdcda914;border:1px solid rgba(189,205,169,.14);border-radius:14px;padding:14px 22px;text-align:center;min-width:120px}.stat-num{font-family:Space Grotesk,sans-serif;font-size:26px;font-weight:700;color:#a8e063}.stat-num span{color:#5e7256;font-size:16px}.stat-label{font-size:11px;color:#7e9476;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-top:2px}.map{position:relative;width:100%;margin:36px 0 8px}.map-canvas{position:relative;width:100%;padding-bottom:30%}.map-canvas svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.path-fill{transition:stroke-dashoffset .8s cubic-bezier(.2,.7,.3,1);filter:drop-shadow(0 0 6px rgba(168,224,99,.5))}.map-list{display:none}.node{position:absolute;transform:translate(-50%,-50%);background:none;border:none;padding:0;display:flex;flex-direction:column;align-items:center;gap:10px;width:130px}.node-ring{position:relative;width:84px;height:84px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #00000059}.node-ring.started{box-shadow:0 0 0 4px #a8e0631f,0 8px 24px #00000059}.node-core{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;border:1px solid rgba(255,255,255,.08)}.node-check{position:absolute;bottom:-2px;right:-2px;width:26px;height:26px;border-radius:50%;background:#a8e063;color:#14301a;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;border:3px solid #0C1A10}.node-label{font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:700;color:#eaf4dc}.node-pct{font-size:11px;font-weight:700}.quest-card{text-align:left;display:flex;flex-direction:column;gap:14px;background:linear-gradient(135deg,#56a04429,#a8e0630a);border:1px solid rgba(168,224,99,.26);border-radius:22px;padding:24px;transition:.2s;color:inherit}.quest-card:hover{transform:translateY(-4px);border-color:#a8e06380}.quest-icon{position:relative;flex:none;width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,#1d4527,#2c6a3a);display:flex;align-items:center;justify-content:center;font-size:34px;box-shadow:0 8px 20px #00000059}.quest-icon .count-badge{position:absolute;top:-7px;right:-7px;background:#a8e063;color:#14301a;font-size:10.5px;font-weight:800;border-radius:999px;padding:2px 8px;border:3px solid #0C1A10}.quest-title{font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:700;color:#fff;letter-spacing:-.01em}.quest-sub{font-size:12.5px;color:#a8e063;font-weight:700}.quest-card p{font-size:13.5px;color:#9db394;line-height:1.5}.mini-track{flex:1;height:6px;border-radius:3px;background:#0c1a1066;overflow:hidden}.mini-fill{height:100%;background:linear-gradient(90deg,#56a044,#a8e063);border-radius:3px;transition:width .5s}.reward{position:relative;border-radius:18px;display:flex}.reward.locked{background:#bdcda90d;border:1px solid rgba(189,205,169,.12)}.reward.unlocked{background:linear-gradient(135deg,#a8e06329,#56a0440d);border:1px solid rgba(168,224,99,.5);box-shadow:0 0 0 1px #a8e06333,0 10px 30px #56a04429}.reward-tag{font-size:9px;font-weight:800;letter-spacing:.08em;color:#7e9476;background:#bdcda91a;padding:3px 9px;border-radius:6px;text-transform:uppercase}.reward-icon{line-height:1}.reward.locked .reward-icon{filter:grayscale(1) opacity(.45)}.reward-name{font-family:Space Grotesk,sans-serif;font-weight:700;line-height:1.2}.reward.unlocked .reward-name{color:#eaf4dc}.reward.locked .reward-name{color:#7e9476}.reward-sub{font-size:11px;line-height:1.4;font-weight:600}.reward.unlocked .reward-sub{color:#a8e063}.reward.locked .reward-sub{color:#5e7256}.check-row{display:flex;gap:15px;align-items:center;padding:15px 0;border:none;background:none;border-top:1px solid #E6EDD9;text-align:left;width:100%;color:inherit}.check-box{width:26px;height:26px;border-radius:8px;flex:none;border:2px solid #C2CFB0;background:transparent;display:flex;align-items:center;justify-content:center;transition:.15s;color:#fff;font-size:13px;font-weight:800}.check-row[aria-pressed=true] .check-box{border-color:#56a044;background:#56a044}.check-title{font-size:15px;font-weight:700;color:#1a2d1e}.check-row[aria-pressed=true] .check-title{color:#9db394;text-decoration:line-through}.check-desc{font-size:13px;color:#7e9476;margin-top:2px}.check-icon{width:34px;height:34px;flex:none;border-radius:10px;background:#ecf0de;display:flex;align-items:center;justify-content:center;font-size:17px}.q-input{flex:1;min-width:0;background:#bdcda914;border:1px solid rgba(189,205,169,.2);border-radius:12px;padding:14px 16px;font-size:15px;color:#eaf4dc;outline:none}.q-input:focus-visible{border-color:#56a044}.q-row{display:flex;align-items:center;gap:14px;border-radius:14px;padding:14px 16px;transition:.18s;background:#bdcda90f;border:1px solid rgba(189,205,169,.14)}.q-row.asked{background:#a8e06314;border-color:#a8e0634d}.q-check{width:24px;height:24px;flex:none;border-radius:50%;border:2px solid #5E7256;background:transparent;display:flex;align-items:center;justify-content:center;color:#14301a;font-size:13px;font-weight:800}.q-row.asked .q-check{border-color:#a8e063;background:#a8e063}.q-text{flex:1;font-size:15px;font-weight:600;color:#eaf4dc}.q-row.asked .q-text{color:#7e9476;text-decoration:line-through}.q-remove{background:none;border:none;color:#5e7256;font-size:18px;padding:4px;transition:.15s}.q-remove:hover{color:#e07a5f}.help-card{background:#0c1a1066;border:1px solid rgba(189,205,169,.14);border-radius:14px;padding:18px}.team-card{background:#bdcda90f;border:1px solid rgba(189,205,169,.14);border-radius:16px;padding:20px;display:flex;align-items:center;gap:16px;transition:.2s}.team-card:hover{border-color:#a8e06366;transform:translateY(-3px)}.avatar{flex:none;display:flex;align-items:center;justify-content:center}.avatar-lg{width:74px;height:74px;border-radius:20px;background:linear-gradient(135deg,#a8e063,#56a044);font-size:34px;box-shadow:0 8px 20px #56a04466}.avatar-sm{width:54px;height:54px;border-radius:14px;background:#a8e06324;font-size:26px}.avatar-xl{width:96px;height:96px;margin:0 auto 18px;border-radius:28px;background:linear-gradient(135deg,#a8e063,#56a044);font-size:46px;box-shadow:0 10px 30px #56a04473}.stamp-card{position:relative;border-radius:18px;padding:18px;display:flex;align-items:flex-start;gap:16px;transition:.18s;background:#f2f6ea;border:1px solid rgba(0,0,0,.07)}.stamp-card.got{background:#fff;border-color:#7bc142}.stamp-btn{flex:none;position:relative;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:none;border:none;padding:0}.stamp-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2.5px solid rgba(120,148,118,.35)}.stamp-ring-inner{position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:50%;border:1px dashed rgba(120,148,118,.35)}.stamp-card.got .stamp-ring,.stamp-card.got .stamp-ring-inner{border-color:#2c6a3a}.stamp-emoji{opacity:.42;filter:grayscale(.55)}.stamp-card.got .stamp-emoji{opacity:1;filter:none}.stamp-check{position:absolute;bottom:-3px;right:-3px;width:22px;height:22px;border-radius:50%;background:#2c6a3a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;border:2px solid #fff}.stamp-name{font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:700;color:#5e7256}.stamp-card.got .stamp-name{color:#1a2d1e}.stamp-status{flex:none;font-size:10.5px;font-weight:800;letter-spacing:.04em;color:#9aab8c}.stamp-card.got .stamp-status{color:#2c6a3a}.stamp-input{flex:1;min-width:0;background:#fff;border:1.5px solid rgba(0,0,0,.12);border-radius:9px;padding:8px 11px;font-size:13px;color:#1a2d1e;outline:none;transition:.16s}.stamp-card.got .stamp-input{border-color:#7bc142}.stamp-input:focus-visible{border-color:#56a044;outline-offset:1px}.qa-label{flex:none;font-size:9.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;margin-top:2px}.qa-text{font-size:12.5px;color:#33503b;line-height:1.4}dialog.celebration{border:none;padding:0;background:transparent;max-width:100vw;max-height:100vh;width:100%;height:100%;margin:0;overflow:hidden}dialog.celebration::backdrop{background:#071009c7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:scrimIn .25s ease both}.celebration-scrim{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px}.celebration-card{position:relative;max-width:420px;width:100%;background:linear-gradient(160deg,#143019,#0f2615);border:1px solid rgba(168,224,99,.3);border-radius:28px;padding:40px 34px 32px;text-align:center;box-shadow:0 30px 80px #0009;animation:pop .5s cubic-bezier(.2,.8,.3,1) both;color:#eaf4dc}.celebration-pill{display:inline-flex;align-items:center;gap:7px;background:#a8e06324;border:1px solid rgba(168,224,99,.3);border-radius:999px;padding:5px 14px;font-size:11px;font-weight:800;letter-spacing:.12em;color:#a8e063;text-transform:uppercase;margin-bottom:22px}.celebration-badge{margin:0 auto 8px;border-radius:32px;background:linear-gradient(135deg,#a8e063,#56a044);display:flex;align-items:center;justify-content:center;box-shadow:0 16px 40px #56a04480}.celebration-note{background:#a8e0631a;border:1px solid rgba(168,224,99,.24);border-radius:14px;padding:13px 16px;margin-top:18px;font-size:13px;font-weight:600;color:#eaf4dc}.celebration-btn{margin-top:22px;width:100%;border-radius:14px;padding:14px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700;box-shadow:0 8px 22px #56a04466}@media(prefers-reduced-motion:reduce){.rise,.floaty,.floaty-fast,.glowpulse,.node-ring.nudge,.stamp-btn.nudge,.badge-pop,.confetti,.celebration-card,dialog.celebration::backdrop{animation:none!important}.nav-btn,.back-btn,.primary-btn,.quest-card,.team-card,.xp-fill,.mini-fill,.check-box,.q-row,.stamp-card,.stamp-input,.path-fill{transition:none!important}.primary-btn:hover,.quest-card:hover,.team-card:hover{transform:none}}@media(max-width:720px){.container{padding-left:16px;padding-right:16px}.topnav-inner{flex-wrap:wrap;gap:10px 14px;padding:10px 16px}.xp{max-width:none;flex:1}.nav-btns{margin-left:0;flex-basis:100%;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.nav-btns::-webkit-scrollbar{display:none}.hero h1{font-size:38px}.map-canvas{display:none}.map-list{display:flex;flex-direction:column;gap:12px}.map-list .node{position:static;transform:none;width:100%;flex-direction:row;gap:16px;text-align:left;background:#bdcda90f;border:1px solid rgba(189,205,169,.14);border-radius:16px;padding:14px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.detail-hero{flex-direction:column;text-align:center}.detail-hero p{margin-left:auto;margin-right:auto}}.muted{color:#9db394;font-size:14px}.form-section{margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.form-h2{font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:700;color:#fff}.field-label{display:block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#7e9476;margin-bottom:6px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:4px;background:#a8e0631f;border:1px solid rgba(168,224,99,.3);border-radius:999px;padding:6px 8px 6px 14px;color:#eaf4dc;font-size:14px;font-weight:700}.chip-remove{background:none;border:none;color:#9db394;font-size:18px;line-height:1;padding:0 6px}.picker-results{list-style:none;margin-top:6px;border:1px solid rgba(189,205,169,.2);border-radius:12px;overflow:hidden}.picker-results button{width:100%;text-align:left;background:#bdcda90f;border:none;border-bottom:1px solid rgba(189,205,169,.1);padding:12px 16px;color:#eaf4dc;font-size:14px;font-weight:700}.picker-results button:hover{background:#a8e0631f}.activity-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:center}.form-actions{display:flex;align-items:center;gap:16px;margin-top:8px}.form-saved{color:#a8e063;font-weight:700;font-size:14px}.form-error{color:#ffb4a2;font-weight:700;font-size:14px}.form-notice{background:#ffd6661a;border:1px solid rgba(255,214,102,.3);border-radius:12px;padding:12px 16px;color:#ffe7a3;font-size:14px;margin-bottom:16px}.joiner-list{list-style:none;display:flex;flex-direction:column;gap:12px}.joiner-link{text-decoration:none}.joiner-name{font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:700;color:#fff}.status-pill{font-size:12px;font-weight:800;border-radius:999px;padding:4px 12px}.status-pill.done{background:#a8e0632e;color:#a8e063}.status-pill.todo{background:#ffd66624;color:#ffe7a3}.form-fieldset{border:0;padding:0;margin:0;min-width:0}
