.correction-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}
.correction-modal-card{width:min(100%,430px);padding:24px;border:1px solid #f0c36a;border-radius:24px;background:#fffdf7;color:#362708;box-shadow:0 24px 70px rgba(15,23,42,.28)}
.correction-modal-card .correction-badge{display:inline-block;margin-bottom:10px;color:#8a5a00;font-size:11px;font-weight:900;letter-spacing:.1em}
.correction-modal-card h2{margin:0 0 18px;font-size:22px;line-height:1.3}
.correction-modal-card strong{display:block;margin-bottom:9px;color:#a04400;font-size:15px;line-height:1.55}
.correction-modal-card p{margin:0;color:#4b3a16;font-size:14px;line-height:1.75}
.correction-modal-card button{width:100%;margin-top:20px;padding:15px;border:0;border-radius:14px;background:#111827;color:#fff;font-size:16px;font-weight:800}
body:has(.modal-bg,.correction-modal){overflow:hidden}
.question-choice-gap{display:block;height:28px}
.question-passage-gap{display:block;height:32px}
.question-passage{display:block;font-weight:750;line-height:1.75}
.question-choice-line{display:grid;grid-template-columns:1.65em minmax(0,1fr);align-items:start;margin-top:8px;line-height:1.65}
.question-choice-line>b{font:inherit;font-weight:900}
.question-choice-line>span{min-width:0}
.explanation-line{display:block;margin:0;line-height:1.68}
.explanation-line+.explanation-line{margin-top:5px}
.explanation-line.explanation-item{margin-top:8px;padding-left:1.55em;text-indent:-1.55em}
.core-explain p,.choice-note p,.option-note p{white-space:normal;word-break:keep-all;overflow-wrap:break-word}
.quiz-shell>header{position:static!important;top:auto!important}
.question-underline{text-decoration-line:underline;text-decoration-thickness:3px;text-underline-offset:5px;text-decoration-color:#6536e8}
.negative-question-guide{display:flex;align-items:center;gap:8px;margin:14px 0 2px;padding:10px 12px;border:1px solid #f3c78b;border-radius:12px;background:#fff8eb;color:#7a3e00;font-size:.86rem;line-height:1.45}
.negative-question-guide b{flex:none;padding:2px 7px;border-radius:99px;background:#f79009;color:#fff;font-size:.72rem}
.answer-summary>div{gap:2px}
.answer-summary>div>b{font-size:1.08rem;line-height:1.35}
.answer-summary>div>small{font-size:.82rem;line-height:1.4;color:currentColor;opacity:.84}
.choice-note.not-right b{color:#475467}
.choice-note p{margin:0;font-size:.94rem;line-height:1.62}
.choice-note.right p{color:#067647;font-weight:750}
.choice-note.not-right p{color:#344054}
.choice-note.selected-note p{color:#b42318;font-weight:750}
.choice-note p strong{font-weight:950}
.mock-result .option-note p{font-size:.91rem;line-height:1.58}
.mock-result .option-note .option-text{display:block;margin-bottom:5px;color:#101828;font-size:.94rem;line-height:1.5}
.mock-result .option-note.right p{color:#067647;font-weight:750}
.mock-result .option-note.picked-wrong p{color:#b42318;font-weight:750}
.mock-result .option-note.right .option-text{color:#067647}
.mock-result .option-note.picked-wrong .option-text{color:#b42318}
.question.long-question{font-size:1.02rem!important;line-height:1.62!important;letter-spacing:-.025em}
.question.long-question .question-choice-gap{height:15px}
.question.long-question .question-choice-line{grid-template-columns:2.35em minmax(0,1fr);margin-top:14px;line-height:1.62}
.question.long-question .question-choice-line>b{white-space:nowrap}
.negative-question-guide{display:none!important}
html,body,#app,.quiz-shell{background:#fff!important}
.next{bottom:0!important;border-bottom:0!important;box-shadow:0 -8px 24px #1018280d}
.question-report{margin-top:22px!important;margin-bottom:4px!important;border:0!important;background:transparent!important;color:#667085!important;text-decoration:underline;text-underline-offset:3px}
.option-explain:empty{display:none}
.note-summary{display:block;margin-bottom:10px;font-size:.78rem;font-weight:900;color:#344054}
.note-row,.note-reason{display:grid;grid-template-columns:76px minmax(0,1fr);gap:9px;align-items:start;margin-top:8px;line-height:1.58}
.note-row>b,.note-reason>b{font-size:.72rem;text-align:center;border-radius:7px;padding:3px 5px;white-space:nowrap}
.note-wrong>b{background:#fee4e2;color:#b42318}
.note-missing>b{background:#fff1cc;color:#8a5700}
.note-reason>b{background:#e9e5ff;color:#4930a8}
.note-reason .explanation-line{line-height:1.58}
.other-explanations{margin-top:14px;border:1px solid #d0d5dd;border-radius:12px;background:#f9fafb;overflow:hidden}
.other-explanations>summary{padding:12px 14px;cursor:pointer;list-style:none;color:#475467;font-size:.84rem;font-weight:850}
.other-explanations>summary::-webkit-details-marker{display:none}
.other-explanations>summary:after{content:'＋';float:right;color:#667085}
.other-explanations[open]>summary:after{content:'−'}
.other-explanations>summary small{margin-left:4px;color:#98a2b3;font-weight:700}
.other-explanations>div{border-top:1px solid #eaecf0;background:#fff}
.other-note{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;padding:12px 13px;border-top:1px solid #eaecf0}
.other-note:first-child{border-top:0}
.other-note>b{color:#667085}
.other-note p{margin:0;color:#475467;font-size:.88rem}
.other-explanations .option-note{padding-left:12px;padding-right:12px}
.bottom-nav .nav-item{font-size:.72rem!important}
@media(max-width:520px){.bottom-nav .nav-item{font-size:.68rem!important}}
@media(max-width:420px){.note-row,.note-reason{grid-template-columns:68px minmax(0,1fr);gap:8px}.other-note p{font-size:.85rem}}
.question+.choices{margin-top:32px!important}
.question+.answer-summary{margin-top:32px!important}
.shared-explanations{display:grid;gap:12px;margin-top:16px}
.shared-note{padding:18px 20px;border:1px solid #d8dde5;border-radius:18px;background:#f7f8fb;color:#4b5565}
.shared-note strong{display:block;margin-bottom:8px;color:#283244;font-size:.92rem}
.shared-note p{margin:0;line-height:1.65}
.shared-note.selected-shared-note{border-color:#b5322a;background:#fff6f4}
.build-version{display:block;margin-top:8px;color:#98a2b3;font-size:.7rem;font-weight:700;letter-spacing:.04em}
