*{box-sizing:border-box} :root{--ink:#243438;--muted:#6e7c80;--teal:#166b63;--line:#dbe2df;--paper-size:16px}body{margin:0;color:var(--ink);background:#f6f8f5;font:15px/1.5 'Segoe UI',Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,textarea,select{outline-offset:3px}button{cursor:pointer;background:white;color:inherit;border:1px solid var(--line);border-radius:6px;padding:9px 15px}button:hover{background:#eef5f2;border-color:#a2bbb4}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #76bbcf}a{color:var(--teal)}.primary{background:var(--teal);color:white;border-color:var(--teal)}.primary:hover{background:#0c534c;color:white}.library-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #e2e7e2;background:#fff}.brand{font-size:25px;font-weight:650;text-decoration:none;display:flex;gap:13px;align-items:center;letter-spacing:-1px;color:#1d4d47}.brand-light{font-weight:400;font-size:17px;letter-spacing:0;color:#76837d}.local-badge{font-size:12px;display:flex;align-items:center;gap:8px;color:#6e7c76}.local-badge i{width:7px;height:7px;border-radius:50%;background:#609784}.library{max-width:1440px;padding:57px 5vw 25px;margin:auto}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:#668478}.hero{display:flex;align-items:center;justify-content:space-between}.hero h1,.results h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-1.6px;font-size:48px;line-height:1.15;margin:18px 0}.hero p{color:var(--muted);font-size:16px;margin-bottom:35px}.hero-mark{font:72px Georgia,serif;color:#6a8d7c;display:flex;gap:30px;align-items:center;padding-right:35px}.hero-mark span{font:50px 'Segoe UI';color:#a6bda8}.summary{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:10px 0 39px;padding:24px 0}.summary>div{display:flex;gap:16px;align-items:center;padding:0 24px;border-right:1px solid var(--line)}.summary>div:first-child{padding-left:0}.summary>div:last-child{border:0}.summary strong{font:33px Georgia,serif}.summary span{font-size:12px;color:#708078;max-width:160px}.library-tools{display:flex;justify-content:space-between;gap:20px}.tabs{display:flex;background:#e9eeea;padding:4px;border-radius:8px;gap:3px}.tabs button{border:0;background:none;color:#6e7d74;font-size:13px}.tabs .selected{background:white;color:#205c50;box-shadow:0 2px 4px #20352a10}.library-tools input{border:1px solid var(--line);background:white;border-radius:7px;padding:10px 15px;width:225px;font-size:13px}.collection-heading{display:flex;align-items:center;justify-content:space-between;margin:28px 0 17px}.collection-heading h2{font-size:19px;font-weight:550;margin:0}.collection-heading span{font-size:12px;color:var(--muted)}.test-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.test-card{text-align:left;border:1px solid #dce4dc;border-radius:10px;padding:24px 24px 0;background:#fff;transition:transform .15s,box-shadow .15s;overflow:hidden}.test-card:hover{transform:translateY(-3px);background:#fff;box-shadow:0 9px 28px #19493012}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.card-icon{font-size:22px;color:#407966;background:#eaf1e9;width:43px;height:43px;border-radius:10px;display:grid;place-items:center}.status{font-size:10px;color:#7b877d}.status.started{color:#247761;background:#eaf4eb;border-radius:12px;padding:3px 8px}.test-type{font-size:9px;letter-spacing:1.5px;color:#7c8c81;font-weight:600}.test-card h3{font-size:23px;font-weight:500;margin:8px 0 10px;letter-spacing:-.5px}.test-card p{font-size:12px;color:#718078;margin:0 0 25px}.card-bottom{display:flex;justify-content:space-between;border-top:1px solid #edf0eb;padding:15px 0;font-size:12px;font-weight:600;color:#277060}.card-bottom span:last-child{font-size:18px;line-height:18px}.library-footer{padding:40px 0 5px;font-size:11px;color:#87928b;display:flex;gap:5px;flex-wrap:wrap}.library-footer>span{margin-left:auto}.empty{padding:50px;color:var(--muted);grid-column:1/-1;text-align:center}.exam{background:#e7e8f0;font-family:Arial,sans-serif;overflow:hidden}.exam #app{height:100dvh;display:flex;flex-direction:column}.exam-header{height:43px;min-height:43px;background:linear-gradient(#47515b,#222b32);border-bottom:3px solid #697b88;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 16px;font-size:12px}.exam-header button{background:linear-gradient(#fff,#d2d6db);border:1px solid #89949b;color:#263039;font-size:12px;padding:4px 12px;border-radius:3px}.exam-header .primary{background:#dfe9ed}.exam-header .exam-brand{display:flex;align-items:center;gap:8px;color:white;background:none;border:0;font-size:15px;padding:0}.exam-brand span{font-size:11px;color:#c0cbd1}.timer{display:flex;gap:10px;align-items:center;font-size:13px}.timer strong{font-size:17px;font-weight:500;font-variant-numeric:tabular-nums}.timer-label{color:#dae2e7}.exam-actions{display:flex;gap:8px}.exam-title{height:37px;min-height:37px;padding:0 20px;background:#f6f8fa;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #cbd0d8;font-size:12px}.exam-title>div{display:flex;align-items:center;gap:12px}.pill{font-size:10px;color:#496170;letter-spacing:1px}.saved{font-size:10px;color:#75848c}.exam-toolbar{margin:9px 9px 7px;padding:10px 13px;background:#fff;border:1px solid #cdd0d9;display:flex;align-items:center;justify-content:space-between;min-height:62px;gap:10px}.exam-toolbar #part-label{display:flex;flex-direction:column;gap:6px;font-size:12px}.exam-toolbar #part-label b{font-size:15px;color:#171f24}.tools{display:flex;gap:8px;align-items:center;font-size:11px}.tools button,.tools select{font-size:11px;padding:5px 8px;border-radius:3px;background:#f4f6f8}.tools label{display:flex;align-items:center;gap:6px}.workspace{--split:55%;display:grid;grid-template-columns:minmax(0,var(--split)) 7px minmax(0,1fr);margin:0 9px;flex:1;min-height:0;border:1px solid #c6cad4;background:linear-gradient(#fdfefe,#e9e9f2);position:relative}.source-pane,.answers-pane{overflow:auto;scrollbar-color:#a6cfde #e7e8ef;scrollbar-width:thin}.split-handle{background:linear-gradient(90deg,#d0d7de,#f6f8fb,#c0c8d1);cursor:col-resize;touch-action:none}.pane-caption{height:34px;padding:8px 16px;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:9px;letter-spacing:1px;color:#6a7e88;border-bottom:1px solid #d7dce3;background:#eef2f7;position:sticky;top:0;z-index:1}.pane-caption a{font-size:10px;letter-spacing:0;color:#547582}.paper{padding:10px 24px 35px;font-size:var(--paper-size);line-height:1.6;color:#262c32;overflow-wrap:anywhere}.paper p:empty{display:none}.paper p{margin:13px 0}.paper img{max-width:100%;height:auto}.paper table{width:100%;border-collapse:collapse;font-size:.9em;margin:15px 0}.paper td,.paper th{border:1px solid #aebbc3;padding:10px;vertical-align:top}.paper th{background:#e5eaf0}.paper figure{margin:12px 0}.paper mark{background:#fff182;color:inherit}.paper h1,.paper h2{font-size:1.25em}.answers-pane{background:linear-gradient(#fff,#ececf4)}#answers{padding:8px 16px 30px}.answer-card{padding:12px 10px;border-bottom:1px solid #d6dce3;font-size:var(--paper-size);border-left:3px solid transparent}.answer-card.active{border-left-color:#78bfd3;background:linear-gradient(90deg,#e2f2f7,transparent)}.answer-heading{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:bold;gap:10px}.flag{background:none;border:0;color:#8f9ca6;padding:0 6px;font-size:19px}.flag.on{color:#bf8e20}.question-stem{font-size:.87em;line-height:1.5;white-space:pre-line;margin:9px 0}.question-hint{font-size:11px;color:#7b8790;margin:8px 0}.answer-input{border:1px solid #98a9b7;background:white;border-radius:0;font-size:14px;height:30px;max-width:100%;width:230px;padding:4px 8px;box-shadow:inset 0 1px 3px #16202b12}.answer-input:focus{background:#e1f5fc;outline:1px solid #53a2c0}.options{display:flex;flex-direction:column;gap:8px;font-size:13px}.options label{display:flex;align-items:flex-start;gap:7px;cursor:pointer}.options input{accent-color:#418eab}.exam-footer{padding:5px 14px 4px;background:#e0e5ee;border-top:1px solid #bcc5d0;box-shadow:0 -3px 8px #3042570a;min-height:118px}.part-tabs{display:flex;gap:5px;margin-bottom:5px}.part-tabs button{font-size:11px;border-radius:2px;padding:4px 12px;background:#e9edf3;border-color:#bcc5cf}.part-tabs button span{color:#778695;margin-left:9px;font-size:10px}.part-tabs button.selected{background:#fff;border-bottom:2px solid #6bb9cf;font-weight:bold}.question-strip{display:flex;align-items:center;justify-content:space-between;gap:12px}#question-nav{display:flex;gap:4px;flex-wrap:wrap}#question-nav button{font-size:10px;line-height:1;width:23px;height:24px;padding:0;border:1px solid #828e99;border-radius:1px;background:linear-gradient(#48505c,#17202b);color:white;position:relative}#question-nav button.answered{background:#fafcfd;color:#1e2833}#question-nav button.current{border-color:#81becf;background:#8ad0e2;color:#15323a;box-shadow:0 0 0 2px #c2e8f1}#question-nav button.flagged:after{position:absolute;right:-2px;top:-3px;content:'';width:7px;height:7px;background:#f0c34b;transform:rotate(45deg)}.nav-legend{display:flex;gap:5px;align-items:center;white-space:nowrap;font-size:9px;color:#74828e}.dot{width:7px;height:7px;display:inline-block;border:1px solid #98a7b3;margin-left:5px;background:white}.dot.flagged{background:#efc351;border:0}.footer-bottom{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#596b7c;padding-top:5px}.footer-bottom button{padding:2px 12px;border-radius:3px;font-size:19px;background:linear-gradient(#fff,#d6e3eb);border:1px solid #b2c1cd}.muted{color:var(--muted);font-size:12px}.audio-bar{display:flex;align-items:center;gap:20px;padding:0 22px 8px;min-height:45px;font-size:11px}.audio-bar audio{height:32px;width:380px}#audio-status{color:#687b85;font-size:10px}#notes-panel{position:absolute;right:0;top:0;bottom:0;width:310px;background:#fffde7;box-shadow:-5px 0 20px #233d5620;z-index:5;border-left:1px solid #d5cfaa}#notes-panel .pane-caption{background:#f6efc5}#notes-panel textarea{width:100%;height:calc(100% - 34px);background:none;border:0;padding:18px;resize:none;font:15px/1.7 'Segoe UI',sans-serif}#close-notes{padding:0 6px;border:0;background:none;font-size:18px}dialog{border:1px solid #becbd0;border-radius:8px;box-shadow:0 25px 100px #19394735;padding:32px;max-width:580px;color:var(--ink);background:#f9fcfb}dialog::backdrop{background:#192b3d88;backdrop-filter:blur(2px)}dialog h2{font-size:25px;letter-spacing:-.5px;line-height:1.3;font-weight:550;margin:12px 0 18px}dialog p{color:#62757b;font-size:14px;line-height:1.7}.dialog-kicker{font-size:10px;letter-spacing:2px;color:#668a7c}.intro-facts{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;padding:16px 0;border-block:1px solid var(--line);margin:20px 0}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(70px);background:#253e38;color:white;border-radius:6px;padding:12px 22px;font-size:13px;z-index:100;opacity:0;transition:.2s;box-shadow:0 4px 20px #163c3022;pointer-events:none}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.urgent{color:#ffcb89}.results{max-width:1050px;margin:50px auto;padding:0 25px 60px}.result-summary{display:flex;gap:40px;align-items:center;border-block:1px solid var(--line);padding:30px 0;margin-top:30px}.score{font:70px Georgia,serif;color:var(--teal);white-space:nowrap}.score span{font-size:24px;color:#819086}.result-summary h2{margin:0;font-size:20px}.result-summary p,.result-summary small{color:#78877d;font-size:13px}.result-actions{display:flex;gap:14px;align-items:center;margin:25px 0;font-size:12px}.results-table{width:100%;border-collapse:collapse;background:white}.results-table th{text-align:left;background:#e7eee8;font-size:12px;font-weight:500;padding:15px}.results-table td{padding:13px 15px;border-bottom:1px solid #e5eae5;font-size:13px}.result-tag{background:#f5ebd6;color:#8a6f35;font-size:11px;padding:5px 9px;border-radius:4px}.result-tag.correct{background:#e3f0e6;color:#41714d}@media(min-width:1600px){.test-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1050px){.test-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:38px}.hero-mark{display:none}.tools{gap:3px}.tools button{font-size:10px;padding:5px}.nav-legend,.footer-bottom .muted{display:none}.exam-footer{min-height:140px}.saved{display:none}}@media(max-width:700px){.test-grid{grid-template-columns:1fr}.library-tools{flex-direction:column}.summary{gap:15px}.summary>div{padding:0;display:block}.summary strong{display:block}.summary span{font-size:10px}.local-badge{display:none}.hero h1{font-size:34px}.workspace{grid-template-columns:minmax(0,50%) 5px minmax(0,1fr)}.tools #clear-highlights,.tools label,.exam-title b{display:none}.paper{padding:10px;font-size:14px}.exam-toolbar{padding:8px}.timer-label{display:none}.exam-actions{gap:3px}.exam-header{padding:0 8px}.exam-header button{padding:4px 7px}.audio-bar{gap:5px;padding:0 10px 8px}.audio-bar audio{width:230px}.audio-bar #audio-status{display:none}.library-footer>span{margin-left:0}}
/* Current reference: Inspera IELTS familiarisation player. */
.multi-question{border:0;padding:5px 0;margin:22px 0 30px}.multi-question legend{font-size:14px;font-weight:600}.floating-arrows #flag-current{background:#f2f2ee;color:#777;font-size:20px;width:35px}.floating-arrows #flag-current.on{color:#ad7e10;background:#fff0bc}
[hidden]{display:none!important}
.track-switch{display:flex;align-items:center;gap:4px;margin:-4px 0 22px}
.track-switch button{font-size:14px;padding:8px 18px;border:0;background:transparent;border-radius:0;border-bottom:2px solid transparent}
.track-switch button.selected{color:#176b63;border-bottom-color:#176b63;font-weight:600}
.track-switch>span{margin-left:18px;font-size:11px;color:#7e8983}
.library-tools select{border:1px solid var(--line);border-radius:7px;padding:9px 15px;background:white;margin-left:auto;color:#536e61;font-size:13px}
.exam{background:white;color:#111;font:16px/1.5 Arial,sans-serif}
.exam-header{height:56px;min-height:56px;background:#fff;color:#161616;border-bottom:1px solid #bdbdbd;padding:0 16px;gap:26px}
.exam-header .exam-brand{color:#d7193f;gap:7px;font-size:33px;letter-spacing:-1.8px}
.exam-brand b{font-weight:800}.exam-brand span{font-size:10px;color:#777;letter-spacing:0;align-self:flex-end;margin-bottom:5px}
.candidate{font-size:13px;margin-right:auto;line-height:1.4}.candidate b{display:block;font-size:10px;font-weight:400;color:#888}
.timer{font-size:12px;color:#333}.timer strong{font-size:17px;font-weight:600}.timer-label{color:#666;font-size:11px}.urgent{color:#c33131}
.exam-header button{background:none;border:0;color:#333;font-size:23px;padding:3px 9px;border-radius:2px}
.exam-header .primary{font-size:11px;background:#f2f2ef;border:1px solid #ddd;padding:7px 10px;margin-left:7px}
.exam-toolbar{margin:16px 16px 15px;background:#f1f2ec;border:1px solid #d7d8d2;border-radius:3px;padding:9px 16px;min-height:73px}
.exam-toolbar #part-label{font-size:16px;gap:3px}.exam-toolbar #part-label b{font-size:16px;color:#111}
.tools{gap:7px}.tools button,.tools select{border-color:#c7c9c4;background:#fff}
.workspace{--split:50%;margin:0 16px;grid-template-columns:minmax(0,var(--split)) 18px minmax(0,1fr);border:0;background:#fff}
.source-pane,.answers-pane{background:white;scrollbar-color:#979797 #f0f0f0;scrollbar-width:auto}
.source-pane .pane-caption{display:none}.paper{padding:14px 16px 75px 0;font-size:var(--paper-size);line-height:1.52;color:#111}
.paper p{margin:15px 0}.paper>p:first-child{margin-top:15px}.paper table{font-size:1em}.paper th{background:#f5f5f3}
.paper strong{font-weight:700}.paper img{max-width:100%;height:auto}.paper mark{background:#ffeb73}
.split-handle{background:#999;position:relative;width:18px;border-inline:7px solid #fff}
.split-handle:after{content:'↔';position:absolute;top:45%;left:-16px;width:32px;height:32px;border:1px solid #666;background:#fafafa;display:grid;place-items:center;color:#444;z-index:2;font-size:20px}
#answers{padding:14px 16px 80px 17px}
.native-question{margin:22px 0 29px;padding:0;border:0;font-size:var(--paper-size)}
.question-line{display:flex;align-items:baseline;gap:8px;line-height:1.55}
.q-number{font-size:15px;min-width:27px;display:inline-flex;align-items:center;justify-content:center;border:2px solid transparent;line-height:23px;font-weight:600}
.native-question.active .q-number{border-color:#5598b4;border-radius:2px}
.flag{margin-left:auto;opacity:.32;font-size:17px;flex-shrink:0}.native-question:hover .flag,.flag.on{opacity:1}.flag.on{color:#b58821}
.options{gap:15px;margin:15px 0 0 14px;font-size:var(--paper-size)}
.options label{align-items:center;gap:5px;line-height:1.6}.options input{margin:0;width:14px;height:14px;accent-color:#3786a7;flex-shrink:0}
.inline-answer{display:inline-block;border:1px solid #a5a5a5;border-radius:3px;background:white;width:145px;max-width:95%;height:30px;margin:3px 5px;padding:3px 8px;font-size:16px;text-align:left;vertical-align:baseline}
.inline-answer::placeholder{color:#333;text-align:center;font-weight:bold}.inline-answer:focus{outline:2px solid #579ab7;outline-offset:0}
.additional-answers{padding-top:20px;border-top:1px solid #ddd}.additional-answers>p{font-size:12px;color:#777}.additional-answers h3{font-size:16px}
.exam-footer{min-height:56px;height:56px;background:#fafafa;border:0;box-shadow:none;padding:0;display:flex;align-items:stretch;margin-top:0}
#question-nav{display:flex;align-items:stretch;gap:0;flex:1;flex-wrap:nowrap;min-width:0}
.nav-part{display:flex;align-items:center;gap:3px;padding:0 16px;flex:1;white-space:nowrap;position:relative;min-width:100px}
.nav-part.selected{flex:2}.nav-part>span{font-size:13px;color:#888;margin-left:8px}
#question-nav .part-button{width:auto;height:auto;padding:0 8px 0 0;font-size:15px;border:0;color:#333;background:none;box-shadow:none;font-weight:400;border-radius:0}
.nav-part.selected .part-button{font-weight:bold!important}
#question-nav .question-button{width:auto;min-width:18px;height:27px;padding:0 3px;background:none;color:#222;border:2px solid transparent;border-radius:2px;font-size:14px;line-height:23px;box-shadow:none}
#question-nav .question-button:before{content:'';position:absolute;top:-15px;left:-2px;right:-2px;height:3px;background:#d6d6d6}
#question-nav .question-button.answered:before{background:#579bb5}
#question-nav .question-button.current{border-color:#589cb6;background:white;color:#111}
#question-nav .question-button.flagged:after{top:-6px;right:-2px;width:5px;height:5px}
#review-bottom{width:78px;border:0;border-radius:0;background:#eeeeef;font-size:26px;color:#555}
.floating-arrows{position:fixed;bottom:87px;right:32px;display:flex;gap:3px;z-index:4}
.floating-arrows button{font:bold 30px/1 Arial,sans-serif;width:54px;height:54px;padding:0;background:#000;color:white;border:0;border-radius:3px}
.floating-arrows button:disabled{background:#ddd;color:white;cursor:default}
.audio-bar{padding:0 18px 12px;min-height:45px;font-size:12px}.audio-bar audio{height:30px;width:370px}
.listening .workspace{display:block}.listening .source-pane,.listening .split-handle{display:none}.listening .answers-pane{height:100%}.listening #answers{max-width:1150px;padding-left:16px;margin:0 auto}
.listening .native-question{max-width:900px}
#notes-panel{background:#fffdf4}#notes-panel .pane-caption{background:#f4f3e9;color:#555;letter-spacing:0}
@media(max-width:1100px){.nav-part{padding:0 9px}.nav-part.selected{flex:3}#question-nav .question-button{font-size:12px;min-width:15px;padding:0 1px}.candidate{display:none}.tools{position:absolute;right:16px;top:58px;z-index:8;background:#f1f2ec;padding:10px;border:1px solid #ccc}.exam-footer{height:60px;min-height:60px}.timer{margin-right:auto}}
@media(max-width:750px){.nav-part{min-width:60px}.nav-part>span{display:none}.nav-part.selected{flex-wrap:wrap}.exam-brand span{display:none}.timer-label{display:none}.exam-toolbar #part-label{font-size:13px}.exam-header{gap:10px}.exam-actions{gap:0}.exam-header .exam-brand{font-size:27px}.track-switch>span{display:none}.question-line{font-size:14px}.paper{font-size:14px}.options{font-size:14px}.inline-answer{width:100px}}

/* Optional answer feedback stays inside the active question paper. */
#show-answers{margin-left:auto;flex-shrink:0;font-size:12px;padding:7px 13px;background:#fff;border:1px solid #bac8c1;border-radius:4px;color:#315e4d}
#show-answers[aria-pressed=true]{background:#e3eee8;border-color:#60927c}
.answer-feedback{display:inline-flex;align-items:baseline;gap:5px;max-width:100%;margin:4px 6px 6px 0;padding:4px 7px;border-radius:4px;font-size:12px;line-height:1.5;vertical-align:middle;white-space:normal;overflow-wrap:anywhere;background:#f0f2f3;color:#5c6670}
.answer-feedback strong{font-weight:600}.feedback-symbol{font-size:17px;font-weight:700;line-height:1}
.answer-feedback.correct{background:#e5f3e9;color:#206937}.answer-feedback.incorrect{background:#fde9e7;color:#ac2d24}
.inline-answer.answer-correct{border:2px solid #358852;background:#f7fcf8}.inline-answer.answer-incorrect{border:2px solid #c54439;background:#fff9f8}
.native-question>.answer-feedback,.multi-question>.answer-feedback{display:flex;width:fit-content;margin-top:12px}

/* Book-grouped test library. */
.library{padding-top:32px}.library-title{font-size:30px;font-weight:600;letter-spacing:-.6px;margin:0 0 24px}
.library .track-switch{margin:0 0 22px}.library-tools input{margin-left:auto}.collection-heading{margin:20px 0 26px}
.book-group{margin-bottom:36px}.book-group h2{font-size:19px;font-weight:600;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid #dce3dd}
.book-group .test-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.book-group .test-card{padding:18px 18px 0}
.book-group .card-top{margin-bottom:16px;gap:10px;flex-wrap:wrap}.book-group .test-card h3{font-size:20px;margin:0}
.book-group .test-card p{margin:0 0 18px}.status{display:inline-flex;align-items:center;font-size:11px;font-weight:600;border:1px solid transparent;border-radius:20px;padding:3px 9px}
.status.not-started{color:#526071;background:#eef1f5;border-color:#d9dfe7}
.status.in-progress{color:#8b5308;background:#fff2d5;border-color:#e9ca86}
.status.completed{color:#236340;background:#e5f4e9;border-color:#a9d3b8}
@media(max-width:1100px){.book-group .test-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.book-group .test-grid{grid-template-columns:1fr}.library-tools input{margin-left:0;width:100%}}

.result-summary{gap:64px;align-items:flex-start;flex-wrap:wrap}
.score-metric h2{font-size:14px;font-weight:600;color:#53615c;margin-bottom:12px}
.band-score{font-size:54px;line-height:1.2;font-weight:650;color:#16734c}
.score-metric .score{font:54px/1.2 Arial,sans-serif}
.band-note{font-size:13px;color:#59655f;line-height:1.6}
.band-note a{color:inherit;text-underline-offset:3px}
@media(max-width:600px){.result-summary{gap:24px}.band-score,.score-metric .score{font-size:38px}}

.card-result{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:baseline;margin:16px 0 7px;color:#225b45;font-size:14px}.card-result strong{font-size:20px}.completed-time{display:block;font-size:12px;color:#64716a;margin-bottom:18px}

.writing-workspace{display:grid;grid-template-columns:1fr 1fr;min-height:0;flex:1;overflow:hidden;background:white}.writing-prompt{overflow:auto;padding:16px;border-right:1px solid #d5dcd8}.writing-prompt img{width:100%;display:block}.writing-prompt a{display:block;margin:12px}.writing-response{padding:24px;display:flex;flex-direction:column;gap:12px;min-height:0}.writing-response textarea{flex:1;min-height:200px;resize:none;font:18px/1.6 Arial,sans-serif;padding:16px;border:1px solid #a9b5ae;border-radius:4px}.writing-response label{font-weight:600}.writing-saved{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;padding:24px;background:#fff;border:1px solid #d5dcd8;margin-bottom:28px}.writing .exam-footer{gap:16px}.writing .exam-footer .selected{background:#e0eee7;color:#185b40}.writing .exam-toolbar{gap:24px}@media(max-width:650px){.writing-workspace{grid-template-columns:1fr;overflow:auto}.writing-response textarea{min-height:300px}.writing-prompt{overflow:visible}}

.writing-prompt img.enlarged{width:850px;max-width:none}.writing-prompt #w-zoom{margin-bottom:12px;font-size:13px}

.native-writing-task{font:18px/1.65 Arial,sans-serif;padding:12px 16px;color:#202923}.native-writing-task h2{font-size:22px;margin:0 0 24px}.native-writing-task p{margin:0 0 20px}.native-writing-task ul{padding-left:26px}.native-writing-task li{margin:8px 0}
