@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbd88c7cbebcb5b-s.5dffbad4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e3c10b17cdb86a23-s.9c849131.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(../media/612838607db3d51d-s.p.7fc7e6d5.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9710cef2a2a6ac70-s.a1099429.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../media/a978fc28c69736ab-s.1914b782.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../media/303804218d80822e-s.p.9b40bd6c.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e37557cf0085218d-s.1d7e972f.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/146a3e5eadafdf83-s.3716a6ec.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d9b5d46d9a89ffe6-s.p.0855aa53.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed Fallback;src:local(Arial);ascent-override:130.73%;descent-override:26.15%;line-gap-override:0.0%;size-adjust:76.49%}.barlow_condensed_7161c98a-module__p0sqza__className{font-family:Barlow Condensed,Barlow Condensed Fallback;font-style:normal}.barlow_condensed_7161c98a-module__p0sqza__variable{--font-barlow:"Barlow Condensed","Barlow Condensed Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.c949a514.woff2)format("woff2");unicode-range:U+460-52F,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(../media/1bcd0e671759a44c-s.a3ed597e.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.319fa961.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.323431dc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,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(../media/57215795b8570f5c-s.0f2c7ba8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,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(../media/03fc1b4a8d284b5e-s.p.af4fcd24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(../media/7fea77d1d19108bf-s.c949a514.woff2)format("woff2");unicode-range:U+460-52F,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(../media/1bcd0e671759a44c-s.a3ed597e.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.319fa961.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.323431dc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,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(../media/57215795b8570f5c-s.0f2c7ba8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,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(../media/03fc1b4a8d284b5e-s.p.af4fcd24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(../media/7fea77d1d19108bf-s.c949a514.woff2)format("woff2");unicode-range:U+460-52F,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(../media/1bcd0e671759a44c-s.a3ed597e.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.319fa961.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.323431dc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,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(../media/57215795b8570f5c-s.0f2c7ba8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,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(../media/03fc1b4a8d284b5e-s.p.af4fcd24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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.0%;size-adjust:101.17%}.ibm_plex_sans_39a5f87-module__F4Orjq__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_39a5f87-module__F4Orjq__variable{--font-plex-sans:"IBM Plex Sans","IBM Plex Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.a82ecf4e.woff2)format("woff2");unicode-range:U+460-52F,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(../media/59b15b4bcd7b1eb5-s.afa48be3.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.764b43eb.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.cb53f04b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,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(../media/99e609270109b47d-s.p.64b9304e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(../media/5e05ae5b48faa55e-s.6b5ea6af.woff2)format("woff2");unicode-range:U+460-52F,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(../media/a7afbb44bec2bb18-s.1dcddae6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.8da66e7f.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.e6cd1753.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,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(../media/effe91970fc4db64-s.p.19510058.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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.0%;size-adjust:134.59%}.ibm_plex_mono_6a49ad5e-module__fo1kJa__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_6a49ad5e-module__fo1kJa__variable{--font-plex-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}
:root{--bg:#0f0e0c;--surface:#171512;--surface-2:#1f1d19;--surface-3:#2a2722;--line:#2c2924;--line-strong:#3f3a33;--text:#ece8e1;--text-2:#a8a197;--text-3:#948e86;--accent:#e8890f;--accent-strong:#c97508;--accent-ink:#1a1206;--accent-soft:color-mix(in srgb,var(--accent)14%,transparent);--ok:#7fae6a;--warn:#d6a33a;--bad:#d97161;--info:#86a3bd;--ok-soft:color-mix(in srgb,var(--ok)14%,transparent);--warn-soft:color-mix(in srgb,var(--warn)14%,transparent);--bad-soft:color-mix(in srgb,var(--bad)14%,transparent);--info-soft:color-mix(in srgb,var(--info)14%,transparent);--c-1:#3987e5;--c-2:#d95926;--c-3:#199e70;--c-4:#c98500;--c-5:#d55181;--c-6:#008300;--c-7:#9085e9;--c-8:#e66767;--d-kcal:var(--c-2);--d-protein:var(--c-1);--d-carbs:var(--c-4);--d-fat:var(--c-3);--font-display:var(--font-barlow),"Arial Narrow",sans-serif;--font-body:var(--font-plex-sans),system-ui,sans-serif;--font-mono:var(--font-plex-mono),ui-monospace,monospace;--fs-xs:.75rem;--fs-sm:.875rem;--fs-md:1rem;--fs-lg:1.25rem;--fs-xl:1.75rem;--fs-2xl:2.5rem;--fs-3xl:3.5rem;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--r-1:2px;--r-2:4px;--r-3:6px;--ease:cubic-bezier(.2,0,0,1);--t-fast:.12s var(--ease);--t-base:.2s var(--ease);--focus:0 0 0 2px var(--bg),0 0 0 4px var(--accent)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:focus-visible{box-shadow:var(--focus);outline:none}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}h1,h2,h3{font-family:var(--font-display);letter-spacing:.01em;font-weight:600;line-height:1.1}
html{scroll-behavior:smooth;width:100%;overflow-x:hidden}*{box-sizing:border-box;margin:0;padding:0}:root{--brand:var(--accent);--brand-strong:var(--accent-strong);--primary-gradient:var(--accent);--accent-blue:var(--info);--accent-blue-strong:var(--info);--success-gradient:var(--ok);--danger-gradient:var(--bad);--bg-primary:var(--bg);--bg-secondary:var(--surface);--bg-secondary-solid:var(--surface);--bg-card:var(--surface);--bg-hover:var(--surface-2);--text-primary:var(--text);--text-secondary:var(--text-2);--text-muted:var(--text-3);--border-color:var(--line);--border-hover:var(--line-strong);--shadow-sm:none;--shadow-md:none;--shadow-lg:0 12px 32px #00000080;--shadow-xl:0 12px 32px #00000080;--radius-sm:var(--r-1);--radius-md:var(--r-2);--radius-lg:var(--r-3);--radius-xl:var(--r-3);--transition-fast:var(--t-fast);--transition-base:var(--t-base);--transition-slow:var(--t-base)}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);width:100%;max-width:100vw;line-height:1.6;overflow-x:hidden}.container{max-width:1200px;padding:0 var(--s-5);margin:0 auto}.navbar{border-bottom:1px solid var(--border-color);z-index:1000;background:#0a0a0af2;padding:20px 0;position:fixed;top:0;left:0;right:0}.nav-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 20px;display:flex}.nav-logo{color:var(--text);align-items:center;gap:12px;font-size:24px;font-weight:600;display:flex}.nav-links{gap:32px;display:flex}.nav-links a{color:var(--text-secondary);font-weight:500;text-decoration:none;transition:color .3s}.nav-links a:hover{color:var(--text-primary)}.nav-actions{gap:12px;display:flex}.mobile-menu-btn{cursor:pointer;background:0 0;border:none;width:40px;height:40px;display:none}.mobile-menu-btn svg{width:24px;height:24px;fill:var(--text-primary)}.mobile-menu{border-bottom:1px solid var(--border-color);z-index:999;background:#0a0a0afa;flex-direction:column;gap:16px;padding:20px;display:none;position:fixed;top:80px;left:0;right:0}.mobile-menu.active{display:flex}.mobile-menu a{color:var(--text-primary);border-radius:var(--r-2);padding:12px;text-decoration:none;transition:background .3s}.mobile-menu a:hover{background:#ffffff0d}.hero{gap:var(--s-7);max-width:1200px;padding:calc(72px + var(--s-8))var(--s-5)var(--s-8);grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;margin:0 auto;display:grid}.hero-title{font-size:var(--fs-3xl);color:var(--text);max-width:14ch;line-height:1.02}.hero-subtitle{margin-top:var(--s-5);max-width:46ch;font-size:var(--fs-md);color:var(--text-2);line-height:1.6}.hero-actions{gap:var(--s-2);margin-top:var(--s-6);flex-wrap:wrap;display:flex}.hero-facts{gap:var(--s-6);margin:var(--s-7)0 0;padding-top:var(--s-4);border-top:1px solid var(--line);display:flex}.hero-facts dt{font-size:var(--fs-xs);color:var(--text-3);letter-spacing:.04em;text-transform:uppercase}.hero-facts dd{margin:var(--s-1)0 0;font-size:var(--fs-xl);color:var(--text)}.hero-specimen{padding:var(--s-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-3);margin:0;overflow-x:auto}.hero-specimen figcaption{margin-top:var(--s-3);font-size:var(--fs-xs);color:var(--text-3)}.hero-demo-head{justify-content:space-between;align-items:center;gap:var(--s-3);margin-bottom:var(--s-2);flex-wrap:wrap;display:flex}.hero-demo-title{color:var(--text);font-weight:600}.hero-demo-switch{border:1px solid var(--line-strong);border-radius:var(--r-2);display:inline-flex;overflow:hidden}.hero-demo-switch button{min-height:40px;padding:var(--s-1)var(--s-3);color:var(--text-2);font:inherit;cursor:pointer;background:0 0;border:0;font-size:13px}.hero-demo-switch button+button{border-left:1px solid var(--line-strong)}.hero-demo-switch button[aria-pressed=true]{background:var(--surface-3);color:var(--text)}.hero-demo-switch button:focus-visible{box-shadow:var(--focus)}.hero-demo .bw-row:last-child{border-bottom:0}.modules{max-width:1200px;padding:var(--s-8)var(--s-5);gap:var(--s-6);border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,3fr);margin:0 auto;display:grid}.modules>h2{font-size:var(--fs-xl);color:var(--text)}.module-index{margin:0;padding:0;list-style:none}.module-index li{gap:var(--s-4);padding:var(--s-4)0;border-bottom:1px solid var(--line);grid-template-columns:3ch minmax(0,12rem) minmax(0,1fr);align-items:baseline;display:grid}.module-no{font-size:var(--fs-xs);color:var(--accent)}.module-index h3{font-size:var(--fs-lg);color:var(--text)}.module-index p{font-size:var(--fs-sm);color:var(--text-2);max-width:60ch;line-height:1.6}.section-header{margin-bottom:var(--s-6)}.section-header h2{font-size:var(--fs-2xl);color:var(--text)}.section-header p{margin-top:var(--s-2);font-size:var(--fs-sm);color:var(--text-2);max-width:60ch}@media (max-width:900px){.hero{padding-top:calc(72px + var(--s-6));grid-template-columns:minmax(0,1fr)}.hero-title{font-size:var(--fs-2xl)}.modules{grid-template-columns:1fr}.module-index li{grid-template-columns:3ch minmax(0,1fr)}.module-index p{grid-column:2}}@media (max-width:480px){.hero-title{font-size:var(--fs-xl)}.hero-specimen{padding:var(--s-4)}}.section{padding:var(--s-8)0;border-top:1px solid var(--line)}.calculator-wrapper{max-width:1000px;margin:0 auto}.calculator-tabs{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:40px;display:flex}.calc-tab{color:var(--text-2);cursor:pointer;box-shadow:none;background:0 0;border:0;border-radius:0;padding:12px 24px;font-size:15px;font-weight:600;transition:all .3s}.calc-tab:hover{color:var(--text)}.calc-tab.active{color:var(--text);box-shadow:inset 0 -2px 0 var(--accent);background:0 0}.calculator-container{animation:.4s ease-out fadeIn}.calculator-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-3);padding:40px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.calc-input-group{margin-bottom:24px}.calc-input-group label{color:var(--text-secondary);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.calc-input-group input,.calc-input-group select{border:1px solid var(--border-color);border-radius:var(--r-2);width:100%;color:var(--text-primary);background:#ffffff0d;padding:14px 16px;font-size:16px;transition:all .3s}.calc-input-group input:focus,.calc-input-group select:focus{border-color:var(--accent);background:#ffffff14;outline:none}.calc-row{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.calc-results{border:1px solid var(--border-color);border-radius:var(--r-2);background:#ffffff05;margin-top:32px;padding:24px;display:none}.calc-results.show{display:block}.calc-results h4{color:var(--accent);margin-bottom:16px;font-size:20px}.result-row{border-bottom:1px solid var(--border-color);justify-content:space-between;padding:12px 0;display:flex}.result-row:last-child{border-bottom:none}.result-label{color:var(--text-secondary)}.result-value{font-weight:600}.result-highlight{color:var(--accent);font-size:24px;font-weight:600}.btn-secondary{border:1px solid var(--border-color);border-radius:var(--r-2);color:var(--text-primary);background:0 0;padding:10px 20px;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-secondary:hover{background:#ffffff0d;border-color:#ffffff1a}.btn-primary{background:var(--primary-gradient);border-radius:var(--r-2);color:var(--accent-ink);border:none;padding:10px 20px;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-danger{background:color-mix(in srgb,var(--bad)10%,transparent);border:1px solid color-mix(in srgb,var(--bad)30%,transparent);border-radius:var(--r-2);color:var(--bad);cursor:pointer;padding:10px 20px;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-danger:hover{background:color-mix(in srgb,var(--bad)20%,transparent);border-color:var(--bad)}.myostats-logo{align-items:center;gap:10px;line-height:1;display:inline-flex}.myostats-logo-word{letter-spacing:-.01em;color:var(--text);font-size:1em;font-weight:600}.pricing{background:var(--bg-secondary);padding:100px 20px}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;max-width:1000px;margin:0 auto;display:grid}.pricing-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-3);padding:40px;transition:all .3s;position:relative}.pricing-card.featured{border-color:var(--accent);box-shadow:0 0 30px color-mix(in srgb,var(--accent)20%,transparent)}.featured-badge{background:var(--primary-gradient);color:var(--accent-ink);border-radius:var(--r-3);text-transform:uppercase;padding:6px 16px;font-size:12px;font-weight:600;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.pricing-header{text-align:center;margin-bottom:32px}.pricing-header h3{margin-bottom:16px;font-size:24px}.price{justify-content:center;align-items:baseline;gap:4px;display:flex}.currency{color:var(--text-secondary);font-size:24px}.amount{color:var(--text);font-size:56px;font-weight:600}.period{color:var(--text-secondary);font-size:16px}.pricing-features{margin-bottom:32px;list-style:none}.pricing-features li{color:var(--text-secondary);border-bottom:1px solid var(--border-color);padding:12px 0}.pricing-features li:last-child{border-bottom:none}.btn-pricing{border:1px solid var(--border-color);border-radius:var(--r-2);width:100%;color:var(--text-primary);text-align:center;background:0 0;padding:14px;font-weight:600;text-decoration:none;transition:all .3s;display:block}.btn-pricing:hover{background:#ffffff0d}.btn-pricing.primary{background:var(--primary-gradient);color:var(--accent-ink);border-color:#0000}.disclaimer{max-width:1200px;padding:var(--s-8)var(--s-5);gap:var(--s-6);border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,3fr);margin:0 auto;display:grid}.disclaimer h2{font-size:var(--fs-xl);color:var(--text)}.disclaimer-body{max-width:64ch;font-size:var(--fs-sm);color:var(--text-2);line-height:1.7}.disclaimer-body p+p,.disclaimer-body ul+p{margin-top:var(--s-3)}.disclaimer-body ul{margin:var(--s-2)0 0 var(--s-5)}@media (max-width:900px){.disclaimer{grid-template-columns:1fr}}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:var(--s-7)0 var(--s-5)}.footer-content{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;margin-bottom:40px;display:grid}.footer-section h4{color:var(--accent);margin-bottom:16px;font-size:16px}.footer-section a{color:var(--text-secondary);margin-bottom:12px;text-decoration:none;transition:color .3s;display:block}.footer-section a:hover{color:var(--text-primary)}.footer-logo{color:var(--text);align-items:center;gap:12px;margin-bottom:16px;font-size:20px;font-weight:600;display:flex}.footer-section p{color:var(--text-secondary);line-height:1.6}.footer-bottom{text-align:center;border-top:1px solid var(--border-color);color:var(--text-secondary);padding-top:30px;font-size:14px}.footer-bottom p{margin-bottom:8px}@media (max-width:768px){.nav-links,.nav-actions{display:none}.mobile-menu-btn{display:block}.calc-row,.pricing-grid{grid-template-columns:1fr}}.dashboard-wrapper{background:var(--bg-primary);min-height:100vh;display:flex}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);z-index:260;flex-direction:column;width:260px;height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed}.sidebar-header{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding:30px 20px;display:flex}.sidebar-header h2{color:var(--text);font-size:20px;font-weight:600}.sidebar-nav{flex:1;padding:20px 0;overflow-y:auto}.nav-item{color:var(--text-secondary);align-items:center;gap:12px;padding:14px 20px;font-size:15px;font-weight:500;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--surface-2);color:var(--text-primary);box-shadow:inset 2px 0 0 var(--accent)}.nav-item.active:before{content:"";background:var(--primary-gradient);width:3px;position:absolute;top:0;bottom:0;left:0}.nav-icon{fill:currentColor;flex-shrink:0;width:22px;height:22px}.sidebar-footer{border-top:1px solid var(--border-color);flex-direction:column;gap:12px;padding:16px 20px 20px;display:flex}.sidebar-user{background:var(--bg-hover);border-radius:var(--r-2);align-items:center;gap:12px;padding:10px;display:flex}.sidebar-user-avatar{background:var(--primary-gradient);width:38px;height:38px;color:var(--accent-ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex;overflow:hidden}.sidebar-user-avatar img{object-fit:cover;width:100%;height:100%}.sidebar-user-info{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar-user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-user-email{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.btn-logout{border-radius:var(--r-2);width:100%;color:var(--text-3);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding:12px;font-size:14px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.btn-logout:hover{color:var(--text);background:var(--surface-2)}.btn-logout:disabled{opacity:.6;cursor:not-allowed}.btn-logout svg{fill:currentColor;width:18px;height:18px}.sidebar-mobile-toggle{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-2);cursor:pointer;z-index:300;width:44px;height:44px;transition:all var(--transition-base);justify-content:center;align-items:center;display:none;position:fixed;top:16px;left:16px}.sidebar-mobile-toggle svg{width:22px;height:22px;fill:var(--text-primary)}.sidebar-mobile-toggle.active{background:var(--bg-hover)}.sidebar-scrim{z-index:150;background:#0009;display:none;position:fixed;inset:0}.main-content{flex-direction:column;flex:1;min-width:0;max-width:100%;min-height:100vh;margin-left:260px;display:flex;overflow-x:hidden}.main-content>*{min-width:0;max-width:100%}.topbar{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:50;justify-content:space-between;align-items:center;height:70px;padding:0 30px;display:flex;position:sticky;top:0}.topbar-left{align-items:center;gap:20px;display:flex}.topbar-crumb{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}.topbar-right{align-items:center;gap:20px;display:flex}.badge{background:var(--bad);color:var(--accent-ink);border-radius:var(--r-3);text-align:center;min-width:18px;padding:2px 6px;font-size:10px;font-weight:600;position:absolute;top:-5px;right:-5px}.user-menu-wrapper{position:relative}.offline-badge{padding:2px var(--s-2);border:1px solid var(--warn);border-radius:var(--r-1);color:var(--warn);font-family:var(--font-plex-mono),monospace;letter-spacing:.04em;text-transform:uppercase;font-size:12px}.user-menu{background:var(--bg-hover);border-radius:var(--r-3);cursor:pointer;font:inherit;color:inherit;transition:all var(--transition-base);border:1px solid #0000;align-items:center;gap:12px;padding:8px 12px;display:flex}.user-menu:hover,.user-menu[aria-expanded=true]{background:var(--bg-card);border-color:var(--border-hover)}.avatar{object-fit:cover;border:2px solid var(--border-color);border-radius:50%;flex-shrink:0;width:36px;height:36px}.avatar-fallback{background:var(--primary-gradient);color:var(--accent-ink);justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.user-name{white-space:nowrap;font-size:14px;font-weight:600}.chevron{width:16px;height:16px;fill:var(--text-secondary);transition:transform var(--transition-base);flex-shrink:0}.chevron.open{transform:rotate(180deg)}.user-menu{anchor-name:--user-menu}.user-dropdown{margin:var(--s-2)0 0;position-anchor:--user-menu;position-area:bottom span-left;background:var(--bg-card);min-width:200px;color:var(--text);border:1px solid var(--border-color);border-radius:var(--r-2);box-shadow:var(--shadow-lg);opacity:1;transition:opacity var(--t-fast),translate var(--t-fast),display var(--t-fast)allow-discrete,overlay var(--t-fast)allow-discrete;padding:8px;inset:auto;translate:0}.user-dropdown:not(:popover-open){opacity:0;translate:0 -4px}@starting-style{.user-dropdown:popover-open{opacity:0;translate:0 -4px}}@supports not (position-area:bottom){.user-dropdown{position:fixed;top:64px;right:24px}}.user-menu-wrapper:has(.user-dropdown:popover-open) .chevron{rotate:180deg}.user-dropdown-item{border-radius:var(--r-1);width:100%;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.user-dropdown-item svg{fill:currentColor;flex-shrink:0;width:18px;height:18px}.user-dropdown-item:hover{background:var(--bg-hover)}.user-dropdown-item.danger{color:var(--bad)}.dashboard-container{flex:1;min-width:0;max-width:100%}.stat-value{margin-bottom:4px;font-size:28px;font-weight:600;display:block}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px;padding:0 30px 30px;display:grid}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-3);transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.card:hover{border-color:var(--border-hover)}.card-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.card-header h3{font-size:18px;font-weight:600}.card-body{padding:24px}.date-badge{background:var(--bg-hover);border-radius:var(--r-2);color:var(--text-secondary);padding:6px 12px;font-size:12px;font-weight:600}.dashboard-card-empty{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:30px 16px;display:flex}.dashboard-card-empty svg{fill:var(--text-secondary);opacity:.5;background:var(--bg-hover);box-sizing:content-box;border-radius:50%;padding:16px}.dashboard-card-empty p{color:var(--text-secondary);font-size:14px}.dashboard-card-hint{color:var(--text-secondary);text-align:center;padding:12px 0;font-size:13px}.get-started{grid-column:1/-1}.get-started-list{padding:0 var(--s-5);counter-reset:none;margin:0;list-style:none}.get-started-list li{gap:var(--s-3);padding:var(--s-3)0;border-bottom:1px solid var(--line);grid-template-columns:1.75rem minmax(0,1fr);align-items:start;display:grid}.get-started-list li:last-child{border-bottom:0}.get-started-mark{border:1px solid var(--line-strong);width:1.75rem;height:1.75rem;font-family:var(--font-plex-mono),monospace;color:var(--text-3);border-radius:50%;place-items:center;font-size:12px;display:grid}.get-started-list li.next .get-started-mark{border-color:var(--accent);color:var(--accent)}.get-started-list li.done .get-started-mark{border-color:var(--ok);color:var(--ok)}.get-started-label{color:var(--text);font-weight:500;line-height:1.75rem;text-decoration:none}a.get-started-label:hover,.get-started-list li.next a.get-started-label{color:var(--accent)}.get-started-list li.done .get-started-label{color:var(--text-3);text-decoration:line-through}.get-started-why{color:var(--text-2);margin:0;font-size:13px}.get-started-hide{margin:var(--s-2)var(--s-5)var(--s-4);color:var(--text-3);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px}.get-started-hide:hover{color:var(--text-2);text-decoration:underline}.today-card{grid-column:1/-1}.today-list{padding:0 var(--s-5)var(--s-2);grid-template-columns:7rem minmax(0,1fr) auto;margin:0;list-style:none;display:grid}.today-list li{grid-column:1/-1;grid-template-columns:subgrid;align-items:baseline;gap:var(--s-4);padding:var(--s-4)0;border-bottom:1px solid var(--line);display:grid}.today-list li:last-child{border-bottom:0}.today-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-size:12px;font-weight:600}.today-detail{gap:var(--s-1);color:var(--text);display:grid}.today-dose{justify-content:space-between;gap:var(--s-4);display:flex}.today-sub{color:var(--text-2);font-size:13px}.today-action{color:var(--accent);white-space:nowrap;font-size:13px;font-weight:600;text-decoration:none}.today-action:hover{text-decoration:underline}.today-progress{appearance:none;border-radius:var(--r-1);background:var(--line);width:100%;height:4px;accent-color:var(--accent);border:0}.today-progress::-webkit-progress-bar{background:var(--line);border-radius:var(--r-1)}.today-progress::-webkit-progress-value{background:var(--accent);border-radius:var(--r-1)}.today-progress::-moz-progress-bar{background:var(--accent);border-radius:var(--r-1)}@container (max-width:480px){.today-list{grid-template-columns:minmax(0,1fr) auto}.today-label{grid-column:1/-1}}.dashboard-card-link{border-top:1px solid var(--border-color);color:var(--accent);text-align:center;margin-top:16px;padding-top:16px;font-size:13px;font-weight:600;text-decoration:none;display:block}.dashboard-card-link:hover{text-decoration:underline}.dashboard-compound-list{flex-direction:column;gap:12px;display:flex}.dashboard-compound-item{border-radius:var(--r-2);border:1px solid var(--border-color);padding:14px 16px}.dashboard-compound-item-row{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:4px;display:flex}.dashboard-compound-name{font-size:14px;font-weight:600}.dashboard-compound-dose{white-space:nowrap;font-size:13px;font-weight:600}.dashboard-compound-meta{color:var(--text-secondary);font-size:12px}.dashboard-marker-list{flex-direction:column;gap:8px;display:flex}.dashboard-marker-row{background:var(--bg-hover);border-radius:var(--r-1);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.dashboard-marker-label{color:var(--text-secondary);font-size:13px;font-weight:500}.dashboard-marker-value{font-size:13px;font-weight:600}.dashboard-events-list{flex-direction:column;gap:10px;display:flex}.dashboard-event-item{background:var(--bg-hover);border-radius:var(--r-1);border-left:3px solid var(--accent);padding:12px 14px}.dashboard-event-item.urgent{border-left-color:var(--bad)}.dashboard-event-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-event-label{font-size:13px;font-weight:600}.dashboard-event-meta{color:var(--text-secondary);white-space:nowrap;font-size:12px}@media (max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.sidebar-mobile-toggle{display:flex}.sidebar-scrim{display:block}.topbar{padding:0 20px 0 70px}.user-name{display:none}.dashboard-grid{grid-template-columns:1fr;padding:20px}}.cycles-container{padding:30px}.action-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.action-bar .btn-primary{align-items:center;gap:8px;display:flex}.action-bar .btn-primary svg{fill:#fff;width:20px;height:20px}.filter-group{gap:12px;display:flex}.filter-group select{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-2);color:var(--text-primary);cursor:pointer;transition:all var(--transition-base);padding:10px 16px;font-size:14px;font-weight:600}.filter-group select:focus{border-color:var(--accent);outline:none}.cycles-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;display:grid}.cycle-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-3);transition:all var(--transition-base);cursor:pointer;overflow:hidden}.cycle-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-hover)}.cycle-card-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;padding:20px;display:flex}.cycle-card-title{flex:1}.cycle-card-title h3{margin-bottom:4px;font-size:18px;font-weight:600}.cycle-card-title p{color:var(--text-secondary);font-size:13px}.cycle-status{border-radius:var(--r-1);text-transform:uppercase;padding:6px 12px;font-size:12px;font-weight:600}.cycle-status.active{background:color-mix(in srgb,var(--ok)20%,transparent);color:var(--ok)}.cycle-status.planned{background:color-mix(in srgb,var(--info)20%,transparent);color:var(--info)}.cycle-status.completed{background:color-mix(in srgb,var(--text-2)20%,transparent);color:var(--text-2)}.cycle-card-body{padding:20px}.cycle-progress-bar{background:var(--bg-hover);border-radius:var(--r-2);height:8px;margin-bottom:16px;overflow:hidden}.cycle-progress-fill{background:var(--primary-gradient);border-radius:var(--r-2);height:100%;transition:width .3s}.cycle-info-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px;display:grid}.cycle-info-item{flex-direction:column;gap:4px;display:flex}.cycle-info-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.cycle-info-value{font-size:16px;font-weight:600}.cycle-compounds{margin-bottom:16px}.cycle-compounds h4{color:var(--text-secondary);margin-bottom:8px;font-size:14px}.cycle-card-actions{gap:8px;display:flex}.cycle-card-actions button{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--r-2);color:var(--text-primary);cursor:pointer;transition:all var(--transition-base);flex:1;padding:10px;font-size:14px;font-weight:600}.cycle-card-actions button:hover{background:var(--bg-card);border-color:var(--border-hover)}.cycle-card-actions button.primary{background:var(--primary-gradient);color:var(--accent-ink);border-color:#0000}.empty-state{text-align:center;border:1px dashed var(--border-color);border-radius:var(--r-3);background:var(--bg-card);flex-direction:column;align-items:center;padding:70px 32px;display:flex}.empty-state-icon{width:80px;height:80px;color:var(--text-2);border:1px solid var(--line);background:0 0;border-radius:50%;justify-content:center;align-items:center;margin-bottom:24px;display:flex}.empty-state-icon svg{fill:var(--text-secondary);opacity:.7}.empty-state svg{opacity:.5;fill:var(--text-secondary);margin-bottom:24px}.empty-state h3{margin-bottom:8px;font-size:22px;font-weight:600}.empty-state p{color:var(--text-secondary);max-width:420px;margin-bottom:24px}.empty-state .btn-primary{align-items:center;gap:8px;display:inline-flex}.modal{z-index:9999;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-overlay{z-index:1;background:#000c;position:fixed;inset:0}.modal-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-3);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-xl);z-index:2;margin:auto;position:relative;overflow-y:auto}.modal-body{padding:24px}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:12px;padding:24px;display:flex}.cycle-detail-content{display:none}.cycle-detail-content.active{display:block}.compounds-table{border-collapse:collapse;width:100%;margin-bottom:24px}.compounds-table th,.compounds-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:12px}.compounds-table th{background:var(--bg-hover);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.compounds-table tr:hover{background:var(--bg-hover)}.schedule-calendar{grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:24px;display:grid}.calendar-day{aspect-ratio:1;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--r-1);transition:all var(--transition-base);flex-direction:column;justify-content:center;align-items:center;font-size:12px;display:flex}.calendar-day.injection{background:color-mix(in srgb,var(--accent)20%,transparent);border-color:var(--accent)}.calendar-day.bloodwork{background:color-mix(in srgb,var(--bad)20%,transparent);border-color:var(--bad)}.calendar-day-number{margin-bottom:4px;font-weight:600}.calendar-day-label{color:var(--text-secondary);justify-content:center;align-items:center;font-size:10px;display:inline-flex}.cycle-form-section{margin-bottom:32px}.cycle-form-section h4{color:var(--accent);margin-bottom:16px;font-size:16px;font-weight:600}.compound-entry{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--r-2);margin-bottom:16px;padding:20px;position:relative}.concentration-chart-container{background:var(--bg-hover);border-radius:var(--r-2);margin-top:24px;padding:20px}.concentration-chart-container h4{margin-bottom:16px;font-size:16px;font-weight:600}#concentrationChart{max-height:300px}@media (max-width:768px){.cycles-container{padding:20px}.action-bar{flex-direction:column;align-items:stretch}.filter-group{flex-direction:column}.cycles-grid,.cycle-info-grid{grid-template-columns:1fr}.schedule-calendar{grid-template-columns:repeat(4,1fr)}}.profile-container{padding:30px}.profile-header{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:30px;margin-bottom:30px;padding:40px;display:flex}.profile-avatar-section{align-items:center;gap:24px;display:flex}.avatar-upload{width:120px;height:120px;position:relative}.profile-avatar{object-fit:cover;border:4px solid var(--border-color);border-radius:50%;width:100%;height:100%}.btn-upload{background:var(--primary-gradient);border:3px solid var(--bg-card);cursor:pointer;width:40px;height:40px;transition:all var(--transition-base);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:0;right:0}.btn-upload:disabled{cursor:not-allowed;opacity:.8}.btn-upload svg{fill:#fff;width:20px;height:20px}.btn-upload svg.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.profile-avatar-error{color:var(--bad);margin-top:4px;font-size:12px}.profile-info h2{margin-bottom:4px;font-size:28px;font-weight:600}.profile-info p{color:var(--text-secondary);margin-bottom:12px}.profile-badges{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.profile-badge{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--r-1);color:var(--text-secondary);padding:6px 12px;font-size:12px;font-weight:600;display:inline-block}.profile-badge.free{background:var(--primary-gradient);color:var(--accent-ink);border-color:#0000}.profile-badge-muted{color:var(--text-secondary);font-size:12px}.profile-avatar-fallback{background:var(--primary-gradient);color:var(--accent-ink);justify-content:center;align-items:center;font-size:42px;font-weight:600;display:flex}.profile-stats{gap:40px;display:flex}.profile-stat{text-align:center}.profile-stat .stat-value{color:var(--text);font-size:32px;font-weight:600;display:block}.profile-stat .stat-label{color:var(--text-secondary);margin-top:4px;font-size:13px;display:block}.profile-tabs{gap:var(--s-5);border:0;border-bottom:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;margin-bottom:30px;padding:0;display:flex;overflow-x:auto}.profile-tab{color:var(--text-2);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;box-shadow:none;background:0 0;border:0;border-radius:0;padding:12px 24px;font-size:15px;font-weight:600}.profile-tab:hover{color:var(--text)}.profile-tab.active{color:var(--text);box-shadow:inset 0 -2px 0 var(--accent);background:0 0}.profile-tab-content{display:none}.profile-tab-content.active{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));align-items:start;gap:24px;animation:.4s ease-out fadeIn;display:grid}@media (max-width:900px){.profile-tab-content.active{grid-template-columns:1fr}}@media (max-width:640px){.profile-container{padding:16px}.profile-header{gap:20px;padding:20px}.profile-avatar-section{gap:16px}.avatar-upload{width:80px;height:80px}.profile-avatar-fallback{font-size:28px}.btn-upload{width:32px;height:32px}.profile-info h2{font-size:22px}.profile-stats{flex-wrap:wrap;gap:20px;width:100%}}.btn-edit{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--r-1);color:var(--text-primary);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;display:flex}.btn-edit:hover{background:var(--bg-card);border-color:var(--border-hover)}.btn-edit svg{fill:currentColor;width:16px;height:16px}.form-row{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px;display:grid}.form-group{margin-bottom:20px}.form-group label{color:var(--text-secondary);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--r-2);width:100%;color:var(--text-primary);transition:all var(--transition-base);padding:12px 16px;font-family:inherit;font-size:15px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);background:var(--bg-card);outline:none}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{opacity:.6;cursor:not-allowed}.form-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.toggle-switch{width:50px;height:26px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background:var(--bg-hover);border:1px solid var(--border-color);transition:var(--transition-base);border-radius:var(--r-3);position:absolute;inset:0}.toggle-slider:before{content:"";width:18px;height:18px;transition:var(--transition-base);background:#fff;border-radius:50%;position:absolute;bottom:3px;left:3px}input:checked+.toggle-slider{background:var(--primary-gradient);border-color:#0000}input:checked+.toggle-slider:before{transform:translate(24px)}.security-option,.preference-item{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 0;display:flex}.security-option:last-child,.preference-item:last-child{border-bottom:none}.security-info h4,.preference-info h4{margin-bottom:4px;font-size:15px;font-weight:600}.security-info p,.preference-info p{color:var(--text-secondary);font-size:13px}.security-preview-tag{background:color-mix(in srgb,var(--accent)10%,transparent);border:1px solid color-mix(in srgb,var(--accent)30%,transparent);color:var(--accent);border-radius:999px;margin-top:6px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.security-success-banner{background:color-mix(in srgb,var(--ok)10%,transparent);border:1px solid color-mix(in srgb,var(--ok)30%,transparent);border-radius:var(--r-2);color:var(--ok);margin-bottom:20px;padding:12px 16px;font-size:14px;font-weight:500}.security-error-banner{background:color-mix(in srgb,var(--bad)10%,transparent);border:1px solid color-mix(in srgb,var(--bad)30%,transparent);border-radius:var(--r-2);color:var(--bad);margin-bottom:20px;padding:12px 16px;font-size:14px;font-weight:500}.password-strength{align-items:center;gap:10px;margin-top:8px;display:flex}.strength-bars{flex:1;gap:4px;display:flex}.strength-bars span{border-radius:var(--r-1);background:var(--bg-hover);height:4px;transition:background var(--transition-base);flex:1}.strength-label{color:var(--text-secondary);white-space:nowrap;font-size:12px;font-weight:600}.session-item{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 0;display:flex}.session-item:last-child{border-bottom:none}.session-info h4{margin-bottom:4px;font-size:15px;font-weight:600}.session-info p{color:var(--text-secondary);margin-bottom:4px;font-size:13px}.session-time{color:var(--text-muted);font-size:12px}.session-badge{border-radius:var(--r-1);padding:6px 12px;font-size:12px;font-weight:600}.session-badge.current{background:color-mix(in srgb,var(--ok)20%,transparent);color:var(--ok)}.danger-zone{border:1px solid color-mix(in srgb,var(--bad)30%,transparent)}.danger-zone .card-header{background:color-mix(in srgb,var(--bad)10%,transparent);border-bottom-color:color-mix(in srgb,var(--bad)30%,transparent)}.danger-zone .card-header h3{color:var(--bad)}.danger-action{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 0;display:flex}.danger-action:last-child{border-bottom:none}.danger-info h4{margin-bottom:4px;font-size:15px;font-weight:600}.danger-info p{color:var(--text-secondary);font-size:13px}.password-strength{background:var(--bg-hover);border-radius:var(--r-1);height:4px;margin-top:8px;overflow:hidden}@media (max-width:768px){.profile-container{padding:20px}.profile-header{flex-direction:column;align-items:flex-start;padding:24px}.profile-stats{justify-content:space-around;width:100%}.form-row,.profile-tab-content.active{grid-template-columns:1fr}}.workouts-container{padding:30px}.workouts-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px;display:grid}.workout-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-3);transition:all var(--transition-base);cursor:pointer;overflow:hidden}.workout-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-hover)}.workout-card-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;padding:20px;display:flex}.workout-card-title{flex:1}.workout-card-title h3{margin-bottom:4px;font-size:18px;font-weight:600}.workout-card-title p{color:var(--text-secondary);font-size:13px}.category-badge{border-radius:var(--r-1);text-transform:uppercase;padding:6px 12px;font-size:12px;font-weight:600}.workout-card-body{padding:20px}.workout-exercises{margin-bottom:16px}.workout-exercises h4{color:var(--text-secondary);margin-bottom:12px;font-size:14px}.exercise-preview{background:var(--bg-hover);border-radius:var(--r-2);transition:all var(--transition-base);align-items:center;gap:12px;margin-bottom:8px;padding:12px;display:flex}.exercise-preview:hover{background:var(--bg-card)}.exercise-icon{border-radius:var(--r-1);width:40px;height:40px;color:var(--text-2);border:1px solid var(--line);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.exercise-icon svg{fill:#fff;width:24px;height:24px}.exercise-info{flex:1}.exercise-name{margin-bottom:2px;font-weight:600}.exercise-details{color:var(--text-secondary);font-size:12px}.workout-card-actions{gap:8px;display:flex}.workout-card-actions button{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--r-2);color:var(--text-primary);cursor:pointer;transition:all var(--transition-base);flex:1;padding:12px;font-size:14px;font-weight:600}.workout-card-actions button:hover{background:var(--bg-card);border-color:var(--border-hover)}.workout-card-actions button.primary{background:var(--primary-gradient);color:var(--accent-ink);border-color:#0000}@media (max-width:768px){.workouts-container{padding:20px}.action-bar{flex-direction:column;align-items:stretch}.filter-group{flex-direction:column}.workouts-grid{grid-template-columns:1fr}}.toast-stack{z-index:10000;pointer-events:none;flex-direction:column;gap:10px;max-width:380px;display:flex;position:fixed;top:20px;right:20px}.toast{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-2);box-shadow:var(--shadow-lg);pointer-events:auto;align-items:flex-start;gap:10px;padding:14px 16px;animation:.25s cubic-bezier(.4,0,.2,1) toastIn;display:flex}@keyframes toastIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.toast-icon{flex-shrink:0;margin-top:1px;display:flex}.toast-message{color:var(--text-primary);flex:1;font-size:14px;font-weight:500;line-height:1.5}.toast-action{padding:var(--s-1)var(--s-2);border:1px solid var(--line-strong);border-radius:var(--r-1);color:var(--accent);font:inherit;cursor:pointer;background:0 0;flex-shrink:0;align-self:center;font-size:13px;font-weight:600}.toast-action:hover{background:var(--bg-hover)}.toast-close{color:var(--text-secondary);cursor:pointer;border-radius:var(--r-1);background:0 0;border:none;flex-shrink:0;padding:2px;display:flex}.toast-close:hover{color:var(--text-primary);background:var(--bg-hover)}.toast--success{border-left:3px solid var(--ok)}.toast--success .toast-icon{color:var(--ok)}.toast--error{border-left:3px solid var(--bad)}.toast--error .toast-icon{color:var(--bad)}.toast--warning{border-left:3px solid var(--accent)}.toast--warning .toast-icon{color:var(--accent)}.toast--info{border-left:3px solid var(--info)}.toast--info .toast-icon{color:var(--info)}@media (max-width:480px){.toast-stack{max-width:none;top:16px;left:16px;right:16px}}.confirm-modal-content{max-width:420px}.confirm-dialog{color:inherit;margin:auto;padding:0;position:fixed}.confirm-dialog::backdrop{background:#000c}.confirm-modal-content .modal-body h3{margin-bottom:10px;font-size:18px;font-weight:600}.confirm-modal-content .modal-body p{color:var(--text-secondary);font-size:14px;line-height:1.6}.table-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}@media (max-width:400px){html,body{overflow-x:hidden}.modal{padding:12px}.modal-body,.modal-footer,.card-header,.card-body,.dashboard-grid,.cycles-container,.workouts-container,.profile-container{padding:16px}.topbar{padding:0 16px 0 62px}.sidebar-header h2{font-size:17px}}.ms-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.ms-table caption{text-align:left;padding-bottom:var(--s-3);font-family:var(--font-display);font-size:var(--fs-lg);color:var(--text);font-weight:600}.ms-table th,.ms-table td{padding:var(--s-3)var(--s-4)var(--s-3)0;border-bottom:1px solid var(--line);text-align:left;font-weight:400}.ms-table thead th{font-size:var(--fs-xs);color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;border-bottom-color:var(--line-strong)}.ms-table tbody th{color:var(--text);font-weight:500}.ms-table .num{text-align:right;color:var(--text)}.ms-table .unit{font-size:var(--fs-xs);color:var(--text-3);margin-left:2px}.ms-table .is-over{color:var(--bad)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.cy-chip-dot{width:8px;height:8px;margin-right:var(--s-2);vertical-align:middle;border-radius:50%;flex-shrink:0;display:inline-block}.drawer-root{z-index:1000;position:fixed;inset:0}.drawer-backdrop{transition:opacity var(--t-base);background:#0000008c;position:absolute;inset:0}.drawer{background:var(--surface);border-left:1px solid var(--line-strong);width:min(560px,100vw);transition:translate .24s var(--ease);outline:none;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-16px 0 40px #00000073}@starting-style{.drawer{translate:100%}.drawer-backdrop{opacity:0}}.drawer--sm{width:min(440px,100vw)}.drawer--lg{width:min(760px,100vw)}.drawer-header{justify-content:space-between;align-items:flex-start;gap:var(--s-4);padding:var(--s-5)var(--s-5)var(--s-4);border-bottom:1px solid var(--line);display:flex}.drawer-heading h2{font-size:var(--fs-xl);color:var(--text)}.drawer-heading p{margin-top:var(--s-1);font-size:var(--fs-sm);color:var(--text-2);line-height:1.5}.drawer-close{border-radius:var(--r-2);width:36px;height:36px;color:var(--text-2);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;place-items:center;margin:-6px -8px 0 0;display:grid}.drawer-close:hover{color:var(--text);border-color:var(--line-strong)}.drawer-toolbar{padding:0 var(--s-5);border-bottom:1px solid var(--line)}.drawer-form{flex-direction:column;flex:1;min-height:0;display:flex}.drawer-body{overscroll-behavior:contain;min-height:0;padding:var(--s-5);flex:1;overflow-y:auto}.drawer-footer{justify-content:flex-end;align-items:center;gap:var(--s-2);padding:var(--s-4)var(--s-5);border-top:1px solid var(--line);background:var(--surface);display:flex}.drawer-footer .footer-start{margin-right:auto}.drawer .form-group{margin-bottom:var(--s-4)}.drawer label{margin-bottom:var(--s-1);font-size:var(--fs-sm);color:var(--text);font-weight:500;display:block}.drawer input:not([type=checkbox]):not([type=radio]),.drawer select,.drawer textarea{width:100%;padding:var(--s-2)var(--s-3);background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--r-2);color:var(--text);font:inherit;font-size:var(--fs-sm)}.drawer input:focus,.drawer select:focus,.drawer textarea:focus{border-color:var(--accent);outline:none}.drawer .form-hint{margin-top:var(--s-1);font-size:var(--fs-xs);color:var(--text-3)}.drawer-tabs{gap:var(--s-5);scrollbar-width:none;display:flex;overflow-x:auto}.drawer-tabs::-webkit-scrollbar{display:none}.drawer-tabs button{padding:var(--s-3)0;color:var(--text-2);font:inherit;font-size:var(--fs-sm);white-space:nowrap;cursor:pointer;background:0 0;border:0;font-weight:500}.drawer-tabs button:hover{color:var(--text)}.drawer-tabs button.active{color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}.drawer label>input:not([type=checkbox]):not([type=radio]),.drawer label>select,.drawer label>textarea{margin-top:var(--s-1);font-weight:400;display:block}.drawer .form-row{gap:0 var(--s-3);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));display:grid}.sidebar{view-transition-name:sidebar}.topbar{view-transition-name:topbar}::view-transition-old(root){animation:.12s var(--ease)both vt-fade-out}::view-transition-new(root){animation:.2s var(--ease)both vt-lift-in}::view-transition-old(*.drawer){animation:.22s var(--ease)both vt-slide-out}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-lift-in{0%{opacity:0;translate:0 6px}}@keyframes vt-slide-out{to{translate:100%}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}.card,.drawer-body{container-type:inline-size}.dashboard-container{container:dashboard/inline-size}@container dashboard (max-width:860px){.dashboard-grid{grid-template-columns:minmax(0,1fr)}}@container (max-width:360px){.quick-actions-grid,.cycle-info-grid{grid-template-columns:minmax(0,1fr)}}@container (max-width:420px){.ms-table th,.ms-table td{padding-right:var(--s-2)}}@supports (animation-timeline:scroll()){.topbar{border-bottom-color:#0000;animation:linear both raise-rule;animation-timeline:scroll(root);animation-range:0 32px}.drawer{timeline-scope:--drawer-body}.drawer-body{scroll-timeline:--drawer-body block}.drawer-header{border-bottom-color:#0000;animation:linear both raise-rule;animation-timeline:--drawer-body;animation-range:0 24px}}@keyframes raise-rule{to{border-bottom-color:var(--line-strong)}}.bw-zone-bar{border-radius:var(--r-2);background:var(--bg-primary);height:10px;margin:10px 0 6px;position:relative;overflow:visible}.bw-zone-healthy{border-radius:var(--r-2);background:color-mix(in srgb,var(--ok)16%,transparent);border:1px solid color-mix(in srgb,var(--ok)30%,transparent);position:absolute;top:0;bottom:0}.bw-zone-dot{border:3px solid var(--bg-card);width:16px;height:16px;transition:left .6s var(--ms-ease,ease);border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #0006}.bw-zone-dot.good{background:var(--ok)}.bw-zone-dot.warning{background:var(--warn)}.bw-zone-dot.danger{background:var(--bad)}.bw-rows{margin:0;padding:0;list-style:none}.bw-row{gap:var(--s-1)var(--s-4);padding:var(--s-3)0;border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;display:grid}.bw-row-name{color:var(--text);font-weight:500}.bw-row-value{font-family:var(--font-plex-mono),monospace;text-align:right;color:var(--text)}.bw-row-value .marker-unit{margin-left:var(--s-1);color:var(--text-3)}.bw-row .bw-line{grid-column:1/-1}.bw-row-verdict{color:var(--text-2);grid-column:1/-1;font-size:13px}.bw-row-verdict.warning{color:var(--warn)}.bw-row-verdict.danger{color:var(--bad)}.bw-row-note{color:var(--text-2);grid-column:1/-1;margin:0;font-size:13px;line-height:1.5}.bw-category{margin:var(--s-6)0 var(--s-2);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-size:13px;font-weight:600}.bw-category:first-child{margin-top:0}.bw-zone-labels{color:var(--text-secondary);justify-content:space-between;font-size:11px;display:flex}.card-open{all:unset;cursor:pointer;border-radius:var(--r-1)}.card-open:focus-visible{box-shadow:var(--focus)}.skip-link{top:var(--s-2);left:var(--s-2);z-index:10001;padding:var(--s-2)var(--s-4);background:var(--accent);color:var(--bg);border-radius:var(--r-2);font-weight:600;position:fixed;translate:0 -200%}.skip-link:focus{translate:0}.main-content:focus{outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
