@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700&display=swap');
:root{font-family:'Be Vietnam Pro',Arial,sans-serif;color:#1b293b;background:#f5f6f8;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #7ca8fa;outline-offset:2px}a{color:#1c55a3;text-decoration:none}a:hover{text-decoration:underline}
.loading{padding:4rem;text-align:center}.app{min-height:100dvh;display:grid;grid-template-columns:272px minmax(0,1fr) 340px;grid-template-rows:64px minmax(0,1fr)}.topbar{grid-column:1/-1;background:#fff;border-bottom:1px solid #e4e8ee;display:flex;align-items:center;justify-content:space-between;padding:0 25px;gap:16px}.brand{font-size:16px;font-weight:700;letter-spacing:-.02em;white-space:nowrap}.brand-mark{display:inline-grid;place-items:center;width:30px;height:30px;background:#1e559e;color:#fff;border-radius:8px;margin-right:10px;font-weight:700}.course-name{font-size:13px;color:#5d6b7c;font-weight:500}.header-right{display:flex;align-items:center;gap:12px;color:#647286;font-size:12px}.top-progress{width:94px;height:5px;background:#e7ebf0;border-radius:5px;overflow:hidden}.top-progress span{display:block;height:100%;background:#255fb5;border-radius:5px}
.sidebar{background:#fbfcfd;border-right:1px solid #e2e7ed;padding:24px 16px;overflow:auto;max-height:calc(100dvh - 64px)}.side-head{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8a95a3;font-weight:700;margin:6px 10px 13px}.source-card{width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:10px;padding:12px 13px;margin-bottom:6px;color:#203047;display:flex;justify-content:space-between;gap:8px;align-items:center}.source-card:hover,.source-card.active{background:#eaf1fb;border-color:#cbdcf7}.source-card strong{font-size:13px}.source-card small{display:block;font-size:11px;color:#778598;margin-top:5px;font-weight:500}.count{font-size:11px;color:#5172a0;background:#edf2f7;padding:4px 7px;border-radius:6px;white-space:nowrap}.source-card.active .count{background:#dbe9ff}.side-divider{border-top:1px solid #e5e9ee;margin:22px 7px}.chapter-btn{border:0;width:100%;background:transparent;text-align:left;padding:10px 12px;border-radius:8px;color:#4e5d70;font-size:12px;line-height:1.5;display:flex;justify-content:space-between;gap:5px}.chapter-btn:hover,.chapter-btn.active{background:#edf1f6;color:#1a355a}.chapter-btn span:last-child{color:#8c9aab}.search{width:100%;height:39px;border:1px solid #dce3eb;border-radius:8px;background:#fff;padding:0 11px;color:#1b293b;outline:0;font-size:12px}.search:focus{border-color:#3270c7;box-shadow:0 0 0 3px #dfeaff}.muted{color:#8391a2}.side-note{font-size:11px;line-height:1.7;color:#8792a0;margin:18px 9px}
.main{min-width:0;padding:28px 38px 44px;overflow:auto;max-height:calc(100dvh - 64px)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#5373a0}.page-title{font-size:25px;letter-spacing:-.035em;margin:7px 0 6px;line-height:1.3}.intro{font-size:13px;line-height:1.7;color:#6a7788;margin:0 0 22px}.toolbar{display:flex;align-items:center;gap:8px;margin:0 0 21px;flex-wrap:wrap}.tab{border:1px solid #dce3ec;background:#fff;border-radius:8px;padding:8px 12px;color:#546477;font-size:12px;font-weight:600}.tab.active{background:#1e559e;color:#fff;border-color:#1e559e}.toolbar-spacer{flex:1}.outline-button{border:1px solid #dce3ec;background:#fff;border-radius:8px;padding:8px 11px;color:#516177;font-size:12px;font-weight:600}.outline-button:hover{border-color:#aebdd0;background:#f9fbfd}.outline-button.saved{color:#ab6b20;border-color:#f2d8a9;background:#fffaf1}
.question-card{background:#fff;border:1px solid #e2e7ee;border-radius:13px;box-shadow:0 2px 9px #1e34460a;padding:26px}.question-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.meta-left{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.badge{background:#e9f0fb;color:#21589f;border-radius:6px;padding:6px 9px;font-size:11px;font-weight:700}.badge.neutral{background:#f0f2f5;color:#6a7686}.question-title{font-size:17px;line-height:1.65;font-weight:700;letter-spacing:-.01em;margin:0 0 23px}.options{display:grid;gap:10px}.option{display:flex;align-items:flex-start;gap:13px;text-align:left;width:100%;padding:14px 15px;border:1px solid #dce3eb;background:#fff;border-radius:9px;color:#243448;line-height:1.55;font-size:13px;min-height:56px}.option:hover:not(:disabled){border-color:#7fa7db;background:#f8fbff}.option-letter{flex:0 0 25px;width:25px;height:25px;border-radius:6px;display:grid;place-items:center;background:#f0f3f7;color:#46627e;font-size:11px;font-weight:700}.option.correct{border-color:#8ccbb1;background:#f0faf5;color:#0a6844}.option.correct .option-letter{background:#178655;color:#fff}.option.wrong{border-color:#e8aeac;background:#fff4f3;color:#a33530}.option.wrong .option-letter{background:#cb4541;color:#fff}.option.dim{opacity:.63}.option:disabled{cursor:default}.answer-box{margin-top:18px;border-left:3px solid #2572b9;background:#f2f7fc;padding:14px 16px;border-radius:0 8px 8px 0;font-size:12px;line-height:1.75;color:#4a6078}.answer-box strong{display:block;color:#1c568e;font-size:12px;margin-bottom:4px}.answer-box.error{border-color:#ce5149;background:#fff8f7}.answer-box.error strong{color:#a93833}.question-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:22px}.nav-button{border:1px solid #dce3eb;background:#fff;color:#40536c;border-radius:8px;padding:10px 14px;font-size:12px;font-weight:700}.nav-button.primary{background:#1e559e;color:#fff;border-color:#1e559e}.nav-button:disabled{opacity:.44;cursor:not-allowed}.progress-copy{font-size:11px;color:#8895a4;text-align:center}
.grid-section{margin-top:23px}.grid-heading{font-size:12px;font-weight:700;color:#4e6177;margin-bottom:12px;display:flex;justify-content:space-between}.number-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(37px,1fr));gap:6px;max-height:190px;overflow:auto}.number-grid button{height:33px;border:1px solid #dfe5ec;background:#fff;color:#637185;border-radius:6px;font-size:11px;font-weight:600}.number-grid button:hover,.number-grid button.current{border-color:#487fcc;background:#edf4ff;color:#1b57a8}.number-grid button.done{background:#e7f5ed;color:#177345;border-color:#cbead8}.number-grid button.failed{background:#fff0ef;color:#af4841;border-color:#f2cecb}.number-grid button.current{box-shadow:inset 0 0 0 1px #487fcc}
.evidence{background:#fff;border-left:1px solid #e2e7ee;padding:27px 22px;overflow:auto;max-height:calc(100dvh - 64px)}.evidence-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:15px}.evidence h2{font-size:13px;margin:0;letter-spacing:-.01em}.evidence-label{font-size:11px;font-weight:700;color:#235b9e;background:#edf4fd;padding:7px 9px;border-radius:6px;display:inline-block;margin-bottom:14px}.evidence-card{border:1px solid #e1e7ee;background:#fafcfe;border-radius:10px;padding:17px;font-size:12px;line-height:1.9;color:#3a4b5e;white-space:pre-wrap;overflow-wrap:anywhere}.evidence-card.focused{border-color:#8ab6e6;background:#f3f8ff;box-shadow:0 0 0 3px #e7f1ff}.evidence-placeholder{border:1px dashed #d5dfe9;border-radius:10px;padding:26px 18px;text-align:center;color:#8995a4;font-size:12px;line-height:1.8}.source-link{display:inline-block;margin-top:17px;font-size:11px;font-weight:600}.source-caption{font-size:11px;color:#93a0ae;line-height:1.7;margin-top:14px}
.reader-list{display:grid;gap:8px}.reader-item{background:#fff;border:1px solid #e2e7ee;border-radius:9px;padding:16px 17px}.reader-item summary{font-size:12px;font-weight:700;cursor:pointer;color:#30435b;line-height:1.5}.reader-item p{font-size:12px;line-height:1.85;white-space:pre-wrap;color:#485a6e;margin:13px 0 0}.reader-item small{color:#8492a3;margin-right:7px}.empty{padding:42px;background:#fff;border:1px dashed #dae2eb;border-radius:10px;color:#7b8999;font-size:13px;text-align:center;line-height:1.7}
.exam-list{display:grid;gap:13px}.exam-card{background:#fff;border:1px solid #e2e7ee;border-radius:12px;padding:21px 22px;box-shadow:0 2px 9px #1e344608}.exam-num{color:#2a63aa;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.exam-card h2{font-size:17px;letter-spacing:-.02em;margin:9px 0 5px}.exam-card p{font-size:12px;color:#728195;margin:0 0 20px;line-height:1.65}.exam-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e8edf2;padding-top:15px}.exam-card-footer span{font-size:11px;color:#8190a2}.exam-card-footer div{display:flex;gap:7px}.exam-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}.exam-top strong{font-size:13px;color:#465a72}.exam-timer{font-size:15px;font-weight:700;letter-spacing:.03em;font-variant-numeric:tabular-nums;color:#1f5da5;background:#eaf2fe;border:1px solid #d5e6fc;padding:8px 12px;border-radius:8px;min-width:71px;text-align:center}.exam-timer.urgent{color:#b33c36;background:#fff0ef;border-color:#f2cecb}.exam-progress{display:flex;justify-content:space-between;font-size:11px;color:#7e8da0;margin-bottom:12px}.exam-question .option.selected{border-color:#5587cc;background:#eff5ff;color:#215b9f}.exam-question .option.selected .option-letter{background:#2c69b3;color:#fff}.exam-grid{max-height:none;overflow:visible;grid-template-columns:repeat(10,minmax(0,1fr))}.exam-grid button.selected{background:#eaf2ff;color:#215b9f;border-color:#bcd4f5}.exam-grid button.skipped{background:#f3f4f6;color:#8c98a7}.exam-result{background:#ecf4ff;border:1px solid #cfe1f8;border-radius:11px;padding:19px 21px;display:flex;justify-content:space-between;gap:16px;margin-bottom:16px}.exam-result h2{font-size:30px;letter-spacing:-.04em;color:#205a9f;margin:5px 0}.exam-result p{font-size:12px;line-height:1.7;color:#586d84;margin:0}.exam-result-count{font-size:11px;white-space:nowrap;color:#6982a0}.submit-row{text-align:right;margin-top:20px}.submit-confirm{margin-top:20px;padding:16px;background:#fff9ec;border:1px solid #efdcb2;border-radius:9px;display:grid;gap:9px;font-size:12px;line-height:1.6;color:#665636}.submit-confirm strong{font-size:13px;color:#62460e}.submit-confirm div{display:flex;gap:8px;justify-content:flex-end;margin-top:3px}
@media(min-width:861px) and (max-width:1150px){.app{grid-template-columns:205px minmax(0,1fr) 275px}.main{padding:24px 20px}.evidence{padding:24px 17px}.sidebar{padding:20px 11px}.question-card{padding:20px}.question-title{font-size:15px}.option{font-size:12px;padding:12px}.toolbar{gap:5px}.tab,.outline-button{padding:7px 9px;font-size:11px}.question-footer .progress-copy{display:none}.question-footer .nav-button{white-space:nowrap}}
@media(max-width:860px){.app{grid-template-columns:210px minmax(0,1fr);grid-template-rows:64px auto auto}.sidebar{grid-row:2/4;max-height:none}.main{max-height:none;padding:24px}.evidence{grid-column:2;border-left:0;border-top:1px solid #e2e7ee;max-height:none;padding:24px}}
@media(max-width:720px){.app{display:block}.topbar{height:60px;padding:0 16px}.course-name,.header-right .top-progress{display:none}.sidebar{max-height:none;display:block;padding:14px 15px;border-right:0;border-bottom:1px solid #e2e7ed}.side-head,.side-divider,.chapter-list,.side-note{display:none}.source-row{display:flex;gap:7px;overflow:auto}.source-card{min-width:150px;margin:0;padding:9px}.source-card small{display:none}.sidebar .search{margin-top:10px}.main{padding:24px 16px}.page-title{font-size:21px}.question-card{padding:19px 16px}.question-title{font-size:15px}.option{font-size:12px}.question-footer{flex-wrap:wrap}.progress-copy{order:-1;width:100%}.evidence{padding:24px 16px}.number-grid{max-height:145px}}
@media(max-width:720px){.exam-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.exam-card-footer,.exam-result{flex-direction:column;align-items:flex-start}.exam-top strong{display:none}.submit-confirm div{flex-wrap:wrap}}
.review-notice{display:flex;align-items:flex-start;gap:16px;margin:0 0 20px;padding:16px;border:1px solid var(--border,#dce2e8);border-left:3px solid #394b5b;border-radius:8px;background:#fff}
.review-notice p{margin:6px 0 0;font-size:13px;line-height:1.6;color:#5b6571}
.review-notice button{flex-shrink:0}
.legacy-score{display:block;margin-top:6px;font-size:11px;color:#687681}
.main{overflow-anchor:none}
.exam-top{position:sticky;top:0;z-index:2;background:#f5f6f8;padding:10px 0}
@media(max-width:860px){.main{overflow:visible}}
.practice-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 14px;font-size:11px;color:#708095}.practice-tools>div{display:flex;gap:8px;flex-wrap:wrap}.outline-button:disabled{opacity:.45;cursor:default}.answer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.answer-heading strong{margin:0}.answer-heading button{flex-shrink:0}@media(max-width:720px){.answer-heading{align-items:flex-start;flex-wrap:wrap}.grid-heading{flex-wrap:wrap;gap:6px}}
.slide-preview{display:block;width:100%;padding:0;overflow:hidden;border:1px solid #cbd9e8;border-radius:9px;background:#fff;text-align:right;color:#21589f}.slide-preview img{display:block;width:100%;height:auto}.slide-preview span{display:block;padding:9px 12px;border-top:1px solid #e6edf4;background:#f8fafc;font-size:11px;font-weight:600}.slide-preview:hover{border-color:#5684ba}.source-transcript{margin-top:16px}.source-transcript summary{cursor:pointer;font-size:11px;color:#536b84}.source-transcript .evidence-card{margin-top:10px}.reader-item .slide-preview{margin-top:16px;max-width:720px}.slide-dialog{width:min(1440px,94vw);max-width:94vw;max-height:94dvh;padding:0;border:1px solid #d4dce5;border-radius:12px;box-shadow:0 22px 100px #15223755;background:#fff;color:#1b293b}.slide-dialog::backdrop{background:#102033b8}.slide-dialog-header,.slide-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px}.slide-dialog-header strong{font-size:14px}.slide-dialog-footer{border-top:1px solid #e5eaf0}.slide-dialog-footer>div{display:flex;align-items:center;gap:10px}.slide-dialog-footer .source-link{margin:0}.slide-viewport{overflow:auto;max-height:calc(94dvh - 130px);background:#edf1f5}.slide-full-image{display:block;max-width:none;height:auto;margin:0 auto}.slide-dialog-inner{min-width:0}@media(max-width:720px){.slide-dialog{width:96vw;max-width:96vw}.slide-dialog-footer{flex-wrap:wrap}.slide-dialog-header strong{font-size:12px}.slide-viewport{max-height:calc(94dvh - 176px)}}
.slide-viewport{height:calc(94dvh - 130px);max-height:none}@media(max-width:720px){.slide-viewport{height:calc(94dvh - 176px);max-height:none}}
.brand-group{display:flex;align-items:center;min-width:0;gap:5px}.course-nav{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid #e0e6ee;border-radius:9px;background:#f5f7fa;flex-shrink:0}.course-nav a{display:block;padding:7px 10px;border-radius:6px;font-size:11px;font-weight:600;color:#667487;white-space:nowrap;text-align:center}.course-nav a:hover{background:#e9eef5;text-decoration:none}.course-nav a[aria-current=page]{background:#fff;color:#1e559e;box-shadow:0 1px 3px #20304714}.search:disabled{background:#f2f4f7;color:#8a95a3;cursor:not-allowed}
.course-preparation{background:#fff;border:1px solid #e2e7ee;border-radius:13px;padding:26px}.preparation-status{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;color:#657383}.preparation-status>span{width:6px;height:6px;border-radius:50%;background:#8997a8}.preparation-heading h2{margin:12px 0 8px;font-size:20px;letter-spacing:-.025em;line-height:1.45}.preparation-heading p{font-size:13px;line-height:1.8;color:#6a7788;margin:0;max-width:620px}.preparation-chapters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:25px 0}.preparation-chapter{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:10px;padding:18px;border:1px solid #dce3eb;border-radius:9px;background:#fff;color:#203047}.preparation-chapter:hover,.preparation-chapter.active{background:#f5f8fd;border-color:#91afd7}.chapter-kicker{font-size:11px;font-weight:700;color:#647c9b;text-transform:uppercase;letter-spacing:.05em}.preparation-chapter strong{font-size:14px;line-height:1.65;font-weight:600}.chapter-topic-count{font-size:11px;line-height:1.6;color:#8390a1}.chapter-open{margin-top:auto;padding-top:5px;font-size:11px;color:#21589f;font-weight:600}.preparation-outline{border-top:1px solid #e7ebf0;padding-top:20px}.preparation-outline h3{font-size:13px;margin:0 0 17px}.outline-chapter h4{font-size:11px;color:#61738b;margin:16px 0 8px;font-weight:600}.outline-chapter ul{margin:0;padding:0 0 0 18px;color:#5f6e81;font-size:12px;line-height:1.9}.preparation-footnote{border-top:1px solid #e7ebf0;padding-top:17px;font-size:11px;line-height:1.8;color:#8390a1;margin:22px 0 0}.evidence-placeholder p{margin:10px 0 0}
.preparation-chapters{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
@media(min-width:721px) and (max-width:1300px){.brand-group .course-name{display:none}.topbar{padding:0 18px;gap:12px}.header-right .top-progress{display:none}}
@media(max-width:720px){.topbar{height:auto;min-height:104px;display:grid;grid-template-columns:1fr auto;gap:12px;padding:12px 16px}.course-nav{grid-column:1/-1;grid-row:2;display:flex}.course-nav a{flex:1;padding:8px 6px;font-size:11px}.header-right{font-size:10px}.course-preparation{padding:20px 16px}.preparation-heading h2{font-size:18px}.preparation-chapters{grid-template-columns:1fr;gap:10px}.preparation-chapter{padding:16px}.preparation-chapter strong{font-size:13px}}
.study-track-nav{display:flex;gap:23px;margin:0 0 22px;border-bottom:1px solid #dce3eb}.study-track-nav a{font-size:12px;font-weight:600;padding:0 0 11px;color:#7a8797;border-bottom:2px solid transparent}.study-track-nav a[aria-current=page]{color:#21589f;border-bottom-color:#21589f}.study-track-nav a:hover{text-decoration:none;color:#21589f}.source-card[href]:hover{text-decoration:none}.bank-set-list{display:grid;gap:4px}.bank-set{padding:4px 0}.bank-set .chapter-btn{align-items:flex-start}.bank-set .chapter-btn strong{display:block;font-size:12px;font-weight:600}.bank-set .chapter-btn small{display:block;font-size:10px;line-height:1.65;font-weight:400;color:#8792a0;margin-top:4px}.bank-subgroup{margin-left:12px;width:calc(100% - 12px);font-size:10px;border-left:1px solid #dce3eb;border-radius:0 7px 7px 0;padding:7px 12px}.bank-set-mobile{display:none}.bank-summary{border-top:1px solid #e1e6ed;border-bottom:1px solid #e1e6ed;padding:14px 0;margin-bottom:22px}.bank-summary>strong{font-size:12px;line-height:1.7}.bank-summary p{font-size:11px;line-height:1.8;color:#788698;margin:6px 0 12px}.bank-kind-filter{display:flex;gap:7px;flex-wrap:wrap}.bank-kind-filter .outline-button{font-size:10px;padding:6px 9px}.bank-kind-filter .selected{background:#eaf1fb;border-color:#c3d5ee;color:#21589f}.bank-editorial-note{font-size:12px;line-height:1.8;padding:12px 14px;border-left:2px solid #8995a6;background:#f5f7fa;color:#627185;margin:12px 0 18px}.bank-original-options{font-size:13px;line-height:1.8;padding-left:24px;color:#5a697b}.bank-original-options li{padding:8px 0 8px 4px}.bank-source-occurrence{margin-top:16px}.bank-source-occurrence>summary{font-size:11px;color:#49617f;cursor:pointer;line-height:1.7}.bank-source-occurrence .evidence-card{margin-top:10px}.bank-references{margin-top:24px;border-top:1px solid #e2e7ed;padding-top:15px}.bank-references h3{font-size:12px;margin:0 0 10px}.bank-references .source-link{display:block;font-size:11px;line-height:1.8;margin:10px 0}.bank-source-title{font-size:12px;margin-top:20px;color:#49617f}
@media(max-width:720px){.bank-set-list{display:none}.bank-set-mobile{display:grid;gap:7px;font-size:11px;color:#65788f;margin:12px 0}.bank-set-select{font:inherit;width:100%;border:1px solid #dce3eb;border-radius:7px;padding:9px;color:#263b56;background:#fff}.study-track-nav{gap:20px;margin-bottom:18px}.bank-summary{padding:12px 0}.bank-original-options{font-size:12px}}
.hcm-slide-evidence{margin:0 0 22px}.slide-match-status{font-size:12px;line-height:1.7;color:#304d6b}.hcm-slide-reference{margin-top:14px}.hcm-slide-reference .evidence-label{display:inline-block;margin-bottom:10px}.explanation-slide-links{margin-top:15px;padding-top:12px;border-top:1px solid #dce4ec;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.explanation-slide-links>strong{width:100%;font-size:11px;color:#536b84}.source-slide-link{font:inherit;font-size:11px;padding:6px 9px;border:1px solid #cbd9e8;border-radius:6px;background:#fff;color:#21589f;cursor:pointer}.source-slide-link:hover{border-color:#5684ba}
