/* Shared presentation for canonical learning, culture and information pages.
   Content, audio, quizzes, route links and account gates stay application-owned. */
html body{--nc-ink:#152846;--nc-muted:#536278;--nc-blue:#173f94;--nc-red:#be2437;--nc-line:#dce3ec;--nc-soft:#f5f8fc;--ink:#152846;--navy:#152846;--paper:#fff;--cream:#fff;--line:#dce3ec;--muted:#536278;--teal:#173f94;--gm-navy:#173f94;--gm-muted:#536278;--ni-ink:#152846;--ni-muted:#536278;--ni-paper:#fff;--ni-surface:#fff;--ni-dark:#152846;--ni-line:#dce3ec;--ni-soft:#f5f8fc;--ni-focus:#1670d8;color-scheme:light;background:#fff!important;color:var(--nc-ink)!important}
html body :is(.site-header,.gm-nawa-header,.ni-header,.map-header,.seo-header){background:#fff!important;color:var(--nc-ink)!important;border-top:4px solid var(--nc-blue)!important;border-bottom:1px solid var(--nc-line)!important;box-shadow:none!important;border-radius:0!important}
html body :is(.site-header,.gm-nawa-header,.ni-header,.map-header,.seo-header) :is(a,summary,strong,b,small,span){color:var(--nc-ink)!important;-webkit-text-fill-color:currentColor}
html body :is(.site-header,.gm-nawa-header,.ni-header,.map-header,.seo-header) :is(a,summary):hover{background:var(--nc-soft)!important;color:var(--nc-blue)!important}
html body :is(.brand img,.gm-nawa-brand img,.ni-brand img,.map-brand img,.seo-brand img){border:0!important;border-radius:22%!important;background:transparent!important;padding:0!important;object-fit:contain}
html body :is(.brand,.gm-nawa-brand strong,.ni-brand,.map-brand,.seo-brand){font-family:inherit!important;font-weight:700!important;letter-spacing:0!important;color:var(--nc-ink)!important}
html body :is(.gm-nawa-account,.ni-account,.header-back,.back){border:1px solid var(--nc-line)!important;border-radius:8px!important;background:#fff!important;color:var(--nc-blue)!important;padding:10px 14px;min-height:44px;text-decoration:none}
html body :is(.gm-nawa-menu,.gm-nawa-menu-grid,.ni-nav){border-color:var(--nc-line)!important;background:#fff!important}
html body :is(.gm-nawa-menu-grid h2,.gm-nawa-menu-grid h2 span,.gm-nawa-menu-grid a small){color:var(--nc-blue)!important}
html body :is(.gm-nawa-quick a,.gm-nawa-menu-grid a)[aria-current]{background:var(--nc-soft)!important;border-color:var(--nc-blue)!important;color:var(--nc-blue)!important}
html body :is(.gm-nawa-quick,.ni-nav,.header-inner nav){min-width:0}
html body :is(.welcome,.hero,.lesson-heading,.ni-welcome,.ni-article-head,.map-hero,.seo-hero){background:#fff!important;color:var(--nc-ink)!important;box-shadow:none!important;border-radius:12px!important}
html body :is(.welcome,.lesson-heading,.ni-welcome,.ar-scenes-page .hero){border:1px solid var(--nc-line)!important;border-top:3px solid var(--nc-blue)!important}
html body :is(.welcome,.hero,.lesson-heading,.ni-welcome,.map-hero,.seo-hero) :is(h1,h2,h3,.lesson-title){font-family:inherit!important;font-weight:650!important;color:var(--nc-ink)!important;text-shadow:none!important}
html body :is(.welcome,.hero,.lesson-heading,.ni-welcome,.map-hero,.seo-hero) :is(p,small,.goal,.hero-ar,.ni-lead){color:var(--nc-muted)!important}
html body :is(.welcome,.hero,.lesson-heading,.ni-welcome) :is([lang=ar],.eyebrow){color:var(--nc-ink)!important}
html body :is(h1,.lesson-title){font-size:clamp(28px,3.4vw,44px)!important;line-height:1.25!important;letter-spacing:-.02em}
html body :is(h1,.lesson-title) [lang=ar]{letter-spacing:0;line-height:1.7!important}
html body :is(.eyebrow,.ni-kicker,.word-label,.note-mark){color:var(--nc-blue)!important}
html body :is(.gm-library-tools,.gm-library-card,.grammar-card,.word-card,.practice,.toolbar,.controls,.practice-block,.scene-chooser a,.ni-card,.map-branch,.seo-card,.vocab-links a){background:#fff!important;color:var(--nc-ink)!important;border:1px solid var(--nc-line)!important;border-radius:12px!important;box-shadow:0 3px 12px #15284605!important;min-width:0;max-width:100%}
html body :is(.gm-card-meta,.hero-note,.selection-method,.gm-learning-info,.progress-panel,.authoring-note,.voice-note,.scope,.objective,.ni-attribution,.ni-reading-guide,.reading-note,.coach,.examples){background:var(--nc-soft)!important;color:var(--nc-ink)!important;border-color:var(--nc-line)!important;border-radius:9px!important}
html body :is(.gm-card-meta>b,.level-label,.level-badge,.step,.step-number){background:#eaf0fc!important;color:var(--nc-blue)!important;border-color:var(--nc-line)!important}
html body :is(.gm-card-copy h3 [lang=ar],.gm-card-copy p [lang=ar],.gm-learning-info>p>[lang=ar],.word-card summary,.lesson-link,.reference-list a){color:var(--nc-blue)!important}
html body :is(.gm-collection-facts span,.lesson-heading .goal){background:var(--nc-soft)!important;border-color:var(--nc-line)!important;color:var(--nc-muted)!important}
html body .gm-collection-facts b{color:var(--nc-blue)!important}
html body :is(.primary,.button.primary,.ni-primary){background:var(--nc-blue)!important;color:#fff!important;border:1px solid var(--nc-blue)!important;border-radius:8px!important;box-shadow:none!important}
html body :is(.primary,.button.primary,.ni-primary) :is(span,small,b){color:#fff!important}
html body :is(.button.quiet,.button.secondary,.gm-reader-navigation a,.listen button,.language-nav a,.gm-level-filters button){background:var(--nc-soft)!important;color:var(--nc-blue)!important;border:1px solid var(--nc-line)!important;border-radius:8px!important;box-shadow:none!important}
html body :is(.language-nav a[aria-current],.gm-level-filters button[aria-pressed=true],#lesson-list a[aria-current=page]){background:var(--nc-blue)!important;color:#fff!important;border-color:var(--nc-blue)!important;box-shadow:none!important}
html body :is(.language-nav a[aria-current],.gm-level-filters button[aria-pressed=true],#lesson-list a[aria-current=page]) :is(span,small){color:#fff!important}
html body :is(input:not([type=radio]):not([type=checkbox]):not([type=range]),select,textarea){background:#fff!important;color:var(--nc-ink)!important;border-color:#b8c5d7!important;border-radius:7px!important;max-width:100%;min-width:0}
html body :is(input[type=radio],input[type=checkbox]){accent-color:var(--nc-blue)}
html body :is(.speech,.dialogue-line,.dialogue-line.speaker-1){background:var(--nc-soft)!important;color:var(--nc-ink)!important;border-color:var(--nc-line)!important;border-inline-start-color:var(--nc-blue)!important;border-radius:8px!important}
html body :is(.speech:nth-child(even),.dialogue-line.speaker-1){border-inline-start-color:var(--nc-red)!important}
html body :is(.speech>b,.speaker,.context,.dialogue-translation){color:var(--nc-muted)!important}
html body.gm-platform #lesson-main>section{background:#fff!important;border-color:var(--nc-line)!important;border-radius:12px!important}
html body.gm-platform #lesson-list{background:#fff!important;border-color:var(--nc-line)!important;border-radius:10px!important}
html body :is(.site-footer,footer.gm-nawa-footer,.np-shared-footer,.seo-footer){background:#fff!important;color:var(--nc-muted)!important;border:0!important;border-top:1px solid var(--nc-line)!important;border-radius:0!important;box-shadow:none!important;width:100%!important;max-width:none!important;margin-inline:0!important;box-sizing:border-box!important;text-align:center!important}
html body :is(.site-footer,footer.gm-nawa-footer,.np-shared-footer,.seo-footer) :is(a,button,h2,h3,b,strong,.footer-brand){color:var(--nc-blue)!important;-webkit-text-fill-color:currentColor;background:transparent!important;text-align:center!important}
html body :is(.site-footer,footer.gm-nawa-footer,.np-shared-footer,.seo-footer) :is(p,small,span){color:var(--nc-muted)!important;text-align:center!important}
html body :is(.site-footer,footer.gm-nawa-footer,.np-shared-footer,.seo-footer) :is(.nf-top,.nf-bottom,.nf-legal,.gm-nawa-footer-notes,.copyright){background:transparent!important;border-color:var(--nc-line)!important;color:var(--nc-muted)!important}
html body :is(.footer-inner,.gm-nawa-footer-top,.nf-top){max-width:1160px;margin-inline:auto!important;gap:24px!important}
html body :is(.site-footer-brand,.gm-nawa-footer-brand .site-footer-brand){justify-content:center!important}
html body :is(.gm-nawa-footer-notes,.copyright,.nf-bottom){max-width:1160px!important;margin-inline:auto!important}
html body :is(.gm-nawa-footer-notes>p,.nf-bottom){display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important}
html body :is(.site-footer .footer-links,.seo-footer nav){justify-content:center!important}
html body .site-footer :is(.nf-legal a,.nf-legal button,.gm-nawa-footer nav a){align-items:center!important}
html body :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #1670d8!important;outline-offset:3px!important}
html body :is(button,a.button,.ni-primary,.gm-level-filters button){min-height:44px}
html body button:disabled{cursor:default;opacity:.58}
html body [hidden]{display:none!important}
/* Keep semantic success/error tokens application-owned; theme complete components
   instead of globally turning every gold or green foreground into dark blue. */
html body .seo-header .seo-login,html body .seo-primary{background:var(--nc-blue)!important;border-color:var(--nc-blue)!important;color:#fff!important;border-radius:8px!important;box-shadow:none!important}
html body .seo-actions a:not(.seo-primary){background:#fff!important;border-color:var(--nc-line)!important;color:var(--nc-blue)!important;border-radius:8px!important}
html body :is(.seo-eyebrow,.seo-final small){color:var(--nc-blue)!important}
html body :is(.seo-guide article,.seo-faq,.seo-trust,.seo-final){background:#fff!important;color:var(--nc-ink)!important;border:1px solid var(--nc-line)!important;border-radius:12px!important;box-shadow:none!important;min-width:0}
html body :is(.seo-guide,.seo-faq,.seo-trust,.seo-final) :is(h2,h3){font-family:inherit!important;line-height:1.4!important;color:var(--nc-ink)!important}
html body :is(.seo-guide,.seo-faq,.seo-trust,.seo-final) p{color:var(--nc-muted)!important}
html body .seo-guide article>span{background:var(--nc-blue)!important;color:#fff!important;border-radius:8px!important}
html body .seo-faq details{background:var(--nc-soft)!important;border-color:var(--nc-line)!important;border-radius:8px!important}
html body .seo-footer{grid-template-columns:minmax(0,1fr)!important;justify-items:center!important;gap:18px!important}
html body .seo-footer>div{display:grid;gap:8px;max-width:100%}
html body .seo-footer nav{justify-content:center!important}
/* Retain dark film artwork/motifs, with legible light titles, while making the
   surrounding reading cards match the white application. Media is unchanged. */
html body:is(.ni-theme-cinema,.ni-theme-darkroom){--ni-ink:#152846;--ni-muted:#536278;--ni-paper:#fff;--ni-surface:#fff;--ni-line:#dce3ec;--ni-soft:#f5f8fc;color-scheme:light}
html body .ni-film-example{background:#fff!important;color:var(--nc-ink)!important;border-color:var(--nc-line)!important;border-radius:12px!important}
html body .ni-film-title,html body .ni-film-title h3{color:#fff!important}
html body :is(.ni-film-copy>p,.ni-film-date,.ni-word>b){color:var(--nc-muted)!important}
html body .ni-word{background:var(--nc-soft)!important;color:var(--nc-ink)!important;border-inline-start-color:var(--nc-blue)!important}
html body .ni-projection{background:var(--nc-soft)!important;color:var(--nc-ink)!important;border:1px solid var(--nc-line)!important;border-radius:12px!important}
@media(max-width:700px){
 html body :is(.header-inner,.ni-brand-row){flex-wrap:wrap;gap:14px}
 html body :is(.gm-nawa-header-inner,.gm-nawa-footer-top,.footer-inner){min-width:0}
 html body :is(.site-header,.gm-nawa-header,.ni-header,.map-header,.seo-header){padding-inline:16px!important}
 html body :is(.welcome,.hero,.lesson-heading){padding-inline:20px!important}
 html body :is(.site-footer,.gm-nawa-footer,.np-shared-footer,.seo-footer){padding-inline:20px!important}
 html body :is(.site-footer .nf-top,.gm-nawa-footer-top){grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body :is(.site-footer .nf-about,.gm-nawa-footer-brand){grid-column:1/-1!important}
}
@media(max-width:380px){html body :is(.gm-nawa-footer-top,.site-footer .nf-top,.footer-inner){grid-template-columns:minmax(0,1fr)!important}}
@media(forced-colors:active){html body,html body :is(.site-header,.gm-nawa-header,.ni-header,.map-header,.site-footer,.gm-library-card,.word-card,.grammar-card,.ni-card,.primary,.ni-primary){background:Canvas!important;color:CanvasText!important;border-color:CanvasText!important}html body :is(a,button,summary):focus-visible{outline-color:Highlight!important}}
