/* Password Tools Hub v5.3.0 — modern, lightweight, responsive */
:root{
  --bg:#f7f8fc;--bg-2:#eef2ff;--surface:#ffffff;--surface-soft:#f3f6fb;
  --ink:#0b1220;--text:#172033;--muted:#667085;--muted-2:#98a2b3;
  --brand:#5b5cf6;--brand-dark:#4546d7;--brand-soft:#eeefff;--cyan:#06b6d4;
  --success:#0f9f6e;--success-soft:#ecfdf5;--warning:#b7791f;--warning-soft:#fffbeb;
  --danger:#c2414b;--danger-soft:#fff1f2;--line:#e4e7ec;--line-strong:#d0d5dd;
  --shadow-sm:0 2px 10px rgba(16,24,40,.05);--shadow:0 18px 50px rgba(16,24,40,.10);
  --shadow-lg:0 30px 80px rgba(21,27,58,.18);--radius:20px;--radius-sm:13px;--max:1200px;
  --header-h:72px;color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;min-width:320px;overflow-x:hidden;background:linear-gradient(180deg,#fff 0,#f7f8fc 420px);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.68;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
img,svg,video,iframe{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}
a,a:visited{color:var(--brand-dark);text-decoration:none!important}a:hover{color:var(--brand)}
::selection{background:#dfe2ff;color:#111827}
:focus-visible{outline:3px solid rgba(91,92,246,.35);outline-offset:3px;border-radius:8px}
.skip-link{position:absolute;left:-9999px;top:auto}.skip-link:focus{left:18px;top:18px;z-index:9999;background:#fff;color:var(--ink);padding:11px 16px;border-radius:12px;box-shadow:var(--shadow)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.container,.header-inner,.footer-inner{width:min(100% - 40px,var(--max));margin-inline:auto;min-width:0}

/* Header */
.site-header{position:sticky;top:0;z-index:100;height:var(--header-h);background:rgba(255,255,255,.88);border-bottom:1px solid rgba(228,231,236,.8);backdrop-filter:saturate(160%) blur(18px);-webkit-backdrop-filter:saturate(160%) blur(18px)}
.header-inner{height:100%;display:flex;align-items:center;gap:18px}
.brand{display:flex;align-items:center;gap:11px;flex:0 0 auto;color:var(--ink)!important;font-weight:850;letter-spacing:-.035em}
.brand-mark{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;background:linear-gradient(145deg,#6d6ef9 0%,#4c4ee8 50%,#06b6d4 140%);color:#fff;font-size:1rem;font-weight:900;box-shadow:0 8px 22px rgba(91,92,246,.28);position:relative;overflow:hidden}
.brand-mark:after{content:"";position:absolute;width:25px;height:25px;right:-10px;top:-9px;border-radius:50%;background:rgba(255,255,255,.25)}
.brand-text{font-size:1rem;white-space:nowrap}
.main-nav{display:flex;align-items:center;gap:3px;margin-left:auto;min-width:0}
.main-nav a{padding:9px 10px;border-radius:10px;color:#344054!important;font-size:.82rem;font-weight:700;white-space:nowrap;transition:background .18s ease,color .18s ease}
.main-nav a:hover,.main-nav a[aria-current="page"]{background:var(--brand-soft);color:var(--brand-dark)!important}
.header-actions{display:flex;align-items:center;gap:7px;order:3}
.nav-toggle,.theme-toggle{min-width:42px;min-height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow-sm)}
.nav-toggle{display:none}.theme-toggle{font-size:1.05rem}
.site-search{position:relative;display:flex;align-items:center;flex:0 1 220px;order:2}
.site-search:before{content:"⌕";position:absolute;left:13px;top:50%;transform:translateY(-53%);color:#667085;font-size:1.15rem;pointer-events:none}
.site-search input{width:100%;height:42px;padding:0 13px 0 37px;border:1px solid var(--line);border-radius:12px;background:#f9fafb;color:var(--ink);font-size:.88rem;transition:border .18s ease,background .18s ease,box-shadow .18s ease}
.site-search input:focus{background:#fff;border-color:#a6a7fb;box-shadow:0 0 0 4px rgba(91,92,246,.1);outline:none}
.search-results{position:absolute;right:0;top:50px;width:min(430px,calc(100vw - 28px));max-height:420px;overflow:auto;display:none;padding:8px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg)}
.search-results.show{display:block}.search-result{display:block;padding:12px 13px;border-radius:11px;color:var(--text)!important}.search-result:hover{background:var(--surface-soft)}.search-result small{color:var(--muted)}

/* Hero */
.hero{position:relative;isolation:isolate;overflow:hidden;padding:70px 0 38px;background:linear-gradient(135deg,#11152d 0%,#181c44 48%,#172452 100%);color:#fff}
.hero:before,.hero:after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(2px);pointer-events:none}
.hero:before{width:560px;height:560px;right:-170px;top:-300px;background:radial-gradient(circle,rgba(70,208,230,.28),transparent 68%)}
.hero:after{width:460px;height:460px;left:-240px;bottom:-260px;background:radial-gradient(circle,rgba(123,92,246,.38),transparent 67%)}
.hero h1{max-width:900px;margin:20px 0 16px;font-size:clamp(2.55rem,5.8vw,5.25rem);line-height:.98;letter-spacing:-.058em;color:#fff;text-wrap:balance}
.hero .lead{max-width:760px;margin:0;color:#cbd5e1;font-size:clamp(1.06rem,2vw,1.26rem);line-height:1.65}
.hero .meta-line{color:#aeb9cf}.hero .eyebrow{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18);color:#e5e7ff;box-shadow:inset 0 1px 0 rgba(255,255,255,.09)}
.hero .trust-chip{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#eff2ff}
.hero .tool-shell{margin-top:34px}
.page-hero{position:relative;overflow:hidden;padding:52px 0 34px;background:linear-gradient(180deg,#f4f5ff 0%,#f7f8fc 100%);border-bottom:1px solid var(--line)}
.page-hero:after{content:"";position:absolute;right:-120px;top:-180px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(91,92,246,.13),transparent 68%);pointer-events:none}
.page-hero h1{max-width:960px;margin:16px 0 14px;font-size:clamp(2.3rem,5vw,4.35rem);line-height:1.03;letter-spacing:-.055em;color:var(--ink);text-wrap:balance}
.page-hero .lead{max-width:780px;margin:0;color:var(--muted);font-size:clamp(1.05rem,2vw,1.22rem)}
.eyebrow,.badge{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid #d8d9ff;border-radius:999px;background:var(--brand-soft);color:var(--brand-dark);font-size:.76rem;font-weight:850;letter-spacing:.055em;text-transform:uppercase}
.meta-line{display:flex;flex-wrap:wrap;gap:8px 18px;margin:18px 0 0;color:var(--muted);font-size:.88rem}.meta-line span{display:inline-flex;align-items:center;gap:7px}.meta-line span+span:before{content:"•";color:#b0b5c3;margin-right:2px}
.trust-row{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 0}.trust-chip{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#344054;font-size:.84rem;font-weight:750}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:#7b8496;font-size:.84rem;margin-bottom:16px}.breadcrumb a{color:#667085!important;font-weight:650}.breadcrumb a:hover{color:var(--brand)!important}
.review-line{max-width:880px;margin-top:18px;padding:11px 14px;border:1px solid #dfe2ff;border-left:4px solid var(--brand);border-radius:11px;background:rgba(255,255,255,.75);color:var(--muted);font-size:.88rem}.review-line strong{color:var(--ink)}

/* Layout and surfaces */
.section{padding:38px 0}.section>div{min-width:0}.section h2{font-size:clamp(1.65rem,3vw,2.45rem);line-height:1.15;letter-spacing:-.038em;color:var(--ink)}
.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card,.tool-panel,.tool-card,.official-link,.faq details,.toc,.resource-callout{background:rgba(255,255,255,.96);border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.card{border-radius:var(--radius);padding:25px;min-width:0}.card h2,.card h3{margin-top:0;color:var(--ink)}
.article{max-width:900px;margin-inline:auto;background:#fff;border:1px solid var(--line);border-radius:24px;padding:clamp(24px,4vw,50px);box-shadow:0 12px 35px rgba(16,24,40,.055);overflow-wrap:anywhere}
.article> :first-child{margin-top:0}.article h2{margin:46px 0 14px;font-size:clamp(1.55rem,2.7vw,2.05rem);line-height:1.2;letter-spacing:-.035em;color:var(--ink);scroll-margin-top:96px}.article h3{margin:30px 0 10px;font-size:1.25rem;line-height:1.3;color:#1d2939}.article p,.article li{font-size:1.025rem;color:#344054}.article strong{color:#1d2939}.article a{font-weight:720;color:var(--brand-dark)!important;border-radius:5px}.article a:hover{background:var(--brand-soft);color:var(--brand)!important}
.article ul,.article ol{padding-left:1.35rem}.article li+li{margin-top:.42rem}.article blockquote{margin:26px 0;padding:17px 20px;border-left:4px solid var(--brand);border-radius:0 15px 15px 0;background:var(--brand-soft);color:#344054}
.article code{padding:.15em .38em;border-radius:6px;background:#f2f4f7;color:#344054;font-size:.91em;overflow-wrap:anywhere}.article pre{max-width:100%;overflow:auto;padding:18px;border-radius:15px;background:#101828;color:#e5e7eb}
.article table{width:100%;border-collapse:separate;border-spacing:0;margin:24px 0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:var(--shadow-sm)}
.article th,.article td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}.article th{background:#f5f6ff;color:#27305b;font-size:.88rem;text-transform:none}.article tr:last-child td{border-bottom:0}.article caption{text-align:left;margin-bottom:9px;font-weight:800;color:var(--ink)}
.toc{margin:24px 0;padding:20px 22px;border-radius:17px;background:linear-gradient(135deg,#f7f7ff,#f2f8ff)}.toc strong{display:block;margin-bottom:10px;color:var(--ink)}.toc ul{margin:0}.toc a{font-weight:680}
.quality-addendum{margin-top:40px}.resource-callout{padding:20px;border-radius:16px;background:linear-gradient(135deg,#f7f7ff,#f5fbff)}

/* Tools */
.tool-shell{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.62fr);gap:22px;margin:26px 0 40px;align-items:stretch}
.tool-panel{position:relative;border-radius:26px;padding:clamp(22px,3vw,32px);box-shadow:var(--shadow-lg);overflow:hidden;min-width:0}
.tool-panel:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--brand),var(--cyan))}
.tool-panel h2{margin:4px 0 16px;font-size:clamp(1.55rem,2.5vw,2.05rem);letter-spacing:-.035em;color:var(--ink)}
.tool-shell>.card{border-radius:24px;background:linear-gradient(180deg,#fff,#f8f9ff);box-shadow:0 18px 50px rgba(16,24,40,.09)}
.kicker{font-size:.71rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase;color:var(--brand)}
.controls{display:grid;gap:17px}.control-row{display:grid;gap:8px}.control-row.inline{grid-template-columns:1fr auto;align-items:center}.control-row label,.fieldset-title{font-weight:780;color:#344054}.control-row output{min-width:42px;padding:4px 9px;border-radius:999px;background:var(--brand-soft);color:var(--brand-dark);font-weight:850;text-align:center}
input[type="range"]{width:100%;accent-color:var(--brand)}
.select,input[type="number"],input[type="text"],input[type="password"],input[type="search"],textarea,select{width:100%;max-width:100%;border:1px solid var(--line-strong);border-radius:12px;padding:12px 13px;background:#fff;color:var(--ink);transition:border .18s ease,box-shadow .18s ease,background .18s ease}
.select:focus,input:focus,textarea:focus,select:focus{border-color:#9b9cfb;box-shadow:0 0 0 4px rgba(91,92,246,.1);outline:none}
.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.check{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border:1px solid var(--line);border-radius:13px;background:#fafbff;color:#344054;font-weight:650;transition:border .18s ease,background .18s ease,transform .18s ease}.check:hover{border-color:#c9caff;background:#f6f6ff}.check:has(input:checked){border-color:#b7b8ff;background:var(--brand-soft);color:#303183}.check input{margin-top:4px;accent-color:var(--brand)}
.btn-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:17px}.btn{min-height:46px;appearance:none;border:0;border-radius:12px;padding:11px 17px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:800;line-height:1.15;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--brand),#4b4de0);color:#fff!important;box-shadow:0 9px 24px rgba(91,92,246,.25)}.btn-primary:hover{background:linear-gradient(135deg,#6667fb,#4849db);color:#fff!important;box-shadow:0 12px 28px rgba(91,92,246,.31)}.btn-secondary{background:#fff;color:#344054!important;border:1px solid var(--line);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:#f8f9fc;color:var(--ink)!important;border-color:#cfd3da}.btn-warning{background:var(--warning-soft);color:#8a5a13!important;border:1px solid #f1d697}
.tool-output{display:flex;align-items:stretch;gap:10px;margin:17px 0}.tool-output input,.tool-output textarea{flex:1;min-width:0;padding:15px;border-color:#d7d9ed;background:#f8f9ff;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1rem;color:#20263b}.tool-output textarea{min-height:155px;resize:vertical;line-height:1.55;overflow-wrap:anywhere}
.strength-meter{height:9px;overflow:hidden;margin:12px 0 8px;border-radius:999px;background:#e9ebf3}.strength-meter span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f97373,#f7b84b,#19b977);transition:width .25s ease}
.tool-note{color:var(--muted);font-size:.9rem}.status-box,.warning-box,.danger-box{border-radius:14px;padding:14px 16px}.status-box{border:1px solid #a7e5ca;background:var(--success-soft);color:#08724f}.warning-box{border:1px solid #f3d79e;background:var(--warning-soft);color:#7a5519}.danger-box{border:1px solid #fecdd3;background:var(--danger-soft);color:#a52f3a}.danger-box:empty{display:none}

/* Cards, links, FAQs */
.tool-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.tool-card{position:relative;display:block;min-width:0;padding:21px;border-radius:18px;color:var(--text)!important;transition:transform .18s ease,border .18s ease,box-shadow .18s ease}.tool-card:after{content:"→";position:absolute;right:17px;top:16px;color:#9b9cfb;font-weight:900;transition:transform .18s ease}.tool-card:hover{transform:translateY(-3px);border-color:#c9caff;box-shadow:0 18px 42px rgba(28,32,74,.11);color:var(--text)!important}.tool-card:hover:after{transform:translateX(3px)}.tool-card .icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,var(--brand-soft),#e7faff);color:var(--brand-dark);font-size:1rem;font-weight:900}.tool-card h3{margin:13px 24px 6px 0;color:var(--ink);font-size:1.03rem;line-height:1.35}.tool-card p{margin:0;color:var(--muted);font-size:.91rem}
.official-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.official-link{display:block;padding:14px;border-radius:14px;color:var(--text)!important;transition:border .18s ease,transform .18s ease,background .18s ease}.official-link:hover{transform:translateY(-2px);border-color:#c4c5ff;background:#fafaff}.official-link strong{display:block;color:var(--ink)}.official-link span{display:block;margin-top:3px;color:var(--muted);font-size:.87rem}
.faq details{margin:10px 0;padding:0 17px;border-radius:14px;overflow:hidden}.faq summary{padding:16px 26px 16px 0;cursor:pointer;font-weight:780;color:var(--ink);position:relative;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:var(--brand-soft);color:var(--brand-dark);font-size:1.1rem}.faq details[open] summary:after{content:"−"}.faq details p{margin:0;padding:0 0 16px;color:var(--muted)}
.list-clean{list-style:none;padding:0;margin:0}.list-clean li{padding:9px 0;border-bottom:1px solid rgba(228,231,236,.15)}.list-clean li:last-child{border-bottom:0}
.ad-slot{display:none;min-height:120px;margin:28px 0;border:1px dashed var(--line-strong);border-radius:16px;background:#fafafa;color:var(--muted);align-items:center;justify-content:center}.ad-slot.is-active{display:flex}
.sitemap-list{columns:3;column-gap:32px;padding-left:20px}.sitemap-list li{break-inside:avoid;margin:0 0 9px}

/* Footer */
.site-footer{margin-top:70px;background:#0d1328;color:#c9d1e2;position:relative;overflow:hidden}.site-footer:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,#6063f6,transparent)}.footer-inner{padding:52px 0 28px}.footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:34px}.site-footer h3{margin:0 0 13px;color:#fff;font-size:1rem}.site-footer p{color:#aeb8ce;font-size:.92rem}.site-footer a{color:#cbd3e4!important;font-size:.91rem}.site-footer a:hover{color:#fff!important}.footer-note{margin-top:32px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);color:#8f9bb3;font-size:.85rem}
.cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:200;display:none;max-width:760px;margin:auto;padding:19px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-lg)}.cookie-banner.show{display:block}.cookie-banner p{margin:4px 0 13px;color:var(--muted)}.cookie-actions{display:flex;flex-wrap:wrap;gap:9px}
.print-only{display:none}

/* Dark theme */
html[data-theme="dark"]{color-scheme:dark;--bg:#0c1020;--bg-2:#11162a;--surface:#151a2c;--surface-soft:#1b2136;--ink:#f5f7ff;--text:#e4e7f2;--muted:#a4acc1;--muted-2:#7e879e;--brand:#8183ff;--brand-dark:#a9aaff;--brand-soft:#23284b;--cyan:#4dd8ea;--line:#2a3148;--line-strong:#39415d;--shadow-sm:0 2px 12px rgba(0,0,0,.18);--shadow:0 18px 50px rgba(0,0,0,.26);--shadow-lg:0 30px 80px rgba(0,0,0,.36)}
html[data-theme="dark"] body{background:linear-gradient(180deg,#0f1426 0,#0c1020 430px);color:var(--text)}
html[data-theme="dark"] .site-header{background:rgba(12,16,32,.88);border-color:rgba(42,49,72,.8)}
html[data-theme="dark"] .main-nav a{color:#c7cee0!important}html[data-theme="dark"] .main-nav a:hover,html[data-theme="dark"] .main-nav a[aria-current="page"]{color:#fff!important}
html[data-theme="dark"] .nav-toggle,html[data-theme="dark"] .theme-toggle,html[data-theme="dark"] .site-search input{background:#151a2c;color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .search-results,html[data-theme="dark"] .card,html[data-theme="dark"] .tool-panel,html[data-theme="dark"] .tool-card,html[data-theme="dark"] .official-link,html[data-theme="dark"] .faq details,html[data-theme="dark"] .article,html[data-theme="dark"] .cookie-banner{background:var(--surface);border-color:var(--line)}
html[data-theme="dark"] .page-hero{background:linear-gradient(180deg,#171d36,#101526);border-color:var(--line)}
html[data-theme="dark"] .page-hero h1,html[data-theme="dark"] .section h2,html[data-theme="dark"] .article h2,html[data-theme="dark"] .article h3,html[data-theme="dark"] .article strong,html[data-theme="dark"] .card h2,html[data-theme="dark"] .card h3,html[data-theme="dark"] .tool-panel h2,html[data-theme="dark"] .tool-card h3,html[data-theme="dark"] .official-link strong,html[data-theme="dark"] .faq summary{color:var(--ink)}
html[data-theme="dark"] .article p,html[data-theme="dark"] .article li{color:#c4cad9}html[data-theme="dark"] .review-line,html[data-theme="dark"] .toc,html[data-theme="dark"] .resource-callout,html[data-theme="dark"] .tool-shell>.card{background:#171d31;border-color:var(--line)}
html[data-theme="dark"] .check,html[data-theme="dark"] .tool-output input,html[data-theme="dark"] .tool-output textarea,html[data-theme="dark"] input,html[data-theme="dark"] textarea,html[data-theme="dark"] select{background:#111628;color:var(--ink);border-color:var(--line-strong)}
html[data-theme="dark"] .check:has(input:checked){background:#252b50;border-color:#5154a4;color:#dfe0ff}html[data-theme="dark"] .btn-secondary{background:#1a2035;color:#e3e7f3!important;border-color:var(--line)}
html[data-theme="dark"] .article th{background:#202642;color:#dfe3f2}html[data-theme="dark"] .article td{background:#151a2c;color:#c8cede}html[data-theme="dark"] .article code{background:#242a40;color:#e5e7ef}
html[data-theme="dark"] .status-box{background:#123226;border-color:#255c46;color:#8be1ba}html[data-theme="dark"] .warning-box{background:#302715;border-color:#665128;color:#f1d18a}html[data-theme="dark"] .danger-box{background:#381d24;border-color:#733641;color:#ffb7bf}

/* Responsive */
@media(max-width:1180px){.site-search{display:none}.main-nav{gap:1px}.main-nav a{padding-inline:8px;font-size:.79rem}}
@media(max-width:980px){:root{--header-h:68px}.container,.header-inner,.footer-inner{width:min(100% - 28px,var(--max))}.header-actions{margin-left:auto}.nav-toggle{display:grid}.main-nav{display:none;position:absolute;left:0;right:0;top:var(--header-h);max-height:calc(100dvh - var(--header-h));overflow:auto;padding:13px 15px 18px;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);box-shadow:0 20px 40px rgba(16,24,40,.12);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{width:100%;padding:12px 14px;font-size:.95rem}.tool-shell{grid-template-columns:1fr}.grid-3,.tool-cards,.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-theme="dark"] .main-nav{background:rgba(15,20,38,.99)}}
@media(max-width:700px){.container,.header-inner,.footer-inner{width:min(100% - 24px,var(--max))}.hero{padding:44px 0 26px}.hero h1{font-size:clamp(2.35rem,12vw,3.45rem)}.page-hero{padding:36px 0 25px}.page-hero h1{font-size:clamp(2.1rem,10vw,3.15rem)}.meta-line{gap:7px 11px}.meta-line span+span:before{display:none}.section{padding:28px 0}.grid-2,.grid-3,.tool-cards,.official-links,.footer-grid{grid-template-columns:1fr}.article{padding:22px;border-radius:19px}.article h2{margin-top:38px}.tool-panel,.card{padding:19px;border-radius:18px}.tool-shell{gap:15px;margin:20px 0 30px}.check-grid{grid-template-columns:1fr}.tool-output{flex-direction:column}.btn-row{gap:8px}.btn-row .btn{flex:1;min-width:140px}.article table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.article th,.article td{min-width:130px}.sitemap-list{columns:1}.footer-inner{padding-top:42px}.site-footer{margin-top:50px}}
@media(max-width:430px){.brand-mark{width:38px;height:38px;border-radius:12px}.brand-text{font-size:.86rem;max-width:134px;white-space:normal;line-height:1.05}.header-inner{gap:7px}.header-actions{gap:5px}.nav-toggle,.theme-toggle{min-width:40px;min-height:40px}.hero h1{font-size:2.55rem}.hero .lead,.page-hero .lead{font-size:1rem}.trust-row{gap:7px}.trust-chip{font-size:.78rem;padding:7px 9px}.tool-panel,.card,.article{padding:17px}.btn-row{flex-direction:column}.btn-row .btn{width:100%;min-width:0}.cookie-actions{flex-direction:column}.cookie-actions .btn{width:100%}}
@media(min-width:1600px){:root{--max:1320px}.article{max-width:940px}.hero{padding-top:82px}}
@media(min-width:2200px){:root{--max:1440px}.hero h1{max-width:1060px}.article{max-width:980px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(prefers-reduced-data:reduce){.site-header{backdrop-filter:none;-webkit-backdrop-filter:none}.hero:before,.hero:after,.page-hero:after{display:none}.tool-card:hover,.official-link:hover,.btn:hover{transform:none}}
@media print{.site-header,.site-footer,.ad-slot,.cookie-banner,.btn-row,.nav-toggle,.theme-toggle{display:none!important}.print-only{display:block}body{background:#fff!important}.article,.card,.tool-panel{box-shadow:none!important;border:0!important}.article{max-width:none;padding:0}a[href^="http"]:after{content:" (" attr(href) ")";font-size:.8em}}

/* v6 editorial authority */
.editorial-byline{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:18px;padding:13px 15px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 86%,var(--brand-soft));font-size:.86rem;color:var(--muted)}
.editorial-byline a{font-weight:750}.source-panel{margin-top:44px;padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft)}.source-panel h2{margin-top:0!important;font-size:1.2rem!important}.source-panel p{margin-bottom:0}.editorial-article>p:first-child{font-size:1.08rem;color:var(--text)}
.decision-box{margin:28px 0;padding:21px 22px;border-left:4px solid var(--brand);border-radius:0 16px 16px 0;background:var(--brand-soft)}.decision-box h2{margin:0 0 8px!important;font-size:1.25rem!important}.decision-box p:last-child{margin-bottom:0}
.editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.editorial-card{padding:20px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.editorial-card h3{margin-top:0}
@media(max-width:700px){.editorial-byline{display:grid;gap:7px}.editorial-grid{grid-template-columns:1fr}.source-panel,.decision-box{padding:18px}}
