*{box-sizing:border-box}
body{margin:0;font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#15212e;background:#f4f5f7}
.top{background:#1f3a5f;color:#fff;padding:28px 20px}
.top h1{margin:0 auto 8px;font-size:1.7rem;max-width:1040px}
.lead{max-width:1040px;margin:0 auto;opacity:.95}
main{max-width:1040px;margin:0 auto;padding:16px}
.card{background:#fff;border-radius:12px;padding:18px 20px;margin:16px 0;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.card h2{margin-top:0;font-size:1.2rem}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
label{display:flex;flex-direction:column;font-size:.9rem;gap:4px}
label small{color:#5a6773;font-size:.78rem}
input,select,textarea{font:inherit;padding:8px 10px;border:1px solid #c7cfd8;border-radius:8px;background:#fff}
textarea{font:13px/1.45 ui-monospace,Menlo,Consolas,monospace;resize:vertical}
button,.buy{font:inherit;padding:8px 14px;border-radius:8px;border:0;background:#1f3a5f;color:#fff;cursor:pointer;text-decoration:none;display:inline-block}
button.ghost{background:#e6ebf1;color:#15212e}
.buy{background:#f2c14e;color:#15212e;font-weight:600}.buy.alt{background:#fff;border:1px solid #f2c14e}
.row{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin:12px 0}
.big{font-size:1.35rem;font-weight:700;margin:0 0 6px}
.stats{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}
.stat{flex:1;min-width:120px;border-radius:10px;padding:10px 12px;background:#eef2f6}
.stat b{display:block;font-size:1.6rem;line-height:1.1}
.stat.ex{background:#e5f4ea}.stat.cl{background:#fff4dc}.stat.mi{background:#fde7e7}
ol.fix{padding-left:22px}ol.fix li{margin:4px 0}
table{border-collapse:collapse;width:100%}
td,th{padding:6px 8px;border-bottom:1px solid #e3e8ee;text-align:left;font-size:.92rem;vertical-align:top}
.st-exact{color:#1d7a3e;font-weight:600}.st-close{color:#9a6200;font-weight:600}.st-missing{color:#b42318;font-weight:600}
.req{font-size:.75rem;background:#1f3a5f;color:#fff;border-radius:4px;padding:0 5px;margin-left:4px}
.chips{display:flex;flex-wrap:wrap;gap:6px 14px;margin:10px 0}
.chips label{flex-direction:row;align-items:center;gap:6px}
.check{flex-direction:row;align-items:center;gap:8px}
pre{white-space:pre-wrap;background:#f6f8fa;padding:12px;border-radius:8px;font-size:.85rem;max-height:420px;overflow:auto}
.next{font-size:.95rem;background:#f7f3e6;padding:10px 12px;border-radius:8px}
.hint{font-size:.88rem;color:#4a5866}
.feat{columns:2;font-size:.92rem}
.keybox{display:flex;gap:8px;align-items:end;flex-wrap:wrap}
.file input{display:none}.file{background:#e6ebf1;padding:8px 14px;border-radius:8px;cursor:pointer;flex-direction:row}
.scroll{overflow-x:auto}
.fine{font-size:.9rem;color:#33414e}
@media (max-width:700px){.two{grid-template-columns:1fr}.feat{columns:1}.top h1{font-size:1.35rem}}
