@font-face{font-family:VisionSans;src:url('./fonts/vision-sans.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--bg:#080e16;--ink:#eef3f5;--secondary:#bbcbd3;--muted:#9caeb8;--accent:#8be6d1;--font:VisionSans,'Noto Sans SC','Microsoft YaHei',sans-serif;--margin:clamp(24px,4vw,78px)}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.6;display:flex;flex-direction:column}p,h1,h2,h3{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit;border:0;background:none;cursor:pointer}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,a,input{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent)}[hidden]{display:none!important}::selection{background:var(--accent);color:#071820}svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}.visually-hidden{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.skip-link{position:fixed;top:-80px;left:20px;background:var(--ink);color:var(--bg);padding:12px;z-index:99}.skip-link:focus{top:12px}
.site-header{position:relative;height:72px;flex:none;padding:0 var(--margin);display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:30;background:var(--bg);user-select:none}.brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:550;white-space:nowrap}.brand img{width:31px;height:31px}.brand-dot{margin:0 10px;color:var(--muted)}.site-header nav{display:flex;align-items:center;gap:27px;font-size:13px}.site-header nav a,.site-header nav button{display:flex;align-items:center;gap:9px;min-height:44px;padding:0}.site-header nav a:hover,.site-header nav button:hover{color:var(--accent)}.site-header nav svg{width:14px;height:14px}#motion-toggle{color:var(--secondary)}#motion-toggle svg{width:15px;height:15px}
#main{position:relative;flex:1;min-height:0}.subject-experience{height:100%;display:flex;flex-direction:column;overflow:hidden}.subject-navigation{position:relative;display:flex;align-items:center;gap:42px;justify-content:center;height:64px;flex:none;padding:0 var(--margin);z-index:25;background:var(--bg);user-select:none}.grade-selector{position:absolute;left:var(--margin);display:flex;gap:19px;align-items:center}.grade-selector button{min-height:44px;color:var(--muted);padding:0 2px;font-size:15px}.grade-selector button[aria-pressed=true]{color:var(--ink);font-weight:600}.grade-selector button[aria-pressed=true]:after{content:'';height:2px;width:18px;background:var(--accent);display:block;position:relative;margin:auto;bottom:0}.subject-list{display:flex;gap:45px}.subject-list button{font-size:19px;min-width:56px;min-height:48px;color:var(--muted);font-weight:450}.subject-list button[aria-selected=true]{color:var(--accent);font-weight:550}.subject-list button:hover{color:var(--ink)}#grade-label{position:absolute;right:var(--margin);font-size:12px;color:var(--muted)}
.subject-stage{position:relative;flex:1;min-height:0;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 44%,#122331 0%,#0b1520 38%,#080e16 75%)}#orbit-wall{position:absolute;inset:0;z-index:1;overflow:hidden}.reading-shade{position:absolute;pointer-events:none;z-index:3;width:min(620px,57vw);height:490px;left:50%;top:47%;transform:translate(-50%,-50%);background:radial-gradient(ellipse,#080e16f5 0%,#080e16df 40%,#080e1680 63%,transparent 74%)}.subject-story{position:absolute;z-index:5;left:50%;top:47%;transform:translate(-50%,-50%);width:min(440px,48vw);text-align:center;pointer-events:none}.subject-story button{pointer-events:auto}.subject-story h1{font-size:clamp(64px,6.3vw,84px);font-weight:500;line-height:1.15;letter-spacing:.025em;text-indent:.025em;color:#f0f5f6;outline:none}.subject-tagline{font-size:20px;line-height:1.5;margin-top:12px;font-weight:450;color:#dbe5e9}.subject-scale{font-size:16px;color:var(--secondary);margin-top:20px;font-variant-numeric:tabular-nums}.subject-scale strong{font-size:16px;color:var(--ink);font-weight:500}.scale-dot{padding:0 14px;color:#69848f}.subject-coverage{font-size:14px;color:#c7d5dc;margin-top:10px;white-space:nowrap}.subject-outcomes{font-size:14px;color:#d2dfe5;line-height:1.8;margin-top:18px}.enter-lab{display:flex;align-items:center;justify-content:space-between;gap:27px;width:248px;min-height:48px;margin:22px auto 0;padding:10px 18px;background:#9be5d3;color:#0b252b;font-size:15px;font-weight:550;border-radius:3px;transition:background .2s,transform .25s}.enter-lab:hover{background:#a8efde;transform:translateY(-2px)}.enter-lab svg{width:20px;height:20px}.directory-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:12px;color:var(--secondary);margin-top:6px}.directory-link svg{width:13px;height:13px}.directory-link:hover{color:var(--accent)}#subject-pending{font-size:15px;color:var(--muted);margin-top:26px}.stage-footer{position:absolute;z-index:10;bottom:0;left:0;width:100%;padding:10px var(--margin) 14px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(transparent,#080e16e8 45%);font-size:12px;color:var(--muted);min-height:64px}.stage-footer>a{display:flex;align-items:center;gap:12px;color:var(--accent);min-height:44px;font-size:14px}.stage-footer>a svg{width:15px;height:15px}.wall-controls{display:flex;align-items:center;gap:16px;position:absolute;left:50%;transform:translateX(-50%)}.wall-controls button{width:44px;height:44px;display:grid;place-items:center;color:var(--secondary)}.wall-controls svg{width:16px;height:16px}.wall-controls button:hover{color:var(--accent)}.wall-controls span{font-size:12px}.subject-story.reveal{animation:story-in .45s cubic-bezier(.16,1,.3,1) both}@keyframes story-in{from{opacity:.3;filter:blur(3px)}to{opacity:1;filter:blur(0)}}
.detail-view{height:100%;overflow:auto;overscroll-behavior:contain;padding:15px var(--margin) 50px;scrollbar-color:#405965 var(--bg);scrollbar-width:thin}.detail-top{display:flex;justify-content:space-between;gap:20px;margin-bottom:28px}.text-action{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:0;color:var(--accent);font-size:14px}.text-action svg{width:18px;height:18px}.detail-view h1{font-size:clamp(30px,3vw,44px);font-weight:500;line-height:1.35;outline:none}.detail-description{font-size:15px;color:var(--secondary);margin-top:14px}.books-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 35px;margin-top:30px}.book-entry{display:flex;flex-direction:column;gap:10px}.book-art{width:100%;height:160px;object-fit:contain}.book-entry h2{font-size:21px;font-weight:500}.book-entry p{font-size:13px;color:var(--secondary);margin:8px 0;line-height:1.8}.book-entry strong{font-size:13px;color:var(--accent);font-weight:450}.book-entry:hover h2{color:var(--accent)}.access-note{font-size:13px;color:var(--secondary);margin-top:30px}.directory-heading{display:flex;align-items:end;justify-content:space-between;gap:25px}.directory-heading label{font-size:13px;color:var(--secondary);display:flex;flex-direction:column;gap:8px}.directory-heading input{width:260px;min-height:44px;background:none;color:var(--ink);padding:8px 0;border:0;border-bottom:1px solid #536d7a;border-radius:0;caret-color:var(--accent)}.directory-heading input::placeholder{color:var(--muted)}.book-filters{display:flex;gap:28px;overflow-x:auto;scrollbar-width:none;margin:22px 0}.book-filters button{white-space:nowrap;min-height:44px;padding:0;font-size:14px;color:var(--muted)}.book-filters button[aria-pressed=true]{color:var(--accent)}.directory-book{margin:25px 0}.directory-book h2{font-size:23px;font-weight:500;color:var(--accent);margin-bottom:15px}.directory-models{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 30px}.directory-models a{display:flex;flex-direction:column;justify-content:center;min-height:68px;font-size:14px}.directory-models a:hover{color:var(--accent)}.directory-models small{font-size:12px;color:var(--muted);margin-top:4px}
#model-preview{position:fixed;inset:0;width:min(980px,92vw);max-height:90svh;padding:0;border:0;background:#0d1923;color:var(--ink);overflow:auto;scrollbar-width:thin}#model-preview::backdrop{background:#03080de8;backdrop-filter:blur(5px)}.close-button{position:absolute;right:12px;top:12px;z-index:5;width:44px;height:44px;background:#09121de8;border-radius:50%;display:grid;place-items:center}#preview-image{display:block;width:100%;height:min(49svh,480px);object-fit:contain;background:#080e16}.preview-copy{padding:22px 32px 27px}#preview-book{font-size:13px;color:var(--accent);margin-bottom:6px}.preview-copy h2{font-size:26px;font-weight:500;line-height:1.5}#preview-description{font-size:14px;color:var(--secondary);line-height:1.8;margin-top:10px}.preview-actions{display:flex;justify-content:space-between;gap:20px;margin-top:16px}.noscript{position:absolute;inset:40% 15% auto;background:var(--bg);z-index:40;padding:25px}
@media(max-width:1100px){#grade-label{display:none}.subject-list{gap:30px}.subject-story{width:440px}.subject-story h1{font-size:72px}.subject-tagline{font-size:20px}.subject-coverage{font-size:13px}.subject-outcomes{font-size:14px}.books-list{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-models{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-shade{width:570px}}
@media(max-height:760px) and (min-width:651px){.site-header{height:60px}.subject-navigation{height:54px}.subject-story{top:45%}.subject-story h1{font-size:67px}.subject-tagline{font-size:19px;margin-top:8px}.subject-scale{margin-top:16px}.subject-outcomes{margin-top:14px}.enter-lab{margin-top:18px}.stage-footer{padding-bottom:7px;min-height:54px}.reading-shade{height:420px;top:45%}}
@media(max-width:650px){:root{--margin:18px}.site-header{height:56px;gap:10px}.brand{font-size:15px;gap:8px}.brand img{width:25px;height:25px}.brand-dot{margin:0 5px}.site-header nav{gap:10px;font-size:12px}.site-header nav>a:first-child{display:none}#motion-toggle span,#account-link svg{display:none}#motion-toggle{width:36px;justify-content:center}.subject-navigation{height:84px;padding:0 18px;flex-direction:column;gap:0;justify-content:start}.grade-selector{position:static;gap:30px;height:36px}.grade-selector button{min-height:36px;font-size:14px}.subject-list{width:100%;justify-content:space-between;gap:0;height:48px}.subject-list button{min-width:60px;min-height:44px;font-size:18px}.subject-story{width:285px;top:46%}.subject-story h1{font-size:54px;line-height:1.12;letter-spacing:.02em}.subject-tagline{font-size:17px;margin-top:12px}.subject-scale{font-size:14px;margin-top:18px}.subject-scale strong{font-size:14px}.scale-dot{padding:0 10px}.subject-coverage{font-size:13px;line-height:1.8;white-space:normal;max-width:255px;margin:7px auto 0}.subject-outcomes{font-size:13px;line-height:1.8;max-width:260px;margin:15px auto 0}.enter-lab{width:242px;min-height:46px;font-size:14px;margin-top:20px}.directory-link{min-height:44px;margin-top:2px;font-size:12px}.reading-shade{width:380px;height:395px;top:46%;background:radial-gradient(ellipse,#080e16ed 0%,#080e16da 42%,#080e1680 65%,transparent 78%)}.stage-footer{padding:5px 18px 10px;min-height:50px;gap:12px}.stage-footer p{display:none}.stage-footer>a{font-size:12px;min-height:40px;margin-left:auto}.wall-controls{left:12px;transform:none;gap:6px}.wall-controls span{font-size:11px}.wall-controls button{width:38px;height:40px}.stage-footer>a svg{width:13px;height:13px}.detail-view{padding:8px 20px 35px}.detail-top{margin-bottom:20px}.detail-view h1{font-size:29px}.detail-description{font-size:13px}.books-list{grid-template-columns:1fr;gap:28px;margin-top:25px}.book-entry{flex-direction:row;align-items:center;gap:18px}.book-art{width:108px;height:130px;flex:none}.book-entry h2{font-size:20px}.book-entry p{font-size:12px}.book-entry strong{font-size:12px}.directory-heading{display:block}.directory-heading label{margin-top:20px}.directory-heading input{width:100%}.book-filters{gap:23px;margin:15px 0}.book-filters button{font-size:13px}.directory-models{grid-template-columns:1fr}.directory-book h2{font-size:21px}.directory-models a{font-size:14px}.text-action{font-size:12px;gap:8px}.preview-copy{padding:18px 20px}.preview-copy h2{font-size:21px}#preview-image{height:35svh}#preview-description{font-size:13px}.preview-actions{gap:15px}#subject-pending{font-size:13px}}
@media(max-height:700px) and (max-width:650px){.site-header{height:50px}.subject-navigation{height:76px}.subject-list{height:40px}.subject-list button{min-height:40px}.subject-story h1{font-size:48px}.subject-tagline{margin-top:8px;font-size:15px}.subject-scale{margin-top:12px}.subject-coverage{margin-top:4px;font-size:11px}.subject-outcomes{margin-top:9px}.enter-lab{margin-top:12px}.reading-shade{height:350px}.stage-footer{padding-bottom:5px}.subject-story{top:45%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

@media(min-width:651px){.subject-story{width:430px;top:50%}.subject-story h1{font-size:80px}.subject-tagline{margin-top:8px}.subject-scale{margin-top:16px}.subject-coverage{margin-top:8px}.subject-outcomes{margin-top:14px}.enter-lab{margin-top:18px}.directory-link{min-height:40px;margin-top:4px}.reading-shade{top:50%;width:540px;height:420px}}
@media(max-height:760px) and (min-width:651px){.subject-story h1{font-size:64px}.subject-tagline{font-size:18px}.subject-story{top:48%}.reading-shade{top:48%}}

.subject-coverage span+span:before{content:' · ';white-space:pre}.subject-outcomes span+span:before{content:'；'}
@media(max-width:650px){.subject-story{top:50%;width:280px}.subject-story h1{font-size:48px}.subject-tagline{font-size:16px;margin-top:10px}.subject-scale{margin-top:13px}.subject-coverage{margin-top:7px;line-height:1.7}.subject-coverage span,.subject-outcomes span{display:block;white-space:nowrap}.subject-coverage span+span:before,.subject-outcomes span+span:before{content:none}.subject-outcomes{margin-top:12px;line-height:1.7}.enter-lab{margin-top:14px}.directory-link{min-height:40px}.reading-shade{top:50%;height:360px}}

@media(min-width:651px){.subject-story{width:360px}}

#orbit-wall{mask-image:linear-gradient(to bottom,transparent,#000 24px,#000 calc(100% - 54px),transparent calc(100% - 8px));-webkit-mask-image:linear-gradient(to bottom,transparent,#000 24px,#000 calc(100% - 54px),transparent calc(100% - 8px))}

/* Model preview: independent text, original image and controls; no homepage layout overrides. */
#model-preview{width:min(1120px,calc(100vw - 48px));height:min(860px,calc(100dvh - 48px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:0;overflow:auto;overscroll-behavior:contain;background:#0c1721;box-shadow:0 24px 70px #0008}
#model-preview[open]{display:flex;flex-direction:column}
#model-preview:not([open]){display:none}
#model-preview .preview-header{display:flex;align-items:flex-start;gap:24px;padding:22px 26px 19px;flex:none}
#model-preview .preview-heading{min-width:0;flex:1}
#model-preview #preview-title{font-size:clamp(21px,2.2vw,30px);line-height:1.4;font-weight:550;overflow-wrap:anywhere;text-wrap:pretty}
#model-preview .preview-meta{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:8px;line-height:1.55}
#model-preview #preview-book{margin:0;font-size:14px;color:var(--accent)}
#model-preview #preview-chapter{min-width:0;font-size:14px;color:var(--secondary);overflow-wrap:anywhere}
#model-preview .close-button{position:static;flex:none;width:44px;height:44px;margin:0;border-radius:0;background:#ffffff08}
#model-preview .close-button:hover{background:#ffffff14}
#model-preview .preview-media{position:relative;display:grid;place-items:center;flex:1 1 auto;min-width:0;min-height:140px;overflow:hidden;background:#080e16}
#model-preview #preview-image{grid-area:1/1;display:block;width:100%;height:100%;min-width:0;min-height:0;max-height:none;object-fit:contain;object-position:center;background:#080e16}
#model-preview .preview-image-state{grid-area:1/1;max-width:480px;padding:24px;text-align:center;font-size:15px;line-height:1.75;color:var(--secondary)}
#model-preview #preview-retry{min-height:44px;margin-top:14px;padding:4px 14px;color:var(--accent);text-decoration:underline;text-underline-offset:5px}
#model-preview .preview-footer{flex:none;padding:16px 26px 22px}
#model-preview #preview-description{margin:0;font-size:14px;line-height:1.7;color:var(--secondary)}
#model-preview .preview-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;margin-top:14px}
#model-preview .preview-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px}
#model-preview .preview-pagination button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:82px;min-height:44px;padding:4px 8px;font-size:14px}
#model-preview .preview-pagination button:hover{color:var(--accent);background:#ffffff08}
#model-preview .preview-pagination svg{width:16px;height:16px}
#model-preview #preview-position{min-width:64px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums;color:var(--muted)}
#model-preview .preview-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 20px;margin:0}
#model-preview .preview-actions .text-action{min-height:44px;font-size:14px}
#model-preview #preview-learn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:9px 16px;background:var(--accent);color:#09231e}
#model-preview #preview-return{padding:6px 0;color:var(--secondary)}
@media(max-width:650px){
 #model-preview{width:calc(100vw - 20px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}
 #model-preview .preview-header{padding:16px 14px 14px;gap:8px}
 #model-preview #preview-title{font-size:21px;line-height:1.4}
 #model-preview .preview-meta{display:block;margin-top:7px}
 #model-preview #preview-book,#model-preview #preview-chapter{display:block;font-size:13px;line-height:1.55}
 #model-preview .preview-media{min-height:120px}
 #model-preview .preview-footer{padding:13px 14px 16px}
 #model-preview #preview-description{font-size:13px;line-height:1.65}
 #model-preview .preview-controls{display:block;margin-top:10px}
 #model-preview .preview-pagination{width:100%;gap:4px}
 #model-preview .preview-pagination button{min-width:92px;font-size:13px}
 #model-preview .preview-actions{display:grid;grid-template-columns:1fr 1.5fr;gap:12px;margin-top:10px}
 #model-preview .preview-actions .text-action{font-size:13px;justify-content:center}
 #model-preview #preview-learn{padding:9px 10px;gap:6px}
}

/* Shared-space physics exhibition. Transparent specimens replace screenshot planes. */
.subject-stage{background:radial-gradient(ellipse at 50% 42%,#142430 0,#0c1721 42%,#080e16 78%)}
#orbit-wall{mask-image:none;-webkit-mask-image:none;inset:0;pointer-events:none}
.specimen-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
.specimen-hit{position:absolute;left:0;top:0;padding:0;margin:0;background:none;border:0;will-change:transform;pointer-events:auto;outline-offset:0}
.specimen-hit:focus-visible{outline:1px solid var(--accent);border-radius:50%}
.specimen-tooltip{position:absolute;z-index:9;transform:translate(-50%,0);max-width:230px;text-align:center;font-size:13px;line-height:1.6;color:#e5f4f3;background:#0a1521ed;padding:5px 10px;border-radius:3px;pointer-events:none}
.reading-shade{display:none}
.subject-story{top:calc(50% - 24px);width:320px}
.subject-story h1{font-size:66px;line-height:1.12;font-weight:500;letter-spacing:0;text-indent:0}
.subject-tagline{font-size:18px;margin-top:8px;line-height:1.5}
.subject-scale{margin-top:14px;font-size:15px;line-height:1.5}.subject-scale strong{font-size:15px}
.subject-coverage{font-size:13px;line-height:1.6;margin-top:6px;white-space:normal}
.subject-outcomes{font-size:13px;line-height:1.65;margin-top:12px}
.subject-coverage span,.subject-outcomes span{display:block}
.subject-coverage span+span:before,.subject-outcomes span+span:before{content:none}
.enter-lab{margin-top:16px;min-height:46px;width:240px}.directory-link{min-height:34px;margin-top:3px}
.stage-footer{background:none;min-height:48px;padding-top:0;padding-bottom:4px}
#preview-live{position:absolute;inset:0;touch-action:none;cursor:grab;background:radial-gradient(ellipse at 50% 50%,#142e3a,#09131c 72%)}
#preview-live:active{cursor:grabbing}#preview-live canvas{pointer-events:auto}
#model-preview .preview-controls{gap:12px}
@media(min-width:701px) and (max-height:800px){
 .site-header{height:58px}.subject-navigation{height:50px}
 .subject-story{width:310px}.subject-story h1{font-size:52px;line-height:1.08}
 .subject-tagline{font-size:16px;margin-top:6px;line-height:1.5}
 .subject-scale{font-size:14px;margin-top:10px;line-height:1.5}.subject-scale strong{font-size:14px}
 .subject-coverage{margin-top:4px;font-size:12px;line-height:1.6}.subject-coverage span{display:inline}.subject-coverage span+span:before{content:' · '}
 .subject-outcomes{font-size:12px;margin-top:8px;line-height:1.6}
 .enter-lab{margin-top:12px;min-height:44px}.directory-link{min-height:32px;margin-top:0}
}
@media(max-width:700px){
 .subject-story{width:280px;top:calc(50% - 24px)}.subject-story h1{font-size:46px}
 .subject-tagline{font-size:16px;margin-top:7px}.subject-scale{font-size:14px;margin-top:10px}.subject-scale strong{font-size:14px}
 .subject-coverage{font-size:12px;margin-top:5px;line-height:1.6}
 .subject-outcomes{font-size:12px;margin-top:8px;line-height:1.6}
 .enter-lab{margin-top:12px;min-height:44px}.directory-link{min-height:32px;margin-top:0}
 #model-preview .preview-controls{display:flex}#model-preview .preview-pagination{width:auto;flex:1}
 #model-preview .preview-pagination button{min-width:65px}#model-preview .preview-actions{width:100%}
 #preview-motion{font-size:12px!important}
}
@media(max-width:700px) and (max-height:720px){
 .subject-story h1{font-size:36px}.subject-tagline{font-size:14px;margin-top:4px}
 .subject-coverage{font-size:11px;line-height:1.5}.subject-outcomes{font-size:11px;line-height:1.5;margin-top:5px}
 .subject-scale{margin-top:7px;font-size:12px}.subject-scale strong{font-size:12px}
 .enter-lab{margin-top:9px}.subject-story .directory-link{min-height:30px}
}

/* Compact reading spine leaves room for full apparatus rather than icon-sized models. */
.subject-coverage span{display:inline}.subject-coverage span+span:before{content:' · '}
.subject-outcomes span{display:inline}.subject-outcomes{white-space:nowrap}
.subject-story{width:310px}.subject-coverage{white-space:nowrap;font-size:12px}
.stage-footer>.directory-link{font-size:12px;margin:0;min-height:44px}
#wall-hint{display:none}
#orbit-wall[data-loading="true"]::after{content:"正在载入原课程模型 · " attr(data-loading-count);position:absolute;top:14px;left:50%;transform:translateX(-50%);color:#a9c6ce;font-size:12px;white-space:nowrap;letter-spacing:.04em}
#orbit-wall[data-error="load"]::after{content:"展示暂未加载，可从目录进入课程";position:absolute;top:14px;left:50%;transform:translateX(-50%);color:#a9c6ce;font-size:12px;white-space:nowrap}
.specimen-tooltip{z-index:40}
@media(max-width:700px){.subject-story{width:280px}.subject-coverage{font-size:11px}.stage-footer>.directory-link{font-size:11px}.wall-controls span{display:none}.wall-controls{left:50%;transform:translateX(-50%);gap:0}.stage-footer>a{font-size:11px}.subject-outcomes{font-size:12px}}

/* One textbook chooser, followed by its chapter/model catalogue. */
.directory-chapter{margin:32px 0 38px}.directory-chapter :is(h2,h3){display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding-bottom:14px;margin:0 0 10px;border-bottom:1px solid #2c414c;font-size:19px;line-height:1.65;font-weight:500;color:var(--ink)}.directory-chapter :is(h2,h3) span{flex-shrink:0;font-size:12px;font-weight:400;color:var(--muted)}.directory-access-note{font-size:13px;color:var(--secondary);margin:0 0 24px}.directory-models a{padding:10px 0;min-height:76px;line-height:1.7;overflow-wrap:anywhere}.directory-models a:hover small{color:var(--accent)}.directory-empty{margin:40px 0;color:var(--secondary)}@media(max-width:700px){.directory-chapter :is(h2,h3){font-size:17px;gap:12px}.directory-heading h1{font-size:26px}.directory-chapter{margin:26px 0}.directory-chapter :is(h2,h3) span{font-size:11px}.directory-models a{min-height:70px}}
