@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-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:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_25c8a1{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_25c8a1{--font-display:"Fraunces","Fraunces Fallback"}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-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:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_8b3a0b{font-family:Inter,Inter Fallback;font-style:normal}.__variable_8b3a0b{--font-body:"Inter","Inter Fallback"}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/aaf0e744731a46d3-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9cb204d1bfdb6539-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:Pixelify Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c565b14407d34fed-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:Pixelify Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/aaf0e744731a46d3-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/9cb204d1bfdb6539-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:Pixelify Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c565b14407d34fed-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:Pixelify Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/aaf0e744731a46d3-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/9cb204d1bfdb6539-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:Pixelify Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c565b14407d34fed-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:Pixelify Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/aaf0e744731a46d3-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9cb204d1bfdb6539-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:Pixelify Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c565b14407d34fed-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:Pixelify Sans Fallback;src:local("Arial");ascent-override:81.70%;descent-override:24.87%;line-gap-override:0.00%;size-adjust:112.61%}.__className_74a876{font-family:Pixelify Sans,Pixelify Sans Fallback;font-style:normal}.__variable_74a876{--font-pixel:"Pixelify Sans","Pixelify Sans Fallback"}:root{--night:#0b1430;--night-2:#131d45;--night-deep:#060b1e;--night-soft:#1a2756;--cream:#fbf6ec;--cream-2:#f4ecdb;--paper:#ffffff;--mist:#f1e8d6;--ink:#1b2546;--ink-2:#2a3768;--muted:#6c79a3;--faint:#a8b3d4;--rose:#e58aa3;--rose-soft:#f7d9e2;--rose-deep:#c4577388;--gold:#e0a458;--gold-soft:#f5e3c6;--gold-deep:#b9772a;--periwinkle:#8e97c4;--periwinkle-soft:#d6dbef;--moonlight:#fbf3e0;--danger:#db6c80;--success:#5fae8f;--moon-1:#fff8e6;--moon-2:#f2e2b2;--moon-3:#d7bd80;--moon-4:#9b8657;--line:rgba(27,37,70,0.14);--line-strong:rgba(27,37,70,0.3);--ink-border:#1b2546;--px:4px 4px 0 var(--night-deep);--px-sm:3px 3px 0 var(--night-deep);--px-rose:4px 4px 0 rgba(196,87,115,0.55);--px-gold:4px 4px 0 rgba(185,119,42,0.5);--shadow-soft:0 10px 26px -14px rgba(6,11,30,0.6);--shadow-lift:0 22px 46px -20px rgba(6,11,30,0.7);--r-xs:2px;--r-sm:4px;--r-md:6px;--r-lg:10px;--r-xl:14px;--ease:cubic-bezier(0.16,1,0.3,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--step:steps(2,jump-none);--font-display:"Fraunces",Georgia,serif;--font-body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--font-pixel:"Pixelify Sans","Press Start 2P",ui-monospace,monospace;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{position:relative;min-height:100vh;color:var(--moonlight);font-family:var(--font-body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background-color:var(--night);background-image:radial-gradient(2px 2px at 12% 18%,rgba(255,248,230,.9),transparent 60%),radial-gradient(1px 1px at 28% 62%,rgba(255,248,230,.7),transparent 60%),radial-gradient(2px 2px at 47% 22%,rgba(214,219,239,.85),transparent 60%),radial-gradient(1px 1px at 63% 78%,rgba(255,248,230,.7),transparent 60%),radial-gradient(2px 2px at 78% 12%,rgba(224,164,88,.8),transparent 60%),radial-gradient(1px 1px at 88% 52%,rgba(255,248,230,.7),transparent 60%),radial-gradient(1px 1px at 8% 84%,rgba(214,219,239,.7),transparent 60%),radial-gradient(2px 2px at 38% 88%,rgba(255,248,230,.7),transparent 60%);background-attachment:fixed}body:before{content:"";position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.5;background-image:repeating-linear-gradient(0deg,rgba(6,11,30,.16),rgba(6,11,30,.16) 1px,transparent 0,transparent 3px);mix-blend-mode:multiply}a{color:var(--rose);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:15px}::selection{background:var(--rose);color:var(--paper)}.t-display{font-size:clamp(28px,4vw,44px);line-height:1.06;letter-spacing:-.02em;color:var(--moonlight)}.t-display,.t-h1{font-family:var(--font-display);font-weight:600}.t-h1{font-size:26px;line-height:1.14;letter-spacing:-.01em}.t-h2{font-family:var(--font-display);font-weight:600;font-size:21px;line-height:1.2}.t-title{font-weight:700;font-size:17px}.t-body{font-size:15px;line-height:1.55}.t-small{font-size:13px;line-height:1.5}.t-caption{font-size:12px}.t-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase}.pixel,.t-label{font-family:var(--font-pixel);font-weight:600}.pixel{letter-spacing:.02em}.pixel-num{font-family:var(--font-pixel);font-weight:700;letter-spacing:.01em}.muted{color:var(--muted)}.faint{color:var(--faint)}.moonlight{color:var(--moonlight)}.gold{color:var(--gold)}.rose{color:var(--rose)}.periwinkle{color:var(--periwinkle)}.center{text-align:center}.panel,.panel-text{color:var(--ink)}.panel-text .muted{color:var(--muted)}.app-shell{display:flex;min-height:100vh}.sidebar{width:232px;flex-shrink:0;background:var(--cream);color:var(--ink);border-right:3px solid var(--ink-border);padding:20px 12px;display:flex;flex-direction:column;gap:3px;position:-webkit-sticky;position:sticky;top:0;height:100vh}.sidebar .brand{display:flex;align-items:center;gap:9px;padding:6px 10px 18px}.sidebar .brand h1{font-family:var(--font-pixel);font-size:18px;font-weight:700;color:var(--ink);letter-spacing:.02em}.nav-item{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:var(--r-sm);color:var(--muted);font-weight:600;font-size:14px;border:2px solid transparent;transition:background .18s var(--ease),color .18s var(--ease),transform .12s var(--ease)}.nav-item:hover{background:var(--mist);color:var(--ink);text-decoration:none}.nav-item:active{transform:scale(.98)}.nav-item.active{background:var(--ink);color:var(--moonlight);border-color:var(--ink-border);box-shadow:var(--px-sm)}.main{flex:1 1;min-width:0;padding:28px clamp(16px,4vw,52px) 90px;max-width:1140px;margin:0 auto;width:100%}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:12px;flex-wrap:wrap}@media (max-width:860px){.app-shell{flex-direction:column}.sidebar{position:-webkit-sticky;position:sticky;top:0;z-index:30;height:auto;flex-direction:row;overflow-x:auto;width:100%;padding:9px 10px;gap:4px;border-right:none;border-bottom:3px solid var(--ink-border)}.sidebar .brand{padding:2px 8px}.nav-item .nav-label,.sidebar .nav-foot,.sidebar .nav-spacer{display:none}.nav-item{white-space:nowrap;padding:8px 11px}.main{padding:18px 16px 96px}}.container-narrow{max-width:460px;margin:0 auto}.row{align-items:center}.col,.row{display:flex;gap:12px}.col{flex-direction:column}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.spacer{flex:1 1}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:14px;gap:14px}.grid-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));grid-gap:16px;gap:16px}.gap-sm{gap:8px}.gap-md{gap:14px}.mt{margin-top:18px}.mt-sm{margin-top:10px}.mt-lg{margin-top:28px}.mb{margin-bottom:14px}.panel{background:var(--cream);border:2px solid var(--ink-border);border-radius:var(--r-md);padding:18px;box-shadow:var(--px);position:relative}.panel.flat{box-shadow:none;background:var(--mist)}.panel.clickable{cursor:pointer;transition:transform .16s var(--ease),box-shadow .16s var(--ease)}.panel.clickable:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--night-deep)}.panel.clickable:active{transform:translate(1px,1px);box-shadow:var(--px-sm)}.panel.tinted{background:linear-gradient(160deg,var(--cream) 0,var(--rose-soft) 240%)}.panel.gold-tint{background:linear-gradient(160deg,var(--cream) 0,var(--gold-soft) 240%)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 22px;border-radius:var(--r-sm);border:2px solid var(--ink-border);font-family:var(--font-body);font-weight:700;font-size:14px;letter-spacing:.01em;color:var(--cream);background:var(--ink);box-shadow:var(--px);transition:transform .1s var(--ease),box-shadow .1s var(--ease),background .16s var(--ease);will-change:transform;white-space:nowrap}.btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--night-deep)}.btn:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--night-deep)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:var(--px-sm)}.btn.primary{background:var(--ink);color:var(--moonlight)}.btn.gold{background:var(--gold);color:#3a2606}.btn.rose{background:var(--rose);color:#4a1426}.btn.peri{background:var(--periwinkle);color:#1a1f3a}.btn.ghost{background:var(--cream);color:var(--ink)}.btn.ghost:hover{background:var(--mist)}.btn.danger{background:var(--danger);color:var(--paper)}.btn.sm{height:38px;padding:0 15px;font-size:13px;box-shadow:var(--px-sm)}.btn.block{width:100%}.btn.icon-only{width:48px;height:48px;padding:0}.btn.icon-only.sm{width:38px;height:38px}.field{display:flex;flex-direction:column;gap:7px}.field label,.field>span:first-child{font-family:var(--font-pixel);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.input,.textarea{width:100%;background:var(--paper);border:2px solid var(--ink-border);border-radius:var(--r-sm);padding:12px 14px;color:var(--ink);outline:none;transition:box-shadow .12s var(--ease),transform .12s var(--ease)}.input::placeholder,.textarea::placeholder{color:var(--faint)}.input:focus,.textarea:focus{box-shadow:var(--px-sm);transform:translate(-1px,-1px)}.textarea{resize:vertical;min-height:80px}.field .error{color:var(--danger);font-size:12px;font-weight:600}.field .hint{color:var(--faint);font-size:12px}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:var(--r-xs);font-family:var(--font-pixel);font-size:11px;font-weight:600;letter-spacing:.04em;border:2px solid var(--ink-border);background:var(--mist);color:var(--ink);cursor:default;box-shadow:2px 2px 0 var(--night-deep)}.chip.gold{background:var(--gold-soft);color:var(--gold-deep)}.chip.peri{background:var(--periwinkle-soft);color:var(--ink-2)}.chip.rose{background:var(--rose-soft);color:#a8425f}.chip.danger{background:rgba(219,108,128,.2);color:var(--danger)}.chip.success{background:rgba(95,174,143,.22);color:var(--success)}.chip.neutral{background:var(--mist);color:var(--muted)}.chip-button{cursor:pointer}.avatar{width:40px;height:40px;justify-content:center;color:var(--paper);font-size:14px;box-shadow:var(--px-sm);flex-shrink:0;image-rendering:pixelated}.avatar,.badge{border-radius:var(--r-xs);display:inline-flex;align-items:center;font-family:var(--font-pixel);font-weight:700;border:2px solid var(--ink-border)}.badge{gap:6px;padding:3px 9px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep);background:var(--gold-soft)}.badge:before{content:"";width:6px;height:6px;background:var(--gold)}.section-head{display:flex;align-items:center;justify-content:space-between;margin:24px 0 12px;gap:10px}.photo-thumb{display:block;border-radius:var(--r-md);overflow:hidden;background:var(--night-deep);text-decoration:none;color:inherit;border:2px solid var(--ink-border);box-shadow:var(--px);transition:transform .16s var(--ease),box-shadow .16s var(--ease)}.photo-thumb:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--night-deep);text-decoration:none}.photo-thumb .img{width:100%;aspect-ratio:1;display:block;image-rendering:pixelated}.photo-thumb .meta{display:flex;align-items:center;gap:8px;padding:9px 11px;background:var(--cream);color:var(--ink)}.photo-thumb .meta .avatar{width:22px;height:22px;font-size:10px;box-shadow:none}.photo-thumb .meta .cap{flex:1 1;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty{text-align:center;padding:44px 20px;color:var(--faint)}.empty .ico{opacity:.6;margin-bottom:12px}.spinner{display:inline-block;width:16px;height:16px;background:var(--rose);-webkit-clip-path:polygon(0 0,60% 0,60% 40%,100% 40%,100% 100%,0 100%);clip-path:polygon(0 0,60% 0,60% 40%,100% 40%,100% 100%,0 100%);animation:spin .9s steps(8) infinite}@keyframes spin{to{transform:rotate(1turn)}}.center-loading{text-align:center;padding:40px;color:var(--faint)}.switch{display:flex;align-items:center;justify-content:space-between;padding:8px 0;gap:12px}.switch .track{width:46px;height:24px;border-radius:var(--r-xs);background:var(--mist);border:2px solid var(--ink-border);position:relative;cursor:pointer;flex-shrink:0;transition:background .16s var(--ease)}.switch .track.on{background:var(--rose)}.switch .thumb{position:absolute;top:1px;left:1px;width:16px;height:16px;background:var(--paper);border:1px solid var(--ink-border);transition:transform .16s var(--ease)}.switch .track.on .thumb{transform:translateX(22px)}.reaction{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--r-xs);background:var(--mist);border:2px solid var(--ink-border);font-size:13px;color:var(--muted);cursor:pointer;font-weight:700;box-shadow:2px 2px 0 var(--night-deep);transition:transform .12s var(--ease)}.reaction:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--night-deep)}.reaction.mine{background:var(--rose-soft);color:#a8425f}.stat{text-align:center;min-width:84px}.stat .v{font-weight:700;font-size:30px;color:var(--moonlight);line-height:1}.stat .l,.stat .v{font-family:var(--font-pixel)}.stat .l{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);margin-top:6px}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:3px;gap:3px}.month-grid .cell{min-width:0}.month-grid .wd{text-align:center;font-family:var(--font-pixel);font-size:10px;letter-spacing:.06em;color:var(--faint);padding:4px 0}.month-grid .cell{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:var(--r-xs);border:2px solid transparent;cursor:pointer;font-family:var(--font-pixel);font-size:11px;color:var(--moonlight);background:rgba(26,39,86,.4);transition:background .14s var(--ease),transform .1s var(--ease)}.month-grid .cell:hover{background:rgba(26,39,86,.8)}.month-grid .cell.sel{background:var(--rose);border-color:var(--ink-border);color:var(--paper);transform:scale(.97)}.month-grid .cell .dot{width:5px;height:5px;background:var(--rose)}.month-grid .cell .cell-count{font-size:9px;font-weight:700;color:#4a1426;background:var(--rose-soft);border-radius:var(--r-xs);padding:0 4px;line-height:13px;min-width:13px;text-align:center}@media (max-width:720px){.month-grid{gap:2px}.month-grid .wd{padding:3px 0}.month-grid .cell{gap:1px;font-size:10px}.cal-cell-moon,.cal-cell-moon canvas{width:15px!important;height:15px!important}.month-grid .cell .cell-count{font-size:8px;line-height:11px;padding:0 3px;min-width:11px}}.divider{height:2px;background:var(--line);margin:16px 0;border-radius:2px}.cute-note{background:linear-gradient(160deg,var(--rose-soft),var(--cream) 150%);border:2px solid var(--ink-border);border-radius:var(--r-sm);padding:14px 16px;box-shadow:var(--px-sm);color:var(--ink)}.cute-note .heart-row{display:flex;align-items:center;gap:6px;color:var(--rose);font-family:var(--font-pixel);font-size:11px;font-weight:700;letter-spacing:.04em;margin-bottom:4px}.rise{animation:riseIn .45s var(--ease) both}@keyframes riseIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.grid-photos>*{animation:riseIn .45s var(--ease) both}.grid-photos>:first-child{animation-delay:0s}.grid-photos>:nth-child(2){animation-delay:45ms}.grid-photos>:nth-child(3){animation-delay:90ms}.grid-photos>:nth-child(4){animation-delay:135ms}.grid-photos>:nth-child(5){animation-delay:.18s}.grid-photos>:nth-child(6){animation-delay:225ms}.grid-photos>:nth-child(7){animation-delay:.27s}.grid-photos>:nth-child(8){animation-delay:315ms}.grid-photos>:nth-child(n+9){animation-delay:.36s}.bob{animation:bob 4.2s ease-in-out infinite}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.twinkle{animation:twinkle 2.6s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.25}50%{opacity:1}}.skeleton{position:relative;overflow:hidden;background:var(--mist);border:2px solid var(--ink-border);border-radius:var(--r-md)}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:repeating-linear-gradient(90deg,transparent,transparent 6px,rgba(224,164,88,.18) 0,rgba(224,164,88,.18) 12px);animation:shimmerPx 1.3s linear infinite}@keyframes shimmerPx{to{transform:translateX(100%)}}.landing{overflow-x:hidden}.lnav{position:-webkit-sticky;position:sticky;top:0;z-index:50;justify-content:space-between;padding:14px clamp(16px,5vw,40px);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(11,20,48,.72);border-bottom:2px solid rgba(142,151,196,.22)}.lnav,.lnav .brand{display:flex;align-items:center}.lnav .brand{gap:9px;font-family:var(--font-pixel);font-weight:700;font-size:18px;color:var(--moonlight)}.lnav .links{display:flex;align-items:center;gap:20px}.lnav .links a{color:var(--periwinkle-soft);font-weight:600;font-size:14px}.lnav .links a:hover{color:var(--moonlight)}@media (max-width:720px){.lnav .links a:not(.lnav-cta){display:none}}.hero{position:relative;color:var(--moonlight);padding:clamp(58px,10vw,120px) clamp(16px,5vw,40px) clamp(70px,10vw,120px);text-align:center;overflow:hidden}.hero .hero-inner{position:relative;z-index:2;max-width:920px;margin:0 auto}.hero .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--r-xs);border:2px solid rgba(255,248,230,.25);background:rgba(255,248,230,.06);font-family:var(--font-pixel);font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--rose-soft);margin-bottom:24px}.hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2.5rem,6vw,4.8rem);line-height:1.02;letter-spacing:-.03em;max-width:17ch;margin:0 auto}.hero h1 em{font-style:italic;color:var(--moonlight)}.hero h1 .rose-word{color:var(--rose)}.hero p.lede{max-width:560px;margin:22px auto 0;font-size:clamp(15px,1.6vw,18px);color:rgba(251,243,224,.8);line-height:1.6}.hero .ctas{display:flex;gap:12px;justify-content:center;margin-top:32px;flex-wrap:wrap}.hero .moon-float{position:absolute;z-index:1;pointer-events:none}.hero .moon-float.m1{top:8%;right:7%}.hero .moon-float.m2{bottom:10%;left:6%}.section{padding:clamp(52px,8vw,92px) clamp(16px,5vw,40px);max-width:1180px;margin:0 auto}.section .kicker{font-style:italic;color:var(--rose);font-size:18px;margin-bottom:8px}.section .kicker,.section h2{text-align:center;font-family:var(--font-display)}.section h2{font-weight:600;font-size:clamp(1.7rem,3.5vw,2.7rem);letter-spacing:-.02em;color:var(--moonlight);max-width:18ch;margin:0 auto}.section p.sub{text-align:center;max-width:560px;margin:14px auto 0;color:var(--periwinkle-soft)}.bento{margin-top:42px;display:grid;grid-template-columns:repeat(6,1fr);grid-auto-flow:dense;grid-gap:16px;gap:16px}.bento .b{background:var(--cream);color:var(--ink);border:2px solid var(--ink-border);border-radius:var(--r-md);padding:24px;box-shadow:var(--px);overflow:hidden;position:relative}.bento .b:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--night-deep);transition:transform .16s var(--ease),box-shadow .16s var(--ease)}.bento .b .ico{width:42px;height:42px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;margin-bottom:14px;border:2px solid var(--ink-border)}.bento .b h3{font-family:var(--font-display);font-weight:600;font-size:20px;margin-bottom:6px}.bento .b p{color:var(--muted);font-size:14px;line-height:1.55}.b1{grid-column:span 4;grid-row:span 2}.b2,.b3{grid-column:span 2}.b4,.b5{grid-column:span 3}@media (max-width:860px){.bento{grid-template-columns:repeat(2,1fr)}.b1,.b2,.b3,.b4,.b5{grid-column:span 2;grid-row:auto}}.marquee{margin-top:10px;overflow:hidden;border-block:2px solid rgba(142,151,196,.22);padding:16px 0;background:rgba(19,29,69,.6)}.marquee .track{display:flex;gap:44px;width:max-content;animation:marquee 30s linear infinite}.marquee .track span{font-family:var(--font-pixel);font-size:18px;color:var(--moonlight);opacity:.75;white-space:nowrap}@keyframes marquee{to{transform:translateX(-50%)}}.cta-band{margin:clamp(40px,7vw,72px) auto;max-width:1000px;padding:clamp(38px,6vw,60px);border-radius:var(--r-lg);border:2px solid var(--ink-border);box-shadow:var(--px);text-align:center;background:radial-gradient(600px 400px at 30% 0,rgba(229,138,163,.28),transparent 60%),linear-gradient(160deg,var(--night-2),var(--night-deep));color:var(--moonlight)}.cta-band h2{font-family:var(--font-display);font-weight:600;font-size:clamp(1.7rem,3.6vw,2.7rem);letter-spacing:-.02em;color:var(--moonlight)}.cta-band p{color:rgba(251,243,224,.8);margin-top:12px}.lfoot{border-top:2px solid rgba(142,151,196,.22);padding:36px clamp(16px,5vw,40px);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--faint);font-size:13px}.lfoot .brand{font-family:var(--font-pixel);font-weight:700;color:var(--moonlight);font-size:16px}*{scrollbar-width:thin;scrollbar-color:var(--ink-2) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--ink-2);border-radius:var(--r-xs);border:2px solid var(--night-deep)}::-webkit-scrollbar-track{background:transparent}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.toast{font-family:var(--font-body);font-weight:600;font-size:14px;padding:10px 16px;border-radius:var(--r-sm);border:2px solid var(--ink-border);background:var(--cream);color:var(--ink);box-shadow:var(--px);animation:toastIn .2s var(--ease) both;max-width:min(92vw,420px);text-align:center}.toast.success{border-color:var(--success);color:#1f5a47}.toast.error{border-color:var(--danger);color:#7a2434}.toast.info{border-color:var(--ink-2)}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.panel .stat .v{color:var(--ink)}.panel .stat .l{color:var(--muted)}