:root{--desk: #d9e2dc;--ink: #1a2421;--spine: #1f4d3a;--spine-ink: #e7f2ec;--stamp: #c4492c;--card: #f3f6f4;--line: #b7c6be;--moss: #2f6b4f;--muted: #5c6b64;--display: "Syne", "Palatino Linotype", Palatino, serif;--reading: "Literata", "Iowan Old Style", Georgia, serif;--ui: "Atkinson Hyperlegible", "Segoe UI", sans-serif;color:var(--ink);font-family:var(--ui);font-size:17px;line-height:1.45;background-color:var(--desk);background-image:linear-gradient(to right,rgba(31,77,58,.045) 1px,transparent 1px),linear-gradient(to bottom,rgba(31,77,58,.045) 1px,transparent 1px);background-size:28px 28px}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--spine)}img,iframe{max-width:100%}::selection{background:var(--spine);color:var(--spine-ink)}:focus-visible{outline:2px solid var(--stamp);outline-offset:2px}.skip{position:absolute;left:-999px;top:0;background:#fff;padding:.4rem .7rem}.skip:focus{left:8px;top:8px;z-index:5}.preview-bar{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;padding:.75rem 1.25rem;background:var(--spine);color:var(--spine-ink);position:sticky;top:0;z-index:4}.preview-bar p{margin:0;flex:1;min-width:12rem}.preview-bar a{color:var(--spine-ink)}.preview-word{font-family:var(--display);font-size:1.2rem;letter-spacing:-.03em;text-decoration:none;color:var(--spine-ink);display:inline-flex;align-items:center;gap:.5rem}.preview-word i{width:12px;height:22px;background:var(--spine-ink);display:inline-block}.preview-mark{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;border:1px solid var(--spine-ink);padding:.15rem .4rem}.topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;background:#f3f6f4eb;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:3}.wordmark{font-family:var(--display);font-size:1.35rem;letter-spacing:-.03em;text-decoration:none;color:var(--ink);display:inline-flex;align-items:center;gap:.55rem}.wordmark i{width:14px;height:26px;background:var(--spine);display:inline-block}.topbar{flex-wrap:wrap}.top-lead{display:flex;align-items:center;gap:1.1rem;min-width:0}.top-nav{display:flex;align-items:center;gap:.15rem}.top-nav a{text-decoration:none;padding:.4rem .7rem;border-bottom:2px solid transparent;color:var(--muted)}.top-nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--stamp)}.top-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.acting{color:var(--stamp);font-size:.92rem}h1,h2,h3{font-family:var(--reading);font-weight:700;letter-spacing:-.02em;margin:0 0 .4rem}h1{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.1}h2{font-size:1.45rem}p{margin:.2rem 0 .8rem}.muted{color:var(--muted)}button,.button{background:var(--spine);color:var(--spine-ink);border:1px solid var(--spine);border-radius:2px;padding:.55rem .85rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}button.stamp{background:var(--stamp);border-color:var(--stamp);color:#fff}button.quiet,a.quiet{background:transparent;color:var(--spine);border:1px solid var(--line)}button.danger{background:transparent;color:var(--stamp);border:1px solid var(--stamp)}.hint{color:var(--muted);font-size:.85rem}button:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--stamp);outline-offset:2px}input,textarea,select{width:100%;background:#fff;border:1px solid var(--line);border-radius:2px;padding:.55rem .7rem}textarea{min-height:7rem;resize:vertical}label{display:grid;gap:.3rem;font-size:.92rem}.fields{display:grid;gap:.8rem}.inline{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.inline input,.inline select,.top-actions select,.top-actions label{width:auto}.inline input{min-width:10rem}.sheet{background:var(--card);box-shadow:6px 6px #1f4d3a24;padding:1.2rem;margin:1rem}.banner{background:#fff;border-left:4px solid var(--stamp);padding:.7rem .9rem;margin:0 0 1rem}.mark{display:inline-block;border:2px solid var(--stamp);color:var(--stamp);font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;padding:.1rem .35rem;transform:rotate(-2deg)}.moss{color:var(--moss)}.welcome{min-height:100vh;display:grid;grid-template-columns:minmax(88px,22vw) 1fr}.welcome-spine{background:var(--spine);color:var(--spine-ink);display:flex;align-items:center;justify-content:center}.welcome-spine span{font-family:var(--display);writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.28em;font-size:clamp(1.4rem,3vw,2.4rem)}.welcome-main{padding:clamp(1.5rem,6vw,5rem);max-width:42rem}.welcome h1{font-family:var(--display);font-weight:700;font-size:clamp(2.4rem,6vw,4.4rem);line-height:.95;letter-spacing:-.04em;margin-bottom:1rem}.welcome .lede{font-family:var(--reading);font-size:1.25rem;max-width:34rem}.desk{padding:1.25rem}.shelf{display:flex;flex-wrap:wrap;gap:1rem;align-items:stretch;margin-top:.8rem}.book{display:flex;width:min(100%,360px);min-height:148px;background:var(--card);color:inherit;text-decoration:none;box-shadow:6px 6px #1f4d3a29;animation:shelf-in .45s ease both}.book:nth-child(2){animation-delay:.05s}.book:nth-child(3){animation-delay:.1s}.book:nth-child(4){animation-delay:.15s}.book:hover{transform:translate(-2px,-2px)}.book-spine{width:54px;background:var(--spine);color:var(--spine-ink);display:flex;align-items:center;justify-content:center;flex:none}.book-spine span{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--display);letter-spacing:.14em;text-transform:uppercase}.book-face{padding:1rem 1rem 1rem 1.1rem}.book-face h2{font-size:1.35rem}.new-course{max-width:640px;margin-bottom:1.4rem}.course-shell{display:grid;grid-template-columns:72px minmax(0,1fr);min-height:calc(100vh - 64px)}.course-shell:has(.canva-editor){height:calc(100vh - 64px);min-height:0;overflow:hidden}.spine-band{background:var(--spine);color:var(--spine-ink);display:flex;align-items:center;justify-content:center;position:sticky;top:61px;height:calc(100vh - 61px)}.spine-band span{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;font-size:1.15rem}.course-main{min-width:0}.tabs{display:flex;gap:.2rem;padding:.6rem 1rem 0;flex-wrap:wrap}.tabs a{text-decoration:none;padding:.45rem .7rem;border-bottom:2px solid transparent;color:var(--muted)}.tabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--stamp)}.module{border-top:1px solid var(--line);padding-top:.8rem;margin-top:.8rem}.item-row{display:flex;justify-content:space-between;gap:.6rem;align-items:center;padding:.35rem 0;flex-wrap:wrap}.claims{list-style:none;padding:0}.claims li{display:flex;gap:.6rem;align-items:flex-start;margin:.45rem 0;flex-wrap:wrap}.claim-sources{flex-basis:100%;margin:0;padding:0;list-style:none}.claim-sources li{margin:.15rem 0}.studio-note{font-size:.92rem}.board{position:relative;width:min(100%,960px);background:#fff;box-shadow:6px 6px #1f4d3a29;overflow:hidden;touch-action:none}.board.live{overflow:visible;width:auto}.block{position:absolute;overflow:hidden;padding:.35rem;border:1px solid transparent;-webkit-user-select:none;user-select:none}.block.selected{border-color:var(--stamp);z-index:4;overflow:visible}.block.editing{-webkit-user-select:text;user-select:text}.block p,.block h3{margin:0;white-space:pre-wrap;overflow-wrap:break-word;line-height:1.45;font-family:inherit}.card-back{margin-top:.35rem;color:var(--muted)}.block img{width:100%;height:100%;object-fit:cover;pointer-events:none;display:block}.block .handle{position:absolute;width:12px;height:12px;padding:0;background:#fff;border:2px solid var(--stamp);border-radius:1px}.block .handle.nw{left:-7px;top:-7px;cursor:nwse-resize}.block .handle.ne{right:-7px;top:-7px;cursor:nesw-resize}.block .handle.sw{left:-7px;bottom:-7px;cursor:nesw-resize}.block .handle.se{right:-7px;bottom:-7px;cursor:nwse-resize}.guide-v{position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--stamp);pointer-events:none;z-index:5}.editor-sheet{max-width:none}.editor-bar{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin-bottom:.7rem}.editor-title-label{display:flex;align-items:center;gap:.4rem;flex:1 1 14rem;min-width:10rem;font-size:.85rem}.editor-title-label input{width:auto;flex:1;min-width:8rem}.editor-grid{display:grid;grid-template-columns:200px minmax(0,1fr) 190px;gap:.75rem;align-items:start}.editor-stack{display:grid;gap:.8rem}.editor-tray,.editor-layers{display:grid;gap:.4rem;align-content:start}.editor-tray button,.editor-layers button{width:100%;justify-content:flex-start}.editor-tray textarea{min-height:5.5rem}.editor-stage{overflow:auto;max-height:calc(100vh - 11rem);background-color:var(--desk);background-image:linear-gradient(to right,rgba(31,77,58,.06) 1px,transparent 1px),linear-gradient(to bottom,rgba(31,77,58,.06) 1px,transparent 1px);background-size:16px 16px;padding:1rem;min-height:280px}.editor-tools{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin-bottom:.45rem;padding:.4rem;background:var(--card);border:1px solid var(--line);position:sticky;top:0;z-index:6}.editor-tools select,.editor-tools input{width:auto;min-width:0}.editor-tools label{display:flex;gap:.3rem;align-items:center}.swatch{width:1.35rem;height:1.35rem;padding:0;border:1px solid var(--line)}.swatch[aria-pressed=true]{outline:2px solid var(--stamp);outline-offset:1px}.editor-layers button[aria-current=true]{border-color:var(--stamp);color:var(--stamp)}.course-main:has(.canva-editor){height:100%;min-height:0;overflow:hidden;display:flex;flex-direction:column}.canva-editor{margin:0;flex:1;min-height:0;display:flex;flex-direction:column;background:var(--desk);overflow:hidden}.canva-top,.canva-format,.canva-pages{display:flex;gap:.4rem;align-items:center;padding:.45rem .7rem;background:var(--card);border-bottom:1px solid var(--line);flex-shrink:0}.canva-top,.canva-format{flex-wrap:nowrap;overflow-x:auto}.canva-pages{flex-wrap:nowrap}.canva-top .editor-title-label{flex:1 1 12rem}.canva-location{font-size:1rem;margin:0}.canva-note{margin:.4rem .7rem}.canva-body{flex:1;min-height:0;overflow:hidden;display:grid;grid-template-columns:7.6rem 240px minmax(0,1fr)}.canva-rail,.canva-panel{background:var(--card);border-right:1px solid var(--line);padding:.45rem;display:flex;flex-direction:column;gap:.35rem;align-content:start;overflow:auto}.canva-rail button,.canva-panel button{width:100%;justify-content:flex-start}.canva-rail button[aria-current=true],.canva-panel button[aria-current=true],.canva-thumb[aria-current=page]{border-color:var(--stamp);color:var(--stamp)}.canva-text-choice{height:auto;text-align:left;align-items:flex-start}.canva-panel .swatch{display:inline-block;pointer-events:none;margin-right:.35rem}.canva-stage-wrap{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.canva-stage-wrap .editor-stage{flex:1;min-height:0;max-height:none}.canva-format{position:static;z-index:6}.canva-format label{display:flex;align-items:center;gap:.3rem;flex:none}.canva-format select,.canva-format input,.canva-zoom input{width:auto}.canva-metric{width:4.2rem}.canva-page-count{white-space:nowrap}.canva-template{height:auto;flex-direction:column;align-items:stretch;text-align:left}.canva-template-preview{display:block;height:4.2rem;border:1px solid var(--line);background:#fff}.canva-template-preview.lesson{background:linear-gradient(var(--spine) 0 32%,white 32%)}.canva-template-preview.title{background:var(--spine)}.canva-template-preview.columns{background:linear-gradient(90deg,white 0 48%,var(--line) 48% 52%,white 52%)}.canva-menu{position:fixed;z-index:40;min-width:11rem;padding:.25rem;background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;gap:.15rem;box-shadow:4px 4px #1f4d3a1f}.canva-menu button{width:100%;justify-content:flex-start}@media(min-width:801px){.canva-body.panel-shut{grid-template-columns:7.6rem minmax(0,1fr)}}.canva-body.panel-shut .canva-panel{display:none}.canva-pages{border-bottom:0;border-top:1px solid var(--line)}.canva-film{display:flex;gap:.4rem;overflow-x:auto;flex:1}.canva-thumb{width:7.5rem;min-height:3.2rem;flex:none}.canva-zoom{display:flex;align-items:center;gap:.35rem}@media(max-width:800px){.course-main:has(.canva-editor),.canva-editor,.canva-body,.canva-stage-wrap{height:auto;overflow:visible}.canva-body{grid-template-columns:1fr}.canva-rail{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line)}.canva-rail button{width:auto}}.shape{width:100%;height:100%}.callout{border-left:4px solid var(--stamp);padding-left:.7rem;background:#c4492c0f;height:100%}.flashcard,.checkpoint{background:var(--card);border:1px solid var(--line);height:100%;padding:.6rem}.learn-stack{display:grid;gap:1rem;max-width:40rem}.learn-stack .block-copy{font-family:var(--reading);font-size:1.2rem;line-height:1.6}.age-early .learn-stack .block-copy,.age-early .board .block{font-size:1.35rem}.prose{font-family:var(--reading);font-size:1.15rem;line-height:1.6;max-width:42rem}.age-early .prose{font-size:1.4rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.85rem;color:var(--muted);font-weight:400}.total{font-family:var(--display);font-size:1.3rem}.loading{padding:2rem}@keyframes shelf-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}@media(max-width:720px){.welcome{grid-template-columns:1fr}.welcome-spine{min-height:72px}.welcome-spine span{writing-mode:horizontal-tb;transform:none;letter-spacing:.18em}.course-shell{grid-template-columns:1fr}.spine-band{position:sticky;top:57px;height:auto;padding:.65rem 1rem;justify-content:flex-start}.spine-band span{writing-mode:horizontal-tb;transform:none}.sheet{margin:.6rem}.book{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.report-dock{position:fixed;right:1rem;bottom:1rem;z-index:30;display:flex;flex-direction:column;align-items:flex-end;gap:.55rem;width:min(22rem,calc(100vw - 2rem));pointer-events:none}.report-dock .report-sheet,.report-dock .report-notice,.report-dock .report-actions{pointer-events:auto}.report-actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:.4rem}.report-dock .report-actions button{font-family:var(--display);letter-spacing:.02em;box-shadow:3px 3px #1f4d3a2e;min-height:2.25rem;padding:.3rem .55rem}.report-flag{gap:.35rem}.report-flag span{font-size:.95rem;line-height:1}.report-dock .report-actions button.report-spark{width:2.25rem;height:2.25rem;padding:0;background:var(--card);color:var(--stamp);border:1px solid var(--line)}.report-sheet{margin:0;width:100%}.report-sheet h2{font-family:var(--display);font-size:1.2rem;margin:0}.report-sheet textarea{min-height:4.5rem}.report-sheet-head{display:flex;justify-content:space-between;align-items:center;gap:.6rem}.report-notice{margin:0;background:var(--card);border-left:4px solid var(--moss);padding:.45rem .7rem;box-shadow:4px 4px #1f4d3a24}@media(max-width:720px){.report-dock{left:.6rem;right:.6rem;width:auto;align-items:stretch}.report-actions{justify-content:flex-end}}
