/* A single continuous composition; long-form course reading keeps its themes. */
body.spatial-home{--paper:#f7f7ef;--white:#fffef9;--ink:#252b28;--text:#424a43;--muted:#70796b;--line:#dfe2d6;--soft:#eef0e5;--accent:#777f64;background:var(--paper);color:var(--text);color-scheme:light;overflow-x:clip}
html[data-reading-theme=night] body.spatial-home{background:var(--paper)}
.spatial-home .topbar{width:min(960px,calc(100% - 28px));height:56px;margin:10px auto 0;top:8px;min-height:56px;padding:7px 18px;gap:28px;border:1px solid #d5dacb;border-radius:9px;background:#f8f9f1f2;box-shadow:0 1px 0 #fff9;backdrop-filter:blur(16px);color:#2a322b}
.spatial-home .brand{color:#2f382f;font-size:15px;gap:10px}.spatial-home .brand-mark{width:35px;height:35px;font-size:27px;line-height:35px}.spatial-home .topnav{gap:22px}.spatial-home .brand small{color:#737b68}.spatial-home .brand-mark{background:#fafbf4;border-color:#a2ad91;color:#3d493a;box-shadow:inset 0 0 0 4px #f4f6e9}.spatial-home .brand-mark span{color:#948466}
.spatial-home .topnav a{color:#666f5d}.spatial-home .topnav a:hover,.spatial-home .topnav a.active{color:#263625}.spatial-home .search-trigger{color:#69745e;background:#fdfef8;border-color:#d8dece;border-radius:5px}.spatial-home .search-trigger kbd{color:#6d7862;background:#f1f4e8;border-color:#d8dfca}.spatial-home .global-appearance{color:#69745e}
.spatial-home #main>.shell{max-width:1360px;padding:0 48px}.spatial-home .hero{display:block;position:relative;isolation:isolate;min-height:0;padding:clamp(16px,2.6vh,28px) 0 0;margin:0;gap:0}
.spatial-home .hero::before,.spatial-home .hero::after{content:none}.spatial-home .hero-copy{position:relative;z-index:5;max-width:920px;text-align:center;margin:0 auto;pointer-events:none}.spatial-home .hero-copy a{pointer-events:auto}
.spatial-home .hero .eyebrow{font:11px/1.4 var(--sans);letter-spacing:.16em;justify-content:center;color:#858c7b;margin-bottom:17px}.spatial-home .hero .eyebrow::before{content:none}
.spatial-home .hero h1{font-family:"Songti SC","Noto Serif CJK SC","STSong",serif;font-size:clamp(42px,4.7vw,66px);font-weight:500;letter-spacing:-.055em;line-height:1.3;color:#293026;margin:0 0 18px;text-wrap:balance}
.spatial-home .hero-description{max-width:660px;margin:auto;font-size:15px;line-height:1.9;color:#75806b;letter-spacing:.015em}.spatial-home .hero .actions{justify-content:center;gap:24px;margin-top:24px}
.spatial-home .hero .button,html[data-reading-theme=night] .spatial-home .hero .button{padding:12px 24px;background:#e7e3ee;border:1px solid #6f6877;color:#33303b;border-radius:6px;font-size:13px;box-shadow:0 2px 0 #69617026}.spatial-home .hero .button:hover{background:#efecf5;box-shadow:0 4px 9px #55506416;transform:translateY(-2px)}
.spatial-home .hero .text-link{font-size:13px;color:#6b775e;border-color:#bfc9af}.spatial-home :focus-visible{outline:2px solid #627b59;outline-offset:5px}
.monitor-stage{position:relative;isolation:isolate;width:100vw;max-width:1920px;height:396px;left:50%;transform:translateX(-50%);margin-top:8px;touch-action:pan-y}
.monitor-canvas,.monitor-fallback{position:absolute;z-index:3;width:min(520px,41.6vw);height:334.4px;left:50%;top:4px;transform:translateX(-50%);pointer-events:none}
.monitor-canvas{opacity:0;transition:opacity .45s ease}.monitor-canvas canvas{position:relative;z-index:2;display:block;width:100%;height:100%}
.monitor-canvas::before{content:'';position:absolute;left:31%;right:31%;height:20px;bottom:7px;border-radius:50%;background:#313a2925;filter:blur(13px);z-index:0}
.monitor-fallback{opacity:1;transition:opacity .45s ease}.monitor-fallback img{display:block;max-width:100%;width:100%;height:100%;object-fit:contain}
.monitor-stage[data-state=ready] .monitor-canvas{opacity:1}.monitor-stage[data-state=ready] .monitor-fallback{opacity:0}.monitor-stage[data-state=fallback] .monitor-canvas{visibility:hidden}
.prompt-stream{position:absolute;z-index:1;left:0;top:-140px;width:calc(50% - 95px);height:440px;pointer-events:none;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 13%,#000 91%,transparent)}
.prompt-stream svg{width:100%;height:100%;overflow:visible}.prompt-stream text{fill:#929c87;font-family:Georgia,"Times New Roman",serif;font-size:23px;letter-spacing:.16px}
.monitor-output{position:absolute;z-index:1;left:calc(50% + 255px);top:13px;width:calc(50% - 255px);height:350px;transform-origin:0 70%}
.monitor-output .outcome-strip-heading,.monitor-output .outcome-strip-note{visibility:hidden;height:0;min-height:0;padding:0;margin:0;overflow:hidden}
.monitor-output .outcome-film-viewport{padding:0}.monitor-output .outcome-card{box-shadow:0 3px 8px #35473309}
.monitor-stage .outcome-filmstrip.is-parent-paused .outcome-film-track,.monitor-stage .outcome-filmstrip.is-parent-paused .outcome-card,.monitor-stage .outcome-filmstrip.is-parent-paused *{animation-play-state:paused!important}
.monitor-controls{position:absolute;z-index:5;left:50%;bottom:30px;width:min(490px,90vw);transform:translateX(-50%);display:flex;justify-content:center;align-items:center;gap:24px;font-size:11px;color:#849075}
.monitor-controls button{font:11px/1.5 var(--sans);border:1px solid #d8dfcb;border-radius:20px;background:#fbfcf3;color:#68795a;padding:6px 13px;cursor:pointer;transition:background .2s}.monitor-controls button:hover{background:#edf2e1}.monitor-controls button:disabled{opacity:.55;cursor:default}
.monitor-caption{position:absolute;z-index:5;bottom:1px;left:50%;transform:translateX(-50%);margin:0;width:max-content;max-width:94vw;color:#929b84;font-size:10px;line-height:1.6;text-align:center}
.spatial-home .stats-strip{padding:27px 0;border-top:1px solid #dfe4d3;border-bottom:1px solid #dfe4d3;gap:36px}.spatial-home .stats-strip::before{content:none}.spatial-home .stat strong{font-family:"Songti SC",serif;font-size:34px;font-weight:400}.spatial-home .stat span{font-size:13px}.spatial-home .strip-note{font-size:12px;line-height:1.8}
.spatial-home .section-head{margin:48px 0 28px}.spatial-home .section-head h2{font-family:"Songti SC",serif;font-size:32px;font-weight:500}.spatial-home .section-head p{font-size:13px}.spatial-home .chapter-row{padding-block:27px}.spatial-home .chapter-row h3{font-weight:500}.spatial-home .chapter-grid{column-gap:48px}
body.spatial-reading{background-image:radial-gradient(ellipse at 94% 8%,#637e4b0b,transparent 45%),repeating-linear-gradient(151deg,transparent 0 61px,#526b4007 61px 62px,transparent 62px 95px)}
html[data-reading-theme=night] body.spatial-reading{background-image:radial-gradient(ellipse at 94% 8%,#8fba6810,transparent 45%),repeating-linear-gradient(151deg,transparent 0 61px,#aec39406 61px 62px,transparent 62px 95px)}
body.spatial-reading.reading-focus,html[data-reading-theme=night] body.spatial-reading.reading-focus{background-image:none}
@media(max-width:1120px){.spatial-home .topbar{padding-inline:16px}.spatial-home #main>.shell{padding-inline:30px}.spatial-home .hero h1{font-size:48px}.monitor-output{left:calc(50% + 213px);width:calc(50% - 213px);top:8px;transform:none}.prompt-stream{width:calc(50% - 56px);top:-120px}.prompt-stream text{font-size:24px}}
@media(max-width:760px){.spatial-home .topbar{width:calc(100% - 20px);height:54px;margin-top:10px;top:5px;min-height:54px;padding:7px 12px;gap:10px}.spatial-home #main>.shell{padding-inline:22px}.spatial-home .hero{padding-top:20px}.spatial-home .hero .eyebrow{font-size:9px;margin-bottom:14px}.spatial-home .hero h1{font-size:clamp(33px,8.2vw,43px);line-height:1.4;letter-spacing:-.055em;margin-bottom:14px}.spatial-home .hero-description{font-size:13px;line-height:1.9}.spatial-home .hero .actions{gap:17px;margin-top:19px}.spatial-home .hero .button{font-size:12px;padding:10px 17px}.spatial-home .hero .text-link{font-size:11px}
.monitor-stage{margin-top:8px;height:490px}.monitor-canvas,.monitor-fallback{width:calc(80vw - 35.2px);height:232.8px;top:8px}.monitor-canvas::before{bottom:5px;left:30%;right:30%;height:10px;filter:blur(9px)}.prompt-stream{left:-140px;top:-21px;width:460px;height:275px;opacity:.8;z-index:2;mask-image:linear-gradient(90deg,transparent,#000 35%,#000 65%,transparent)}.prompt-stream text{font-size:23px}.monitor-output{left:-100px;top:234px;width:calc(125vw + 125px);height:255px;transform:scale(.8);transform-origin:0 0}.monitor-output .outcome-filmstrip{pointer-events:none}.monitor-controls{bottom:32px;font-size:10px;gap:18px}.monitor-controls button{font-size:11px}.monitor-caption{bottom:0;font-size:9px;max-width:88vw;width:330px}.spatial-home .stats-strip{padding-block:23px;gap:17px}.spatial-home .stat{padding-right:19px}.spatial-home .stat strong{font-size:28px}.spatial-home .stat span,.spatial-home .strip-note{font-size:11px}.spatial-home .section-head{margin-top:36px}.spatial-home .section-head h2{font-size:26px}.spatial-home .section-head p{font-size:11px}.spatial-home .chapter-grid{column-gap:0}body.spatial-reading,html[data-reading-theme=night] body.spatial-reading{background-image:none}}
@media(prefers-reduced-motion:reduce){.monitor-canvas,.monitor-fallback{transition:none}}
@media print{.monitor-stage{display:none}.spatial-home .topbar{position:static}}

/* A display scaled to 80%, with more room for input and output on either side. */
@media (min-width:761px){
 .prompt-stream{width:calc(50% - 30px);height:426px;top:-107px}
 .prompt-stream text{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:28.8px;letter-spacing:.12px}
 .monitor-output{left:calc(50% + 165.6px);width:calc(50% - 165.6px);top:48px}
}
@media(min-width:1600px){.monitor-canvas,.monitor-fallback{width:560px;height:354.4px;top:4px}.monitor-stage{height:416px}.monitor-output{left:calc(50% + 179.2px);width:calc(50% - 179.2px);top:55px}}
@media(max-width:760px){.prompt-stream text{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:28.8px;letter-spacing:.12px}}
/* The homepage visual is autonomous, including native video elements. */
.monitor-stage{pointer-events:none;user-select:none;-webkit-user-select:none}
.monitor-canvas{overflow:clip;overflow-clip-margin:12px}
/* Home editorial pass: cool silver entrance, one action, concise navigation. */
body.spatial-home{--paper:#f1f4f7;--white:#ffffff;--ink:#202b34;--text:#465563;--muted:#788a9a;--line:#d5dee6;--soft:#e8eef3;background:linear-gradient(135deg,#f6f8fa 0%,#edf2f6 43%,#e6edf3 100%);color:#344550}
html[data-reading-theme=night] body.spatial-home{background:linear-gradient(135deg,#f6f8fa,#e6edf3)}
.spatial-home .topbar{background:#f6f9fcdf;border-color:#cdd8e3;box-shadow:0 1px 0 #fff8}.spatial-home .brand{color:#293946}.spatial-home .brand small{color:#82919c}.spatial-home .brand-mark{color:#455561;background:#f8fafc;border-color:#a8b6c2;box-shadow:inset 0 0 0 4px #edf2f6}.spatial-home .brand-mark span{color:#829ab0}
.spatial-home .topnav a{color:#708393}.spatial-home .topnav a:hover{color:#243c4e}.spatial-home .topnav a[data-nav=courses],.spatial-home .topnav a[data-nav=about],.spatial-home .global-appearance{display:none}
.spatial-home .search-trigger{background:transparent;border:0;color:#677f92;min-width:0;padding:8px}.spatial-home .search-trigger span{font-size:0}.spatial-home .search-trigger span::after{content:'搜索';font:12px/1 var(--sans)}.spatial-home .search-trigger kbd{display:none}
.spatial-home .hero{padding-top:clamp(16px,2.6vh,28px)}.spatial-home .hero h1{color:#263746;font-family:var(--sans);font-size:clamp(42px,4.6vw,66px);font-weight:500;letter-spacing:-.055em;margin-bottom:18px}.spatial-home .hero-description{font-size:15px;color:#8a99a5}.spatial-home .hero .actions{margin-top:12px}
.spatial-home .hero .button,html[data-reading-theme=night] .spatial-home .hero .button{background:#273f53;border-color:#273f53;color:#f2f6fa;box-shadow:none;padding:9px 25px;border-radius:5px}.spatial-home .hero .button:hover{background:#35566e;box-shadow:none}
.spatial-home .prompt-stream{opacity:.8}.spatial-home .prompt-stream text{fill:#8296a8}.spatial-home .outcome-ribbon-body{stroke:#edf2f7}.spatial-home .outcome-ribbon-edge{stroke:#aabccb}.spatial-home .outcome-ribbon-perforations{stroke:#829bac}
.spatial-home .monitor-stage{margin-top:8px}.spatial-home .monitor-canvas::before{background:#243d5521}
.spatial-home .chapter-row>div>p{display:none}.spatial-home .chapter-meta>span:nth-child(2){display:none}.spatial-home .chapter-row{padding-block:22px;border-color:#d5e0e8}.spatial-home .chapter-row h3{font-size:17px;color:#354957}.spatial-home .chapter-number,html[data-reading-theme=night] .spatial-home .chapter-number{color:#8a9dac}.spatial-home .chapter-meta{color:#91a0ac}.spatial-home .section-head h2{font-family:var(--sans);font-weight:500;color:#2f4352;font-size:30px}.spatial-home .section-head p{color:#94a3af}
.spatial-home .site-footer{color:#96a5b0;border-color:#dce5ec}.spatial-home .site-footer>span{display:none}
@media(max-width:760px){.spatial-home .hero{padding-top:20px}.spatial-home .hero h1{font-size:clamp(33px,8.4vw,44px)}.spatial-home .hero-description{font-size:13px}.spatial-home .chapter-row h3{font-size:16px}.spatial-home .hero .button{font-size:12px;padding:9px 22px}}
/* The rotating Create line occupies the quiet area immediately below the display. */
.monitor-stage [data-create-line]{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);width:max-content;max-width:92vw;text-align:center;margin:0;font-size:28px}
@media(max-width:760px){.monitor-stage [data-create-line]{top:247px;bottom:auto;font-size:22px;min-height:38px}}
