:root{--bg:#f6f8fa;--fg:#14212b;--mut:#5b6b78;--line:#d9e1e7;--acc:#0b5fa5;--pass:#13803b;--cau:#b26b00;--fail:#c0262d;--card:#fff}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--fg);background:var(--bg)}
.wrap{max-width:960px;margin:0 auto;padding:0 16px}a{color:var(--acc)}h1{font-size:1.75rem;line-height:1.2;margin:.6em 0 .4em}h2{font-size:1.25rem;margin:1.4em 0 .5em}h3{font-size:1.05rem;margin:.4em 0}
.top{background:#0d2a40;color:#fff}.top .wrap{display:flex;align-items:center;justify-content:space-between;height:56px}.logo{color:#fff;font-weight:800;font-size:1.3rem;text-decoration:none}.logo span{color:#5cc8ff}.top nav a{color:#d6e9f7;margin-left:14px;text-decoration:none;font-size:.95rem}
.hero p{font-size:1.08rem;color:var(--mut)}.small{font-size:.85rem;color:var(--mut)}.bc{font-size:.85rem;margin-top:12px;color:var(--mut)}
.checker{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;display:grid;gap:16px}@media(min-width:820px){.checker{grid-template-columns:1fr 1fr}}
fieldset{border:0;padding:0;margin:0 0 8px}legend{font-weight:700;margin-bottom:6px}label{display:block;font-size:.9rem;margin:8px 0;font-weight:600}
input,select,textarea{display:block;width:100%;margin-top:4px;padding:10px;font:inherit;border:1px solid var(--line);border-radius:8px;background:#fff}
button,.btn{display:inline-block;background:var(--acc);color:#fff;border:0;border-radius:8px;padding:10px 16px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.btn.ghost{background:#fff;color:var(--acc);border:1px solid var(--acc);padding:7px 12px;margin:4px 4px 0 0;font-size:.9rem}
.result{border-left:4px solid var(--line);padding:4px 0 4px 14px}.result .big,.answer .big{font-size:1.5rem;font-weight:800;margin:.2em 0}
.r-pass{border-color:var(--pass)}.r-caution{border-color:var(--cau)}.r-fail{border-color:var(--fail)}
.answer{background:var(--card);border:1px solid var(--line);border-left:6px solid var(--acc);border-radius:10px;padding:10px 16px}.a-pass{border-left-color:var(--pass)}.a-caution,.a-mixed{border-left-color:var(--cau)}.a-fail{border-left-color:var(--fail)}
.b{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.03em;padding:2px 7px;border-radius:5px;color:#fff;vertical-align:middle}.b-pass{background:var(--pass)}.b-caution{background:var(--cau)}.b-fail{background:var(--fail)}.b-check{background:#6b7a86}
table{border-collapse:collapse;width:100%;background:var(--card);font-size:.92rem}td,th{border-bottom:1px solid var(--line);padding:8px;text-align:left;vertical-align:top}th{background:#eef3f7}.n{text-align:right;white-space:nowrap}.tot td{font-weight:800}.tw{overflow-x:auto}
details{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:8px 12px;margin:6px 0}summary{cursor:pointer;font-weight:600}
.disc{background:#fff8e6;border:1px solid #f0d58a;border-radius:8px;padding:10px 14px;font-size:.92rem}
.cards{display:grid;gap:12px}@media(min-width:700px){.cards{grid-template-columns:1fr 1fr}}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px}.card p{margin:.3em 0;font-size:.92rem}
.refi,.sponsor{background:var(--card);border:1px dashed var(--line);border-radius:10px;padding:10px 14px;margin:16px 0;font-size:.93rem}.sponsor p{margin:.2em 0}
.list{padding-left:18px}.list li{margin:4px 0}.cols{display:grid;gap:12px}@media(min-width:700px){.cols{grid-template-columns:1fr 1fr}}
.signup{background:#0d2a40;color:#fff;border-radius:12px;padding:16px;margin-top:28px}.signup h2{margin-top:0}.subform{display:flex;flex-wrap:wrap;gap:8px}.subform input[type=email]{flex:1 1 220px;margin:0}.subform .msg{flex-basis:100%;margin:0}
.sponsorform{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;max-width:560px}.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.foot{color:var(--mut);font-size:.88rem;padding:20px 0 40px}.pc{white-space:nowrap;font-variant-numeric:tabular-nums}.src li{font-size:.9rem;margin:4px 0;word-break:break-word}
