@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/build/assets/figtree-latin-400-normal-g7Dtegnw.woff2) format("woff2"),url(/build/assets/figtree-latin-400-normal-BD4aNku5.woff) format("woff")}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:500;src:url(/build/assets/figtree-latin-500-normal-BWnGEVsr.woff2) format("woff2"),url(/build/assets/figtree-latin-500-normal-B_yy1phn.woff) format("woff")}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/build/assets/figtree-latin-600-normal-Cv_xCTDl.woff2) format("woff2"),url(/build/assets/figtree-latin-600-normal-BM_oTo4n.woff) format("woff")}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/build/assets/figtree-latin-700-normal-th6qEP7c.woff2) format("woff2"),url(/build/assets/figtree-latin-700-normal-BCCt2T1q.woff) format("woff")}[x-cloak]{display:none!important}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:88px}body{margin:0;background:var(--bg);color:var(--text);font:400 1rem/1.6 var(--f-body);-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--hdr-bg)}img,svg{max-width:100%}a{color:var(--link);text-underline-offset:3px}h1,h2,h3{font-family:var(--f-display);text-wrap:balance;margin:0}p{margin:0}button,input,select{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.wrap{width:100%;max-width:1200px;margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip{position:absolute;left:8px;top:-60px;z-index:100;background:var(--surface);padding:10px 14px;border-radius:8px}.skip:focus{top:8px}.ic{width:22px;height:22px;flex:none}.ic--xs{width:14px;height:14px}.ic--sm{width:18px;height:18px}.ic--lg{width:30px;height:30px}.eyebrow{font:600 .78rem/1.3 var(--f-label);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-text)}.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--hdr-bg);border-bottom:1px solid var(--line);transition:box-shadow .2s}.hdr.is-condensed{box-shadow:var(--shadow-hdr)}.hdr__bar{display:flex;align-items:center;gap:8px;height:60px;transition:height .2s}.hdr.is-condensed .hdr__bar{height:54px}.hdr__icon{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:44px;height:44px;padding:0 8px;border:0;border-radius:var(--r-sm);background:transparent;cursor:pointer;color:var(--text)}.hdr__icon .ic{display:block}.hdr__icon:hover{background:var(--surface-2)}.logo{display:inline-flex;align-items:center;gap:8px;color:var(--text);text-decoration:none;margin-inline-end:auto}.logo__img{display:block;width:auto;height:42px}@media(min-width:768px){.logo__img{height:46px}}.ftr .logo__img{height:56px}.logo__img--dark{display:none}.ftr .logo__img--dark,[data-theme=dark] .logo__img--dark{display:block}[data-theme=dark] .logo__img--light{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .logo__img--dark{display:block}:root:not([data-theme=light]) .logo__img--light{display:none}}.hdr__actions{display:flex;align-items:center;gap:2px}.hdr__search{display:inline-flex;align-items:center;gap:8px;min-width:44px;height:44px;padding:0 10px;border:0;border-radius:var(--r-pill);background:transparent;color:var(--text);cursor:pointer}.hdr__search-label,.hdr__search kbd{display:none}.lang{position:relative}.lang__code{display:none;font:600 .8rem var(--f-label)}.lang__menu{position:absolute;inset-inline-end:0;top:calc(100% + 6px);min-width:180px;margin:0;padding:6px;list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-pop)}.lang__menu a{display:block;padding:10px 12px;border-radius:var(--r-sm);color:var(--text);text-decoration:none}.lang__menu a:hover,.lang__menu a[aria-current]{background:var(--surface-2)}.lang__menu a[aria-current]:after{content:" ✓";color:var(--accent-text)}.mega-nav{display:none}@media(min-width:1024px){.hdr__menu-btn{display:none}.logo{margin-inline-end:12px}.mega-nav{display:block;margin-inline-end:auto}.mega-nav__list{display:flex;gap:2px;margin:0;padding:0;list-style:none}.mega-nav__trigger{display:inline-flex;align-items:center;gap:4px;height:40px;white-space:nowrap;padding:0 10px;border:0;border-radius:var(--r-sm);background:transparent;font:500 .94rem var(--f-body);color:var(--text);text-decoration:none;cursor:pointer}.mega-nav__trigger:hover,.mega-nav__trigger[aria-expanded=true]{background:var(--surface-2)}.mega{position:absolute;inset-inline:0;top:100%;background:var(--surface);border-block:1px solid var(--line);box-shadow:var(--shadow-pop)}.mega__inner{display:grid;grid-template-columns:260px 1fr;gap:40px;padding-block:28px 32px}.mega__title{margin-top:12px;font:700 1.25rem/1.2 var(--f-display)}.mega__desc{margin-top:6px;color:var(--muted);font-size:.94rem}.mega__all{display:inline-flex;align-items:center;gap:6px;margin-top:16px;font-weight:600;color:var(--accent-text);text-decoration:none}.mega__cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.mega__sub{font:600 .82rem var(--f-label);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-bottom:8px;border-bottom:1px solid var(--line)}.mega__sub a{color:inherit;text-decoration:none}.mega__sub span{font-weight:400}.mega__col ul{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:2px}.mega__col li a{display:block;padding:6px 0;color:var(--text);text-decoration:none;font-size:.95rem}.mega__col li a:hover{color:var(--accent-text)}.hdr__search{min-width:240px;height:40px;padding:0 12px;background:var(--surface-2);border:1px solid var(--line);color:var(--muted)}.hdr__search-label{display:inline;font-size:.92rem}.hdr__search kbd{display:inline;margin-inline-start:auto;padding:1px 7px;border:1px solid var(--line);border-radius:6px;font:500 .75rem var(--f-label)}.lang__code{display:inline}}@media(min-width:1024px)and (max-width:1180px){.hdr__search{min-width:44px}.hdr__search-label,.hdr__search kbd{display:none}}.drawer{position:fixed;inset:0;z-index:70}.drawer__scrim{position:absolute;inset:0;background:var(--scrim)}.drawer__panel{position:absolute;inset-block:0;inset-inline-start:0;width:min(88vw,380px);display:flex;flex-direction:column;background:var(--surface);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);overflow-y:auto}.drawer-in{animation:slideIn .22s ease-out}.drawer-out{animation:slideIn .16s ease-in reverse}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:none}}[dir=rtl] .drawer-in{animation-name:slideInR}@keyframes slideInR{0%{transform:translate(100%)}}.drawer__top{display:flex;align-items:center;gap:4px;padding:8px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface)}.drawer__title{flex:1;font:700 1.05rem var(--f-display);padding-inline-start:8px}.drawer__list{margin:0;padding:8px;list-style:none}.drawer__row{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:6px 8px;border:0;border-radius:var(--r-sm);background:transparent;text-align:start;cursor:pointer}.drawer__row:hover{background:var(--surface-2)}.drawer__name{flex:1;display:flex;flex-direction:column;font-weight:600}.drawer__name small{font-weight:400;color:var(--muted);font-size:.85rem}.drawer__level{padding:8px 16px 16px}.drawer__all{display:flex;align-items:center;justify-content:space-between;min-height:48px;font-weight:700;color:var(--accent-text);text-decoration:none}.drawer__sub{margin-top:14px;font:600 .8rem var(--f-label);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.drawer__tools{margin:4px 0 0;padding:0;list-style:none}.drawer__tools a{display:flex;align-items:center;min-height:44px;color:var(--text);text-decoration:none;border-bottom:1px solid var(--line)}.drawer__foot{margin-top:auto;display:flex;flex-wrap:wrap;gap:4px 16px;padding:16px;border-top:1px solid var(--line)}.drawer__foot a{color:var(--muted);font-size:.9rem;min-height:32px;display:inline-flex;align-items:center}.search-ov{position:fixed;inset:0;z-index:80;background:var(--scrim);padding-top:env(safe-area-inset-top,0px)}.search-ov__box{max-width:720px;background:var(--surface);padding-block:12px 20px;min-height:100%}@media(min-width:768px){.search-ov{padding-top:80px}.search-ov__box{min-height:0;border-radius:var(--r-lg);padding-block:16px 24px;box-shadow:var(--shadow-pop)}}.search-field{position:relative;display:flex;align-items:center;gap:10px;min-height:56px;padding:6px 6px 6px 16px;background:var(--field-bg);border:1.5px solid var(--field-line);border-radius:var(--r-field);color:var(--muted)}.search-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--ring)}.search-field input{flex:1;min-width:0;height:44px;border:0;background:transparent;outline:none;font-size:1.05rem;color:var(--text)}.search-field input::placeholder{color:var(--muted);opacity:1}.search-field input::-webkit-search-cancel-button{display:none}.search-field--sm{min-height:48px}.search-field--overlay{border-width:0 0 1.5px;border-radius:0;box-shadow:none!important;padding-inline:4px}.suggest{margin:8px 0 0;padding:6px;list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}.suggest--float{position:absolute;inset-inline:0;top:calc(100% + 6px);z-index:20;box-shadow:var(--shadow-pop)}.suggest__row{display:flex;align-items:center;gap:12px;min-height:48px;padding:6px 10px;border-radius:var(--r-sm);color:var(--text);text-decoration:none}.suggest__row:hover,.suggest__row.is-active{background:var(--surface-2)}.suggest__dot{width:10px;height:10px;border-radius:50%;background:var(--cat);flex:none}.suggest__name{flex:1;font-weight:600}.suggest__cat{color:var(--muted);font-size:.85rem}.suggest-empty{padding:16px 4px;display:grid;gap:8px;color:var(--muted)}.search-ov__popular{padding-top:16px;display:grid;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border:1.5px solid transparent;border-radius:var(--r-btn);font:600 1rem var(--f-body);text-decoration:none;cursor:pointer;transition:background .15s,transform .15s}.btn--primary{background:var(--accent);color:var(--accent-ink)}.btn--primary:hover{background:var(--accent-hover)}.btn--primary:active{transform:translateY(1px)}.btn--ghost{background:transparent;color:var(--text);border-color:var(--line-strong)}.btn--ghost:hover{background:var(--surface-2)}.btn--soft{background:var(--surface);color:var(--text);border-color:var(--line)}.btn--lg{min-height:54px;padding:0 26px;font-size:1.06rem}.btn--sm{min-height:40px;padding:0 14px;font-size:.92rem}.btn:disabled{opacity:.5;cursor:not-allowed}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:var(--r-pill);background:var(--chip-bg);color:var(--text);border:1px solid var(--line);font-size:.92rem;font-weight:500;text-decoration:none}.chip:hover{border-color:var(--accent);color:var(--accent-text)}.tag{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:var(--r-pill);font:700 .7rem var(--f-label);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.tag--popular{background:var(--tag-pop-bg);color:var(--tag-pop)}.tag--new{background:var(--tag-new-bg);color:var(--tag-new)}.tag--under{background:color-mix(in srgb,var(--under) 16%,transparent);color:var(--under)}.tag--healthy{background:color-mix(in srgb,var(--healthy) 16%,transparent);color:var(--healthy)}.tag--over{background:color-mix(in srgb,var(--over) 18%,transparent);color:var(--over)}.tag--obese{background:color-mix(in srgb,var(--obese) 16%,transparent);color:var(--obese)}.select{min-height:44px;padding:0 36px 0 12px;border:1.5px solid var(--field-line);border-radius:var(--r-field);background:var(--field-bg);font-size:1rem}.cat-ico{display:grid;place-items:center;width:48px;height:48px;flex:none;border-radius:var(--r-ico);background:color-mix(in srgb,var(--cat) var(--ico-mix),var(--surface));color:var(--cat-ink, var(--cat))}.cat-ico--sm{width:40px;height:40px}.cat-ico--sm .ic{width:20px;height:20px}.cat-ico--lg{width:64px;height:64px}.cat-ico--lg .ic{width:32px;height:32px}.sec{padding-block:28px}.sec--tight{padding-block:8px 20px}.sec__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.sec__title{font-size:var(--fs-h2);line-height:1.2;margin-bottom:16px}.sec__head .sec__title{margin:0}.sec__more{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--accent-text);text-decoration:none}@media(min-width:768px){.sec{padding-block:40px}}.hero{padding-block:28px 32px;background:var(--hero-bg);border-bottom:1px solid var(--line)}.hero__inner{display:grid;gap:28px}.hero__title{margin-top:10px;font-size:var(--fs-hero);line-height:1.08;letter-spacing:var(--hero-track)}.hero__lead{margin-top:14px;max-width:58ch;font-size:1.06rem;color:var(--muted)}.hero-search{position:relative;margin-top:22px;max-width:640px}.hero-search .btn{display:none}.quick{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px}.quick__label{font-size:.9rem;color:var(--muted);margin-inline-end:2px}.hero__art,.hero__readout,.hero__note{display:none}@media(min-width:480px){.hero-search .btn{display:inline-flex}}@media(min-width:1024px){.hero{padding-block:64px 72px}.hero__inner{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);align-items:center;gap:56px}.hero__art,.hero__readout,.hero__note{display:block}}.cat-grid{display:grid;gap:12px}@media(min-width:768px){.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}@media(min-width:1024px){.cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1280px){.cat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cat-grid .cat-card:nth-child(n+9){grid-column:span 2}}.cat-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.cat-card__main{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;padding:16px;color:var(--text);text-decoration:none}.cat-card__main .cat-ico{grid-row:span 2}.cat-card__body{display:flex;flex-direction:column;gap:2px;min-width:0}.cat-card__name{font:700 1.1rem/1.3 var(--f-display)}.cat-card__desc{color:var(--muted);font-size:.94rem;line-height:1.45}.cat-card__count{grid-column:2;font:600 .8rem var(--f-label);color:var(--muted);letter-spacing:.02em}.cat-card__links{display:flex;flex-wrap:wrap;gap:6px;margin:auto 0 0;padding:0 16px 16px;list-style:none}.cat-card__links a{display:inline-flex;align-items:center;min-height:34px;padding:0 10px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--text);font-size:.86rem;text-decoration:none}.cat-card__links a:hover{color:var(--accent-text)}.cat-card:hover{border-color:color-mix(in srgb,var(--cat) 45%,var(--line))}.tool-grid{display:grid;gap:10px}@media(min-width:768px){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}@media(min-width:1024px){.tool-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tool-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}}.tool-card{display:flex;align-items:flex-start;gap:12px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);color:var(--text);text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s}.tool-card__body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.tool-card__name{font-weight:700;line-height:1.3}.tool-card__desc{color:var(--muted);font-size:.9rem;line-height:1.45}.tool-card .tag{margin-inline-start:auto}@media(hover:hover){.tool-card:hover{border-color:color-mix(in srgb,var(--cat) 50%,var(--line));transform:translateY(-2px);box-shadow:var(--shadow-card)}}.why{display:grid;gap:12px}@media(min-width:768px){.why{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}@media(min-width:1024px){.why{grid-template-columns:repeat(4,minmax(0,1fr))}}.why__item{padding:20px;border-radius:var(--r-card);background:var(--why-bg);color:var(--text)}.why__item .ic{color:var(--accent-text)}.why__item h3{margin-top:12px;font-size:1.1rem}.why__item p{margin-top:6px;color:var(--muted);font-size:.95rem}.dir{display:grid;gap:8px}@media(min-width:768px){.dir{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.dir__group{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}.dir__group summary{display:flex;align-items:center;gap:12px;min-height:60px;padding:8px 14px;cursor:pointer;list-style:none}.dir__group summary::-webkit-details-marker{display:none}.dir__name{flex:1;font-weight:700}.dir__count{font:600 .82rem var(--f-label);color:var(--muted)}.dir__chev{transition:transform .2s;color:var(--muted)}.dir__group[open] .dir__chev{transform:rotate(180deg)}.dir__group ul{margin:0;padding:0 14px 12px 66px;list-style:none;columns:1}@media(min-width:480px){.dir__group ul{columns:2;column-gap:20px}}.dir__group li a{display:flex;justify-content:space-between;gap:8px;min-height:40px;align-items:center;color:var(--text);text-decoration:none;font-size:.95rem;break-inside:avoid}.dir__group li a span{color:var(--muted);font-size:.82rem}.dir__group li a:hover{color:var(--accent-text)}.prose{max-width:70ch}.prose h2{font-size:var(--fs-h2);line-height:1.25;margin:36px 0 12px}.prose h3{font-size:1.2rem;margin:24px 0 8px}.prose>:first-child{margin-top:0}.prose p{margin:12px 0}.prose ul,.prose ol{padding-inline-start:1.4em}.prose li{margin:6px 0}.about .prose{margin-inline:0}.faq{display:grid;gap:8px;max-width:820px}.faq__item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}.faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:12px 16px;font-weight:700;cursor:pointer;list-style:none}.faq__item summary::-webkit-details-marker{display:none}.faq__chev{color:var(--muted);transition:transform .2s}.faq__item[open] .faq__chev{transform:rotate(180deg)}.faq__item p{padding:0 16px 16px;color:var(--muted)}.ad{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;margin-block:16px;border:1px dashed var(--ad-line);border-radius:var(--r-sm);background:var(--ad-bg);color:var(--muted);text-align:center}.ad__k{font:600 .66rem var(--f-label);letter-spacing:.18em;text-transform:uppercase}.ad__s{font:500 .74rem var(--f-label);opacity:.8}.ad--wide{min-height:280px}.ad--box{min-height:280px;max-width:336px;margin-inline:auto}.ad--footer{min-height:100px}.ad--side{min-height:600px}@media(min-width:768px){.ad--wide,.ad--footer{min-height:110px}}.ad--anchor{position:fixed;inset-inline:0;bottom:0;z-index:40;margin:0;min-height:calc(58px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);border-radius:0;border-width:1px 0 0;border-style:solid;background:var(--surface)}body{padding-bottom:58px}@media(min-width:768px){.ad--anchor{display:none}body{padding-bottom:0}}.ftr{margin-top:24px;background:var(--ftr-bg);color:var(--ftr-text);border-top:1px solid var(--line)}.ftr__grid{display:grid;gap:28px;padding-block:36px}@media(min-width:768px){.ftr__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ftr__brand{grid-column:1 / -1}}@media(min-width:1024px){.ftr__grid{grid-template-columns:1.4fr 1fr 1fr 1fr}.ftr__brand{grid-column:auto}}.ftr .logo{color:var(--ftr-text)}.ftr__brand p{margin-top:12px;max-width:40ch;color:var(--ftr-muted);font-size:.95rem}.ftr__social{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:14px}.ftr__social a,.ftr__col a,.ftr__langs a{color:var(--ftr-muted);text-decoration:none}.ftr__social a:hover,.ftr__col a:hover,.ftr__langs a:hover{color:var(--ftr-text);text-decoration:underline}.ftr__h{font:700 .8rem var(--f-label);letter-spacing:.1em;text-transform:uppercase;color:var(--ftr-text)}.ftr__col ul{margin:10px 0 0;padding:0;list-style:none}.ftr__col li a{display:inline-flex;min-height:36px;align-items:center;font-size:.95rem}.ftr__base{display:grid;gap:10px;padding-block:18px 24px;border-top:1px solid var(--ftr-line);color:var(--ftr-muted);font-size:.85rem}.ftr__langs{display:flex;flex-wrap:wrap;gap:4px 14px}.crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0;padding:0;list-style:none;font-size:.88rem;color:var(--muted)}.crumbs li+li:before{content:"/";margin-inline-end:4px;opacity:.6}.crumbs a{color:var(--muted);text-decoration:none;display:inline-flex;min-height:32px;align-items:center}.crumbs a:hover{color:var(--accent-text);text-decoration:underline}.cat-hero{padding-block:16px 20px;background:var(--cat-hero-bg);border-bottom:1px solid var(--line)}.cat-hero__row{display:flex;align-items:flex-start;gap:16px;margin-top:10px}.cat-hero__row .cat-ico{display:none}.page-title{font-size:var(--fs-h1);line-height:1.12;letter-spacing:var(--hero-track)}.page-lead{margin-top:10px;max-width:64ch;color:var(--muted);font-size:1.04rem}.page-lead--one{margin-top:6px}.subcats{display:flex;gap:8px;margin-top:18px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.subcat{display:inline-flex;align-items:center;gap:8px;flex:none;min-height:44px;padding:0 14px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);color:var(--text);text-decoration:none;font-weight:600;font-size:.94rem}.subcat__count{font:600 .78rem var(--f-label);color:var(--muted)}.subcat:hover{border-color:var(--cat)}@media(min-width:768px){.cat-hero{padding-block:24px 28px}.cat-hero__row .cat-ico{display:grid}.subcats{flex-wrap:wrap;overflow:visible}}.cat-layout,.tool-layout{display:grid;gap:24px;padding-block:20px 0}.cat-main,.tool-content{min-width:0}.cat-aside,.tool-aside{display:none}@media(min-width:1024px){.cat-layout,.tool-layout{grid-template-columns:minmax(0,1fr) 300px;gap:48px}.cat-aside,.tool-aside{display:block}.sticky{position:sticky;top:76px;display:grid;gap:16px}}.feat{display:grid;gap:10px}@media(min-width:768px){.feat{grid-template-columns:repeat(3,minmax(0,1fr))}}.feat__card{position:relative;display:flex;flex-direction:row;align-items:center;gap:14px;padding:16px;border-radius:var(--r-card);background:var(--feat-bg);border:1px solid var(--line);color:var(--text);text-decoration:none}.feat__rank{font:700 1.6rem/1 var(--f-display);color:var(--cat)}.feat__body{display:flex;flex-direction:column;gap:2px}.feat__name{font-weight:700;font-size:1.05rem}.feat__desc{color:var(--muted);font-size:.92rem}.feat__uses{display:none;font:500 .8rem var(--f-label);color:var(--muted)}.feat__body{flex:1;min-width:0}@media(min-width:768px){.feat__card{flex-direction:column;align-items:stretch;gap:10px}.feat__uses{display:block}}.toolbar{position:sticky;top:calc(54px + env(safe-area-inset-top,0px));z-index:5;display:grid;gap:10px;margin-block:8px 4px;padding-block:10px;background:var(--bg)}.toolbar__right{display:flex;align-items:center;justify-content:space-between;gap:12px}.toolbar__count{font:500 .9rem var(--f-label);color:var(--muted)}@media(min-width:768px){.toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:center}}.group{padding-block:20px 8px}.group__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.group__title{font-size:1.3rem}.group__all{display:inline-flex;align-items:center;gap:4px;min-height:40px;font-weight:600;color:var(--accent-text);text-decoration:none;white-space:nowrap}.list-grid{display:grid;gap:8px;margin:0;padding:0;list-style:none}@media(min-width:768px){.list-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}@media(min-width:1280px){.list-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.list-grid>li{display:flex}.list-grid .tool-card{flex:1}.tool-card--compact{padding:12px}.empty{padding:24px;text-align:center;color:var(--muted);border:1px dashed var(--line-strong);border-radius:var(--r-md)}.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-block:20px}.pager__pages{display:flex;gap:4px;align-items:center}.pager__pages a{display:grid;place-items:center;min-width:44px;height:44px;border-radius:var(--r-sm);color:var(--text);text-decoration:none}.pager__pages a[aria-current]{background:var(--accent);color:var(--accent-ink);font-weight:700}.callout{display:flex;gap:12px;padding:14px 16px;margin:18px 0;border-radius:var(--r-md);border:1px solid}.callout p{margin:0}.callout .ic{margin-top:2px}.callout--info{background:var(--info-bg);border-color:var(--info-line)}.callout--info .ic{color:var(--info)}.callout--tip{background:var(--tip-bg);border-color:var(--tip-line)}.callout--tip .ic{color:var(--tip)}.callout--warn{background:var(--warn-bg);border-color:var(--warn-line)}.callout--warn .ic{color:var(--warn)}.rel-cats{display:grid;gap:8px}@media(min-width:768px){.rel-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.rel-cats{grid-template-columns:repeat(4,minmax(0,1fr))}}.rel-cat{display:flex;align-items:center;gap:10px;min-height:60px;padding:8px 12px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);color:var(--text);text-decoration:none;font-weight:600}.rel-cat small{margin-inline-start:auto;color:var(--muted);font:500 .8rem var(--f-label)}.side-box{padding:16px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line)}.side-box__h{font:700 .78rem var(--f-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.side-box ul,.side-box ol{margin:0;padding:0;list-style:none}.side-box a{display:flex;justify-content:space-between;gap:8px;padding:7px 10px;margin-inline:-10px;border-radius:var(--r-sm);color:var(--text);text-decoration:none;font-size:.95rem}.side-box a span{color:var(--muted);font-size:.82rem}.side-box a:hover{background:var(--surface-2)}.toc a.is-current{background:var(--accent-soft);color:var(--accent-text);font-weight:600}.tool-top{padding-block:12px 14px}.calc{display:grid;gap:0;border-radius:var(--r-panel);background:var(--panel-bg);border:var(--panel-border);box-shadow:var(--shadow-panel);overflow:hidden}.calc__form{display:grid;align-content:start;gap:16px;padding:18px 16px}.is-reserved{visibility:hidden}@media(min-width:768px){.calc{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.calc__form{padding:28px}}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px;padding:4px;border-radius:var(--r-field);background:var(--seg-bg)}.seg button{min-height:44px;border:0;border-radius:calc(var(--r-field) - 3px);background:transparent;font-weight:600;font-size:.95rem;color:var(--muted);cursor:pointer}.seg button[aria-checked=true]{background:var(--seg-on);color:var(--text);box-shadow:var(--shadow-seg)}.field{display:grid;gap:6px;border:0;margin:0;padding:0;min-width:0}.field__label{padding:0;font-weight:700;font-size:.98rem}legend.field__label{margin-bottom:6px}.field__pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.input-unit{position:relative;display:flex;align-items:center}.input{width:100%;min-height:56px;padding:0 52px 0 16px;border:1.5px solid var(--field-line);border-radius:var(--r-field);background:var(--field-bg);font:600 1.15rem var(--f-num);font-variant-numeric:tabular-nums;color:var(--text);-moz-appearance:textfield}.input::-webkit-inner-spin-button,.input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--ring)}.input-unit span{position:absolute;inset-inline-end:14px;font:600 .9rem var(--f-label);color:var(--muted);pointer-events:none}.field__error{color:var(--bad);font-weight:600;font-size:.92rem}.field__help{color:var(--muted);font-size:.9rem}.calc__actions{display:flex;flex-wrap:wrap;gap:10px}.calc__actions .btn--primary{flex:1}@media(min-width:768px){.calc__actions .btn--primary{flex:none}}.result{display:flex;flex-direction:column;gap:10px;padding:20px 16px 22px;background:var(--result-bg);color:var(--result-text);scroll-margin:90px}@media(min-width:768px){.result{padding:28px;justify-content:center}}.result__k{font:700 .78rem var(--f-label);letter-spacing:.14em;text-transform:uppercase;color:var(--result-muted)}.result__v{font:700 var(--fs-result)/1 var(--f-result);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.result__badge{align-self:flex-start;padding:5px 12px;border-radius:var(--r-pill);font-weight:700;font-size:.92rem;background:color-mix(in srgb,var(--band) 18%,transparent);color:var(--band-text, var(--band))}.result[data-band=under]{--band: var(--under)}.result[data-band=healthy]{--band: var(--healthy)}.result[data-band=over],.result:not([data-band]){--band: var(--over)}.result[data-band=obese]{--band: var(--obese)}.result[data-band=none]{--band: var(--muted)}.result__text{color:var(--result-muted)}.result__text strong{color:var(--result-text)}.result__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.gauge{position:relative;margin-top:6px;padding-top:6px}.gauge__bar{display:grid;grid-template-columns:14fr 26fr 20fr 40fr;gap:3px;height:12px}.gauge__bar span{border-radius:3px}.g-under{background:var(--under)}.g-healthy{background:var(--healthy)}.g-over{background:var(--over)}.g-obese{background:var(--obese)}.gauge__pin{position:absolute;top:0;width:6px;height:24px;margin-inline-start:-3px;border-radius:3px;background:var(--result-text);box-shadow:0 0 0 2px var(--result-bg);transition:inset-inline-start .25s ease}.gauge__ticks{display:grid;grid-template-columns:14fr 26fr 20fr 40fr auto;margin-top:6px;font:500 .74rem var(--f-label);color:var(--result-muted)}.rel-strip{display:grid;gap:10px;padding-block:18px 4px}.rel-strip__h{font:700 .8rem var(--f-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.rel-strip__list{display:flex;gap:8px;margin:0;padding:0 0 4px;list-style:none;overflow-x:auto;scrollbar-width:none}.rel-pill{display:inline-flex;align-items:center;flex:none;min-height:44px;padding:0 16px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);color:var(--text);font-weight:600;font-size:.94rem;text-decoration:none;white-space:nowrap}.rel-pill:before{content:"";width:8px;height:8px;margin-inline-end:8px;border-radius:50%;background:var(--cat)}@media(min-width:768px){.rel-strip__list{flex-wrap:wrap}}.toc-m{margin-bottom:8px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.toc-m__btn{display:flex;align-items:center;gap:8px;width:100%;min-height:52px;padding:0 14px;border:0;background:transparent;font-weight:700;cursor:pointer}.toc-m__btn .ic:last-child{margin-inline-start:auto}.toc-m ol{margin:0;padding:0 14px 12px 40px}.toc-m li a{display:block;padding:8px 0;color:var(--text)}@media(min-width:1024px){.toc-m{display:none}}.steps{list-style:none;padding:0!important;counter-reset:s;display:grid;gap:10px}.steps li{counter-increment:s;position:relative;margin:0;padding-inline-start:46px;min-height:32px}.steps li:before{content:counter(s);position:absolute;inset-inline-start:0;top:-2px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent-text);font:700 .95rem var(--f-label)}.formula{display:grid;gap:6px;padding:18px;margin:16px 0;border-radius:var(--r-md);background:var(--formula-bg);border:1px solid var(--line);overflow-x:auto}.formula__k{font:700 .74rem var(--f-label);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:6px!important}.formula__eq{display:flex;align-items:center;gap:10px;margin:0!important;font:500 1.1rem var(--f-num);white-space:nowrap}.frac{display:inline-flex;flex-direction:column;align-items:center;font-size:.95rem}.frac span:first-child{border-bottom:1.5px solid currentColor;padding:0 6px 2px}.frac span:last-child{padding:2px 6px 0}.example{display:grid;margin:14px 0;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.example p{display:flex;justify-content:space-between;gap:12px;margin:0!important;padding:12px 14px;border-top:1px solid var(--line);font-size:.96rem}.example p:first-child{border-top:0}.example span{color:var(--muted)}.example b{font-family:var(--f-num);font-variant-numeric:tabular-nums;text-align:end}.example p:last-child{background:var(--accent-soft)}.example p:last-child b{color:var(--accent-text)}.table-wrap{overflow-x:auto;margin:14px 0;border:1px solid var(--line);border-radius:var(--r-md)}.table{width:100%;min-width:520px;border-collapse:collapse;font-size:.95rem}.table th,.table td{padding:12px 14px;text-align:start;border-bottom:1px solid var(--line)}.table thead th{background:var(--surface-2);font:700 .8rem var(--f-label);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.table tr:last-child td{border-bottom:0}.ad-inline{margin:24px 0}.sources{font-size:.94rem;color:var(--muted)}.byline{display:grid;gap:14px;margin-top:28px;padding:18px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line)}@media(min-width:768px){.byline{grid-template-columns:1fr 1fr}.byline__date{grid-column:1 / -1}}.byline__p{display:flex;gap:12px;align-items:center}.avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--accent-soft);color:var(--accent-text);font:700 .95rem var(--f-label);flex:none}.avatar--alt{background:color-mix(in srgb,var(--healthy) 16%,var(--surface));color:var(--healthy)}.byline__k{font:600 .74rem var(--f-label);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.byline__n{font-weight:700}.byline__r{font-size:.9rem;color:var(--muted)}.byline__date{font-size:.9rem;color:var(--muted);padding-top:12px;border-top:1px solid var(--line)}.fb{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;padding:16px 18px;border-radius:var(--r-md);background:var(--surface-2)}.fb__q{font-weight:700;margin-inline-end:auto}.fb__btns{display:flex;gap:8px}.fb__thanks{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--healthy)}:root{--bg: #ffffff;--surface: #ffffff;--surface-2: #f3f3f6;--line: #e6e6ec;--line-strong: #cfcfd8;--text: #16161b;--muted: #5d5d6b;--link: #16161b;--accent: #16161b;--accent-hover: #34343d;--accent-ink: #ffffff;--accent-text: #16161b;--accent-soft: #fff1b8;--hi: #ffd43b;--hi-ink: #16161b;--focus: #2b6de0;--ring: rgba(43, 109, 224, .2);--hdr-bg: #ffffff;--hero-bg: #fff8d9;--cat-hero-bg: color-mix(in srgb, var(--cat, #ffd43b) 10%, #ffffff);--chip-bg: #ffffff;--why-bg: #f3f3f6;--feat-bg: #ffffff;--field-bg: #f6f6f9;--field-line: #e0e0e8;--seg-bg: #f0f0f4;--seg-on: #ffffff;--panel-bg: #ffffff;--panel-border: 2px solid #16161b;--result-bg: #ffe680;--result-text: #16161b;--result-muted: #4b4630;--formula-bg: #f6f6f9;--ad-bg: #f6f6f9;--ad-line: #d6d6de;--ftr-bg: #16161b;--ftr-text: #ffffff;--ftr-muted: #b4b4c0;--ftr-line: #2c2c34;--scrim: rgba(22, 22, 27, .5);--tag-pop: #16161b;--tag-pop-bg: #ffd43b;--tag-new: #ffffff;--tag-new-bg: #1f8a5b;--under: #1f5fc4;--healthy: #17784c;--over: #a14d00;--obese: #b3261e;--bad: #c0261c;--info: #1f5fc4;--info-bg: #eef4ff;--info-line: #cddcfb;--tip: #17784c;--tip-bg: #eaf7f0;--tip-line: #c3e7d3;--warn: #a14d00;--warn-bg: #fff4e2;--warn-line: #f5d3a3;--shadow-hdr: 0 6px 20px rgba(22, 22, 27, .07);--shadow-pop: 0 22px 50px rgba(22, 22, 27, .16);--shadow-card: 0 10px 24px rgba(22, 22, 27, .09);--shadow-panel: 6px 6px 0 #16161b;--shadow-seg: 0 1px 3px rgba(22, 22, 27, .14);--ico-mix: 100%;--cat-ink: #ffffff;--f-display: "Bricolage Grotesque Variable", "Bricolage Grotesque", "Figtree", system-ui, sans-serif;--f-body: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--f-label: "Figtree", system-ui, sans-serif;--f-num: "Figtree", system-ui, sans-serif;--f-result: "Bricolage Grotesque Variable", "Bricolage Grotesque", "Figtree", system-ui, sans-serif;--fs-hero: clamp(2.3rem, 8vw, 4.3rem);--fs-h1: clamp(1.9rem, 6vw, 2.8rem);--fs-h2: clamp(1.45rem, 4vw, 1.9rem);--fs-result: clamp(3.8rem, 14vw, 5.4rem);--hero-track: -.035em;--r-sm: 12px;--r-md: 18px;--r-lg: 24px;--r-card: 20px;--r-panel: 26px;--r-field: 14px;--r-btn: 999px;--r-pill: 999px;--r-ico: 14px;--r-logo: 10px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #111114;--surface: #1a1a1f;--surface-2: #24242b;--line: #2e2e36;--line-strong: #42424c;--text: #f4f4f6;--muted: #a9a9b6;--link: #f4f4f6;--accent: #f4f4f6;--accent-hover: #ffffff;--accent-ink: #111114;--accent-text: #ffd43b;--accent-soft: #3a3214;--focus: #7aa7ff;--ring: rgba(122, 167, 255, .28);--hdr-bg: #111114;--hero-bg: #1a1810;--cat-hero-bg: color-mix(in srgb, var(--cat, #ffd43b) 12%, #111114);--chip-bg: #1a1a1f;--why-bg: #1a1a1f;--feat-bg: #1a1a1f;--field-bg: #111114;--field-line: #3a3a44;--seg-bg: #111114;--seg-on: #2c2c34;--panel-bg: #1a1a1f;--panel-border: 2px solid #f4f4f6;--result-bg: #ffd43b;--result-text: #16161b;--result-muted: #4b4630;--formula-bg: #1a1a1f;--ad-bg: #18181d;--ad-line: #3a3a44;--ftr-bg: #0a0a0c;--ftr-text: #f4f4f6;--ftr-muted: #a9a9b6;--ftr-line: #24242b;--scrim: rgba(0, 0, 0, .65);--tag-pop: #16161b;--tag-pop-bg: #ffd43b;--tag-new: #0f2a1d;--tag-new-bg: #5fd39a;--under: #7fb0ff;--healthy: #5fd39a;--over: #f2b25c;--obese: #ff8a80;--bad: #ff8a80;--info: #7fb0ff;--info-bg: #15213a;--info-line: #2a3d66;--tip: #5fd39a;--tip-bg: #10261c;--tip-line: #1f4a36;--warn: #f2b25c;--warn-bg: #2a1e0e;--warn-line: #5a4020;--shadow-hdr: 0 1px 0 #2e2e36;--shadow-pop: 0 22px 50px rgba(0, 0, 0, .55);--shadow-card: 0 10px 24px rgba(0, 0, 0, .4);--shadow-panel: 6px 6px 0 #ffd43b;--shadow-seg: 0 1px 3px rgba(0, 0, 0, .5);color-scheme:dark}}:root[data-theme=dark]{--bg: #111114;--surface: #1a1a1f;--surface-2: #24242b;--line: #2e2e36;--line-strong: #42424c;--text: #f4f4f6;--muted: #a9a9b6;--link: #f4f4f6;--accent: #f4f4f6;--accent-hover: #ffffff;--accent-ink: #111114;--accent-text: #ffd43b;--accent-soft: #3a3214;--focus: #7aa7ff;--ring: rgba(122, 167, 255, .28);--hdr-bg: #111114;--hero-bg: #1a1810;--cat-hero-bg: color-mix(in srgb, var(--cat, #ffd43b) 12%, #111114);--chip-bg: #1a1a1f;--why-bg: #1a1a1f;--feat-bg: #1a1a1f;--field-bg: #111114;--field-line: #3a3a44;--seg-bg: #111114;--seg-on: #2c2c34;--panel-bg: #1a1a1f;--panel-border: 2px solid #f4f4f6;--result-bg: #ffd43b;--result-text: #16161b;--result-muted: #4b4630;--formula-bg: #1a1a1f;--ad-bg: #18181d;--ad-line: #3a3a44;--ftr-bg: #0a0a0c;--ftr-text: #f4f4f6;--ftr-muted: #a9a9b6;--ftr-line: #24242b;--scrim: rgba(0, 0, 0, .65);--tag-pop: #16161b;--tag-pop-bg: #ffd43b;--tag-new: #0f2a1d;--tag-new-bg: #5fd39a;--under: #7fb0ff;--healthy: #5fd39a;--over: #f2b25c;--obese: #ff8a80;--bad: #ff8a80;--info: #7fb0ff;--info-bg: #15213a;--info-line: #2a3d66;--tip: #5fd39a;--tip-bg: #10261c;--tip-line: #1f4a36;--warn: #f2b25c;--warn-bg: #2a1e0e;--warn-line: #5a4020;--shadow-hdr: 0 1px 0 #2e2e36;--shadow-pop: 0 22px 50px rgba(0, 0, 0, .55);--shadow-card: 0 10px 24px rgba(0, 0, 0, .4);--shadow-panel: 6px 6px 0 #ffd43b;--shadow-seg: 0 1px 3px rgba(0, 0, 0, .5);color-scheme:dark}.result{--under: #1f5fc4;--healthy: #17784c;--over: #8a4200;--obese: #b3261e}.dir-b h1,.dir-b h2{font-weight:800}.dir-b .hero{border-bottom:0}.dir-b .hero__title mark{background:linear-gradient(transparent 58%,var(--hi) 58% 92%,transparent 92%);color:inherit;padding:0 .06em}.dir-b .hero-search .search-field{background:var(--surface);border:2px solid var(--text);box-shadow:4px 4px 0 var(--text)}.dir-b .hero-search .search-field:focus-within{box-shadow:4px 4px 0 var(--text),0 0 0 6px var(--ring)}.dir-b .hero__art{display:none}@media(min-width:1024px){.dir-b .hero__art{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;transform:rotate(-3deg)}.dir-b .hero__tile{display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:1;padding:18px;border-radius:26px;background:var(--cat);color:#fff;box-shadow:0 14px 30px color-mix(in srgb,var(--cat) 35%,transparent)}.dir-b .hero__tile:nth-child(2n){transform:translateY(22px)}.dir-b .hero__tile .ic{width:34px;height:34px}.dir-b .hero__tile em{font:800 1.05rem var(--f-display);font-style:normal}}.dir-b .chip{border-width:1.5px;font-weight:600}.dir-b .cat-card{border:0;background:var(--surface-2)}.dir-b .cat-card:hover{background:color-mix(in srgb,var(--cat) 12%,var(--surface-2))}.dir-b .cat-card__links a{background:var(--surface)}.dir-b .tool-card{border-width:1.5px}.dir-b .tool-card .cat-ico{border-radius:12px}.dir-b .why__item{background:var(--hi);color:#16161b}.dir-b .why__item:nth-child(2){background:#c9ecda}.dir-b .why__item:nth-child(3){background:#d7e5ff}.dir-b .why__item:nth-child(4){background:#ffd9d2}.dir-b .why__item p{color:#3c3c46}.dir-b .why__item .ic{color:#16161b}.dir-b .cat-hero__row .cat-ico{border-radius:20px}.dir-b .subcat{border-width:1.5px}.dir-b .feat__card{background:var(--cat);color:#fff;border:0}.dir-b .feat__card .feat__rank{color:#ffffffb3;font-size:2.2rem}.dir-b .feat__card .feat__desc,.dir-b .feat__card .feat__uses{color:#ffffffe0}.dir-b .calc{box-shadow:var(--shadow-panel)}.dir-b .result{border-top:2px solid var(--text)}@media(min-width:768px){.dir-b .result{border-top:0;border-inline-start:2px solid var(--text)}}.dir-b .result .btn--soft{background:#ffffffb3;border-color:#16161b33;color:#16161b}.dir-b .result__v{font-weight:800}.dir-b .result .gauge__pin{background:#16161b;box-shadow:0 0 0 2px #ffe680}.dir-b .btn--primary{box-shadow:0 3px color-mix(in srgb,var(--accent) 60%,transparent)}.dir-b .steps li:before{background:var(--hi);color:#16161b}.dir-b .rel-pill{border-width:1.5px}.dir-b .cat-hero{background:color-mix(in srgb,var(--cat) 11%,var(--bg))}:root{--ruby: #d81b4f}@media(min-width:1024px){.mega-nav__trigger{font-size:.97rem}}.dir-b .hero{padding-block:32px 36px}.dir-b .hero__title{margin-top:0}.dir-b .hero__lead{margin-top:12px;font-size:1.08rem}.dir-b .hero-search{margin-top:24px}.dir-b .quick{margin-top:18px}@media(min-width:1024px){.dir-b .hero{padding-block:56px 64px}}.dir-b .sec{padding-block:32px}@media(min-width:768px){.dir-b .sec{padding-block:48px}}.dir-b .sec__title,.dir-b .sec__head{margin-bottom:20px}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(min-width:768px){.tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}@media(min-width:1024px){.tiles{grid-template-columns:repeat(5,minmax(0,1fr))}.tiles--4{grid-template-columns:repeat(4,minmax(0,1fr))}}.tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:148px;padding:20px 12px;text-align:center;background:var(--surface-2);border:1.5px solid transparent;border-radius:var(--r-card);color:var(--text);text-decoration:none;transition:background .15s,border-color .15s,transform .15s}.tile .cat-ico{width:56px;height:56px;border-radius:16px}.tile .cat-ico .ic{width:28px;height:28px}.tile__name{font:700 1rem/1.25 var(--f-display);text-wrap:balance}.tile__count{font-size:.84rem;color:var(--muted)}@media(hover:hover){.tile:hover{background:color-mix(in srgb,var(--cat) 10%,var(--surface-2));border-color:color-mix(in srgb,var(--cat) 40%,transparent);transform:translateY(-2px)}}.filters{display:flex;gap:8px;margin-bottom:18px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.filters button{flex:none;min-height:40px;padding:0 16px;border:1.5px solid var(--line);border-radius:var(--r-pill);background:var(--surface);font-weight:600;font-size:.92rem;color:var(--text);cursor:pointer}.filters button[aria-selected=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}@media(min-width:768px){.filters{flex-wrap:wrap;overflow:visible}}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}@media(min-width:768px){.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}@media(min-width:1024px){.cards{grid-template-columns:repeat(4,minmax(0,1fr))}}.cards__item{display:flex;min-width:0}.card{position:relative;flex:1;display:flex;flex-direction:column;gap:6px;min-width:0;padding:16px;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-card);color:var(--text);text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s}.card .cat-ico{width:44px;height:44px;margin-bottom:6px;border-radius:12px}.card .cat-ico .ic{width:22px;height:22px}.card__name{font-weight:700;font-size:1rem;line-height:1.3}.card__desc{color:var(--muted);font-size:.88rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card .tag{position:absolute;top:14px;inset-inline-end:14px}.card--mini{flex-direction:row;align-items:center;gap:12px;padding:12px 14px}.card--mini .cat-ico{width:40px;height:40px;margin:0}.card--mini .tag{position:static;order:3;margin-inline-start:auto}.cards--mini{grid-template-columns:1fr}@media(min-width:768px){.cards--mini{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.cards--mini{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(hover:hover){.card:hover{border-color:var(--text);transform:translateY(-2px);box-shadow:var(--shadow-card)}}.tool-grid--2{gap:12px}.perks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px;margin:8px 0 0;padding:20px;list-style:none;border-radius:var(--r-card);background:var(--hero-bg)}@media(min-width:1024px){.perks{grid-template-columns:repeat(4,minmax(0,1fr));padding:22px 28px}}.perks li{display:flex;align-items:center;gap:10px;font-weight:700;font-size:.95rem}.perks .ic{flex:none;width:24px;height:24px}.dir-b .dir__group{background:var(--surface);border-width:1.5px}.dir-b .dir__group summary{min-height:56px}.about{max-width:70ch}.about>p{color:var(--muted);font-size:1.02rem}.more{margin-top:10px}.more summary{display:inline-flex;align-items:center;min-height:44px;font-weight:700;cursor:pointer;list-style:none;text-decoration:underline;text-underline-offset:4px}.more summary::-webkit-details-marker{display:none}.more__close,.more[open] .more__open{display:none}.more[open] .more__close{display:inline}.more .prose{margin-top:4px}.dir-b .cat-hero{padding-block:16px 24px}.dir-b .cat-hero__row{align-items:center}.dir-b .cat-hero__row .cat-ico{display:grid;width:56px;height:56px;border-radius:16px}.dir-b .cat-hero__row .cat-ico .ic{width:28px;height:28px}.dir-b .page-lead{margin-top:4px}.dir-b .subcats{margin-top:20px}.subcat.is-on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.subcat.is-on .subcat__count{color:inherit;opacity:.75}.dir-b .toolbar{position:static;grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-block:16px 0;padding:0;background:transparent}.dir-b .group{padding-block:28px 4px}.dir-b .group__head{margin-bottom:14px}.dir-b .faq{max-width:820px}.ftr__social{display:flex;gap:8px;margin-top:16px}.social{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--ftr-text)!important;text-decoration:none!important;transition:background .15s}.social:hover{background:var(--ftr-line)}.social .ic{width:26px;height:26px}@media(min-width:1024px){.cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}}.mt-md{margin-top:16px}.mt-lg{margin-top:24px}.page-head{padding-block:24px 4px}.page-head .hero-search{margin-top:18px}.mega__soon{padding:6px 0;color:var(--muted);font-size:.9rem}a.drawer__sub{display:flex;align-items:center;min-height:40px;text-decoration:none}a.drawer__sub:hover{color:var(--accent-text)}.cards--2{grid-template-columns:repeat(1,minmax(0,1fr))}@media(min-width:480px){.cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}}.cards__ad{grid-column:1 / -1}.cards__ad .ad{margin:4px 0}.sortbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.sortbar__count{color:var(--muted);font-size:.92rem}.sortbar__links{display:flex;gap:4px;padding:4px;border-radius:var(--r-pill);background:var(--surface-2)}.sortbar__links a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:var(--r-pill);color:var(--muted);font-weight:600;font-size:.9rem;text-decoration:none}.sortbar__links a.is-on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-seg)}.faq-title{margin-top:36px}.calc--soon{display:block;padding:40px 20px;text-align:center;color:var(--muted)}.prose blockquote.formula{margin:16px 0;padding:16px 18px;border-radius:var(--r-md);background:var(--formula-bg);border:1px solid var(--line);font-family:var(--f-num);overflow-x:auto}.prose blockquote.formula p{margin:4px 0;font-weight:600}.prose table{width:100%}.prose .table-wrap .table{min-width:480px}.prose ol,.prose ul{list-style:revert}.dd-big{font:800 clamp(1.7rem,7vw,2.4rem)/1.15 var(--f-result);letter-spacing:-.02em}.dd-meta{font-weight:600}.dd-table{width:100%;border-collapse:collapse;font-size:.92rem}.dd-table td{padding:7px 0;border-top:1px solid rgba(22,22,27,.14)}.dd-table td:last-child{text-align:end;font-weight:600;font-variant-numeric:tabular-nums}.dd-bar{height:10px;border-radius:999px;background:#16161b24;overflow:hidden}.dd-bar span{display:block;height:100%;border-radius:inherit;background:#16161b;transition:width .3s}.result__stack{display:flex;flex-direction:column;gap:10px}.input--date{padding-inline-end:16px;font-family:var(--f-body)}.select--lg{width:100%;min-height:56px;font-size:1.05rem}.upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:180px;padding:28px 16px;text-align:center;border:2px dashed var(--line-strong);border-radius:var(--r-md);background:var(--field-bg);cursor:pointer;transition:border-color .15s,background .15s}.upload:hover,.upload.is-over,.upload:focus-within{border-color:var(--accent);background:color-mix(in srgb,var(--cat) 6%,var(--field-bg))}.upload .ic{width:36px;height:36px;color:var(--cat)}.upload__t{font-weight:700;font-size:1.05rem}.upload__h{color:var(--muted);font-size:.9rem}.range{width:100%;accent-color:var(--accent);min-height:32px}.calc__form,.result,.result__body,.files,.file{min-width:0}.files{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:0;padding:0;list-style:none}.file{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r-sm);background:#fff9;color:#16161b}.file__body{flex:1;min-width:0}.file__name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file__meta{font-size:.86rem;color:#4b4630}.file__save{font-weight:800;color:#17784c}.file .btn{flex:none;background:#16161b;color:#fff}.queue .file{gap:0;padding-inline-end:2px;background:var(--surface-2);color:var(--text)}.queue .file__meta{color:var(--muted)}.queue__btn{flex:none;display:grid;place-items:center;width:40px;height:44px;border:0;border-radius:var(--r-sm);background:transparent;color:inherit;cursor:pointer}.queue__btn:hover:not(:disabled){background:var(--line)}.queue__btn:disabled{opacity:.3;cursor:default}.queue__btn--up .ic{transform:rotate(180deg)}.result__empty{color:var(--result-muted)}.privacy{display:flex;align-items:center;gap:8px;font-size:.88rem;color:var(--muted)}.privacy .ic{width:18px;height:18px;color:var(--healthy)}html.no-scroll{overflow:hidden}.consent{position:fixed;inset-inline:0;bottom:0;z-index:45;background:var(--surface);border-top:1px solid var(--line-strong);box-shadow:0 -6px 20px #0000001f;padding-bottom:env(safe-area-inset-bottom,0px)}.consent__inner{display:grid;gap:10px;padding-block:12px}.consent__text{margin:0;font-size:.92rem;line-height:1.45}.consent__text a{color:inherit;text-decoration:underline}.consent__btns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.consent__btns .btn{min-height:44px}html.has-consent body{padding-bottom:170px}.ftr__cookie{padding:0;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;cursor:pointer;min-height:24px}@media(min-width:768px){.consent__inner{grid-template-columns:1fr auto;align-items:center;gap:24px}.consent__btns{grid-template-columns:auto auto}html.has-consent body{padding-bottom:80px}}
