@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Manrope Fallback;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_73ee6c{font-family:Manrope,Manrope Fallback;font-style:normal}.__variable_73ee6c{--font-manrope:"Manrope","Manrope Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_3c557b{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_3c557b{--font-jetbrains:"JetBrains Mono","JetBrains Mono Fallback"}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-inter),system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--font-jetbrains),monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.static{position:static}.absolute{position:absolute}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.border{border-width:1px}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--bg:#fff;--surface:#f7f7f6;--surface-2:#efefed;--ink:#0e0e10;--ink-2:#4a4a52;--ink-3:#8a8a92;--line:#e6e6e4;--accent:#2b6cb0;--accent-soft:#eaf2fb;--accent-dark:#1f5288;--good:#17896b;--warn:#c98413;--bad:#b84646;--gold:#b8903a;--radius:10px;--radius-lg:14px}:root[data-dark=true]{--bg:#0c0e12;--surface:#131620;--surface-2:#1a1e2a;--ink:#eef2fb;--ink-2:#a8b0c1;--ink-3:#6a7285;--line:#222734;--accent-soft:rgba(43,108,176,.15)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{color:var(--ink);background:var(--bg);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;transition:background .2s,color .2s}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button{font:inherit;cursor:pointer}.container{max-width:1200px}.container,.container-wide{margin:0 auto;padding:0 32px}.container-wide{max-width:1320px}.section{padding:56px 0}.section-tight{padding:32px 0}.bg-surface,.section-surface{background:var(--surface)}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px;gap:16px;flex-wrap:wrap}.section-head h2{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:32px;letter-spacing:-.025em;margin:0}.link-more{color:var(--accent);font-size:14px;font-weight:600}.site-header{border-bottom:1px solid var(--line);background:color-mix(in oklab,var(--bg) 88%,transparent);position:sticky;top:0;z-index:50;backdrop-filter:saturate(1.2) blur(8px)}.site-header-inner{gap:32px;padding:14px 0}.logo,.site-header-inner{display:flex;align-items:center}.logo{gap:8px;font-family:var(--font-manrope),sans-serif;font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--ink)}.logo-mark{width:24px;height:24px;border-radius:7px;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}.site-nav{display:flex;gap:24px;flex:1;font-size:14px;font-weight:500;align-items:center}.site-nav a{color:var(--ink-2);padding:4px 0}.site-nav a.is-active,.site-nav a:hover{color:var(--ink)}.site-nav a.is-active{border-bottom:2px solid var(--accent);padding-bottom:2px}.nav-dropdown{position:relative}.nav-dropdown-toggle{background:none;border:none;padding:4px 0;font:inherit;color:var(--ink-2);cursor:pointer;display:inline-flex;align-items:center;gap:4px}.nav-dropdown-toggle.is-active,.nav-dropdown-toggle:hover{color:var(--ink)}.nav-dropdown-toggle.is-active{border-bottom:2px solid var(--accent);padding-bottom:2px}.nav-dropdown-menu{position:absolute;top:100%;left:0;margin-top:8px;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 8px 24px rgba(0,0,0,.08);min-width:280px;padding:6px;z-index:100;display:flex;flex-direction:column}.nav-dropdown-menu a{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:var(--radius);border-bottom:none!important}.nav-dropdown-menu a:hover{background:var(--surface);color:var(--ink)}.nav-dropdown-menu a.is-active{background:var(--accent-soft);color:var(--accent)}.nav-dropdown-name{font-weight:600;font-size:14px;color:var(--ink)}.nav-dropdown-menu a:hover .nav-dropdown-name{color:var(--ink)}.nav-dropdown-menu a.is-active .nav-dropdown-name{color:var(--accent)}.nav-dropdown-desc{font-size:12px;color:var(--ink-3)}.search-box{display:flex;align-items:center;gap:8px;background:var(--surface);padding:8px 14px;border-radius:10px;width:260px;color:var(--ink-3);font-size:13px;border:1px solid transparent}.search-box:hover{border-color:var(--line)}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;border-radius:var(--radius);border:none;transition:transform .08s,box-shadow .15s,background .15s,border-color .15s;text-decoration:none}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dark);color:#fff}.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}.btn-ghost:hover{border-color:var(--ink);color:var(--ink)}.btn-ink{background:var(--ink);color:var(--bg)}.btn-sm{padding:7px 12px;font-size:12px}.btn-lg{padding:14px 22px;font-size:15px}.btn-block{width:100%;justify-content:center}.theme-toggle{width:36px;height:36px;border-radius:10px;background:var(--surface);border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;color:var(--ink-2)}.theme-toggle:hover{color:var(--ink);border-color:var(--ink-3)}.pill{display:inline-flex;align-items:center;gap:8px;background:var(--accent-soft);color:var(--accent);padding:5px 12px;border-radius:999px;font-size:12px;font-weight:600}.pill-dot{width:6px;height:6px;border-radius:3px;background:var(--accent)}.badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);padding:3px 9px;background:var(--surface);border-radius:999px;border:1px solid var(--line)}.score-ring{position:relative;display:inline-flex;flex-shrink:0}.score-ring svg{transform:rotate(-90deg)}.score-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--font-manrope),sans-serif;font-weight:800;color:var(--accent)}.score-ring-val{line-height:1;font-variant-numeric:tabular-nums}.score-ring-cap{font-size:8px;opacity:.6;margin-top:2px;letter-spacing:.06em;text-transform:uppercase}.hero{padding:72px 0 48px}.hero-compact{padding:40px 0 24px}.hero-h1{font-family:var(--font-manrope),sans-serif;font-weight:800;letter-spacing:-.035em;line-height:1.02;font-size:56px;margin:16px 0 18px;text-wrap:balance}.hero-lede{font-size:18px;line-height:1.55;color:var(--ink-2);max-width:640px;margin:0 0 24px}.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:40px}.hero-findability{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px;margin:0 0 24px;display:flex;flex-direction:column;gap:12px;max-width:640px}.hero-search-form{display:flex;gap:8px;align-items:center}.hero-search-input{flex:1;min-height:44px;border:1px solid var(--line);border-radius:var(--radius);padding:0 12px;background:var(--bg);color:var(--ink);font:inherit}.hero-search-input:focus{outline:2px solid color-mix(in oklab,var(--accent) 40%,transparent);outline-offset:1px;border-color:transparent}.hero-search-submit{min-height:44px;padding:0 14px;border-radius:var(--radius);border:1px solid var(--accent);background:var(--accent);color:#fff;font-weight:700}.hero-search-submit:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.hero-category-entry{display:flex;flex-direction:column;gap:8px}.hero-category-label{font-size:12px;font-weight:600;color:var(--ink-2)}.hero-category-chips{display:flex;flex-wrap:wrap;gap:8px}.hero-category-chip{padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--ink-2);font-size:13px;font-weight:600}.hero-category-chip:hover{border-color:var(--ink-3);color:var(--ink)}.hero-stats{display:flex;gap:40px;flex-wrap:wrap}.stat{display:flex;flex-direction:column;gap:4px}.stat-val{font-family:var(--font-manrope),sans-serif;font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1}.stat-cap{font-size:12px;color:var(--ink-3)}.breadcrumbs{display:flex;gap:8px;font-size:13px;color:var(--ink-3);margin-bottom:16px}.breadcrumbs a:hover{color:var(--accent)}.cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.cat-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px;display:flex;flex-direction:column;gap:6px;transition:transform .15s,border-color .15s}.cat-card:hover{transform:translateY(-2px);border-color:var(--ink-3);color:var(--ink)}.cat-name{font-family:var(--font-manrope),sans-serif;font-weight:700;font-size:20px}.cat-desc{color:var(--ink-2);font-size:14px}.cat-count{font-size:12px;color:var(--ink-3);margin-top:8px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.article-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,border-color .15s;text-decoration:none}.article-card:hover{transform:translateY(-2px);border-color:var(--ink-3);color:var(--ink)}.article-thumb{aspect-ratio:16/10;background-size:cover;background-position:50%;background-color:var(--surface);position:relative;display:flex;align-items:center;justify-content:center}.article-thumb-fallback{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:36px;color:var(--accent);opacity:.7}.article-body{padding:18px;display:flex;flex-direction:column;gap:10px;flex:1}.article-meta{display:flex;gap:8px;font-size:12px;color:var(--ink-3);flex-wrap:wrap}.article-title{font-family:var(--font-manrope),sans-serif;font-weight:700;font-size:18px;line-height:1.25;margin:0}.article-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}.article-winner{font-size:12px;color:var(--ink-2)}.article-winner strong{color:var(--ink)}.method-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.method-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:10px}.method-head{display:flex;justify-content:space-between;align-items:baseline}.method-name{font-weight:700;font-size:15px}.method-weight{font-family:var(--font-manrope),sans-serif;font-weight:800;color:var(--accent);font-size:18px}.method-bar{height:6px;border-radius:3px;background:var(--line);overflow:hidden}.method-bar-fill{height:100%;background:var(--accent)}.method-desc{color:var(--ink-2);font-size:13px;line-height:1.45}.filter-bar{justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.filter-bar,.filter-chips{display:flex;flex-wrap:wrap}.filter-chips{gap:8px}.chip{padding:8px 14px;border-radius:999px;background:var(--bg);color:var(--ink-2);border:1px solid var(--line);font-size:13px;font-weight:500}.chip:hover{border-color:var(--ink-3);color:var(--ink)}.chip-active,.chip.is-active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.sort-select{padding:8px 14px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font-size:13px}.site-footer{background:var(--surface);border-top:1px solid var(--line);padding:40px 0 28px;margin-top:64px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px}.footer-col h4{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin:0 0 10px}.footer-col a{display:block;padding:3px 0;color:var(--ink-2);font-size:13px}.footer-note{margin-top:28px;padding-top:20px;font-size:12px;justify-content:space-between;gap:16px}.article-meta-strip,.footer-note{border-top:1px solid var(--line);color:var(--ink-3);display:flex;flex-wrap:wrap}.article-meta-strip{gap:14px;font-size:13px;padding:14px 0;border-bottom:1px solid var(--line);margin:24px 0 0}.score-overview{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:16px}.score-overview-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.score-overview-title{font-family:var(--font-manrope),sans-serif;font-weight:700;font-size:18px;margin:0}.score-row{display:grid;grid-template-columns:60px 64px 1fr auto;gap:14px;padding:14px 0;border-top:1px solid var(--line);align-items:center}.score-row:first-of-type{border-top:none;padding-top:0}.score-row-thumb{width:60px;height:60px;border-radius:var(--radius);border:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.score-row-thumb img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;padding:4px;background:#fff}.score-row-thumb-fallback{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:22px;color:var(--accent)}.score-row-name{font-weight:600;font-size:14px}.score-row-verdict{font-size:12px;color:var(--ink-3)}.score-row-action{font-size:12px;color:var(--accent);font-weight:600}.winner-banner{background:linear-gradient(135deg,color-mix(in oklab,var(--gold) 12%,transparent),transparent);border:1px solid color-mix(in oklab,var(--gold) 35%,transparent);border-radius:var(--radius-lg);padding:20px;display:flex;gap:16px;align-items:center}.winner-banner-icon{font-weight:800;color:var(--gold);font-size:24px}.winner-banner-icon,.winner-banner-title{font-family:var(--font-manrope),sans-serif}.winner-banner-title{font-weight:700;font-size:18px;margin:0}.winner-banner-reason{font-size:13px;color:var(--ink-2);margin:4px 0 0}.proscons{display:grid;grid-template-columns:1fr 1fr;gap:20px}.proscons-col{padding:22px;border-radius:var(--radius-lg);border:1px solid}.proscons-col .proscons-heading{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px}.proscons-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;font-size:14px}.proscons-good{background:rgba(23,137,107,.06);border-color:rgba(23,137,107,.25)}.proscons-good .proscons-heading{color:var(--good)}.proscons-good li:before{content:"+ ";color:var(--good);font-weight:700}.proscons-bad{background:rgba(184,70,70,.05);border-color:rgba(184,70,70,.22)}.proscons-bad .proscons-heading{color:var(--bad)}.proscons-bad li:before{content:"− ";color:var(--bad);font-weight:700}.author-card{display:flex;align-items:center;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.author-avatar{width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-manrope),sans-serif}.author-avatar,.author-name{font-weight:700;font-size:14px}.affiliate-disclosure,.author-role{font-size:12px;color:var(--ink-3)}.affiliate-disclosure{padding:12px 16px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--line);margin-bottom:24px}.article-content{font-size:16px;line-height:1.65;color:var(--ink);max-width:720px}.article-content h1{font-size:28px;font-weight:800;letter-spacing:-.025em;margin:32px 0 12px}.article-content h1,.article-content h2{font-family:var(--font-manrope),sans-serif;color:var(--ink)}.article-content h2{font-size:22px;font-weight:700;letter-spacing:-.02em;margin:28px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line)}.article-content h3{font-family:var(--font-manrope),sans-serif;font-size:18px;font-weight:700;margin:22px 0 8px;color:var(--ink)}.article-content p{margin:12px 0}.article-content ol,.article-content ul{padding-left:22px;margin:12px 0}.article-content li{margin-bottom:6px}.article-content a{color:var(--accent);border-bottom:1px solid color-mix(in oklab,var(--accent) 35%,transparent);transition:border-color .15s}.article-content a:hover{border-color:var(--accent)}.article-content strong{color:var(--ink);font-weight:700}.article-content blockquote{background:var(--surface);border-left:3px solid var(--accent);padding:14px 18px;margin:18px 0;border-radius:0 var(--radius) var(--radius) 0;font-size:15px}.article-content table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.article-content th{background:var(--surface);color:var(--ink-2);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:10px 12px;text-align:left}.article-content td{padding:10px 12px;border-top:1px solid var(--line)}.article-content hr{border:none;border-top:1px solid var(--line);margin:28px 0}.article-content aside.tldr{background:var(--accent-soft);border:1px solid color-mix(in oklab,var(--accent) 25%,transparent);border-left:4px solid var(--accent);border-radius:var(--radius-lg);padding:18px 22px;margin:20px 0 28px}.article-content aside.tldr h2{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 8px;padding-bottom:0;border-bottom:none}.article-content aside.tldr p{font-size:15px;line-height:1.6;margin:0;color:var(--ink)}.article-content p.recency-badge{font-size:12px;color:var(--ink-3);padding:5px 12px;background:var(--surface);border-radius:999px;border:1px solid var(--line);display:inline-block;margin:0 0 20px}.article-content section.faq{margin:28px 0}.article-content section.faq details{border-bottom:1px solid var(--line);padding:0}.article-content section.faq details:first-of-type{border-top:1px solid var(--line)}.article-content section.faq summary{font-weight:600;font-size:15px;cursor:pointer;list-style:none;padding:13px 4px;display:flex;justify-content:space-between;align-items:center;color:var(--ink)}.article-content section.faq summary::-webkit-details-marker{display:none}.article-content section.faq summary:after{content:"+";font-size:20px;font-weight:300;color:var(--ink-3);line-height:1;flex-shrink:0;transition:transform .18s}.article-content section.faq details[open] summary:after{transform:rotate(45deg)}.article-content section.faq details p{margin:0 0 14px;font-size:14px;color:var(--ink-2);padding:0 4px}.verdict-excellent{color:var(--good)}.verdict-good,.verdict-great{color:var(--accent)}.verdict-average{color:var(--warn)}.verdict-skip{color:var(--bad)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:start}.hero-text{min-width:0}.hero-h1-article{font-size:44px}.hero-trustline{margin-top:24px;padding:12px 16px;background:var(--surface);border-left:3px solid var(--accent);border-radius:0 var(--radius) var(--radius) 0;font-size:13px;color:var(--ink-2);max-width:560px}.hero-featured{display:flex;flex-direction:column;gap:18px;padding:24px;background:linear-gradient(180deg,color-mix(in oklab,var(--accent-soft) 45%,var(--bg)),var(--bg) 46%);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;transition:transform .15s,border-color .15s,box-shadow .2s;text-decoration:none;box-shadow:0 1px 0 rgba(0,0,0,.02)}.hero-featured:hover{transform:translateY(-2px);border-color:var(--ink-3);color:var(--ink);box-shadow:0 8px 24px -12px rgba(0,0,0,.18)}.hero-score-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.hero-featured-tag{display:inline-flex;background:var(--ink);color:#fff;padding:5px 11px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.hero-score-title{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:25px;line-height:1.12;letter-spacing:-.025em;margin:12px 0 0;text-wrap:balance}.hero-featured .score-ring{background:hsla(0,0%,100%,.9);border-radius:50%;box-shadow:0 10px 24px -16px rgba(0,0,0,.35)}.hero-score-bars{display:flex;flex-direction:column;gap:10px}.hero-score-row{display:grid;gap:6px}.hero-score-row-label{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:var(--ink-2)}.hero-score-row-label strong{color:var(--ink);font-variant-numeric:tabular-nums}.hero-score-bar{height:7px;background:var(--surface);border:1px solid var(--line);border-radius:999px;overflow:hidden}.hero-score-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),color-mix(in oklab,var(--accent) 45%,var(--good)));border-radius:inherit}.hero-score-sources{display:flex;flex-wrap:wrap;gap:8px}.hero-score-sources span{padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--ink-2);font-size:12px;font-weight:600}.hero-featured-body{padding-top:18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.hero-featured-meta{display:flex;align-items:center;gap:10px}.hero-featured-verdict{font-size:12px;font-weight:600;color:var(--ink-2);letter-spacing:.02em}.hero-featured-title{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:22px;line-height:1.18;letter-spacing:-.02em;margin:0}.hero-featured-winner{font-size:13px;color:var(--ink-2);margin:0}.hero-featured-winner strong{color:var(--ink)}.hero-featured-cta{font-size:13px;font-weight:600;color:var(--accent);margin-top:4px}.cat-card{padding:0;overflow:hidden}.cat-card-cover{aspect-ratio:16/9;background:repeating-linear-gradient(135deg,var(--cc-a,#dad7e8) 0 14px,var(--cc-b,#ccc8dd) 14px 28px);background-size:cover;background-position:50%;background-repeat:no-repeat;border-bottom:1px solid var(--line)}.cat-card--smart-home .cat-card-cover{--cc-a:#dbe6f2;--cc-b:#cfddee}.cat-card--haushalt .cat-card-cover{--cc-a:#dde8da;--cc-b:#d0decb}.cat-card--sicherheit .cat-card-cover{--cc-a:#e8dbd0;--cc-b:#ddd0c4}.cat-card--energie .cat-card-cover{--cc-a:#e8e0d3;--cc-b:#ddd3c2}.cat-card--garten .cat-card-cover{--cc-a:#d8e4dd;--cc-b:#c8d6cf}.cat-card--unterhaltung .cat-card-cover{--cc-a:#dad7e8;--cc-b:#ccc8dd}:root[data-dark=true] .cat-card--smart-home .cat-card-cover{--cc-a:#1d2837;--cc-b:#233149}:root[data-dark=true] .cat-card--haushalt .cat-card-cover{--cc-a:#1f2a23;--cc-b:#243228}:root[data-dark=true] .cat-card--sicherheit .cat-card-cover{--cc-a:#2c2118;--cc-b:#36281d}:root[data-dark=true] .cat-card--energie .cat-card-cover{--cc-a:#2a241a;--cc-b:#322a1d}:root[data-dark=true] .cat-card--garten .cat-card-cover{--cc-a:#1d2823;--cc-b:#233330}:root[data-dark=true] .cat-card--unterhaltung .cat-card-cover{--cc-a:#25223a;--cc-b:#2c2944}.cat-card-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:4px}.article-thumb-tag{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:18px;letter-spacing:-.01em;background:hsla(0,0%,100%,.85);padding:6px 12px;border-radius:6px}:root[data-dark=true] .article-thumb-tag{background:rgba(12,14,18,.7)}.article-excerpt{font-size:14px;color:var(--ink-2);line-height:1.5;margin:0}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start}.article-main{min-width:0}.article-aside{position:sticky;top:88px}.buybox{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px 24px -16px rgba(0,0,0,.18)}.buybox-eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}.buybox-cover{aspect-ratio:4/3;border-radius:var(--radius);background-size:cover;background-position:50%;border:1px solid var(--line)}.buybox-title{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:18px;line-height:1.2;margin:0}.buybox-brand{font-size:12px;color:var(--ink-3)}.buybox-score{display:flex;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.buybox-score-meta{display:flex;flex-direction:column;gap:2px}.buybox-verdict{font-size:13px;font-weight:600;color:var(--ink)}.buybox-test-score{font-size:11px;color:var(--ink-3)}.buybox-price-row{display:flex;align-items:baseline;gap:6px}.buybox-price-label{font-size:12px;color:var(--ink-3)}.buybox-price{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:24px;letter-spacing:-.02em}.affiliate-note{font-size:11px;color:var(--ink-3);text-align:center;margin:0}.buybox-foot{padding-top:8px;border-top:1px dashed var(--line)}.buybox-foot-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.buybox-foot-text{font-size:13px;color:var(--ink-2);margin:4px 0 0;line-height:1.45}.sources{margin-top:28px;padding:16px 18px;background:var(--surface);border-radius:var(--radius)}.sources-eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 6px}.sources-list{font-size:12px;color:var(--ink-2);margin:0;line-height:1.5}.corrections-link{margin-top:16px;font-size:13px;color:var(--ink-2)}.corrections-link a{color:var(--accent);font-weight:600}.filter-meta{display:flex;align-items:center;gap:16px}.filter-count{font-size:13px;color:var(--ink-3)}.sort-wrap{display:inline-flex;align-items:center;gap:8px}.sort-label{font-size:12px;color:var(--ink-3)}.empty-state{padding:48px 20px;text-align:center;background:var(--surface);border-radius:var(--radius-lg);color:var(--ink-2)}.empty-state-eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 6px}.meta-link{color:var(--accent);font-weight:600}.section-lede{font-size:16px;color:var(--ink-2);max-width:760px;margin:-12px 0 28px;line-height:1.55}.score-overview-lede{font-size:13px;color:var(--ink-2);margin:-8px 0 8px}.legal-prose{max-width:720px;font-size:16px;line-height:1.65;color:var(--ink)}.legal-prose h2{font-family:var(--font-manrope),sans-serif;font-weight:700;font-size:22px;letter-spacing:-.02em;margin:32px 0 10px}.legal-prose p{margin:12px 0}.legal-prose ol,.legal-prose ul{padding-left:22px;margin:12px 0}.legal-prose li{margin-bottom:6px}.legal-prose a{color:var(--accent);border-bottom:1px solid color-mix(in oklab,var(--accent) 35%,transparent)}.legal-prose code{background:var(--surface);padding:1px 6px;border-radius:4px;font-size:13px}.callout{padding:14px 18px;border-radius:var(--radius);margin:8px 0 28px;font-size:14px}.callout-good{background:color-mix(in oklab,var(--good) 8%,transparent);border:1px solid color-mix(in oklab,var(--good) 28%,transparent);color:var(--ink)}.correction-form{gap:14px;max-width:640px}.correction-form,.form-row{display:flex;flex-direction:column}.form-row{gap:6px;font-size:13px;color:var(--ink-2)}.form-row em{color:var(--ink-3);font-style:normal}.form-row input,.form-row textarea{font:inherit;padding:10px 12px;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg);color:var(--ink);resize:vertical}.form-row input:focus,.form-row textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.btn-md{padding:10px 18px;font-size:14px}.form-note{font-size:12px;color:var(--ink-3);margin:4px 0 0;line-height:1.5}.correction-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}.correction-item{padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.correction-item--accepted{border-left:3px solid var(--good)}.correction-item--declined{border-left:3px solid var(--ink-3);opacity:.75}.correction-item--pending{border-left:3px solid var(--warn)}.correction-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--ink-3);margin-bottom:6px}.correction-status{font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:10px;padding:2px 8px;border-radius:999px}.correction-status--pending{color:var(--warn);background:color-mix(in oklab,var(--warn) 14%,transparent)}.correction-status--accepted{color:var(--good);background:color-mix(in oklab,var(--good) 14%,transparent)}.correction-status--declined{color:var(--ink-3);background:var(--surface-2)}.correction-slug{font-family:var(--font-jetbrains),monospace;font-size:11px;color:var(--ink-2)}.correction-body{font-size:14px;color:var(--ink);margin:0;white-space:pre-wrap}.comparison{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px;align-items:start}.comparison-controls{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px}.comparison-controls-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.comparison-title{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:22px;letter-spacing:-.02em;margin:0 0 6px}.comparison-title em{font-style:italic;color:var(--accent)}.comparison-lede{font-size:13px;color:var(--ink-2);margin:0;line-height:1.5}.comparison-total-note{color:var(--ink-3)}.weight-sliders{gap:18px}.weight-slider,.weight-sliders{display:flex;flex-direction:column}.weight-slider{gap:6px}.weight-slider-row{display:flex;justify-content:space-between;align-items:baseline}.weight-slider-name{font-weight:600;font-size:14px}.weight-slider-val{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:16px;color:var(--accent);font-variant-numeric:tabular-nums}.weight-slider-desc{font-size:12px;color:var(--ink-3)}.weight-slider input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:var(--line);outline:none;cursor:pointer}.weight-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--accent);border:2px solid var(--bg);box-shadow:0 1px 4px rgba(0,0,0,.18);-webkit-transition:transform .1s;transition:transform .1s}.weight-slider input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15)}.weight-slider input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--accent);border:2px solid var(--bg);cursor:pointer}.comparison-rank{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;position:sticky;top:88px}.comparison-rank-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;flex-wrap:wrap}.comparison-rank-head h3{font-family:var(--font-manrope),sans-serif;font-weight:700;font-size:18px;margin:0}.comparison-flip{font-size:12px;color:var(--good);background:color-mix(in oklab,var(--good) 12%,transparent);padding:4px 10px;border-radius:999px}.rank-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.rank-row{display:grid;grid-template-columns:28px 48px 1fr auto;align-items:center;gap:12px;padding:12px 14px;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .15s}.rank-row--top{border-color:color-mix(in oklab,var(--gold) 50%,var(--line));background:color-mix(in oklab,var(--gold) 5%,var(--bg))}.rank-pos{font-family:var(--font-manrope),sans-serif;font-weight:800;font-size:16px;color:var(--ink-3);font-variant-numeric:tabular-nums}.rank-row--top .rank-pos{color:var(--gold)}.rank-meta{min-width:0}.rank-name{font-weight:700;font-size:14px;display:flex;align-items:center;gap:6px}.rank-was-winner{color:var(--gold);font-size:12px}.rank-verdict{color:var(--ink-3)}.rank-breakdown,.rank-verdict{font-size:12px}.rank-breakdown summary{cursor:pointer;color:var(--accent);padding:4px 8px;border-radius:6px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.rank-breakdown summary:hover{background:var(--surface-2)}.rank-breakdown[open]{grid-column:1/-1;padding-top:8px;border-top:1px dashed var(--line);margin-top:8px}.rank-breakdown ul{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:6px}.rank-breakdown li{display:grid;grid-template-columns:130px 1fr 32px;gap:10px;align-items:center;font-size:12px;color:var(--ink-2)}.rank-breakdown-bar{background:var(--line);border-radius:3px;height:6px;overflow:hidden;display:block}.rank-breakdown-bar>span{display:block;height:100%;background:var(--accent)}.rank-breakdown-val{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink);text-align:right}.comparison-foot{margin-top:32px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}.comparison-foot-note{font-size:12px;color:var(--ink-3)}@media (max-width:860px){.comparison{grid-template-columns:1fr}.comparison-rank{position:static}.rank-row{grid-template-columns:24px 44px 1fr auto}.rank-breakdown li{grid-template-columns:1fr 1fr 32px}}.mobile-menu-btn{display:none}@media (max-width:860px){.container,.container-wide{padding:0 18px}.site-header-inner{padding:12px 0;gap:14px}.search-box,.site-nav{display:none}.hero-h1{font-size:34px}.section{padding:36px 0}.hero{padding:30px 0 20px}.hero-lede{font-size:16px;margin-bottom:16px}.hero-ctas{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:16px}.hero-ctas .btn{width:100%;justify-content:center;min-height:48px}.hero-ctas .btn-primary{box-shadow:0 8px 18px rgba(43,108,176,.22);font-weight:700}.hero-ctas .btn-ghost{color:var(--ink-2);border-color:var(--line);font-weight:600}.hero-findability{margin-bottom:18px;padding:12px}.hero-search-form{flex-direction:column;align-items:stretch;gap:8px}.hero-search-submit{width:100%}.hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.stat-val{font-size:22px}.hero-featured{padding:18px;gap:16px}.hero-score-head{flex-direction:column}.hero-score-title{font-size:22px}.article-grid,.cat-grid,.method-grid{grid-template-columns:1fr;gap:14px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero-h1-article{font-size:28px}.article-layout{grid-template-columns:1fr;gap:28px}.article-aside{position:static}.filter-bar{flex-direction:column;align-items:stretch}.filter-meta{justify-content:space-between}.footer-grid{grid-template-columns:1fr 1fr;gap:20px}.proscons{grid-template-columns:1fr}.score-row{grid-template-columns:48px 56px 1fr auto;gap:10px}.score-row-thumb{width:48px;height:48px}.mobile-menu-btn{display:inline-flex;margin-left:auto;width:36px;height:36px;border-radius:10px;background:var(--surface);border:1px solid var(--line);align-items:center;justify-content:center;color:var(--ink);cursor:pointer;flex-shrink:0;position:relative;z-index:60}.mobile-nav-overlay{position:fixed;inset:0;z-index:55;background:rgba(0,0,0,.3)}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);z-index:60;padding:8px 18px 14px;display:flex;flex-direction:column;gap:2px;box-shadow:0 12px 24px rgba(0,0,0,.08);max-height:calc(100vh - 60px);overflow-y:auto}.mobile-nav a{display:block;padding:10px 14px;border-radius:var(--radius);font-family:var(--font-manrope);font-weight:600;font-size:15px;color:var(--ink);transition:background .15s}.mobile-nav a.is-active,.mobile-nav a:hover{background:var(--surface);color:var(--accent)}.mobile-nav-section{padding:10px 14px 4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}}.type-pill{display:inline-flex;align-items:center;font-size:10px;font-weight:700;letter-spacing:.04em;padding:2px 8px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2)}.type-pill--review{color:var(--accent);border-color:color-mix(in oklab,var(--accent) 30%,transparent);background:var(--accent-soft)}.type-pill--comparison{color:var(--gold);border-color:color-mix(in oklab,var(--gold) 30%,transparent);background:color-mix(in oklab,var(--gold) 10%,transparent)}.form-row--radio{border:none;padding:0;margin:0 0 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.form-row--radio legend{font-weight:600;font-size:14px;margin-bottom:8px;grid-column:1/-1;padding:0}.radio-chip{position:relative;display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,background .15s;background:var(--bg)}.radio-chip:hover{border-color:var(--ink-3)}.radio-chip input{position:absolute;opacity:0;pointer-events:none}.radio-chip span{font-weight:600;font-size:14px;color:var(--ink)}.radio-chip small{font-size:12px;color:var(--ink-3);line-height:1.4}.radio-chip:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.radio-chip:has(input:checked) span{color:var(--accent-dark)}@media (max-width:700px){.form-row--radio{grid-template-columns:1fr}}