/* Photographic moments stay outside editors and active quizzes. */
.scene-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,32%);gap:28px;padding:0;background:var(--blue-soft);border:0;border-radius:16px;overflow:hidden;align-items:stretch;min-height:190px}
.scene-heading-copy{padding:28px 0 28px 30px;align-self:center;min-width:0}
.scene-heading-copy h1{font-size:28px;margin:0 0 10px}
.scene-heading-copy p{font-size:14px;color:#4c6083;margin:0;max-width:52ch}
.scene-heading-copy>.btn,.scene-heading-copy>.actions{margin-top:18px}
.scene-photo{margin:0;position:relative;min-height:190px;background:#d8e4ed;overflow:hidden}
.scene-photo img{display:block;position:absolute;width:100%;height:100%;object-fit:cover}
.scene-photo figcaption{position:absolute;right:12px;bottom:12px;padding:5px 10px;background:#fff;color:var(--ink);font-size:12px;border-radius:5px}
.entrance-photo{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:10px;grid-template-rows:124px 124px auto}
.entrance-photo img{height:100%;min-height:0;width:100%;border-radius:10px}
.entrance-photo img:first-child{grid-row:1/3;object-position:50% 60%}
.entrance-photo figcaption{grid-column:1/-1;margin:0}
.spotlight-image{width:100%;height:95px;overflow:hidden;border-radius:9px;margin-bottom:9px;background:var(--warm)}
.spotlight-image img{height:100%;width:100%;object-fit:cover;object-position:center 60%;display:block}
.spotlight-image:has(span){display:none}
.word-reveal:has(.spotlight-image){padding-top:12px;gap:5px}
.word-reveal:has(.spotlight-image) strong{font-size:27px}
.library-feature{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,1fr);background:var(--blue-soft);border-radius:16px;overflow:hidden;margin-bottom:24px;min-height:210px}
.library-feature .library-intro{display:block;padding:30px;margin:0;align-self:center}
.library-feature .library-intro h2{font-size:32px;color:var(--navy);margin-bottom:12px}
.library-feature .library-intro p{color:#4c6083;max-width:43ch;font-size:14px;margin-bottom:18px}
.library-scene{margin:0;overflow:hidden;background:#d8e4ed;position:relative;min-height:210px}
.library-scene img{height:100%;width:100%;position:absolute;object-fit:cover;display:block;object-position:center 65%}
.library-unit{grid-template-columns:92px minmax(0,1fr) auto;padding:17px 22px;transition:background-color 160ms ease}
.library-unit:hover{background:#f8faff}
.unit-scene{height:76px;position:relative;overflow:hidden;border-radius:8px;background:var(--blue-soft)}
.unit-scene img{height:100%;width:100%;object-fit:cover;display:block}
.unit-scene .lesson-index{position:absolute;bottom:5px;left:5px;background:#fff;width:auto;min-width:30px;height:auto;padding:4px 6px;border-radius:4px;line-height:1.1}
.unit-scene .lesson-index small{font-size:9px}.unit-scene .lesson-index strong{font-size:15px}
.photo-vocabulary{margin:30px 0}.photo-vocabulary>p{color:var(--muted);font-size:13px;margin:8px 0 17px}
.photo-words{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.photo-word{margin:0;min-width:0;overflow:hidden;background:var(--paper);border-radius:12px;border:1px solid var(--border)}
.photo-word>img{width:100%;height:138px;object-fit:cover;object-position:center 62%;display:block}
.photo-word figcaption{display:flex;align-items:center;gap:6px;justify-content:space-between;padding:13px}
.photo-word strong{display:block;font-size:21px;line-height:1.4}.photo-word small{color:var(--muted);font-size:12px}.photo-word .iconbtn{width:32px;height:32px}
.library-callout{gap:18px}.library-callout>img{width:84px;height:84px;object-fit:cover;border-radius:10px;flex:none}.library-callout>div{flex:1}
.btn .ui-icon,.text-link .ui-icon{transition:transform 150ms var(--ease)}
@media(hover:hover){.btn:hover .ui-icon:last-child,.text-link:hover .ui-icon:last-child{transform:translateX(3px)}}
.entry-tabs button,.book-tabs button,.assignment-tabs button{transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease}
.entry-tabs~form:not([hidden]){animation:form-arrival 180ms var(--ease)}
@keyframes form-arrival{from{opacity:.7;transform:translateX(7px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:960px){.scene-heading{grid-template-columns:minmax(0,1fr) 30%;gap:20px}.scene-heading-copy{padding:24px 0 24px 24px}.scene-heading-copy h1{font-size:25px}.library-feature .library-intro{padding:25px}.library-feature{grid-template-columns:minmax(0,1.3fr) 1fr}.photo-word>img{height:150px}}
@media(max-width:760px){.scene-heading-copy h1{font-size:24px}.scene-heading{gap:18px;min-height:180px}.scene-photo{min-height:180px}.scene-photo figcaption{display:none}.library-feature{grid-template-columns:minmax(0,1.35fr) 1fr;min-height:190px}.library-feature .library-intro{padding:22px}.library-feature .library-intro h2{font-size:28px}.library-feature .library-intro p{font-size:13px}.library-scene{min-height:190px}.library-unit{grid-template-columns:72px minmax(0,1fr) auto;gap:13px;padding:15px}.unit-scene{height:70px}.photo-words{gap:10px}.photo-word figcaption{padding:11px;flex-wrap:wrap}.photo-word>img{height:130px}.library-callout{flex-wrap:wrap;flex-direction:row;align-items:center}.library-callout>.btn{margin-left:102px}.library-callout>div{flex-basis:calc(100% - 102px)}}
@media(max-width:540px){.scene-heading{grid-template-columns:minmax(0,1fr) 108px;gap:13px;min-height:185px}.scene-heading-copy{padding:22px 0 22px 20px}.scene-heading-copy h1{font-size:23px}.scene-heading-copy p{font-size:13px}.scene-photo{min-height:185px}.scene-heading-copy>.actions{gap:8px}.scene-heading-copy .btn{font-size:12px}.library-feature{grid-template-columns:1fr}.library-scene{min-height:145px;max-height:145px;grid-row:1}.library-scene img{object-position:center 62%}.library-feature .library-intro{padding:20px 22px}.library-feature .library-intro h2{font-size:27px}.library-feature .library-intro p{margin-bottom:12px}.library-unit{grid-template-columns:64px minmax(0,1fr);gap:12px}.library-unit>.btn{grid-column:2;justify-self:start}.unit-scene{grid-row:span 2;height:82px}.library-unit h3{font-size:14px}.entrance-photo{grid-template-rows:95px 95px auto;gap:8px}.photo-words{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.photo-word>img{height:104px}.photo-word figcaption{padding:10px}.photo-word strong{font-size:18px}.photo-word .iconbtn{margin-top:5px}.photo-vocabulary{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.entry-tabs~form:not([hidden]){animation:none}.btn .ui-icon,.text-link .ui-icon{transition:none}.btn:hover .ui-icon:last-child,.text-link:hover .ui-icon:last-child{transform:none}.library-unit,.book-tabs button,.entry-tabs button,.assignment-tabs button{transition:background-color 80ms linear,color 80ms linear}}
