:root{--bg:#050609;--panel:#0d0f15;--panel2:#121520;--text:#f7f8fb;--muted:#a5adbd;--line:#242938;--violet:#8b6cff;--violet2:#6e4eea;--cyan:#2dd4bf;--rose:#e66ea4;--green:#56d99a;--shadow:0 24px 70px rgba(0,0,0,.35);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 50% -10%,rgba(92,70,180,.13),transparent 32rem),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input{font:inherit}.wrap{width:min(var(--max),calc(100% - 32px));margin-inline:auto}.skip{position:fixed;left:16px;top:-60px;z-index:100;background:var(--violet);padding:10px 14px;border-radius:10px}.skip:focus{top:16px}.site-header{position:sticky;top:12px;z-index:50;padding-top:12px}.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:11px 14px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(7,8,12,.82);backdrop-filter:blur(18px);box-shadow:0 12px 40px rgba(0,0,0,.18)}.brand{display:inline-flex;align-items:center;min-width:132px}.brand img{width:128px;height:auto;display:block}.nav-links{display:flex;align-items:center;gap:5px}.nav-links a{padding:8px 11px;border-radius:9px;color:var(--muted);font-size:.91rem;font-weight:650}.nav-links a:hover,.nav-links a[aria-current=page]{background:#ffffff0b;color:var(--text)}.nav-actions{display:flex;gap:8px}.menu-btn{display:none;border:1px solid var(--line);background:#ffffff08;color:var(--text);width:42px;height:42px;border-radius:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:11px;padding:11px 17px;font-weight:750;line-height:1.2;transition:.2s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--violet),var(--violet2));box-shadow:0 12px 32px rgba(110,78,234,.24)}.btn-secondary{border-color:var(--line);background:#ffffff08}.btn-small{padding:9px 13px;font-size:.88rem}.hero{padding:112px 0 76px;text-align:center}.eyebrow{display:inline-flex;gap:9px;align-items:center;padding:7px 12px;border:1px solid rgba(139,108,255,.25);background:rgba(139,108,255,.1);color:#cfc4ff;border-radius:999px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}.hero h1,.page-hero h1{max-width:970px;margin:24px auto 18px;font-size:clamp(2.8rem,7vw,5.5rem);line-height:.98;letter-spacing:-.055em}.gradient{background:linear-gradient(100deg,#fff 5%,#bcaeff 45%,#7ee6dc 95%);-webkit-background-clip:text;background-clip:text;color:transparent}.lede{max-width:770px;margin:0 auto;color:var(--muted);font-size:clamp(1rem,2vw,1.25rem)}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}.trust-row{display:flex;flex-wrap:wrap;justify-content:center;gap:9px 24px;margin-top:42px;color:#bdc4d2;font-size:.88rem}.trust-row span:before{content:"✓";color:var(--cyan);margin-right:8px}.section{padding:72px 0}.section-tight{padding:48px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.section-heading h2,.content-block h2{margin:0;font-size:clamp(2rem,4vw,3.1rem);line-height:1.08;letter-spacing:-.035em}.section-heading p{max-width:650px;margin:8px 0 0;color:var(--muted)}.kicker{margin:0 0 8px;color:#a997ff;text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;font-weight:850}.grid{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{position:relative;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));padding:23px;box-shadow:0 1px 0 rgba(255,255,255,.03) inset}.card:hover{border-color:#454063}.card h3{margin:10px 0 7px;font-size:1.18rem;line-height:1.25}.card p{margin:0;color:var(--muted)}.card .meta{margin-top:18px}.icon-chip{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,rgba(139,108,255,.2),rgba(45,212,191,.12));border:1px solid rgba(255,255,255,.08);color:#d7ceff;font-weight:900}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;border:1px solid rgba(139,108,255,.24);background:rgba(139,108,255,.09);color:#c8bcff;font-size:.69rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.card-link:after{content:"";position:absolute;inset:0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:54px}.metric{border-top:1px solid var(--line);padding-top:18px;text-align:left}.metric strong{display:block;font-size:1.8rem}.metric span{color:var(--muted);font-size:.83rem}.tool-card{display:flex;flex-direction:column}.tool-card .topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tool-card .best{margin:15px 0 8px;color:#dfe3eb;font-weight:720}.tool-card .watch{margin-top:13px;padding-top:13px;border-top:1px solid var(--line);font-size:.85rem;color:#9199aa}.tool-card .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:18px}.affiliate-note{font-size:.78rem;color:#8992a5;margin:14px 0 0}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--panel)}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;padding:15px 17px;border-bottom:1px solid var(--line);vertical-align:top}th{color:#c7cede;background:#ffffff05;font-size:.76rem;text-transform:uppercase;letter-spacing:.09em}td{color:var(--muted)}td strong{color:var(--text)}tr:last-child td{border-bottom:0}.page-hero{padding:86px 0 48px}.page-hero h1{text-align:left;margin-inline:0;font-size:clamp(2.6rem,6vw,4.8rem);max-width:1000px}.page-hero .lede{margin-inline:0}.breadcrumbs{display:flex;flex-wrap:wrap;gap:7px;color:#8992a5;font-size:.82rem;margin-bottom:20px}.breadcrumbs a:hover{color:var(--text)}.breadcrumbs span:not(:last-child):after{content:"/";margin-left:7px;color:#555d70}.article-shell{display:grid;grid-template-columns:minmax(0,760px) minmax(230px,1fr);gap:56px;align-items:start}.article{min-width:0}.article h1{font-size:clamp(2.4rem,5.5vw,4.5rem);line-height:1.02;letter-spacing:-.048em;margin:17px 0}.article h2{font-size:clamp(1.65rem,3vw,2.3rem);line-height:1.15;letter-spacing:-.025em;margin:52px 0 14px}.article h3{font-size:1.22rem;margin:28px 0 8px}.article p,.article li{color:#c2c8d3;font-size:1.03rem}.article p{margin:0 0 17px}.article ul,.article ol{padding-left:22px}.article li{margin:7px 0}.article a:not(.btn){color:#bbaeff;text-decoration:underline;text-decoration-color:#5f558e;text-underline-offset:3px}.article-meta{display:flex;flex-wrap:wrap;gap:10px 18px;color:#949dad;font-size:.88rem}.article-dek{font-size:1.2rem!important;color:#b8c0cf!important;margin:20px 0 30px!important}.callout{border-left:3px solid var(--violet);background:rgba(139,108,255,.08);padding:18px 20px;border-radius:0 13px 13px 0;margin:28px 0}.callout strong{display:block;margin-bottom:5px}.aside{position:sticky;top:100px}.aside .card{margin-bottom:14px}.aside h2{font-size:1rem;margin:0 0 12px}.toc{display:grid;gap:8px}.toc a{font-size:.86rem;color:var(--muted)}.toc a:hover{color:var(--text)}.source-list{display:grid;gap:11px}.source-list a{display:block}.source-list small{display:block;color:#8992a5;margin-top:2px}.updated-box{display:flex;gap:13px;align-items:flex-start;padding:18px;border:1px solid rgba(45,212,191,.22);background:rgba(45,212,191,.06);border-radius:15px;margin:28px 0}.updated-box strong{display:block}.updated-box p{margin:2px 0 0;font-size:.88rem}.filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.filter-btn{border:1px solid var(--line);background:#ffffff06;color:var(--muted);padding:9px 13px;border-radius:999px;cursor:pointer}.filter-btn.is-active,.filter-btn:hover{color:var(--text);border-color:#6658a5;background:rgba(139,108,255,.12)}.search{width:min(100%,460px);border:1px solid var(--line);background:#ffffff07;color:var(--text);border-radius:11px;padding:12px 14px;margin-bottom:17px}.search::placeholder{color:#71798b}.newsletter{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;border:1px solid rgba(139,108,255,.25);border-radius:22px;padding:32px;background:linear-gradient(135deg,rgba(139,108,255,.11),rgba(45,212,191,.05))}.newsletter h2{font-size:2rem;margin:0 0 8px}.newsletter p{margin:0;color:var(--muted)}.newsletter form{display:flex;gap:9px}.newsletter input{min-width:0;flex:1;border:1px solid var(--line);background:#080a0f;color:var(--text);border-radius:11px;padding:12px 14px}.trust-panel{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center;border:1px solid var(--line);padding:30px;border-radius:20px;background:var(--panel)}.trust-panel h2{margin:0 0 8px;font-size:2rem}.trust-panel p{color:var(--muted)}.check-list{display:grid;gap:10px}.check-list span:before{content:"✓";color:var(--green);margin-right:9px}.site-footer{border-top:1px solid var(--line);margin-top:70px;padding:48px 0 26px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}.footer-grid h2{font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;color:#c7cede}.footer-grid p,.footer-grid a{color:var(--muted);font-size:.9rem}.footer-links{display:grid;gap:9px}.footer-links a:hover{color:var(--text)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;margin-top:32px;color:#7f8797;font-size:.78rem}.empty{display:none}.legal h2{margin-top:36px}.legal p,.legal li{color:#c2c8d3}.not-found{text-align:center;padding:140px 0}.not-found h1{font-size:7rem;line-height:1;margin:0;background:linear-gradient(90deg,var(--violet),var(--cyan));-webkit-background-clip:text;color:transparent}
@media(max-width:960px){.nav-actions .btn{display:none}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.article-shell{grid-template-columns:1fr}.aside{position:static;display:grid;grid-template-columns:1fr 1fr}.newsletter,.trust-panel{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:760px){.nav-links{display:none;position:absolute;left:16px;right:16px;top:68px;flex-direction:column;align-items:stretch;padding:12px;border:1px solid var(--line);background:#090b10;border-radius:14px;box-shadow:var(--shadow)}.nav-links.is-open{display:flex}.nav-links a{padding:11px}.menu-btn{display:block}.hero{padding-top:82px}.metrics{grid-template-columns:repeat(2,1fr)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.section{padding:52px 0}.section-heading{align-items:flex-start;flex-direction:column}.newsletter form{flex-direction:column}.aside{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column}.page-hero{padding-top:62px}.article h1{font-size:2.55rem}.trust-row{justify-content:flex-start}.hero .trust-row{justify-content:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* 2026 balanced-dark refresh: softer than the original black theme, with clear controls */
:root{--bg:#171d2a;--panel:#222a3a;--panel2:#293347;--text:#f4f7fb;--muted:#b8c2d3;--line:#3d4960;--violet:#9b7cff;--violet2:#7457df;--cyan:#43cbd2;--rose:#ef7eb0;--green:#57d5a1;--shadow:0 24px 64px rgba(4,8,16,.3)}
body{background:radial-gradient(circle at 15% 0,rgba(128,91,231,.2),transparent 34rem),radial-gradient(circle at 88% 14%,rgba(35,177,190,.12),transparent 31rem),var(--bg);color:var(--text)}
.nav-shell{border-color:rgba(255,255,255,.14);background:rgba(15,22,39,.94);box-shadow:0 14px 36px rgba(25,35,56,.2)}
.nav-links a{color:#c8d2e3}.nav-links a:hover,.nav-links a[aria-current=page]{background:rgba(255,255,255,.11);color:#fff}.nav-shell .btn-secondary{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff}.menu-btn{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff}
.btn{box-shadow:0 2px 5px rgba(3,7,15,.18)}.btn-primary{color:#fff;background:linear-gradient(135deg,#9a72ff,var(--violet2));box-shadow:0 12px 30px rgba(82,55,179,.38)}.btn-primary:hover{box-shadow:0 16px 38px rgba(82,55,179,.45)}.btn-secondary{border-color:#526078;background:#283246;color:#f4f7fb}.btn-secondary:hover{border-color:#9b83e8;background:#323c53}
.eyebrow{border-color:#6c5a9b;background:#2c2744;color:#d9ceff}.gradient{background:linear-gradient(100deg,#fff 3%,#c7b8ff 48%,#70e0e2 96%);-webkit-background-clip:text;background-clip:text;color:transparent}.lede{color:#c4ccda}.trust-row{color:#bbc4d3}.trust-row span:before{color:#62dbab}
.section-heading p,.card p,.metric span,.newsletter p,.trust-panel p{color:var(--muted)}.kicker{color:#c1b1ff}.card{border-color:#414d64;background:linear-gradient(145deg,rgba(39,48,67,.98),rgba(30,37,53,.98));box-shadow:0 13px 34px rgba(4,8,16,.18),0 1px 0 rgba(255,255,255,.04) inset;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.card:hover{border-color:#7969ad;box-shadow:0 18px 44px rgba(6,10,20,.27);transform:translateY(-2px)}.icon-chip{background:linear-gradient(135deg,#3b315f,#244a56);border-color:#65599a;color:#e0d8ff}.badge{border-color:#695b9a;background:#302a4c;color:#dcd2ff}.metric{border-color:#3b465b}.tool-card .best{color:#e9edf5}.tool-card .watch{border-color:#3d4960;color:#aab5c7}.affiliate-note{color:#9eabc0}
.table-wrap{border-color:#414d63;background:#202838;box-shadow:0 12px 32px rgba(4,8,16,.18)}th,td{border-color:#3a455a}th{color:#d8deea;background:#293348}td{color:#b8c2d3}td strong{color:var(--text)}
.breadcrumbs{color:#9da9bc}.breadcrumbs a{color:#c7b9ff}.breadcrumbs a:hover{color:#fff}.breadcrumbs span:not(:last-child):after{color:#68758b}.article p,.article li,.legal p,.legal li{color:#c2cad8}.article-meta{color:#a6b1c3}.article-dek{color:#c8d0de!important}.article a:not(.btn){color:#c8baff;text-decoration-color:#7768ad}.callout{border-color:#9b7cff;background:#2b2641}.toc a{color:#b3bed0}.toc a:hover{color:#fff}.source-list small{color:#9ca8bb}.updated-box{border-color:#377c76;background:#203a3b}
.filter-btn{border-color:#4a576e;background:#252e41;color:#c6cfdd;box-shadow:0 3px 9px rgba(4,8,16,.12)}.filter-btn.is-active,.filter-btn:hover{color:#fff;border-color:#9573f4;background:#7658dc}.search{border-color:#4a576e;background:#222a3a;color:var(--text);box-shadow:0 7px 20px rgba(4,8,16,.14)}.search:focus{outline:3px solid rgba(155,124,255,.22);border-color:#9b7cff}.search::placeholder{color:#929fb3}
.newsletter{border-color:#5d527e;background:linear-gradient(135deg,#2d2844,#203a42);box-shadow:0 16px 38px rgba(4,8,16,.2)}.newsletter input{border-color:#4a576e;background:#1d2534;color:var(--text)}.trust-panel{border-color:#414d63;background:#222a3a;box-shadow:0 14px 38px rgba(4,8,16,.2)}.check-list span:before{color:#5bd9a7}
.site-footer{border-color:#202b42;background:#101727;color:#fff;padding-top:54px}.site-footer .wrap{color:#fff}.footer-grid h2{color:#e4e9f3}.footer-grid p,.footer-grid a{color:#b7c2d5}.footer-links a:hover{color:#fff}.footer-bottom{border-color:#2a354b;color:#96a4ba}
.not-found h1{background:linear-gradient(90deg,var(--violet),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.animation-frame{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:30px;align-items:stretch;border:1px solid #46536b;border-radius:24px;padding:30px;background:linear-gradient(135deg,rgba(44,52,73,.97),rgba(29,37,53,.97));box-shadow:0 22px 55px rgba(4,8,16,.22);overflow:hidden}.animation-copy{display:flex;flex-direction:column;justify-content:center;padding:12px}.animation-copy h2{margin:0;font-size:clamp(2rem,4vw,3.35rem);line-height:1.03;letter-spacing:-.04em}.animation-copy p:not(.kicker){color:#bec8d8;margin:16px 0 22px}.animation-spec{width:max-content;max-width:100%;padding:8px 11px;border:1px solid #526078;border-radius:9px;background:#202838;color:#aeb9cb;font-size:.78rem}.animation-spec code{color:#dacfff}.animation-viewport{position:relative;min-height:390px;border:1px solid #536078;border-radius:19px;background:radial-gradient(circle at 50% 46%,rgba(119,86,224,.3),transparent 24%),radial-gradient(circle at 70% 30%,rgba(44,196,204,.18),transparent 25%),#151c2a;overflow:hidden;isolation:isolate}.animation-viewport:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent)}
@media(max-width:960px){.animation-frame{grid-template-columns:1fr}.animation-copy{padding:4px}.animation-viewport{min-height:340px}}
@media(max-width:760px){.nav-links{border-color:rgba(255,255,255,.15);background:#11192b;box-shadow:0 20px 45px rgba(15,23,40,.3)}.nav-links a{color:#d2daea}.nav-links a:hover,.nav-links a[aria-current=page]{background:rgba(255,255,255,.1);color:#fff}}
@media(max-width:560px){.animation-frame{padding:18px;gap:20px}.animation-viewport{min-height:280px}}
.animation-stage{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:2;touch-action:pan-y}
.animation-viewport{cursor:crosshair}
.animation-viewport.is-live:after{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 50% 50%,rgba(140,105,237,.16),transparent 62%);pointer-events:none}
.animation-fallback{position:absolute;inset:0;z-index:3;display:grid;place-items:center;margin:0;padding:24px;text-align:center;color:#bec8d8;font-size:.92rem}
@media(prefers-reduced-motion:reduce){.animation-viewport{cursor:default}}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.empty-state{margin:26px 0 0;padding:22px;border:1px dashed var(--line);border-radius:14px;text-align:center;color:var(--muted)}
.link-btn{border:0;background:none;padding:0;color:var(--violet);font-weight:700;cursor:pointer;text-decoration:underline}
.related-list{display:grid;gap:9px;padding-left:20px}
.related-list li{margin:0}
.badge-link{text-decoration:none;transition:.15s ease}
.badge-link:hover{border-color:var(--violet);color:var(--violet)}
.sitemap-index{display:grid;gap:34px}
.sitemap-index .content-block h2{font-size:1.45rem;letter-spacing:-.01em;margin:0 0 4px}
.sitemap-index .content-block>p{margin:0 0 12px;color:var(--muted);font-size:.88rem}
.sitemap-index .related-list{gap:7px}
