@import "https://fonts.googleapis.com/css2?family=Nunito:wght@700;800;900&family=Inter:wght@400;460;500;600;700&display=swap";
:root{--parchment:#f2f0eb;--ink:#292827;--bone:#fff;--fog:#e3e3e2;--drift:#dcd7d3;--graphite:#666;--aubergine:#421d24;--iris:#714cb6;--lavender:#d4c7ff;--duo-green:#58cc02;--duo-shadow:#3f8f01;--sky:#1cb0f6;--sky-shadow:#0a8fc4;--yellow:#ffc700;--grape:#a570ff;--pink:#cc348d;--cloud:#e5e5e5;--charcoal:#4b4b4b;--almost-black:#3c3c3c}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased}.sh-display{letter-spacing:-1.79px;font-family:Inter,sans-serif;font-size:64px;font-weight:600;line-height:.96}.sh-h1{letter-spacing:-1.3px;font-family:Inter,sans-serif;font-size:48px;font-weight:600;line-height:1}.sh-h2{letter-spacing:-.62px;font-family:Inter,sans-serif;font-size:28px;font-weight:600;line-height:1.2}.sh-h3{letter-spacing:-.31px;font-family:Inter,sans-serif;font-size:22px;font-weight:600;line-height:1.25}.sh-sub{letter-spacing:-.14px;font-family:Inter,sans-serif;font-size:18px;font-weight:460;line-height:1.3}.sh-body{font-family:Inter,sans-serif;font-size:16px;font-weight:460;line-height:1.5}.sh-small{font-family:Inter,sans-serif;font-size:14px;font-weight:460;line-height:1.5}.sh-caption{font-family:Inter,sans-serif;font-size:12px;font-weight:500;line-height:1.5}.sh-card{background:var(--bone);border:1px solid var(--fog);border-radius:16px}.sh-card-lg{background:var(--bone);border:1px solid var(--fog);border-radius:24px}.glass{-webkit-backdrop-filter:blur(12px);background:#ffffff21;border:1px solid #fff3;border-radius:24px}.glass-pill{-webkit-backdrop-filter:blur(12px);background:#ffffff21;border:1px solid #fff3;border-radius:999px}.sh-btn-primary{background:var(--bone);color:var(--ink);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:6px;padding:12px 24px;font-family:Inter,sans-serif;font-size:16px;font-weight:500;text-decoration:none;transition:box-shadow .2s;display:inline-flex}.sh-btn-primary:hover{box-shadow:var(--iris) 0 0 0 1px inset}.sh-btn-ghost{color:var(--iris);border:1px solid var(--iris);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;text-decoration:none;transition:background .2s;display:inline-flex}.sh-btn-ghost:hover{background:#714cb60f}.sh-tab-active{background:var(--fog);color:var(--ink);cursor:pointer;border:none;border-radius:999px;padding:8px 16px;font-family:Inter,sans-serif;font-size:14px;font-weight:500}.sh-tab-inactive{color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:8px 16px;font-family:Inter,sans-serif;font-size:14px;font-weight:460}.sh-tab-inactive:hover{background:#0000000a}.iris-link{color:var(--iris);font-family:Inter,sans-serif;font-size:14px;font-weight:500;text-decoration:none}.iris-link:hover{text-decoration:underline}.duo-btn{background:var(--duo-green);color:#fff;letter-spacing:.5px;cursor:pointer;box-shadow:0 4px 0 var(--duo-shadow);white-space:nowrap;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:14px 32px;font-family:Nunito,sans-serif;font-size:15px;font-weight:700;text-decoration:none;transition:all .1s;display:inline-flex}.duo-btn:hover{box-shadow:0 5px 0 var(--duo-shadow);transform:translateY(-1px)}.duo-btn:active{box-shadow:0 2px 0 var(--duo-shadow);transform:translateY(2px)}.duo-btn-sky{background:var(--sky);color:#fff;letter-spacing:.5px;cursor:pointer;box-shadow:0 4px 0 var(--sky-shadow);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:14px 32px;font-family:Nunito,sans-serif;font-size:15px;font-weight:700;text-decoration:none;transition:all .1s;display:inline-flex}.duo-btn-sky:hover{box-shadow:0 5px 0 var(--sky-shadow);transform:translateY(-1px)}.duo-btn-sky:active{box-shadow:0 2px 0 var(--sky-shadow);transform:translateY(2px)}.duo-btn-outline{color:var(--sky);letter-spacing:.5px;border:2px solid var(--cloud);cursor:pointer;background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px 32px;font-family:Nunito,sans-serif;font-size:15px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.duo-btn-outline:hover{border-color:var(--sky)}.duo-card{border:2px solid var(--cloud);background:#fff;border-radius:16px}.duo-quest-card{border:2px solid var(--cloud);cursor:pointer;background:#fff;border-radius:16px;transition:all .15s;overflow:hidden}.duo-quest-card:hover{border-color:var(--duo-green);transform:translateY(-2px);box-shadow:0 6px #58cc0226}.duo-xp-bar{background:var(--cloud);border-radius:999px;height:12px;overflow:hidden}.duo-xp-fill{background:linear-gradient(90deg, var(--duo-green), #7be800);border-radius:999px;height:100%;transition:width 1.2s cubic-bezier(.19,1,.22,1)}.r-common{color:#64748b;background:#f1f5f9;border:2px solid #e2e8f0}.r-rare{color:#3b82f6;background:#eff6ff;border:2px solid #bfdbfe}.r-epic{color:#9333ea;background:#faf5ff;border:2px solid #e9d5ff}.r-legendary{color:#d97706;background:#fffbeb;border:2px solid #fde68a}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pop{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes confetti{0%{opacity:1;transform:translateY(-10px)rotate(0)}to{opacity:0;transform:translateY(110vh)rotate(720deg)}}@keyframes wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes xpFill{0%{width:0}to{width:var(--w,60%)}}.anim-in{animation:.4s both fadeIn}.anim-up{animation:.5s cubic-bezier(.19,1,.22,1) both slideUp}.anim-up-2{animation:.5s cubic-bezier(.19,1,.22,1) 80ms both slideUp}.anim-up-3{animation:.5s cubic-bezier(.19,1,.22,1) .16s both slideUp}.anim-down{animation:.5s cubic-bezier(.19,1,.22,1) both slideDown}.bounce{animation:2s ease-in-out infinite bounce}.float{animation:3s ease-in-out infinite float}.wiggle{animation:.4s ease-in-out infinite wiggle}:focus-visible{outline:2px solid var(--iris);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
