:root{--ink:#0a0a0a;--tx:#101828;--mut:#4a5565;--mut2:#6a7282;--line:#e5e7eb;--soft:#f9fafb;--g:#53FC18;--gd:#1f7a00;--disp:"Bricolage Grotesque","Inter",system-ui,sans-serif;--sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace}
*,*:before,*:after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body.kd{margin:0;background:#fff;color:var(--tx);font:15px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
.kd a{color:inherit}.kd img{max-width:100%;height:auto}
.kd-wrap{max-width:1180px;margin:0 auto;padding:0 28px}.kd-narrow{max-width:860px}
.kd-i{vertical-align:-3px;flex:none}
.kd-label{font:600 10.5px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mut2)}
.kd-label--dark{color:var(--tx)}.kd-label--c{text-align:center}
.kd-mono{font-family:var(--mono);font-size:12px;color:var(--mut2)}
.kd-muted{color:var(--mut2)}.kd-small{font-size:12.5px;color:var(--mut2);line-height:1.55}
.kd-tag{display:inline-block;font-style:normal;background:var(--g);color:#071300;font:700 10px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;padding:4px 7px;border-radius:5px}
/* header */
.kd-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.kd-header__in{display:flex;align-items:center;gap:28px;height:64px}
.kd-brand{display:inline-flex;flex-direction:column;align-items:flex-end;font:700 24px/.9 var(--disp);letter-spacing:-.045em;text-decoration:none!important;color:var(--ink)!important;white-space:nowrap}
.kd-brand i{font:600 10.5px/1 var(--sans);font-style:normal;letter-spacing:0;margin-top:2px;color:var(--ink)}
.kd-nav{display:flex;align-items:center;gap:4px;flex:1}
.kd-nav__item{position:relative}
.kd-nav__item>button,.kd-nav__link{background:none;border:0;font:500 13.5px var(--sans);color:var(--tx);padding:8px 10px;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:4px;text-decoration:none}
.kd-nav__item>button .kd-i{width:13px;height:13px;color:var(--mut2)}
.kd-nav__item>button:hover,.kd-nav__link:hover{background:var(--soft)}
.kd-dd{display:none;position:absolute;top:calc(100% + 6px);left:0;min-width:270px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px rgba(16,24,40,.12);padding:8px}
.kd-nav__item:hover .kd-dd,.kd-nav__item.open .kd-dd{display:block}
.kd-nav__item:hover>button{background:var(--soft)}
.kd-dd:before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}
.kd-dd a{display:block;padding:8px 10px;border-radius:8px;text-decoration:none}.kd-dd a:hover{background:var(--soft)}
.kd-dd b{display:block;font:500 13.5px var(--sans)}.kd-dd small{color:var(--mut2);font-size:12px}
.kd-header__right{display:flex;align-items:center;gap:14px;margin-left:auto}
.kd-ico{color:var(--tx);display:flex}.kd-burger{display:none;background:none;border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:16px;cursor:pointer}
/* buttons */
.kd-pill{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:#fff!important;font:600 13.5px/1 var(--sans);padding:12px 18px;border-radius:999px;text-decoration:none!important;border:1px solid var(--ink);transition:.15s;white-space:nowrap}
.kd-pill:hover{background:#262626}
.kd-pill--line{background:#fff;color:var(--ink)!important;border-color:#d1d5dc}.kd-pill--line:hover{background:var(--soft)}
.kd-header .kd-pill{padding:9px 14px;font-size:12.5px;border-radius:8px}
.kd-pill--lg{padding:14px 22px;font-size:14px}.kd-pill--sm{padding:7px 13px;font-size:12.5px}.kd-pill--block{display:flex;justify-content:center;margin-top:12px}
.kd-ulink{display:inline-flex;align-items:center;gap:6px;font:500 13px var(--sans);color:var(--tx)!important;text-decoration:none}.kd-ulink:hover{text-decoration:underline}
.kd-btns{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:22px}
/* hero */
.kd-hero{padding:56px 0 64px}
.kd-hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.kd-display{font:600 clamp(38px,5vw,60px)/1.04 var(--disp);letter-spacing:-.035em;color:var(--ink);margin:0 0 20px}
.kd-lede{font-size:16.5px;line-height:1.65;color:var(--mut);max-width:560px;margin:0}
.kd-stats{display:flex;gap:28px;flex-wrap:wrap;margin-top:30px;padding-top:22px;border-top:1px solid var(--line);font-size:13px;color:var(--mut)}
.kd-stats b{color:var(--ink);font-weight:600}
.kd-hero__pick{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:13px;color:var(--mut)}
.kd-hero__pick img{border-radius:5px}.kd-hero__pick a{text-decoration:none;color:var(--ink)}
.kd-hero__art{text-align:center}.kd-hero__art img{max-height:520px;width:auto}
.kd-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:42px 0}
.kd-strip__row{display:flex;justify-content:center;gap:52px;flex-wrap:wrap;margin-top:18px;font:700 22px var(--disp);color:#9ca3af;letter-spacing:-.02em}
.kd-strip__row .kick{color:#7c8a76;letter-spacing:.04em}.kd-strip__row .twitch{color:#8f84a8}
/* sections */
.kd-sec{padding:72px 0}.kd-sec+.kd-sec{border-top:1px solid var(--line)}
.kd-sec__head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px}
.kd-h2{font:600 clamp(28px,3.4vw,40px)/1.1 var(--disp);letter-spacing:-.03em;color:var(--ink);margin:0 0 8px}
.kd-sec__head p{color:var(--mut);margin:0;max-width:620px}
.kd-h1{font:600 clamp(32px,4.4vw,50px)/1.06 var(--disp);letter-spacing:-.035em;color:var(--ink);margin:10px 0 16px}
/* pick */
.kd-pick{display:grid;grid-template-columns:1.5fr 1fr;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.kd-pick__l{padding:32px}.kd-pick__r{padding:32px;background:var(--soft);border-left:1px solid var(--line)}
.kd-pick p{color:var(--mut)}
.kd-rtitle{display:flex;align-items:center;gap:16px;margin:12px 0}
.kd-rtitle h1,.kd-rtitle h3{font:600 clamp(30px,3.6vw,44px)/1.06 var(--disp);letter-spacing:-.035em;margin:0;color:var(--ink)}
.kd-rtitle .kd-logo{width:58px;height:58px;border-radius:14px}
.kd-logo{width:44px;height:44px;border-radius:11px;border:1px solid var(--line);object-fit:contain;background:#fff;padding:3px;flex:none}
/* cats */
.kd-cats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.kd-cat{position:relative;display:block;padding:22px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none!important;transition:.15s}
.kd-cat:hover{background:var(--soft)}
.kd-cat b{display:block;font:600 19px var(--disp);letter-spacing:-.02em;color:var(--ink)}.kd-cat small{color:var(--mut2);font-size:13px}
.kd-cat .kd-i{position:absolute;right:22px;top:26px;color:var(--mut2)}.kd-cat:hover .kd-i{color:var(--ink);transform:translateX(3px)}
/* steps/check */
.kd-steps,.kd-check{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.kd-steps>div,.kd-check>div{padding:24px 24px 26px 0;border-bottom:1px solid var(--line)}
.kd-steps>div+div,.kd-check>div:not(:nth-child(3n+1)){padding-left:24px;border-left:1px solid var(--line)}
.kd-steps h3,.kd-check h3{font:600 19px/1.25 var(--disp);letter-spacing:-.02em;margin:10px 0 6px;color:var(--ink)}
.kd-steps p,.kd-check p{margin:0;color:var(--mut);font-size:14px}
/* posts */
.kd-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.kd-post{display:block;text-decoration:none!important;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:.15s;background:#fff}
.kd-post:hover{box-shadow:0 10px 30px rgba(16,24,40,.08);transform:translateY(-2px)}
.kd-post img{display:block;width:100%;aspect-ratio:1200/630;object-fit:cover;border-bottom:1px solid var(--line)}
.kd-post>div{padding:18px}.kd-post h3{font:600 18px/1.25 var(--disp);letter-spacing:-.02em;margin:8px 0;color:var(--ink)}.kd-post p{margin:0;font-size:13.5px;color:var(--mut)}
/* faq */
.kd-faq{border-top:1px solid var(--line)}
.kd-faq details{border-bottom:1px solid var(--line);padding:0}
.kd-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:18px 0;font:600 16px var(--sans);color:var(--ink)}
.kd-faq summary::-webkit-details-marker{display:none}.kd-faq summary i{font-style:normal;color:var(--mut2);font-size:20px;line-height:1}
.kd-faq details[open] summary i{transform:rotate(45deg)}
.kd-faq p{margin:0 0 18px;color:var(--mut)}
/* review hero */
.kd-rhero,.kd-phead{padding:20px 0 44px;border-bottom:1px solid var(--line)}
.kd-crumbs{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--mut2);margin:6px 0 34px}
.kd-crumbs a{color:var(--mut2);text-decoration:none;display:flex}.kd-crumbs b{color:var(--tx);font-weight:500}
.kd-metaline{display:flex;flex-wrap:wrap;gap:8px;font:600 10.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mut2)}
.kd-metaline b{color:var(--ink)}
.kd-rhero__grid{display:grid;grid-template-columns:1fr 300px;gap:40px;margin-top:20px}
.kd-rhero__grid>div:first-child{padding-right:36px;border-right:1px solid var(--line)}
.kd-claimed{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;font-weight:500;margin:2px 0 18px}
.kd-claimed .kd-i{color:var(--gd)}
.kd-rhero .kd-lede{margin-left:74px;max-width:520px}.kd-rhero .kd-btns{margin-top:28px}
.kd-rhero--post .kd-lede{margin-left:0;max-width:720px}
.kd-byline{margin-top:18px;font-size:13px;color:var(--mut2)}.kd-byline b{color:var(--tx);font-weight:500}
.kd-rbox__score{font:600 64px/1 var(--disp);letter-spacing:-.04em;color:var(--ink);margin:10px 0 8px}.kd-rbox__score small{font:400 15px var(--sans);color:var(--mut2);margin-left:4px;letter-spacing:0}
.kd-rbox dl,.kd-pick dl{margin:20px 0 0;border-top:1px solid var(--line);padding-top:12px;display:grid;grid-template-columns:auto 1fr;gap:9px 12px;font-size:12.5px}
.kd-rbox dt,.kd-pick dt{color:var(--mut2)}.kd-rbox dd,.kd-pick dd{margin:0;text-align:right;font-weight:600;color:var(--ink)}
/* article columns */
.kd-cols{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;padding-top:30px;padding-bottom:80px}
.kd-aside{position:relative}.kd-side{position:sticky;top:86px}
.kd-trust{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:600 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}
.kd-trust span+span{color:var(--mut2)}.kd-trust a{color:var(--mut2)}
.kd-summary{border:1px solid var(--line);border-radius:12px;padding:20px 22px;margin:22px 0}
.kd-summary h3{font:600 16px var(--disp);margin:0 0 8px;color:var(--ink)}.kd-summary p{margin:0;font-size:14px;color:var(--mut)}
.kd-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;font-size:12px}
.kd-chips span{border:1px solid var(--line);border-radius:999px;padding:5px 11px;color:var(--mut)}.kd-chips b{color:var(--ink)}
.kd-chips a{font-weight:600;padding:5px 4px;text-decoration:underline}
.kd-toc{margin:26px 0 8px}.kd-toc ol{list-style:none;padding:0;margin:10px 0 0;display:grid;grid-template-columns:1fr 1fr;column-gap:28px}
.kd-toc li a{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:13.5px}
.kd-toc li a span{font:12px var(--mono);color:var(--mut2)}.kd-toc li a .kd-i{margin-left:auto;color:var(--mut2)}.kd-toc li a:hover{color:var(--ink)}
.kd-feat{margin:0 0 10px}.kd-feat img{border-radius:14px;border:1px solid var(--line);display:block;width:100%}
.kd-prose{font-size:16px;line-height:1.75;color:#1e2939}
.kd-prose h2{font:600 30px/1.15 var(--disp);letter-spacing:-.03em;color:var(--ink);margin:52px 0 14px}
.kd-prose h3{font:600 21px/1.25 var(--disp);letter-spacing:-.02em;color:var(--ink);margin:30px 0 8px}
.kd-prose p{margin:0 0 18px}.kd-prose ul,.kd-prose ol{padding-left:20px;margin:0 0 18px}.kd-prose li{margin:4px 0}
.kd-prose a:not(.kd-pill):not(.kd-ulink){color:var(--ink);text-decoration:underline;text-decoration-color:var(--g);text-decoration-thickness:2px;text-underline-offset:3px}
.kd-answer{background:var(--soft);border:1px solid var(--line);border-left:3px solid var(--g);border-radius:10px;padding:16px 20px;margin:20px 0}
.kd-answer p:last-child{margin:0}
.kd-qc{list-style:none;padding:0;margin:10px 0 12px;border-top:1px solid var(--line)}
.kd-qc li{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}
.kd-qc li.cur{background:var(--soft);margin:0 -8px;padding:11px 8px}
.kd-qc__n{font:11px var(--mono);color:var(--mut2)}.kd-qc .kd-logo{width:30px;height:30px;border-radius:8px}
.kd-qc a{flex:1;text-decoration:none;min-width:0}.kd-qc b{display:block;font-size:13.5px;font-weight:600}.kd-qc small{display:block;font:600 9.5px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--mut2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kd-qc em{font-style:normal;font-weight:700;font-size:15px}
/* cards */
.kd-cards{display:grid;gap:18px;margin:22px 0}
.kd-card{border:1px solid var(--line);border-radius:16px;padding:24px;background:#fff}
.kd-card--top{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.kd-card__head{display:flex;align-items:flex-start;gap:14px}
.kd-pos{font:12px var(--mono);color:var(--mut2);padding-top:14px}
.kd-card__name{flex:1;min-width:0}.kd-card__name h3{font:600 23px/1.15 var(--disp)!important;letter-spacing:-.025em;margin:4px 0 2px!important}.kd-card__name h3 a{text-decoration:none!important;color:var(--ink)!important}
.kd-card__name p{margin:0!important;font-size:13.5px;color:var(--mut)}
.kd-score{text-align:right;line-height:1}.kd-score b{font:600 32px var(--disp);letter-spacing:-.03em}.kd-score small{color:var(--mut2)}.kd-score span{display:block;font:600 9.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mut2);margin-top:6px}
.kd-facts{display:grid;grid-template-columns:repeat(4,1fr);margin:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.kd-facts div{padding:10px 12px 10px 0}.kd-facts div+div{padding-left:12px;border-left:1px solid var(--line)}
.kd-facts dt{font:600 9.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mut2)}.kd-facts dd{margin:3px 0 0;font-size:13px;font-weight:600;color:var(--ink)}
.kd-pc{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.kd-pc ul{list-style:none!important;padding:0!important;margin:0!important}.kd-pc li{display:flex;gap:8px;font-size:14px;margin:5px 0!important;color:var(--tx)}
.kd-pros .kd-i{color:var(--gd)}.kd-cons .kd-i{color:#c0392b}
.kd-pc h3{margin-top:0!important}
.kd-card .kd-btns{margin-top:18px}
/* table */
.kd-table-wrap{overflow-x:auto;margin:22px 0;border:1px solid var(--line);border-radius:14px}
.kd-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:680px}
.kd-table th{text-align:left;font:600 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mut2);padding:12px 14px;border-bottom:1px solid var(--line);background:var(--soft)}
.kd-table td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle}.kd-table tr:last-child td{border-bottom:0}
.kd-tsvc{display:flex;align-items:center;gap:10px;font-weight:600}.kd-tsvc a{text-decoration:none!important;color:var(--ink)!important}
.kd-table .kd-logo{width:30px;height:30px;border-radius:8px}
.kd-row-top td{background:#f6fff1}
/* cta */
.kd-cta{display:flex;align-items:center;gap:20px;flex-wrap:wrap;border:1px solid var(--line);border-radius:16px;padding:22px 24px;margin:34px 0;background:linear-gradient(90deg,#f6fff1,#fff 60%)}
.kd-cta img{border-radius:14px;border:1px solid var(--line)}
.kd-cta__txt{flex:1;min-width:240px}.kd-cta h3{font:600 20px/1.2 var(--disp)!important;letter-spacing:-.02em;margin:6px 0 4px!important;color:var(--ink)}.kd-cta p{margin:0!important;font-size:14px;color:var(--mut)}
.kd-cta__btns{display:flex;flex-direction:column;align-items:center;gap:10px}
.kd-cta--compact{display:block;margin:26px 0 0;padding:18px;background:var(--soft)}
.kd-cta__row{display:flex;align-items:center;gap:10px;margin-top:10px}.kd-cta__row div{flex:1}.kd-cta__row b{display:block}.kd-cta__row small{color:var(--mut2);font-size:12px}.kd-cta__row em{font:600 22px var(--disp);font-style:normal}
.kd-cta--compact .kd-ulink{margin-top:10px;justify-content:center;width:100%}
/* score bars, verdict */
.kd-bars{border-top:1px solid var(--line)}
.kd-bar{display:grid;grid-template-columns:220px 1fr 40px;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}
.kd-bar div{height:6px;background:#eef0f3;border-radius:99px;overflow:hidden}.kd-bar i{display:block;height:100%;background:var(--ink);border-radius:99px}.kd-bar b{text-align:right}
.kd-verdict{border:1px solid var(--ink);border-radius:16px;padding:24px;display:grid;grid-template-columns:130px 1fr;gap:6px 24px;align-items:start}
.kd-verdict__score{font:600 48px/1 var(--disp);letter-spacing:-.04em;grid-row:span 2}.kd-verdict__score small{font:14px var(--sans);color:var(--mut2)}.kd-verdict__score span{display:block;font:600 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mut2);margin-top:8px}
.kd-verdict p{margin:0 0 10px}.kd-verdict .kd-pill{justify-self:start}
/* page */
.kd-page>.kd-sec:first-child{padding-top:40px}
.kd-page .kd-prose{max-width:780px;margin:0 auto;padding:40px 28px 80px}
/* footer */
.kd-footer{border-top:1px solid var(--line);background:var(--soft);padding:56px 0 30px;font-size:13.5px}
.kd-footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px}
.kd-footer__grid p{color:var(--mut);max-width:300px}
.kd-footer h4{font:600 10.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mut2);margin:6px 0 12px}
.kd-footer__grid a:not(.kd-brand):not(.kd-pill){display:block;color:var(--tx);text-decoration:none;padding:3px 0}.kd-footer__grid a:hover{text-decoration:underline}
.kd-footer__note{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);color:var(--mut2);font-size:12.5px}.kd-footer__note p{margin:4px 0}
@media(max-width:980px){.kd-nav{display:none}.kd-burger{display:block}body.kd-menu-open .kd-nav{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:64px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:12px}
body.kd-menu-open .kd-dd{position:static;box-shadow:none;border:0}
.kd-hero__grid,.kd-rhero__grid,.kd-cols,.kd-pick{grid-template-columns:1fr}.kd-rhero__grid>div:first-child{border:0;padding:0}.kd-rhero .kd-lede{margin-left:0}
.kd-pick__r{border-left:0;border-top:1px solid var(--line)}.kd-cats,.kd-posts,.kd-steps,.kd-check{grid-template-columns:1fr 1fr}.kd-footer__grid{grid-template-columns:1fr 1fr}.kd-side{position:static}.kd-header .kd-pill{display:none}}
@media(max-width:640px){.kd-cats,.kd-posts,.kd-steps,.kd-check,.kd-pc,.kd-toc ol{grid-template-columns:1fr}.kd-facts{grid-template-columns:1fr 1fr}.kd-bar{grid-template-columns:1fr 60px 34px}.kd-steps>div,.kd-check>div{padding-left:0!important;border-left:0!important}}
