:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;color:#172b4d;background:#f4f7fc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation}button,input{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #f59e0b;outline-offset:3px}button:disabled,input:disabled{cursor:default;opacity:1}.page{width:min(100% - 32px,720px);margin:0 auto;padding:44px 0 max(24px,env(safe-area-inset-bottom))}.heading{margin-bottom:28px}.eyebrow{color:#2563eb;font-size:14px;font-weight:650;margin:0 0 12px}h1{font-size:clamp(25px,5vw,32px);line-height:1.4;letter-spacing:-.5px;margin:0 0 12px}h1:focus{outline:none}.subtitle{margin:0;color:#64748b;font-size:15px;line-height:1.7}.panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:28px;margin-bottom:16px}h2{margin:0 0 20px;font-size:19px;line-height:1.75;overflow-wrap:anywhere}.presets{display:grid;grid-template-columns:1fr 1fr;gap:14px}.preset{border:1.5px solid #dbe3ef;border-radius:12px;padding:20px 8px;background:#fff;color:#172b4d;text-align:center}.preset strong{display:block;font-size:25px;margin-bottom:8px}.preset span{font-size:14px;color:#64748b}.preset.selected{background:#eff6ff;border-color:#2563eb}.preset.selected strong,.preset.selected span{color:#1d4ed8}.custom-title{font-size:14px;color:#64748b;margin:28px 0 14px}.counts{display:grid;grid-template-columns:1fr 1fr;gap:16px}.counts label{display:flex;flex-direction:column;gap:9px;font-size:15px;font-weight:600;min-width:0}.counts input,.fill-answer{border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#172b4d;width:100%;padding:12px;min-height:48px;font-size:16px}.counts small{color:#64748b;font-weight:400;font-size:12px}.primary,.secondary{min-height:48px;border-radius:10px;font-size:16px;font-weight:600;padding:12px 22px;border:1px solid transparent}.primary{background:#2563eb;color:#fff}.primary:hover{background:#1d4ed8}.secondary{border-color:#cbd5e1;background:#fff;color:#334155}.start{width:100%;margin-top:28px}.hint{color:#64748b;text-align:center;font-size:13px;line-height:1.7;margin:14px 0 0}.error{color:#b91c1c;line-height:1.6;margin-bottom:0}.notice{border:1px solid #fde68a;border-radius:12px;background:#fffbeb;color:#854d0e;padding:16px;margin-bottom:16px;font-size:14px;line-height:1.7}.notice p{margin:0 0 12px}.actions{display:flex;flex-wrap:wrap;gap:12px}.actions button{flex:1}.progress-bar{position:sticky;top:0;z-index:2;background:#f4f7fc;padding:16px 0;margin-bottom:4px}.progress-text{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px}.text-button{border:0;background:none;color:#2563eb;min-height:44px;padding:6px 0 6px 16px}.track{height:5px;background:#dfe7f2;border-radius:4px;overflow:hidden}.track>div{height:100%;background:#2563eb}.question-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#64748b;font-size:13px;margin-bottom:14px}.question h2{font-size:17px;font-weight:600}fieldset{padding:0;border:0;margin:0;min-width:0}.option{display:flex;align-items:flex-start;gap:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:13px 12px;margin-top:10px;line-height:1.65;font-size:15px;cursor:pointer;overflow-wrap:anywhere}.option input{width:18px;height:18px;flex-shrink:0;margin:3px 0 0;accent-color:#2563eb}.option-letter{font-weight:600}.option.chosen{background:#eff6ff;border-color:#93c5fd}fieldset:disabled .option{cursor:default}.fill-answer:disabled{background:#f8fafc;color:#334155;-webkit-text-fill-color:#334155}.answer-review{margin-top:18px;padding:16px;background:#f0fdf4;border-radius:10px;color:#166534;font-size:14px;overflow-wrap:anywhere}.answer-review p{margin:0;line-height:1.8}.answer-review p+p{margin-top:10px}.answer-review span{display:block;color:#64748b;font-size:12px;margin-bottom:3px}.result-tag{color:#9a3412;background:#fff7ed;padding:4px 8px;border-radius:6px;flex-shrink:0}.result-tag.correct{color:#166534;background:#f0fdf4}.summary{text-align:center}.score strong{color:#2563eb;font-size:58px;line-height:1.25}.score span{color:#64748b;margin-left:8px}.summary>p{color:#64748b;line-height:1.7}.summary .primary{width:min(100%,300px);margin-top:6px}.submit-panel{text-align:center}.submit-panel p{margin-top:0;line-height:1.7;color:#64748b;font-size:14px}.submit-panel>.primary,.bottom-retry{width:100%}footer{margin-top:28px;text-align:center;color:#64748b;font-size:12px;line-height:1.8}.record-nav{display:flex;gap:6px;margin:0 0 20px;padding:5px;border-radius:12px;background:#e9eff8}.record-nav button{flex:1;border:0;border-radius:8px;min-height:46px;background:transparent;color:#52647d;font-size:14px;padding:8px 4px}.record-nav button.active{background:#fff;color:#1d4ed8;font-weight:650;box-shadow:0 1px 3px #172b4d14}.record-nav span{font-size:12px}.records-intro h2{margin-bottom:8px}.empty-records{color:#64748b;font-size:14px;line-height:1.8}.record-row{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:16px;color:#172b4d}.record-row strong{display:block;font-size:16px;margin-bottom:10px}.record-row small{display:block;color:#64748b;font-size:12px;line-height:1.6}.record-score{color:#2563eb;font-size:28px;font-weight:650;flex-shrink:0;text-align:center}.record-back{margin-bottom:16px}.record-option{color:#52647d;font-size:14px;line-height:1.7;overflow-wrap:anywhere}.mistake-answer summary{color:#52647d;font-size:14px;line-height:1.7;cursor:pointer;padding:8px 0}.retry-one{margin-top:18px;width:100%}@media (max-width: 480px){.page{padding-top:28px}.panel{padding:20px 16px;border-radius:12px}.heading{margin-bottom:22px}.preset{padding:18px 6px}.preset span{font-size:12px}.presets,.counts{gap:12px}.question-meta{font-size:12px}}
