/* v4.2 approved component refinements; teaching assets remain unchanged. */
header .bar{gap:0}header .profile-placeholder{margin-left:10px;position:relative;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;border-radius:50%;background:#edf0f4;color:#697486;border:1px solid #d2dae5;padding:0;cursor:default}
.profile-placeholder [role=tooltip]{display:none;position:absolute;top:calc(100% + 12px);right:0;width:max-content;max-width:210px;background:#142b50;color:white;padding:9px 12px;border-radius:10px;font-size:13px;z-index:40}
.profile-placeholder:focus-visible [role=tooltip],.profile-placeholder.show-tip [role=tooltip]{display:block}
@media(hover:hover){.profile-placeholder:hover [role=tooltip]{display:block}}
header #nav{right:0}header .language-picker{margin-left:10px}header .bar>.logo{flex-shrink:0}
@media(max-width:1100px){.home .hero{padding-top:16px}.home .living-cover{aspect-ratio:3.3;min-height:0}.living-cover .cover-heading{top:30%;left:29%;width:48%}.living-cover .cover-heading h1{font-size:clamp(25px,3.7vw,42px);line-height:1.16}.home .hero-bottom{padding:12px 0 16px}.hero-bottom p{font-size:16px;margin:0}.hero-bottom p span{margin-top:4px}.home .paths{padding-top:20px}.home .section-title{margin-bottom:18px}.home .section-title h2{margin-top:8px}}
@media(max-width:650px){header .bar>.logo img{width:66px;height:66px}header .bar>.menu{padding:9px 12px!important;min-height:44px;font-size:14px}.home .living-cover{aspect-ratio:1.55;min-height:210px}.living-cover .cover-art{object-fit:contain;object-position:50% 100%;opacity:.75}.living-cover .cover-heading{top:10%;left:10%;width:80%;text-align:center}.living-cover .cover-heading h1{font-size:clamp(25px,6.2vw,37px);line-height:1.15;letter-spacing:-1px}.doodle-wij{left:21%;top:65%;width:13%;height:24%}.doodle-ik{left:43%;top:64%;width:13%;height:26%}.doodle-jij{left:65%;top:64%;width:13%;height:26%}.doodle-arrow{left:81%;top:78%;width:11%;height:17%}.home .hero-bottom p{font-size:14px}.home .paths{padding-top:14px}.home .section-title h2{font-size:28px}.home .hero-bottom{padding-bottom:12px}}
.simple-maker .maker-row{display:flex;align-items:center;gap:12px}.simple-maker input:disabled{background:#e7ebf1;color:#788397;border-color:#d4dce7;cursor:not-allowed;width:auto;min-width:160px;flex:1;max-width:none;margin:0;padding:12px 14px;border-radius:12px}.maker-controls{flex-wrap:nowrap;gap:8px}.maker-controls .button:disabled{background:#edf0f4;color:#929cad;border:1px solid #d4dce7;opacity:1}.simple-maker .availability{font-size:12px;color:#6e7a8e;margin:8px 0 0}.ai-flashcards{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#edf3fc;padding:20px 24px;border-radius:18px;margin:0 0 28px}.ai-flashcards>div:first-child{flex:1;min-width:0}.ai-flashcards h2{font-size:22px;line-height:1.25;margin:0 0 8px}.ai-flashcards p{font-size:15px;line-height:1.55;margin:0}.ai-copy{flex:0 0 auto}.ai-copy .button{font-size:15px;white-space:nowrap;padding:11px 22px}.ai-copy p:empty{display:none}.ai-copy p{font-size:13px;margin-top:6px}
.collection-card{padding:16px;border-radius:20px;background:linear-gradient(130deg,#fff,#f4f7fc)}.collection-caption h3,.collection-caption .textlink{font-family:inherit;font-size:16px!important;line-height:1.4}.collection-caption .textlink{font-weight:400!important;text-decoration:underline;text-underline-offset:4px;border:0;padding:0!important}.flashcard-set-card .collection-caption{align-items:center}.word-list-card{display:grid;grid-template-columns:minmax(100px,1fr) minmax(100px,1fr);gap:16px}.word-list-card>a{align-self:center;min-width:0}.word-list-card .collection-caption{margin:0;justify-content:center;min-width:0;align-items:stretch}.word-list-card .collection-caption h3{font-weight:600;margin:auto 0;overflow-wrap:normal;hyphens:auto}.word-list-card .collection-caption .textlink{align-self:flex-end;margin-top:18px}.collection-grid:has(.word-list-card){grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr))}.collection-grid:has(.flashcard-set-card){grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.story-arranged{display:flex!important;gap:16px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:4px 0 16px!important;scroll-snap-type:x proximity;overscroll-behavior-x:contain}.story-arranged .story-scene{flex:0 0 clamp(170px,22vw,260px);scroll-snap-align:start}.story-arranged .story-picture{width:100%}.story-sequence-label{display:block;text-align:center;font-size:14px;margin-top:6px;color:#536681}
/* Shared stage reserves arrow gutters: no controls overlap the educational content. */
.document-viewer{display:flex;flex-direction:column;border:1px solid #d6e2f1;border-radius:18px;background:#edf3fc;padding:8px;margin:16px 0;overflow:hidden;box-sizing:border-box;max-width:100%}
.viewer-stage{position:relative;display:flex;min-width:0;min-height:0;padding:0 42px;height:min(72vh,850px);box-sizing:border-box;flex:none}
.viewer-stage .viewer-scroll{height:100%!important;max-height:none!important;width:100%;min-width:0;min-height:0;overflow:auto;box-sizing:border-box;padding:2px;display:flex;flex-direction:column;align-items:safe center;justify-content:safe center;background:#edf3fc}
.viewer-scroll img{flex:none;margin:auto;max-width:none!important;max-height:none!important;object-fit:contain}
.viewer-side{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:36px;height:36px;min-width:36px;border-radius:50%;border:0;background:#8da5c6;color:white;font-size:32px;line-height:1;padding:0;z-index:1}
.viewer-side-prev{left:0}.viewer-side-next{right:0}.viewer-side:disabled{opacity:.3;cursor:default}
.viewer-controls{flex:none!important;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px!important;padding:10px!important;background:#f7f9ff;border:1px solid #e1e8f4;box-shadow:0 3px 12px #142b5008;border-radius:16px;margin-top:8px;max-width:100%;box-sizing:border-box}
.viewer-control-group{display:flex;align-items:center;gap:6px}.viewer-control-group+.viewer-control-group{border-left:1px solid #d7e1ef;padding-left:10px}.viewer-controls button,.viewer-controls a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px!important;min-width:42px!important;padding:8px!important;border:1px solid transparent;border-radius:12px;background:#e7eef9;color:#142b50;font-size:18px!important;line-height:1;box-sizing:border-box;text-decoration:none}
.viewer-controls button:disabled{opacity:.35;cursor:default}.viewer-controls [data-download]{background:#142b50;color:white;padding-inline:14px!important;font-size:14px!important}.viewer-controls input{margin:0!important;border:1px solid #d6e1f1;background:white;border-radius:9px;padding:7px 3px!important;height:40px!important;width:44px!important;max-width:64px!important;font-size:15px!important;text-align:center;appearance:textfield;-moz-appearance:textfield;color:#142b50}.viewer-controls input::-webkit-inner-spin-button,.viewer-controls input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.viewer-controls [data-total]{font-size:14px;white-space:nowrap}.viewer-zoom{display:flex;align-items:center;border:1px solid #d6e1f1;border-radius:10px;background:#edf3fc;padding-right:7px;font-size:14px}.viewer-zoom input{background:transparent;border:0;width:40px!important}.viewer-controls [hidden]{display:none!important}
.file-dialog{height:min(94dvh,1100px);max-height:calc(100dvh - 16px);width:calc(100vw - 24px);max-width:1400px;overflow:hidden}.file-dialog[open]{display:flex;flex-direction:column}.file-top{flex:none;padding:6px 12px!important;min-height:44px}.file-top [data-title]{font-size:14px;line-height:1.3}.file-top [data-close]{height:36px;width:36px;flex-basis:36px}.file-dialog [data-content]{display:flex;flex:1;min-height:0;padding:0 8px 8px}.file-dialog [data-content]>.document-viewer{flex:1;min-height:0;margin:0}.file-dialog .viewer-stage{height:0;flex:1;min-height:0}.file-dialog [data-content]>iframe{width:100%;height:100%;border:0}
.document-viewer.viewer-full{position:fixed!important;inset:0!important;display:flex!important;width:100vw!important;height:100vh!important;height:100dvh!important;padding:4px!important;background:#edf3fc;max-width:none!important;margin:0!important;border:0;border-radius:0;z-index:10000}.document-viewer.viewer-full .viewer-stage{flex:1;height:0;min-height:0}.document-viewer.viewer-full .viewer-scroll{height:100%!important;flex:1;min-height:0}.viewer-full .viewer-controls{margin-top:4px;padding:6px!important}
@media(max-width:900px){.simple-maker .maker-row{flex-wrap:wrap}.maker-controls{flex-wrap:wrap}.ai-flashcards{gap:16px;padding:18px}.ai-flashcards h2{font-size:20px}}
@media(max-width:600px){.simple-maker .maker-row{display:block}.simple-maker input:disabled{width:100%;margin:0 0 10px;box-sizing:border-box}.maker-controls .button{flex:1 1 40%;padding:10px;font-size:13px}.ai-flashcards{flex-direction:column;align-items:flex-start}.ai-flashcards p{font-size:14px}.collection-grid:has(.flashcard-set-card){grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.collection-card{padding:14px}.word-list-card{gap:12px}.collection-caption h3,.collection-caption .textlink{font-size:15px!important}.viewer-stage{padding-inline:32px;height:58vh}.viewer-side{width:28px;height:36px;min-width:28px;font-size:28px}.viewer-controls{gap:6px!important;padding:6px!important}.viewer-control-group{gap:4px}.viewer-control-group+.viewer-control-group{padding-left:0;border:0}.viewer-controls button,.viewer-controls a{min-height:40px!important;min-width:36px!important;padding:7px!important;font-size:17px!important}.viewer-controls input{height:38px!important;width:36px!important}.viewer-controls [data-download]{padding-inline:10px!important;font-size:13px!important}.file-dialog{width:calc(100vw - 8px);max-width:calc(100vw - 8px);height:calc(100dvh - 8px);max-height:calc(100dvh - 8px)}.file-dialog [data-content]{padding:0 4px 4px}.file-top [data-title]{max-width:calc(100% - 44px);max-height:42px;overflow:auto}.document-viewer{padding:4px}.story-arranged .story-scene{flex-basis:65vw;max-width:260px}}
#learningApp .simple-maker input:disabled{background:#e7ebf1!important;color:#788397;border-radius:12px!important;margin:0!important;width:auto;min-height:44px}
#learningApp .viewer-controls label.viewer-zoom{display:flex!important;font-weight:400}
@media(max-width:600px){#learningApp .simple-maker input:disabled{width:100%;margin-bottom:10px!important}}
header .bar{column-gap:8px!important}header .language-picker,header .profile-placeholder{margin-left:0!important}
@media(max-width:650px){header .bar>.logo,header .bar>.logo img{width:66px!important;height:66px!important;min-width:66px!important}.home .living-cover{width:100%;aspect-ratio:auto;height:clamp(200px,58vw,300px);min-height:0}}
.viewer-side{top:calc(50% - 18px);transform:none!important}
@media(min-width:651px) and (max-width:1100px){.living-cover .cover-art{object-fit:contain}}
.word-list-card .collection-caption h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:650px){header .bar>.logo{width:68px!important;height:50px!important;min-width:68px!important}header .bar>.logo img{width:96px!important;height:96px!important;min-width:96px!important;left:-15px;top:-22px}}

/* SVG marks avoid font-baseline offsets in circular controls. */
.file-top [data-close],.viewer-side{display:grid!important;place-items:center!important;padding:0!important;line-height:0!important}
.file-top [data-close] svg,.viewer-side svg{display:block;flex:none;width:20px;height:20px;margin:0;pointer-events:none}
.viewer-controls [data-prev] svg,.viewer-controls [data-next] svg{display:block;flex:none;margin:0}
@media(max-width:600px){.viewer-stage{padding-inline:40px}.viewer-side{width:36px;height:36px;min-width:36px}}
/* External resources use text-only cards and one shared footer notice. */
.external-disclaimer{display:flex;align-items:center;gap:20px;margin:32px 0 40px;padding:22px 24px;border-radius:22px;background:linear-gradient(110deg,#f0f6ff,#e5efff);color:#142b50;width:100%;box-sizing:border-box}
.external-disclaimer .disclaimer-icon{display:flex;align-items:center;justify-content:center;flex:0 0 60px;align-self:stretch;border-right:1px solid #5683c5;padding-right:20px;color:#3376c5}
.external-disclaimer svg{width:36px;height:36px;flex:none}
.external-disclaimer p{margin:0;font-size:16px;font-weight:600;line-height:1.55;min-width:0}
@media(max-width:600px){.external-disclaimer{gap:14px;padding:18px 16px;border-radius:18px}.external-disclaimer .disclaimer-icon{flex-basis:40px;padding-right:12px}.external-disclaimer svg{width:28px;height:28px}.external-disclaimer p{font-size:14px}}

.story-collection-download{margin:32px 0}.story-collection-download .download-link{font-weight:400;text-decoration:underline}
@media(max-width:600px){.story-write .check-tooltip{left:auto;right:0}}

/* Shared lesson titles stay readable on a single line. */
h1.lesson-title{font-size:clamp(20px,5.2vw,72px);white-space:nowrap;line-height:1.15;letter-spacing:-.035em}
.path:has(.lesson-title){container-type:inline-size}
h2.lesson-title{font-size:clamp(16px,5.8cqi,26px);white-space:nowrap;line-height:1.2;letter-spacing:-.035em}
