@font-face{font-family:__Fredoka_160d87;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/3e5302f118d6bde7-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:__Fredoka_160d87;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bb36247b0b027bd1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fredoka_160d87;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bca7023bf625e650-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fredoka_160d87;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/3e5302f118d6bde7-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:__Fredoka_160d87;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bb36247b0b027bd1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fredoka_160d87;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bca7023bf625e650-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fredoka_160d87;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/3e5302f118d6bde7-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:__Fredoka_160d87;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bb36247b0b027bd1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fredoka_160d87;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bca7023bf625e650-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fredoka_Fallback_160d87;src:local("Arial");ascent-override:95.64%;descent-override:23.17%;line-gap-override:0.00%;size-adjust:101.84%}.__className_160d87{font-family:__Fredoka_160d87,__Fredoka_Fallback_160d87;font-style:normal}.__variable_160d87{--font-display:"__Fredoka_160d87","__Fredoka_Fallback_160d87"}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Nunito_215da5;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Nunito_Fallback_215da5;src:local("Arial");ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.00%;size-adjust:101.39%}.__className_215da5{font-family:__Nunito_215da5,__Nunito_Fallback_215da5;font-style:normal}.__variable_215da5{--font-body:"__Nunito_215da5","__Nunito_Fallback_215da5"}:root{--sky:#e8f4fc;--sky-mid:#d4eef8;--aqua:#7ec8d8;--aqua-deep:#2a9bb0;--foam:#f7fbfc;--sand:#f2e6c9;--sand-warm:#e8c97a;--coral:#ff7a6e;--coral-soft:#ffb4ad;--navy:#1a3a52;--navy-soft:#2d5470;--mist:#5a7a90;--line:rgba(26,58,82,.1);--line-strong:rgba(26,58,82,.18);--surface:#fff;--card:hsla(0,0%,100%,.72);--card-solid:#fff;--shadow:0 8px 28px rgba(42,155,176,.12);--danger:#e05555;--gold:#e8b84b;--silver:#a8b8c4;--bronze:#c4895a;--success:#3cb88a;--badge-earned-bg:linear-gradient(160deg,#fffef8,#fff5d6);--bg-layers:radial-gradient(ellipse 80% 50% at 10% -10%,rgba(126,200,216,.45),transparent 55%),radial-gradient(ellipse 60% 40% at 90% 10%,hsla(5,100%,84%,.28),transparent 50%),radial-gradient(ellipse 70% 45% at 50% 100%,hsla(43,71%,69%,.22),transparent 55%),linear-gradient(180deg,var(--sky) 0%,var(--sky-mid) 45%,#eef6f0 100%)}[data-theme=dark]{--sky:#0d2233;--sky-mid:#10293d;--aqua:#5cb9cc;--aqua-deep:#3fb5ca;--foam:#122c40;--coral:#ff8a7f;--coral-soft:#d98680;--navy:#e8f2f9;--navy-soft:#c7dbe8;--mist:#93aebf;--line:rgba(232,244,252,.12);--line-strong:rgba(232,244,252,.22);--surface:#16324a;--card:rgba(22,50,74,.72);--card-solid:#16324a;--shadow:0 8px 28px rgba(0,0,0,.35);--danger:#f07575;--success:#4ecf9d;--badge-earned-bg:linear-gradient(160deg,#2f2c1c,#3a3421);--bg-layers:radial-gradient(ellipse 80% 50% at 10% -10%,rgba(63,181,202,.16),transparent 55%),radial-gradient(ellipse 60% 40% at 90% 10%,hsla(5,100%,72%,.08),transparent 50%),radial-gradient(ellipse 70% 45% at 50% 100%,hsla(43,71%,69%,.06),transparent 55%),linear-gradient(180deg,var(--sky) 0%,var(--sky-mid) 45%,#0b1e2d 100%)}[data-theme=dark] body:before{opacity:.12}*{box-sizing:border-box}body,html{padding:0;margin:0}body{min-height:100vh;color:var(--navy);font-family:var(--font-body);background-color:var(--sky);background-image:var(--bg-layers);background-attachment:scroll}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='40' viewBox='0 0 120 40'%3E%3Cpath d='M0 20 Q15 8 30 20 T60 20 T90 20 T120 20' fill='none' stroke='%232a9bb0' stroke-width='1' opacity='0.25'/%3E%3C/svg%3E");background-repeat:repeat;background-size:120px 40px}a{color:inherit;text-decoration:none}.page{position:relative;z-index:1;max-width:960px;margin:0 auto;padding:24px 16px calc(88px + env(safe-area-inset-bottom))}.brand,h1,h2,h3{font-family:var(--font-display)}.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}:focus-visible{outline:3px solid rgba(42,155,176,.55);outline-offset:2px;border-radius:6px}.skip-link{position:absolute;top:-48px;left:12px;z-index:200;padding:10px 16px;border-radius:12px;background:#1a3a52;color:#fff;font-weight:700;transition:top .15s ease}.skip-link:focus-visible{top:12px}@media (max-width:768px){.page{padding:16px 14px calc(96px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.navbar{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--foam) 92%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 2px 16px rgba(42,155,176,.06);padding:env(safe-area-inset-top) 0 0}.nav-bar-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;position:relative;z-index:52}.brand{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:1.15rem;color:var(--navy);letter-spacing:.01em;min-width:0}.brand .brand-accent{color:var(--aqua-deep)}.brand:hover,.brand:hover .brand-accent{color:var(--coral)}.brand-mark{width:28px;height:28px;flex-shrink:0}.nav-burger{display:none;width:44px;height:44px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;flex-shrink:0}.nav-burger span{display:block;width:18px;height:2px;background:var(--navy);border-radius:2px;transition:transform .2s ease,opacity .2s ease}.nav-open .nav-burger span:first-child{transform:translateY(7px) rotate(45deg)}.nav-open .nav-burger span:nth-child(2){opacity:0}.nav-open .nav-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-links{display:flex;align-items:center;gap:16px;font-size:.92rem;font-weight:600;color:var(--navy-soft)}.nav-links a{min-height:44px;display:inline-flex;align-items:center}.nav-links a:hover{color:var(--aqua-deep)}.nav-links a.nav-link-active{color:var(--aqua-deep);font-weight:800}.nav-btn{background:var(--card-solid);border:1px solid var(--line-strong);color:var(--navy-soft);border-radius:999px;padding:10px 16px;min-height:44px;cursor:pointer;font-size:.85rem;font-family:inherit;font-weight:600}.nav-btn:hover{border-color:var(--aqua-deep);color:var(--aqua-deep)}.nav-cta{background:linear-gradient(135deg,var(--coral),#ff9488);color:#fff!important;padding:10px 18px;min-height:44px;border-radius:999px;font-weight:700;box-shadow:0 4px 14px hsla(5,100%,72%,.3);display:inline-flex;align-items:center}.nav-cta:hover{filter:brightness(1.05);color:#fff!important}.nav-admin{color:var(--coral)!important;font-weight:700}.nav-drawer{display:contents}.nav-backdrop,.nav-links-mobile{display:none}.nav-profile{position:relative;margin-left:4px}.nav-profile-trigger{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:4px 12px 4px 4px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--navy);font:inherit;font-weight:700;font-size:.88rem;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.nav-profile-trigger:hover,.nav-profile.open .nav-profile-trigger{border-color:var(--aqua-deep);box-shadow:0 0 0 3px rgba(42,155,176,.12)}.nav-avatar{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--aqua),var(--aqua-deep));color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.02em;flex-shrink:0;object-fit:cover}.nav-avatar.has-photo{background:var(--line);padding:0}.nav-caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--mist);margin-left:2px}.nav-profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:min(280px,calc(100vw - 32px));padding:10px;border-radius:16px;background:color-mix(in srgb,var(--surface) 98%,transparent);border:1px solid var(--line);box-shadow:0 16px 40px rgba(26,58,82,.14);display:flex;flex-direction:column;gap:2px;z-index:60}.nav-profile-card{display:flex;align-items:center;gap:10px;padding:8px 8px 10px}.nav-profile-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.nav-profile-meta strong{font-size:.92rem;color:var(--navy)}.nav-profile-meta span,.nav-profile-meta strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-profile-meta span{font-size:.78rem;color:var(--mist);font-weight:500}.nav-profile-sep{height:1px;background:var(--line);margin:4px 0}.nav-profile-dropdown a,.nav-profile-logout{display:flex;align-items:center;min-height:42px;padding:8px 12px;border-radius:12px;color:var(--navy-soft);font-weight:600;font-size:.9rem;text-decoration:none}.nav-profile-dropdown a:hover,.nav-profile-logout:hover{background:rgba(126,200,216,.18);color:var(--aqua-deep)}.nav-profile-dropdown a.nav-link-active{color:var(--aqua-deep);background:rgba(126,200,216,.14);font-weight:800}.nav-profile-logout{width:100%;border:0;background:transparent;cursor:pointer;font:inherit;text-align:left;color:var(--danger)}.nav-profile-logout:hover{color:var(--danger);background:rgba(224,85,85,.08)}.btn{padding:12px 24px;border-radius:999px;font-weight:700;cursor:pointer;border:1px solid transparent;font-size:.95rem;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--aqua-deep),#3db8c9);color:#fff;box-shadow:0 6px 18px rgba(42,155,176,.35)}.btn-primary:hover{filter:brightness(1.05)}.btn-secondary{background:var(--surface);color:var(--navy);border:1px solid var(--line-strong)}.btn-secondary:hover{border-color:var(--aqua-deep);color:var(--aqua-deep)}.btn-ghost{border-color:var(--line-strong);color:var(--navy);background:var(--card)}.btn-ghost:hover{border-color:var(--aqua-deep);color:var(--aqua-deep)}.checkbox{width:24px;height:24px;flex-shrink:0;border:2px solid var(--aqua);border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--surface);cursor:pointer;padding:0;transition:transform .15s ease,background .15s ease,border-color .15s ease}.checkbox.sm{width:20px;height:20px;border-radius:6px}.checkbox:hover:not(:disabled){transform:scale(1.08)}.checkbox.checked{background:linear-gradient(135deg,var(--success),#52d4a0);border-color:var(--success);color:#fff;animation:checkPop .35s cubic-bezier(.22,1,.36,1)}.checkbox.locked{opacity:.45;cursor:not-allowed;border-style:dashed;border-color:var(--silver)}.checkbox svg{width:13px;height:13px}.btn-danger{background:transparent;border:1px solid var(--danger);color:var(--danger)}.btn-danger:hover{background:rgba(224,85,85,.08)}.xp-toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(20px);background:linear-gradient(135deg,#1a3a52,#2d5470);color:#fff;font-family:var(--font-display);font-weight:700;font-size:1rem;padding:12px 22px;border-radius:999px;box-shadow:0 10px 30px rgba(26,58,82,.3);z-index:100;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}.xp-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.confetti-burst{position:fixed;inset:0;pointer-events:none;z-index:99;overflow:hidden}.confetti-piece{position:absolute;width:8px;height:8px;border-radius:2px;top:45%;left:50%;animation:confettiFall .9s ease-out forwards}@keyframes confettiFall{0%{opacity:1;transform:translate(0) rotate(0deg) scale(1)}to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(1turn) scale(.4)}}@keyframes checkPop{0%{transform:scale(.7)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes badgePop{0%{transform:scale(.9)}60%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.btn:disabled,.nav-btn:disabled,button.linkish:disabled{opacity:.55;cursor:not-allowed;transform:none;filter:none}.btn:disabled:hover{transform:none}.nav-loading-bar{position:-webkit-sticky;position:sticky;top:0;z-index:40;height:3px;margin:-.25rem 0 1rem;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--aqua) 25%,transparent)}.nav-loading-bar:after{content:"";display:block;height:100%;width:40%;border-radius:inherit;background:var(--aqua-deep);animation:nav-loading-slide .9s ease-in-out infinite}@keyframes nav-loading-slide{0%{transform:translateX(-120%)}to{transform:translateX(320%)}}.page-skeleton{display:flex;flex-direction:column;gap:18px}.skeleton{display:block;border-radius:999px;background:linear-gradient(90deg,rgba(42,155,176,.1) 25%,rgba(42,155,176,.2) 50%,rgba(42,155,176,.1) 75%);background-size:200% 100%;animation:skeletonShimmer 1.4s ease-in-out infinite}.skeleton-hero{display:flex;flex-direction:column;gap:10px;padding:8px 0 14px}.skeleton-title{height:30px;width:min(280px,70%);border-radius:12px}.skeleton-line{height:14px}.skeleton-line.w-40{width:40%}.skeleton-line.w-60{width:60%}.skeleton-line.w-70{width:70%}.skeleton-line.w-90{width:90%}.skeleton-cards{gap:12px}.skeleton-card,.skeleton-cards{display:flex;flex-direction:column}.skeleton-card{gap:10px;padding:18px;border-radius:18px;background:var(--card);border:1px solid var(--line)}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.nav-skeleton{display:inline-flex;align-items:center;gap:10px}.nav-skeleton .skeleton{height:32px;width:32px;border-radius:50%}.nav-skeleton .skeleton.wide{width:72px;border-radius:999px}.toast-stack{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:120;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;width:min(420px,calc(100vw - 32px))}.toast{padding:12px 20px;border-radius:14px;font-weight:700;font-size:.9rem;box-shadow:0 10px 30px rgba(26,58,82,.22);animation:toastIn .25s ease;max-width:100%}.toast-success{background:var(--success);color:#fff}.toast-error{background:var(--danger);color:#fff}.toast-info{background:#1a3a52;color:#fff}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.confirm-overlay{position:fixed;inset:0;z-index:110;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(26,58,82,.45);animation:toastIn .15s ease}.confirm-dialog{width:min(400px,100%);padding:24px;border-radius:20px;background:var(--card-solid);border:1px solid var(--line);box-shadow:0 20px 60px rgba(26,58,82,.3)}.confirm-dialog h2{margin:0 0 8px;font-size:1.2rem;color:var(--navy)}.confirm-dialog p{margin:0 0 20px;color:var(--mist);font-weight:600;line-height:1.5;white-space:pre-line}.confirm-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.invite-dialog{width:min(520px,100%);max-height:min(90vh,720px);overflow:auto}.invite-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.invite-dialog-head h2{margin:0}.invite-dialog-block{padding:14px 0;border-top:1px solid var(--line)}.invite-dialog-block:first-of-type{border-top:0}.invite-dialog-block h3{margin:0 0 6px;font-size:1rem;color:var(--navy)}.invite-dialog .community-lead,.invite-dialog .confirm-dialog p,.invite-dialog p.community-lead{margin-bottom:12px}.trip-invite-friends{max-height:240px;overflow:auto;margin:0}.trip-invite-guest-form{display:flex;flex-direction:column;gap:12px}.trip-invite-guest-form label,.trip-invite-photo-label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;font-weight:600;color:var(--mist)}.trip-invite-guest-form .field-optional,.trip-invite-photo-label .field-optional{font-style:normal;font-weight:600;opacity:.7;margin-left:4px}.trip-invite-guest-form input[type=email],.trip-invite-guest-form input[type=text]{font:inherit;font-weight:600;font-size:1rem;min-height:48px;padding:12px 14px;border-radius:14px;border:1px solid var(--line-strong);background:var(--surface);color:var(--navy);width:100%;box-sizing:border-box}.trip-invite-guest-form input:focus{outline:none;border-color:var(--aqua-deep);box-shadow:0 0 0 3px rgba(42,155,176,.15)}.trip-invite-photo{display:flex;flex-direction:column;gap:6px}.trip-invite-photo-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.trip-invite-photo-row .feed-meta{margin:0;flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-invite-guest-form>.btn-primary{margin-top:4px;width:100%}.theme-toggle{display:inline-flex;gap:4px;padding:4px;border-radius:999px;border:1px solid var(--line-strong);background:var(--card)}.theme-toggle button{border:0;background:transparent;color:var(--navy-soft);font:inherit;font-weight:700;font-size:.88rem;padding:9px 18px;min-height:42px;border-radius:999px;cursor:pointer;transition:background .15s ease,color .15s ease}.theme-toggle button.active{background:linear-gradient(135deg,var(--aqua-deep),#3db8c9);color:#fff}.theme-toggle button:not(.active):hover{color:var(--aqua-deep)}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:55;background:color-mix(in srgb,var(--foam) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:6px 8px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -4px 20px rgba(26,58,82,.08)}.bottom-nav-tab{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:52px;justify-content:center;border-radius:14px;color:var(--mist);font-size:.66rem;font-weight:800;letter-spacing:.01em;transition:color .15s ease,background .15s ease}.bottom-nav-tab svg{width:23px;height:23px}.bottom-nav-tab.active{color:var(--aqua-deep);background:rgba(126,200,216,.18)}@media (max-width:768px){.bottom-nav,.nav-burger{display:flex}.nav-links-desktop{display:none!important}.nav-links-mobile{display:flex!important}.nav-drawer{display:block;position:fixed;top:0;right:0;width:min(320px,86vw);height:100dvh;padding:calc(72px + env(safe-area-inset-top)) 20px 24px;background:color-mix(in srgb,var(--foam) 98%,transparent);border-left:1px solid var(--line);box-shadow:-12px 0 40px rgba(26,58,82,.12);transform:translateX(105%);transition:transform .25s ease;z-index:51;overflow-y:auto}.nav-drawer.open{transform:translateX(0)}.nav-links-mobile{flex-direction:column;align-items:stretch;gap:4px}.nav-links-mobile .nav-btn,.nav-links-mobile .nav-cta,.nav-links-mobile a{width:100%;justify-content:flex-start;padding:14px 16px;border-radius:14px;min-height:48px}.nav-links-mobile a.nav-link-active,.nav-links-mobile a:active,.nav-links-mobile a:hover{background:rgba(126,200,216,.2)}.nav-links-mobile .nav-cta{justify-content:center;margin-top:8px}.nav-links-mobile .nav-btn{justify-content:center}.nav-profile-trigger-label{display:none}.nav-backdrop{display:block;position:fixed;inset:0;border:0;padding:0;background:rgba(26,58,82,.35);z-index:40;cursor:pointer}.btn{min-height:48px;padding:14px 22px;display:inline-flex;align-items:center;justify-content:center}.checkbox,.checkbox.sm{width:28px;height:28px;border-radius:8px}.xp-toast{left:16px;right:16px;transform:translateY(20px);text-align:center;width:auto}.xp-toast.show{transform:translateY(0)}}@media (max-width:380px){.brand{font-size:1rem}}