/* TeachBox REV-012: shared display, component and private-workspace refinement. */
:root{--neo-ink:#1E1E22;--neo-paper:#F7F3EC;--neo-teal:#07685D;--neo-radius:24px;--neo-rule:1.5px solid #1E1E22;--neo-shadow:3px 3px 0 #1E1E22;--journal-grid:linear-gradient(rgba(30,30,34,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(30,30,34,.065) 1px,transparent 1px)}
/* Fine square journal ruling; content cards retain their clean, solid surfaces. */
body.neo-edition{color:var(--neo-ink);background-color:var(--neo-paper);background-image:var(--journal-grid);background-size:24px 24px;font-family:'DM Sans',sans-serif;font-synthesis:style}
body.neo-edition.simple-studio{background-image:var(--journal-grid)!important;background-size:24px 24px!important}
.neo-edition :is(h1,h2,h3,h4,h5){font-family:'Poppins',sans-serif;word-break:normal;text-wrap:balance}
.neo-edition h1{font-weight:800;letter-spacing:-.055em;line-height:1.07}
.neo-edition h2{font-weight:700;letter-spacing:-.04em;line-height:1.17}
.neo-edition h3{font-weight:700;letter-spacing:-.025em;line-height:1.3}
.neo-edition :is(.home-hero h1,.press-inner-hero h1,.simple-page-hero h1,.illustrated-hero h1,.resource-introduction h1,.workshops-introduction h1,.blog-hero h1,.about-hero h1,.about-founder-hero h1,.story-hero h1,.publication-hero h1){font-size:clamp(42px,5.2vw,76px);max-width:17ch}
.neo-edition .home-hero h1{font-size:clamp(44px,4.8vw,72px);max-width:15ch}
.neo-edition :is(.section-heading h2,.explore-section-heading h2){font-size:clamp(30px,3.4vw,46px)}
.neo-edition :is(.eyebrow,.press-label,.story-kicker){font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:12px;line-height:1.5;letter-spacing:.065em}
.neo-edition :is(.press-inner-deck,.resource-deck,.workshops-deck,.about-deck,.story-intro){font-size:clamp(17px,1.5vw,20px);line-height:1.7;max-width:54ch}
.neo-edition :is(.press-reading,.publication-reading,.about-prose,.blog-prose){max-width:70ch;line-height:1.85}
.neo-edition :is(.press-reading p,.publication-reading p,.about-prose p,.blog-prose p){line-height:1.85}
.neo-edition :is(.press-reading h2,.publication-reading h2,.blog-prose h2){font-size:clamp(26px,3vw,36px);margin-top:1.4em}
.neo-edition :is(.press-reading h3,.publication-reading h3,.blog-prose h3){font-size:clamp(21px,2.3vw,27px);margin-top:1.4em}
.neo-edition .site-header{border-bottom:var(--neo-rule)}
.neo-edition .desktop-navigation a{font-weight:700;font-size:13px;line-height:1.4;padding:10px 11px}
.neo-edition .desktop-navigation a[aria-current=page]{border:var(--neo-rule);background:#C4A6EB}
.neo-edition .header-panel{border-bottom:var(--neo-rule)}
.neo-edition .header-panel nav a{border:1px solid #1E1E22;border-radius:14px;background:#FFFEFA;font-weight:600}
.neo-edition .header-panel nav a[aria-current=page]{background:#C4A6EB}
.neo-edition :is(.inline-menu>summary,.inline-search>summary){border:var(--neo-rule);box-shadow:2px 2px 0 #1E1E22}
.neo-edition :is(.control-icon,.tb-asset-icon){display:inline-block;width:24px;height:24px;object-fit:contain;vertical-align:middle;flex:none}
.neo-edition .tb-icon{width:36px;height:36px;object-fit:contain}
.neo-edition .tb-topic-icon{width:66px;height:66px;object-fit:contain}
.neo-edition :is(.button,.press-button){border:var(--neo-rule);border-radius:14px;font-weight:700;min-height:48px;line-height:1.45;padding:12px 20px;transition:background-color .16s ease,box-shadow .16s ease}
.neo-edition :is(.button-primary,.press-button-primary){background:#119B8A;color:#1E1E22;box-shadow:var(--neo-shadow)}
.neo-edition :is(.button-primary,.press-button-primary):hover{background:#CBEAE0;box-shadow:1px 1px 0 #1E1E22}
.neo-edition :is(.button,.press-button):active{box-shadow:none;transform:none}
.neo-edition :is(.text-link,.press-page-link,.story-card-action){font-weight:700;min-height:44px;line-height:1.5}
.neo-edition :is(.topic-card,.reading-feature,.home-resource,.resource-catalogue-card,.explore-feature,.explore-feature-card,.storyboard-panel,.blog-card,.about-principles article,.press-next-step){border:var(--neo-rule);border-radius:var(--neo-radius)}
.neo-edition :is(.topic-card,.reading-feature,.home-resource,.resource-catalogue-card,.blog-card){box-shadow:none;transition:border-color .16s ease,background-color .16s ease}
.neo-edition :is(.topic-card,.reading-feature,.home-resource,.blog-card):hover{transform:none;border-color:#07685D}
.neo-edition .topic-card h3{font-size:clamp(24px,2.1vw,30px);line-height:1.18;letter-spacing:-.04em}
.neo-edition .topic-card p{line-height:1.65}
.neo-edition :is(.resource-card-copy h3,.blog-card h3){font-size:clamp(23px,2.1vw,29px);line-height:1.25}
.neo-edition :is(.resource-filters,.blog-filters,.workshop-filters){border:var(--neo-rule);border-radius:20px}
.neo-edition :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select){font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.5;border-color:#837B87;border-radius:10px;min-height:46px;max-width:100%}
.neo-edition :is(button,a,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid #07685D;outline-offset:4px}
.neo-edition .tv-console :is(button,a,[tabindex]):focus-visible{outline-color:#FFD34E}
.neo-edition .tv-video-information h2{font-size:clamp(25px,3vw,38px);line-height:1.2}
.neo-edition .tv-zone-heading h2{font-size:clamp(20px,1.8vw,25px);letter-spacing:-.025em}
.neo-edition .tv-tile-copy>strong{font-weight:700}
.neo-edition .tv-console button.tv-tile{display:flex;flex-direction:column;align-items:stretch;padding:0;justify-content:flex-start;gap:0;min-height:0}
.neo-edition .tv-console button.tv-poster{padding:0;border:0;border-radius:0;background:#111114;color:#1E1E22}
.neo-edition .tv-console .tv-scroll-buttons button{width:44px;height:44px;min-height:44px;padding:0;display:grid;place-items:center}
.neo-edition .blog-reader h1{font-size:clamp(32px,4.7vw,60px);max-width:23ch;line-height:1.13}
.neo-edition .storyboard-panel figcaption h3{font-size:clamp(23px,2.3vw,30px);line-height:1.25}
.neo-edition .footer-top{padding-top:42px}.neo-edition .footer-top nav a{font-weight:600;line-height:1.5;min-height:44px;display:inline-flex;align-items:center}
/* Keep the disclosure marker and native keyboard behaviour, with a comfortable hit area. */
.neo-edition main details>summary,.neo-edition.simple-studio details>summary{box-sizing:border-box;min-height:44px;padding-block:10px;line-height:1.5;cursor:pointer}
.neo-edition.simple-studio .owner-current-guide{padding-block:4px}
.neo-edition .ex-check{min-height:44px}
/* Owner Studio keeps the same forms, IDs, save actions and permission boundaries. */
.neo-edition.simple-studio{color:#1E1E22;background:#F7F3EC}
.neo-edition.simple-studio :is(h1,h2,h3){color:#1E1E22!important;font-family:'Poppins',sans-serif!important}
.neo-edition.simple-studio h1{font-size:clamp(30px,3.5vw,46px)!important;font-weight:800!important;line-height:1.14;letter-spacing:-.045em}
.neo-edition.simple-studio h2{font-size:22px;font-weight:700!important;line-height:1.3;letter-spacing:-.025em}
.neo-edition.simple-studio h3{font-size:18px;font-weight:700!important;line-height:1.4}
.neo-edition.simple-studio .owner-nav{background:#FFFEFA!important;border:var(--neo-rule)!important;border-radius:18px!important;padding:10px!important;gap:8px!important}
.neo-edition.simple-studio .owner-nav a{display:flex;justify-content:flex-start;gap:10px;border-radius:12px!important;font:600 14px/1.5 'DM Sans',sans-serif;color:#1E1E22!important;min-height:48px}
.neo-edition.simple-studio .owner-nav a[aria-current=page]{background:#C4A6EB!important;border:var(--neo-rule)!important;box-shadow:2px 2px 0 #1E1E22!important}
.neo-edition.simple-studio .owner-nav img{width:27px;height:27px;object-fit:contain;flex:none}
.neo-edition.simple-studio :is(.owner-count-card,.admin-item,.admin-editor,.blog-admin-editor,.blog-admin-row,.tv-admin-editor,.tv-admin-row,.studio-editor){border:var(--neo-rule)!important;background:#FFFEFA!important;border-radius:18px!important;box-shadow:none!important}
.neo-edition.simple-studio .owner-count-card{border-top:6px solid #119B8A!important}
.neo-edition.simple-studio .owner-count-card:nth-child(2){border-top-color:#8B6BBE!important}.neo-edition.simple-studio .owner-count-card:nth-child(3){border-top-color:#E8A1B8!important}.neo-edition.simple-studio .owner-count-card:nth-child(4){border-top-color:#FFD34E!important}
.neo-edition.simple-studio .owner-count-card strong{font:800 38px/1.3 'Poppins',sans-serif}
.neo-edition.simple-studio :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){border:1px solid #837B87!important;border-radius:10px!important;background:#F7F3EC!important;font:400 16px/1.5 'DM Sans',sans-serif!important;color:#1E1E22!important;min-height:46px}
.neo-edition.simple-studio label{font-weight:600!important;color:#1E1E22!important}
.neo-edition.simple-studio button{border:var(--neo-rule)!important;border-radius:12px!important;min-height:46px;font:600 14px/1.45 'DM Sans',sans-serif!important;transition:background-color .16s ease!important;box-shadow:none!important}
.neo-edition.simple-studio button.button{background:#1E1E22!important;color:#F7F3EC!important}
.neo-edition.simple-studio button.is-destructive{background:#FFF1F3!important;color:#8A2237!important;border-color:#8A2237!important}
.neo-edition.simple-studio .studio-badge{border:1px solid #1E1E22;border-radius:8px;background:#CBEAE0;color:#1E1E22}
.neo-edition.simple-studio .owner-private-label{color:#58565E}
.neo-edition.simple-studio .owner-private-label::before{content:'';display:inline-block;width:22px;height:22px;margin-right:7px;vertical-align:middle;background:url('/assets/icons/shield.webp') center/contain no-repeat}
.neo-edition :is(.resource-empty,.workshops-empty)::before{content:'';display:block;width:72px;height:72px;margin-bottom:18px;background:url('/assets/icons/empty.webp') center/contain no-repeat}
@media(min-width:1151px){.neo-edition .site-header-inner{gap:10px}.neo-edition .site-brand{width:100px}.neo-edition .desktop-navigation{gap:2px}}
@media(max-width:1100px){.neo-edition :is(.home-hero h1,.press-inner-hero h1,.simple-page-hero h1,.resource-introduction h1,.workshops-introduction h1,.blog-hero h1,.about-hero h1,.story-hero h1){font-size:clamp(38px,5vw,58px)}}
@media(max-width:800px){.neo-edition .topic-card h3{font-size:28px}.neo-edition .tb-topic-icon{width:54px;height:54px}.neo-edition .owner-main{min-width:0}.neo-edition.simple-studio .owner-content{min-width:0}.neo-edition.simple-studio .owner-panel-heading{flex-wrap:wrap}.neo-edition.simple-studio .owner-nav a{justify-content:center}}
@media(max-width:540px){
 .neo-edition :is(.home-hero h1,.press-inner-hero h1,.simple-page-hero h1,.illustrated-hero h1,.resource-introduction h1,.workshops-introduction h1,.blog-hero h1,.about-hero h1,.about-founder-hero h1,.story-hero h1,.publication-hero h1){font-size:clamp(31px,9.2vw,43px);line-height:1.12;letter-spacing:-.045em;max-width:none;overflow-wrap:break-word}
 .neo-edition :is(.section-heading h2,.explore-section-heading h2){font-size:30px;line-height:1.18}
 .neo-edition .topic-card{padding:22px 72px 22px 20px}.neo-edition .topic-card h3{font-size:25px;max-width:none}.neo-edition .topic-card p{font-size:15px}
 .neo-edition .tb-topic-icon{width:42px;height:42px}.neo-edition .tb-icon{width:30px;height:30px}
 .neo-edition :is(.button,.press-button){font-size:14px;padding:12px 16px;min-height:48px}
 .neo-edition .blog-reader h1{font-size:clamp(30px,8.8vw,39px);max-width:none}.neo-edition .blog-prose{font-size:17px}
 .neo-edition .tv-zone-heading h2{font-size:20px}.neo-edition .tv-tile-copy>strong{font-size:16px}
 .neo-edition .tv-introduction h1{font-size:clamp(34px,9vw,46px);letter-spacing:-.045em}.neo-edition .tv-screen-icon{width:36px;height:36px;margin-right:8px}
 .neo-edition .eyebrow{font-size:11px;letter-spacing:.05em}
 .neo-edition.simple-studio .owner-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.neo-edition.simple-studio .owner-nav a{font-size:12px;gap:7px;justify-content:flex-start;padding:10px 8px!important}.neo-edition.simple-studio .owner-nav img{width:24px;height:24px}
 .neo-edition.simple-studio .admin-actions button{flex:1 1 135px}.neo-edition.simple-studio .owner-count-card h2{font-size:17px}
}
@media(prefers-reduced-motion:reduce){.neo-edition *,.neo-edition *::before,.neo-edition *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
