:root{--bg:#f8fafc;--white:#fff;--line:#e2e8f0;--bd:#cbd5e1;--text:#1e293b;--head:#0f172a;--muted:#475569;--blue:#2563eb;--blue-d:#1d4ed8;--blue-l:#eff6ff;--blue-b:#dbeafe;--accent:#1d4ed8;--chip:#f1f5f9;--chip-t:#334155;--warn:#b45309;--foot:#0f172a;--foot-t:#cbd5e1;--foot-h:#93c5fd}
html[data-theme=dark]{color-scheme:dark;--bg:#0b1220;--white:#111a2e;--line:#243049;--bd:#3a4a68;--text:#e2e8f0;--head:#f8fafc;--muted:#b6c2d4;--blue-l:#13213f;--blue-b:#1e3a6e;--accent:#93c5fd;--chip:#1a2540;--chip-t:#dbe4f0;--warn:#fbbf24;--foot:#070c18}
html[data-fs="-1"]{font-size:87.5%}html[data-fs="1"]{font-size:112.5%}html[data-fs="2"]{font-size:125%}html[data-fs="3"]{font-size:137.5%}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:1rem/1.6 ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
::selection{background:var(--blue-b);color:var(--head)}
a{color:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:.25rem}
.wrap{max-width:64rem;margin:0 auto;padding:0 1.5rem}
.skip{position:absolute;left:-999px;top:0;background:var(--blue);color:#fff;padding:.75rem 1rem;z-index:100;border-radius:0 0 .5rem 0}
.skip:focus{left:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.a11y{position:relative}
.a11ybtn{font:inherit;font-weight:500;background:var(--white);color:var(--muted);border:1px solid var(--line);border-radius:.5rem;padding:.3rem .75rem;cursor:pointer}
.a11ybtn:hover,.a11ybtn[aria-expanded=true]{border-color:var(--accent);color:var(--accent)}
.a11y-panel{position:absolute;right:0;top:calc(100% + .5rem);z-index:50;min-width:15rem;background:var(--white);border:1px solid var(--bd);border-radius:.75rem;padding:.75rem;box-shadow:0 8px 24px rgba(15,23,42,.15)}
.a11y-panel[hidden]{display:none}
.a11y-panel .row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:.25rem 0}
.a11y-panel .lbl{color:var(--muted);font-size:.85rem;margin-right:.25rem}
.a11y-panel button{font:inherit;font-size:.9rem;background:var(--white);color:var(--text);border:1px solid var(--bd);border-radius:.375rem;padding:.2rem .6rem;cursor:pointer}
.a11y-panel button:hover{border-color:var(--accent)}
.a11y-panel button[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff}
html:not(.js) .a11y{display:none}
.topnav{background:var(--white);border-bottom:1px solid var(--line)}
.topnav .wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem 1.5rem;min-height:4.25rem}
.brand{display:flex;align-items:center;gap:.75rem;font-weight:700;color:var(--head);text-decoration:none}
.logo{width:2.25rem;height:2.25rem;border-radius:.5rem;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:.95rem;font-weight:700}
.topnav ul{display:flex;gap:1.75rem;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.topnav ul a{text-decoration:none;color:var(--muted);font-weight:500}
.topnav ul a:hover,.topnav ul a[aria-current=page]{color:var(--accent)}
.topnav ul a[aria-current=page]{text-decoration:underline;text-underline-offset:.3rem}
.actions{display:flex;align-items:center;gap:1rem}
.actions .login{color:var(--muted);text-decoration:none;font-weight:500}
.actions .login:hover{color:var(--accent)}
.m-only{display:none}
.navbtn{display:none;font:inherit;background:var(--white);color:var(--text);border:1px solid var(--bd);border-radius:.5rem;padding:.35rem .75rem;cursor:pointer}
header.hero{background:var(--white);border-bottom:1px solid var(--line);box-shadow:0 1px 2px rgba(0,0,0,.05)}
.hero .wrap{padding-top:4rem;padding-bottom:4rem}
.hero h1{font-size:clamp(2.25rem,5vw,3rem);line-height:1.15;letter-spacing:-.02em;margin:0 0 .5rem;color:var(--head)}
.hero p.sub{font-size:1.25rem;color:var(--accent);font-weight:500;margin:0 0 1rem}
.hero p.lead{max-width:40rem;color:var(--muted);margin:0 0 2rem}
.btns{display:flex;flex-wrap:wrap;gap:1rem}
.btn{display:inline-block;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;text-decoration:none;box-shadow:0 1px 2px rgba(0,0,0,.05);transition:background .15s}
.btn.sm{padding:.4rem 1rem;font-size:.92rem;box-shadow:none}
.btn.primary{background:var(--blue);color:#fff}.btn.primary:hover{background:var(--blue-d)}
.btn.ghost{background:var(--white);color:var(--chip-t);border:1px solid var(--bd)}.btn.ghost:hover{background:var(--bg)}
section{padding:3rem 0 0}
h2{font-size:1.5rem;color:var(--head);margin:0 0 1.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--line)}
.grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}
.card{background:var(--white);border:1px solid var(--line);border-radius:.75rem;padding:1.25rem;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.card h3{margin:0 0 .5rem;font-size:1.05rem;color:var(--head)}
.card p{margin:0;color:var(--muted);font-size:.95rem}
a.card{display:block;text-decoration:none;color:inherit}a.card:hover{border-color:var(--accent)}
.pills{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none}
.pills li{background:var(--chip);color:var(--chip-t);border:1px solid var(--line);border-radius:999px;padding:.25rem .75rem;font-size:.9rem;font-weight:500}
.note{background:var(--blue-l);border:1px solid var(--blue-b);border-radius:.5rem;padding:1rem;color:var(--text)}
.draft{background:var(--blue-l);border:1px solid var(--blue-b);border-left:4px solid var(--warn);border-radius:.5rem;padding:.75rem 1rem;margin:2rem 0 0;color:var(--text)}
.todo{color:var(--warn);font-weight:600}
.tag{display:inline-block;margin-left:.5rem;padding:.05rem .5rem;border-radius:999px;background:var(--chip);color:var(--chip-t);border:1px solid var(--line);font-size:.75rem;font-weight:600;vertical-align:middle}
.more{margin:1.25rem 0 0;color:var(--muted)}
.steps,.list{margin:0;padding-left:1.25rem;color:var(--muted)}
.steps li,.list li{margin:.5rem 0}
.steps strong{color:var(--head)}
.trust{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));margin:0 0 1rem}
.trust div{background:var(--white);border:1px solid var(--line);border-radius:.75rem;padding:1rem}
.trust dt{font-size:.85rem;color:var(--muted);margin:0 0 .25rem}
.trust dd{margin:0;font-weight:600;color:var(--head)}
.faqtopics{padding-top:2rem}
.faqtopics ul{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0 0 1rem;padding:0}
.faqtopics a{display:inline-block;padding:.3rem .8rem;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--chip-t);text-decoration:none;font-size:.9rem}
.faqtopics a:hover{border-color:var(--accent);color:var(--accent)}
.acc-tools{margin:0 0 .5rem}
.acc .item{background:var(--white);border:1px solid var(--line);border-radius:.6rem;margin:.5rem 0}
.acc .item h3{margin:0;font-size:1rem}
.acc .item button{width:100%;text-align:left;font:inherit;font-weight:600;color:var(--head);background:none;border:0;border-radius:.6rem;padding:.9rem 2.75rem .9rem 1rem;cursor:pointer;position:relative}
.acc .item button::after{content:"+";position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:var(--muted);font-weight:400;font-size:1.25rem;line-height:1}
.acc .item button[aria-expanded=true]::after{content:"\2212"}
.acc .ans{padding:0 1rem 1rem}
.acc .ans p{margin:0;color:var(--muted)}
.js .acc .item:not(.open) .ans{display:none}
.qa{scroll-margin-top:1rem}
.prose h3{color:var(--head);margin:1.5rem 0 .25rem;font-size:1.05rem}
.prose p,.prose li{color:var(--muted)}
.prose p{margin:.5rem 0}
.prose ul{padding-left:1.25rem}
.avatar{width:5rem;height:5rem;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:1.5rem;font-weight:700;margin:0 0 1rem}
.profile{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}
.profile .avatar{margin:0}
.sitemap ul{columns:2 16rem;padding-left:1.25rem;color:var(--muted)}
.sitemap li{margin:.35rem 0}
footer{background:var(--foot);color:var(--foot-t);margin-top:4rem;padding:2.5rem 0 1.5rem;font-size:.85rem}
footer a{color:var(--foot-t);text-decoration:none}footer a:hover{color:#fff;text-decoration:underline}
footer :focus-visible{outline-color:#93c5fd}
footer .brand{color:#fff}
footer .logo{width:1.75rem;height:1.75rem;font-size:.8rem}
footer p{margin:0}
footer ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem 1.5rem}
.frow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem}
.flegal{margin:1.5rem 0 0;padding-top:1.25rem;border-top:1px solid #243049}
.flegal ul{gap:.35rem 1.25rem;font-size:.8rem}
.fbot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1.5rem;margin-top:1rem;font-size:.78rem;color:#94a3b8}
.fbot a{color:#94a3b8}
.small{font-size:.8rem}
@media(max-width:880px){
.actions{margin-left:auto}
.a11y-panel{right:-3rem}
.js .navbtn{display:inline-block}
.js .topnav ul{display:none;order:5;width:100%;flex-direction:column;gap:.25rem;padding-bottom:.75rem}
.js .topnav.open ul{display:flex}
.js .topnav ul a{display:block;padding:.4rem 0}
.js .topnav ul a.btn{display:inline-block;padding:.5rem 1.1rem}
.js .m-only{display:list-item}
.js .actions .login,.js .actions .cta{display:none}
}
@media(max-width:560px){.brand span.name{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
