/* Live book surfaces, typesetting and controls over text-free source textures. */
.learning-site .activity-page{max-width:1600px;margin:auto;padding:40px 4% 70px}.learning-site .activity-paper{min-height:760px;padding:45px 6% 55px;border:8px ridge #b39a6d;border-bottom-width:13px;outline:4px solid #303526;border-radius:24px 35px 22px 18px;box-shadow:-5px 4px #c9b68d,-10px 7px #716245,0 15px 22px #160c08b0;background-image:linear-gradient(90deg,transparent 47%,#7c634418 49.5%,#6b4e3129 50%,#e8d9b53b 50.5%,transparent 54%),url('/assets/korea-detail.png');background-size:100% 100%,760% 680%;background-position:center,59% 51%}.learning-site .activity-paper:before{inset:17px;border:1px solid #bc9c6d66;border-radius:20px;pointer-events:none}.learning-site .activity-paper:after{content:'';position:absolute;right:30px;top:-4px;width:22px;height:100px;background:linear-gradient(90deg,#723837,#a35451,#6c3030);clip-path:polygon(0 0,100% 0,100% 100%,50% 88%,0 100%);pointer-events:none}.activity-paper h1{max-width:1050px;margin:0 auto;text-wrap:balance}.activity-paper h2,.activity-paper p,.activity-paper label{overflow-wrap:anywhere}.activity-book{font-size:20px;margin:14px 0}.activity-progress{margin:0 auto 16px;gap:32px}.activity-progress span{position:relative;background:#f7ebd0}.activity-progress span+span:before{content:'';position:absolute;right:28px;top:50%;width:33px;height:1px;background:#bda16c}.activity-progress .reached{background:var(--activity-accent,#756044)}.ui-language{display:flex;justify-content:center;gap:10px;margin:12px 0 22px;font-size:16px}.ui-language button{padding:8px 14px;border-bottom:2px solid transparent}.ui-language [aria-pressed=true]{border-bottom-color:#606a3b}.story-motif{text-align:center;color:var(--activity-accent,#756044);font-size:23px;letter-spacing:.35em;margin:15px}.activity-intro-cards{gap:24px;margin:38px 0}.activity-intro-cards section{padding:24px 20px 35px;border:3px double #b89a6b;box-shadow:0 3px 8px #6d4c2220;display:flex;flex-direction:column;gap:14px}.intro-symbol{font-size:78px;line-height:1.4;color:#8c6b3d}.activity-intro-cards h2{font-size:31px;line-height:1.2}.activity-intro-cards p{font-size:19px}.activity-actions .button{border-radius:13px;min-width:180px;padding:15px 24px}.activity-actions .primary{background:linear-gradient(120deg,#714426,#3b2115);color:#fbedcf}.scene-cards,.scene-slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:28px 0}.scene-slots{min-height:140px}.scene-slot{border:2px dashed #b89d70;background:#f5ead540;min-height:140px}.scene-slot strong{font-size:30px;color:#8a6f48;font-style:italic}.scene-card{box-shadow:0 4px 9px #70502b36;padding:8px 8px 16px;background:#faf0dc;border-radius:13px;font-size:19px;display:flex;flex-direction:column;align-items:stretch;gap:10px}.scene-card img,.scene-slot img{height:auto;aspect-ratio:4/3;max-height:230px;margin:0;border-radius:8px;background:#f3e6c9}.scene-slot img{max-height:125px}.scene-card.selected{outline-color:var(--activity-accent,#756044)}.reflection-grid{gap:7%;align-items:start}.reflection-grid.image-wide{grid-template-columns:1.2fr 1fr}.reflection-grid h2{font-size:34px;line-height:1.3;text-align:center}.reflection-grid img{max-height:420px;border-radius:14px}.reflection-grid label{font-size:24px;line-height:1.4}.reflection-grid textarea{min-height:180px;line-height:1.65}.creative-writing{min-height:370px;background:repeating-linear-gradient(transparent,transparent 1.7em,#b99c682e 1.71em,transparent 1.74em);line-height:1.74!important;border:3px double #bca071;border-radius:8px;padding:24px 30px;max-width:100%;overflow-wrap:anywhere}.creation-title{display:flex;gap:15px;align-items:center;font-size:15px;margin:15px 0}.creation-title input{max-width:420px;width:100%;padding:9px;background:#f7ecd8;border:1px solid #b69a72}.canvas-scroll{overflow:auto;border:3px double #ba9d6a;border-radius:8px;background:#fbf1dc}.canvas-size{min-width:100%;}.draw-workspace canvas{border:0;aspect-ratio:5/3;width:100%;height:auto;max-height:none}.draw-workspace.expanded{z-index:80;background:#f4e7cd}.draw-workspace.expanded .canvas-scroll{max-height:80vh}.draw-workspace.expanded canvas{width:100%;max-height:none;max-width:none}.completion-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:7%;align-items:center;margin:50px 0}.completion-grid .activity-actions{flex-direction:column;align-items:stretch}.completion-grid blockquote{margin:0 0 25px;padding:25px;background:#f7ecd6;border:1px solid #c1a879;max-height:440px;overflow:auto}.completion-grid h2{text-align:center;font-size:38px}.completion-check{text-align:center;font-size:45px;color:#70643b}.library-page h1{font-size:clamp(42px,5vw,75px)}.library-tabs{display:flex;justify-content:center;gap:25px;margin:25px 0;font-size:25px;flex-wrap:wrap}.library-tabs a{padding:10px 35px}.library-tabs .active{background:linear-gradient(#73492e,#3f2517);color:#fff0d6;border-radius:40px;box-shadow:0 3px 7px #6f4b2740}.library-note{text-align:center;color:#796449;font:14px/1.7 system-ui}.saved-words-link{display:block;text-align:center;text-decoration:underline;margin:17px}.library-grid-live{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:35px 0}.library-card{padding:24px;border:1px solid #bca176;outline:1px solid #cbb58c;outline-offset:-8px;border-radius:16px;background:#fcf0d548;box-shadow:0 3px 12px #93692e22;display:flex;flex-direction:column;gap:12px;text-align:center;min-width:0}.library-card h2{font-size:29px;line-height:1.3}.library-cover{width:100%;height:330px;object-fit:contain;filter:drop-shadow(5px 5px 4px #4f311b40)}.library-card .button{margin-top:auto;border-radius:12px}.reading-badge{align-self:center;border:1px solid #b19454;border-radius:30px;padding:6px 20px;font-size:17px;background:#efe0b7}.reading-badge.finished{background:#d8d9b3}.library-empty{grid-column:1/-1;text-align:center;padding:100px 25px;font-size:24px}.writing-preview{white-space:pre-wrap;line-height:1.8;font-size:24px;padding:24px;background:repeating-linear-gradient(#fcf1dd,#fcf1dd 42px,#d2b995 43px);min-height:240px;max-height:350px;overflow:auto;text-align:left}.creation-card canvas{display:block;width:100%;height:auto;background:#fcf1dd}.creation-card small{font-size:14px;letter-spacing:.1em;color:#936b35}.creation-options{display:flex;gap:25px;justify-content:center;font-size:16px}.creation-options button{text-decoration:underline;min-height:44px}.story-word{font:inherit;line-height:inherit;padding:0 2px;border-bottom:2px solid #7b7e4a;background:#d7d4a780;border-radius:2px}.word-popup{position:fixed;inset:auto;margin:auto;top:50%;left:50%;transform:translate(-50%,-50%);max-width:min(560px,calc(100vw - 28px));width:560px;max-height:calc(100svh - 40px);overflow:auto;padding:30px;border:4px double #b29b6d;border-radius:15px;color:#382213;background:#f8ecd4 url('/assets/korea-detail.png') 59% 51%/760% 680%;box-shadow:0 8px 30px #35200f66}.word-popup::backdrop{background:#24180a33}.word-popup h2{font-size:40px;margin-right:25px}.word-popup h3{font-size:22px;margin:22px 0 8px}.word-popup p{line-height:1.6;font-size:19px;overflow-wrap:anywhere}.word-popup hr{border:0;border-top:1px solid #b59c70;margin:20px 0}.word-close{position:absolute;right:15px;top:12px;font-size:30px;width:40px;height:40px}.pronunciation{font-style:italic;margin:8px 0}.word-popup audio{max-width:100%;margin-top:15px}.word-popup button[data-pronounce],.word-popup button[data-word-save]{padding:10px;border:1px solid #b49a6f;border-radius:5px;margin-top:10px;font-size:19px}.device-pronunciation{display:block;font:12px system-ui;margin-top:8px}.saved-words{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:40px 0}.saved-words button{display:flex;flex-direction:column;padding:25px;border:1px solid #b49a6f;gap:12px;background:#f9edd8}.saved-words strong{font-size:25px}.saved-words small{font-size:14px}
@media(max-width:1000px){.learning-site .activity-page{padding-inline:22px}.learning-site .activity-paper{padding:35px 4%}.scene-cards,.scene-slots{gap:12px}.scene-card{font-size:16px}.reflection-grid h2{font-size:29px}.library-cover{height:280px}.activity-intro-cards h2{font-size:25px}.activity-intro-cards p{font-size:17px}}
@media(max-width:700px){.learning-site .activity-page{padding:24px 12px 45px}.learning-site .activity-paper{padding:30px 20px;border-width:4px;outline-width:2px;min-height:650px}.learning-site .activity-paper:after{right:10px;width:13px;height:60px}.learning-site .activity-paper:before{inset:9px}.activity-intro-cards{grid-template-columns:1fr;gap:16px;margin:25px 0}.activity-intro-cards section{display:grid;grid-template-columns:60px 1fr;text-align:left;padding:18px}.activity-intro-cards small{grid-column:1/-1}.intro-symbol{font-size:48px;grid-row:span 2}.activity-intro-cards h2{font-size:26px}.scene-cards,.scene-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.scene-card{padding:6px;font-size:16px}.scene-slot{min-height:100px}.reflection-grid,.reflection-grid.image-wide,.completion-grid,.library-grid-live{grid-template-columns:minmax(0,1fr)}.reflection-grid{gap:30px}.reflection-grid h2{font-size:27px}.reflection-grid label{font-size:21px}.creative-writing{padding:15px;min-height:350px}.creation-title{align-items:flex-start;flex-direction:column}.draw-tools{font-size:14px;gap:6px}.draw-tools button,.draw-tools select{font-size:14px;padding:8px}.activity-actions{gap:12px}.activity-actions .button{min-width:0;padding:12px 17px;font-size:19px}.library-tabs{gap:8px;font-size:21px}.library-tabs a{padding:10px 16px}.library-card{padding:20px}.library-card h2{font-size:26px}.library-cover{height:300px}.saved-words{grid-template-columns:1fr}.word-popup{padding:24px 20px}.word-popup p{font-size:17px}.word-popup h2{font-size:33px}.completion-grid{gap:30px;margin:30px 0}.completion-grid h2{font-size:30px}}

/* Decorative crops use only the supplied three-step icons, without baked-in labels. */
.intro-symbol{display:block;width:100%;height:160px;color:transparent;background-image:url("/assets/activity-3-steps.png");background-repeat:no-repeat;background-size:449.5% 485%;background-position:17.69% 49.26%}.activity-intro-cards section:nth-child(2) .intro-symbol{background-size:459.3% 503.2%;background-position:53% 50.4%}.activity-intro-cards section:nth-child(3) .intro-symbol{background-size:506.6% 517%;background-position:84.05% 49.54%}@media(max-width:700px){.intro-symbol{height:70px;width:100%;align-self:center}}

/* Physical book plates: original silhouettes remain visible around live DOM content. */
.learning-site{--book-plate:url('/assets/book-desk-blank-v2.png');position:relative;background:var(--book-plate) center top/100% 100% no-repeat;min-height:max(100svh,66.6667vw);padding:0 0 6vw;color:#3b2414}
.learning-site.theme-room{--book-plate:url('/assets/book-room-blank-v2.png');min-height:max(100svh,56.28vw)}
.learning-site .site-header{position:relative;height:6vw;min-height:72px;padding:0 9.3%;border:0;background:none;box-shadow:none}
.learning-site .site-header nav a:not(:last-child){display:none}.learning-site .site-header nav{font-size:24px}.learning-site .site-header .wordmark{width:280px;height:65px}
.learning-site .activity-page{padding:2.7vw 9.5% 0;max-width:1900px;margin:0 auto}
.learning-site.theme-room .activity-page{padding:3.4vw 12% 0}
.learning-site .activity-paper{position:relative;min-height:0;padding:0 0 32px;border:0;outline:0;border-radius:0;box-shadow:none;background:none!important}
.learning-site .activity-paper:before,.learning-site .activity-paper:after{display:none}
.learning-site .activity-paper h1{font-size:clamp(36px,3.65vw,65px);font-weight:500;line-height:1.12;margin:0 auto 12px;max-width:90%}
.learning-site .activity-progress{position:absolute;top:-6.5vw;left:50%;transform:translateX(-50%);margin:0;gap:48px;color:#f6e6c7}
.learning-site .activity-progress span{width:22px;height:22px;font-size:13px;border-color:#cdb27d;background:#442a18}
.learning-site .activity-progress span+span:before{right:21px;width:48px;background:#c5a873}
.learning-site .activity-progress .reached{background:#f9e6bd;color:#513119;box-shadow:0 0 9px #e6b85880}
.learning-site .ui-language{position:absolute;right:0;top:-4px;margin:0;gap:0;font-size:14px;opacity:.86}
.learning-site .ui-language button{padding:6px;min-height:36px}
.learning-site .activity-book{font-size:19px;margin:10px auto 0;max-width:78%;text-align:center}
.learning-site .story-motif{display:none}
.learning-site #activity-status{position:absolute;bottom:-18px;left:0;right:0;font-size:11px;margin:0;text-align:center}
.learning-site .activity-intro{font-size:clamp(20px,1.65vw,28px);line-height:1.4;margin:10px auto 22px;max-width:100%}
.learning-site.step-0 .activity-book,.learning-site.step-3 .activity-book{display:none}
.learning-site.step-0 .activity-intro{margin-top:0}
.learning-site .activity-intro-cards{margin:28px 0 24px;gap:28px}
.learning-site .activity-intro-cards section{border:3px double #b59b70;border-radius:4px;background:#fff4d81a;position:relative;padding:22px 18px;gap:8px;box-shadow:3px 5px 8px #67421f21}
.learning-site .activity-intro-cards section:before{content:'⌜';position:absolute;left:4px;top:1px;color:#ac8d5b;font-size:32px;line-height:1}
.learning-site .activity-intro-cards section:after{content:'⌟';position:absolute;right:4px;bottom:0;color:#ac8d5b;font-size:32px;line-height:1}
.learning-site .activity-intro-cards small{font-size:25px;color:#876a45}
.learning-site .intro-symbol{height:165px}
.learning-site .activity-intro-cards h2{font-weight:500;font-size:clamp(27px,2.2vw,38px);line-height:1.16;margin:0}
.learning-site .activity-intro-cards p{font-size:20px;line-height:1.45;margin:8px 0 0}
.learning-site .activity-actions{margin-top:22px;gap:14px;clear:both}
.learning-site .activity-actions button,.learning-site .activity-actions a{font-size:22px;min-height:48px;line-height:1.3}
.learning-site .activity-actions .button{min-width:180px;border:1px solid #876038;outline:1px solid #b59561;outline-offset:-6px;border-radius:9px;padding:15px 30px;background:#f8eacf45;box-shadow:0 3px 7px #54331826}
.learning-site .activity-actions .primary{color:#faebd0;background:linear-gradient(115deg,#774323,#3c2012);box-shadow:0 4px 9px #54331840}
.learning-site.step-0 .activity-actions .primary{min-width:320px;font-size:30px}
.learning-site .scene-slots{margin:24px 0 20px;min-height:135px;gap:22px}
.learning-site .scene-slot{min-height:135px;background:transparent;border:2px dashed #bda172}
.learning-site .scene-slot strong{font-size:39px;font-weight:400}
.learning-site .scene-cards{margin:0 0 18px;gap:22px}
.learning-site .scene-card{font-size:20px;line-height:1.35;padding:8px 8px 14px;border-radius:12px;background:#fff4de80;box-shadow:0 4px 10px #79522d35;gap:12px}
.learning-site .scene-card img{height:225px;aspect-ratio:auto;max-height:none;background:transparent;border-radius:7px}
.learning-site .scene-card span{min-height:54px;display:grid;place-items:center}
.learning-site .scene-slot img{height:80px;width:100%;margin:0;max-height:80px;object-fit:contain}
.learning-site .scene-slot:has(img) strong{font-size:20px}.learning-site .scene-slot:has(img) span{font-size:14px}
.learning-site .hint-text{font-size:17px;margin:10px 0;text-align:center}
.learning-site #order-hint:empty{display:none}.learning-site #order-hint{font-size:17px;text-align:center;margin:8px}
.learning-site .reflection-grid{margin-top:30px;gap:7%;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.learning-site .reflection-grid h2{font-weight:500;font-size:clamp(28px,2.65vw,41px);line-height:1.22;margin:0}
.learning-site .reflection-grid img{height:330px;max-height:none;aspect-ratio:auto;margin:22px 0 15px;object-fit:contain;background:none}
.learning-site .reflection-grid label{font-size:25px;gap:10px;margin-bottom:22px}
.learning-site .reflection-grid textarea{min-height:160px;font-size:23px;line-height:1.7;padding:17px 22px;background:repeating-linear-gradient(transparent 0,transparent 38px,#bda47c40 39px,transparent 40px);background-origin:content-box;border:1px solid #b89a71;border-radius:15px}
.learning-site .reflection-grid .text-link{font-size:21px;display:block;text-align:center}.learning-site .reflection-grid section>p{text-align:center;font-size:18px}
.learning-site.step-3 h1{text-align:left;max-width:none;margin-bottom:8px}
.learning-site.step-3 .activity-intro{text-align:left;margin:0 0 14px;font-size:24px;max-width:93%}
.learning-site.step-3 .creation-title{position:relative;display:flex;gap:10px;font-size:13px;justify-content:flex-end;margin:0 0 4px}
.learning-site .creation-title input{max-width:260px;background:transparent;padding:6px 10px;border:0;border-bottom:1px solid #bba072;font-size:16px;border-radius:0}
.learning-site .creation-tabs{display:inline-flex;gap:18px;margin:0 0 8px;vertical-align:bottom}
.learning-site .creation-tabs button{font-size:26px;padding:10px 18px;min-height:48px}
.learning-site .writing-tools{float:right;margin:0 0 8px;gap:8px}.learning-site .writing-tools button{font-size:25px;min-width:48px;min-height:48px}
.learning-site .creative-writing{min-height:340px;height:340px;max-height:none;font:25px/1.8 Georgia,serif;padding:24px 34px;border:4px double #b89d70;border-radius:7px;background:repeating-linear-gradient(transparent 0,transparent 1.76em,#bea77d66 1.79em,transparent 1.8em);background-origin:content-box;resize:vertical;box-shadow:0 3px 8px #8d64382b}
.learning-site .draw-tools{margin:0 0 12px;gap:12px;justify-content:flex-end;flex-wrap:wrap}
.learning-site .draw-tools>button{padding:8px 12px;font-size:18px;background:transparent;border:0;border-radius:3px;min-height:42px}
.learning-site .draw-tools>button[aria-pressed=true]{outline:1px solid #777a4d;background:#e5dab559}
.learning-site .colour-swatches,.learning-site .width-swatches{display:flex;gap:8px;align-items:center;border-right:1px solid #b69b70;padding-right:15px}
.learning-site .colour-swatches button{background:var(--swatch);border:2px solid #f9ebd3;border-radius:50%;width:32px;height:32px;padding:0;min-width:32px;min-height:32px}
.learning-site .colour-swatches button[aria-pressed=true]{outline:2px solid #5e3b22;outline-offset:2px}
.learning-site .width-swatches button{display:grid;place-items:center;width:35px;height:35px;padding:0;background:transparent;border:0;border-radius:50%}
.learning-site .width-swatches i{display:block;border-radius:50%;background:#4e301d}.learning-site .width-swatches span{font-size:16px;margin-right:8px}
.learning-site .canvas-scroll{height:340px;background:#fff5df45;box-shadow:0 3px 8px #8d64382b}
.learning-site .canvas-size{max-width:566px;min-width:0;margin:auto}.learning-site .draw-workspace canvas{background:transparent;border-radius:0}
.learning-site .draw-workspace.expanded{padding:25px;background:#f6e7c9;z-index:100;}.learning-site .draw-workspace.expanded .canvas-scroll{height:calc(100svh - 110px);max-height:none}.learning-site .draw-workspace.expanded .canvas-size{max-width:none}
.learning-site.step-3 .activity-paper>.text-link{font-size:15px;position:absolute;bottom:-18px;left:0}
.learning-site .completion-grid{margin:40px 0 20px;gap:7%}
.learning-site .completion-grid>section:first-child{display:flex;flex-direction:column;padding:20px;background:#fff3dc45;border:1px solid #bba071;border-radius:14px;box-shadow:0 4px 10px #79522d24}
.learning-site .completion-grid .creation-preview{order:-1;background:transparent;border:0;margin:0 0 20px}
.learning-site .completion-grid blockquote{font-size:21px;line-height:1.55;max-height:170px;overflow:hidden;padding:0;border:0;background:transparent;margin:0}
.learning-site .completion-grid h2{font-size:42px;line-height:1.15;font-weight:500}.learning-site .completion-grid .activity-intro{font-size:23px}
.learning-site .completion-check{display:grid;place-items:center;width:65px;height:65px;margin:0 auto 28px;background:#e6cda45e;border:1px solid #c6a477;border-radius:50%;font-size:35px}
.learning-site .library-page h1{font-size:clamp(42px,5vw,78px);margin-bottom:18px}
.learning-site .library-tabs{margin:15px 0 10px;font-size:28px;gap:30px}.learning-site .library-tabs a{padding:8px 38px}
.learning-site .library-note{font-size:12px;margin:8px 0}.learning-site .saved-words-link{font-size:16px;margin:8px 0}
.learning-site .library-grid-live{gap:32px;margin:20px 0}.learning-site .library-grid-live.single{max-width:850px;margin:20px auto;grid-template-columns:1fr}
.learning-site .library-grid-live.single .library-card{display:grid;grid-template-columns:1fr 1fr;column-gap:35px;align-content:center;align-items:center;padding:30px}
.learning-site .library-grid-live.single .library-card>img,.learning-site .library-grid-live.single .library-card>canvas,.learning-site .library-grid-live.single .writing-preview{grid-row:1/9;grid-column:1}
.learning-site .library-grid-live.single .library-card>:not(img):not(canvas):not(.writing-preview){grid-column:2}
.learning-site .library-card{gap:10px;padding:24px 24px 18px;border-radius:14px;background:#fff3d926;outline-offset:-12px}
.learning-site .library-cover{height:350px}.learning-site .library-card h2{font-size:28px;font-weight:500;line-height:1.22;overflow-wrap:anywhere;margin:0}.learning-site .library-card p{font-size:18px;margin:0;line-height:1.35}
.learning-site .library-card .button{font-size:23px;min-height:48px;background:#f8e9cf55}.learning-site .library-card .primary{background:linear-gradient(115deg,#774323,#3c2012)}
.learning-site .writing-preview{height:300px;max-height:300px;min-height:0;overflow:hidden;white-space:pre-wrap;font-size:24px!important;line-height:1.65!important;padding:22px;background:repeating-linear-gradient(transparent 0,transparent 38px,#bda47c40 39px,transparent 40px);background-origin:content-box;text-align:left}
.learning-site .creation-card canvas{height:300px;object-fit:contain;background:transparent;border-radius:6px}.learning-site .creation-options{font-size:14px;gap:25px}.learning-site .reading-badge{font-size:15px;justify-self:center;padding:5px 17px}
.design-review-badge{position:fixed;bottom:5px;left:50%;transform:translateX(-50%);z-index:110;background:#24190de8;color:#fff0d5;padding:7px 12px;border:1px solid #d5b57f;border-radius:6px;font:11px/1.5 system-ui;display:flex;align-items:center;gap:12px;max-width:calc(100% - 16px);width:max-content;box-shadow:0 2px 6px #0004}.design-review-badge a{text-decoration:underline}.design-review-badge button{color:inherit;border:1px solid #a69072;padding:3px 6px;font:inherit}
@media(min-width:1100px){.learning-site.step-3:has(#drawing) .creation-tabs{position:absolute;top:165px;left:0}.learning-site.step-3:has(#drawing) .draw-tools{padding-left:210px;min-height:52px}.learning-site.theme-room.step-0 .activity-progress,.learning-site.theme-room.step-3 .activity-progress{top:6px;left:auto;right:145px;transform:none;gap:8px;color:#78613c}.learning-site.theme-room .activity-progress span{border:0;border-radius:2px;width:38px;height:7px;background:#c7bc94;color:transparent}.learning-site.theme-room .activity-progress .reached{background:#6c7543;box-shadow:none}.learning-site.theme-room .activity-progress span:before{display:none}}
@media(min-width:701px) and (max-width:1100px){.learning-site .activity-page,.learning-site.theme-room .activity-page{padding:35px 9% 0}.learning-site{min-height:100svh;padding-bottom:70px}.learning-site .site-header{height:72px}.learning-site .activity-progress{top:-75px;gap:28px}.learning-site .activity-progress span+span:before{width:28px}.learning-site .site-header .wordmark{width:205px}.learning-site .site-header nav{font-size:19px}.learning-site .activity-paper h1{font-size:39px;max-width:80%}.learning-site .activity-book{font-size:16px}.learning-site .scene-card img{height:170px}.learning-site .scene-card{font-size:17px}.learning-site .scene-cards,.learning-site .scene-slots{gap:12px}.learning-site .intro-symbol{height:120px}.learning-site .activity-intro-cards{gap:16px}.learning-site .activity-intro-cards p{font-size:17px}.learning-site .activity-intro-cards h2{font-size:25px}.learning-site .reflection-grid img{height:280px}.learning-site .reflection-grid label{font-size:20px}.learning-site .reflection-grid textarea{font-size:20px;min-height:155px}.learning-site .library-cover{height:300px}.learning-site .library-grid-live{gap:20px}.learning-site .library-card h2{font-size:24px}.learning-site .library-card .button{font-size:20px}.learning-site .library-card{padding:18px}}
@media(max-width:700px){.learning-site,.learning-site.theme-room{background:linear-gradient(#462b17bb,#2d1c10dd),url('/assets/book-desk-blank-v2.png') center/cover;min-height:100svh;padding-bottom:38px}.learning-site .site-header{padding:8px 18px;min-height:70px;height:auto}.learning-site .site-header .wordmark{width:175px;height:42px}.learning-site .site-header nav{font-size:17px}.learning-site .activity-page,.learning-site.theme-room .activity-page{padding:12px 12px 0}.learning-site .activity-paper{padding:28px 20px 48px;border:3px solid #bea77f;border-right-width:5px;outline:3px solid #3d422c;border-radius:6px 15px 12px 5px;box-shadow:3px 3px #d2bc94,6px 6px #9a825d,8px 8px #343a25;background:linear-gradient(90deg,#af906229,transparent 8%,transparent 94%,#a5835922),url('/assets/book-desk-blank-v2.png') 50% 45%/600% 350%!important}.learning-site .activity-paper h1{font-size:34px;max-width:100%;margin-top:12px}.learning-site .activity-progress{position:static;transform:none;gap:22px;margin:0 auto 10px;color:#513119}.learning-site .activity-progress span{background:#eee0c0;border-color:#a58c63;color:#513119}.learning-site .activity-progress span+span:before{width:22px}.learning-site .ui-language{position:static;margin:4px auto 12px;justify-content:center}.learning-site .activity-book{font-size:15px;max-width:100%}.learning-site .activity-intro{font-size:20px;margin:16px 0}.learning-site .activity-intro-cards{gap:15px;margin:22px 0}.learning-site .activity-intro-cards section{display:grid;grid-template-columns:75px 1fr;padding:15px;gap:7px;text-align:left}.learning-site .intro-symbol{height:70px}.learning-site .activity-intro-cards small{font-size:17px}.learning-site .activity-intro-cards h2{font-size:25px}.learning-site .activity-intro-cards p{font-size:16px}.learning-site .activity-actions{gap:12px;margin-top:22px}.learning-site .activity-actions a,.learning-site .activity-actions button{font-size:18px}.learning-site .activity-actions .button{min-width:0;padding:12px 16px}.learning-site.step-0 .activity-actions .primary{min-width:100%;font-size:25px;order:-1}.learning-site #activity-status{bottom:16px;font-size:10px;padding-inline:12px}.learning-site .scene-slots,.learning-site .scene-cards{gap:10px;margin:20px 0;grid-template-columns:repeat(2,minmax(0,1fr))}.learning-site .scene-slot{min-height:90px}.learning-site .scene-card{font-size:16px;padding:6px;gap:7px}.learning-site .scene-card img{height:140px}.learning-site .scene-card span{min-height:55px}.learning-site .hint-text{font-size:15px}.learning-site .reflection-grid,.learning-site .completion-grid,.learning-site .library-grid-live{grid-template-columns:1fr;gap:25px;margin-top:25px}.learning-site .reflection-grid h2{font-size:29px}.learning-site .reflection-grid img{height:260px;margin:18px 0}.learning-site .reflection-grid label{font-size:23px}.learning-site .reflection-grid textarea{min-height:180px;font-size:21px}.learning-site.step-3 h1{text-align:center}.learning-site.step-3 .activity-intro{font-size:20px;max-width:100%;text-align:center}.learning-site.step-3 .creation-title{flex-direction:column;align-items:stretch;gap:5px;font-size:12px;margin-top:18px}.learning-site .creation-title input{max-width:none;width:100%;font-size:18px}.learning-site .creation-tabs{gap:5px;margin:8px 0}.learning-site .creation-tabs button{font-size:23px;padding:10px}.learning-site .writing-tools{gap:0;margin-top:8px}.learning-site .writing-tools button{font-size:21px;min-width:40px}.learning-site .creative-writing{height:420px;min-height:340px;padding:18px 16px}.learning-site .draw-tools{justify-content:flex-start;gap:8px;margin-top:5px}.learning-site .draw-tools>button{font-size:16px;padding:8px}.learning-site .colour-swatches,.learning-site .width-swatches{gap:5px;padding-right:8px}.learning-site .canvas-scroll{height:310px}.learning-site .canvas-size{margin-top:45px}.learning-site .draw-workspace.expanded .canvas-size{margin:0}.learning-site.step-3 .activity-paper>.text-link{position:static;display:block;margin-top:15px;font-size:16px}.learning-site .completion-grid{margin:25px 0}.learning-site .completion-grid h2{font-size:32px}.learning-site .completion-grid blockquote{font-size:20px;max-height:180px}.learning-site .completion-grid .activity-intro{font-size:20px}.learning-site .library-page h1{font-size:43px}.learning-site .library-tabs{font-size:21px;gap:6px}.learning-site .library-tabs a{padding:8px 16px}.learning-site .library-note{font-size:11px}.learning-site .library-grid-live.single .library-card{display:flex;padding:22px;gap:12px}.learning-site .library-card{padding:22px}.learning-site .library-card h2{font-size:26px}.learning-site .library-cover{height:330px}.learning-site .writing-preview{height:250px;max-height:250px;font-size:22px!important}.learning-site .creation-card canvas{height:230px}.design-review-badge{font-size:9px;gap:7px;padding:5px 8px;flex-wrap:wrap;justify-content:center}.learning-site .library-card .button{font-size:21px}}
/* A word's explanation stays visibly attached to its source phrase. */
.story-word.word-active{background:#d8c989;box-shadow:0 2px 0 #747743;border-radius:2px}
.word-popup{inset:auto;transform:none;margin:0;padding:0;overflow:visible;max-height:none;width:465px;border:3px double #b39762;border-radius:12px;box-shadow:0 5px 16px #62431f66;background:#f7e9cc url('/assets/book-desk-blank-v2.png') 45% 40%/550% 500%}
.word-popup::backdrop{background:transparent}.word-popup-body{overflow:auto;padding:22px 27px;border-radius:10px}.word-popup .word-pointer{position:absolute;width:18px;height:18px;background:#f8eace;transform:rotate(45deg);border-left:1px solid #b39762;border-top:1px solid #b39762;top:-10px;left:var(--pointer-x);margin-left:-9px}
.word-popup[data-pointer=bottom] .word-pointer{top:auto;bottom:-10px;transform:rotate(225deg)}.word-popup[data-pointer=left] .word-pointer{left:-1px;top:var(--pointer-y);transform:rotate(-45deg)}.word-popup[data-pointer=right] .word-pointer{left:auto;right:-10px;top:var(--pointer-y);transform:rotate(135deg)}.word-popup[data-pointer=none] .word-pointer{display:none}
.word-popup h2{font-size:34px}.word-popup h3{font-size:20px;margin:15px 0 6px}.word-popup p{font-size:18px;line-height:1.5;margin:6px 0}.word-popup hr{margin:12px 0}.word-popup .device-pronunciation{font-size:10px}.word-popup button[data-pronounce],.word-popup button[data-word-save]{font-size:17px;min-height:40px;margin-top:5px;padding:7px 12px}.word-popup #word-status:empty{display:none}.word-popup audio{margin-top:6px}
@media(max-width:700px){.word-popup-body{padding:20px}.word-popup p{font-size:16px}.word-popup h2{font-size:28px}}
/* Keep the outer leather and page edges inside the reference viewport. */
.learning-site{padding-bottom:3vw}.learning-site.theme-room{padding-bottom:2vw}
.learning-site .site-header .wordmark,.reader-site .site-header .wordmark{background:none;width:auto;height:auto;overflow:visible;font:clamp(32px,3.4vw,57px)/1.1 Georgia,serif;letter-spacing:-2px;text-shadow:1px 2px 2px #170a03,0 -1px #ffe2a8}
.learning-site .site-header .wordmark:before,.reader-site .site-header .wordmark:before{content:'Oncewhere';color:#e8bd78}
.learning-site.theme-desk .site-header .wordmark{font-variant:small-caps;font-size:clamp(31px,3vw,46px);letter-spacing:2px;color:#fff0ce}
.learning-site .creation-card .writing-preview,.learning-site .creation-card canvas{height:270px;max-height:270px}
.learning-site .canvas-size{max-width:none;margin:0}.learning-site .canvas-scroll{height:auto;max-height:400px;min-height:280px}.learning-site .draw-workspace canvas{aspect-ratio:auto;width:100%;height:auto}
.learning-site .intro-symbol{clip-path:inset(0 8px 0 0)}
.reader-site{position:relative;background:url('/assets/book-room-blank-v2.png') center/100% 100%;min-height:max(100svh,56.28vw);padding-bottom:2.5vw}
.reader-site .site-header{height:4.4vw;min-height:70px;padding:0 9.4%;background:none;border:0;box-shadow:none}.reader-site .site-header nav a:not(:last-child){display:none}
.reader-site .actual-reader{padding:12px 8% 0;background:none;overflow:visible;isolation:auto}.reader-site .actual-reader:before{display:none}
.reader-site .reader-toolbar{margin:0 1% 0;grid-template-columns:1fr auto 1fr}.reader-site .language-tabs{background:transparent;box-shadow:none;border:0;outline:0}
.reader-site .reader-context{margin:0 2%;font-size:10px;opacity:.75;gap:20px}.reader-site .flowing-book{background:none;border:0;outline:0;border-radius:0;box-shadow:none;margin:16px 0 0;min-height:0}
.reader-site .flowing-book .spread-content{padding:30px 4.5% 35px!important;gap:9%;min-height:37vw;align-items:center}
.reader-site .real-illustration img{max-height:530px}.reader-site .flowing-book .passage p{line-height:1.7}.reader-site .flowing-book .passage h2{font-size:18px;margin-bottom:22px;font-weight:400}
.reader-site .page-navigation{margin:0;color:#f5e6cb;position:relative;bottom:-28px}.reader-site .page-navigation button{min-height:44px}
.reader-site .flowing-book.together .spread-content{gap:30px}.reader-site .flowing-book.together .real-illustration img{max-height:500px}
@media(max-width:700px){.learning-site,.learning-site.theme-room{padding-bottom:40px}.learning-site .site-header .wordmark{font-size:33px;letter-spacing:-1px}.learning-site .canvas-scroll{min-height:230px;display:flex;align-items:center}.learning-site .canvas-size{width:100%;flex-shrink:0}.learning-site .draw-workspace.expanded .canvas-scroll{display:block}.reader-site{background:linear-gradient(#51321ed9,#2f1c10e8),url('/assets/book-room-blank-v2.png') center/cover;padding-bottom:35px}.reader-site .site-header{height:auto;min-height:70px;padding:12px 18px}.reader-site .site-header .wordmark{font-size:33px}.reader-site .actual-reader{padding:12px 17px 0}.reader-site .reader-toolbar{display:flex;gap:10px;color:#f8e9cc}.reader-site .language-tabs{background:#f3e3c8;color:#3b2414}.reader-site .reader-context{font-size:10px;margin:16px 0;color:#ffe8c3}.reader-site .flowing-book{background:linear-gradient(90deg,#af906229,transparent 8%,transparent 94%,#a5835922),url('/assets/book-desk-blank-v2.png') 50% 45%/600% 350%;border:3px solid #baa17a;border-radius:5px 12px 8px 3px;outline:2px solid #41462b;box-shadow:3px 3px #c9b28c,6px 6px #4e5133}.reader-site .flowing-book .spread-content{padding:24px 18px 35px!important;gap:25px}.reader-site .page-navigation{bottom:0;margin-top:20px}}
.learning-site .creation-preview{aspect-ratio:auto;height:auto}
.learning-site .library-card h2{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.learning-site .library-card p:not(.writing-preview){display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.learning-site .library-page #library-status:empty{display:none}
.reader-site .page-navigation{color:#54351f}
@media(min-width:1101px){.learning-site .library-page .library-grid-live{margin-bottom:12px}.learning-site .library-page .creation-card{padding-top:18px;padding-bottom:12px;gap:8px}.learning-site .library-page .creation-options{min-height:30px}.learning-site .library-page .creation-options button{min-height:30px}.learning-site .library-page .activity-paper{padding-bottom:10px}.learning-site.step-3 .activity-paper{padding-bottom:10px}.learning-site.step-3 #activity-status{bottom:-2px}.learning-site.step-3 .activity-paper>.text-link{bottom:-2px}.learning-site.step-3 .draw-tools{margin-bottom:8px}.learning-site.step-3 .creation-title{margin-bottom:0}.learning-site.step-3 .canvas-scroll{max-height:365px}}
/* Navigation occupies real flow space, including the return-to-activity link. */
.reader-site .page-navigation{bottom:auto;margin:12px 0 20px}
.reader-site .actual-reader>.button{display:inline-flex;position:relative;margin-top:12px}
@media(min-width:701px){.learning-site .reflection-grid.image-wide{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr)}}
/* Generated questions may be longer than the manually authored review example. */
.learning-site .reflection-grid h2.long-question{font-size:clamp(26px,2vw,31px);line-height:1.35;word-break:normal;overflow-wrap:break-word}
html[lang=ko] .learning-site .reflection-grid h2{word-break:keep-all}
@media(min-width:701px){.learning-site>.draft-banner{position:absolute;left:9.5%;top:6.15vw;z-index:2;padding:4px 10px;border:1px solid #c6ad7e;background:#f3e4c6bd;font-size:11px;border-radius:3px}}
@media(max-width:700px){.learning-site .reflection-grid h2.long-question{font-size:26px}}
