*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#1b2430;background:#f6f8fb}
a{color:#1d5fd1}header,footer{background:#fff;border-bottom:1px solid #e3e8ef}footer{border-top:1px solid #e3e8ef;border-bottom:0;margin-top:40px;font-size:14px;color:#5b6675}
.wrap{max-width:960px;margin:0 auto;padding:12px 16px}nav{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.brand{font-weight:800;font-size:20px;text-decoration:none;color:#1b2430;margin-right:auto}.brand span{color:#1d5fd1}
nav a{text-decoration:none;font-size:14px}h1{font-size:28px;line-height:1.2;margin:18px 0 6px}h2{font-size:21px;margin-top:28px}
.lead{color:#46515f}.badge{display:inline-block;background:#e6f4ea;color:#1e6b34;border-radius:99px;padding:3px 10px;font-size:13px;font-weight:600}
.card{background:#fff;border:1px solid #e3e8ef;border-radius:14px;padding:16px;margin:14px 0}
.btn{display:inline-block;border:0;border-radius:10px;padding:11px 16px;font-size:15px;font-weight:600;cursor:pointer;background:#1d5fd1;color:#fff;text-decoration:none}
.btn.sec{background:#eef2f8;color:#1b2430}.btn.up{background:#f3a712;color:#1b2430}.btn:disabled{opacity:.5;cursor:not-allowed}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.tool{display:grid;gap:16px}@media(min-width:760px){.tool{grid-template-columns:1fr 1fr}}
.stage{position:relative;width:100%;max-width:420px;aspect-ratio:1;touch-action:none;margin:0 auto;border-radius:8px;overflow:hidden;background:#dde3ea}
.stage canvas{width:100%;height:100%;display:block;cursor:grab}
.checks{list-style:none;padding:0;margin:8px 0}.checks li{padding:4px 0}.ok:before{content:"✅ "}.bad:before{content:"⚠️ "}.pend:before{content:"⏳ "}
.warn{background:#fff6e5;border:1px solid #f3d38a;border-radius:10px;padding:10px;font-size:14px}.small{font-size:13px;color:#5b6675}
input[type=range]{width:100%}#status{font-size:14px;color:#46515f;min-height:1.4em}.sheetprev{width:100%;max-width:420px;border:1px solid #ccd;display:block;margin:8px auto}
details{background:#fff;border:1px solid #e3e8ef;border-radius:10px;padding:10px 14px;margin:8px 0}summary{font-weight:600;cursor:pointer}
