:root{font-family:system-ui,"Noto Sans KR",sans-serif;color:#182235;background:#f2f5f8}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;gap:12px;padding:16px 22px;background:#fff;border-bottom:1px solid #d8e0e9}header strong{margin-right:auto}button,select,input{font:inherit;border:1px solid #b9c5d4;border-radius:7px;background:#fff;padding:9px;max-width:100%}button{cursor:pointer}nav{display:flex;gap:8px;padding:14px 22px;flex-wrap:wrap}#question-list{flex:1;min-width:240px}main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;padding:0 22px 30px}section{background:white;border:1px solid #dce4ee;border-radius:12px;padding:20px;min-width:0}h2{font-size:16px;margin:0 0 16px}#source img{width:100%;height:auto;cursor:zoom-in;margin-bottom:16px}#answer-cell{max-width:160px}#status{color:#895b13;background:#fff6de;padding:10px;font-size:13px}article{font-size:18px;line-height:1.85;margin-top:22px;overflow-wrap:anywhere}p.paragraph{margin:10px 0;white-space:pre-wrap}.choice{display:flex;gap:12px;border:1px solid #d6e0ec;border-radius:10px;padding:12px;margin:12px 0;min-width:0}.choice .label{color:#38536f;flex:none}.choice .blocks{min-width:0;flex:1}.figure{max-width:100%;height:auto;display:block;margin:12px auto;cursor:zoom-in}.math-source{height:auto;max-width:100%;vertical-align:middle;cursor:zoom-in}.math{display:inline-block;max-width:100%;overflow-x:auto;vertical-align:middle;overflow-y:hidden;padding:6px 2px}.katex{font-size:1.08em}.math.failed{border:2px solid #d15a35}details{margin-top:20px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}dialog{border:0;border-radius:10px;max-width:98vw;max-height:98vh;padding:14px}dialog img{display:block;max-width:none}dialog button{position:sticky;top:0}#summary{font-size:12px;color:#53657c}label{font-size:13px}#answer{font-weight:600;color:#215d51}@media(max-width:800px){main{grid-template-columns:1fr;padding:0 12px 20px}nav,header{padding:12px}header{flex-wrap:wrap}section{padding:14px}article{font-size:17px}.choice{padding:10px}#summary{width:100%;order:4}}
/* Bundled, licensed fonts keep offline rendering identical across devices. */
@font-face{font-family:"Exam Sans KR";src:url("fonts/NotoSansKR-Regular.otf") format("opentype");font-weight:400;font-display:block}
@font-face{font-family:"Exam Serif KR";src:url("fonts/NotoSerifKR-Regular.otf") format("opentype");font-weight:400;font-display:block}
:root{font-family:"Exam Sans KR",sans-serif}
.katex{font-size:1em}
.katex .hangul_fallback{font-family:"Exam Serif KR",serif;font-size:1em}
.math[data-cjk-font="sans-serif"] .hangul_fallback{font-family:"Exam Sans KR",sans-serif}
.math.scripted-text{font:inherit;display:inline-block;vertical-align:baseline;padding:0;overflow:visible;white-space:nowrap}
.scripted-text sup,.scripted-text sub{font-family:inherit;font-size:.64em;line-height:0;position:relative;vertical-align:baseline}
.scripted-text sup{top:-.48em}.scripted-text sub{top:.25em}
article{word-break:keep-all;overflow-wrap:anywhere}
