:root{
  color-scheme:light;
  --paper:#eaf4f2;
  --white:#fcfdfa;
  --ink:#123b4a;
  --muted:#4b6870;
  --line:#b7d2d1;
  --accent:#e5a47e;
  --sage:#dcecea;
  --teal:#176675;
  --coral:#9d4e35;
  --soft-text:#46646c;
  --study-art:url("./assets/study-original-day.webp");
  --study-card:#fcfdfaf2;
  --desk-bg:#dfedeb;
  --desk-bar:#eaf4f2;
  --passage-panel:#f5faf8;
  --question-panel:#fcfdfa;
  --answer-hover:#e0f1ee;
  --correct-bg:#dcf0e8;
  --correct-ink:#195a48;
  --wrong-bg:#f9e5de;
  --wrong-ink:#8e4236;
}
html[data-theme="dark"]{
  color-scheme:dark;
  --paper:#0b1623;
  --white:#172838;
  --ink:#e8eff5;
  --muted:#a9bdcc;
  --line:#3d5368;
  --accent:#f6bf69;
  --sage:#203548;
  --teal:#79d6cc;
  --coral:#ffb39b;
  --soft-text:#b4c5d3;
  --action-bg:#f6bf69;
  --action-hover:#ffd693;
  --action-pressed:#e9a94b;
  --action-ink:#152332;
  --secondary-bg:#263e54;
  --secondary-hover:#34536e;
  --secondary-border:#62829c;
  --secondary-ink:#e0edf7;
  --study-art:url("./assets/study-original-night.webp");
  --study-card:#142536f0;
  --desk-bg:#0a1420;
  --desk-bar:#122233;
  --passage-panel:#142536;
  --question-panel:#1a2d40;
  --answer-hover:#2a4358;
  --correct-bg:#193f34;
  --correct-ink:#b0e7ca;
  --wrong-bg:#482c34;
  --wrong-ink:#ffc1c3;
}
body{background:var(--paper);color:var(--ink)}
button,input,select,textarea{color:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--accent)}
.skip-link{color:#0e2730}
.site-header{background:var(--white);border-bottom-color:var(--line)}
.header-inner{gap:24px}
.brand-mark{background:#123b4a;padding:0}
.header-cta{border-color:var(--line)}
.header-cta:hover{background:var(--accent);border-color:var(--accent);color:#17343a}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;min-height:37px;padding:7px 10px;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer}
.theme-toggle:hover{border-color:var(--teal);background:var(--sage)}
.theme-toggle-icon{position:relative;display:inline-block;flex:none;width:16px;height:16px}
.theme-toggle-icon::before{content:"";position:absolute;inset:2px;border:2px solid currentColor;border-radius:50%}
html[data-theme="dark"] .theme-toggle-icon::before{inset:1px 3px 2px 1px;border:0;border-radius:50%;box-shadow:4px 0 0 0 currentColor;transform:rotate(35deg)}
.theme-toggle-label{line-height:1}
.home-hero{background:#eee9dc;border-bottom:1px solid var(--line);padding:54px 0}
.home-hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:5%}
.home-hero h1 em{color:var(--teal)}
.home-hero-copy>p:not(.eyebrow){color:var(--soft-text)}
.button-primary{background:var(--teal);border-color:var(--teal);color:#fffdf7}
.button-primary:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#193735}
.study-stage{min-height:440px;position:relative;overflow:hidden;border:1px solid #4d7871;background:#668f88 var(--study-art) center/cover no-repeat}
.study-stage .resume-card{position:absolute;right:15px;bottom:15px;width:min(295px,calc(100% - 30px));min-height:0;padding:20px 22px;background:var(--study-card);border:1px solid var(--line);color:var(--ink)}
.study-stage .resume-koi{display:none}
.study-stage .resume-label{margin:0 0 11px;color:var(--coral)}
.study-stage .resume-card h2{font-size:29px;margin-bottom:8px}
.study-stage .resume-card>p:not(.resume-label){margin:0 0 16px;color:var(--soft-text)}
.study-stage .resume-card a{border-top-color:var(--line);padding-top:12px;color:var(--ink)}
.home-skills{background:var(--paper);border-top:0}
.home-section-head>span{color:var(--teal)}
.home-skill-grid{border-color:var(--line);gap:1px;background:var(--line)}
.home-skill-grid a{border:0!important;background:var(--white);color:var(--ink)}
.home-skill-grid a:nth-child(1){background:#eef1e7}
.home-skill-grid a:nth-child(2){background:#e8eeea}
.home-skill-grid a:nth-child(3){background:#f5e8df}
.home-skill-grid a:nth-child(4){background:#e5eceb}
.home-skill-grid a:hover{background:var(--accent)}
.home-skill-grid span{color:var(--soft-text)}
.planner-drawer{background:var(--sage);border-color:var(--line)}
.planner-summary small,.field-hint,.plan-footnote{color:var(--soft-text)}
.planner-drawer-content{border-top-color:var(--line)}
.planner-drawer .plan-result{background:var(--white);border-color:var(--line)}
.planner-fields select,.form-row select,.day-choices span{background:var(--white);border-color:var(--line);color:var(--ink)}
.day-choices input:checked+span{background:var(--teal);border-color:var(--teal);color:#fffdf6}
.button-dark{background:var(--teal);border-color:var(--teal);color:#fffdf6}
.button-dark:hover{background:var(--accent);border-color:var(--accent);color:#17343a}
.site-footer{background:#1a3a38;color:#f4f0e7}
.home-footer-inner{color:#d4e8df}
.practice-page .test-library{background:var(--paper)}
.practice-page .compact-library .library-heading{position:relative;isolation:isolate;min-height:108px;padding:17px 22px;border:1px solid var(--line);background:var(--sage)}
.practice-page .compact-library .library-heading::before{content:"";position:absolute;z-index:-1;inset:0 0 0 auto;width:min(43%,350px);background:var(--study-art) center/cover no-repeat}
.practice-page .compact-library .library-heading>div{position:relative;z-index:1}
.practice-page .library-koi{display:none}
.catalog-card{background:var(--white);color:var(--ink);border-color:var(--line)}
button.catalog-card:hover{background:var(--sage);border-color:var(--teal)}
.catalog-card.is-pending{background:var(--sage);border-color:var(--line)}
.catalog-card-source,.catalog-status,.catalog-meta,.library-note{color:var(--soft-text)}
.catalog-number,.catalog-action,.catalog-retry{color:var(--coral)!important}
.catalog-progress-track{background:var(--sage)}
.catalog-progress-fill{background:var(--coral)}
.catalog-retry{border-color:var(--coral)!important}
.skill-tabs{border-color:var(--line)}
.skill-tabs button+button{border-color:var(--line)}
.skill-tabs button[aria-pressed="true"]{background:var(--teal);color:#fffdf6}
.skill-tabs button:hover:not([aria-pressed="true"]){background:var(--sage)}
.catalog-pagination button,.catalog-action:is(button){background:var(--white);border-color:var(--line);color:var(--ink)}
.catalog-pagination button:hover:not(:disabled),.catalog-action:is(button):hover{background:var(--teal);color:#fffdf6}
.finish-dialog,.score-dialog{background:var(--white);color:var(--ink);border-color:var(--line)}
.finish-dialog p,.test-disclaimer,.attribution-intro,.attribution-note{color:var(--soft-text)}
.finish-dialog::backdrop,.score-dialog::backdrop{background:#071a20c9}
.score-table thead{background:var(--sage)}
.score-dialog-head,.score-table th,.score-table td{border-color:var(--line)}
.score-dialog-head .desk-tool{color:var(--ink);border-color:var(--line)}
.score-dialog-head .desk-tool:hover{background:var(--sage)}
.in-test .test-view,.test-view:fullscreen{background:var(--desk-bg)}
.in-test .test-topbar{background:var(--desk-bar);border-bottom-color:var(--line);color:var(--ink)}
.in-test .desk-back,.in-test .desk-tool,.in-test .part-nav-footer>button,.in-test .passage-toolbar-actions button{background:var(--white);border-color:var(--line);color:var(--ink)}
.in-test .desk-back:hover,.in-test .desk-tool:hover,.in-test .part-nav-footer>button:hover:not(:disabled),.in-test .passage-toolbar-actions button:hover:not(:disabled){background:var(--sage);color:var(--ink)}
.in-test .desk-finish{background:var(--accent);border-color:var(--accent);color:#17343a}
.in-test .desk-finish:hover{background:var(--coral);border-color:var(--coral);color:#fffdf6}
.in-test .test-clock,.desk-timer>span,.in-test .test-identity span,.in-test .test-nav-top span,.in-test .test-notice{color:var(--soft-text)}
.in-test .test-clock{color:var(--ink)}
.in-test .test-clock.is-low{color:var(--coral)}
.in-test .objective-layout,.in-test .writing-layout,.in-test .speaking-layout{background:var(--white);border-color:var(--line)}
.in-test .objective-layout .source-panel,.in-test .writing-layout .source-panel,.in-test .speaking-layout .source-panel{border-color:var(--line)}
.in-test .objective-layout .source-panel,.in-test .writing-layout .source-panel,.in-test .speaking-layout .source-panel{background:var(--passage-panel)}
.in-test .objective-layout .questions-panel,.in-test .editor-panel,.in-test .speaking-tools{background:var(--question-panel)}
.in-test .reading-passage p,.in-test .passage-row p,.cue-list,.speaking-questions,.completion-text{color:var(--ink)}
.in-test .passage-marker,.in-test .question-card .question-number,.matching-question-number,.inline-answer-number,.panel-kicker,.passage-part-label{color:var(--teal)}
.in-test .panel-instructions,.audio-note,.editor-note,.record-status,.result-caveat,.result-explanation,.matching-before,.task-visual figcaption{color:var(--soft-text)}
.in-test .passage-toolbar,.in-test .test-nav,.completion-sheet,.in-test .matching-table thead th,.score-table thead{background:var(--desk-bar);border-color:var(--line);color:var(--ink)}
.in-test .test-nav{border-color:var(--line)}
.in-test .passage-toolbar-actions .skim-toggle[aria-pressed="true"]{background:var(--teal);color:#fffdf6;border-color:var(--teal)}
.in-test .choice-group .choice-option,.in-test .matching-table,.in-test .matching-table th,.in-test .matching-table td,.in-test .completion-sheet,.in-test .completion-line{border-color:var(--line)}
.in-test .choice-group .choice-option,.in-test .matching-table,.in-test .inline-answer .short-answer,.short-answer,.editor-panel textarea,.speaking-tools textarea{background:var(--white);color:var(--ink)}
.in-test .choice-group .choice-option:hover,.in-test .choice-group .choice-option:has(input:checked),.matching-cell:has(input:checked){background:var(--answer-hover);border-color:var(--teal)}
.in-test .choice-letter{background:var(--sage);border-color:var(--line);color:var(--ink)}
.in-test .choice-option:has(input:checked) .choice-letter{background:var(--teal);border-color:var(--teal);color:#fffdf6}
.in-test .choice-option input,.matching-choice input{accent-color:var(--teal)}
.in-test .inline-answer .short-answer{border-bottom-color:var(--teal)}
.in-test .matching-table tbody th{color:var(--ink)}
.in-test .matching-review .matching-verdict{color:var(--correct-ink)}
.in-test .is-incorrect .matching-review .matching-verdict{color:var(--wrong-ink)}
.in-test .choice-option.answer-correct,.in-test .choice-option.accepted-answer,.in-test .short-answer.answer-correct,.in-test .matching-cell.answer-correct,.in-test .matching-cell.accepted-answer,.in-test .inline-answer .short-answer.answer-correct{background:var(--correct-bg);border-color:var(--correct-ink);color:var(--correct-ink)}
.in-test .choice-option.answer-incorrect,.in-test .short-answer.answer-incorrect,.in-test .matching-cell.answer-incorrect,.in-test .inline-answer .short-answer.answer-incorrect{background:var(--wrong-bg);border-color:var(--wrong-ink);color:var(--wrong-ink)}
.in-test .choice-group .choice-option.answer-correct:has(input:checked){background:var(--correct-bg);border-color:var(--correct-ink);color:var(--correct-ink)}
.in-test .choice-group .choice-option.answer-incorrect:has(input:checked){background:var(--wrong-bg);border-color:var(--wrong-ink);color:var(--wrong-ink)}
.question-card.is-correct .answer-verdict,.completion-line.is-correct .answer-verdict,.completion-control.is-correct .answer-verdict,.score-table tr.is-correct td:last-child,.result-verdict{color:var(--correct-ink)}
.question-card.is-incorrect .answer-verdict,.completion-line.is-incorrect .answer-verdict,.completion-control.is-incorrect .answer-verdict,.score-table tr.is-incorrect td:last-child,.result-row.is-incorrect .result-verdict{color:var(--wrong-ink)}
.in-test .question-numbers button,.part-tabs button,.mobile-workspace-tabs button,.task-nav-list button,.part-timer-buttons button{background:var(--white);border-color:var(--line);color:var(--ink)}
.in-test .question-numbers button.is-answered,.part-tabs button.is-current,.mobile-workspace-tabs button[aria-pressed="true"],.task-nav-list button.is-current{background:var(--teal);border-color:var(--teal);color:#fffdf6}
.in-test .question-numbers button.is-correct{background:var(--correct-bg);border-color:var(--correct-ink);color:var(--correct-ink)}
.in-test .question-numbers button.is-incorrect{background:var(--wrong-bg);border-color:var(--wrong-ink);color:var(--wrong-ink)}
.nav-part-label,.nav-part-group.is-current .nav-part-label{color:var(--teal)}
.part-tabs button:hover:not(.is-current),.mobile-workspace-tabs,.listening-audio,.part-timer-box,.self-review,.data-table thead{background:var(--sage)}
.flag-button,.attribution-title,.attribution-license{color:var(--teal)}
.flag-button[aria-pressed="true"]{color:var(--coral)}
.data-table th,.data-table td{border-color:var(--line)}
.source-attribution,.result-sources,.result-head,.record-box,.transcript-details,.writing-review,.speaking-review,.draft-preview{border-color:var(--line)}
.draft-preview{background:var(--sage)}
.selection-toolbar,.selection-toolbar button{background:var(--ink);color:var(--paper)}
.selection-toolbar button:hover{background:var(--teal);color:#fffdf6}
.user-highlight{background:#f3c66e;color:#172b31}
.review-answer-highlight{background:#c7e8e6;color:var(--ink);box-decoration-break:clone;-webkit-box-decoration-break:clone}
html[data-theme="dark"] .review-answer-highlight{background:#245c6a;color:#eff9f8}
.review-question-number{display:inline-block;margin:0 .3em;color:var(--teal);font-family:Segoe UI,Arial,sans-serif;font-size:.72em;font-weight:800;vertical-align:super;line-height:1;user-select:none}
html[data-theme="dark"] .review-question-number{color:#a8e4ee}
.review-evidence-note{font-size:12px;line-height:1.5;color:var(--muted);margin:5px 0 8px}
.practice-page{font-family:"Segoe UI Variable","Segoe UI",Tahoma,sans-serif;font-size:14px;line-height:1.5}
.practice-page .compact-library .library-heading h1,
.practice-page .catalog-card h3,
.practice-page .source-panel h2,
.practice-page .questions-panel h2,
.practice-page .speaking-tools h2,
.practice-page .score-dialog h2,
.practice-page .finish-dialog h2,
.practice-page .result-head h2{font-family:"Segoe UI Variable","Segoe UI",Tahoma,sans-serif;letter-spacing:-.035em}
.practice-page .catalog-card h3{font-weight:650}
.practice-page .catalog-meta{font-size:11px;line-height:1.4}
.practice-page textarea{font-family:inherit}
.practice-page .editor-panel textarea{font-size:15px;line-height:1.7}
.practice-page .reading-passage{font-family:"Palatino Linotype","Book Antiqua",Georgia,serif;letter-spacing:.005em}
.practice-page.in-test .passage-row p{line-height:1.76}
.practice-page .question-card h3{font-size:14.5px;font-weight:600;line-height:1.55}
.practice-page .question-group-intro p{font-size:13px;line-height:1.55}
.practice-page .choice-group .choice-option{font-size:13px;line-height:1.45}
.practice-page .completion-text{font-size:14px;line-height:1.8}
.practice-page .score-table{min-width:550px;font-size:13px;line-height:1.45}
.practice-page.in-test .question-nav-rail .question-numbers button{width:26px;height:26px;font-size:10px}
html[data-theme="dark"] .home-hero{background:#162d32}
html[data-theme="dark"] .home-skill-grid a:nth-child(1){background:#1c3a3d}
html[data-theme="dark"] .home-skill-grid a:nth-child(2){background:#1a343b}
html[data-theme="dark"] .home-skill-grid a:nth-child(3){background:#423631}
html[data-theme="dark"] .home-skill-grid a:nth-child(4){background:#233a42}
html[data-theme="dark"] .home-skill-grid a:hover{background:#31565a}
html[data-theme="dark"] .button-primary,
html[data-theme="dark"] .button-dark,
html[data-theme="dark"] .day-choices input:checked+span,
html[data-theme="dark"] .skill-tabs button[aria-pressed="true"],
html[data-theme="dark"] .catalog-pagination button:hover:not(:disabled),
html[data-theme="dark"] .catalog-action:is(button):hover{color:#13252d}
html[data-theme="dark"] .site-footer{background:#0d1d24}
html[data-theme="dark"] .home-footer-inner{color:#bfd5d0}
html[data-theme="dark"] .study-stage{border-color:#54736e;background-color:#102e3b}
html[data-theme="dark"] .study-stage .resume-card{border-color:#688280}
html[data-theme="dark"] .brand-mark{background:#123b4a}
html[data-theme="dark"] .in-test .choice-option:has(input:checked) .choice-letter,
html[data-theme="dark"] .in-test .question-numbers button.is-answered,
html[data-theme="dark"] .part-tabs button.is-current,
html[data-theme="dark"] .mobile-workspace-tabs button[aria-pressed="true"],
html[data-theme="dark"] .task-nav-list button.is-current,
html[data-theme="dark"] .in-test .passage-toolbar-actions .skim-toggle[aria-pressed="true"]{color:#10232c}
html[data-theme="dark"] .in-test .desk-finish:hover{color:#17343a}
html[data-theme="dark"] .selection-toolbar button:hover{color:#10232c}
html[data-theme="dark"] .in-test .test-identity span,
html[data-theme="dark"] .in-test .test-nav-top span{color:#bdd0cb}
html[data-theme="dark"] .in-test .short-answer:focus,
html[data-theme="dark"] .in-test .inline-answer .short-answer:focus{outline-color:var(--accent)}
@media(max-width:850px){.home-hero-grid{grid-template-columns:1fr}.study-stage{min-height:400px}}
@media(max-width:560px){
  .header-inner{gap:10px}
  .theme-toggle{width:37px;height:37px;padding:6px}
  .theme-toggle-label{display:none}
  .study-stage{min-height:370px}
  .study-stage .resume-card{width:min(270px,calc(100% - 24px));right:12px;bottom:12px;padding:15px 17px}
  .study-stage .resume-card h2{font-size:25px}
  .practice-page .compact-library .library-heading{min-height:92px;padding:13px 15px}
  .practice-page .compact-library .library-heading::before{width:45%;opacity:.55}
  .practice-page .score-table th,.practice-page .score-table td{font-size:12px}
}
.in-test .desk-theme{min-height:31px;padding:6px 8px;background:var(--white);border-color:var(--line);color:var(--ink)}
@media(max-width:900px){.in-test .desk-theme .theme-toggle-label{display:none}.in-test .desk-theme{width:31px;height:31px;padding:4px}}
@media print{
  .theme-toggle{display:none!important}
  body.in-test,.in-test .test-view,.in-test .objective-layout,.in-test .writing-layout,.in-test .speaking-layout,
  .in-test .source-panel,.in-test .questions-panel,.in-test .editor-panel,.in-test .speaking-tools,
  .in-test .completion-sheet,.in-test .matching-table,.in-test .choice-option,.in-test .short-answer,
  .in-test .inline-answer .short-answer,.in-test .editor-panel textarea,.in-test .speaking-tools textarea{
    background:#fff!important;color:#193735!important;border-color:#bdcac1!important
  }
  .in-test .reading-passage p,.in-test .completion-text,.in-test .question-card h3,
  .in-test .matching-table th,.in-test .matching-table td,.in-test .passage-marker{
    color:#193735!important
  }
}

/* Shared homepage typography, cards, and theme colors. */
.home-page{font-family:"Segoe UI Variable","Segoe UI",Tahoma,sans-serif}
.home-hero{padding:28px 0;background:#eeeae0}
.home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.94fr);gap:32px;align-items:stretch}
.home-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:38px 20px 38px 0}
.home-hero-copy .eyebrow{margin-bottom:23px;color:var(--coral)}
.home-hero h1{font-family:"Segoe UI Variable","Segoe UI",Tahoma,sans-serif;font-size:clamp(45px,4.65vw,66px);font-weight:650;line-height:1.08;letter-spacing:-.064em;max-width:640px}
.home-hero h1 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-style:italic;letter-spacing:-.065em;color:#aa593c}
.home-hero-copy>p.hero-description{font-size:17px;line-height:1.62;max-width:470px;margin:28px 0 27px;color:#455e57}
.home-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:15px 24px}
.home-hero-actions .button{min-height:56px;padding:16px 19px;min-width:233px;background:#ad5539;border-color:#ad5539;color:#fffaf1}
.home-hero-actions .button:hover{background:#183f3c;border-color:#183f3c;color:#fffaf1}
.home-secondary-link{font-size:13px;font-weight:750;text-decoration:underline;text-decoration-color:#bc8b72;text-underline-offset:5px}
.home-secondary-link:hover{text-decoration-color:currentColor}
.mock-facts{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:13px;margin-top:40px;padding-top:17px;border-top:1px solid #b7c1b4}
.mock-facts span{font-size:11px;line-height:1.4;color:#69796e}
.mock-facts strong{display:block;margin-bottom:3px;color:#26443e;font-size:13px;font-weight:750}
.home-hero-copy .resume-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 24px;margin-top:20px;padding:15px 18px;min-height:0;background:#e1e8dc;border-left:3px solid #ad5539;color:#193735}
.home-hero-copy .resume-card .resume-label{grid-column:1/-1;margin:0 0 3px;color:#a24b31;font-size:9px}
.home-hero-copy .resume-card h2{font-family:"Segoe UI Variable","Segoe UI",Tahoma,sans-serif;font-size:17px;font-weight:700;line-height:1.25;margin:0 0 3px;letter-spacing:-.03em}
.home-hero-copy .resume-card p:not(.resume-label){margin:0;color:#52695f;font-size:11px}
.home-hero-copy .resume-card a{width:auto;white-space:nowrap;border:0;margin:0;padding:0;gap:8px;font-size:12px}
.study-stage{position:relative;margin:0;min-height:535px;overflow:hidden;border:0;background:#153e45}
.study-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 46%;transition:opacity .35s ease,filter .35s ease}
.study-stage img.study-day{filter:brightness(1.08) saturate(1.02)}
.study-stage img.study-night{opacity:0;filter:brightness(.82) saturate(.88) contrast(1.08)}
.study-stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(145deg,rgba(255,228,164,.17),transparent 42%),linear-gradient(0deg,rgba(4,29,33,.54),transparent 24%)}
.study-stage figcaption{position:absolute;z-index:1;left:19px;bottom:17px;color:#fff8eb;font-size:9px;font-weight:750;letter-spacing:.13em;text-shadow:0 1px 6px #092727}
.study-stage figcaption a{text-decoration:underline;text-underline-offset:3px}
.pond-credit-night{display:none}
.home-skills{padding:30px 0 36px;background:#faf8f1}
.home-section-head{margin-bottom:17px}
.home-section-head h2{font-family:"Segoe UI Variable","Segoe UI",Tahoma,sans-serif;font-size:25px;font-weight:700;letter-spacing:-.04em}
.home-skill-grid a{min-height:127px;padding:19px 20px;border-top:3px solid transparent!important;transition:background-color .18s,border-color .18s}
.home-skill-grid a:nth-child(1){background:#e5ece5;border-top-color:#326b60!important}
.home-skill-grid a:nth-child(2){background:#e6eced;border-top-color:#567d82!important}
.home-skill-grid a:nth-child(3){background:#f3e7db;border-top-color:#b36b46!important}
.home-skill-grid a:nth-child(4){background:#e9e9e0;border-top-color:#8a8b6a!important}
.home-skill-grid a:hover{background:#dce8dd}
.home-skill-grid strong{font-size:19px}
.home-skill-grid span{margin-top:4px}
.home-skill-grid b{font-size:17px}
.practice-page .compact-library .library-heading::before{width:min(34%,275px);background-position:center 43%;opacity:.9}
html[data-theme="dark"] .home-hero{background:#122a30}
html[data-theme="dark"] .home-hero-copy .eyebrow{color:#e5a274}
html[data-theme="dark"] .home-hero h1 em{color:#efad7e}
html[data-theme="dark"] .home-hero-copy .hero-description{color:#c6d4cb}
html[data-theme="dark"] .home-hero-actions .button{background:#e5a274;border-color:#e5a274;color:#13252d}
html[data-theme="dark"] .home-hero-actions .button:hover{background:#f1bb95;border-color:#f1bb95}
html[data-theme="dark"] .home-secondary-link{color:#e8eee7;text-decoration-color:#cd9f7c}
html[data-theme="dark"] .mock-facts{border-color:#4c6460}
html[data-theme="dark"] .mock-facts span{color:#aebeb5}
html[data-theme="dark"] .mock-facts strong{color:#e7eee7}
html[data-theme="dark"] .home-hero-copy .resume-card{background:#213b3b;color:#eaf0e7;border-left-color:#e5a274}
html[data-theme="dark"] .home-hero-copy .resume-card .resume-label{color:#e5a274}
html[data-theme="dark"] .home-hero-copy .resume-card p:not(.resume-label){color:#b8cbc1}
/* Keep daylight opaque beneath the night layer to avoid a dimming dip mid-fade. */
html[data-theme="dark"] .study-stage img.study-day{opacity:1}
html[data-theme="dark"] .study-stage img.study-night{opacity:1}
html[data-theme="dark"] .study-stage::after{background:radial-gradient(circle at 20% 9%,rgba(240,183,107,.31),transparent 30%),radial-gradient(circle at 87% 80%,rgba(247,158,93,.2),transparent 24%),linear-gradient(0deg,rgba(5,17,28,.55),rgba(6,28,34,.09) 55%)}
html[data-theme="dark"] .pond-credit-day{display:none}
html[data-theme="dark"] .pond-credit-night{display:inline}
html[data-theme="dark"] .home-skills{background:#142b31}
html[data-theme="dark"] .home-skill-grid a:nth-child(1){background:#1b3b3b}
html[data-theme="dark"] .home-skill-grid a:nth-child(2){background:#1b343d}
html[data-theme="dark"] .home-skill-grid a:nth-child(3){background:#42332e}
html[data-theme="dark"] .home-skill-grid a:nth-child(4){background:#303b39}
html[data-theme="dark"] .home-skill-grid a:hover{background:#31565a}
html[data-theme="dark"] .practice-page .compact-library .library-heading::before{filter:brightness(.65) saturate(.84)}

body{animation:page-enter .24s ease-out both}
body.is-page-leaving{animation:page-leave .16s ease-in both;pointer-events:none}
@keyframes page-enter{from{opacity:.65}to{opacity:1}}
@keyframes page-leave{from{opacity:1}to{opacity:.58}}
@media(max-width:950px){
  .home-hero-grid{gap:24px}
  .home-hero-copy{padding:30px 0}
  .home-hero h1{font-size:clamp(42px,5.1vw,55px)}
  .study-stage{min-height:490px}
}
@media(max-width:750px){
  .home-hero{padding:20px 0}
  .home-hero-grid{grid-template-columns:1fr;gap:20px}
  .home-hero-copy{padding:25px 0 5px}
  .home-hero h1{font-size:clamp(45px,7.1vw,64px)}
  .mock-facts{margin-top:28px}
  .study-stage{min-height:360px}
  .study-stage img{object-position:center 51%}
}
@media(max-width:560px){
  .home-hero h1{font-size:clamp(40px,10.8vw,54px)}
  .home-hero-copy>p.hero-description{font-size:15px;margin:21px 0 22px}
  .home-hero-actions{gap:17px}
  .home-hero-actions .button{min-width:0;width:100%}
  .home-secondary-link{font-size:12px}
  .mock-facts{gap:8px;margin-top:29px}
  .mock-facts span{font-size:10px}
  .mock-facts strong{font-size:11px}
  .home-hero-copy .resume-card{grid-template-columns:1fr}
  .home-hero-copy .resume-card a{margin-top:7px}
  .study-stage{min-height:325px}
  .home-section-head h2{font-size:23px}
  .home-skill-grid a{min-height:115px;padding:16px 13px}
}
@media(prefers-reduced-motion:reduce){body,body.is-page-leaving{animation:none}.study-stage img,.home-skill-grid a{transition:none}}

/* Study-window scene across the full homepage hero. */
.home-page .home-hero{position:relative;isolation:isolate;overflow:hidden;padding:0;background:#0d4850;border-bottom:1px solid #83aaa1}
.home-page .home-hero::after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(3,40,48,.74) 0%,rgba(4,47,54,.68) 53%,rgba(4,47,54,.08) 72%,transparent 100%)}
.home-page .home-hero-grid{position:relative;z-index:2;display:block}
.home-page .home-hero-copy{width:min(52%,680px);min-height:clamp(590px,43.9vw,740px);padding:64px 0 62px;color:#fffdf4}
.home-page .home-hero-copy .eyebrow{color:#ffc38d}
.home-page .home-hero h1{color:#fffdf4}
.home-page .home-hero h1 em{color:#ffc18d}
.home-page .home-hero-copy>p.hero-description{color:#edf5ed}
.home-page .home-hero-actions .button{background:#f5aa74;border-color:#f5aa74;color:#12383e}
.home-page .home-hero-actions .button:hover{background:#ffd0a7;border-color:#ffd0a7;color:#12383e}
.home-page .home-secondary-link{color:#fff7e9;text-decoration-color:#ffca9f}
.home-page .mock-facts{border-color:#ffffff82}
.home-page .mock-facts span{color:#deeee7}
.home-page .mock-facts strong{color:#fffef6}
.home-page .home-hero-copy .resume-card{background:#07353bc7;border-left-color:#ffb581;color:#fffdf4}
.home-page .home-hero-copy .resume-card .resume-label{color:#ffbd8a}
.home-page .home-hero-copy .resume-card p:not(.resume-label){color:#e1f0e9}
.home-page .study-stage{position:absolute;z-index:0;inset:0;width:100%;height:100%;min-height:0;margin:0;border:0;background:#0d4850;pointer-events:none}
.home-page .study-stage::after{content:none}
.home-page .study-stage img{width:100%;height:100%;object-fit:cover;object-position:center center;image-rendering:auto}
.home-page .study-stage img.study-day,.home-page .study-stage img.study-night{filter:none}

html:not([data-theme="dark"]) .home-page .site-header{background:#fff4df;border-bottom-color:#9ebdb0}
html:not([data-theme="dark"]) .home-page .header-cta{background:#f5b384;border-color:#d88b60;color:#173d41}
html:not([data-theme="dark"]) .home-page .header-cta:hover{background:#fbd0aa;border-color:#d88b60}
html:not([data-theme="dark"]) .home-page .theme-toggle{background:#e7f3ec;border-color:#9ebdb0}
html:not([data-theme="dark"]) .home-page .home-skills{background:#fff7e8}
html:not([data-theme="dark"]) .home-page .home-skill-grid a:nth-child(1){background:#d8eddf;border-top-color:#137767!important}
html:not([data-theme="dark"]) .home-page .home-skill-grid a:nth-child(2){background:#d5eaf0;border-top-color:#407c8b!important}
html:not([data-theme="dark"]) .home-page .home-skill-grid a:nth-child(3){background:#ffe1c8;border-top-color:#c9693d!important}
html:not([data-theme="dark"]) .home-page .home-skill-grid a:nth-child(4){background:#f3e9c8;border-top-color:#a78b3f!important}
html:not([data-theme="dark"]) .home-page .home-skill-grid a:hover{background:#c7e5dd}
html:not([data-theme="dark"]) .home-page .planner-drawer{background:#ddede4}
html:not([data-theme="dark"]) .home-page .home-section-head>span{color:#a55335}
html[data-theme="dark"] .home-page .home-hero{background:#061e2a}
html[data-theme="dark"] .home-page .home-hero::after{background:linear-gradient(90deg,rgba(2,21,30,.16) 0%,rgba(3,27,35,.1) 52%,transparent 72%)}
html[data-theme="dark"] .home-page .home-hero-copy .eyebrow{color:#ffbb86}
html[data-theme="dark"] .home-page .home-hero h1 em{color:#ffbb86}
html[data-theme="dark"] .home-page .home-hero-actions .button{background:#f5aa74;border-color:#f5aa74;color:#12383e}
html[data-theme="dark"] .home-page .home-hero-actions .button:hover{background:#ffd0a7;border-color:#ffd0a7}
html[data-theme="dark"] .home-page .home-secondary-link{color:#fff7e9}
html[data-theme="dark"] .home-page .mock-facts span{color:#deeee7}
html[data-theme="dark"] .home-page .mock-facts strong{color:#fffef6}
html[data-theme="dark"] .home-page .home-hero-copy .resume-card{background:#071e29cf;color:#fffdf4}

@media(max-width:850px){
  .home-page .home-hero-copy{width:min(65%,550px);min-height:600px;padding:50px 0}
  .home-page .home-hero::after{background:linear-gradient(90deg,rgba(3,40,48,.77) 0%,rgba(4,47,54,.7) 65%,rgba(4,47,54,.12) 84%,transparent 100%)}
  html[data-theme="dark"] .home-page .home-hero::after{background:linear-gradient(90deg,rgba(2,21,30,.3) 0%,rgba(3,27,35,.22) 65%,transparent 84%)}
  .home-page .study-stage img{object-position:72% 25%}
}
@media(max-width:650px){
  .home-page .home-hero-copy{width:100%;min-height:0;padding:43px 0 250px}
  .home-page .home-hero::after{background:linear-gradient(180deg,rgba(3,40,48,.86) 0%,rgba(3,40,48,.76) 72%,rgba(3,40,48,.08) 100%)}
  html[data-theme="dark"] .home-page .home-hero::after{background:linear-gradient(180deg,rgba(2,21,30,.88) 0%,rgba(2,21,30,.73) 55%,rgba(2,21,30,.08) 100%)}
  .home-page .study-stage img{object-position:83% center}
  .home-page .home-hero h1{font-size:clamp(40px,10.6vw,55px)}
  .home-page .mock-facts{margin-top:27px}
}

/* Carry the study-window scene across the full practice catalog heading. */
.practice-page .compact-library .library-heading{overflow:hidden;background:#0d4850;color:#fffdf4;border-color:#608783}
.practice-page .compact-library .library-heading::before{inset:0;width:100%;opacity:1;filter:none;background-image:linear-gradient(90deg,rgba(3,40,48,.75) 0%,rgba(3,40,48,.65) 38%,rgba(3,40,48,.09) 72%,transparent 100%),var(--study-art);background-repeat:no-repeat;background-size:100% 100%,auto 180%;background-position:center center,right 36%;image-rendering:auto}
.practice-page .compact-library .library-heading .eyebrow{color:#ffc18d}
.practice-page .compact-library .library-heading h1{color:#fffdf4}
html[data-theme="dark"] .practice-page .compact-library .library-heading{background:#061e2a}
html[data-theme="dark"] .practice-page .compact-library .library-heading::before{filter:none;background-image:linear-gradient(90deg,rgba(2,21,30,.2) 0%,rgba(2,21,30,.12) 48%,transparent 72%),var(--study-art)}

.band-tone-excellent{--band-bg:#d9f1df;--band-ink:#124b32;--band-border:#5b9a72}
.band-tone-strong{--band-bg:#d8ece9;--band-ink:#164f4b;--band-border:#58948e}
.band-tone-steady{--band-bg:#f3e7be;--band-ink:#634b17;--band-border:#ae8e40}
.band-tone-building{--band-bg:#f7dfca;--band-ink:#78411f;--band-border:#b9794a}
.band-tone-foundation{--band-bg:#f2d7d0;--band-ink:#813d31;--band-border:#b46b5c}
.band-tone-unlisted{--band-bg:#e5e8e3;--band-ink:#455651;--band-border:#96a9a0}
html[data-theme="dark"] .band-tone-excellent{--band-bg:#1b4735;--band-ink:#bff0cf;--band-border:#579c73}
html[data-theme="dark"] .band-tone-strong{--band-bg:#1d4849;--band-ink:#c3f0e9;--band-border:#5d9d99}
html[data-theme="dark"] .band-tone-steady{--band-bg:#514426;--band-ink:#ffe5a6;--band-border:#b99d54}
html[data-theme="dark"] .band-tone-building{--band-bg:#563a2b;--band-ink:#ffdab9;--band-border:#bf8256}
html[data-theme="dark"] .band-tone-foundation{--band-bg:#59332f;--band-ink:#ffd6cc;--band-border:#bd7667}
html[data-theme="dark"] .band-tone-unlisted{--band-bg:#34464a;--band-ink:#d8e3df;--band-border:#849f9a}
@media(max-width:560px){
  .main-nav a:nth-child(2){display:inline}
  .home-page .main-nav a:nth-child(3),.practice-page .main-nav a:first-child,.practice-page .main-nav a:nth-child(4),.tips-page .main-nav a:first-child{display:none}
  .main-nav{gap:11px}
}

/* Ocean palette shared by the landing page, test desk, and tips. */
.site-footer{background:#0b3444;color:#eaf5f2}
.home-footer-inner{color:#c5e0df}
.home-page .home-hero{background:#0a4255;border-bottom-color:#76aeb2}
.home-page .home-hero::after{background:linear-gradient(90deg,rgba(5,26,43,.8) 0%,rgba(5,26,43,.74) 55%,transparent 78%)}
.home-page .home-hero h1 em{color:#ffc29c}
.home-page .home-hero-copy .eyebrow{color:#ffc49f}
.home-page .home-hero-actions .button{background:#f2b38b;border-color:#f2b38b;color:#123b4a}
.home-page .home-hero-actions .button:hover{background:#ffd2b2;border-color:#ffd2b2;color:#123b4a}
.home-page .home-hero-copy .resume-card{background:#0a3547d9;border-left-color:#f2b38b}
.home-page .study-stage{background-color:#0a4255}
.catalog-progress-fill{background:var(--teal)}
.catalog-number,.catalog-action{color:var(--teal)!important}
.catalog-retry{color:var(--coral)!important}
.practice-page .compact-library .library-heading{background:#0c455a;border-color:#77a8ad}
.practice-page .compact-library .library-heading::before{background-image:linear-gradient(90deg,rgba(4,42,60,.81) 0%,rgba(4,42,60,.61) 39%,rgba(4,42,60,.03) 73%,transparent 100%),var(--study-art)}
.tips-page .tips-hero{background-color:#0c455a}
.tips-page .tips-hero::before{background:linear-gradient(90deg,rgba(4,42,60,.88),rgba(4,42,60,.65) 53%,rgba(4,42,60,.03) 85%)}
html:not([data-theme="dark"]) .home-page .home-skills{background:#e7f3f1}
html:not([data-theme="dark"]) .home-page .home-skill-grid a:nth-child(1){background:#d5ebe8;border-top-color:#176675!important}
html:not([data-theme="dark"]) .home-page .home-skill-grid a:nth-child(2){background:#d7eaf0;border-top-color:#3a859b!important}
html:not([data-theme="dark"]) .home-page .home-skill-grid a:nth-child(3){background:#dff0ee;border-top-color:#519e98!important}
html:not([data-theme="dark"]) .home-page .home-skill-grid a:nth-child(4){background:#e0edf3;border-top-color:#628da8!important}
html:not([data-theme="dark"]) .home-page .home-skill-grid a:hover{background:#c2e2de}
html:not([data-theme="dark"]) .home-page .planner-drawer{background:#d7ece8}
html:not([data-theme="dark"]) .home-page .home-section-head>span{color:#176675}
html:not([data-theme="dark"]) .home-page .site-header{background:#e2f1ef;border-bottom-color:#a8c9ca}
html:not([data-theme="dark"]) .home-page .header-cta{background:#cce8e5;border-color:#88b6b8;color:#123b4a}
html:not([data-theme="dark"]) .home-page .header-cta:hover{background:#b4dcd9;border-color:#6fa4a7}
html:not([data-theme="dark"]) .home-page .theme-toggle{background:#f4faf9;border-color:#a8c9ca}
html[data-theme="dark"] .site-footer{background:#061824}
html[data-theme="dark"] .home-footer-inner{color:#b9d7d8}
html[data-theme="dark"] .home-page .home-hero{background:#071d2d;border-bottom-color:#426c79}
html[data-theme="dark"] .home-page .home-hero::after{background:linear-gradient(90deg,rgba(3,20,33,.8) 0%,rgba(3,20,33,.74) 55%,transparent 78%)}
html[data-theme="dark"] .home-page .home-skills{background:#0d2937}
html[data-theme="dark"] .home-page .home-skill-grid a:nth-child(1){background:#133a46;border-top-color:#73c9c5!important}
html[data-theme="dark"] .home-page .home-skill-grid a:nth-child(2){background:#163749;border-top-color:#7bbfd2!important}
html[data-theme="dark"] .home-page .home-skill-grid a:nth-child(3){background:#174149;border-top-color:#88cbbd!important}
html[data-theme="dark"] .home-page .home-skill-grid a:nth-child(4){background:#1b3549;border-top-color:#83aac8!important}
html[data-theme="dark"] .home-page .home-skill-grid a:hover{background:#245362}
html[data-theme="dark"] .planner-drawer{background:#143847}
html[data-theme="dark"] .practice-page .compact-library .library-heading{background:#081f2c;border-color:#4a7881}
html[data-theme="dark"] .practice-page .compact-library .library-heading::before{background-image:linear-gradient(90deg,rgba(2,20,32,.37) 0%,rgba(2,20,32,.19) 52%,transparent 75%),var(--study-art)}
html[data-theme="dark"] .tips-page .tips-hero{background-color:#081f2c}
html[data-theme="dark"] .tips-page .tips-hero::before{background:linear-gradient(90deg,rgba(2,20,32,.73),rgba(2,20,32,.43) 53%,transparent 85%)}
@media(min-width:651px) and (max-width:1200px){
  .home-page .study-stage img{object-position:85% center}
  .home-page .home-hero::after{background:linear-gradient(90deg,rgba(5,26,43,.8),rgba(5,26,43,.74) 75%,transparent 100%)}
  html[data-theme="dark"] .home-page .home-hero::after{background:linear-gradient(90deg,rgba(3,20,33,.8),rgba(3,20,33,.74) 75%,transparent 100%)}
}
@media(max-width:650px){
  .home-page .home-hero::after{background:linear-gradient(180deg,rgba(4,43,61,.89),rgba(4,43,61,.74) 70%,rgba(4,43,61,.05) 100%)}
  html[data-theme="dark"] .home-page .home-hero::after{background:linear-gradient(180deg,rgba(3,20,33,.9),rgba(3,20,33,.72) 58%,transparent 100%)}
}

/* Homepage spacing and controls from the selected day and night references. */
.home-page{--max:1360px}
.home-page .header-inner{width:min(1180px,calc(100% - 64px));min-height:78px}
.home-page .theme-toggle{min-height:42px;padding:10px 14px}
.home-page .home-hero-actions .button{min-width:260px;background:#ffb780;border-color:#ffb780;color:#123b4a}
.home-page .home-hero-actions .button:hover{background:#ffd0aa;border-color:#ffd0aa}
.home-page .mock-facts{max-width:560px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding-top:20px}
.home-page .mock-facts span+span{border-left:1px solid #ffffff80;padding-left:24px}
.home-page .mock-facts strong{font-size:15px;margin-bottom:5px}
.home-page .mock-facts span{font-size:12px}
html:not([data-theme="dark"]) .home-page .site-header{background:#eaf7f5}
html[data-theme="dark"] .home-page .site-header{background:#071f2c}
html[data-theme="dark"] .home-page .header-cta{background:#ffb780;border-color:#ffb780;color:#123b4a}
html[data-theme="dark"] .home-page .header-cta:hover{background:#ffd0aa;border-color:#ffd0aa}
@media(min-width:851px){
  .home-page .home-hero h1{max-width:none;font-size:clamp(52px,4.3vw,74px);font-weight:700;letter-spacing:-.055em;line-height:1.06}
  .home-page .home-hero-copy>p.hero-description{max-width:550px;font-size:18px;line-height:1.55;margin:30px 0 31px}
  .home-page .home-hero-actions{gap:18px 30px}
  .home-page .home-secondary-link{font-size:14px}
}
@media(max-width:800px){.home-page .header-inner{width:calc(100% - 40px);min-height:76px}}
@media(max-width:560px){
  .home-page .header-inner{width:calc(100% - 32px);min-height:72px}
  .home-page .theme-toggle{min-height:37px;padding:7px 10px}
  .home-page .home-hero-actions .button{min-width:0}
  .home-page .mock-facts span+span{padding-left:10px}
  .home-page .mock-facts strong{font-size:12px}
  .home-page .mock-facts span{font-size:10px}
}

/* Night surfaces and action colors are separate from question selection colors. */
html[data-theme="dark"] .site-header,
html[data-theme="dark"] .home-page .site-header{background:var(--desk-bar)}
html[data-theme="dark"] .site-footer{background:#080f19}
html[data-theme="dark"] .home-footer-inner{color:var(--muted)}
html[data-theme="dark"] .home-page .home-hero{background:var(--paper);border-bottom-color:var(--line)}
html[data-theme="dark"] .home-page .home-hero h1 em,
html[data-theme="dark"] .home-page .home-hero-copy .eyebrow{color:var(--action-bg)}
html[data-theme="dark"] .home-page .home-skills{background:var(--paper)}
html[data-theme="dark"] .home-page .home-skill-grid a:nth-child(1){background:#17333f;border-top-color:#79d6cc!important}
html[data-theme="dark"] .home-page .home-skill-grid a:nth-child(2){background:#1b324a;border-top-color:#82bce5!important}
html[data-theme="dark"] .home-page .home-skill-grid a:nth-child(3){background:#19373c;border-top-color:#8dd9bd!important}
html[data-theme="dark"] .home-page .home-skill-grid a:nth-child(4){background:#24354b;border-top-color:#a4c8e4!important}
html[data-theme="dark"] .home-page .home-skill-grid a:hover{background:var(--secondary-hover)}
html[data-theme="dark"] .planner-drawer{background:var(--sage)}
html[data-theme="dark"] .home-page .home-hero-copy .resume-card{background:#122233e6;border-left-color:var(--action-bg)}
html[data-theme="dark"] .home-page .home-hero-copy .resume-card .resume-label{color:var(--action-bg)}
html[data-theme="dark"] .home-page .home-hero-copy .resume-card p:not(.resume-label){color:var(--soft-text)}
html[data-theme="dark"] .home-page .home-secondary-link{text-decoration-color:var(--action-bg)}
html[data-theme="dark"] .practice-page .compact-library .library-heading,
html[data-theme="dark"] .tips-page .tips-hero{background-color:var(--desk-bar);border-color:var(--line)}
html[data-theme="dark"] .catalog-card.is-pending{background:#111f2e;border-color:#2d4054}
html[data-theme="dark"] .catalog-card.is-pending h3{color:var(--muted)}
html[data-theme="dark"] .catalog-card.is-pending .catalog-number,
html[data-theme="dark"] .catalog-card.is-pending .catalog-action{color:var(--muted)!important}
html[data-theme="dark"] .tip-list button[aria-pressed="true"]{background:var(--answer-hover);border-left-color:var(--teal)}

html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .header-cta,
html[data-theme="dark"] .button.dialog-secondary,
html[data-theme="dark"] .in-test .desk-back,
html[data-theme="dark"] .in-test .desk-tool,
html[data-theme="dark"] .score-dialog-head .desk-tool,
html[data-theme="dark"] .in-test .part-nav-footer>button,
html[data-theme="dark"] .in-test .passage-toolbar-actions button:not([aria-pressed="true"]),
html[data-theme="dark"] .catalog-pagination button,
html[data-theme="dark"] .speaking-actions .inline-button,
html[data-theme="dark"] .practice-preparation .inline-button{
  background:var(--secondary-bg);border-color:var(--secondary-border);color:var(--secondary-ink)
}
html[data-theme="dark"] .theme-toggle:hover,
html[data-theme="dark"] .header-cta:hover,
html[data-theme="dark"] .button.dialog-secondary:hover:not(:disabled),
html[data-theme="dark"] .in-test .desk-back:hover,
html[data-theme="dark"] .in-test .desk-tool:hover:not(:disabled),
html[data-theme="dark"] .score-dialog-head .desk-tool:hover,
html[data-theme="dark"] .in-test .part-nav-footer>button:hover:not(:disabled),
html[data-theme="dark"] .in-test .passage-toolbar-actions button:hover:not(:disabled):not([aria-pressed="true"]),
html[data-theme="dark"] .catalog-pagination button:hover:not(:disabled),
html[data-theme="dark"] .speaking-actions .inline-button:hover:not(:disabled),
html[data-theme="dark"] .practice-preparation .inline-button:hover:not(:disabled){
  background:var(--secondary-hover);border-color:#88aac4;color:var(--secondary-ink)
}

html[data-theme="dark"] .button-primary,
html[data-theme="dark"] .button-dark,
html[data-theme="dark"] .home-page .home-hero-actions .button,
html[data-theme="dark"] .home-page .header-cta,
html[data-theme="dark"] .in-test .desk-finish{
  background:var(--action-bg);border-color:var(--action-bg);color:var(--action-ink)
}
html[data-theme="dark"] .button-primary:hover:not(:disabled),
html[data-theme="dark"] .button-dark:hover:not(:disabled),
html[data-theme="dark"] .home-page .home-hero-actions .button:hover,
html[data-theme="dark"] .home-page .header-cta:hover,
html[data-theme="dark"] .in-test .desk-finish:hover:not(:disabled){
  background:var(--action-hover);border-color:var(--action-hover);color:var(--action-ink)
}
html[data-theme="dark"] .button-primary:active:not(:disabled),
html[data-theme="dark"] .button-dark:active:not(:disabled),
html[data-theme="dark"] .home-page .home-hero-actions .button:active,
html[data-theme="dark"] .home-page .header-cta:active,
html[data-theme="dark"] .in-test .desk-finish:active:not(:disabled){
  background:var(--action-pressed);border-color:var(--action-pressed);color:var(--action-ink)
}
html[data-theme="dark"] button.catalog-action:not(.catalog-retry){background:var(--action-bg);border-color:var(--action-bg);color:var(--action-ink)!important}
html[data-theme="dark"] button.catalog-action:not(.catalog-retry):hover{background:var(--action-hover);border-color:var(--action-hover)}
html[data-theme="dark"] button.catalog-action:not(.catalog-retry):active{background:var(--action-pressed);border-color:var(--action-pressed)}
html[data-theme="dark"] button.catalog-retry{background:var(--secondary-bg);border-color:var(--action-bg)!important;color:var(--action-bg)!important}
html[data-theme="dark"] button.catalog-retry:hover{background:var(--secondary-hover);color:var(--action-hover)!important}

/* Keep navigation geometry identical when its theme label changes. */
html{scrollbar-gutter:stable}
.site-header .header-inner{min-height:78px}
.site-header .theme-toggle{width:124px;flex:0 0 124px;height:44px;padding:10px 12px;font-size:14px}
.site-header .theme-toggle-label{display:block;min-width:70px;text-align:center}
.site-header .language-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 46px;width:46px;height:44px;padding:0;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font:800 14px/1 "Segoe UI",sans-serif;cursor:pointer}
.site-header .language-toggle:hover{background:var(--sage);border-color:var(--teal)}
.site-header .language-toggle:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.site-header .main-nav a,.site-header .header-cta{font-size:14px}

/* A readable test library: five rows on desktop, cards on smaller screens. */
.practice-page{--max:1360px}
.practice-page .compact-library{padding:24px 0;min-height:calc(100dvh - 130px)}
.practice-page .compact-library .library-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:0;padding:0;margin:0 0 20px;background:none;border:0;color:var(--ink);overflow:visible}
.practice-page .compact-library .library-heading::before{display:none}
.practice-page .compact-library .library-heading h1{font-size:38px;line-height:1.15;color:var(--ink);letter-spacing:-.04em;margin:0}
.practice-page .compact-library .library-heading>p{font-size:16px;line-height:1.5;color:var(--muted);margin:0;max-width:none}
.practice-page .compact-library .skill-tabs{margin-bottom:20px;background:var(--white);border-color:var(--line)}
.practice-page .compact-library .skill-tabs button{font-size:17px;padding:14px 12px;min-height:50px}
.practice-page .test-catalog{grid-template-columns:1fr;gap:10px}
.practice-page .catalog-card{display:grid;grid-template-columns:minmax(250px,1.35fr) minmax(160px,.65fr) minmax(310px,1fr);align-items:center;gap:28px;min-height:86px;padding:16px 22px;background:#fafdff;border:1px solid #a9c7ce;border-left:3px solid #4796a5}
.practice-page .catalog-overview{min-width:0}
.practice-page .catalog-card h3{font-family:inherit;font-size:22px;font-weight:650;line-height:1.3;letter-spacing:-.025em;margin:0 0 5px}
.practice-page .catalog-meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:15px;line-height:1.45;color:var(--muted);margin:0}
.practice-page .catalog-progress-label{font-size:14px;line-height:1.5;font-weight:650;margin:0 0 7px;padding:0;gap:10px}
.practice-page .catalog-status{font-size:14px;text-align:left;letter-spacing:0;color:var(--muted)}
.practice-page .catalog-progress-track{height:7px;background:#d7e7ed}
.practice-page .catalog-progress-fill{background:#227d86}
.practice-page .catalog-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0;min-height:44px;font-size:15px}
.practice-page .catalog-band{font-size:15px;color:var(--muted);font-weight:600;white-space:nowrap}
.practice-page .catalog-band.is-scored-band{font-size:18px;line-height:1.25;padding:8px 10px;color:var(--band-ink);background:var(--band-bg);border-color:var(--band-border)}
.practice-page .catalog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}
.practice-page button.catalog-action{font-size:15px;font-weight:700;line-height:1.3;min-height:42px;min-width:76px;padding:10px 12px;background:#176675;border:1px solid #176675;color:#fff!important;cursor:pointer}
.practice-page button.catalog-action:hover{background:#124d60;border-color:#124d60}
.practice-page button.catalog-retry{background:transparent;border-color:#176675!important;color:#176675!important}
.practice-page button.catalog-retry:hover{background:#e3f0f2;color:#123b4a!important}
.practice-page .catalog-unavailable{font-size:14px;color:var(--muted);font-weight:500}
.practice-page .catalog-card.is-pending{background:#e7f0f3;border-color:#c2d5db;border-left-color:#91afb9}
.practice-page .catalog-card.is-pending h3{color:var(--muted)}
.practice-page .catalog-card.is-completed{border-left-color:#258477}
.practice-page .catalog-card.is-completed .catalog-status{color:#216f63}
.practice-page .catalog-card.is-in-progress{border-left-color:#a87632}
.practice-page .catalog-pagination{margin-top:20px;gap:24px;font-size:16px;font-weight:600;line-height:1.3}
.practice-page .catalog-pagination button{min-height:42px;padding:9px 16px;font-size:16px;font-weight:600}
.practice-page .home-footer{padding:16px 0}
html[data-theme="dark"] .practice-page .compact-library .library-heading{background:none;border:0}
html[data-theme="dark"] .practice-page .catalog-card{background:#193146;border-color:#435f78;border-left-color:#7cb7df}
html[data-theme="dark"] .practice-page .catalog-card.is-pending{background:#122333;border-color:#2d4459;border-left-color:#4c6880}
html[data-theme="dark"] .practice-page .catalog-card.is-completed{border-left-color:#79d6cc}
html[data-theme="dark"] .practice-page .catalog-card.is-completed .catalog-status{color:#9be3cf}
html[data-theme="dark"] .practice-page .catalog-card.is-in-progress{border-left-color:var(--action-bg)}
html[data-theme="dark"] .practice-page .catalog-card.is-in-progress .catalog-status{color:var(--action-bg)}
html[data-theme="dark"] .practice-page .catalog-progress-track{background:#304c64}
html[data-theme="dark"] .practice-page .catalog-progress-fill{background:#79d6cc}
html[data-theme="dark"] .practice-page button.catalog-action:not(.catalog-retry){background:var(--action-bg);border-color:var(--action-bg);color:var(--action-ink)!important}
html[data-theme="dark"] .practice-page button.catalog-action:not(.catalog-retry):hover{background:var(--action-hover);border-color:var(--action-hover)}
html[data-theme="dark"] .practice-page button.catalog-action:not(.catalog-retry):active{background:var(--action-pressed);border-color:var(--action-pressed)}
html[data-theme="dark"] .practice-page button.catalog-retry{background:var(--secondary-bg);border-color:var(--action-bg)!important;color:var(--action-bg)!important}
html[data-theme="dark"] .practice-page button.catalog-retry:hover{background:var(--secondary-hover);color:var(--action-hover)!important}

/* Skill cards have a short description and a plainly labeled action. */
.home-page{--skill-action:#176675;--skill-action-hover:#124d60;--skill-action-ink:#fff}
.home-page .skill-reading{--skill-accent:#176d68;--skill-surface:#f2fcf8;--skill-icon:#d2eee5}
.home-page .skill-listening{--skill-accent:#216992;--skill-surface:#f3faff;--skill-icon:#d5eafb}
.home-page .skill-writing{--skill-accent:#956022;--skill-surface:#fffaf0;--skill-icon:#fae8c8}
.home-page .skill-speaking{--skill-accent:#3c6092;--skill-surface:#f5f8ff;--skill-icon:#dfe8fa}
html[data-theme="dark"] .home-page{--skill-action:var(--action-bg);--skill-action-hover:var(--action-hover);--skill-action-ink:var(--action-ink)}
html[data-theme="dark"] .home-page .skill-reading{--skill-accent:#79d6cc;--skill-surface:#17373e;--skill-icon:#275158}
html[data-theme="dark"] .home-page .skill-listening{--skill-accent:#9bcdf3;--skill-surface:#1c354b;--skill-icon:#2d4e69}
html[data-theme="dark"] .home-page .skill-writing{--skill-accent:#f6bf69;--skill-surface:#233343;--skill-icon:#4a4438}
html[data-theme="dark"] .home-page .skill-speaking{--skill-accent:#b6cdf6;--skill-surface:#25364f;--skill-icon:#385172}
.home-page .home-skills{padding:32px 0 28px}
.home-page .home-section-head{margin-bottom:20px}
.home-page .home-section-head h2{font-size:32px;font-weight:650;line-height:1.2}
.home-page .home-skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;background:none;border:0}
.home-page .home-skill-grid a,
html:not([data-theme="dark"]) .home-page .home-skill-grid a:nth-child(n),
html[data-theme="dark"] .home-page .home-skill-grid a:nth-child(n){display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-areas:"icon title" "description description" "action action";align-items:center;gap:16px;min-height:230px;padding:22px;background:var(--skill-surface);border:1px solid var(--line)!important;border-top:3px solid var(--skill-accent)!important;text-decoration:none;color:var(--ink)}
.home-page .home-skill-grid .skill-card-icon{grid-area:icon;display:grid;place-items:center;width:42px;height:42px;background:var(--skill-icon);color:var(--skill-accent);margin:0}
.skill-card-icon svg{width:27px;height:27px}
.home-page .home-skill-grid strong{grid-area:title;font-size:28px;font-weight:650;line-height:1.2;letter-spacing:-.025em}
.home-page .home-skill-grid .skill-card-description{grid-area:description;font-size:17px;line-height:1.55;color:var(--soft-text);margin:0;align-self:start}
.home-page .home-skill-grid .skill-card-action{grid-area:action;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:10px 12px;background:var(--skill-action);color:var(--skill-action-ink);font-size:16px;font-weight:650;line-height:1.3;margin:0;align-self:end}
.home-page .home-skill-grid .skill-card-action span{font-size:20px;line-height:1;color:inherit;margin:0;flex:none}
.home-page .home-skill-grid a:hover .skill-card-action{background:var(--skill-action-hover)}
.home-page .home-skill-grid a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}

.home-page main>.planner-drawer{background:var(--paper);border:0;padding:0 0 28px}
.home-page .planner-summary{background:var(--white);border:1px solid var(--line);min-height:106px;padding:20px 24px}
.home-page .planner-summary>span:first-child{display:grid;gap:6px}
.home-page .planner-summary strong{font-family:inherit;font-size:28px;font-weight:650;line-height:1.25}
.home-page .planner-summary small{font-size:16px;line-height:1.45}
.home-page .planner-action{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:174px;min-height:44px;padding:10px 14px;border:1px solid var(--teal);background:var(--white);color:var(--teal);font-size:16px;font-weight:650}
.home-page .planner-expand{font-size:23px}
.planner-close-label{display:none}
.planner-drawer[open] .planner-open-label{display:none}
.planner-drawer[open] .planner-close-label{display:inline}
.home-page .planner-drawer-content{border:1px solid var(--line);border-top:0;background:var(--white);padding:24px}
.home-page .planner-fields label,.home-page .day-fieldset legend{font-size:17px}
.home-page .planner-fields select{font-size:17px;min-height:48px}
.home-page .day-choices span{font-size:15px;min-height:44px}
.home-page .planner-drawer .button{font-size:16px}
.home-footer-inner{font-size:13px}
.home-footer-inner{flex-wrap:wrap}
.legal-footer-links{display:flex;gap:18px;flex-wrap:wrap}
.legal-footer-links a{color:inherit;text-underline-offset:3px}
.legal-footer-links a:hover{color:#fff}
html[data-theme="dark"] .home-page .planner-action{background:var(--secondary-bg);border-color:var(--secondary-border);color:var(--secondary-ink)}

@media(max-width:1099px){
  .practice-page .test-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .practice-page .catalog-card{display:flex;flex-direction:column;align-items:stretch;gap:16px;min-height:214px;padding:18px}
  .practice-page .catalog-progress{margin-top:auto}
  .practice-page .catalog-card-bottom{gap:8px}
  .practice-page .catalog-meta{gap:3px 12px}
  .home-page .home-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:699px){
  .practice-page .compact-library{padding:20px 0}
  .practice-page .compact-library .library-heading{display:block;margin-bottom:16px}
  .practice-page .compact-library .library-heading h1{font-size:32px}
  .practice-page .compact-library .library-heading>p{font-size:15px;margin-top:8px}
  .practice-page .compact-library .skill-tabs{margin-bottom:16px}
  .practice-page .compact-library .skill-tabs button{font-size:15px;padding:12px 4px;min-height:46px}
  .practice-page .test-catalog{grid-template-columns:1fr;gap:12px}
  .practice-page .catalog-card{min-height:206px;gap:14px}
  .practice-page .catalog-card h3{font-size:23px}
  .practice-page .catalog-pagination{gap:12px;font-size:14px}
  .practice-page .catalog-pagination button{font-size:14px;padding:9px 12px}
  .home-page .home-skills{padding:26px 0}
  .home-page .home-section-head h2{font-size:28px}
  .home-page .planner-summary{align-items:start;flex-direction:column;gap:18px;padding:20px}
  .home-page .planner-summary strong{font-size:26px}
  .home-page .planner-action{width:100%}
  .home-page .planner-drawer-content{padding:20px}
}
@media(max-width:560px){
  .site-header .theme-toggle{width:40px;flex-basis:40px;height:40px;padding:8px}
  .site-header .theme-toggle-label{display:none}
  .site-header .main-nav a{font-size:13px}
  .home-page .home-skill-grid{grid-template-columns:1fr;gap:14px}
  .home-page .home-skill-grid a,
  html:not([data-theme="dark"]) .home-page .home-skill-grid a:nth-child(n),
  html[data-theme="dark"] .home-page .home-skill-grid a:nth-child(n){min-height:210px;padding:20px}
}
@media(max-width:359px){
  .practice-page .catalog-card-bottom{flex-wrap:wrap}
  .practice-page .catalog-actions{width:100%;justify-content:flex-start}
}
@media(max-width:560px){
  .site-header .header-inner{gap:6px}
  .site-header .main-nav{gap:8px}
  .site-header .main-nav a{font-size:12px}
  .site-header .language-toggle{flex-basis:40px;width:40px;height:40px}
}
