:root{font-family:-apple-system,BlinkMacSystemFont,"Noto Sans TC","PingFang TC",sans-serif;color:#172b43;background:#f1f4f8;font-size:16px;line-height:1.65;--navy:#1d3557;--blue:#265da7;--border:#dce3eb}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.button{border:1px solid #c8d3e1;border-radius:7px;background:white;color:var(--navy);padding:9px 14px;cursor:pointer;line-height:1.4;display:inline-block}button:hover,.button:hover{background:#eaf0f8}button:disabled{opacity:.42;cursor:default}.primary{background:var(--navy);color:white;border-color:var(--navy)}.primary:hover{background:#2b4f80}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.button:focus-within{outline:3px solid #4c86d4;outline-offset:3px}header{background:var(--navy);color:white;padding:24px 4%;display:flex;justify-content:space-between;gap:24px;align-items:center}.brand{display:flex;gap:16px;align-items:center}.monogram{display:grid;place-items:center;border:1px solid #8494ab;border-radius:10px;width:52px;height:52px;font-family:Georgia,serif;font-size:25px;flex-shrink:0}h1{font-size:1.4rem;margin:0;font-weight:650}h2{font-size:1.45rem}h3{font-size:1.05rem}.eyebrow{font-size:.78rem;letter-spacing:.13em;margin:0 0 5px}.header-tools{display:flex;gap:9px;flex-wrap:wrap;align-items:center;font-size:.88rem}.mode{display:flex;gap:8px;align-items:center}.mode select{width:auto;max-width:250px;padding:8px}.notice{padding:10px 4%;background:#e8eff9;color:#234d7f;font-size:.9rem;border-bottom:1px solid #d3e0ef}.notice.demo{background:#fff2d7;color:#75500b}main{display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px;max-width:1380px;margin:auto;padding:30px 4%}aside{min-width:0}.sidebar-title{font-weight:700;display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.mini{font-size:.8rem;font-weight:400;color:#64748b}label{display:block;font-size:.9rem}aside>label{margin-bottom:18px}input[type=search],select,textarea{display:block;width:100%;background:white;border:1px solid #c8d3e1;border-radius:7px;padding:10px;margin-top:5px;color:#172b43}fieldset{border:0;padding:0;margin:20px 0}legend{font-size:.9rem;margin-bottom:7px}.check{display:flex;gap:10px;align-items:center;margin:10px 0}.check input{width:18px;height:18px;accent-color:var(--blue)}.local-note{font-size:.87rem;color:#5a6c81;margin:24px 0}.books{border-top:1px solid var(--border);padding-top:17px;font-size:.87rem}.books p{margin:15px 0;overflow-wrap:anywhere}summary{cursor:pointer;font-weight:600}.summary{display:grid;grid-template-columns:repeat(4,1fr);background:white;border:1px solid var(--border);border-radius:10px;padding:14px 5px}.summary>div{padding:0 20px;border-right:1px solid var(--border)}.summary>div:last-child{border:0}.summary strong{font-size:1.65rem;display:block;line-height:1.35;font-variant-numeric:tabular-nums}.summary span{font-size:.85rem;color:#5d6f84}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:22px 0 14px;font-size:.88rem}.toolbar>div{display:flex;gap:8px;flex-wrap:wrap}.card{background:white;border:1px solid var(--border);border-top:4px solid var(--navy);border-radius:10px;padding:28px 32px;min-height:410px}.empty{max-width:610px;margin:28px auto}.empty p{color:#54677e}.empty h2{margin:8px 0 20px}.empty button{margin:15px 0}.muted{color:#62758a;font-size:.88rem}.qhead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.tag{font-size:.82rem;color:#4a6480;background:#edf2f8;display:inline-block;padding:3px 9px;border-radius:4px;margin-right:6px}.stem{white-space:pre-wrap;margin:22px 0;line-height:1.85}.options{display:grid;gap:10px;margin:20px 0}.option{text-align:left;display:flex;gap:14px;padding:13px 16px;align-items:flex-start;white-space:pre-wrap}.option b{border-radius:4px;background:#edf2f8;padding:0 8px;flex-shrink:0}.option.selected{background:#e8effa;border-color:#376bb5}.option.correct{border-color:#2a8063;background:#edf8f3}.option.incorrect{border-color:#bc5860;background:#fff1f1}.answer-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:20px 0}.english{border-top:1px solid var(--border);padding:16px 0}.copy{white-space:pre-wrap;overflow-wrap:anywhere}.explanation{border-top:1px solid var(--border);margin-top:20px}.explanation section{padding:8px 0 12px}.explanation h3{border-left:3px solid #376bb5;padding-left:10px}.rating{display:flex;gap:8px;flex-wrap:wrap}.rating button[aria-pressed=true],#favorite[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.notes{border-top:1px solid var(--border);padding-top:18px;margin-top:20px}.notes textarea{min-height:95px;resize:vertical}.source{margin-top:25px;border-top:1px solid var(--border);padding-top:16px;font-size:.88rem}.source dl{display:grid;grid-template-columns:100px 1fr;gap:6px 16px}.source dt{color:#64748b}.source dd{margin:0;overflow-wrap:anywhere}footer{max-width:1380px;margin:auto;padding:15px 4% 35px;color:#60738a;font-size:.85rem}#feedback{color:#345f93;min-height:26px}a{color:#265da7}.images img{max-width:100%;height:auto}.image-warning{padding:12px;background:#fff2d7}button,select,.button{min-height:42px}@media(max-width:950px){header{align-items:flex-start;flex-direction:column}main{grid-template-columns:220px minmax(0,1fr);gap:20px}.card{padding:23px}.summary>div{padding:0 12px}.toolbar{align-items:flex-start;flex-direction:column}}@media(max-width:680px){header{padding:20px}h1{font-size:1.15rem}.header-tools{width:100%}.mode{width:100%;justify-content:space-between}.mode select{flex:1}main{display:block;padding:20px}aside{margin-bottom:24px;display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.sidebar-title,aside>label:first-of-type,fieldset,.local-note,.books{grid-column:1/-1}fieldset{display:flex;flex-wrap:wrap;gap:0 18px;margin:0 0 12px}.local-note{margin:15px 0}.books{margin-top:2px}.summary>div{padding:0 9px}.summary strong{font-size:1.35rem}.summary span{font-size:.8rem}.card{padding:20px}.source dl{grid-template-columns:1fr}.source dd{margin-bottom:8px}.qhead{flex-wrap:wrap}.toolbar button{padding:8px 11px}.empty{margin:10px 0}footer{padding:0 20px 25px}}
.shared{background:#f1f5fa;border-left:3px solid #8198b6;padding:15px 18px;margin:14px 0}.images figure{margin:20px 0}.images img{display:block;max-height:660px;margin:auto}.images figcaption{text-align:center;margin-top:8px}.guideline{background:#fff9ec;padding:12px 18px!important;border-radius:8px}.jump{display:flex;align-items:center;gap:7px;white-space:nowrap}.jump select{width:auto;margin:0;padding:6px}.toolbar{flex-wrap:wrap}.notes details{margin-top:20px}.copy{margin-top:10px}
.option:disabled{opacity:1;cursor:default}
.filter-toggle{display:none}@media(max-width:680px){.filter-toggle{display:block;grid-column:1/-1;width:100%;text-align:left}aside:not(.filters-open)>:not(.sidebar-title):not(.filter-toggle){display:none}.sidebar-title{margin-bottom:10px}aside.filters-open .filter-toggle{margin-bottom:16px}}

.mark-actions{display:flex;gap:8px;flex-wrap:wrap}.mark-actions button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.answer-result{padding:12px 16px;border-radius:7px;font-weight:650;margin-top:16px}.result-correct{color:#176345;background:#e9f7f0;border:1px solid #8bbca6}.result-wrong{color:#9b303a;background:#fff0f1;border:1px solid #dfa1a8}

/* Continuous question list and collapsible top filters. */
[hidden]{display:none!important}
main{display:block;max-width:1100px;padding-top:24px}
.filter-panel{background:white;border:1px solid var(--border);border-radius:10px;margin-bottom:20px}
.filter-panel>summary{padding:16px 20px;list-style-position:inside}
.filter-hint{font-weight:400;font-size:.85rem;color:#62758a;margin-left:16px}
.filter-body{padding:0 20px 20px;border-top:1px solid var(--border)}
.filter-fields{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px;padding-top:18px}
.filter-fields>*{min-width:0}
.filter-checks{display:flex;gap:8px 24px;flex-wrap:wrap;align-items:center}
.filter-checks .check{margin:4px 0}
.filter-checks button{margin-left:auto}
#questions{display:grid;gap:24px}
.card{min-height:0;scroll-margin-top:20px}
.toolbar{margin:0 0 16px}
.toolbar p{margin:0}
#feedback:empty{display:none}
@media(max-width:680px){
 main{padding:16px 12px}.filter-hint{display:block;margin:3px 0 0 20px}
 .filter-panel>summary{padding:14px 16px}.filter-body{padding:0 16px 16px}
 .filter-fields{grid-template-columns:1fr}.filter-checks{gap:10px 18px}
 .filter-checks button{margin-left:0}.card{padding:20px 16px}
 .toolbar{flex-direction:row;align-items:center}.toolbar>div{gap:6px}.toolbar button{font-size:.82rem;padding:8px}
 #questions{gap:18px}
}



/* Grading remains visible when the explanation is collapsed. */
.option.correct{background:#dcfce7;border-color:#15803d;color:#14532d}
.option.correct b{background:#15803d;color:#fff}
.option.incorrect{background:#fff1f2;border-color:#be123c;color:#881337}
.option.incorrect b{background:#be123c;color:#fff}
.correct-label{display:block;margin-top:6px;font-size:.84rem;font-weight:700;color:#166534}
.below-options{margin:12px 0 16px}
