:root{--ink:#163149;--muted:#5b6d7e;--bg:#f6f9fc;--card:#fff;--line:#d8e4ee;--blue:#176b9b;--blue2:#0f4e75;--soft:#e8f4fa;--gold:#f2c94c;--green:#2d7a5d;--rose:#b95f6a;--shadow:0 10px 26px rgba(22,49,73,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--ink);line-height:1.65;overflow-x:hidden}a{color:var(--blue2);text-decoration-thickness:1px;text-underline-offset:2px}a:hover,a:focus{text-decoration-thickness:2px}img{max-width:100%;height:auto}code{background:#eef6fb;border:1px solid var(--line);border-radius:6px;padding:.08rem .3rem}.wrap{width:min(1180px,calc(100% - 32px));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:auto}.skip-link:focus{left:12px;top:12px;background:#fff;padding:10px;border:2px solid var(--blue);z-index:99}.site-header{background:#fff;border-bottom:1px solid var(--line)}.brand-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0 12px}.brand-link{display:flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none}.brand-logo{width:86px;max-width:26vw;height:auto;border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.08)}.brand-text strong{display:block;font-size:clamp(1.45rem,3vw,2.15rem);line-height:1.08;letter-spacing:-.02em}.brand-text span{display:block;color:var(--muted);font-size:.96rem;margin-top:3px}.utility-links{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.utility-links a{font-weight:700;text-decoration:none;border:1px solid var(--line);padding:8px 10px;border-radius:999px;background:#fff}.utility-links a:hover{background:var(--soft);text-decoration:underline}.navbar{border-top:1px solid var(--line);padding:10px 0}.navbar ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.navbar a{display:block;text-decoration:none;font-weight:800;background:var(--soft);color:var(--blue2);padding:9px 12px;border-radius:999px}.navbar a:hover,.navbar a:focus{background:#d7ecf7;text-decoration:underline}main{padding:26px 0 40px}.hero,.card,.notice,.tool,.toc{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.hero{padding:clamp(22px,4vw,44px);margin-bottom:20px}.hero h1{margin:.1rem 0 1rem;font-size:clamp(2rem,5vw,3.25rem);line-height:1.07;letter-spacing:-.025em}.kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;font-weight:900;color:var(--green);margin:0 0 8px}.lead{font-size:clamp(1.05rem,2.2vw,1.23rem);color:#2e506c;max-width:76ch}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:16px;margin:18px 0}.grid.two{grid-template-columns:repeat(auto-fit,minmax(330px,1fr))}.card,.tool,.toc{padding:20px}.card h2,.card h3,.tool h2,.toc h2{margin-top:0;line-height:1.22}.card p:last-child{margin-bottom:0}.notice{padding:16px 18px;background:#fff9df;border-color:#ead27b;margin:18px 0}.notice strong{color:#674900}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.button{display:inline-block;text-decoration:none;font-weight:900;border-radius:10px;padding:11px 14px;background:var(--blue);color:#fff}.button:hover,.button:focus{background:var(--blue2);color:#fff;text-decoration:underline}.button.secondary{background:#fff;color:var(--blue2);border:1px solid var(--blue)}.pill-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:12px 0}.pill-list a,.pill-list span{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 10px;font-weight:800;text-decoration:none}.pill-list a:hover{background:var(--soft);text-decoration:underline}.link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:10px;padding:0;margin:14px 0;list-style:none}.link-grid a{display:block;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px;text-decoration:none;font-weight:800}.link-grid a:hover,.link-grid a:focus{background:var(--soft);text-decoration:underline}.flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:10px;margin:16px 0}.flow div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}.flow strong{display:block;color:var(--blue2)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff}table{border-collapse:collapse;width:100%;min-width:620px}th,td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#eef6fb}.tool label{display:block;font-weight:900;margin:.6rem 0 .25rem}.tool input,.tool select{width:100%;max-width:430px;padding:10px;border:1px solid var(--line);border-radius:8px;font-size:1rem}.result{margin-top:12px;padding:12px;background:#eef6fb;border:1px solid var(--line);border-radius:10px}.blog-list{display:grid;gap:12px}.blog-item{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:start;padding:14px;background:#fff;border:1px solid var(--line);border-radius:14px}.shape{width:28px;height:28px;border-radius:8px;background:var(--gold);margin-top:4px}.shape.circle{border-radius:50%;background:#81c6a5}.shape.rose{background:#dfa4ac}.shape.blue{border-radius:50% 10px 50% 10px;background:#9eb9e7}.check-list{padding-left:1.15rem}.check-list li{margin:.35rem 0}.small{font-size:.92rem;color:var(--muted)}.muted{color:var(--muted)}.site-footer{background:#fff;border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:.95rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.footer-links{display:flex;flex-wrap:wrap;gap:10px}.footer-links a{font-weight:700}@media (max-width:720px){.wrap{width:min(100% - 22px,1180px)}.brand-row{align-items:flex-start;flex-direction:column}.utility-links{justify-content:flex-start}.brand-logo{width:72px}.navbar a,.button{width:100%;text-align:center}.footer-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.skip{position:absolute;left:-999px;top:auto}.skip:focus{left:12px;top:12px;background:#fff;padding:10px;border:2px solid var(--blue);z-index:99}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0 12px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-weight:900;line-height:1.15}.mark{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--green));display:inline-block;box-shadow:0 4px 14px rgba(0,0,0,.08)}.tag{display:block;color:var(--muted);font-size:.94rem;font-weight:700;margin-top:2px}.nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.nav a{display:block;text-decoration:none;font-weight:800;background:var(--soft);color:var(--blue2);padding:8px 11px;border-radius:999px}.nav a:hover,.nav a:focus{background:#d7ecf7;text-decoration:underline}.content{padding:26px 0 40px}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;font-weight:900;color:var(--green);margin:0 0 8px}.hero .wrap{padding:clamp(22px,4vw,44px) 0}.hero{background:var(--card)}.btn{display:inline-block;text-decoration:none;font-weight:900;border-radius:10px;padding:11px 14px;background:var(--blue);color:#fff}.btn:hover,.btn:focus{background:var(--blue2);color:#fff;text-decoration:underline}.btn.secondary,.secondary{background:#fff;color:var(--blue2);border:1px solid var(--blue)}.note{padding:16px 18px;background:#eef6fb;border:1px solid var(--line);border-radius:18px;margin:18px 0}.warning{padding:16px 18px;background:#fff9df;border:1px solid #ead27b;border-radius:18px;margin:18px 0}.ad-note{font-size:.9rem;color:var(--muted);text-align:center;border:1px dashed var(--line);border-radius:12px;padding:.65rem;background:#fff;margin:1.5rem 0}.breadcrumbs{font-size:.92rem;color:var(--muted);margin:0 0 1rem}.breadcrumbs a{color:var(--muted)}.source-list li{margin:.45rem 0}.mini,.fine{font-size:.92rem;color:var(--muted)}.pill{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 10px;font-weight:800;text-decoration:none}.pill-list .pill{margin:0}.check-table{border-collapse:collapse;width:100%;min-width:620px}.check-table th,.check-table td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.check-table th{background:#eef6fb}.diagram{font-family:Consolas,Menlo,Monaco,monospace;background:#163149;color:#f6f9fc;padding:1rem;border-radius:14px;overflow-x:auto;white-space:pre-wrap}.footer{background:#fff;border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:.95rem}.footer a{font-weight:700}@media (max-width:720px){.topbar{align-items:flex-start;flex-direction:column}.nav{justify-content:flex-start}.nav a,.btn{width:100%;text-align:center}.hero .wrap{padding:22px 0}}