/* Nexus Library / Labs / Trails — one shared visual language across all worlds. */
.nexus-editorial{--world-accent:#a4dfd7;--ed-bg:#0e1726;--ed-surface:#162338;--ed-line:#344a5e;--ed-text:#f4f7fb;--ed-muted:#b7c6d7;background:var(--ed-bg);color:var(--ed-text);min-width:320px}
.nexus-editorial[data-world-id="philosophy"]{--world-accent:#c7b4fa}
.nexus-editorial[data-world-id="life-body-mind"]{--world-accent:#80d6cb}
.nexus-editorial[data-world-id="technology"]{--world-accent:#8db9fc}
.nexus-editorial [hidden]{display:none!important}
.nexus-editorial .editorial-header{position:relative;top:auto;left:auto;right:auto;background:#101827;padding:19px clamp(19px,4vw,75px);border-bottom:1px solid #2b4254}
.nexus-editorial .editorial-header nav a{font-size:.83rem}
.nexus-editorial .editorial-shell{max-width:1190px;margin:0 auto;padding:34px clamp(20px,3vw,32px) 110px}
.editorial-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:#a5b8c8;font-size:.76rem;line-height:1.5;margin-bottom:42px}
.editorial-breadcrumb a{color:#b5d9df;text-decoration:none}
.editorial-breadcrumb a:hover{text-decoration:underline}
.editorial-breadcrumb span[aria-current]{color:#d7e0e9}
.editorial-hero,.article-header{padding:42px 0 50px;max-width:930px}
.editorial-hero{border-bottom:1px solid var(--ed-line);margin-bottom:55px}
.editorial-kicker{margin:0 0 15px;color:var(--world-accent);font-size:.69rem;letter-spacing:.17em;text-transform:uppercase;font-weight:780;line-height:1.55}
.editorial-hero h1,.article-header h1{margin:0 0 18px;font-size:clamp(2.4rem,6vw,5.3rem);line-height:1.07;font-weight:670;letter-spacing:-.061em}
.editorial-hero-tagline{font-family:Georgia,serif;font-style:italic;font-size:clamp(1.28rem,2.4vw,1.9rem);color:var(--world-accent);margin:15px 0 24px}
.editorial-lead{max-width:800px;color:#cbd7e4;font-size:clamp(1.02rem,1.7vw,1.22rem);line-height:1.85;margin:15px 0}
.editorial-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.editorial-hero-actions a,.trail-spotlight a,.trail-actions a{display:inline-flex;padding:12px 17px;border:1px solid #6b9f9a;color:#c4f7ee;text-decoration:none;border-radius:9px;font-size:.86rem;font-weight:740}
.editorial-hero-actions a:hover,.trail-spotlight a:hover,.trail-actions a:hover{background:rgba(139,211,210,.09)}
.hub-overview{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(235px,.8fr);gap:clamp(27px,6vw,92px);padding-bottom:70px}
.hub-essay:not(:last-child){margin-bottom:35px}
.hub-essay h2{font-size:clamp(1.38rem,2.7vw,1.85rem);letter-spacing:-.035em;font-weight:720;margin:0 0 13px}
.hub-essay p,.hub-outcomes p{color:#bac9d9;line-height:1.87;margin:0;font-size:.95rem}
.hub-outcomes{align-self:start;position:sticky;top:30px;padding:25px;border:1px solid var(--ed-line);border-radius:16px;background:linear-gradient(135deg,#1b2c42,#142237)}
.hub-outcomes h2{margin:0 0 14px;color:var(--world-accent);font-size:1rem}
.learning-outcomes{padding-left:21px;margin:0 0 22px}
.learning-outcomes li{margin:0 0 12px;line-height:1.75;color:#e0e8ef;font-size:.9rem}
.hub-outcomes p{font-size:.79rem}
.collection{padding:44px 0 60px;border-top:1px solid var(--ed-line);scroll-margin-top:15px}
.collection-heading{margin:0 0 25px}
.collection-heading h2,.source-block h2,.related-topics h2,.lab-next h2{font-size:clamp(1.65rem,3vw,2.5rem);letter-spacing:-.045em;line-height:1.12;margin:0 0 14px}
.collection-heading p:not(.editorial-kicker){color:#b9c6d8;line-height:1.8;max-width:650px}
.content-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.content-card{min-width:0;border:1px solid #3b5062;border-radius:15px;padding:26px 25px 24px;background:#18283b;display:flex;flex-direction:column;gap:11px}
.content-card:hover,.content-card:focus-within{border-color:var(--world-accent)}
.content-card-label{font-size:.66rem;letter-spacing:.18em;font-weight:800;color:var(--world-accent)}
.content-card h3{font-size:1.35rem;line-height:1.22;letter-spacing:-.025em;margin:0}
.content-card h3 a{color:#f7f9fc;text-decoration:none}
.content-card h3 a:hover{color:var(--world-accent)}
.content-card p{color:#b8c6d7;line-height:1.75;font-size:.9rem;margin:0}
.content-card-action{margin-top:auto;padding-top:14px;color:var(--world-accent);font-size:.8rem;font-weight:760}
.trail-spotlight,.trail-conclusion{margin-top:20px;padding:34px;border-radius:15px;border:1px solid #638c94;background:linear-gradient(133deg,#204047,#172a3c)}
.trail-spotlight h2{font-size:clamp(1.75rem,3vw,2.35rem);letter-spacing:-.04em;margin:0 0 13px}
.trail-spotlight p:not(.editorial-kicker),.trail-conclusion p{color:#c6dce1;line-height:1.85;max-width:800px}
.article-header{padding-bottom:33px}
.article-meta{color:#91a8bc;font-size:.78rem;font-weight:680;letter-spacing:.03em}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:50px;margin-bottom:52px}
.article-prose{max-width:770px;line-height:1.9;font-size:1.02rem;color:#d3e0eb}
.article-prose h2{font-size:clamp(1.45rem,2.4vw,1.95rem);line-height:1.22;letter-spacing:-.035em;color:#f8fbfd;margin:39px 0 12px}
.article-prose h2:first-child{margin-top:0}
.article-prose h3{font-size:1.22rem;color:#fff;margin:28px 0 12px}
.article-prose p{margin:0 0 22px}
.article-prose ul{padding-left:25px;margin-bottom:26px}
.article-prose li{margin-bottom:10px}
.article-aside{align-self:start;position:sticky;top:27px;background:#16283b;border:1px solid #344c60;border-radius:12px;padding:24px}
.article-aside h2{font-size:1.18rem;margin:0 0 12px}
.article-aside p{color:#afc1d0;line-height:1.7;font-size:.86rem}
.article-aside a{display:block;color:var(--world-accent);font-size:.85rem;line-height:1.6;margin:15px 0 0;text-underline-offset:3px}
.source-block{max-width:850px;border-top:1px solid var(--ed-line);padding:35px 0 20px;margin-top:20px}
.source-block h2{font-size:1.5rem}
.source-block p{color:#aabccf;line-height:1.7;font-size:.91rem}
.source-block ul{padding-left:21px}
.source-block li{margin:14px 0;font-size:.86rem;line-height:1.55}
.source-block a{color:#b8eeeb;text-underline-offset:3px;overflow-wrap:anywhere}
.related-topics{margin-top:30px}
.related-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.related-list article{border:1px solid #34475d;border-radius:11px;padding:20px}
.related-list h3{margin:0 0 7px;font-size:1rem}
.related-list h3 a{color:#c8f3f0}
.related-list p{margin:0;color:#aebfd0;line-height:1.7;font-size:.86rem}
.editorial-disclosure{max-width:890px;color:#90a5b9;font-size:.76rem;line-height:1.85;margin:38px 0 0;border-top:1px solid #304356;padding-top:22px}
.lab-page>.article-prose{margin:45px 0}
.interactive-lab{padding:27px 30px;background:#1a3046;border:1px solid #80afbe;border-radius:16px;margin:24px 0 36px}
.interactive-lab h2{margin:0 0 20px;font-size:1.6rem;letter-spacing:-.027em}
.interactive-lab p{color:#c0d3e2;line-height:1.7}
.lab-control{display:flex;flex-wrap:wrap;align-items:end;gap:14px}
.lab-control label{display:block;width:100%;margin-bottom:-8px;color:#d3e4ee;font-weight:700;font-size:.87rem}
.lab-control select,.lab-control button{min-height:45px;border-radius:8px;padding:10px 14px;font:inherit}
.lab-control select{background:#0f2034;color:#f8fcff;border:1px solid #61809c;min-width:260px;max-width:100%}
.lab-control button{border:1px solid #acd6d4;background:#bae8e2;color:#172534;font-weight:780}
.lab-control button:hover{background:#d8f5ef}
.lab-slider{margin:22px 0}
.lab-slider label{display:block;font-weight:730;font-size:.94rem;margin:0 0 15px}
.lab-slider input{width:min(100%,560px);accent-color:#91d9d0;min-height:28px;cursor:pointer}
.interactive-lab output{color:#b4ffed;font-weight:760}
#logic-output,#classifier-output,#neuron-output{display:block;margin-top:25px;border-top:1px solid #547188;padding-top:19px;line-height:1.85}
.lab-result-head{font-size:1.18rem;font-weight:800;color:#c2fff0;margin:0}
.lab-table-wrap{overflow-x:auto;max-width:100%}
.lab-table-wrap table{border-collapse:collapse;width:100%;min-width:470px;margin-top:14px;font-variant-numeric:tabular-nums}
.lab-table-wrap th,.lab-table-wrap td{border:1px solid #5a7489;padding:9px 8px;text-align:center;font-size:.78rem}
.lab-table-wrap th{background:#263b52}
.lab-table-wrap caption{text-align:left;color:#b6cbdf;padding:10px 0}
.lab-counterexample{background:#644b4d}
.lab-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.lab-metrics span{display:block;padding:13px 11px;border:1px solid #56788c;border-radius:9px;font-size:.73rem}
.lab-metrics strong{display:block;font-size:1.42rem;color:#ecffff;font-variant-numeric:tabular-nums}
.lab-note{font-size:.8rem;font-weight:500}
.lab-next{margin-top:35px}
.trail-page>.article-header>p:not(.editorial-kicker):not(.editorial-meta){max-width:850px;line-height:1.85;color:#c3d2e0}
.trail-stops{list-style:none;margin:35px 0 55px;padding:0;display:grid;gap:12px}
.trail-stop{display:flex;gap:20px;padding:23px 26px;background:#17283c;border:1px solid #375065;border-radius:14px}
.trail-stop-number{font-size:1.3rem;color:#a5eee6;font-variant-numeric:tabular-nums;font-weight:650}
.trail-stop h2{margin:0 0 11px;font-size:1.65rem;letter-spacing:-.03em}
.trail-stop h2 a{color:#f3f9fc}
.trail-stop p{color:#b8c8d8;line-height:1.8}
.trail-why{background:#23394e;border-left:3px solid #8adbd5;padding:13px 17px;margin:18px 0}
.trail-stop a:not(h2 a){color:#a6e9e2}
.trail-conclusion{margin:45px 0}
.trail-conclusion h2{font-size:1.6rem;margin:0 0 13px}
.trail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.nexus-editorial .editorial-footer{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap;padding:30px clamp(20px,5vw,75px);border-top:1px solid #334a60}
.nexus-editorial .editorial-footer>div{display:flex;gap:16px;flex-wrap:wrap}
.nexus-editorial .editorial-footer a{color:#bfdce5;font-size:.86rem;text-decoration:none}
.nexus-editorial .editorial-footer a:hover{color:#b9f8ed}
@media(max-width:900px){
 .hub-overview{grid-template-columns:1fr}
 .hub-outcomes,.article-aside{position:static}
 .article-layout{grid-template-columns:1fr;gap:15px}
 .article-aside{max-width:700px}
 .editorial-hero,.article-header{padding-top:12px}
 .lab-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
 .nexus-editorial .editorial-header{padding:17px 20px}
 .nexus-editorial .editorial-header nav{gap:14px}
 .nexus-editorial .editorial-shell{padding:19px 20px 65px}
 .editorial-breadcrumb{margin-bottom:20px}
 .editorial-hero,.article-header{padding-bottom:30px}
 .content-card-grid,.related-list{grid-template-columns:1fr}
 .hub-overview{padding-bottom:35px}
 .trail-stop{padding:19px 16px;gap:12px}
 .trail-stop h2{font-size:1.34rem}
 .interactive-lab{padding:22px 17px}
 .lab-control select{min-width:0;width:100%}
 .lab-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .nexus-editorial .editorial-footer{padding:24px 20px}
}
@media(prefers-reduced-motion:reduce){.nexus-editorial *,.nexus-editorial *::before,.nexus-editorial *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{
 .nexus-editorial{background:white;color:#111}
 .nexus-editorial .site-header,.nexus-editorial .editorial-footer,.consent-banner,.editorial-hero-actions,.lab-control{display:none!important}
 .nexus-editorial .editorial-shell{max-width:none;padding:0}
 .nexus-editorial p,.nexus-editorial .article-prose,.nexus-editorial h1,.nexus-editorial h2{color:#111}
 .article-layout,.hub-overview{display:block}
 .article-aside,.hub-outcomes{position:static}
 a{color:#111;text-decoration:underline}
}

/* Private device-only saved learning. Deliberately squared, in the shared reading theme. */
.saved-control{display:flex;gap:14px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--ed-line);padding:0 0 20px;margin:0 0 20px}
.saved-control button,.saved-reading-list button,[data-clear-saved]{border:1px solid #9fd9d4;border-radius:2px;background:#17384a;color:#d7f5f1;padding:10px 14px;font:inherit;cursor:pointer;min-height:44px}
.saved-control button[aria-pressed="true"]{background:#9fd9d4;color:#102433}
.saved-control a,.saved-reading-list a{color:#c4f3ec;text-underline-offset:3px}
.saved-control [role="status"]{font-size:.85rem;color:#b6cfda}
.saved-reading-list{margin:22px 0 30px;padding:0;list-style:none;max-width:820px}
.saved-reading-list li{display:flex;gap:16px;justify-content:space-between;align-items:center;border-top:1px solid var(--ed-line);padding:16px 0}
.saved-reading-list li a{font-weight:680;line-height:1.5}
.saved-reading-list button{flex-shrink:0}
[data-saved-status]{margin-top:13px;color:#b9f0e6}


/* M8: collection indexes share the existing editorial reading layout. */
.nexus-editorial .editorial-header nav{display:flex;flex-wrap:wrap;gap:clamp(10px,1.4vw,20px)}
.collection-hero{max-width:900px}
.collection-hero a,.collection>h2 a{color:var(--world-accent);text-underline-offset:4px}
.nexus-editorial[data-content-kind="collection"] .collection>h2{margin:0 0 23px;font-size:clamp(1.5rem,2.7vw,2.1rem)}
.nexus-editorial[data-content-kind="collection"] .content-card-label{line-height:1.55}


/* M9: learner-facing Academy: structured study, not immersive reading distractions. */
.academy-page{max-width:970px;margin:0 auto}
.academy-objective{padding:27px 30px;margin:15px 0 45px;border:1px solid var(--ed-line);background:#172b40}
.academy-objective h2,.academy-module h2{font-size:clamp(1.6rem,2.5vw,2.35rem);margin:0 0 15px;letter-spacing:-.035em}
.academy-objective h3,.academy-exercise h3{margin:18px 0 12px;font-size:1.16rem}
.academy-objective p,.academy-module>p,.academy-exercise p{color:#cbd9e5;line-height:1.78}
.academy-objective ol{padding-left:22px;margin-bottom:0}
.academy-objective li{margin:10px 0}
.academy-objective a,.academy-page .trail-conclusion a{color:#b5f3e9;text-underline-offset:4px}
.academy-module{border-top:1px solid var(--ed-line);padding:45px 0 37px;scroll-margin-top:18px}
.academy-actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}
.academy-actions a{display:inline-block;border:1px solid #7eafb0;color:#c7f8ed;padding:12px 16px;text-decoration:none}
.academy-actions a:hover,.academy-actions a:focus-visible{background:#253c4c}
.academy-exercise{padding:22px 26px;background:#193449;border-left:3px solid #8dd5c9}
.academy-exercise details{padding:10px 0}
.academy-exercise summary{cursor:pointer;color:#c4f8ee;font-weight:750}
.academy-exercise details p{margin:13px 0 0}
.academy-bridge{border-left:3px solid #aacfcf;padding-left:17px;margin-top:24px}


.academy-hub-invitation h2{font-size:clamp(1.6rem,2.5vw,2.3rem);margin:0 0 12px}
.academy-hub-invitation p:not(.editorial-kicker){color:#ccdae4;line-height:1.8;max-width:800px}
.academy-hub-invitation a{color:#b9f5e9;text-underline-offset:4px}
.academy-print-answer{display:none}
@media print{
 .nexus-editorial{background:#fff!important;color:#111!important}
 .nexus-editorial .site-header,.nexus-editorial .editorial-footer,.nexus-editorial .saved-control,.nexus-editorial .consent-banner{display:none!important}
 .nexus-editorial .editorial-shell{max-width:100%;padding:0}
 .academy-page .article-header,.academy-module,.academy-objective,.academy-exercise,.academy-page .trail-conclusion{background:#fff!important;color:#111!important;border-color:#555!important}
 .academy-page p,.academy-page h1,.academy-page h2,.academy-page h3,.academy-page strong,.academy-page li{color:#111!important}
 .academy-actions a{color:#111!important;text-decoration:underline;border:0;padding:0}
 .academy-print-answer{display:block;color:#111!important}
 .academy-exercise details{display:none}
 .academy-module{break-inside:avoid}
}


/* M10: static-first search and an explainable graph with accessible text-first links. */
.discovery-controls{display:grid;grid-template-columns:minmax(240px,2fr) minmax(160px,1fr) minmax(140px,1fr) auto;gap:10px 16px;align-items:end}
.discovery-controls label{font-size:.85rem;font-weight:720;color:#d9e8ef}
.discovery-controls input,.discovery-controls select{grid-row:2;min-height:46px;width:100%;background:#122338;border:1px solid #66839b;color:#f7fcff;padding:10px 13px;font:inherit;border-radius:0}
.discovery-controls button{grid-column:4;grid-row:2;min-height:46px;padding:10px 17px;border:1px solid #a0c1c2;background:transparent;color:#d2f5f1;font:inherit;cursor:pointer}
.discovery-results{margin-top:18px}
.discovery-results .content-card h2{font-size:1.26rem;line-height:1.28;margin:0}
.discovery-results .content-card h2 a{color:#effaff}
.discovery-results [hidden]{display:none!important}
#discovery-count{color:#c2d5e0;margin:24px 0 8px}
#discovery-empty{padding:28px;border-left:3px solid var(--world-accent);background:#17283c;color:#d1e4ec}
.graph-topic{margin:18px 0;padding:0;border:1px solid #465e74;background:#14283b}
.graph-topic summary{display:list-item;cursor:pointer;margin:0;padding:20px 27px;font-weight:730;font-size:1.05rem;color:#eefafa}
.graph-topic>p{padding:0 26px;margin:15px 0;color:#cbdce8}
.graph-topic a{color:#adede1;text-underline-offset:4px}
.graph-edge-list{list-style:none;padding:0 24px 20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.graph-edge-list li{position:relative;padding:19px 22px;border-left:3px solid #85cdc5;background:#21394c;min-width:0}
.graph-edge-list li p{color:#cbd9e5;line-height:1.7}
.graph-edge-list .graph-relation-type{text-transform:capitalize;font-weight:750;color:#d5f5ed;margin-top:0}
.graph-world h2{font-size:clamp(1.5rem,2.7vw,2.3rem);margin:0}
.graph-world>p{color:#bccfdd}
.trail-step-jumps{display:flex;gap:16px;flex-wrap:wrap;margin-top:15px}
.trail-step-jumps a{color:#b6f4e9;text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){
 .discovery-controls{display:flex;flex-direction:column;align-items:stretch}
 .discovery-controls label{margin-top:8px}
 .graph-edge-list{grid-template-columns:1fr}
 .graph-topic summary{padding:17px}
 .graph-edge-list{padding:0 15px 15px}
}


/* M15 — coherent eleven-world Atlas. Deliberately square-edged, text-first and print-friendly. */
.atlas-hero{max-width:1050px}
.atlas-hero h1{max-width:860px}
.atlas-display{width:100%;max-width:650px;margin:20px auto 0;border:1px solid #334c5c;background:linear-gradient(135deg,#111f33,#20354b);padding:14px}
.atlas-constellation{display:block;width:100%;height:auto;max-height:580px}
.atlas-lines line{stroke:#628da0;stroke-width:1.7;opacity:.52}
.atlas-spokes line{stroke:#365a6d;stroke-width:1.5;stroke-dasharray:5 12;opacity:.7}
.atlas-centre{fill:#162c3d;stroke:#89c9c0;stroke-width:2}
.atlas-centre-label{fill:#d6fff2;font-size:21px;font-weight:750;letter-spacing:.14em}
.atlas-constellation-node circle{stroke:#9aaeba;stroke-width:3;fill:#213249}
.atlas-constellation-node text{fill:#d6e2e9;font-size:25px;font-weight:750}
.atlas-constellation-node.is-open circle{fill:#276a62;stroke:#9ef0da}
.atlas-constellation-node.is-open text{fill:#fff}
.atlas-diagram-note{font-size:.91rem;color:#aec5d2;max-width:850px}
.atlas-world-grid,.starter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:34px 0}
.atlas-world,.starter-path{border:1px solid #42586b;background:#17293a;padding:clamp(22px,3vw,36px);min-width:0;scroll-margin-top:20px}
.atlas-world h2,.starter-path h2{font-size:clamp(1.5rem,2.5vw,2.1rem);line-height:1.2;margin:5px 0 16px}
.atlas-world .atlas-question{font-weight:650;color:#deedea;font-size:1.09rem}
.atlas-world>p:not(.editorial-kicker),.starter-path>p:not(.editorial-kicker){line-height:1.75;color:#c7d7e1}
.atlas-world .atlas-status{font-size:.81rem;line-height:1.5;font-weight:800;letter-spacing:.07em;color:#b9e5db;margin-top:23px}
.atlas-world details{border-top:1px solid #475e70;margin-top:24px;padding-top:16px}
.atlas-world summary{cursor:pointer;color:#c3f1e7;font-weight:700}
.atlas-world details ul{padding-left:22px;margin-top:14px}
.atlas-world details li{line-height:1.7;margin:9px 0;color:#d2e1e9}
.atlas-world a,.starter-path a{color:#b9f7e6;text-decoration:underline;text-underline-offset:4px}
.atlas-reading{margin-top:22px}
.atlas-reading h3{font-size:1.1rem;margin-bottom:8px}
.atlas-reading ul{padding-left:20px}
.atlas-reading li{margin:10px 0}
.starter-path ol{padding-left:23px;margin-top:20px}
.starter-path li{margin:18px 0;line-height:1.5}
.starter-world{font-size:.88rem;color:#b9cdd8}
.starter-path .starter-finish{padding-top:16px;margin-top:18px;border-top:1px solid #435970}
@media(max-width:780px){.atlas-world-grid,.starter-grid{grid-template-columns:1fr}.atlas-display{padding:7px}.atlas-world,.starter-path{padding:22px}}
@media print{.atlas-display{display:none}.atlas-world-grid,.starter-grid{display:block}.atlas-world,.starter-path{margin-bottom:18px;break-inside:avoid;background:#fff;color:#111;border-color:#888}.atlas-world p,.starter-path p,.atlas-world a,.starter-path a{color:#111!important}}

/* M14: reusable text-first signature Lab layout, pending editorial approval.
 * Uses native details/summary as the full keyboard-usable interaction.
 */
.reflective-lab{max-width:100%;border-radius:0}
.reflective-lab>section{margin:20px 0;padding-top:8px}
.reflective-lab h3{font-size:clamp(1.25rem,2.7vw,1.8rem)}
.reflective-lab h4{font-size:1.16rem;margin:4px 0 14px}
.reflective-lab .scenario{border:1px solid #536a7d;padding:22px;margin:22px 0;background:#192c40}
.reflective-lab .scenario>p{max-width:78ch}
.reflective-lab details{margin:14px 0;border:1px solid #6a8293;padding:16px 18px;background:#122639}
.reflective-lab details summary{cursor:pointer;color:#d0faee;font-weight:720;line-height:1.5}
.reflective-lab details[open] summary{margin-bottom:12px}
.reflective-lab details p{line-height:1.7}
.reflective-lab a{text-decoration:underline;text-underline-offset:4px;color:#b8fae8}
.reflective-lab summary:focus-visible{outline:3px solid #e8d38b;outline-offset:4px}
@media(max-width:720px){.reflective-lab .scenario{padding:16px}.reflective-lab details{padding:14px}}
@media print{.reflective-lab details{background:#fff;color:#111;border-color:#555}.reflective-lab details summary{color:#111!important}.reflective-lab .scenario{break-inside:avoid}}

/* M16 genuine Academy-derived study companions, readable/printable without JS. */
.resource-toc{margin:30px 0;padding:20px 28px;border:1px solid #506679;background:#172b3d}
.resource-toc h2{font-size:1.25rem;margin:0 0 12px}
.resource-toc ol{margin:0;padding-left:24px}
.resource-toc li{padding:5px 0}
.resource-toc a,.practice-kit a{color:#b8f4e4;text-underline-offset:4px}
.practice-kit{padding:28px 0 40px;border-top:1px solid #5b7081;scroll-margin-top:30px}
.practice-kit h2{font-size:clamp(1.45rem,2.7vw,2.2rem);margin:6px 0 20px}
.practice-kit>p{line-height:1.8;color:#d1dee7;max-width:80ch}
.practice-kit .academy-exercise{margin:24px 0}
.resource-references{border:1px solid #42596e;padding:15px 20px;margin-top:22px}
.resource-references summary{cursor:pointer;font-weight:730;color:#bdf4eb}
.resource-references li{margin:10px 0}
.resource-note{max-width:76ch}
@media(max-width:680px){.resource-toc{padding:16px}.practice-kit{padding:24px 0}}
@media print{
 .practice-kit,.resource-toc,.practice-kit .academy-exercise{background:#fff!important;color:#111!important;border-color:#555!important}
 .practice-kit p,.practice-kit h2,.practice-kit h3,.practice-kit strong,.resource-toc h2,.resource-toc li,.practice-kit a{color:#111!important}
 .resource-toc{display:none}
 .practice-kit{break-before:page}
 .practice-kit .resource-references{display:none}
 .practice-kit .academy-exercise details{display:none}
 .practice-kit .academy-print-answer{display:block}
}

/* M19/M20 source-first Research Desk and original cross-method learning workshop */
.research-jumps,.research-practice,.research-world,.methods-experiment,.methods-synthesis{border:1px solid #476174;background:#17293c;padding:clamp(22px,3vw,35px);margin:26px 0;min-width:0;scroll-margin-top:24px}
.research-practice{background:#1a3043}
.research-jumps h2,.research-practice h2,.research-world h2,.methods-experiment h2,.methods-synthesis h2{font-size:clamp(1.45rem,2.5vw,2.2rem);line-height:1.2;margin:10px 0 17px}
.research-jumps ul{display:flex;flex-wrap:wrap;gap:14px 24px;list-style:none;margin:0;padding:0}
.research-jumps a,.research-world a,.methods-source a,.methods-synthesis a{color:#b7f4e5;text-decoration:underline;text-underline-offset:4px}
.research-practice li{margin:18px 0;line-height:1.8;max-width:88ch}
.research-world h3,.methods-synthesis h3{margin:24px 0 12px;font-size:1.2rem}
.research-items,.research-source-list{padding-left:22px}
.research-items li,.research-source-list li{margin:14px 0;line-height:1.72}
.research-items span,.research-note{font-size:.92rem;color:#b9c9d6}
.research-source-list li{border-top:1px solid #3e576c;padding-top:14px}
.research-source-list p{margin:5px 0 0}
.methods-workshop{display:grid;gap:18px}
.methods-experiment{margin:0}
.methods-experiment p,.methods-synthesis p{line-height:1.78;max-width:84ch}
.methods-controls{display:grid;grid-template-columns:minmax(160px,1fr) minmax(220px,2fr);align-items:center;gap:15px 22px;margin:20px 0}
.methods-controls label{font-weight:700;color:#ecf6f5}
.methods-controls select,.methods-controls input{width:100%;min-height:44px;accent-color:#9ee6d8}
.methods-controls select{border:1px solid #829cad;border-radius:0;background:#152b41;color:#f7fbfc;padding:8px 13px;font:inherit}
.methods-experiment [role=status],.methods-synthesis [role=status]{padding:18px 22px;border-left:3px solid #95e7d5;background:#203c50;color:#f3fffb;font-weight:630}
.methods-experiment details,.methods-synthesis details{padding:15px 20px;margin:18px 0;border:1px solid #516a81}
.methods-experiment summary,.methods-synthesis summary{cursor:pointer;color:#c2f7e7;font-weight:750}
.methods-experiment summary:focus-visible,.methods-synthesis summary:focus-visible{outline:3px solid #f4d687;outline-offset:4px}
.methods-synthesis{overflow-x:auto}
.methods-synthesis table{border-collapse:collapse;width:100%;min-width:580px;margin:18px 0}
.methods-synthesis th,.methods-synthesis td{border:1px solid #547085;text-align:left;padding:13px;vertical-align:top}
.methods-synthesis caption{text-align:left;margin:5px 0 12px;color:#d2e5eb}
@media(max-width:660px){.methods-controls{grid-template-columns:1fr;gap:8px}.research-jumps,.research-practice,.research-world,.methods-experiment,.methods-synthesis{padding:19px}}
@media print{.research-jumps{display:none}.research-practice,.research-world,.methods-experiment,.methods-synthesis{background:#fff!important;color:#111!important;border-color:#555!important;break-inside:avoid}
.research-practice *, .research-world *, .methods-experiment *, .methods-synthesis *{color:#111!important}
.methods-controls{display:none}.methods-experiment [role=status],.methods-synthesis [role=status]{background:#fff!important;border-color:#555!important}
.methods-synthesis table{min-width:0}.methods-synthesis th,.methods-synthesis td{border-color:#666!important}}
