:root{--bg:#edf2f4;--card:#fff;--text:#26343c;--muted:#6c7880;--line:#d7e0e5;--accent:#356f8f;--green:#d8f0dc;--greenline:#43965a;--red:#f8dddd;--shadow:0 8px 25px #24374612}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui,Segoe UI,sans-serif}header{height:64px;background:#f9fbfc;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 5%}.brand{font-size:25px;font-weight:800}.brand span{color:var(--accent)}nav button{border:0;background:none;color:var(--accent);cursor:pointer}.layout{max-width:1200px;margin:30px auto;padding:0 18px;display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:22px}.card,.ad{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:28px}.ad{height:max-content;position:sticky;top:85px}.ad small{display:block;text-align:center;color:#9aa3a8;letter-spacing:1px;margin-bottom:12px}.adbox{border:1px solid var(--line);padding:14px;border-radius:10px}h1{margin:0 0 8px}.muted{color:var(--muted)}label{display:block;font-weight:650;margin:17px 0 6px}input,select{width:100%;padding:11px;margin-top:6px;border:1px solid var(--line);border-radius:9px;font-size:15px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.modes{display:flex;gap:25px}.modes label{font-weight:500}.modes input{width:auto}.primary{background:var(--accent);color:white;border:0;border-radius:9px;padding:12px 19px;font-weight:750;cursor:pointer;margin-top:20px}.hidden{display:none}.examhead{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:20px}.q{margin-bottom:25px}.qtext{font-size:20px;font-weight:750;margin-bottom:13px}.option{display:block;width:100%;text-align:left;padding:13px 15px;margin:9px 0;border:2px solid var(--line);background:#fff;border-radius:10px;cursor:pointer;font-size:16px}.option.selected{font-weight:800;border-color:var(--accent)}.option.correct{background:var(--green);border-color:var(--greenline)}.option.wrong{background:var(--red)}.score{font-size:44px;font-weight:850;color:var(--accent)}.review{margin-top:25px}@media(max-width:800px){.layout{grid-template-columns:1fr}.ad{position:static}.grid{grid-template-columns:1fr}}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid var(--line);padding:9px;text-align:left}.actions{display:flex;gap:7px;flex-wrap:wrap}.hierarchy{padding:4px 0 12px}.hierarchy select{background:#fbfdfe;min-height:100px}.hint{font-size:12px;color:var(--muted);font-weight:500}
.option.correct{background:var(--green);border-color:var(--line)}
.explanation{margin-top:10px;padding:13px 15px;border-left:4px solid var(--greenline);background:#f4faf5;border-radius:8px}
.review .q{border-top:1px solid var(--line);padding-top:20px}
.option:disabled{cursor:default;opacity:1}

.wrong-modal{position:fixed;top:12px;left:50%;transform:translateX(-50%);z-index:9999;pointer-events:none;padding:0;display:block}.wrong-modal-box{width:260px;max-width:calc(100vw - 24px);background:var(--card);border:1px solid #d7dddd;border-radius:9px;box-shadow:0 8px 24px #0003;padding:10px 12px;text-align:center;pointer-events:auto;user-select:none}.wrong-modal-title{font-size:18px;font-weight:800;line-height:1.2;margin:0 0 5px;cursor:move}.wrong-modal-text{font-size:12px;line-height:1.35;color:var(--muted);margin:0 0 8px}.wrong-modal-box .primary{min-width:60px;padding:6px 16px;font-size:13px}

.account-name{font-weight:650;margin-right:8px}.auth-modal{position:fixed;inset:0;background:#1e2b3290;z-index:10000;display:flex;align-items:flex-start;justify-content:center;padding:70px 15px 25px;overflow:auto}.auth-box{width:430px;max-width:100%;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 15px 45px #0004;padding:25px;position:relative}.auth-close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:28px;color:var(--muted);cursor:pointer}.auth-tabs{display:flex;gap:8px;margin-bottom:15px}.auth-tabs button{border:1px solid var(--line);background:#f7fafb;border-radius:8px;padding:8px 16px;cursor:pointer}.auth-switch{text-align:center;color:var(--muted)}.auth-switch a{color:var(--accent)}.account-layout{max-width:1100px;margin:30px auto;padding:0 18px}.account-layout .card{padding:28px}.account-layout h2{margin-top:28px}.account-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.account-stat{border:1px solid var(--line);border-radius:10px;padding:14px;background:#fbfdfe;overflow-wrap:anywhere}.account-stat b{display:block}.account-stat small{display:block;color:var(--muted);margin-top:4px}.account-sections{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:5px 0 20px}.account-sections section{min-width:0}@media(max-width:700px){.account-grid{grid-template-columns:1fr 1fr}.account-sections{grid-template-columns:1fr}}@media(max-width:480px){.account-grid{grid-template-columns:1fr}}
.passage{margin:0 0 18px;padding:18px 20px;background:#f8fafb;border:1px solid var(--line);border-radius:12px;box-shadow:inset 0 1px 0 #fff}.passage-title{font-size:18px;font-weight:800;margin-bottom:10px}.passage-content{white-space:normal;line-height:1.7;font-size:16px}.q+.passage{margin-top:25px}

#examActions{display:flex;gap:10px;margin-top:18px;justify-content:flex-end}.secondary{padding:10px 18px;border:1px solid #bbb;background:#fff;border-radius:8px;cursor:pointer}.secondary:hover{background:#f4f4f4}
.filter-options{margin-top:6px;border:1px solid var(--line);border-radius:10px;background:#fbfdfe;max-height:190px;overflow:auto;padding:5px 8px}.filter-choice{display:flex;align-items:flex-start;gap:9px;margin:0;padding:5px 3px;font-weight:450;line-height:1.35;cursor:pointer;border-radius:5px}.filter-choice:hover{background:#edf4f7}.filter-choice input[type=checkbox]{width:17px;height:17px;flex:0 0 17px;margin:2px 0 0;accent-color:var(--accent)}.filter-choice span{overflow-wrap:anywhere}.filter-choice.zero-count{color:#92999d}.filter-choice input:disabled{cursor:not-allowed}

.rich-content img,.passage-content img{max-width:100%;height:auto;vertical-align:middle}.rich-content table{border-collapse:collapse;max-width:100%}.rich-content td,.rich-content th{border:1px solid #ccd5d8;padding:6px}.rich-content p{margin:.45em 0}.qtext{overflow-wrap:anywhere}.option .rich-content{display:inline}
