*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:#f4f6f9;color:#1f2933;line-height:1.6;font-size:17px}
.in{max-width:860px;margin:0 auto;padding:0 16px}
.top{position:sticky;top:0;z-index:10;background:#20324d;color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.top .in{display:flex;align-items:center;gap:12px;padding:10px 16px}
.ttl{font-weight:700;white-space:nowrap}.stats{flex:1;font-size:14px;opacity:.9;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sync{font-size:14px;color:#9aa5b1}.sync.ok{color:#4cd38a}.sync.err{color:#ff8a80}.sync.busy{color:#ffd166}
.bar{height:4px;background:rgba(255,255,255,.15)}#barfill{height:4px;background:#4cd38a;width:0;transition:width .3s}
.btn{border:1px solid #c9d1db;background:#fff;color:#1f2933;border-radius:8px;padding:10px 18px;font:inherit;font-size:15px;cursor:pointer}
.btn.small{padding:5px 12px;font-size:13px}.btn.pri{background:#1d5fbf;border-color:#1d5fbf;color:#fff}.btn.pri:disabled{opacity:.45;cursor:default}
.btn.ghost{background:transparent}
.passage{background:#fff;border:1px solid #dde3ea;border-left:4px solid #1d5fbf;border-radius:10px;padding:16px 20px;margin:28px 0 10px}
.passage h3{margin:0 0 6px;font-size:14px;color:#52606d;text-transform:uppercase;letter-spacing:.04em}
.passage .dir{font-style:italic;color:#52606d;font-size:14px;margin:0 0 10px}
.passage p{margin:0 0 .9em}
.q{background:#fff;border:1px solid #dde3ea;border-radius:10px;padding:16px 20px;margin:14px 0;scroll-margin-top:70px}
.q.done-ok{border-color:#8fd3a8}.q.done-bad{border-color:#f0a39b}
.qh{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.qn{font-weight:700;color:#1d5fbf}.tag{font-size:12px;color:#52606d;background:#eef1f4;border-radius:10px;padding:2px 9px}
.ref{font-size:13px;color:#1d5fbf;cursor:pointer;margin:-2px 0 8px;display:inline-block}
.stem p{margin:0 0 .7em}
.opts{display:flex;flex-direction:column;gap:8px;margin:12px 0}
.opt{display:flex;gap:10px;align-items:flex-start;border:1px solid #d7dee6;border-radius:8px;padding:10px 12px;cursor:pointer;background:#fff}
.opt:hover{border-color:#1d5fbf}.opt.sel{border-color:#1d5fbf;background:#eaf2fd}
.opt .l{font-weight:700;flex-shrink:0;width:20px}
.opt.right{border-color:#1f8a4c;background:#e7f6ec}.opt.wrong{border-color:#c0392b;background:#fdeceb}
.locked .opt{cursor:default}
.tita{margin:12px 0}.tita input{font:inherit;font-size:18px;padding:9px 12px;border:1px solid #b9c3cf;border-radius:8px;width:180px;letter-spacing:2px}
.tita input.right{border-color:#1f8a4c;background:#e7f6ec}.tita input.wrong{border-color:#c0392b;background:#fdeceb}
.act{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.verdict{font-weight:700}.verdict.ok{color:#1f8a4c}.verdict.bad{color:#c0392b}
.sol{margin-top:14px;border-top:1px dashed #c9d1db;padding-top:12px}
.sol h4{margin:0 0 6px;font-size:15px}.sol p{margin:0 0 .7em;font-size:16px}
.vid{margin-top:10px}.vwrap{position:relative;padding-top:56.25%;border-radius:8px;overflow:hidden;background:#000;margin-top:8px}
.vwrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.foot{font-size:12px;color:#7b8794;text-align:center;padding:30px 16px 50px}
@media (max-width:600px){body{font-size:16px}.q,.passage{padding:14px}.ttl{font-size:14px}.stats{font-size:12px}}
