@import url('/account.css');
:root{--blue:#203f78;--ink:#252a32;--muted:#626974;--line:#e4e7eb;--paper:#f4efdf;--brown:#714a2c}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:17px;line-height:1.85}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea{font:inherit}button,a.btn{cursor:pointer}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #c78222;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,4vw,44px);line-height:1.5;letter-spacing:.04em}h2{font-size:25px;line-height:1.6}h3{font-size:20px}p{margin-bottom:1.3em}header{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1080px)/2));gap:20px}.logo{font-size:29px;line-height:1;font-weight:850;color:var(--blue);letter-spacing:.04em}.logo small{display:block;font-size:10px;letter-spacing:.2em;margin-top:8px}.header-note{font-size:14px;color:var(--muted)}main{max-width:1080px;margin:auto;padding:44px 28px 140px;min-height:80vh}.intro{padding:12px 0 34px}.intro h1{font-size:40px;margin-bottom:10px}.eyebrow{font-size:13px;font-weight:700;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;margin-bottom:10px}.muted{color:var(--muted)}.small{font-size:14px}.section-top{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:25px;margin-bottom:25px}.section-top h2{margin:0;font-size:22px}.badge{font-size:13px;background:#edf2fa;color:var(--blue);padding:3px 10px;border-radius:3px;display:inline-block}.feature{display:grid;grid-template-columns:310px 1fr;gap:65px;align-items:center}.book-stage{background:#f6f6f4;padding:26px 38px;border-radius:8px}.book{display:block;position:relative;background:var(--paper);color:var(--brown);border:1px solid #d4c7ad;border-left:9px solid #a68b64;box-shadow:5px 8px 14px #29201014;border-radius:2px 5px 5px 2px;aspect-ratio:0.7;padding:22px 18px 14px;transition:transform .2s}.book:hover{transform:translateY(-3px);text-decoration:none}.book-label{font-size:10px;letter-spacing:.17em;border-bottom:1px solid #baa88b;padding-bottom:8px}.book-title{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:31px;line-height:1.5;font-weight:700;margin-top:17px;letter-spacing:.1em}.book-grade{font-family:serif;font-size:19px}.book svg{width:100%;height:112px;margin:8px 0}.book-foot{font-size:10px;letter-spacing:.12em;border-top:1px solid #baa88b;padding-top:9px}.feature-copy h2{font-size:32px;margin:10px 0 12px}.feature-copy .lead{font-size:22px;line-height:1.9;margin:20px 0}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:23px 0 16px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:10px 22px;border:1px solid var(--blue);background:var(--blue);color:white;border-radius:5px;font-weight:650;line-height:1.6;text-align:center}.btn:hover{background:#18335f;text-decoration:none}.btn.secondary{background:white;color:var(--blue);border-color:#bec9dc}.btn.secondary:hover{background:#f2f5fa}.btn.quiet{border-color:var(--line);background:#fff;color:var(--ink)}.text-link{border:0;background:transparent;color:var(--blue);padding:5px 0;text-decoration:underline}.how{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:65px 0 30px;border-top:1px solid var(--line);padding-top:35px}.how .num{font:italic 27px Georgia;color:#8c7658}.how h3{margin:10px 0}.how p{font-size:15px;color:var(--muted)}footer{margin-top:40px;border-top:1px solid var(--line);padding-top:22px;font-size:13px;color:var(--muted)}#nav{position:fixed;bottom:0;left:0;right:0;background:#fffffffa;border-top:1px solid var(--line);display:flex;justify-content:center;gap:90px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));z-index:10}#nav a{display:flex;min-width:92px;flex-direction:column;align-items:center;gap:2px;font-size:13px;color:var(--muted)}#nav a.active{color:var(--blue);font-weight:700}#nav svg{width:23px;height:23px}.crumb{font-size:14px;margin-bottom:25px;color:var(--muted)}.content-section{margin-top:55px}.toc{list-style:none;padding:0;border-top:1px solid var(--line)}.toc li{border-bottom:1px solid var(--line)}.toc a{padding:18px 2px;display:flex;gap:20px;align-items:center;color:var(--ink)}.toc .n{color:#907553;font-family:Georgia;font-size:21px}.toc .end{margin-left:auto;color:var(--muted);font-size:13px}.rule-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin:20px 0}.rule-grid div{text-align:center;padding:20px 8px}.rule-grid strong{font-size:25px;display:block}.rule-grid span{font-size:13px;color:var(--muted)}.note{background:#f6f7f9;padding:18px 22px;border-radius:4px;font-size:14px}.resume{border-left:3px solid var(--blue);background:#f3f6fb;padding:20px 24px;margin:0 0 30px}.reader{max-width:720px;margin:auto}.reader p{line-height:2.05}.reader h1{font-size:32px}.reader h2{margin-top:36px}.reader-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:24px}.reader-bar span{font-size:14px;color:var(--muted)}.reader figure{margin:28px 0;background:#faf7f0;padding:22px}.reader figure svg{display:block;max-width:470px;width:100%;margin:auto}.reader figcaption{font-size:13px;color:#655944;text-align:center;margin-top:10px}.key{border-left:3px solid #aa8c61;background:#faf8f2;padding:20px 24px;margin:30px 0}.key strong{display:block;font-size:14px;color:var(--brown);margin-bottom:8px}.sources{font-size:14px;border-top:1px solid var(--line);padding-top:18px;margin:35px 0}.sources a{display:block;overflow-wrap:anywhere}.quiz{max-width:750px;margin:auto}.progress{height:5px;background:#e7ebf1;border-radius:3px;margin:20px 0 35px;overflow:hidden}.progress i{display:block;background:var(--blue);height:100%;transition:width .2s}.question{font-size:25px;line-height:1.7;margin:25px 0}.options{display:grid;gap:12px}.option{display:flex;text-align:left;align-items:center;gap:15px;border:1px solid #d7dde7;background:white;padding:17px 20px;border-radius:5px;color:var(--ink);line-height:1.7;min-height:67px}.option .letter{display:flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border:1px solid #d6dce5;border-radius:50%;font-size:14px}.option.selected{border:2px solid var(--blue);padding:16px 19px;background:#eef3fc}.option.selected .letter{background:var(--blue);color:#fff;border-color:var(--blue)}.option:disabled{opacity:1}.feedback{margin-top:22px;background:#f1f5fa;border-left:3px solid var(--blue);padding:20px 24px}.feedback.wrong{background:#faf5ed;border-color:#ab7b3d}.feedback h3{margin:0 0 8px}.feedback p{margin:5px 0;font-size:16px}.split{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:25px}.question-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:8px;margin:25px 0}.qnum{border:1px solid #ccd3df;border-radius:4px;background:#fff;min-height:43px;color:var(--ink)}.qnum.answered{background:#eaf0fa;border-color:var(--blue);color:var(--blue)}.qnum.current{outline:2px solid var(--blue);outline-offset:2px}.practice{margin:42px 0}.practice-item{border-top:1px solid var(--line);padding:25px 0}.practice .question{font-size:20px}.empty{padding:55px 20px;text-align:center;background:#f7f8fa}.empty h2{font-size:24px}.history-row{border-bottom:1px solid var(--line);padding:22px 0;display:flex;justify-content:space-between;gap:20px;align-items:center}.score{text-align:center;padding:30px 20px}.score .score-number{font-size:76px;line-height:1.3;font-weight:700;color:var(--blue)}.score .score-number small{font-size:22px}.score h1{margin:15px 0}.review{padding:25px 0;border-top:1px solid var(--line)}.review h3{line-height:1.8}.review .correct{color:var(--blue)}.review .incorrect{color:#925c28}.certificate{background:#fbfaf5;border:1px solid #c9c1ae;padding:46px 30px;text-align:center;color:#313846;box-shadow:0 4px 20px #00000006}.certificate .cert-brand{font-size:22px;letter-spacing:.1em;font-weight:800;color:var(--blue)}.certificate .cert-small{font-size:12px;letter-spacing:.2em;color:#77766e}.certificate h2{font-family:"Yu Mincho",serif;font-size:35px;margin:42px 0 10px}.certificate .pass{font-family:"Yu Mincho",serif;font-size:30px;letter-spacing:.4em;padding-left:.4em}.certificate .cert-rule{width:65px;border:0;border-top:1px solid #b6a886;margin:27px auto}.certificate .cert-name{font-size:21px;overflow-wrap:anywhere}.certificate .cert-bottom{font-size:12px;margin-top:45px;color:#6d726e}label{display:block;margin:22px 0 8px;font-size:15px}input,textarea{width:100%;border:1px solid #cbd2dc;border-radius:4px;padding:12px 15px;color:var(--ink);background:#fff}textarea{min-height:110px;resize:vertical}#toast{position:fixed;bottom:110px;left:50%;transform:translateX(-50%);max-width:90vw;padding:10px 22px;background:#25364c;color:white;border-radius:5px;z-index:30;display:none;font-size:14px}.hidden{display:none!important}.saved{font-size:13px;color:var(--muted)}.check-row{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);gap:20px}details summary{cursor:pointer;color:var(--blue)}.exam-mode main{padding-bottom:65px}.exam-mode header{justify-content:center}.exam-mode .header-note{display:none}.exam-mode #nav{display:none}@media(max-width:700px){header{height:74px;padding:0 22px}.logo{font-size:25px}.header-note{font-size:12px}main{padding:30px 22px 130px}.intro{padding:5px 0 25px}.intro h1{font-size:30px}.intro p{font-size:15px}.feature{grid-template-columns:1fr;gap:26px}.book-stage{max-width:290px;width:100%;padding:24px 38px;margin:auto}.book-title{font-size:30px}.book svg{height:100px}.feature-copy h2{font-size:27px}.feature-copy .lead{font-size:19px;margin:15px 0}.home-feature{grid-template-columns:165px 1fr;gap:20px;align-items:start}.home-feature .book-stage{padding:10px;background:none}.home-feature .book{padding:12px 10px 9px;border-left-width:6px}.home-feature .book-title{font-size:22px;margin-top:12px}.home-feature .book-label,.home-feature .book-foot{font-size:8px}.home-feature .book-grade{font-size:16px}.home-feature .book svg{height:72px;margin:3px 0}.home-feature .feature-copy{padding-top:9px}.home-feature .feature-copy h2{font-size:21px;line-height:1.6}.home-feature .feature-copy .lead{font-size:15px}.home-feature .actions{margin-top:17px}.home-feature .btn{padding:9px 12px;font-size:14px;min-height:44px}.home-feature .badge{font-size:12px}.how{gap:22px;margin-top:38px;grid-template-columns:1fr}.how>div{display:grid;grid-template-columns:35px 1fr;gap:0 14px}.how .num{grid-row:span 2}.how h3{margin:0 0 4px;font-size:18px}.how p{grid-column:2;margin:0}.section-top{margin-bottom:20px}.section-top h2{font-size:19px}.section-top .small{font-size:12px}#nav{gap:0;justify-content:space-around}#nav a{min-width:75px;font-size:12px}.actions .btn{flex:1}.rule-grid{grid-template-columns:repeat(2,1fr)}.reader h1{font-size:27px}.reader p{font-size:17px}.reader-bar .btn{padding:8px 12px;min-height:42px;font-size:14px}.question{font-size:22px}.option{padding:15px 14px;font-size:16px}.option.selected{padding:14px 13px}.question-grid{grid-template-columns:repeat(5,1fr)}.certificate{padding:33px 15px}.certificate h2{font-size:27px}.certificate .cert-bottom{font-size:11px}.split .btn{padding:10px 14px;font-size:15px}.history-row{align-items:flex-start}.toc .end{font-size:12px}.reader figure{padding:12px}.content-section{margin-top:40px}}@media(max-width:370px){.home-feature{grid-template-columns:130px 1fr;gap:10px}.home-feature .book-title{font-size:18px}.home-feature .book svg{height:55px}main{padding-left:16px;padding-right:16px}}
main:focus{outline:none}.empty>svg{width:42px;height:42px;color:var(--blue);margin-bottom:15px}
.grass-book{background:#edf1e6;color:#3e673e;border-color:#b6c6aa;border-left-color:#78956f}.grass-book .book-label,.grass-book .book-foot{border-color:#aac0a2}.grass-cover{margin-top:42px;padding:20px 0;border-top:1px solid #aac0a2;border-bottom:1px solid #aac0a2;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:17px;line-height:2;color:#45683f}.second-course{margin-top:44px;padding-top:44px;border-top:1px solid var(--line)}.book-stage>.book{width:100%;aspect-ratio:.82;overflow:hidden}
@media(max-width:700px){.feature:not(.home-feature) .feature-copy{order:-1}.feature:not(.home-feature) .book-stage{max-width:240px}.intro h1{margin-top:5px}.home-feature .book-label{white-space:nowrap;letter-spacing:0;font-size:7px}.home-feature .book-foot{letter-spacing:0;font-size:8px}}
@media(max-width:700px){.feature:not(.home-feature) .book-stage{padding:22px 24px}.feature:not(.home-feature) .book-title{font-size:26px;letter-spacing:.05em}.feature:not(.home-feature) .book-label{font-size:9px;letter-spacing:0}.home-feature .btn{font-size:13px;padding:9px 8px}}

/* STUDYY common textbook-cover component */
:root{--studyy-book-width:180px;--studyy-book-height:270px}
.feature{grid-template-columns:212px minmax(0,1fr);gap:54px;align-items:start}
.book-stage{width:212px;max-width:none;padding:16px;display:flex;justify-content:center;align-items:flex-start;align-self:start}
.book-stage>.book-cover{box-sizing:border-box;width:var(--studyy-book-width);min-width:var(--studyy-book-width);max-width:var(--studyy-book-width);height:var(--studyy-book-height);min-height:var(--studyy-book-height);max-height:var(--studyy-book-height);aspect-ratio:2/3;overflow:hidden;flex:0 0 auto;padding:14px 14px 12px;border-left-width:7px;display:grid;grid-template-rows:18px 72px 22px minmax(0,1fr) 27px;align-items:center;transition:transform .2s}
.book-cover__brand{align-self:start;border-bottom:1px solid currentColor;padding-bottom:4px;font-size:8px;font-weight:750;line-height:1;letter-spacing:.2em;opacity:.72;white-space:nowrap}
.book-cover__title{align-self:end;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:26px;font-weight:700;line-height:1.15;letter-spacing:.08em}
.book-cover__title span{display:block;white-space:nowrap}
.book-cover__grade{align-self:center;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:14px;line-height:1.2;white-space:nowrap}
.book-cover__art{align-self:stretch;min-height:0;margin:6px 0;display:flex;align-items:center;justify-content:center;gap:7px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;font-family:Georgia,"Yu Mincho",serif;font-size:12px;font-weight:700;letter-spacing:.08em;opacity:.78;white-space:nowrap}
.book-cover__art i{display:block;width:18px;height:1px;background:currentColor;opacity:.55}
.book-cover__copy{align-self:end;border-top:1px solid currentColor;padding-top:6px;font-size:9px;font-weight:600;line-height:1.35;letter-spacing:.04em;white-space:nowrap}
.book-cover--bread{background:var(--paper);color:var(--brown);border-color:#d4c7ad;border-left-color:#a68b64}
.book-cover--grass{background:#edf1e6;color:#3e673e;border-color:#b6c6aa;border-left-color:#78956f}
.book-cover--cream{background:#f8f0d8;color:#684b22;border-color:#d5c59b;border-left-color:#a98445}
.book-cover--djibouti{background:#eaf2f3;color:#274c5b;border-color:#b8ccd0;border-left-color:#4d7895}
.book-cover--compact .book-cover__title{font-size:23px;letter-spacing:.035em}
.home-feature .book-stage{width:var(--studyy-book-width);min-width:var(--studyy-book-width);padding:0;background:none;margin:0}
.home-feature{grid-template-columns:var(--studyy-book-width) minmax(0,1fr);gap:42px;align-items:start}
.home-feature .feature-copy{padding-top:4px}
@media(max-width:767px){
  :root{--studyy-book-width:144px;--studyy-book-height:216px}
  .feature{grid-template-columns:1fr;gap:26px}
  .feature:not(.home-feature) .book-stage{width:176px;max-width:none;padding:16px;margin:auto;order:0}
  .feature:not(.home-feature) .feature-copy{order:-1}
  .home-feature{grid-template-columns:var(--studyy-book-width) minmax(0,1fr);gap:20px}
  .home-feature .book-stage{width:var(--studyy-book-width);min-width:var(--studyy-book-width);max-width:none;padding:0;margin:0}
  .book-stage>.book-cover{padding:11px 10px 9px;border-left-width:6px;grid-template-rows:15px 57px 18px minmax(0,1fr) 23px}
  .book-cover__brand{font-size:7px;padding-bottom:3px}
  .book-cover__title{font-size:20px;line-height:1.15;letter-spacing:.06em}
  .book-cover--compact .book-cover__title{font-size:17px;letter-spacing:0}
  .book-cover__grade{font-size:11px}
  .book-cover__art{font-size:9px;gap:5px;margin:4px 0}
  .book-cover__art i{width:12px}
  .book-cover__copy{font-size:7.5px;padding-top:4px;letter-spacing:0}
}
@media(max-width:359px){
  :root{--studyy-book-width:128px;--studyy-book-height:192px}
  .home-feature{grid-template-columns:var(--studyy-book-width) minmax(0,1fr);gap:12px}
  .feature:not(.home-feature) .book-stage{width:160px}
  .book-stage>.book-cover{padding:10px 9px 8px;grid-template-rows:14px 50px 17px minmax(0,1fr) 21px}
  .book-cover__title{font-size:18px}
  .book-cover--compact .book-cover__title{font-size:15px}
  .book-cover__grade{font-size:10px}
  .book-cover__copy{font-size:7px}
}
.learning-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid #dbe3ef}.learning-summary:first-of-type{border-top:0}.learning-summary .text-link{flex:0 0 auto}
@media(max-width:500px){.learning-summary{align-items:flex-start;flex-direction:column;gap:4px}.history-row{flex-direction:column}.history-row .btn,.history-row .text-link{align-self:flex-start}}

/* Shared textbook visuals */
.chapter-intro{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:20px;line-height:1.9;color:#535963;border-left:2px solid #b39a72;padding-left:18px;margin:14px 0 34px}
.lesson-visual{margin:30px 0 36px;background:#f8f6ef;border:1px solid #e3ddcf;padding:22px;border-radius:4px}
.lesson-visual__title{font-weight:750;font-size:15px;letter-spacing:.06em;margin-bottom:15px;color:#4c5964}
.lesson-visual__items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:25px}
.lesson-visual__item{position:relative;min-height:92px;background:#fff;border:1px solid #d8dfe3;padding:31px 14px 15px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.55}
.lesson-visual__item:not(:last-child)::after{content:'→';position:absolute;right:-21px;top:50%;transform:translateY(-50%);color:#897654;font-size:20px}
.lesson-visual__item span{position:absolute;left:9px;top:6px;font:12px Georgia;color:#8e7b59}
.lesson-visual__item strong{font-size:15px}
.lesson-visual--compare .lesson-visual__items{grid-template-columns:repeat(2,minmax(0,1fr))}
.lesson-visual--compare .lesson-visual__item::after{content:''}
.lesson-visual figcaption{margin-top:14px;text-align:left;font-size:13px;line-height:1.7;color:#667078}
.lesson-map{display:block;width:100%;max-width:520px;margin:auto;background:#eef4f5;border:1px solid #d8e2e4}
.lesson-map text{font:14px -apple-system,BlinkMacSystemFont,"Noto Sans JP",sans-serif;fill:#304b55}
.terms{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:24px 0 34px;padding:18px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.terms>strong{margin-right:8px;font-size:14px;color:var(--muted)}
.terms span{background:#edf2f6;border-radius:3px;padding:3px 10px;font-size:14px;color:#36495a}
.learning-task{margin:34px 0;padding:22px 24px;background:#f5f7f8;border:1px solid #dce2e5;border-left:4px solid #637e8f;border-radius:3px}
.learning-task__label{font-size:12px;font-weight:750;letter-spacing:.14em;color:#63717b;margin-bottom:5px}
.learning-task h2{font-size:21px;margin:0 0 8px}
.learning-task p{margin-bottom:8px}
.learning-task ol{margin:12px 0 0;padding-left:24px}
.learning-task li{margin:5px 0}
.learning-task--observe{border-left-color:#78956f;background:#f3f6ef}
.learning-task--map{border-left-color:#4d7895;background:#eef4f5}
.learning-task--compare{border-left-color:#9a7440;background:#f8f4ec}
.learning-task--document{border-left-color:#78658f;background:#f5f2f8}
.learning-task--case{border-left-color:#9a6a58;background:#faf3ef}
.learning-task--summary{border-left-color:var(--blue);background:#f1f5fa}
@media(max-width:600px){.lesson-visual{padding:15px 12px}.lesson-visual__items{grid-template-columns:1fr;gap:12px}.lesson-visual__item{min-height:68px;padding:25px 12px 12px}.lesson-visual__item:not(:last-child)::after{content:'↓';right:auto;left:50%;top:auto;bottom:-19px;transform:translateX(-50%);z-index:2}.lesson-visual--compare .lesson-visual__items{grid-template-columns:1fr}.chapter-intro{font-size:18px}}

.lesson-image{display:block;width:100%;height:auto;max-width:640px;margin:12px auto;background:#e3f1f8}.media-credit{font-size:14px;line-height:1.7;color:#56616c;margin-top:12px;overflow-wrap:anywhere}.media-credit a{color:#203f78;text-decoration:underline}.lesson-visual{margin-left:0;margin-right:0}.lesson-visual__items{min-width:0}.lesson-visual__item strong{overflow-wrap:anywhere}@media(max-width:450px){.lesson-visual{padding:12px}.lesson-visual__items{grid-template-columns:1fr}}

.reader-bar .btn{white-space:nowrap;flex-shrink:0}@media(max-width:360px){header .brand+*{display:none}.reader h1{font-size:26px}.reader-bar{gap:8px}.reader-bar .btn{padding:10px}}

.inline-sources{white-space:nowrap;font-size:14px;margin-left:.4em}.inline-sources a{color:#244777;text-decoration:underline;padding:2px}.history-row .actions{flex-wrap:wrap}.history-row{gap:16px}@media(max-width:600px){.history-row{flex-wrap:wrap}}

.book-cover--melon{background:#f4efd0;color:#536b32;border-color:#c2bf95;border-left-color:#8b995c}

.book-cover--croquette{background:#faebcd;color:#89521f;border-color:#d8bc8b;border-left-color:#b07838}

.book-cover--tree{background:#e8eee5;color:#315d49;border-color:#b2c5b3;border-left-color:#537860}

/* Catalog filters and new textbook themes share the existing 2:3 size rules. */
.category-filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 18px}.category-filter{display:inline-flex;align-items:center;gap:9px;border:1px solid #cbd3df;border-radius:4px;padding:8px 14px;font-size:15px;color:#39475b;min-height:44px}.category-filter span{font-size:12px;opacity:.8}.category-filter.is-selected{background:var(--blue);color:white;border-color:var(--blue);font-weight:700}.category-filter:hover{text-decoration:none;background:#eef2f7}.category-filter.is-selected:hover{background:#18335f}.catalog-grid{display:grid;gap:38px}.catalog-grid .home-feature{padding-bottom:38px;border-bottom:1px solid var(--line)}.book-cover__art svg{width:100%;height:100%;max-height:80px;margin:0;display:block}.book-cover--eraser{background:#f2eee7;color:#655442;border-color:#d5c8b6;border-left-color:#9d8469}.book-cover--zipper{background:#e8edf1;color:#38556b;border-color:#bccbd6;border-left-color:#688298}.book-cover--puddle{background:#e5f0f3;color:#326476;border-color:#b5cfd8;border-left-color:#6a99aa}.book-cover--corrugated{background:#efe3cf;color:#73502d;border-color:#cdb58e;border-left-color:#a28355}.book-cover--shadow{background:#eeedf3;color:#504d6e;border-color:#c9c5d6;border-left-color:#8880a1}.book-cover--manhole{background:#e9edea;color:#455d51;border-color:#bbc9bf;border-left-color:#788e7e}.book-cover--puerto-rico{background:#e6efe9;color:#356553;border-color:#b5cbbb;border-left-color:#6e9b85}
@media(max-width:767px){.category-filter{padding:7px 10px;font-size:14px}.catalog-grid{gap:28px}.catalog-grid .home-feature{padding-bottom:28px}.home-feature .feature-copy h2{font-size:21px;overflow-wrap:anywhere}.home-feature .feature-copy .lead{font-size:16px}.home-feature .btn{padding:9px 11px;font-size:14px;min-width:0}.book-cover__art svg{max-height:62px}}
@media(max-width:359px){.home-feature .feature-copy h2{font-size:19px}.home-feature .feature-copy .lead{font-size:15px}.home-feature .actions{margin-top:12px}.book-cover__art svg{max-height:52px}}
/* Keep the narrow-screen entry actions and wordmark together. */
.logo{flex-shrink:0}.logo small{white-space:nowrap}
@media(max-width:370px){header .header-note{display:none}.feature-copy .actions .btn{font-size:14px;padding:10px 12px}}

/* Shared series dimensions; new subject colors only. */
.book-cover--sleep{background:#efedf7;color:#414971;border-left-color:#73789b}.book-cover--tower{background:#e9efec;color:#35545c;border-left-color:#748b88}.book-cover--earth{background:#e8f1ee;color:#235e65;border-left-color:#65918d}
.review-correct{margin:24px 0;border:1px solid var(--line);border-radius:5px;padding:16px 20px}.review-correct>summary{font-weight:700}.review-correct[open]>summary{padding-bottom:12px;border-bottom:1px solid var(--line)}footer a{margin-right:14px}.static-page{max-width:760px;margin:auto}.static-page section{margin:38px 0}.static-page li{margin:.5em 0}
.my-dashboard{max-width:900px;margin:auto}.my-dashboard>h1{margin-bottom:32px}.continue-card{display:grid;grid-template-columns:112px 1fr;gap:28px;padding:28px;background:#f3f6fb;border:1px solid #dce4f0;border-left:4px solid var(--blue);border-radius:6px}.continue-card__mark{display:flex;align-items:baseline;justify-content:center;align-self:center;font:700 42px/1 Georgia;color:var(--blue)}.continue-card__mark span{font-size:16px;color:var(--muted)}.continue-card h2{margin:2px 0 4px}.continue-card p{margin-bottom:12px}.continue-card__meta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px}.continue-card__meta>span{font-size:14px;color:var(--muted)}.learning-progress{height:7px;background:#dfe5ed;border-radius:99px;overflow:hidden}.learning-progress i{display:block;height:100%;background:var(--blue);border-radius:inherit}.my-section{margin-top:48px}.my-section__head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:18px}.my-section__head h2{margin:0}.my-section__head span{font-size:13px;color:var(--muted)}.learning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.learning-card{border:1px solid var(--line);border-radius:6px;padding:20px}.learning-card__head{display:flex;justify-content:space-between;gap:12px}.learning-card h3{margin:8px 0 12px}.learning-card__count{font:700 18px Georgia;color:var(--blue)}.learning-card .learning-progress{margin:3px 0 13px}.exam-resume,.result-row{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:18px 2px}.exam-resume h3{margin:7px 0 2px}.exam-resume p{margin:0}.result-row__meta{display:flex;flex-wrap:wrap;gap:5px 14px;margin-top:5px;font-size:14px;color:var(--muted)}.result-status{font-weight:700;color:#80542d}.result-status.is-pass{color:var(--blue)}.history-more{margin-top:14px}.history-more>summary{font-weight:700;padding:12px 0}.record-section{padding-top:10px;border-top:1px solid var(--line)}
@media(max-width:700px){.my-dashboard>h1{margin-bottom:24px}.continue-card{grid-template-columns:1fr;gap:12px;padding:22px}.continue-card__mark{justify-content:flex-start;font-size:32px}.continue-card__meta{align-items:stretch;flex-direction:column}.continue-card__meta .btn{width:100%}.learning-grid{grid-template-columns:1fr}.exam-resume,.result-row{align-items:flex-start;flex-direction:column;gap:10px}.exam-resume .btn{width:100%}.my-section{margin-top:38px}.my-section__head h2{font-size:21px}}
.continue-card{display:block;padding:26px 28px}.result-actions{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0}.record-section{margin-top:44px}.record-controls{border-top:1px solid var(--line);padding-top:18px}.record-controls>summary{font-weight:700}.record-controls__body{padding-top:10px}.record-controls__body .history-row:last-child{border-bottom:0}.record-controls__body .actions{margin:0}.record-controls__body .btn{font-size:14px;min-height:42px;padding:7px 12px}
@media(max-width:700px){.continue-card{padding:22px}.result-actions{align-items:flex-start}.record-controls__body .history-row{gap:8px}.record-controls__body .actions{width:100%;flex-direction:column}.record-controls__body .actions .btn{width:100%}}
.progress-caption{margin:2px 0 5px;font-size:13px;font-weight:700;color:var(--muted)}
.advanced-study{margin:42px 0;padding:26px 28px;background:#f6f8fb;border:1px solid #dce3ed;border-left:4px solid var(--blue);border-radius:5px}.advanced-study__label{display:block;margin-bottom:7px;font-size:13px;font-weight:700;color:var(--blue);letter-spacing:.04em}.advanced-study h2{margin:0 0 16px}.advanced-study p{margin:0 0 1.15em}.advanced-study__points{margin-top:20px;padding-top:16px;border-top:1px solid #d8e0eb}.advanced-study__points strong{display:block;margin-bottom:8px}.advanced-study__points ul{margin:0;padding-left:1.4em}.advanced-study__points li{margin:.35em 0}
.advanced-study{padding:0;background:none;border:0;border-radius:0}.advanced-study--summary{padding:23px 26px;background:#f6f8fb;border:1px solid #dce3ed;border-left:4px solid var(--blue)}.advanced-study__sources{font-size:13px;color:var(--muted);margin-top:16px!important}.advanced-diagram{margin:25px 0 28px!important;padding:18px 20px!important;background:#f6f8fb!important;border:1px solid #dce3ed}.advanced-diagram figcaption{text-align:left!important;font-size:15px!important;font-weight:700;color:var(--ink)!important;margin:0 0 15px!important}.advanced-diagram ol{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0;padding:0;counter-reset:stage}.advanced-diagram li{counter-increment:stage;position:relative;min-width:0;padding:14px 11px 12px;background:#fff;border:1px solid #cbd7e8;font-size:14px;line-height:1.55;text-align:center}.advanced-diagram li:before{content:counter(stage,decimal-leading-zero);display:block;color:var(--blue);font-size:12px;margin-bottom:5px}.advanced-diagram li:not(:last-child):after{content:'→';position:absolute;right:-18px;top:50%;transform:translateY(-50%);color:var(--blue)}
@media(max-width:600px){.advanced-diagram ol{grid-template-columns:1fr;gap:16px}.advanced-diagram li:not(:last-child):after{content:'↓';right:50%;top:auto;bottom:-18px;transform:translateX(50%)}.advanced-study--summary{padding:20px 18px}}
@media(max-width:600px){.advanced-study{margin:34px 0;padding:21px 19px}.advanced-study h2{font-size:21px}}
.catalog-search{max-width:520px;margin:0 0 18px}.catalog-search label{margin:0 0 6px;font-weight:700}.catalog-search input{min-height:48px}.history-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px}.history-filters .category-filter{font:inherit}.history-filters select{width:auto;min-height:42px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);padding:7px 34px 7px 12px}
.home-feature .book-cover{cursor:default}.home-feature .book-cover:hover{transform:none}.series-levels{margin-top:18px}.series-levels__label{display:block;margin-bottom:8px;font-size:13px;font-weight:700;color:var(--muted)}.series-levels__list{display:flex;flex-wrap:wrap;gap:8px}.series-level{display:flex;align-items:baseline;gap:7px;min-width:92px;padding:8px 13px;border:1px solid #bec9dc;border-radius:4px;background:#fff;color:var(--blue);line-height:1.35}.series-level:hover{background:#f2f5fa;text-decoration:none}.series-level strong{font-size:16px}.series-level span{font-size:12px;color:var(--muted)}
.course-level-nav{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:-8px 0 22px}.course-level-nav>span{font-size:13px;font-weight:700;color:var(--muted)}.course-level-nav>div{display:flex;gap:6px}.course-level-nav a{display:flex;align-items:baseline;gap:5px;padding:6px 10px;border:1px solid #bec9dc;border-radius:4px;background:#fff;color:var(--blue)}.course-level-nav a:hover{text-decoration:none;background:#f2f5fa}.course-level-nav a.is-current{background:var(--blue);border-color:var(--blue);color:#fff}.course-level-nav small{font-size:11px;color:var(--muted)}.course-level-nav a.is-current small{color:#fff;opacity:.88}
@media(max-width:700px){.catalog-search{max-width:none}.history-filters select{width:100%}}
.history-status-filters{display:flex;flex-wrap:wrap;gap:8px}.history-course-label{margin:0 0 0 8px;font-weight:700}.catalog-empty{margin-top:20px}.compact-empty{padding:28px 20px}.compact-empty p{margin-bottom:14px}[hidden]{display:none!important}
@media(max-width:700px){.history-course-label{width:100%;margin:4px 0 -2px}}
@media(max-width:767px){.series-levels{margin-top:12px}.series-levels__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.series-level{min-width:0;padding:8px 11px;justify-content:flex-start;gap:7px}.series-level strong{font-size:15px}.series-level span{font-size:11px}.course-level-nav{align-items:stretch;flex-direction:column;gap:7px;margin:0 0 20px}.course-level-nav>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.course-level-nav a{justify-content:center;padding:8px 6px}}
.advanced-diagram--parts li:not(:last-child):after{display:none}.advanced-diagram--parts ol{gap:12px}.advanced-diagram--parts li:before{content:'◆';font-size:13px}
@media(max-width:600px){.advanced-study:not(.advanced-study--summary){padding:0}.advanced-diagram--parts ol{gap:10px}}

/* Grade choices occupy the complete row below the cover and description. */
.home-feature>.series-levels{grid-column:1/-1;margin:0}.home-feature{row-gap:16px}.series-levels__label{font-size:14px}.series-levels__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:440px}.series-level{min-width:0;min-height:44px;justify-content:center;gap:6px}.series-level span{font-size:14px}.series-level strong{white-space:nowrap}@media(max-width:767px){.series-levels__list{max-width:none}.series-level{padding:8px 3px}.series-level span{font-size:12px}.series-level strong{font-size:16px}}

/* Every course uses the same catalogue action; the series page owns grade selection. */
.home-feature .feature-copy .actions{margin-top:22px}
.series-page{max-width:840px;margin:0 auto}
.series-page .breadcrumb{font-size:14px;color:var(--muted);margin:0 0 22px}
.series-page__heading h1{font-size:clamp(26px,4vw,40px);line-height:1.45;margin:10px 0 24px;overflow-wrap:anywhere}
.series-page__grades{margin:0 0 32px}
.series-page__grades h2{font-size:18px;margin:0 0 12px}
.grade-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.grade-choice{display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:center;border:1px solid #bdcbe0;border-radius:5px;padding:14px 18px;background:#fff;color:var(--blue);text-decoration:none;min-width:0}
.grade-choice strong{font-size:24px;line-height:1.3;white-space:nowrap}
.grade-choice span{font-size:14px;grid-column:1;grid-row:2;white-space:nowrap}
.grade-choice small{font-size:14px;grid-column:1;grid-row:3;white-space:nowrap}
.grade-choice b{grid-column:2;grid-row:1/4;font-size:19px}
a.grade-choice:hover{background:#f0f4fa;text-decoration:none;border-color:var(--blue)}
.grade-choice.is-upcoming{background:#f6f7f8;border-color:#e1e4e7;color:#606873;cursor:default}
.series-page__intro{display:grid;grid-template-columns:180px minmax(0,1fr);gap:36px;align-items:start;padding-top:28px;border-top:1px solid var(--line)}
.series-page__intro .book-stage{width:var(--studyy-book-width);padding:0;margin:0;background:none}
.series-page__intro .lead{font-size:19px;line-height:1.8;margin:0 0 20px}
.series-page__overview{margin:28px 0}.series-page__overview h2{font-size:20px;margin:0 0 10px}.series-page__overview p{font-size:16px;line-height:1.9}
.series-page__intro p{line-height:1.9}
@media(max-width:767px){.grade-choice-grid{gap:8px}.grade-choice{padding:11px 8px;gap:4px 0;grid-template-columns:1fr;justify-items:center;text-align:center}.grade-choice strong{font-size:22px}.grade-choice b{display:none}.series-page__intro{grid-template-columns:144px minmax(0,1fr);gap:18px}.series-page__intro .lead{font-size:16px}.series-page__intro h2{font-size:16px}.series-page__intro .book-stage{max-width:none}.series-page__intro p{font-size:16px}}
@media(max-width:359px){.series-page__intro{grid-template-columns:1fr}.series-page__intro .book-stage{margin:0 auto}.series-page__grades{margin-bottom:24px}}
/* Keep section citations available without interrupting every paragraph. */
.section-reference-map{margin:12px 0 18px;border:1px solid #dce3e9;border-radius:4px;padding:8px 12px;font-size:14px;line-height:1.65}
.section-reference-map summary{font-weight:600;min-height:32px}
.section-reference-map ul{list-style:none;margin:8px 0 4px;padding:0}
.section-reference-map li{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;padding:6px 0;border-top:1px solid #e9ebed}
.section-reference-map li span:first-child{color:#3b4654}
.section-reference-map .inline-sources{margin-left:0}
.section-reference-map .inline-sources a{display:inline-block}
.result-share{margin:12px 0 32px}.result-share .btn{min-height:44px}.result-share p{margin:8px 0 0;line-height:1.65}
.book-cover--barley-tea{background:#f5eddc;color:#79542a;border-color:#cfbd9d;border-left-color:#a38956}
.book-cover--railroad-crossing{background:#f4efd9;color:#68571f;border-color:#cfbf88;border-left-color:#8e803a}
.book-cover--romance{background:#f6e9eb;color:#89464e;border-color:#d2b8bd;border-left-color:#ad7079}
.book-cover--umbrella{background:#e9f0f5;color:#2c5b79;border-color:#b2c7d7;border-left-color:#5e849e}
.book-cover--refrigerator{background:#e7f1f1;color:#2b6173;border-color:#b1cccf;border-left-color:#659499}
.book-cover--moon{background:#eeedf6;color:#565981;border-color:#c0bed4;border-left-color:#8586aa}
.share-manual{max-width:580px}.share-manual textarea{min-height:90px}
.textbook-comparison{margin:32px 0;min-width:0}.textbook-comparison figcaption{font-weight:700;font-size:18px;margin-bottom:12px}.textbook-comparison table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:16px;line-height:1.7}.textbook-comparison th,.textbook-comparison td{border:1px solid #d6dce2;padding:12px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.textbook-comparison thead th{background:#edf2f7}.textbook-comparison tbody th{background:#f8f8f6}.textbook-comparison th:first-child{width:24%}@media(max-width:450px){.textbook-comparison th,.textbook-comparison td{padding:8px}.textbook-comparison table{font-size:16px}}

.image-viewer{width:min(95vw,1100px);max-height:90vh;padding:16px;border:1px solid #ccd3dd}.image-viewer img{display:block;max-width:100%;height:auto;margin:16px auto}.image-viewer::backdrop{background:rgba(0,0,0,.65)}

/* Put the catalogue directly below the brand header on the home screen. */
.home-catalog{margin-top:-10px}
.home-catalog .section-top{border-top:0;padding-top:0;margin-bottom:16px}
.home-catalog .section-top h1{font-size:22px;line-height:1.6;margin:0}
.home-catalog .catalog-search{margin-bottom:14px}
.home-catalog .category-filters{margin-bottom:12px}
.home-catalog #course-count{margin-bottom:14px}
.home-catalog .catalog-grid{gap:24px}
.home-catalog .catalog-grid .home-feature{padding-bottom:24px}
@media(max-width:767px){
  .home-catalog .section-top h1{font-size:19px}
  .home-catalog .catalog-grid{gap:20px}
  .home-catalog .catalog-grid .home-feature{padding-bottom:20px}
}
