*{box-sizing:border-box}body{margin:0;font-family:"Microsoft JhengHei","Noto Sans TC",system-ui,sans-serif;background:#f4f6f9;color:#1d2433;line-height:1.6}
.wrap{max-width:1100px;margin:0 auto;padding:0 16px}h1{margin:20px 0 4px;font-size:28px}h2{font-size:19px;margin:0 0 10px}
.preview-flag{background:#7a1f1f;color:#fff;text-align:center;padding:8px;font-weight:bold}
.tag{display:inline-block;background:#d9822b;color:#fff;font-size:13px;border-radius:12px;padding:1px 10px;vertical-align:middle}.tag.gray{background:#6b7280}
.card{background:#fff;border-radius:12px;padding:18px 20px;margin:16px 0;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.card.warn{border-left:6px solid #c0392b}.card.main{border:2px solid #2f6fd6}.card.option{border:2px dashed #9ca3af}
.big{font-size:18px;font-weight:bold}.muted{color:#5b6475}.small{font-size:13px}.eyebrow{font-weight:bold;color:#2f6fd6;margin:0}
.row{display:flex;gap:12px;align-items:center}.between{justify-content:space-between}
.btn{background:#2f6fd6;color:#fff;border:0;border-radius:8px;padding:9px 18px;font-size:15px;cursor:pointer}.btn:disabled{opacity:.6}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.grid3>div{background:#f4f6f9;border-radius:8px;padding:10px}.grid3 span{display:block;font-size:13px}
.balls{display:flex;gap:10px;margin:12px 0;flex-wrap:wrap}.ball{width:56px;height:56px;border-radius:50%;background:#2f6fd6;color:#fff;font-size:22px;font-weight:bold;display:flex;align-items:center;justify-content:center}
.small-balls .ball{width:44px;height:44px;font-size:17px;background:#6b7280}
.tbl{border-collapse:collapse;width:100%;font-size:14px}.tbl th,.tbl td{border-bottom:1px solid #e5e7eb;padding:6px 8px;text-align:left;vertical-align:top}.tbl th{background:#f4f6f9}
.nums{font-family:Consolas,monospace;white-space:nowrap}.scroll{overflow-x:auto}.hit{background:#fff3cd}
.msg{padding:8px 10px;border-radius:8px;background:#f4f6f9}.msg.good{background:#e7f6ec}.msg.bad,.bad{color:#a11}
.msg.bad{background:#fdecec}footer{margin:20px 0 40px}code{background:#f1f2f4;padding:0 4px;border-radius:4px;font-size:12px;word-break:break-all}