:root{font-family:Inter,Segoe UI,sans-serif;color:#172338;background:#f2f5fa;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,.button{background:#244ccd;color:white;border:0;border-radius:8px;padding:12px 19px;cursor:pointer}button:hover{background:#1739a2}button.secondary{background:#e8edf8;color:#244ccd}button:disabled{opacity:.6;cursor:default}input,textarea,select{border:1px solid #bcc8dc;border-radius:7px;padding:10px;background:white;max-width:100%}input:focus,textarea:focus,select:focus{outline:3px solid #c5d4ff}textarea{width:100%;min-height:230px;line-height:1.6}label{display:block;margin:14px 0 6px}header{background:#12223e;color:white;padding:20px 5%;display:flex;justify-content:space-between;align-items:center;gap:20px}header strong{font-family:Georgia,serif;font-size:26px}header small{display:block;color:#b9c9e6;font-size:14px;margin-top:4px}nav{display:flex;gap:12px;align-items:center;flex-wrap:wrap}nav a{color:#d5e2ff}main{max-width:1160px;margin:34px auto;padding:0 24px}.eyebrow{color:#244ccd;text-transform:uppercase;letter-spacing:2px;font-size:14px;font-weight:700}h1{font-family:Georgia,serif;font-size:42px;margin:12px 0}h2{font-size:23px;margin-top:0}h3{font-size:18px}.muted{color:#5b6980;line-height:1.6}.layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:26px}.card{background:white;border:1px solid #dbe3ef;border-radius:13px;padding:26px;margin-bottom:22px}.sidebar{align-self:start;position:sticky;top:20px}.sidebar button{display:block;width:100%;text-align:left;margin:10px 0;background:#edf2fc;color:#233b71}.badge{display:inline-block;background:#eaf0ff;color:#244ccd;padding:6px 10px;border-radius:20px;font-size:14px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.gap{margin:18px 0;line-height:2.9}.gap input{width:180px;margin:0 8px}.scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:15px}th,td{text-align:left;border-bottom:1px solid #dde5f0;padding:14px 10px;vertical-align:top}th{background:#edf2fc}td input{width:130px}.match{display:grid;grid-template-columns:145px 1fr;align-items:center;gap:15px;margin:13px 0}.match select{width:100%}.correct{border-color:#17834e;background:#edf9f2}.incorrect{border-color:#c04949;background:#fff2f2}.feedback{white-space:pre-wrap;background:#edf2fc;border-left:4px solid #244ccd;padding:20px;line-height:1.6}.auth{max-width:440px;margin:60px auto}.auth input{width:100%}.auth button{margin-top:18px}.writing{white-space:pre-wrap;line-height:1.8}#notice{position:fixed;bottom:24px;right:24px;max-width:400px;background:#12223e;color:white;padding:16px 22px;border-radius:10px;display:none}a{color:#244ccd}.stats{display:flex;gap:25px;margin:22px 0}.stats strong{font-size:28px;display:block}.empty{text-align:center;padding:40px;color:#5b6980}@media(max-width:800px){.layout{grid-template-columns:1fr}.sidebar{position:static}h1{font-size:34px}header{align-items:flex-start}nav{font-size:14px}.card{padding:20px}.match{grid-template-columns:1fr;gap:5px}main{padding:0 15px}}
:root{scroll-behavior:smooth}.lesson-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.course-tree{padding:20px}.course-home{display:block;font-weight:600;margin-bottom:24px;text-decoration:none}.tree-section{border-top:1px solid #e1e7f0;padding:14px 0}.tree-section h3{font-size:14px;letter-spacing:.7px;color:#53647e}.lesson-link{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:12px 8px;border-radius:7px;text-decoration:none;font-size:15px;color:#233b71}.lesson-link small{white-space:nowrap;font-size:12px}.lesson-link.selected{background:#e8efff;color:#163bb0;font-weight:600}.overview-section{margin:28px 0}.overview-lesson{display:flex;justify-content:space-between;gap:15px;padding:19px 0;border-bottom:1px solid #dbe3ef;text-decoration:none}.overview-lesson span{font-size:14px;color:#5b6980}.step-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:20px}.step-tab{padding:14px;background:#e4eaf5;border:1px solid transparent;border-radius:9px;text-decoration:none;color:#354563}.step-tab span{display:block;font-weight:600}.step-tab small{display:block;margin-top:5px;font-size:13px}.step-tab.current{background:#244ccd;color:white}.step-tab.complete:not(.current){border-color:#81b69b;background:#edf9f2}.step-title{margin-top:20px}.task-actions{margin-top:24px}.check-result{margin-top:24px;padding:18px;background:#fff5e5;border-left:4px solid #bd7d11;border-radius:5px}.check-result.passed{background:#edf9f2;border-color:#17834e}.check-result p{margin:10px 0;line-height:1.5}.page-navigation{justify-content:space-between;margin:20px 0}.button{text-decoration:none;display:inline-block}.overview-lesson:hover,.lesson-link:hover{background:#edf2fc}@media(max-width:800px){.step-nav{grid-template-columns:repeat(2,1fr)}.overview-lesson{flex-direction:column}.course-tree{position:static}.lesson-heading{align-items:flex-start}.lesson-heading h1{margin-top:0}}
.brand{text-decoration:none;color:white}.brand small{display:block}.library-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:35px 0}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px}.book-card{max-width:380px;display:block;background:white;border:1px solid #dbe3ef;border-radius:14px;overflow:hidden;text-decoration:none;color:#172338;transition:transform .15s,border-color .15s}.book-card:hover{transform:translateY(-3px);border-color:#6d8cd5}.book-cover{height:330px;background:#e6ebf4;position:relative;display:flex;align-items:center;justify-content:center;padding:24px}.cover-image{width:100%;height:100%;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 8px 8px #14233a25)}.cover-fallback{display:none;flex-direction:column;justify-content:center;gap:18px;width:100%;height:100%;padding:30px;background:#173a62;color:white;font-family:Georgia,serif;text-align:center}.book-cover:not(:has(img)),.cover-missing{padding:20px}.book-cover:not(:has(img)) .cover-fallback,.cover-missing .cover-fallback{display:flex}.cover-fallback strong{font-size:32px}.cover-fallback small{font:12px Segoe UI,sans-serif;letter-spacing:2px}.book-card-copy{padding:24px}.book-card-copy h2{font-family:Georgia,serif;font-size:28px;margin:10px 0}.book-card-copy .eyebrow{font-size:12px;letter-spacing:1px}.clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.book-intro{display:grid;grid-template-columns:290px 1fr;gap:52px;margin:35px 0 45px;align-items:start}.book-intro .large{height:400px;border-radius:12px}.description{font-size:17px;line-height:1.8;color:#4e5e76}.breadcrumb{display:inline-block;margin-top:10px}.teacher-tabs{display:flex;gap:20px;border-bottom:1px solid #d4deed;margin:25px 0;padding:15px 0}.teacher-tabs a{color:#52637c;text-decoration:none}.teacher-tabs .active{font-weight:700;color:#244ccd}.teacher-toolbar{margin-bottom:26px}.editor-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:26px;margin:25px 0}.editor-layout form input:not([type=checkbox]),.editor-layout select{width:100%}.editor-layout textarea{min-height:130px}.editor-layout form button{margin-top:12px}.editor-layout .checkbox{display:flex;align-items:center;gap:10px;margin:20px 0}.checkbox input{width:auto}.structure-section{border-bottom:1px solid #dbe3ef;padding-bottom:25px;margin-bottom:25px}.structure-section .row input{flex:1;min-width:100px}.structure-section .row .order-input{flex:0 0 65px;width:65px;min-width:65px}.structure-lesson{margin:14px 0;padding:12px;background:#edf2fc;border-radius:7px}.structure-lesson a{display:flex;justify-content:space-between;gap:10px;text-decoration:none}.structure-lesson small{color:#52637c}.lesson-editor{grid-template-columns:280px minmax(0,1fr)}.editor-subheading{margin-top:32px}.assignment-link{display:block;border-bottom:1px solid #dae3f0;padding:14px 8px;text-decoration:none}.assignment-link small{display:block;margin-top:5px;color:#52637c}.assignment-link.selected{background:#edf2fc}.builder-row{padding:18px;border:1px solid #d4deed;border-radius:9px;margin:20px 0;background:#f6f8fd}.builder-row textarea{min-height:85px}.builder-table{min-width:650px}.builder-table td{min-width:170px}.builder-table .checkbox{margin:10px 0}.builder-table label{font-size:14px}.task-prompt{line-height:1.8;margin:20px 0;white-space:normal}.preview-card{margin-top:26px;background:#f6f8fd}.step-nav{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.writing{padding:20px 0}.book-intro h1{font-size:48px}@media(max-width:850px){.editor-layout,.lesson-editor{grid-template-columns:1fr}.book-intro{grid-template-columns:210px minmax(0,1fr);gap:25px}.book-intro .large{height:300px}.book-intro h1{font-size:38px}}@media(max-width:600px){.book-intro{grid-template-columns:1fr}.book-intro .large{width:230px;margin:0 auto;height:330px}.library-heading{align-items:flex-start;flex-direction:column}.book-grid{grid-template-columns:1fr}.book-card{max-width:none}.book-cover{height:320px}.teacher-tabs{flex-wrap:wrap}.structure-lesson a{flex-direction:column}header{flex-wrap:wrap}.book-intro h1{font-size:36px}}
