:root{--navy:#0b2545;--blue:#1e6feb;--orange:#e8710a;--bg:#f5f7fa;--line:#dfe5ee;--ink:#1b2a41;--mut:#52607a}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:16px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:#fff}
a{color:var(--blue)}h1,h2,h3{color:var(--navy);line-height:1.2;margin:0 0 .6em}h1{font-size:clamp(1.9rem,5vw,3rem)}h2{font-size:1.5rem}
.wrap{max-width:1080px;margin:0 auto;padding:0 1.1rem}.narrow{max-width:760px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:.5rem;z-index:99}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
header.top{background:var(--navy);position:sticky;top:0;z-index:10}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:.7rem;padding-bottom:.7rem}
.logo{color:#fff;font-weight:800;font-size:1.25rem;text-decoration:none;display:flex;gap:.5rem;align-items:center}.logo svg{color:var(--orange)}
nav{display:flex;gap:.2rem 1rem;flex-wrap:wrap}nav a{color:#d7e3f7;text-decoration:none;font-size:.92rem;padding:.2rem 0}nav a:hover,nav a[aria-current]{color:#fff;text-decoration:underline}
.hero{background:var(--navy);color:#dbe6f8;padding:3.5rem 0 4rem}.hero h1{color:#fff;max-width:16ch}.hero p{max-width:56ch;font-size:1.1rem}
.btn{display:inline-block;background:var(--orange);color:#fff;border:0;border-radius:10px;padding:.8rem 1.3rem;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;margin:.3rem .5rem .3rem 0}
.btn:hover{background:#c85f05}.btn.sec{background:transparent;border:2px solid #7fa8ee;color:#fff}.btn.ghost{background:#fff;color:var(--blue);border:2px solid var(--blue)}.btn.sm{padding:.4rem .8rem}
.cards{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:-2rem 0 2rem}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.2rem;box-shadow:0 2px 10px rgba(11,37,69,.07);text-decoration:none;color:var(--ink)}
.card h3{margin-bottom:.3rem}.card svg{color:var(--blue)}.card:hover{border-color:var(--blue)}
section{padding:1.5rem 0}.alt{background:var(--bg)}
.steps{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));counter-reset:s;padding:0;list-style:none}
.steps li{counter-increment:s;background:#fff;border-radius:14px;padding:1rem 1rem 1rem 3.2rem;position:relative;border:1px solid var(--line)}
.steps li:before{content:counter(s);position:absolute;left:1rem;top:1rem;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--blue);color:#fff;text-align:center;font-weight:700}
details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem;margin:.5rem 0}summary{cursor:pointer;font-weight:600;color:var(--navy)}
.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.2rem;margin:1rem 0;box-shadow:0 2px 10px rgba(11,37,69,.06)}
.grid{display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
label{display:block;font-size:.9rem;font-weight:600;color:var(--navy)}
input[type=number],input[type=text],input[type=date],select{width:100%;margin-top:.25rem;padding:.6rem;border:1px solid #b9c4d6;border-radius:8px;font:inherit;background:#fff}
.chk{display:inline-flex;gap:.4rem;align-items:center;margin:.8rem 1rem 0 0;font-weight:500}.chk input{width:1.1rem;height:1.1rem}
.note{color:var(--mut);font-size:.9rem}.err{color:#b3261e;font-weight:600}
.stats{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.stat{background:var(--bg);border-radius:12px;padding:.8rem;text-align:center}.stat b{display:block;font-size:1.6rem;color:var(--navy)}.stat span{font-size:.85rem;color:var(--mut)}
.stat.hi{background:var(--navy)}.stat.hi b,.stat.hi span{color:#fff}
.bar{display:grid;grid-template-columns:110px 1fr 70px;gap:.6rem;align-items:center;margin:.4rem 0;font-size:.9rem}.bar i{display:block;height:12px;border-radius:6px;background:var(--blue)}
table{width:100%;border-collapse:collapse;font-size:.95rem}th,td{text-align:left;padding:.5rem;border-bottom:1px solid var(--line)}td input{max-width:90px;margin:0}
.irow{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.35rem 0;border-bottom:1px solid var(--line)}.irow input{width:80px;margin:0}
.prog{height:12px;background:var(--line);border-radius:6px;overflow:hidden}.prog i{display:block;height:100%;background:var(--orange)}
.task{display:flex;gap:.6rem;align-items:flex-start;padding:.35rem 0}.task input{margin-top:.35rem;width:1.1rem;height:1.1rem}.task.done span{text-decoration:line-through;color:var(--mut)}
.strip{background:#eaf2ff;border-radius:10px;padding:.5rem .9rem;font-size:.9rem}
.ad-slot{min-height:0}
.prose p,.prose li{max-width:70ch}
footer{background:var(--navy);color:#b8c7e0;padding:2rem 0;margin-top:2rem}footer a{color:#fff;margin-right:1rem}
#cc{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:3px solid var(--blue);padding:.8rem 1rem;z-index:50;display:flex;gap:1rem;align-items:center;flex-wrap:wrap;justify-content:center;font-size:.9rem}
@media print{header,footer,#cc,.noprint,.btn{display:none!important}.panel{box-shadow:none;border:0}}
