.auth-shell{display:grid;min-height:100vh;place-items:center;padding:28px 18px}.auth-card{width:min(100%,430px);padding:34px;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:var(--shadow)}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:32px;color:var(--green);font-family:Georgia,serif;font-size:1.3rem;font-weight:700}.auth-card h1{margin-bottom:24px;font-size:2rem}.auth-form{display:grid;gap:18px}.auth-form label,.account-invite label{display:grid;gap:7px;font-weight:600}.auth-form input,.account-invite input{width:100%;min-height:44px;padding:10px 12px}.auth-form p{margin:0}.auth-error{color:var(--danger);overflow-wrap:anywhere}.auth-text-button{display:block;padding:8px 0;border:0;background:none;color:var(--green);font-weight:600;text-decoration:underline;cursor:pointer}.auth-card>.auth-text-button{margin-top:16px}.sidebar-account{margin-top:auto;padding:24px 10px 0}.sidebar-account>span{display:block;max-width:190px;margin-bottom:10px;overflow-wrap:anywhere;color:#a9c0ba;font-size:.8rem}.sidebar-account button{display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 0;border:0;background:none;color:#fff;cursor:pointer}.sidebar-account [role=alert]{margin:5px 0;color:#ffd1c9;font-size:.8rem}.account-invite{display:flex;align-items:end;gap:14px;margin-bottom:24px}.account-invite label{flex:1}.account-list{padding:0;list-style:none}.account-list li{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.account-list small{display:block;color:var(--muted)}.account-list li>span{flex-shrink:0;color:var(--muted);font-size:.85rem}@media(max-width:820px){.sidebar nav{min-width:0;overflow-x:auto}.sidebar-account{display:flex;align-items:center;gap:12px;margin-left:auto;padding:0}.sidebar-account>span{display:none}}@media(max-width:650px){.auth-card{padding:26px}.account-invite{align-items:stretch;flex-direction:column}.sidebar-account{margin:0}.account-list li{align-items:start;flex-direction:column;gap:5px}}.preview-option-feedback{display:inline-flex;flex-wrap:wrap;gap:6px;margin-left:8px}.preview-review-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:5px;font-size:12px;font-weight:700;line-height:1.4;white-space:nowrap}.preview-review-badge svg{flex:0 0 15px;width:15px;height:15px}.preview-review-badge.correct{color:#176137;background:#dff2e6}.preview-review-badge.wrong{color:#9b302a;background:#fce4e1}.preview-review-badge.unanswered{color:#80510c;background:#fff0cd}.ielts-listening .preview-option[data-review-selected],.ielts-listening .preview-option[data-review-correct]{width:100%;padding:8px 10px;border:1px solid;border-radius:6px;flex-wrap:wrap}.ielts-listening .preview-option[data-review-selected]{border-color:#d98d86;background:#fff0ee}.ielts-listening .preview-option[data-review-correct]{border-color:#8fbc9f;background:#edf8f0}.ielts-listening .preview-option[data-review-selected] input,.ielts-listening .preview-option[data-review-correct] input{opacity:1}.ielts-listening .preview-inline-answer:has(.preview-answer-feedback){display:inline-flex;flex-wrap:wrap;white-space:normal}.preview-answer-feedback{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 10px;max-width:100%;padding:6px 8px;border:1px solid #d8e2dc;border-radius:5px;font-size:13px;line-height:1.6;vertical-align:middle}.preview-answer-feedback[data-status=wrong]{border-color:#d98d86;background:#fff7f5}.preview-answer-feedback[data-status=unanswered]{border-color:#d0ad61;background:#fffbef}.preview-correct-answer{color:#176137}.preview-question-row>.preview-answer-feedback{margin-top:8px}.answer-review-value.learner.correct{border-color:#8fbc9f;background:#edf8f0}.answer-review-value.learner.wrong{border-color:#d98d86;background:#fff0ee}.answer-review-value.learner.wrong strong{color:#9b302a}.answer-review-value.learner.unanswered{border-color:#d0ad61;background:#fffbef}.answer-review-value>span.answer-review-value-label{display:flex;align-items:center;gap:6px}.answer-review-value-label svg{flex:0 0 16px;width:16px;height:16px}.answer-review-audio blockquote{border-left-color:#126eae}.answer-review-audio blockquote[data-current=true]{background:#e8f2fa;box-shadow:inset 3px 0 #126eae}.answer-review-audio-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.answer-review-audio-controls button{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #126eae;border-radius:6px;background:#126eae;color:#fff;font-size:14px;font-weight:600}.answer-review-audio-controls button:focus-visible{outline:2px solid #126eae;outline-offset:3px}.answer-review-audio-controls>span{color:#5d6c75;font-size:13px;font-variant-numeric:tabular-nums}@media(max-width:650px){.preview-option-feedback{margin-left:0}.ielts-listening .preview-option:has(.preview-option-feedback){row-gap:5px}.preview-answer-feedback{font-size:12px}}.listening-header>.listening-transcript-toggle{display:flex;flex:0 0 auto;gap:7px;width:auto;padding:7px 11px;border:1px solid #b8ccdd;border-radius:6px;background:#fff;color:#125f94;font-size:14px;font-weight:600;white-space:nowrap}.listening-header>.listening-transcript-toggle[aria-expanded=true]{background:#e8f2fa;border-color:#126eae}.listening-panel:has(.listening-transcript){padding:0;scroll-behavior:smooth}.listening-transcript{min-height:100%;color:#263b34}.transcript-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid #dfe7e1;background:#fff}.transcript-header span{display:flex;align-items:center;gap:6px;color:#67766f;font-size:12px;font-weight:700;text-transform:uppercase}.transcript-header h2{margin:4px 0 0;font-size:23px}.transcript-header button{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;padding:0;border:0;border-radius:50%;background:#f2f5f7;color:#405149}.transcript-parts{display:flex;flex-wrap:wrap;gap:8px;padding:18px 24px 0}.transcript-parts a{padding:6px 12px;border:1px solid #b8ccdd;border-radius:6px;color:#125f94;font-size:14px;text-decoration:none}.transcript-timing-notice{margin:16px 24px 0;padding:12px;border:1px solid #e6d39d;border-radius:6px;color:#715313;background:#fff8e6;font-size:14px;line-height:1.6}.transcript-content{padding:4px 20px 28px}.transcript-content>section{scroll-margin-top:100px;padding-top:24px}.transcript-content h3{margin:0 4px 12px;padding-bottom:10px;border-bottom:1px solid #dfe7e1;font-size:18px}.transcript-sentence{margin:3px 0;padding:8px 10px;border-radius:5px;font-size:16px;line-height:1.8;overflow-wrap:anywhere}.transcript-sentence:hover{background:#edf5fc}.transcript-timed{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;width:100%;border:1px solid transparent;background:#fff;color:inherit;text-align:left;cursor:pointer}.transcript-timed>span:nth-child(2){flex:1;min-width:150px}.transcript-timed[aria-current=true]{border-color:#126eae;background:#e8f2fa;box-shadow:inset 3px 0 #126eae}.transcript-timed:focus-visible{outline:2px solid #126eae;outline-offset:2px}.transcript-timestamp{display:inline-flex;align-items:center;gap:4px;color:#125f94;font-size:12px;font-variant-numeric:tabular-nums}.transcript-playing{padding:2px 6px;border-radius:4px;background:#126eae;color:#fff;font-size:11px;font-weight:700}.transcript-follow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 24px 0;font-size:13px}.transcript-follow label,.transcript-follow button{display:inline-flex;align-items:center;gap:6px}.transcript-follow button{padding:5px 8px;border:1px solid #b8ccdd;border-radius:5px;background:#fff;color:#125f94}.transcript-follow p{flex-basis:100%;margin:0;color:#697570;line-height:1.6}.transcript-empty{padding-inline:4px;color:#697570;font-size:15px}@media(max-width:650px){.ielts-listening:has(.listening-transcript-toggle){--listening-header-height: 112px}.ielts-listening:has(.listening-transcript-toggle)>.listening-header{flex-wrap:wrap;align-content:center;height:var(--listening-header-height);flex-shrink:0}.ielts-listening:has(.listening-transcript-toggle)>.listening-panel{top:var(--listening-header-height)}.listening-header>.listening-transcript-toggle{margin-left:auto}.transcript-header{padding:16px}.transcript-parts{padding-inline:16px}.transcript-timing-notice{margin-inline:16px}.transcript-content{padding-inline:12px}}.translation-popup{position:fixed;z-index:100;width:min(460px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto;padding:16px;border:1px solid #b8cfc5;border-radius:14px;background:var(--paper);color:var(--ink);box-shadow:0 16px 55px #18312d30;font:15px/1.55 Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-wrap:anywhere}.translation-popup header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.translation-popup header span{display:flex;align-items:center;gap:8px;color:var(--green);font-weight:700}.translation-popup button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:32px;min-height:32px;border:1px solid var(--line);border-radius:7px;background:#fff;cursor:pointer}.translation-popup button:focus-visible{outline:2px solid var(--green);outline-offset:3px}.translation-source{display:grid;justify-items:start;gap:8px;margin-bottom:12px}.translation-popup blockquote{width:100%;max-height:130px;overflow:auto;margin:0;padding:9px 12px;border-left:3px solid #9ebdae;background:#edf3ed;white-space:pre-wrap}.translation-speak{padding:5px 10px;color:var(--ink)}.translation-speech-error{margin:0}.translation-result{display:grid;gap:3px;margin:0 0 12px;white-space:pre-wrap}.translation-result strong,.dictionary-entry h3{color:var(--muted);font-size:12px;letter-spacing:.04em;text-transform:uppercase}.translation-loading{color:var(--muted)}.translation-popup [role=alert]{margin-bottom:14px;color:var(--danger)}.translation-retry{padding:5px 10px;color:var(--ink)}.translation-popup .translation-save-vocabulary{width:100%;margin-top:14px;padding:8px 12px;color:var(--green);font-weight:700}.dictionary-entry{display:grid;gap:14px;border-top:1px solid var(--line);padding-top:12px}.dictionary-part{justify-self:start;padding:3px 9px;border-radius:999px;background:var(--mint);color:var(--green-dark);font-size:13px;font-weight:700}.dictionary-entry section,.dictionary-entry h3,.dictionary-entry p{margin:0}.dictionary-entry ol,.dictionary-entry ul{display:grid;gap:9px;margin:6px 0 0;padding-left:20px}.dictionary-entry li>span,.dictionary-entry li>small{display:block}.dictionary-entry li>small,.dictionary-entry li>span[lang=vi]{color:var(--muted)}.dictionary-entry li>strong{margin-right:6px}.translation-selection-menu{position:fixed;z-index:99;display:flex;gap:4px;padding:5px;border:1px solid var(--line);border-radius:9px;background:var(--paper);box-shadow:0 5px 20px #18312d25}.translation-selection-menu button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:5px 9px;border:0;border-radius:5px;background:transparent;color:var(--ink);cursor:pointer}.translation-selection-menu button:hover{background:var(--mint)}.translation-selection-menu button:focus-visible{outline:2px solid var(--green);outline-offset:2px}.app-shell:has(.ielts-listening){display:block;min-height:0}.app-shell:has(.ielts-listening)>.sidebar{display:none}.app-shell:has(.ielts-listening)>.main{min-width:0}.ielts-listening{display:flex;flex-direction:column;height:100dvh;min-height:360px;overflow:hidden;color:#242424;background:#fff;font:16px/1.5 Arial,Helvetica,sans-serif}.ielts-listening button,.ielts-listening input,.ielts-listening select,.ielts-listening textarea{font:inherit}.ielts-listening button{cursor:pointer}.ielts-listening button:disabled{cursor:default;opacity:.5}.ielts-listening :focus-visible{outline:2px solid #126eae;outline-offset:3px}.ielts-listening h2,.ielts-listening h3{font-family:inherit;color:inherit;letter-spacing:0}.listening-header{display:flex;align-items:center;gap:20px;min-height:60px;padding:8px 24px;border-bottom:1px solid #c8c8c8;background:#f7f7f7}.listening-header>a,.listening-header>button{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;border:0;border-radius:3px;background:transparent;color:#303030}.listening-header>button:hover{background:#e5e5e5}.listening-identity{display:flex;align-items:baseline;gap:18px;flex:1}.listening-identity>strong{font-size:22px}.listening-identity>span{color:#626262;font-size:13px}.listening-timer{display:flex;align-items:center;gap:9px;margin-right:14px;font-size:18px;font-variant-numeric:tabular-nums;white-space:nowrap}.listening-timer.urgent{color:#b82c25}.listening-audio-bar{display:flex;align-items:center;gap:20px;min-height:51px;padding:8px 28px;border-bottom:1px solid #e0e0e0}.listening-audio-bar .audio-player{flex:1;font-size:13px}.listening-audio-bar .audio-player button{min-height:32px;padding:4px 10px;border:1px solid #b7b7b7;border-radius:3px;background:#fff}.listening-audio-bar .audio-player audio{max-width:330px}.listening-audio-bar .audio-player label{margin-left:10px}.listening-audio-bar .audio-volume input{width:85px;accent-color:#343434}.listening-save-status{color:#636363;font-size:13px;white-space:nowrap}.listening-paper{flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable;overscroll-behavior:contain;padding:24px 32px 32px;font-size:var(--listening-font-size)}.listening-part-heading{padding:12px 16px;margin-bottom:24px;border:1px solid #d8d8d8;border-radius:4px;background:#f5f5f5}.listening-part-heading p{margin:3px 0 0}.ielts-listening .preview-question-document{max-width:1100px}.ielts-listening .preview-question-group{margin-bottom:36px}.ielts-listening .preview-question-group h2{margin:0 0 7px;font-size:1em;line-height:1.5}.ielts-listening .preview-question-instructions{margin:0 0 22px;white-space:pre-line}.ielts-listening .preview-document-heading{margin:24px 0 12px;font-size:1.05em;text-align:left}.ielts-listening .preview-question-group:not(:has(table)) .preview-document-heading{text-align:left}.ielts-listening .preview-document-table{width:100%;min-width:690px;border-collapse:collapse;table-layout:fixed}.ielts-listening .preview-table-scroll{margin:16px 0 28px;overflow-x:auto}.ielts-listening .preview-document-table th,.ielts-listening .preview-document-table td{padding:12px 14px;border:1px solid #777;text-align:left;vertical-align:top;line-height:1.7}.ielts-listening .preview-document-table td{white-space:pre-line}.ielts-listening .preview-document-table th{background:#f0f0f0;font-weight:700}.ielts-listening .preview-document-table th:first-child{width:17%}.ielts-listening .preview-document-table th:nth-child(2){width:29%}.ielts-listening .preview-document-table th:nth-child(3){width:26%}.ielts-listening .preview-inline-answer{display:inline-flex;align-items:baseline;gap:5px;margin:2px 4px;vertical-align:baseline;white-space:nowrap}.ielts-listening .preview-question-number{display:inline;width:auto;height:auto;background:none;color:inherit;border-radius:0;font-size:.94em;font-weight:700}.ielts-listening .preview-answer-input{width:126px;max-width:100%;height:31px;padding:1px 6px;border:1px solid #858585;border-radius:3px;background:#fff;color:#1b1b1b;font-size:17px;text-align:left}.ielts-listening .preview-document-table .preview-answer-input{width:105px}.ielts-listening .preview-answer-input:focus{border-color:#126eae;box-shadow:0 0 0 1px #126eae;background:#fff}.ielts-listening .preview-document-list{margin:12px 0 24px;padding-left:24px}.ielts-listening .preview-document-list li{margin:10px 0;padding-left:2px}.ielts-listening .preview-question-row{min-width:0;padding:0;margin:24px 0;border:0}.ielts-listening .preview-question-prompt{width:100%;margin-bottom:8px;line-height:1.6}.ielts-listening .preview-question-prompt .preview-question-number{margin-right:9px}.ielts-listening .preview-options{display:flex;flex-direction:column;gap:3px;padding-left:29px}.ielts-listening .preview-option{display:flex;align-items:baseline;gap:10px;width:fit-content;min-height:30px;padding:2px 8px 2px 0;font-size:1em;cursor:pointer}.ielts-listening .preview-option input{position:relative;top:2px;flex:0 0 17px;width:17px;height:17px;accent-color:#126eae}.ielts-listening .preview-option-letter{min-width:15px}.ielts-listening .preview-option>span{cursor:text;-webkit-user-select:text;user-select:text}.ielts-listening .preview-shared-options{width:fit-content;max-width:100%;margin:20px 0 24px 28px;padding:12px 20px;border:1px solid #858585}.preview-shared-options>div{display:flex;gap:14px;padding:3px 0}.preview-shared-options dt{font-weight:700}.preview-shared-options dd{margin:0}.ielts-listening .preview-question-row:has(>select){display:flex;align-items:center;gap:24px;max-width:670px}.ielts-listening .preview-question-row:has(>select)>legend{float:left;margin:0;flex:1}.ielts-listening .preview-question-row select{width:76px;min-height:33px;padding:3px 9px;border:1px solid #858585;border-radius:3px;background:#fff}.ielts-listening mark{color:inherit;background:#fff09c}.listening-question-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 30px;border-top:1px solid #e4e4e4;background:#fff}.listening-question-actions>label{display:flex;align-items:center;gap:7px;color:#555;font-size:13px;cursor:pointer}.listening-question-actions input{accent-color:#126eae}.listening-question-actions>div{display:flex;gap:5px}.listening-question-actions button{display:grid;place-items:center;width:44px;height:36px;border:0;border-radius:3px;background:#282828;color:#fff}.listening-footer{display:flex;align-items:stretch;min-height:62px;border-top:1px solid #b9b9b9;background:#f1f1f1}.listening-footer>nav{display:flex;flex:1;min-width:0;overflow-x:auto}.listening-part-nav{display:flex;flex:1;align-items:center;padding:8px 15px;gap:12px;border-right:1px solid #c8c8c8;white-space:nowrap}.listening-part-nav.is-current{flex:2;background:#fff}.listening-part-button{display:flex;align-items:center;gap:12px;padding:4px 0;border:0;background:transparent}.listening-part-button span{color:#686868;font-size:13px}.listening-question-numbers{display:flex;gap:3px}.listening-question-numbers>button{position:relative;min-width:26px;height:29px;padding:2px 3px;border:1px solid transparent;border-radius:2px;background:transparent}.listening-question-numbers>button[aria-current]{border-color:#126eae;box-shadow:inset 0 0 0 1px #126eae;color:#125f94}.listening-question-numbers>button.is-answered{background:#e1edf6}.listening-question-numbers>button.is-flagged:after{content:"";position:absolute;right:1px;top:0;width:0;height:0;border-top:7px solid #bd7f16;border-left:7px solid transparent}.listening-submit{display:flex;align-items:center;justify-content:center;gap:8px;min-width:110px;padding:10px 18px;border:0;border-left:1px solid #b9b9b9;background:#e2e7ea;color:#1d313f}.listening-alert{padding:12px 24px;color:#9d2e25;background:#fff0ec;font-size:15px}.listening-alert button{margin-left:15px}.listening-panel{position:fixed;z-index:8;top:60px;right:0;bottom:62px;width:min(470px,100%);padding:26px;border-left:1px solid #b7b7b7;overflow-y:auto;background:#fff;box-shadow:-7px 0 22px #00000015}.listening-panel h2{margin-top:22px;font-size:22px}.listening-panel>label{display:grid;gap:12px;margin:20px 0}.listening-panel textarea{min-height:100px;padding:10px;resize:vertical}.listening-panel blockquote{margin:16px 0;padding:12px;background:#fff7d5}.listening-panel article{border-top:1px solid #ddd;margin-top:22px}.listening-panel-close{position:absolute;right:12px;top:12px;border:0;background:none}.listening-panel:has(.answer-review){padding:0}.listening-selection-tools,.listening-message{position:fixed;z-index:9;left:50%;bottom:130px;transform:translate(-50%);display:flex;align-items:center;gap:12px;max-width:calc(100% - 24px);padding:10px 14px;border:1px solid #bbb;border-radius:4px;background:#fff;box-shadow:0 4px 20px #0002;font-size:14px}.listening-selection-tools>span{max-width:180px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.listening-selection-tools button,.listening-message button{display:flex;align-items:center;gap:5px;padding:3px;border:0;background:none;white-space:nowrap}@media(max-width:900px){.listening-identity>span{display:none}.listening-part-nav{padding:8px 10px}.listening-part-button span{display:none}.listening-part-nav.is-current{flex:3}.listening-paper{padding:20px}}@media(max-width:650px){.listening-header{gap:10px;padding:7px 12px}.listening-identity>strong{font-size:19px}.listening-timer{margin:0;font-size:16px}.listening-save-status{display:none}.listening-audio-bar{padding:7px 12px}.listening-audio-bar .audio-player{flex-wrap:wrap;gap:6px}.listening-audio-bar .audio-player audio{width:230px}.listening-paper{padding:16px 14px}.listening-footer{min-height:85px}.listening-part-nav{flex-direction:column;align-items:start;justify-content:center;gap:3px}.listening-part-nav.is-current{min-width:310px}.listening-submit{min-width:49px;padding:8px}.listening-submit span{display:none}.listening-question-actions{padding:7px 14px}.listening-panel{bottom:85px}}@media(prefers-reduced-motion:reduce){.ielts-listening *,.ielts-listening *:before,.ielts-listening *:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.reading-paper{display:flex;flex:1;flex-direction:column;min-height:0;font-size:var(--listening-font-size)}.reading-paper>.listening-part-heading{flex-shrink:0;margin:16px 24px;padding:10px 16px}.reading-columns{display:grid;flex:1;grid-template-columns:minmax(0,var(--reading-split)) minmax(0,1fr);min-height:0}.reading-passage-pane,.reading-question-pane{min-width:0;overflow:auto;padding:16px 32px 40px;scrollbar-gutter:stable;overscroll-behavior:contain}.reading-passage-pane{border-right:6px solid #e4e4e4}.reading-passage-pane h1{margin:0 0 22px;color:inherit;font:700 1.25em/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;text-align:center}.reading-passage-pane p{margin:0 0 22px;line-height:1.7}.reading-labelled-paragraph,.reading-section-continuation{display:flex;align-items:baseline;gap:14px}.reading-paragraph-label,.reading-section-continuation:before{flex:0 0 18px}.reading-section-continuation:before{content:""}.reading-question-pane .preview-question-group{margin-bottom:38px}.reading-question-pane .preview-question-group>p:not(.preview-question-instructions){line-height:1.8}.reading-question-pane .preview-shared-options{margin-left:0}.reading-question-pane .preview-options{gap:5px}.reading-question-pane .preview-question-row:has(>select){gap:16px}.reading-question-pane select.preview-answer-input{width:76px;min-width:76px}.reading-question-pane .preview-inline-answer{margin-inline:5px}.ielts-reading .listening-part-nav.is-current{flex:3}.ielts-reading mark[data-reading-evidence]{background:#cdeee2;text-decoration:underline;text-decoration-color:#237553;text-underline-offset:3px}.reading-answer-analysis article{padding-top:12px}.reading-answer-analysis h4{margin:0 0 8px;font-size:14px;line-height:1.6}@media(max-width:1100px){.reading-passage-pane,.reading-question-pane{padding:14px 22px 32px}.ielts-reading .listening-part-nav{gap:7px}}@media(max-width:700px){.reading-columns{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.reading-passage-pane{border-right:0;border-bottom:5px solid #e4e4e4}.reading-passage-pane,.reading-question-pane{padding:12px 16px 24px}.reading-paper>.listening-part-heading{margin:10px 12px;padding:8px 12px;font-size:14px}.ielts-reading .listening-part-nav.is-current{min-width:420px}}.ielts-history-review{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,26%);grid-template-rows:auto auto minmax(0,1fr) auto auto}.ielts-history-review:not(:has(>.listening-panel)){grid-template-columns:minmax(0,1fr)}.ielts-history-review>.listening-header{grid-column:1 / -1;grid-row:1}.history-review-toolbar{display:flex;grid-column:1 / -1;grid-row:2;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;padding:10px 24px;border-bottom:1px solid #d3d3d3;background:#fafafa}.history-review-score{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px;font-size:13px;color:#595959}.history-review-score>strong{color:#222;font-size:22px}.history-review-filters{display:flex;flex-wrap:wrap;gap:5px}.history-review-filters button{display:flex;gap:7px;padding:6px 10px;border:1px solid #c5c5c5;border-radius:3px;background:#fff;color:#414141;font-size:13px}.history-review-filters button[aria-pressed=true]{border-color:#126eae;color:#125f94;background:#e8f2fa;box-shadow:inset 0 0 0 1px #126eae}.history-review-filters span{font-weight:700}.ielts-history-review>main{grid-column:1;grid-row:3}.ielts-history-review>.listening-question-actions{grid-column:1 / -1;grid-row:4}.ielts-history-review>.listening-question-actions>span{color:#555;font-size:13px}.ielts-history-review>.listening-footer{grid-column:1 / -1;grid-row:5}.ielts-history-review>.listening-panel{position:static;grid-column:2;grid-row:3;width:auto;min-height:0;border-left:1px solid #c8c8c8;box-shadow:none}.ielts-history-review .reading-passage-pane,.ielts-history-review .reading-question-pane{padding-inline:20px}.ielts-history-review [data-review-current]{outline:2px solid #126eae;outline-offset:5px;border-radius:2px;background:#f0f7fd}.ielts-history-review .preview-inline-answer[role=button],.ielts-history-review .preview-question-row[tabindex]{cursor:pointer}.ielts-history-review .preview-answer-input:disabled{opacity:1;background:#f7f7f7;color:#202020;-webkit-text-fill-color:#202020}.ielts-history-review .preview-inline-answer .preview-answer-input:disabled{pointer-events:none}.ielts-history-review .listening-question-numbers>button[data-review-status=correct]{color:#216542;background:#e7f2ea}.ielts-history-review .listening-question-numbers>button[data-review-status=wrong]{color:#a12c27;background:#faecea}.ielts-history-review .listening-question-numbers>button[data-review-status=unanswered]{color:#83530e;background:#fff5df}.history-review-empty{padding:24px}.answer-review-status.unanswered{color:#83530e;background:#fff5df}.ielts-history-review:has(>.listening-audio-bar){grid-template-rows:auto auto auto minmax(0,1fr) auto auto}.ielts-history-review>.listening-audio-bar{grid-column:1 / -1;grid-row:3}.ielts-history-review:has(>.listening-audio-bar)>main,.ielts-history-review:has(>.listening-audio-bar)>.listening-panel{grid-row:4}.ielts-history-review:has(>.listening-audio-bar)>.listening-question-actions{grid-row:5}.ielts-history-review:has(>.listening-audio-bar)>.listening-footer{grid-row:6}.ielts-history-review .preview-audio{flex:1;min-width:0;padding:0;--preview-orange: #126eae}@media(max-width:1200px){.ielts-history-review{grid-template-columns:minmax(0,1fr)}.ielts-history-review>.listening-panel{position:fixed;width:min(400px,100%);top:60px;bottom:62px;right:0;box-shadow:-7px 0 22px #00000015}}@media(max-width:650px){.history-review-toolbar{padding:8px 12px;gap:8px}.history-review-score{font-size:12px}.history-review-filters button{padding:5px 8px}.ielts-history-review>.listening-panel{bottom:85px}}.vocabulary-page{width:min(1240px,calc(100% - 64px))}.vocabulary-hero{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:44px;align-items:center;margin-bottom:28px;padding:42px 46px;overflow:hidden;border:1px solid #cfdbd3;border-radius:26px;background:linear-gradient(135deg,#eef4ee,#dceadf)}.vocabulary-hero h1{max-width:730px;margin-bottom:10px}.vocabulary-hero p:not(.eyebrow){max-width:700px;color:#52625e}.vocabulary-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:23px}.vocabulary-hero-actions>span{display:inline-flex;align-items:center;gap:7px;color:var(--green);font-weight:700}.vocabulary-hero-mark{display:grid;justify-items:center;padding:24px;border:1px solid rgba(255,255,255,.8);border-radius:20px;background:#ffffffad;color:var(--green);box-shadow:0 18px 45px #1d473d1a}.vocabulary-hero-mark strong{margin:4px 0 -3px;font:3.4rem/1 Georgia,serif}.vocabulary-hero-mark span{color:var(--ink);font-weight:700}.vocabulary-page-error{margin-bottom:18px}.vocabulary-error{color:#9b3028;font-size:.86rem}.vocabulary-workspace{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start}.vocabulary-deck-panel,.vocabulary-card-panel{border:1px solid var(--line);border-radius:20px;background:var(--paper);box-shadow:0 12px 35px #1f36300d}.vocabulary-deck-panel{position:sticky;top:20px;padding:20px}.vocabulary-panel-title{display:flex;align-items:center;justify-content:space-between;color:var(--green)}.vocabulary-panel-title h2{margin:3px 0 18px;color:var(--ink);font-size:1.35rem}.vocabulary-deck-create label{display:block;margin-bottom:6px;font-size:.78rem;font-weight:800}.vocabulary-deck-create>div{display:grid;grid-template-columns:1fr 38px;gap:6px}.vocabulary-deck-create input,.vocabulary-rename input{min-width:0;padding:0 10px}.vocabulary-deck-create button,.vocabulary-rename button,.vocabulary-deck-actions button{display:grid;min-width:36px;min-height:36px;place-items:center;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--green);cursor:pointer}.vocabulary-deck-list{display:grid;gap:7px;margin-top:17px}.vocabulary-deck-list article{position:relative;border:1px solid transparent;border-radius:12px;background:#f7f6f1}.vocabulary-deck-list article.is-selected{border-color:#a9c9bb;background:#edf5ef}.vocabulary-deck-select{display:grid;gap:4px;width:100%;padding:13px 70px 13px 13px;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.vocabulary-deck-select span{color:var(--muted);font-size:.74rem}.vocabulary-deck-actions{position:absolute;top:9px;right:7px;display:flex;gap:4px}.vocabulary-deck-actions button{min-width:28px;min-height:28px;border:0;background:transparent}.vocabulary-rename{display:grid;grid-template-columns:1fr auto auto;gap:4px;padding:8px}.vocabulary-card-panel{min-height:580px;padding:28px}.vocabulary-card-panel>header{display:flex;align-items:start;justify-content:space-between;gap:20px}.vocabulary-card-panel>header h2{margin:2px 0 5px}.vocabulary-card-panel>header p{color:var(--muted)}.vocabulary-add-card{display:grid;grid-template-columns:.75fr 1.25fr auto;gap:10px;align-items:end;margin:22px 0 26px;padding:16px;border-radius:14px;background:#edf4ef}.vocabulary-add-card>div{display:grid;gap:6px}.vocabulary-add-card label{font-size:.78rem;font-weight:800}.vocabulary-add-card input,.vocabulary-add-card textarea{min-height:43px;padding:10px 12px}.vocabulary-add-card textarea{height:43px;resize:vertical}.vocabulary-add-card .button{min-height:43px;white-space:nowrap}.vocabulary-card-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.vocabulary-card-list>article{padding:20px;border:1px solid var(--line);border-radius:15px;background:#fffefb}.vocabulary-card-heading{display:flex;justify-content:space-between;gap:14px}.vocabulary-card-heading h3{margin:7px 0 2px;font:1.55rem Georgia,serif}.vocabulary-card-heading strong{color:var(--green)}.vocabulary-card-heading>button{align-self:start;border:0;background:transparent;color:var(--muted);cursor:pointer}.vocabulary-status{display:inline-block;padding:3px 7px;border-radius:99px;background:#e7ece8;color:#617069;font-size:.68rem;font-weight:800;text-transform:uppercase}.vocabulary-status.is-known{background:#dceee5;color:#176451}.vocabulary-status.is-learning{background:#fae7ce;color:#9a591e}.vocabulary-card-list article>p{margin:13px 0 0;color:#53625e;font-size:.87rem}.vocabulary-example{display:grid;gap:3px;margin-top:14px;padding:12px;border-radius:10px;background:#edf4ef;color:#425650}.vocabulary-example small{color:var(--muted)}.vocabulary-card-list footer{display:flex;justify-content:space-between;gap:12px;margin-top:15px;color:var(--muted);font-size:.72rem}.vocabulary-empty{grid-column:1 / -1;align-self:center;justify-self:center;max-width:470px;padding:55px 20px;color:var(--muted);text-align:center}.vocabulary-empty svg{color:var(--green)}.vocabulary-empty h2,.vocabulary-empty h3{color:var(--ink)}.vocabulary-study{display:grid;min-height:100vh;padding:28px clamp(20px,5vw,72px) 55px;background:radial-gradient(circle at 50% 10%,#edf4ef,#f4f2ec 55%)}.vocabulary-study-header{display:flex;align-items:center;justify-content:space-between;gap:30px;align-self:start}.vocabulary-study-header>button{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--green);font-weight:800;cursor:pointer}.vocabulary-study-header>div{display:grid;grid-template-columns:auto minmax(140px,220px);align-items:center;gap:12px;color:var(--muted)}.vocabulary-study-header i{overflow:hidden;height:6px;border-radius:99px;background:#dfe5df}.vocabulary-study-header b{display:block;height:100%;background:var(--green)}.vocabulary-quiz-card{align-self:center;width:min(820px,100%);margin:42px auto;padding:clamp(30px,5vw,58px);border:1px solid #d5ded7;border-radius:26px;background:var(--paper);box-shadow:0 30px 80px #1f36301c}.vocabulary-quiz-card h1{max-width:690px;margin-bottom:25px;font-size:clamp(1.8rem,4vw,2.7rem)}.vocabulary-quiz-card>blockquote,.vocabulary-dialog blockquote{margin:0 0 28px;padding:16px 19px;border-left:4px solid #83ae9d;background:#edf4ef;color:#324b45;font:1.05rem Georgia,serif}.vocabulary-options{display:grid;grid-template-columns:1fr 1fr;gap:11px}.vocabulary-options button{min-height:58px;padding:13px 16px;border:1px solid #d8ddd8;border-radius:12px;background:#fff;color:var(--ink);font-weight:700;text-align:left;cursor:pointer}.vocabulary-options button.is-correct{border-color:#6dad92;background:#e1f1e7;color:#0e5f4f}.vocabulary-options button.is-wrong{border-color:#d48980;background:#f9e8e5;color:#9a3027}.vocabulary-written label,.vocabulary-dialog label{display:block;margin-bottom:7px;font-weight:800}.vocabulary-written>div{display:grid;grid-template-columns:1fr auto;gap:9px}.vocabulary-written input{min-height:46px;padding:0 14px}.vocabulary-feedback{margin-top:22px;padding:22px;border:1px solid;border-radius:15px}.vocabulary-feedback.is-correct{border-color:#9bc8b4;background:#edf7f1}.vocabulary-feedback.is-wrong{border-color:#e1aaa2;background:#fcf0ee}.vocabulary-feedback h2{display:flex;align-items:center;gap:7px;font-size:1.3rem}.vocabulary-feedback .button{margin-top:12px}.vocabulary-generate{text-align:center}.vocabulary-complete{align-self:center;justify-self:center;max-width:620px;text-align:center}.vocabulary-complete>span,.vocabulary-dialog-saved>span{display:grid;width:64px;height:64px;margin:0 auto 22px;place-items:center;border-radius:50%;background:var(--mint);color:var(--green)}.vocabulary-dialog-backdrop{position:fixed;z-index:100;inset:0;display:grid;padding:20px;place-items:center;background:#13272380;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.vocabulary-dialog{position:relative;width:min(540px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:30px;border-radius:20px;background:#fffdf8;box-shadow:0 30px 90px #00000040}.vocabulary-dialog-close{position:absolute;top:16px;right:16px;display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:50%;background:#eef1ed;color:var(--ink);cursor:pointer}.vocabulary-dialog-icon{display:grid;width:45px;height:45px;margin-bottom:18px;place-items:center;border-radius:13px;background:var(--mint);color:var(--green)}.vocabulary-dialog h2{margin-bottom:16px;font:2rem Georgia,serif}.vocabulary-dialog select{width:100%;min-height:44px;padding:0 11px}.vocabulary-dialog form>p{color:var(--muted);font-size:.82rem}.vocabulary-dialog form>.button{width:100%}.vocabulary-dialog-saved{text-align:center}.vocabulary-dialog-saved>strong{color:var(--green)}@media(max-width:950px){.vocabulary-workspace{grid-template-columns:1fr}.vocabulary-deck-panel{position:static}.vocabulary-card-list,.vocabulary-add-card{grid-template-columns:1fr}}@media(max-width:700px){.vocabulary-page{width:min(100% - 30px,720px)}.vocabulary-hero{grid-template-columns:1fr;padding:28px}.vocabulary-hero-mark{grid-template-columns:auto auto 1fr;justify-items:start;gap:9px}.vocabulary-hero-mark strong{font-size:2rem}.vocabulary-card-panel{padding:20px}.vocabulary-options{grid-template-columns:1fr}.vocabulary-written>div{grid-template-columns:1fr}.vocabulary-study-header{align-items:start}.vocabulary-study-header>div{grid-template-columns:auto 90px}}.book-reader .page-header{align-items:flex-start;gap:20px}.book-reader-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start}.book-contents{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px}.book-contents section+section{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.book-contents h2{font-size:12px;color:var(--muted);margin:5px 8px 9px;text-transform:uppercase;letter-spacing:.05em}.book-contents button{display:flex;gap:9px;width:100%;text-align:left;padding:10px 8px;border:0;border-radius:6px;color:var(--ink);background:transparent;line-height:1.45}.book-contents button svg{flex:none;margin-top:3px}.book-contents button small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.book-contents button:hover,.book-contents button[aria-current=page]{background:#e4f0ed;color:#155a50}.book-reader-document{min-width:0;background:#e9e9e6;border:1px solid var(--line);border-radius:10px;overflow:hidden}.book-reader-document>header{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:15px 18px;background:#fff;border-bottom:1px solid var(--line)}.book-reader-document h2{font-size:17px;margin:0}.book-page-navigation{display:flex;align-items:center;gap:10px;font-size:13px}.book-page-navigation button{display:flex;align-items:center;justify-content:center;padding:7px;background:#fff;border:1px solid var(--line);border-radius:5px}.book-page-navigation select{width:auto;padding:5px}.book-reader-document>img{display:block;max-width:100%;width:100%;height:auto;background:#fff}@media(max-width:800px){.book-reader-layout{grid-template-columns:minmax(0,1fr);gap:16px}.book-contents{position:static;max-height:220px}.book-reader .page-header{flex-direction:column}}.app-shell:has(.exam-entry){display:block}.app-shell:has(.exam-entry)>.sidebar{display:none}.exam-entry{min-height:100dvh;padding:28px 24px 48px;background:#f3f6f5;color:#183630}.exam-entry-back{display:inline-flex;align-items:center;gap:8px;color:#315b50;text-decoration:none;font-size:14px}.exam-entry-card{max-width:720px;margin:32px auto 0;padding:36px 40px;border:1px solid #dce6e1;border-radius:16px;background:#fff;box-shadow:0 12px 40px #193b3008}.exam-entry-eyebrow{color:#397161;font-size:12px;font-weight:700;letter-spacing:.12em}.exam-entry h1{margin:12px 0 8px;font-size:32px}.exam-entry-name{margin:0;color:#5b6d67}.exam-entry-facts{display:flex;gap:24px;margin:22px 0 28px;padding-bottom:24px;border-bottom:1px solid #e6ebe8}.exam-entry-facts>span{display:inline-flex;gap:8px;align-items:center;font-variant-numeric:tabular-nums}.exam-entry-choices{display:grid;gap:12px;margin:0;padding:0;border:0}.exam-entry-choices legend{margin-bottom:14px;font-weight:700}.exam-entry-choice{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px solid #d7dfda;border-radius:9px;cursor:pointer}.exam-entry-choice.selected{border-color:#327a63;background:#f2f8f5;box-shadow:0 0 0 1px #327a63}.exam-entry-choice input{margin:4px 0 0;accent-color:#286a54}.exam-entry-choice>span{display:grid;gap:7px}.exam-entry-choice strong{font-size:17px}.exam-entry-choice span span{font-size:14px;font-variant-numeric:tabular-nums}.exam-entry-choice small{color:#5f7068;font-size:13px;line-height:1.6}.exam-entry-tip{display:flex;align-items:center;gap:10px;margin-top:25px;color:#567065;font-size:14px}.exam-entry-tip svg{flex-shrink:0}.exam-entry-timing{margin:18px 0;font-size:14px;font-weight:600}.exam-entry-warning{padding:12px 14px;border-radius:6px;background:#fff4de;color:#765619;font-size:13px;line-height:1.6}.exam-entry-start{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:50px;padding:12px;border:0;border-radius:7px;background:#1c5040;color:#fff;font:inherit;font-weight:700;cursor:pointer}.exam-entry-start:hover{background:#286851}.exam-entry-start:disabled{opacity:.65;cursor:wait}.exam-entry :focus-visible{outline:3px solid #327a63;outline-offset:4px}@media(max-width:600px){.exam-entry{padding:20px 16px 32px}.exam-entry-card{margin-top:22px;padding:26px 20px}.exam-entry h1{font-size:26px}.exam-entry-choice{padding:15px 12px}}.practice-preview{--preview-green: #0f9f2b;--preview-pale: #e5f6e9;--preview-orange: #ff6b35;--preview-paper: #fffaf6;--preview-text: #344655;--preview-line: #dededb;display:flex;flex-direction:column;height:100dvh;overflow:hidden;background:var(--preview-paper);color:var(--preview-text);font-family:Avenir Next,Segoe UI,sans-serif;font-size:17px;line-height:1.55}.practice-preview button{cursor:pointer;touch-action:manipulation}.practice-preview button:disabled{cursor:default;opacity:.55}.practice-preview :focus-visible{outline:3px solid #196ab2;outline-offset:3px}.practice-preview h1,.practice-preview h2,.practice-preview h3{font-family:inherit;color:#292e32;letter-spacing:0}.preview-topnav{display:flex;align-items:center;gap:30px;min-height:44px;padding:0 28px;background:#91d5b7;font-weight:600}.preview-topnav>a,.preview-topnav>div,.preview-topnav a{display:flex;align-items:center;gap:10px}.preview-topnav>div{align-self:stretch;gap:5px}.preview-topnav>div a{margin:8px 0 0;padding:8px 20px;border-radius:10px 10px 0 0}.preview-topnav a[aria-current]{color:#b64016;background:var(--preview-paper)}.preview-topnav>span{margin-left:auto;font-size:13px;font-weight:500}.preview-header{display:flex;align-items:center;gap:12px;position:relative;min-height:48px;padding:5px 28px;background:#fbefe4}.preview-header>a{display:grid;place-items:center;width:40px;height:40px;color:#747d83}.preview-section-label{font-size:15px}.preview-clock{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:5px;align-items:center;padding:4px 10px;background:var(--preview-green);color:#fff;border-radius:24px;font-variant-numeric:tabular-nums}.preview-header-actions{display:flex;gap:10px;margin-left:auto}.preview-header-actions button{display:flex;align-items:center;gap:7px;padding:6px 14px;min-height:40px;border:1px solid #e0e2e5;border-radius:25px;background:#fff;font-weight:600}.preview-body{position:relative;display:flex;flex:1;min-height:0}.preview-tools{flex:0 0 90px;display:flex;flex-direction:column;justify-content:center;gap:16px;padding:20px 12px;font-size:13px;text-align:center;background:#fffdfb}.preview-tools strong{font-size:15px}.preview-tools button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:76px;border:1px solid #3eaa4c;border-radius:7px;background:transparent;color:#237332;font-weight:600}.preview-tools button:hover{background:var(--preview-pale)}.preview-workspace{display:flex;flex:1;min-width:0;min-height:0;padding-right:max(40px,calc((100vw - 1580px)/2))}.preview-reading-pane,.preview-question-pane{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0;padding:30px 26px 65px;font-size:var(--preview-font-size);line-height:1.6}.preview-reading-pane{flex:0 0 var(--preview-split);border-right:5px solid #dedbdb}.preview-question-pane{flex:1}.preview-passage h1{margin:8px 0 24px;font-size:1.32em;font-weight:600;text-align:center;line-height:1.4}.preview-passage p{margin:0 0 23px;white-space:normal}.practice-preview mark{background:#fff09a;color:inherit}.preview-question-group{margin-bottom:36px}.preview-question-group h2{font-size:1.27em;margin:0 0 13px;line-height:1.4}.preview-question-instructions{margin-bottom:27px}.preview-document-heading{font-size:1em;line-height:1.6;margin:25px 0 12px;font-weight:700}.preview-document-heading:first-of-type{text-align:center}.preview-document-list{padding-left:24px;margin:0 0 24px}.preview-document-list li{margin:9px 0;padding-left:2px}.preview-document-list .preview-document-list{margin:8px 0;padding-left:32px;list-style-type:"–  "}.preview-inline-answer{display:inline-flex;align-items:baseline;gap:7px;margin:0 5px;vertical-align:baseline;white-space:nowrap}.preview-question-number{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--preview-pale);color:#188735;font-weight:600;font-size:.86em;flex-shrink:0}.preview-answer-input{width:135px;max-width:100%;height:35px;border:0;border-bottom:1px solid #505050;border-radius:0;background:transparent;color:#263e50;padding:2px 7px;font:inherit;font-size:max(17px,.95em);text-align:center}.preview-answer-input:focus{background:#fff;border-color:#1c9c3a;box-shadow:0 2px #1c9c3a}.preview-answer-input:disabled{opacity:.8}.preview-question-row{padding:0;margin:28px 0;border:0;min-width:0}.preview-question-prompt{display:block;width:100%;margin-bottom:12px}.preview-question-prompt .preview-question-number{margin-right:8px}.preview-options{display:flex;flex-wrap:wrap;column-gap:20px;row-gap:10px;padding-left:45px}.preview-option{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.88em;min-height:35px}.preview-option input{width:19px;height:19px;accent-color:var(--preview-green)}.preview-table-scroll{overflow-x:auto;margin:28px 0 35px}.preview-document-table{width:100%;border-collapse:collapse;table-layout:fixed}.preview-document-table th,.preview-document-table td{padding:20px;border:1px solid #b9c7c0;vertical-align:top;text-align:left}.preview-document-table th{background:#eaf5ed;font-weight:600}.preview-document-table th,.preview-document-table td{white-space:pre-line}.preview-document-table th:first-child{width:16%}.preview-document-table th:nth-child(2){width:29%}.preview-document-table th:nth-child(3){width:25%}.preview-document-table td .preview-inline-answer{margin:3px 0}.preview-document-table .preview-answer-input{width:105px}.preview-listening .preview-question-pane{padding:35px 38px 50px}.preview-listening .preview-question-document{max-width:1200px;margin:0 auto}.preview-panel{position:absolute;z-index:5;top:0;right:0;bottom:0;width:min(390px,100%);padding:25px;overflow-y:auto;overscroll-behavior:contain;background:#fff;box-shadow:-8px 0 30px #3446551a;border-left:1px solid var(--preview-line)}.preview-panel-review{width:min(560px,100%);padding:0;background:#f8faf7}.preview-panel h2{font-size:22px;margin:22px 0}.preview-panel-close{position:absolute;right:12px;top:10px;background:none;border:0;padding:8px}.preview-panel label{display:grid;gap:10px;margin:22px 0}.preview-panel input[type=range]{width:100%;accent-color:var(--preview-green)}.preview-panel textarea{min-height:110px;padding:12px;resize:vertical}.preview-panel blockquote{margin:16px 0;padding:10px 14px;background:#fff8d8;border-left:3px solid #efcd56}.preview-panel article{border-top:1px solid var(--preview-line);margin-top:20px;padding-top:4px}.preview-panel small{display:block;color:#606c75;font-size:13px;margin-top:18px}.preview-primary{border:0;border-radius:6px;padding:9px 15px;background:var(--preview-green);color:#fff}.answer-review{min-height:100%;color:#33433f}.answer-review-header{position:sticky;z-index:2;top:0;display:flex;align-items:center;gap:12px;padding:22px 58px 18px 28px;border-bottom:1px solid #dfe7e1;background:#fffffff5}.answer-review-header>div{min-width:0;margin-right:auto}.answer-review-header span{color:#67766f;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.answer-review-header h2{margin:2px 0 0;font-size:26px;line-height:1.2;text-wrap:balance}.answer-review-close{position:absolute;top:20px;right:18px;display:grid;width:38px;height:38px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#52615b}.answer-review-close:hover{background:#edf2ee;color:#24352f}.answer-review-status{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;font-size:12px;letter-spacing:0;text-transform:none;white-space:nowrap}.answer-review-status svg{width:16px;height:16px}.answer-review-status.correct{color:#1e6d3e;background:#e1f3e7}.answer-review-status.wrong{color:#9a3f32;background:#fbe8e4}.answer-review-content{display:grid;gap:20px;padding:26px 28px 34px}.answer-review-content h3{display:flex;align-items:center;gap:8px;margin:0 0 9px;font-size:14px;color:#405149}.answer-review-content h3 svg{width:18px;height:18px;color:#278149}.answer-review-question{padding:16px 18px;border:1px solid #dfe6e1;border-radius:12px;background:#fff}.answer-review-question p{margin:0;color:#263b34;font-size:17px;font-weight:600;line-height:1.65;overflow-wrap:break-word}.answer-review-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.answer-review-value{min-width:0;padding:15px 17px;border:1px solid #dfe5e1;border-radius:12px;background:#fff}.answer-review-value span{display:block;margin-bottom:5px;color:#68766f;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.answer-review-value strong{display:block;color:#24352f;font-size:20px;line-height:1.4;overflow-wrap:break-word}.answer-review-value.accepted{border-color:#abd5ba;background:#eaf7ee}.answer-review-value.accepted span,.answer-review-value.accepted strong{color:#176b37}.answer-review-value.unanswered strong{color:#7a8580;font-size:17px;font-weight:600}.answer-review-section{padding:18px;border-radius:12px;background:#fff}.answer-review-section blockquote,.answer-review-section p{margin:0;font-size:16px;line-height:1.75;overflow-wrap:break-word}.answer-review-section.evidence{border:1px solid #cfe0d5;background:#f1f7f3}.answer-review-section.evidence blockquote{color:#2e4a40;font-style:italic}.answer-review-section.reasoning{border:1px solid #e2e4de}.answer-review-conclusion{margin-top:14px!important;padding:12px 14px;border-left:3px solid #27914b;border-radius:0 8px 8px 0;background:#eaf7ee;color:#175f32;font-weight:700}.answer-review-empty{margin:0;padding:16px 18px;border-radius:12px;background:#f0f2ef;color:#66716d}.answer-review-action{justify-self:start;min-height:42px;font-weight:700}.answer-review-hint{margin:0!important;padding-top:2px;border-top:1px solid #e2e7e3}.preview-message{position:fixed;z-index:7;bottom:82px;left:50%;transform:translate(-50%);max-width:calc(100% - 32px);display:flex;gap:12px;align-items:center;padding:12px 18px;border:1px solid #bfdcc3;border-radius:8px;background:#fff;box-shadow:0 4px 24px #34465518;font-size:14px}.preview-message button{border:0;background:none}.preview-message.preview-save-error{border-color:#e0a49c;color:#8f2f25}.preview-message.preview-save-error .preview-primary{flex:0 0 auto;background:#a63a2e;color:#fff}.preview-complete{display:flex;align-items:center;gap:10px;background:#e3f3e5;padding:8px 28px;font-size:14px}.practice-session .preview-complete a{margin-left:auto;font-weight:700}.preview-footer{display:flex;align-items:center;gap:14px;padding:10px 40px 10px 125px;min-height:65px;background:#fbefe4;border-top:1px solid #e9ded6}.preview-footer>span{color:#66716e;font-size:13px}.preview-footer nav{width:max-content;display:flex;gap:3px;min-width:0;overflow-x:auto;padding:5px;border:1px solid #42b858;border-radius:6px;background:#fffefa}.preview-footer nav button{display:grid;place-items:center;flex:0 0 30px;width:30px;min-width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:50%;background:#ecf9ed;color:#188735;font-weight:600}.preview-footer nav button[aria-current]{outline:2px solid #209638;outline-offset:-2px}.preview-footer nav button.has-answer{color:#fff;background:#17882e}.preview-finish{margin-left:auto;padding:10px 25px;border:0;border-radius:30px;background:var(--preview-orange);color:#fff;font-weight:600;white-space:nowrap}.preview-audio-dock{margin:0 40px 0 125px;background:#fff}.preview-audio{padding:0 18px 10px}.preview-audio input[type=range]{accent-color:var(--preview-orange);cursor:pointer;box-shadow:none}.preview-audio-seek{display:block;width:100%;margin:0 0 8px;height:18px}.preview-audio-controls{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}.preview-audio-controls button{display:grid;place-items:center;position:relative;width:40px;height:40px;padding:0;background:none;border:0}.preview-audio-volume{display:flex;align-items:center;gap:10px}.preview-audio-volume input{width:75px}.preview-audio-time{color:#69737e;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.preview-audio-transport{display:flex;align-items:center;gap:16px}.preview-audio-transport button span{position:absolute;font-size:10px;font-weight:600;top:14px}.preview-audio-transport .preview-audio-play{width:43px;height:43px;background:var(--preview-orange);color:#fff;border-radius:50%}.preview-audio-speed{display:flex;justify-self:end;align-items:center;gap:6px;padding:7px 12px;border:1px solid #e0e3e7;border-radius:22px}.preview-audio-speed select{border:0;font-weight:600;padding:0}.preview-audio-error,.preview-document-error{color:#a33121;font-size:15px}@media(max-width:1000px){.preview-topnav{gap:14px;padding:0 15px}.preview-section-label{display:none}.preview-tools{flex-basis:78px;padding:16px 8px;font-size:11px}.preview-reading-pane,.preview-question-pane{padding:25px 18px 40px}.preview-workspace{padding-right:5px}.preview-footer{padding-left:90px;padding-right:16px}.preview-audio-dock{margin-left:90px;margin-right:16px}.preview-document-table{min-width:750px}}@media(max-width:650px){.practice-preview{font-size:15px}.preview-topnav{min-height:52px;flex-wrap:wrap;gap:0 14px;padding-bottom:5px}.preview-topnav>span{flex:1 0 100%;margin:3px 0 0;font-size:11px;text-align:center}.preview-topnav>div a{padding:5px 10px}.preview-header{padding:6px 10px}.preview-header>a{width:25px}.preview-clock{position:static;transform:none;font-size:15px;padding:4px 7px}.preview-header-actions{gap:4px}.preview-header-actions button{padding:5px 9px;font-size:12px;gap:4px}.preview-body{flex-direction:column}.preview-tools{flex:0 0 auto;flex-direction:row;padding:5px 10px;justify-content:start;gap:8px}.preview-tools strong{display:none}.preview-tools button{flex-direction:row;min-height:34px;padding:4px 8px}.preview-tools svg{width:16px;height:16px}.preview-workspace{display:block;overflow-y:auto;padding:0}.preview-reading-pane,.preview-question-pane{overflow:visible;padding:22px 18px;scrollbar-gutter:auto}.preview-reading-pane{border-right:0;border-bottom:2px solid var(--preview-line)}.preview-listening .preview-question-pane{padding:22px 18px}.preview-footer{padding:8px;gap:7px;min-height:60px}.preview-footer>span{display:none}.preview-footer nav{flex:1}.preview-finish{padding:8px 11px;font-size:13px}.preview-audio-dock{margin:0}.preview-audio-controls{grid-template-columns:1fr auto;gap:8px}.preview-audio-volume{grid-column:1 / -1;justify-content:space-between}.preview-audio-volume input{width:95px}.preview-audio-speed{font-size:14px}.preview-audio-transport{gap:8px}.preview-panel,.preview-panel-review{width:100%}.answer-review-header{padding:18px 54px 15px 20px}.answer-review-header h2{font-size:23px}.answer-review-close{top:14px;right:10px}.answer-review-content{gap:15px;padding:20px 16px 28px}.answer-review-comparison{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.practice-preview *,.practice-preview *:before,.practice-preview *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.preview-source-figure{margin:18px 0}.preview-source-figure img{display:block;width:auto;max-width:100%;height:auto;margin:auto}.speaking-question-count{margin-top:22px;color:var(--green);font-weight:700}.speaking-current-question{min-height:120px;margin:12px 0 20px;padding:20px;border-radius:12px;background:var(--mint);white-space:pre-wrap;font:inherit;font-size:1.15rem;line-height:1.7;overflow-wrap:anywhere}.speaking-question-nav,.speaking-transcript-actions{display:flex;flex-wrap:wrap;gap:8px}.speaking-question-nav{justify-content:space-between}.speaking-clip{padding:20px 0;border-bottom:1px solid var(--line)}.speaking-clip:last-child{border-bottom:0}.speaking-clip.is-selected{border-left:3px solid var(--green);padding-left:12px}.speaking-clip-select{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:var(--green);font-weight:600;cursor:pointer}.speaking-clip-select input{width:18px;height:18px;accent-color:var(--green)}.speaking-selection{padding:14px 0 18px;border-bottom:1px solid var(--line)}.speaking-selection>p:first-child{margin:0 0 8px;font-weight:600}.speaking-compilation{margin:18px 0;padding:16px;border:1px solid var(--green);border-radius:12px;background:var(--mint)}.speaking-compilation h3{margin:0 0 8px}.speaking-page .recordings{min-width:0}.speaking-clip header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.speaking-clip small{color:var(--muted)}.speaking-clip header>div{display:grid;gap:3px}.speaking-delete{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--danger);cursor:pointer}.speaking-delete:hover{border-color:var(--danger)}.speaking-delete-confirm{background:var(--danger)}.speaking-delete-question{white-space:pre-wrap;overflow-wrap:anywhere}.speaking-clip-question{white-space:pre-wrap}.speaking-clip audio{width:100%}.speaking-clip h3{margin:18px 0 8px;font-size:.95rem}.speaking-transcript{max-height:380px;margin:0 0 12px;padding:14px;overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.7}.speaking-transcript-status{margin:12px 0 0;color:var(--muted)}.speaking-page .notice .button{margin-top:10px}.speaking-page .record-orb{margin-top:24px;margin-bottom:20px}.speaking-study{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.speaking-study>h3{margin:0 0 14px}.speaking-study-details{margin:10px 0;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fff}.speaking-study-details>summary{color:var(--green);font-weight:700;cursor:pointer}.speaking-study-details p,.speaking-study-details li{line-height:1.7;overflow-wrap:anywhere}.speaking-study-details h4{margin-bottom:8px}.speaking-study-details li+li{margin-top:8px}.speaking-model-answer{white-space:pre-wrap}.speaking-study-context{color:var(--muted);font-size:.9rem;line-height:1.6}.speaking-study-words{margin-bottom:0}.speaking-study-words>div{padding:14px 0;border-bottom:1px solid var(--line)}.speaking-study-words>div:last-child{border-bottom:0}.speaking-study-words dt{font-weight:700}.speaking-study-words dd{margin:6px 0 0}.speaking-study-words p{margin:6px 0}.speaking-preparation-notes{padding:14px;border-radius:8px;background:var(--mint);font:inherit;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:650px){.speaking-clip header{align-items:flex-start;flex-direction:column;gap:4px}.speaking-transcript-actions>*{width:100%}}.app-shell:has(.writing-page){display:block}.app-shell:has(.writing-page)>.sidebar{display:none}.page.writing-page{display:flex;flex-direction:column;width:100%;height:100dvh;padding:16px 24px}.writing-page .page-header.row{flex:none;align-items:center;margin-bottom:12px}.writing-page h1{display:inline;margin:0 0 0 20px;font-size:1.5rem}.writing-back{color:var(--muted);font-size:.85rem}.writing-page .writing-status{padding:6px 12px;font-variant-numeric:tabular-nums}.writing-task-picker{display:flex;align-items:end;flex:none;gap:14px;margin-bottom:14px}.writing-task-picker label{display:grid;flex:1;min-width:0;gap:5px;font-size:.8rem;font-weight:600}.writing-task-picker select{width:100%;min-width:0}.writing-task-picker .writing-draft-picker{flex:.65}.writing-page .writing-workspace{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0;border-radius:12px;box-shadow:none}.writing-page .writing-prompt{display:flex;flex-direction:column;min-height:0;max-height:none;margin:0;padding:20px 24px 12px;overflow:auto;border:0;border-right:1px solid var(--line);border-radius:0;background:#fff}.writing-prompt>header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px}.writing-page .writing-prompt h2{margin:0;font-family:inherit;font-size:1.05rem}.writing-prompt-context{margin:0;color:var(--muted);font-size:.75rem}.writing-source-links{display:flex;flex:none;flex-wrap:wrap;gap:4px 20px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-size:.75rem}.writing-source-links a{color:var(--green);text-decoration:underline;text-underline-offset:3px}.writing-native-prompt{display:flex;flex:1;flex-direction:column;min-height:0;font-size:.9rem;line-height:1.5}.writing-task-time{margin:10px 0;color:var(--muted);font-size:.8rem}.writing-task-question{border-left:3px solid #bfd0c7;padding-left:14px;font-weight:600}.writing-task-question p{margin:0 0 8px}.writing-word-requirement{margin:4px 0 12px;font-size:.8rem}.writing-chart{display:flex;flex:1;flex-direction:column;min-height:210px;margin:0}.writing-chart figcaption{flex:none;margin:0 auto 6px;text-align:center;font-size:.85rem;font-weight:700}.writing-chart>svg{display:block;flex:1;width:100%;height:0;min-height:155px;overflow:visible}.writing-chart svg text{fill:#35433f;font:14px Arial,sans-serif}.chart-grid{stroke:#dce1df;stroke-width:1}.chart-axis{fill:none;stroke:#53655d;stroke-width:1.5}.chart-series{color:#43584e}.chart-series-1{color:#82968b}.chart-series-2{color:#61796d}.chart-series-3{color:#253e33}.chart-series polyline,.chart-series>path{fill:none;stroke:currentColor;stroke-width:2.5}.chart-series .chart-marker{fill:currentColor;stroke:currentColor;stroke-width:1.5}.chart-series .chart-marker.open{fill:#fff}.writing-chart-legend{display:flex;flex:none;justify-content:center;flex-wrap:wrap;gap:4px 18px;margin:8px 0 0;padding:0;list-style:none}.writing-chart-legend li{display:flex;align-items:center;gap:5px;font-size:.75rem}.writing-chart-legend svg{width:32px;height:16px}.writing-editor{display:flex;flex-direction:column;min-width:0;min-height:0;padding:20px 24px 12px;background:#fcfcfa}.writing-editor .draft-title{width:100%;padding:0 0 12px;background:transparent;font-family:inherit;font-size:1rem;font-weight:600}.writing-page .writing-editor textarea{flex:1;min-height:0;width:100%;padding:16px 0;background:transparent;outline-offset:4px;font:1rem/1.8 Arial,sans-serif}.writing-editor footer{gap:8px;padding-top:8px;border-top:1px solid var(--line)}.writing-preview-hint{max-width:340px;margin:auto;color:var(--muted);text-align:center;font-size:.9rem}.writing-preview-hint>svg{color:#8aa396}.writing-preview-hint h2{margin:12px 0 6px;color:var(--ink);font-family:inherit;font-size:1.1rem;font-weight:600}.speaking-page .prompt-card>label{display:grid;gap:7px;margin-bottom:18px}.speaking-page .prompt-card select{min-width:0;max-width:100%}.speaking-page .prompt-card>.source-copy{max-height:none}@media(max-width:800px){.page.writing-page{height:auto;min-height:100dvh;padding:16px}.writing-page .page-header.row{display:flex;gap:12px}.writing-page h1{margin-left:10px;font-size:1.2rem}.writing-status{max-width:55%}.writing-task-picker{flex-wrap:wrap}.writing-task-picker label{min-width:min(100%,240px)}.writing-page .writing-workspace{flex:none;grid-template-columns:minmax(0,1fr)}.writing-page .writing-prompt{padding:18px;overflow:visible;border-right:0;border-bottom:1px solid var(--line)}.writing-chart{flex:none}.writing-chart>svg{flex:none;height:auto}.writing-editor{min-height:420px;padding:18px}.writing-native-prompt{flex:none}}.writing-study{flex:none;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:.9rem;line-height:1.65;overflow-wrap:anywhere}.writing-study h3{margin:0 0 6px;font-size:1rem}.writing-study h4{margin:14px 0 6px}.writing-study-context{color:var(--muted);font-size:.8rem}.writing-study details{margin:10px 0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fafcf9}.writing-study summary{cursor:pointer;font-weight:600}.writing-study li{margin:8px 0}.writing-study dl>div{margin:12px 0}.writing-study dt{font-weight:700}.writing-study dd{margin:3px 0 0 12px}.writing-study dd p{margin:3px 0}.writing-sample-paragraph{padding:12px;border-left:3px solid #bfd0c7;background:#fff;white-space:pre-wrap}.writing-model-answer{padding:0 14px;border-left:3px solid #bfd0c7;background:#fff;line-height:1.85}.writing-model-answer p{margin:14px 0}.writing-study a{color:var(--green);text-decoration:underline}.full-test-page{max-width:1280px;margin-inline:auto}.full-test-card{display:block;padding:26px;margin:20px 0;background:#fff;border:1px solid var(--line, #deded8);border-radius:20px;color:inherit;text-decoration:none}.full-test-card h2{margin-top:0}.full-test-card p,.full-test-card li{line-height:1.7}.full-test-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px}.full-test-actions p{flex:1 1 300px}.full-test-history{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.full-test-session-bar{display:flex;flex-wrap:wrap;gap:16px;padding:14px 24px;align-items:center;background:#f4f5ec;border-bottom:1px solid #dce1ce}.full-test-session-bar>div{flex:1}.full-test-session-bar p{font-size:12px;margin:5px 0 0}.full-test-session .ielts-listening{height:calc(100dvh - 80px);min-height:650px}.full-test-task-tabs{display:flex;gap:10px;margin-bottom:16px}.full-test-task-tabs button{padding:12px 24px;border:1px solid #d8ddce;border-radius:12px;background:#fff}.full-test-task-tabs button.active{background:#edf2d9;border-color:#8e9d6b}.full-test-page .writing-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.full-test-page .writing-prompt{max-height:650px;margin:0;padding:24px;border:0;border-right:1px solid var(--line);border-radius:0}.full-test-page .writing-editor textarea{flex:1;width:100%;min-height:500px;font:1rem/1.8 Arial,sans-serif}.full-test-page .writing-chart>svg{flex:none;height:auto}.full-test-speaking{max-width:850px;margin-inline:auto}.full-test-speaking header{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.full-test-speaking header h2{flex:1;margin:0}.full-test-speaking header .eyebrow{flex-basis:100%;margin:0}.full-test-clock{font-size:32px;font-variant-numeric:tabular-nums}.full-test-recording-status{display:flex;align-items:center;gap:10px}.full-test-speaking-prompt{padding:24px;margin:24px 0;border-radius:14px;background:#f7f8f3}.full-test-speaking-prompt pre{font:inherit;font-size:22px;white-space:pre-wrap;line-height:1.7}.full-test-file-label{display:grid;gap:12px;max-width:500px}.full-test-card select{padding:10px;border:1px solid #d9ddd0;border-radius:10px;margin-left:12px}.full-test-bands{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:24px}.full-test-bands>div{padding:18px;border-radius:14px;background:#f5f7ef;text-align:center}.full-test-bands span{display:block;text-transform:capitalize}.full-test-bands strong{display:block;margin-top:10px;font-size:32px}.full-test-feedback dl{margin:12px 0}.full-test-feedback dl>div{padding-block:8px}.full-test-feedback dt{font-weight:650;text-transform:capitalize}.full-test-feedback dd{margin:5px 0 8px 18px;line-height:1.7;white-space:pre-wrap}.full-test-feedback ol{padding-left:22px}.full-test-feedback li{padding-block:8px}.full-test-card audio{width:min(100%,650px);margin-top:20px}.full-test-page .notice button,.full-test-session>.notice button{margin-left:14px;text-decoration:underline}@media(max-width:760px){.full-test-card{padding:18px}.full-test-bands{grid-template-columns:repeat(2,1fr)}.full-test-session-bar{padding:12px}.full-test-speaking-prompt pre{font-size:18px}.full-test-page .writing-workspace{grid-template-columns:minmax(0,1fr)}}:root{color:#1a2624;background:#f4f2ec;font:15px/1.55 Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;--ink: #18312d;--muted: #697572;--paper: #fffdf8;--line: #dde1d9;--green: #0f6255;--green-dark: #0b4038;--mint: #dcebe3;--amber: #d78733;--danger: #b84137;--shadow: 0 18px 55px rgba(31, 54, 48, .08)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 85% -10%,#d9e9df 0,transparent 32%),#f4f2ec}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,Times New Roman,serif;color:var(--ink);letter-spacing:-.025em}h1{font-size:clamp(2.1rem,4vw,3.65rem);line-height:1.02;margin-bottom:.7rem}h2{font-size:1.75rem;line-height:1.15}input,textarea,select{border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);outline:none}input:focus,textarea:focus,select:focus{border-color:#5f9e90;box-shadow:0 0 0 3px #0f62551f}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.muted{color:var(--muted)}.eyebrow{margin-bottom:.55rem;color:var(--green);font-size:.73rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:43px;padding:.7rem 1.05rem;border:0;border-radius:10px;background:var(--green);color:#fff;font-weight:700;cursor:pointer}.button:hover{background:var(--green-dark)}.button:disabled{cursor:not-allowed;opacity:.45}.button.secondary{border:1px solid var(--line);background:#fff;color:var(--ink)}.app-shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;padding:28px 18px;background:#102e2a;color:#dce8e3}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 30px}.brand-mark{display:grid;width:40px;height:40px;place-items:center;border-radius:12px;background:#e7efe5;color:var(--green-dark)}.brand strong,.brand small{display:block}.brand strong{color:#fff;font-family:Georgia,serif;font-size:1.25rem}.brand small{color:#91aca4;font-size:.72rem}.sidebar nav{display:grid;gap:5px}.sidebar nav a{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:9px;color:#a9c0ba;font-weight:600}.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff17;color:#fff}.local-badge{display:flex;align-items:center;gap:8px;margin:auto 7px 16px;color:#9cb5ae;font-size:.74rem}.status-dot{width:7px;height:7px;border-radius:50%;background:#68c59b;box-shadow:0 0 0 4px #68c59b1a}.focus-card{display:flex;gap:10px;padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:#ffffff0b}.focus-card p{margin:2px 0 0;color:#91aca4;font-size:.72rem;line-height:1.4}.main{min-width:0}.page{width:min(1220px,calc(100% - 64px));margin:0 auto;padding:56px 0 80px}.narrow-page{width:min(840px,calc(100% - 64px))}.page-header{margin-bottom:34px}.page-header>p:last-child,.hero>div>p:last-child{max-width:660px;color:var(--muted)}.page-header.row,.hero{display:flex;align-items:flex-start;justify-content:space-between;gap:32px}.loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:100vh;color:var(--muted)}.loading span{width:12px;height:12px;border-radius:50%;background:var(--green);animation:pulse 1s infinite alternate}@keyframes pulse{to{opacity:.25;transform:scale(.7)}}@media(max-width:820px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:static;z-index:20;flex-direction:row;align-items:center;min-width:0;width:100%;height:auto;padding:12px 16px}.brand{padding:0}.brand small,.focus-card,.local-badge{display:none}.sidebar nav{display:flex;margin-left:auto}.sidebar nav a{padding:9px}.sidebar nav a span{display:none}.page,.narrow-page{width:min(100% - 30px,720px);padding-top:34px}}@media(max-width:650px){.sidebar{flex-wrap:wrap;gap:10px}.sidebar nav{width:100%;justify-content:space-between;gap:0;margin-left:0}.sidebar nav a{justify-content:center;min-width:44px;min-height:44px}}.date-chip{padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:#ffffff8c;color:var(--muted);font-size:.78rem}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:34px 0 50px}.metric-card{display:flex;gap:15px;padding:21px;border:1px solid rgba(207,216,207,.85);border-radius:15px;background:#fffdf8d4;box-shadow:0 8px 28px #253e370b}.metric-card>span{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:12px;background:var(--mint);color:var(--green)}.metric-card small,.metric-card strong,.metric-card p{display:block}.metric-card strong{margin:1px 0 -2px;color:var(--ink);font:650 2rem Georgia,serif}.metric-card p{margin:0;color:var(--muted);font-size:.75rem}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}.section-heading h2{margin-bottom:0}.text-link{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-weight:700}.study-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.study-card{position:relative;overflow:hidden;min-height:190px;padding:20px;border:1px solid var(--line);border-radius:15px;background:var(--paper);box-shadow:0 9px 32px #1f36300b}.study-card:before{position:absolute;top:0;right:0;width:74px;height:5px;background:var(--amber);content:""}.study-card.listening:before{background:#6d74bb}.study-card.writing:before{background:#bc7256}.study-card.speaking:before{background:#28829a}.card-top{display:flex;justify-content:space-between;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.card-top span{color:var(--green);font-weight:700}.study-card h3{margin:28px 0 4px;color:var(--ink);font-family:Georgia,serif;font-size:1.45rem}.study-card p{color:var(--muted);font-size:.79rem}.card-actions{display:flex;gap:8px;margin-top:20px}.card-actions a,.single-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:8px 13px;border-radius:8px;background:var(--green);color:#fff;font-size:.8rem;font-weight:700}.card-actions .secondary{border:1px solid var(--line);background:#fff;color:var(--ink)}.single-action{margin-top:20px;padding-left:0;background:transparent;color:var(--green)}.empty-state{padding:54px 30px;border:1px dashed #bdc9c1;border-radius:16px;background:#ffffff70;text-align:center}.empty-state svg{color:var(--green)}.empty-state h3{margin:12px 0 5px;font:600 1.5rem Georgia,serif}.empty-state p{max-width:500px;margin:0 auto 20px;color:var(--muted)}.history{margin-top:48px}.history-row{display:grid;grid-template-columns:34px 1fr auto auto;align-items:center;gap:12px;padding:13px 4px;border-bottom:1px solid var(--line)}.history-row small{display:block;color:var(--muted)}.skill-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;background:var(--mint);color:var(--green)}.band{padding:4px 9px;border-radius:999px;background:var(--mint);color:var(--green-dark);font-size:.76rem;font-weight:700}.notice{display:flex;align-items:center;gap:9px;margin:16px 0;padding:13px 15px;border:1px solid #cad8cd;border-radius:10px;background:#edf5ef}.notice.danger{border-color:#e6c4bf;background:#fff0ed;color:#832b27}.import-form{display:grid;gap:12px;padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:var(--shadow)}.file-field,.url-field{display:grid;grid-template-columns:40px 1fr minmax(180px,42%);align-items:center;gap:12px;min-height:74px;padding:12px 14px;border:1px solid var(--line);border-radius:11px}.file-field>svg,.url-field>svg{padding:8px;border-radius:9px;background:var(--mint);color:var(--green);box-sizing:content-box}.file-field strong,.file-field small,.url-field strong,.url-field small{display:block}.file-field small,.url-field small{color:var(--muted);font-size:.72rem}.url-field input{width:100%;padding:9px}.import-form>.button{margin-top:6px}.import-progress{margin-top:24px;padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}.progress-title{display:flex;justify-content:space-between}.progress-title small,.progress-title strong{display:block}.progress-title small{color:var(--green);text-transform:uppercase}.progress-track{height:7px;margin:16px 0 22px;overflow:hidden;border-radius:5px;background:#e6e9e3}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--green);transition:width .3s}.warning{display:flex;gap:10px;margin:8px 0;padding:11px;border-radius:8px;background:#fff2e4;color:#804b18}.warning strong{display:block}.review-list{margin:24px 0}.review-list>div{display:grid;grid-template-columns:25px 1fr auto auto;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.review-list button{display:inline-flex;gap:4px;border:0;background:none;color:var(--green);font-weight:700}@media(max-width:1000px){.study-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.metric-grid,.study-grid{grid-template-columns:1fr}.page-header.row,.hero{display:block}.date-chip{display:none}.file-field,.url-field{grid-template-columns:40px 1fr}.file-field input,.url-field input{grid-column:1 / -1}.history-row{grid-template-columns:34px 1fr auto}.history-row .band{display:none}}.review-workspace{display:grid;grid-template-columns:145px minmax(0,1fr);gap:18px;margin-top:25px}.review-list{margin:0}.review-list h2{font-size:1.15rem}.review-list button{display:flex;width:100%;align-items:center;gap:8px;margin:3px 0;padding:8px;border:0;border-radius:8px;background:transparent;cursor:pointer;text-align:left}.review-list button.active{background:var(--mint);color:var(--green-dark)}.review-detail{min-width:0}.review-detail>input{width:100%;padding:9px 11px;font-weight:700}.review-images{display:flex;gap:8px;max-width:100%;overflow-x:auto;margin:13px 0}.review-images img{width:190px;max-height:250px;object-fit:contain;border:1px solid var(--line);background:#fff}.review-detail details{margin:12px 0}.review-detail pre{max-height:250px;overflow:auto;padding:12px;background:#f3f4f0;white-space:pre-wrap;font-size:.78rem}.review-group{margin:16px 0;padding:13px;border:1px solid var(--line);border-radius:9px}.review-group h3{font-size:.9rem}.review-group label{display:grid;gap:5px;padding:7px 0;border-top:1px solid var(--line);font-size:.8rem}.review-group input{width:100%;padding:7px 9px}.review-actions{display:flex;gap:8px;margin-top:15px}.review-warnings{grid-column:1 / -1}.review-warnings>label{display:flex;align-items:center;gap:8px;padding:9px;border-top:1px solid var(--line)}.review-warnings>label span{flex:1;font-size:.8rem}.review-warnings strong{display:block}.review-warnings>.button{margin-top:16px}@media(max-width:650px){.review-workspace{grid-template-columns:1fr}.review-list{display:flex;flex-wrap:wrap;gap:5px}.review-list h2{width:100%}.review-list button{width:auto}.review-warnings{grid-column:1}}.review-detail textarea,.review-group textarea{width:100%;min-height:70px;padding:8px 10px;resize:vertical;font:inherit}.exam-page{display:flex;flex-direction:column;height:100vh;background:#f8f7f2}.exam-header{display:grid;grid-template-columns:38px 180px minmax(280px,1fr) auto auto;align-items:center;gap:15px;min-height:66px;padding:9px 18px;border-bottom:1px solid var(--line);background:#fff}.exam-header>a{display:grid;place-items:center}.exam-header small,.exam-header strong{display:block}.exam-header small{color:var(--green);font-size:.7rem;text-transform:uppercase}.audio-player{display:flex;align-items:center;gap:10px}.audio-player audio{width:min(390px,100%);height:34px}.audio-player label{display:flex;align-items:center;gap:4px}.audio-player select{padding:3px}.audio-player small{color:var(--muted)}.timer{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:8px;background:#edf2ee}.timer.urgent{color:var(--danger)}.submit-button{padding:9px 15px;border:0;border-radius:8px;background:var(--ink);color:#fff;font-weight:700}.result-banner{display:flex;align-items:center;gap:11px;padding:12px 24px;background:#dff0e7;color:var(--green-dark)}.result-banner div{flex:1}.result-banner strong,.result-banner span{display:block}.result-banner a{font-weight:700}.exam-workspace{display:grid;grid-template-columns:minmax(300px,1fr) minmax(360px,1fr);flex:1;min-height:0}.passage-pane,.questions-pane{overflow:auto;padding:32px clamp(22px,3vw,46px)}.passage-pane{position:relative;border-right:1px solid var(--line);background:var(--paper)}.passage-pane h2{font-size:2rem}.passage-text,.source-copy{white-space:pre-wrap}.passage-text{color:#33433f;font-family:Georgia,serif;line-height:1.8}.pane-tools{position:sticky;top:0;z-index:2;display:flex;justify-content:flex-end;gap:5px}.pane-tools button{display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff}.question-group{margin-bottom:36px}.question-copy h3{font:600 1rem Inter,-apple-system,sans-serif}.source-copy{max-height:240px;overflow:auto;margin-bottom:18px;padding:14px;border-left:3px solid #b8cfc5;background:#f1f4ef;color:#45534f;font-family:Georgia,serif;font-size:.88rem}.question-row{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:12px 0;border-bottom:1px solid #e5e7e1}.question-number{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:var(--ink);color:#fff;font-size:.78rem;font-weight:700}.question-control>label{display:block;margin-bottom:7px}.question-control>input{width:100%;padding:9px 11px}.option-grid{display:flex;flex-wrap:wrap;gap:7px}.option-grid label{padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}.option-grid label.selected{border-color:var(--green);background:var(--mint)}.option-grid input{position:absolute;opacity:0}.tutor-panel{position:fixed;right:18px;bottom:65px;z-index:10;width:min(370px,calc(100% - 36px));padding:16px;border:1px solid #c8d7ce;border-radius:14px;background:#fff;box-shadow:0 22px 70px #142d2733}.tutor-title{display:flex;gap:10px}.tutor-title>span{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;background:var(--mint);color:var(--green)}.tutor-title small{display:block;color:var(--muted)}.fixed-explanation,.chat-reply{max-height:180px;overflow:auto;margin-top:13px;padding:11px;border-radius:9px;background:#f2f4ef;font-size:.83rem}.fixed-explanation span{color:var(--green);font-weight:700}.fixed-explanation p{margin:6px 0 0;white-space:pre-wrap}.chat-input{display:flex;gap:7px;margin-top:10px}.chat-input textarea{flex:1;padding:8px;resize:none}.chat-input button{width:38px;border:0;border-radius:9px;background:var(--green);color:#fff}.question-nav{display:flex;align-items:center;gap:18px;min-height:55px;padding:8px 20px;border-top:1px solid var(--line);background:#fff}.question-nav>span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.77rem}.question-nav>div{display:flex;flex:1;gap:4px;overflow-x:auto}.question-nav a{display:grid;min-width:29px;height:29px;place-items:center;border:1px solid var(--line);border-radius:7px;font-size:.72rem}.question-nav a.answered{border-color:#9cc6b4;background:var(--mint)}.question-nav a.focused{outline:2px solid var(--green)}.writing-status{padding:11px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;text-align:right}.writing-status>svg{vertical-align:middle;margin-right:6px}.writing-status span{display:block;color:var(--muted);font-size:.72rem}.writing-workspace{display:grid;grid-template-columns:230px 1fr;min-height:600px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow)}.writing-workspace aside{padding:18px;border-right:1px solid var(--line);background:#f1f2ed}.writing-workspace aside button{display:flex;width:100%;gap:8px;padding:10px;border:0;border-radius:8px;background:none;text-align:left}.writing-workspace aside button.active{background:#fff}.writing-workspace aside small{display:block;color:var(--muted)}.writing-workspace main{display:grid;grid-template-rows:auto 1fr auto;padding:26px}.draft-title{padding:8px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;font:600 1.5rem Georgia,serif}.writing-workspace textarea{padding:24px 0;border:0;resize:none;font:1.05rem/1.85 Georgia,serif}.writing-workspace footer{display:flex;justify-content:space-between;color:var(--muted);font-size:.78rem}.writing-workspace footer span{display:flex;align-items:center;gap:5px}.speaking-grid{display:grid;grid-template-columns:minmax(340px,1fr) minmax(300px,.8fr);gap:18px}.prompt-card,.recordings,.settings-card{padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:var(--shadow)}.part-tabs{display:flex;gap:5px;margin-bottom:35px}.part-tabs button{padding:7px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.part-tabs button.active{border-color:var(--green);background:var(--mint)}.record-orb{display:grid;width:170px;height:170px;place-items:center;align-content:center;gap:4px;margin:38px auto 25px;border:12px solid #e3ede7;border-radius:50%;background:#f2f7f3;color:var(--green)}.record-orb.recording{border-color:#f3cac6;color:var(--danger);animation:pulse-ring 1.3s infinite alternate}.record-orb strong{font:600 2rem Georgia,serif}.record-orb small{color:var(--muted)}.prompt-card>.button{width:100%}.danger-button{background:var(--danger)}.recordings h2{font-size:1.35rem}.recording-row{display:grid;grid-template-columns:30px 1fr;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.recording-row span{display:grid;place-items:center}.recording-row audio{width:100%;height:32px}.recording-row small{grid-column:2;color:var(--muted)}.settings-card{margin-bottom:16px}.settings-title{display:flex;align-items:center;gap:13px}.settings-title>svg{color:var(--green)}.settings-title div{flex:1}.settings-title h2,.settings-title p{margin-bottom:0}.settings-title p{color:var(--muted)}.settings-title button{display:flex;gap:5px;border:0;background:none;color:var(--green)}.health-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.health-grid>div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:9px;padding:10px;border-radius:8px;background:#f2f3ef}.health-grid small{display:block;max-width:250px;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.health-grid b{font-size:.69rem;text-transform:uppercase}.health-dot{width:8px;height:8px;border-radius:50%;background:#9ba29f}.health-dot.ok{background:#43a577}.health-dot.missing,.health-dot.error{background:#d46558}.backup-actions{display:flex;gap:9px;margin-top:22px}.backup-actions input{display:none}.privacy-note{display:flex;gap:12px;padding:18px;color:var(--muted)}.privacy-note svg{flex:0 0 auto;color:var(--green)}.privacy-note p{margin:3px 0 0}@keyframes pulse-ring{to{box-shadow:0 0 0 12px #b8413714}}@media(max-width:960px){.exam-header{grid-template-columns:36px 1fr auto auto}.audio-player{grid-column:1 / -1;grid-row:2}.exam-workspace{grid-template-columns:1fr;overflow:auto}.passage-pane,.questions-pane{overflow:visible}.passage-pane{border-right:0;border-bottom:1px solid var(--line)}.question-nav{position:sticky;bottom:0}.speaking-grid{grid-template-columns:1fr}}@media(max-width:650px){.exam-page{height:auto;min-height:100vh}.exam-header{grid-template-columns:32px 1fr auto}.exam-header .timer{display:none}.submit-button{grid-column:3}.writing-workspace{grid-template-columns:1fr}.writing-workspace aside{display:none}.health-grid{grid-template-columns:1fr}.backup-actions{flex-direction:column}}.source-pages img,.writing-prompt img{display:block;width:100%;height:auto;margin:12px 0;border:1px solid var(--line);background:#fff}.source-pages{max-height:70vh;overflow:auto}.writing-workspace main{grid-template-rows:auto auto minmax(300px,1fr) auto}.writing-prompt{max-height:300px;overflow:auto;margin-bottom:16px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.writing-prompt h2{margin:0 0 8px;font-size:1.1rem}.writing-prompt pre,.prompt-card pre{overflow:auto;white-space:pre-wrap;font:.87rem/1.6 Georgia,serif}.passage-text mark{padding:1px 2px;border-radius:3px;background:#ffe69c}.tool-status{padding:8px 10px;border-radius:8px;background:var(--mint);color:var(--green-dark);font-size:.8rem}.note-editor{display:grid;gap:8px;margin:10px 0;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.note-editor strong{font-size:.82rem}.note-editor textarea{min-height:70px;padding:8px}.study-hub .metric-grid,.ongoing-attempts{margin-bottom:32px}.ongoing-list{display:grid;gap:12px}.ongoing-card{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;border:1px solid #bdd4c7;border-radius:16px;background:var(--paper)}.ongoing-card h3{margin:4px 0 7px;color:var(--ink);text-transform:capitalize}.ongoing-card small,.ongoing-card p{color:var(--muted);font-size:.78rem}.ongoing-card p{display:flex;align-items:center;gap:5px;margin:0 0 10px}.ongoing-card progress{width:min(360px,100%);height:8px;accent-color:var(--green)}.ongoing-actions{display:flex;flex:0 0 auto;gap:8px}@media(max-width:650px){.ongoing-card{align-items:stretch;flex-direction:column;padding:18px}.ongoing-actions>*{flex:1}}.skill-tabs{display:flex;gap:7px;overflow-x:auto;margin-bottom:42px;padding:5px;border:1px solid var(--line);border-radius:13px;background:#ffffff9e}.skill-tabs button{flex:1;min-width:100px;padding:9px 14px;border:0;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer;font-weight:700}.skill-tabs button.active{background:var(--ink);color:#fff;box-shadow:0 6px 16px #18312d29}.book-shelf{margin-top:44px}.book-shelf:first-of-type{margin-top:0}.test-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.test-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:0 10px 34px #1f36300d}.test-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:21px 22px 16px;border-bottom:1px solid var(--line)}.test-card>header small{color:var(--green);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.test-card>header h3{margin:3px 0 0;color:var(--ink);font:600 1.35rem Georgia,serif}.test-card>header>span{padding:4px 8px;border-radius:999px;background:#edf1ec;color:var(--muted);font-size:.7rem;white-space:nowrap}.mock-actions{display:flex;flex-wrap:wrap;gap:7px;padding:14px 22px 0}.mock-actions:empty{display:none}.mock-actions a{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border-radius:8px;background:var(--green);color:#fff;font-size:.76rem;font-weight:750;text-transform:capitalize}.section-list{padding:10px 22px 16px}.section-list>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #e8e9e4}.section-list>div:last-child{border-bottom:0}.section-list strong,.section-list small{display:block}.section-list strong{color:var(--ink);font-size:.86rem}.section-list small{color:var(--muted);font-size:.72rem}.section-list a{display:inline-flex;align-items:center;gap:4px;color:var(--green);font-size:.76rem;font-weight:750}.section-skill{display:grid;width:33px;height:33px;place-items:center;border-radius:9px;background:var(--mint);color:var(--green)}.section-skill.listening{background:#e8e9f7;color:#555da5}.section-skill.writing{background:#f6e8e2;color:#9b5740}.section-skill.speaking{background:#def0f3;color:#226d80}@media(max-width:900px){.test-grid{grid-template-columns:1fr}}@media(max-width:650px){.skill-tabs button{min-width:88px}.test-card>header,.mock-actions,.section-list{padding-left:16px;padding-right:16px}}.study-hub{--muted: #596963}.library-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.library-heading h1{font-size:clamp(2rem,3vw,2.7rem);margin-bottom:10px}.library-heading p:last-child{margin-bottom:0;color:var(--muted)}.library-heading>.button{flex-shrink:0}.library-overview{display:flex;flex-wrap:wrap;gap:12px 28px;margin:24px 0 28px;padding:16px 0;border-block:1px solid var(--line);color:var(--muted);font-size:.86rem}.library-overview strong{margin-right:5px;color:var(--ink);font-size:1.15rem;font-variant-numeric:tabular-nums}.library-overview small{font-size:inherit}.study-hub .ongoing-attempts{margin-bottom:28px}.study-hub .ongoing-attempts h2{font-size:1.2rem}.study-hub .ongoing-attempts .eyebrow{display:none}.study-hub .ongoing-card{padding:14px 18px}.study-hub .ongoing-card h3{font-size:.95rem}.study-hub .ongoing-card p{margin-bottom:6px}.library-book-filter{display:grid;gap:7px;width:min(100%,440px);margin-bottom:16px;color:var(--muted);font-size:.85rem;font-weight:650}.library-book-filter select{width:100%;min-width:0;min-height:44px;color:var(--ink)}.library-filters{width:fit-content;max-width:100%;flex-wrap:wrap;margin-bottom:12px;padding:4px;overflow:visible}.library-filters button{min-width:96px;min-height:44px}.library-score-note{margin-bottom:32px;color:var(--muted);font-size:.8rem}.library-book-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.library-book-heading h2{margin-bottom:0;font-size:1.65rem}.library-book-heading .eyebrow{margin-bottom:6px}.library-source{display:inline-flex;align-items:center;gap:7px;min-height:44px;color:var(--green);font-size:.85rem;font-weight:700}.library-tests{display:grid;gap:20px}.library-test{padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--paper)}.library-test-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.library-test-heading>div{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px}.library-test-heading h3{margin:0;color:var(--ink);font-size:1.14rem}.library-test-heading span,.library-test-heading>small{color:var(--muted);font-size:.8rem}.library-skill-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:14px}.library-skill{--skill-color: var(--green);--skill-tint: #f2f7f2;--skill-border: #ccdece;min-width:0;padding:18px;border:1px solid var(--skill-border);border-radius:14px;background:var(--skill-tint)}.library-skill.listening{--skill-color: #176c82;--skill-tint: #f0f8fa;--skill-border: #c7e0e7}.library-skill.writing{--skill-color: #935020;--skill-tint: #fff7ef;--skill-border: #eedac7}.library-skill.speaking{--skill-color: #a23d59;--skill-tint: #fcf3f6;--skill-border: #ead0d9}.library-skill-heading{display:flex;align-items:center;gap:9px;color:var(--skill-color)}.library-skill-heading h4{margin:0;font-size:1rem}.library-skill-meta{margin:5px 0 19px;color:var(--muted);font-size:.8rem}.library-best-score{min-height:103px}.library-best-score>small{color:var(--muted);font-size:.78rem}.library-score-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px;min-height:45px;color:var(--skill-color);font-variant-numeric:tabular-nums}.library-score-value strong{font-size:2rem;line-height:1.4;font-weight:700;letter-spacing:-.04em}.library-score-value>span{font-size:.9rem}.library-score-value .library-band{margin-left:auto;padding:3px 7px;border:1px solid var(--skill-border);border-radius:6px;background:var(--paper);color:var(--skill-color);font-size:.76rem;font-weight:700;white-space:nowrap}.library-best-score p{margin:1px 0 14px;color:var(--muted);font-size:.75rem}.library-unscored{display:flex;align-items:center;height:45px;color:var(--skill-color)}.library-start{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 8px;border-radius:9px;background:var(--skill-color);color:#fff;font-size:.86rem;font-weight:700}.library-start:hover{filter:brightness(.88)}.library-parts{margin-top:8px}.library-parts summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;color:var(--skill-color);cursor:pointer;list-style:none;font-size:.8rem;font-weight:650}.library-parts summary::-webkit-details-marker{display:none}.library-parts[open] summary svg{transform:rotate(180deg)}.library-parts nav{display:grid;gap:4px;margin-top:5px;padding-top:8px;border-top:1px solid var(--skill-border)}.library-parts nav a{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:8px;border-radius:6px;color:var(--skill-color);font-size:.82rem}.library-parts nav a:hover{background:var(--paper)}.library-parts nav small{color:var(--muted);font-size:inherit}.library-score-issue{color:var(--danger);font-size:.8rem;overflow-wrap:anywhere}.study-hub :is(a,button,summary,select):focus-visible{outline:3px solid var(--green);outline-offset:3px}@media(max-width:1150px){.library-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.library-heading,.library-book-heading{align-items:flex-start;flex-direction:column;gap:12px}.library-overview{flex-direction:column;gap:8px}.library-filters{width:100%;gap:4px}.library-filters button{min-width:76px;padding-inline:9px}.library-test{padding:16px;border-radius:16px}.library-skill-grid{gap:10px}.library-skill{padding:13px}.library-skill-heading{gap:7px}.library-skill-heading h4{font-size:.9rem}.library-score-value .library-band{margin-left:0}.library-test-heading{align-items:flex-start}.library-test-heading>small{max-width:115px;text-align:right}}@media(max-width:380px){.library-skill-grid{grid-template-columns:minmax(0,1fr)}}.history-page{padding-top:36px}.history-page h1,.history-page h2{font-family:inherit;letter-spacing:-.025em}.history-page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:26px}.history-page-heading h1{margin:0 0 8px;font-size:28px;line-height:1.2;font-weight:700}.history-page-heading p{margin:0;color:var(--muted);font-size:14px}.history-page-heading>span{padding-top:7px;color:var(--muted);font-size:13px;white-space:nowrap}.history-page-heading>span>span{padding:0 5px}.history-filters{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:#fff}.history-filters>nav{display:flex;gap:4px}.history-filters button{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:8px 12px;border:0;border-radius:5px;background:transparent;color:#51625c;cursor:pointer;font-size:14px;font-weight:600}.history-filters button:hover{background:#f1f6f3}.history-filters button[aria-pressed=true]{background:var(--mint);color:var(--green-dark)}.history-filters button>span{font-size:12px;font-weight:500;opacity:.85}.history-filter-fields{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.history-scope{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.history-scope select{min-height:42px;padding:8px 26px 8px 10px;border-radius:5px;font-size:14px}.history-search{display:flex;align-items:center;gap:8px;padding-left:11px;border:1px solid var(--line);border-radius:5px;color:var(--muted)}.history-search:focus-within{outline:2px solid var(--green);outline-offset:2px}.history-search input{width:190px;min-height:40px;padding:8px 10px 8px 0;border:0;border-radius:inherit;background:transparent;font-size:14px}.history-search input:focus{box-shadow:none}.history-results-count{margin:16px 0 12px;color:var(--muted);font-size:13px}.history-groups{display:grid;gap:24px}.history-test{min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff}.history-test-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px}.history-test-heading>div{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.history-test-heading h2{margin:0;color:var(--ink);font-size:18px;font-weight:700}.history-test-heading span{color:var(--muted);font-size:13px}.history-redo-menu{position:relative}.history-redo-menu summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 12px;border:1px solid #b6c9c0;border-radius:5px;color:var(--green-dark);cursor:pointer;font-size:13px;font-weight:600;list-style:none}.history-redo-menu summary::-webkit-details-marker{display:none}.history-redo-menu summary:hover,.history-redo-menu[open] summary{background:#f1f6f3}.history-redo-menu nav{position:absolute;right:0;top:calc(100% + 6px);z-index:5;display:grid;width:250px;padding:6px;border:1px solid #ccd7d0;border-radius:7px;background:#fff;box-shadow:0 8px 24px #18312d1a}.history-redo-menu a{min-height:40px;padding:9px 12px;border-radius:4px;font-size:14px}.history-redo-menu a:hover{background:#edf5f0;color:var(--green)}.history-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;font-variant-numeric:tabular-nums}.history-table th{padding:11px 12px;border-block:1px solid var(--line);background:#f6f8f6;color:#53635c;font-size:12px;font-weight:600;white-space:nowrap}.history-table td{padding:12px;border-bottom:1px solid #e8ece8;vertical-align:middle}.history-table th:first-child,.history-table td:first-child{padding-left:20px}.history-table th:last-child,.history-table td:last-child{padding-right:20px}.history-table tbody tr:last-child td{border-bottom:0}.history-table tbody tr:hover{background:#f8fbf9}.history-table .history-attempt-name{min-width:180px}.history-attempt-name strong{display:block;color:var(--ink);font-size:14px;font-weight:600}.history-table small{display:block;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.4}.history-date,.history-duration{white-space:nowrap}.history-table .history-number{text-align:center}.history-table td.history-number{font-weight:600}.history-correct{color:#187049}.history-wrong{color:#ac4038}.history-unanswered{color:#66736c}.history-score{min-width:94px;white-space:nowrap}.history-score strong{color:var(--ink);font-size:15px;font-weight:650}.history-table .history-highest{display:block;margin-top:3px;color:var(--green);font-size:11px;font-weight:600}.history-row-actions{width:160px;white-space:nowrap}.history-row-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:6px 9px;border:1px solid #b9cdc3;border-radius:4px;color:var(--green-dark);font-size:13px;font-weight:600}.history-row-actions a+a{margin-left:7px;border-color:transparent;color:var(--green)}.history-row-actions a:hover{background:#edf5f0}.history-page :is(a,button,summary,select):focus-visible{outline:2px solid var(--green);outline-offset:3px}.history-unavailable{margin:0;padding:0 20px 14px;color:#8b5a27;font-size:13px}.history-counts-note{margin:0;padding:12px 20px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.history-loading,.history-no-results{padding:36px 20px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:center}.history-no-results h2{font-size:18px}.history-no-results p{color:var(--muted)}.history-no-results button{min-height:44px;padding:8px 14px;border:1px solid #b9cdc3;border-radius:5px;background:#fff;color:var(--green);cursor:pointer}@media(max-width:1150px)and (min-width:821px){.history-page{width:calc(100% - 32px)}.history-table th,.history-table td{padding-inline:8px}.history-table .history-attempt-name{min-width:145px}.history-row-actions a{padding-inline:6px}.history-row-actions{width:140px}}@media(max-width:1050px){.history-filters{align-items:flex-start}.history-filter-fields{flex:1;justify-content:flex-end}.history-page-heading{flex-direction:column;gap:8px}.history-page-heading>span{padding:0}}@media(max-width:700px){.history-page{padding-top:26px}.history-page-heading{margin-bottom:20px}.history-page-heading h1{font-size:25px}.history-filters{padding:10px;gap:10px}.history-filters>nav{width:100%}.history-filters button{flex:1;justify-content:center;padding-inline:8px;min-height:44px}.history-filter-fields{display:grid;grid-template-columns:1fr;width:100%;gap:10px}.history-scope{justify-content:space-between}.history-scope select{flex:1;margin-left:8px;font-size:16px;min-height:44px}.history-search input{width:100%;font-size:16px;min-height:44px}.history-test-heading{padding:15px;align-items:flex-start}.history-test-heading>div:first-child{display:grid;gap:4px}.history-test-heading>div:last-child{flex-direction:column;align-items:flex-end;gap:6px}.history-redo-menu summary{min-height:44px}.history-redo-menu nav{width:245px}.history-table,.history-table tbody{display:block}.history-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.history-table tbody tr{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 8px;padding:16px 15px;border-top:1px solid var(--line)}.history-table td,.history-table th:first-child,.history-table td:first-child,.history-table th:last-child,.history-table td:last-child{padding:0;border:0}.history-table td:before{display:block;margin-bottom:3px;color:var(--muted);font-size:12px;font-weight:400;content:attr(data-label)}.history-attempt-name{grid-column:1 / -1}.history-table .history-attempt-name{min-width:0}.history-attempt-name strong{font-size:15px}.history-attempt-name:before,.history-row-actions:before{display:none!important}.history-date,.history-duration{grid-column:span 3}.history-date small{display:inline;margin-left:8px}.history-table td.history-number{grid-column:span 2;text-align:left}.history-score{grid-column:span 2;min-width:0}.history-row-actions{grid-column:span 4;display:flex;align-items:flex-end;justify-content:flex-end;width:auto}.history-row-actions a{min-height:44px;padding-inline:11px}.history-unavailable{padding-inline:15px}}.back-link{display:inline-flex;align-items:center;gap:5px;margin-bottom:25px;color:var(--green);font-weight:700}.result-header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:28px 32px;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:var(--shadow)}.result-header h1{max-width:780px;margin-bottom:8px;font-size:clamp(2rem,4vw,3.2rem);text-transform:capitalize}.result-header p:last-child{margin-bottom:0;color:var(--muted)}.result-score{display:grid;width:150px;height:150px;flex:0 0 auto;place-items:center;align-content:center;border:12px solid var(--mint);border-radius:50%;background:#fff}.result-score strong{color:var(--ink);font:650 2.4rem Georgia,serif}.result-score span{color:var(--muted);font-size:.72rem}.result-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:18px 0 46px}.result-metrics article{display:grid;grid-template-columns:22px 1fr;align-items:center;gap:7px;padding:15px;border:1px solid var(--line);border-radius:12px;background:#ffffffb3}.result-metrics article span{color:var(--muted);font-size:.7rem}.result-metrics article strong{grid-column:2;color:var(--ink);font:600 1.5rem Georgia,serif}.result-metrics .correct svg{color:#26805f}.result-metrics .wrong svg{color:var(--danger)}.result-metrics .unanswered svg{color:var(--amber)}.result-metrics .band-metric{grid-template-columns:1fr;background:var(--ink)}.result-metrics .band-metric span,.result-metrics .band-metric strong{grid-column:1;color:#fff}.review-filters{display:flex;gap:7px;margin-bottom:18px}.review-filters button{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);cursor:pointer;font-weight:700}.review-filters button.active{border-color:var(--ink);background:var(--ink);color:#fff}.review-filters span{opacity:.68}.answer-review-list{display:grid;gap:12px}.answer-review-card{padding:19px 21px;border:1px solid var(--line);border-left:4px solid var(--amber);border-radius:12px;background:var(--paper)}.answer-review-card.correct{border-left-color:#26805f}.answer-review-card.wrong{border-left-color:var(--danger)}.answer-review-card header{display:flex;justify-content:space-between;color:var(--muted);font-size:.75rem}.answer-review-card header b{display:inline-flex;align-items:center;gap:5px}.answer-review-card.correct header b{color:#267054}.answer-review-card.wrong header b{color:var(--danger)}.answer-review-card.unanswered header b{color:#9a5d20}.answer-review-card h3{margin:13px 0;color:var(--ink);font-size:.95rem}.answer-review-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.answer-review-card dl div{padding:10px;border-radius:8px;background:#f2f3ef}.answer-review-card dt{color:var(--muted);font-size:.68rem}.answer-review-card dd{margin:2px 0 0;font-weight:700}.review-explanation{margin-top:11px;padding:11px;border-radius:8px;background:#edf5ef}.review-explanation p{margin:3px 0 0;white-space:pre-wrap}.empty-review{padding:35px;color:var(--green);text-align:center}@media(max-width:900px){.result-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.result-header{align-items:flex-start;padding:20px}.result-score{width:105px;height:105px;border-width:8px}.result-score strong{font-size:1.75rem}.review-filters{overflow-x:auto}.answer-review-card dl{grid-template-columns:1fr}}.completion-overlay{position:fixed;z-index:80;inset:0;background:#0a1f1b9e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:completion-fade .18s ease-out}.completion-dialog{position:fixed;z-index:81;top:50%;left:50%;width:min(520px,calc(100% - 30px));max-height:calc(100vh - 30px);overflow:auto;padding:30px;border:1px solid rgba(255,255,255,.55);border-radius:22px;background:var(--paper);box-shadow:0 35px 100px #051c1752;text-align:center;transform:translate(-50%,-50%);animation:completion-rise .22s ease-out}.completion-icon{display:grid;width:58px;height:58px;margin:0 auto 14px;place-items:center;border-radius:18px;background:var(--mint);color:var(--green)}.completion-icon svg{width:31px;height:31px}.completion-dialog h2{margin-bottom:7px;font-size:2rem}.completion-dialog>p{color:var(--muted)}.completion-dialog>.eyebrow{margin-bottom:5px;color:var(--green)}.completion-score{display:grid;width:132px;height:132px;margin:22px auto;place-items:center;align-content:center;border:10px solid var(--mint);border-radius:50%;background:#fff}.completion-score strong{color:var(--ink);font:650 2.35rem Georgia,serif}.completion-score span{color:var(--muted);font-size:.7rem}.completion-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:0}.completion-stats div{padding:10px 6px;border-radius:10px;background:#f1f3ee}.completion-stats dt{display:flex;align-items:center;justify-content:center;gap:4px;color:var(--muted);font-size:.67rem}.completion-stats dd{margin:2px 0 0;color:var(--ink);font:700 1.25rem Georgia,serif}.completion-stats .correct dd{color:#267054}.completion-stats .wrong dd{color:var(--danger)}.completion-stats .unanswered dd{color:#9a5d20}.completion-band{display:flex;align-items:center;justify-content:space-between;margin-top:9px;padding:11px 15px;border-radius:10px;background:var(--ink);color:#fff}.completion-band span{font-size:.76rem}.completion-band strong{font:700 1.45rem Georgia,serif}.completion-actions{display:grid;gap:8px;margin-top:22px}.completion-actions .button{width:100%}@keyframes completion-fade{0%{opacity:0}}@keyframes completion-rise{0%{opacity:0;transform:translate(-50%,-46%) scale(.97)}}@media(max-width:520px){.completion-dialog{padding:23px 18px}.completion-stats{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){.completion-overlay,.completion-dialog{animation:none}}
