@font-face{font-family:Sora;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/1d4eaed977255102-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:Sora;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f3f7e95f2dbc4fe4-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:Sora Fallback;src:local("Arial");ascent-override:85.29%;descent-override:25.50%;line-gap-override:0.00%;size-adjust:113.73%}.__className_ce197d{font-family:Sora,Sora Fallback,sans-serif;font-style:normal}.__variable_ce197d{--font-display:"Sora","Sora Fallback",sans-serif}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-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:IBM Plex Sans Fallback;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_1bc20f{font-family:IBM Plex Sans,IBM Plex Sans Fallback,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;font-style:normal}.__variable_1bc20f{--font-sans:"IBM Plex Sans","IBM Plex Sans Fallback",-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-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:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_46fe82{font-family:IBM Plex Mono,IBM Plex Mono Fallback,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-style:normal}.__variable_46fe82{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback",SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}:root{--color-surface:#0e2124;--color-surface-raised:#1c4747;--color-surface-sunken:#071e21;--color-text-primary:#fafbfa;--color-text-secondary:#dde1e2;--color-text-muted:#8a9097;--color-accent:#c4ff45;--color-accent-muted:#eaffbe;--color-border-subtle:rgba(255,255,255,0.08);--color-border-strong:rgba(255,255,255,0.14);--color-error:#c4382e;--color-warning:#ff5900;--radius-sm:5px;--radius-md:7px;--radius-lg:10px}body,html{height:100%}body{margin:0;min-height:100%;display:flex;flex-direction:column;background:var(--color-surface);color:var(--color-text-primary);font-family:var(--font-sans);letter-spacing:-.02em}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;letter-spacing:-.02em}.page{flex:1 1;min-height:100vh;justify-content:center;padding:32px 20px}.card,.page{display:flex;flex-direction:column;align-items:center}.card{width:100%;max-width:360px;gap:14px;padding:32px 28px;background:var(--color-surface-sunken);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:0 8px 32px rgba(0,0,0,.4),0 2px 8px rgba(0,0,0,.25);text-align:center}.brand{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:2px}.brand__mark{height:26px;width:auto;display:block}.brand__app{font-family:var(--font-display);font-size:17px;font-weight:600}.brand__app,.page__title{color:var(--color-text-primary)}.page__title{margin:0;font-size:20px}.page__lead{margin:0;font-size:14px;line-height:1.5;color:var(--color-text-secondary)}.tagline{margin:0 0 4px;font-size:13px;color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;box-sizing:border-box;padding:10px 18px;border:1px solid transparent;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:14px;font-weight:500;line-height:1.2;letter-spacing:-.02em;text-decoration:none;cursor:pointer;transition:background .15s ease,opacity .15s ease}.btn--primary{background:var(--color-accent);color:var(--color-surface)}.btn--primary:hover{background:var(--color-accent-muted)}.btn--google{background:#fff;border-color:#dadce0;color:#3c4043}.btn--google:hover{opacity:.88}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn__icon{flex-shrink:0}.link-muted{color:var(--color-text-muted);font-size:13px;text-decoration:none}.link-muted:hover{color:var(--color-text-secondary);text-decoration:underline}.signin-form{width:100%;margin:0}.gallery{width:100%;max-width:880px;display:flex;flex-direction:column;gap:16px}.gallery .brand,.gallery .page__lead{align-self:center;text-align:center}.gallery__list{list-style:none;margin:4px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px}.gallery__list li{display:flex}.gallery__card{flex:1 1;display:flex;flex-direction:column;gap:8px;padding:18px;background:var(--color-surface-sunken);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);text-decoration:none;transition:border-color .15s ease,background .15s ease}.gallery__card:hover{background:var(--color-surface-raised)}.gallery__card:hover,.gallery__card:hover .gallery__icon{border-color:var(--color-accent)}.gallery__card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.gallery__icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:2px;font-size:20px;line-height:1;border-radius:var(--radius-md);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);transition:border-color .15s ease}.gallery__name{font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--color-text-primary)}.gallery__desc{line-height:1.45}.gallery__desc,.gallery__footer{font-size:13px;color:var(--color-text-muted)}.gallery__footer{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:6px}:root{--omni-space-0:0;--omni-space-1:4px;--omni-space-2:8px;--omni-space-3:12px;--omni-space-4:16px;--omni-space-5:20px;--omni-space-6:24px;--omni-space-7:32px;--omni-space-8:40px;--omni-space-9:48px;--omni-space-10:64px;--omni-shadow-1:0 1px 2px rgba(0,0,0,0.30),0 1px 3px rgba(0,0,0,0.22);--omni-shadow-2:0 2px 4px rgba(0,0,0,0.34),0 1px 6px rgba(0,0,0,0.24);--omni-shadow-4:0 4px 8px rgba(0,0,0,0.38),0 2px 4px rgba(0,0,0,0.26);--omni-shadow-8:0 8px 18px rgba(0,0,0,0.44),0 4px 8px rgba(0,0,0,0.30);--omni-shadow-16:0 16px 34px rgba(0,0,0,0.52),0 8px 16px rgba(0,0,0,0.34);--omni-radius-xl:20px;--omni-radius-pill:999px;--omni-color-success:#57c98a;--omni-color-info:#6ea8ff;--omni-heat-red-100:#d33030;--omni-heat-red-50:#eba2a2;--omni-heat-red-10:#3a1a1a;--omni-heat-blue-100:#2e65e8;--omni-heat-blue-50:#94b1f5;--omni-heat-blue-10:#16213e}@font-face{font-family:Omni Material Icons;src:url(/fonts/material-icons/MaterialIcons-Regular.woff2) format("woff2"),url(/fonts/material-icons/MaterialIcons-Regular.woff) format("woff");font-weight:400;font-style:normal;font-display:block}.omni-icon{font-family:Omni Material Icons;font-weight:400;font-style:normal;font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;font-feature-settings:"liga";-webkit-font-smoothing:antialiased;vertical-align:middle}.omni-chip{display:inline-flex;align-items:center;gap:var(--omni-space-1);padding:var(--omni-space-1) var(--omni-space-3);border:1px solid var(--color-border-strong);border-radius:var(--omni-radius-pill);background:transparent;color:var(--color-text-secondary);font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.4;letter-spacing:-.01em;white-space:nowrap}.omni-chip .omni-icon{font-size:14px}.omni-chip--outlined{border-color:var(--color-border-strong);background:transparent;color:var(--color-text-secondary)}.omni-chip--filled{border-color:transparent;background:var(--color-accent);color:var(--color-surface)}.omni-chip--subtle{border-color:color-mix(in srgb,var(--color-accent) 32%,transparent);background:color-mix(in srgb,var(--color-accent) 14%,transparent);color:var(--color-accent-muted)}.omni-chip--success{border-color:color-mix(in srgb,var(--omni-color-success) 40%,transparent);background:color-mix(in srgb,var(--omni-color-success) 16%,transparent);color:var(--omni-color-success)}.omni-chip--info{border-color:color-mix(in srgb,var(--omni-color-info) 40%,transparent);background:color-mix(in srgb,var(--omni-color-info) 16%,transparent);color:var(--omni-color-info)}.omni-chip--warning{border-color:color-mix(in srgb,var(--color-warning) 44%,transparent);background:color-mix(in srgb,var(--color-warning) 18%,transparent);color:var(--color-warning)}.omni-chip--error{border-color:color-mix(in srgb,var(--color-error) 48%,transparent);background:color-mix(in srgb,var(--color-error) 20%,transparent);color:color-mix(in srgb,var(--color-error) 70%,var(--color-text-primary))}.omni-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--omni-space-4);padding:var(--omni-space-8) var(--omni-space-5);text-align:center;color:var(--color-text-secondary)}.omni-empty-state__illustration{width:150px;max-width:60%;height:auto;opacity:.92}.omni-empty-state__title{display:inline-flex;align-items:center;gap:var(--omni-space-2);margin:0;font-family:var(--font-display);font-size:17px;font-weight:600;letter-spacing:-.02em;color:var(--color-text-primary)}.omni-empty-state__title .omni-icon{color:var(--color-accent);font-size:20px}.omni-empty-state__message{margin:0;max-width:340px;font-size:14px;line-height:1.5;color:var(--color-text-muted)}.omni-empty-state__action.btn{width:auto;margin-top:var(--omni-space-1)}.omni-card{display:block;padding:var(--omni-space-5);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--omni-shadow-2);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.omni-card--hoverable:hover{border-color:var(--color-accent);box-shadow:var(--omni-shadow-8);transform:translateY(-1px)}.omni-card--hoverable:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}