/* CNEC uses a contained 16:9 film plane: originals never leave their mounts. */
.cn-standalone{margin:0;background:#171b21}.cn-exhibition{--cn-ink:#242925;--cn-paper:#edeae2;--cn-blue:#012696;--cn-mint:#a4e2c6;position:relative;background:#171b21;color:var(--cn-ink);font-family:Arial,Helvetica,sans-serif;isolation:isolate;scroll-margin-top:0}.cn-exhibition *{box-sizing:border-box}.cn-exhibition button,.cn-exhibition a{-webkit-tap-highlight-color:transparent}.cn-exhibition button{font:inherit;cursor:pointer}.cn-exhibition button:focus-visible,.cn-exhibition a:focus-visible{outline:3px solid #3e7be8;outline-offset:5px}.cn-exhibition a{color:inherit}.cn-stage{position:relative}.cn-top,.cn-bottom{background:#171b21;color:#f3f0e8;position:relative;z-index:30}.cn-top{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 3.4%;font-size:10px;letter-spacing:.14em}.cn-top a{text-decoration:none}.cn-top a span{color:#babfc2}.cn-top button,.cn-controls button,.cn-credits{border:0;background:none;color:inherit;letter-spacing:.1em;font-size:10px;padding:8px 0}.cn-brand{font-size:10px;color:#b4c8d8}.cn-bottom{padding:12px 3.4% 14px}.cn-bottom-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:30px}.cn-location{font-size:10px;letter-spacing:.14em}.cn-controls{display:flex;align-items:center;gap:20px;white-space:nowrap}.cn-controls .cn-play{color:var(--cn-mint);min-width:91px;text-align:left}.cn-controls .cn-prev,.cn-controls .cn-next{font-size:20px;line-height:1;padding:4px 8px}.cn-time{font:10px/1.3 monospace;color:#c9cdcf}.cn-minor{font-size:9px;letter-spacing:.08em;color:#b8c1c3}.cn-credits{font-size:9px;color:#b8c1c3}.cn-progress{position:absolute;bottom:0;left:0;width:100%;height:2px;background:#42464a}.cn-progress i{display:block;width:100%;height:100%;background:var(--cn-mint);transform:scaleX(0);transform-origin:0 50%}.cn-chapters{display:flex;gap:7px}.cn-chapters button{position:relative;border:0;padding:10px 2px;background:transparent;width:23px;color:inherit}.cn-chapters button:after{content:'';display:block;height:2px;background:#657174;width:100%}.cn-chapters button[aria-current]:after{background:var(--cn-mint)}.cn-chapters span{position:absolute;bottom:33px;left:50%;transform:translateX(-50%);background:#171b21;color:white;padding:8px 11px;white-space:nowrap;visibility:hidden;opacity:0;transition:opacity .2s}.cn-chapters button:hover span,.cn-chapters button:focus-visible span{visibility:visible;opacity:1}
.cn-frame{width:100%;position:relative;container-type:inline-size;background:var(--cn-paper)}.cn-scene{position:relative;min-height:760px;overflow:hidden;background:#dfd7c8}.cn-environment,.cn-tone{position:absolute;inset:0;pointer-events:none}.cn-environment{transform-origin:70% 47%;will-change:transform}.cn-background{width:100%;height:100%;object-fit:cover;display:block}.cn-tone{background:linear-gradient(90deg,rgba(245,242,234,.88),rgba(245,242,234,.36) 33%,transparent 50%)}.cn-dark .cn-tone{background:linear-gradient(90deg,rgba(12,22,27,.88),rgba(12,22,27,.5) 45%,rgba(12,22,27,.12))}.cn-copy{position:absolute;left:5.7%;top:21%;width:29%;z-index:5}.cn-kicker{font-size:clamp(9px,.67cqw,12px);letter-spacing:.14em;line-height:1.55;margin-bottom:1.7cqw;color:#365449;font-weight:600}.cn-copy h2{font:normal clamp(33px,3.2cqw,64px)/1.07 Georgia,'Times New Roman',serif;letter-spacing:-.045em;margin:0 0 1.6cqw;color:var(--cn-ink);text-wrap:balance}.cn-copy p{font-size:clamp(15px,1.18cqw,22px);line-height:1.6;margin:0;color:#3b413d}.cn-dark .cn-copy h2,.cn-dark .cn-copy p{color:#fffaf0}.cn-dark .cn-kicker{color:#b8dfcf}.cn-hero .cn-copy{width:43%;top:23%}.cn-hero h2{font-size:clamp(45px,6.3cqw,111px)}.cn-hero p{width:82%;max-width:490px}.cn-enter{display:inline-flex;gap:35px;align-items:center;margin-top:2.1cqw;background:transparent;border:0;border-bottom:1px solid currentColor;padding:10px 0;color:inherit;font-size:10px!important;letter-spacing:.14em;text-decoration:none}.cn-dark .cn-enter{color:#e4f2e9}.cn-enter span{font-size:20px}.cn-evidence-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:1.4cqw}.cn-link{background:transparent;border:0;border-bottom:1px solid #838b80;color:#334d44;padding:5px 0;text-align:left;font-size:clamp(9px,.69cqw,12px)!important;line-height:1.45}.cn-dark .cn-link{color:#e5e9e3}.cn-record{display:block;border:0;padding:0;background:#fffdf8;text-align:left;color:#222;position:relative;overflow:hidden;width:100%;height:100%;box-shadow:0 3px 8px #20180c22}.cn-record img{display:block;width:100%;height:calc(100% - 26px);object-fit:contain;object-position:center;background:#fff}.cn-record>span{height:26px;font-size:clamp(8px,.7cqw,12px);line-height:26px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 10px;display:block;letter-spacing:.01em}.cn-record i{font-style:normal;float:right}.cn-venue{position:absolute;left:67%;top:10%;height:78%;width:25%;z-index:4;transform:rotate(1deg)}.cn-venue .cn-record{padding:8px 8px 0;background:#eeeade}.cn-venue .cn-record img{object-fit:contain;background:#eeeade}.cn-board{position:absolute;left:39.1%;top:12.7%;width:56.2%;height:51.8%;z-index:3;transform-origin:center}.cn-question-board{padding:2% 3%;display:flex;flex-direction:column;background:#f4f0e6;gap:12px}.cn-question-board blockquote{margin:0;font:normal clamp(20px,2cqw,36px)/1.16 Georgia,serif;color:#152c27}.cn-question-board small{display:block;font:clamp(7px,.6cqw,10px)/1.5 Arial,sans-serif;letter-spacing:.13em;margin-top:.6cqw}.cn-question-board .cn-record{min-height:0;flex:1}.cn-question-board .cn-record img{object-position:center}.cn-method-board{background:#f2efe5;padding:1.4%;display:grid;grid-template-columns:38% 1fr;gap:3%}.cn-process{display:flex;flex-direction:column;justify-content:center;gap:1.6cqw}.cn-process span{font-size:.8cqw;color:#56756b;border-top:1px solid #afbbb1;padding-top:.65cqw}.cn-process b{display:block;font:normal clamp(14px,1.4cqw,25px)/1.18 Georgia,serif;margin-top:4px;color:#233c32}.cn-honors-board{background:#f3f0e6;padding:1%;display:flex;flex-direction:column;gap:10px}.cn-honors-board .cn-record{flex:1;min-height:0}.cn-honor-labels{display:flex;justify-content:space-between;gap:10px;font-size:clamp(8px,.78cqw,13px);padding:6px;color:#234d40}.cn-resource-board{padding:1%;background:#f3f0e6}.cn-monitor{position:absolute;left:54.9%;top:29.2%;width:33.8%;height:32.6%;z-index:4;transform:perspective(1000px) rotateY(-1deg)}.cn-monitor .cn-record{box-shadow:none}.cn-monitor .cn-record img{height:100%}.cn-monitor .cn-record>span{display:none}.cn-appointment .cn-copy{top:17%;width:33%}.cn-screen{position:absolute;left:17.9%;top:9.5%;width:64.6%;height:59.2%;z-index:4}.cn-bluebook .cn-copy{background:#f0eee5ee;left:4%;top:auto;bottom:3.5%;width:40%;padding:1.7%;z-index:6;border-left:2px solid #294f43}.cn-bluebook .cn-copy h2{font-size:clamp(27px,2.8cqw,46px);margin-bottom:.8cqw}.cn-bluebook .cn-kicker{margin-bottom:.6cqw}.cn-bluebook .cn-copy p{font-size:clamp(14px,1.07cqw,19px);line-height:1.45}.cn-bluebook .cn-evidence-links{margin-top:.4cqw}.cn-bluebook .cn-screen{left:45%;width:51%;top:13%;height:53%}.cn-bluebook .cn-environment{opacity:.78}.cn-wuhan-photos{position:absolute;left:39%;width:57%;top:11%;height:74%;display:grid;grid-template-rows:58% 38%;gap:4%;align-items:stretch}.cn-wuhan-photos .cn-record:nth-child(2){width:65%;justify-self:end}.cn-wuhan-photos .cn-record img{object-fit:contain;background:#ebe7df}.cn-wuhan .cn-copy{top:21%}.cn-return .cn-copy{width:45%;top:23%}.cn-return .cn-copy p{max-width:420px}.cn-endmark{position:absolute;right:13%;bottom:19%;font:normal 3.8cqw Georgia,serif;letter-spacing:.06em;color:#e7e9df;background:#102321d9;padding:1.2cqw 2cqw;text-align:center}.cn-endmark span{font:9px/1.5 Arial,sans-serif;display:block;letter-spacing:.13em}.cn-door-sign{position:absolute;right:7%;top:12%;padding:14px 20px;background:#182e2beb;color:#fff9e9;letter-spacing:.14em;font-size:11px;transform:rotateY(-9deg);box-shadow:0 4px 8px #0002}.cn-door-sign span{display:block;font-size:8px;margin-top:8px;color:#b9d8c9}
/* Cinematic enhancement. The unenhanced document remains a readable archive. */
.cn-cinema .cn-walk{height:calc(100svh + 1100vh)}.cn-cinema .cn-stage{position:sticky;top:0;height:100svh;min-height:560px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.cn-cinema .cn-top{flex-shrink:0;width:100%;position:absolute;top:0;left:0;height:54px}.cn-cinema .cn-bottom{position:absolute;bottom:0;left:0;width:100%;height:86px}.cn-cinema .cn-frame{flex-shrink:0;width:min(100%,calc((100svh - 140px)*16/9));aspect-ratio:16/9;margin:54px auto 86px;overflow:hidden}.cn-cinema .cn-scene{position:absolute;inset:0;min-height:0;opacity:0;visibility:hidden;pointer-events:none}.cn-cinema .cn-scene.cn-active{visibility:visible;pointer-events:auto}.cn-cinema .cn-scene.cn-adjacent{visibility:visible}.cn-cinema .cn-copy>*{opacity:0;transform:translate3d(0,13px,0);transition:opacity .55s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.cn-cinema .cn-active .cn-copy>*{opacity:1;transform:translateZ(0)}.cn-cinema .cn-active .cn-copy h2{transition-delay:.08s}.cn-cinema .cn-active .cn-copy p{transition-delay:.16s}.cn-cinema .cn-active .cn-copy .cn-evidence-links{transition-delay:.24s}.cn-cinema .cn-active .cn-copy .cn-enter{transition-delay:.24s}.cn-cinema .cn-record{transition:box-shadow .3s}.cn-cinema .cn-record:hover{box-shadow:0 5px 16px #0004}.cn-loading:after{content:'Preparing the next scene…';position:absolute;right:3%;bottom:3%;font:10px Arial,sans-serif;color:white;background:#172b26;padding:8px 12px}
.cn-dialog{max-width:1180px;width:94vw;height:90vh;max-height:90vh;border:0;padding:0;background:#f5f2eb;color:#26342e;box-shadow:0 18px 80px #0005}.cn-dialog::backdrop{background:#0a131bea}.cn-dialog-head{position:sticky;top:0;z-index:2;background:#f5f2eb;display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #c4c9bc;gap:20px}.cn-dialog-head h3{font:normal 18px/1.3 Georgia,serif;margin:0}.cn-dialog-head button{padding:7px 0;border:0;background:none;font:11px Arial,sans-serif;white-space:nowrap}.cn-dialog-scroll{height:calc(100% - 65px);overflow:auto;padding:22px}.cn-dialog-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain}.cn-dialog-image[hidden]{display:none}.cn-dialog-note{font:14px/1.65 Arial,sans-serif;max-width:820px}.cn-original{display:inline-block;margin:5px 0 20px;font:11px Arial,sans-serif}.cn-original[hidden]{display:none}
/* Reading / narrow-screen layout keeps every original fully visible. */
.cn-reading .cn-walk{height:auto}.cn-reading .cn-stage{height:auto;min-height:0}.cn-reading .cn-frame{width:100%;margin:0;aspect-ratio:auto}.cn-reading .cn-scene{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:5%;min-height:650px;padding:80px 6%;align-items:center}.cn-reading .cn-copy{position:relative;inset:auto!important;width:auto!important;padding:0!important;background:none!important;border:0!important}.cn-reading .cn-copy>*{opacity:1;transform:none}.cn-reading .cn-environment{opacity:.18}.cn-reading .cn-dark{background:#112923}.cn-reading .cn-dark .cn-environment{opacity:.35}.cn-reading .cn-tone{background:linear-gradient(90deg,#eeeae2e8,#eeeae266)}.cn-reading .cn-dark .cn-tone{background:#10231bc9}.cn-reading .cn-scene>div:not(.cn-environment):not(.cn-tone):not(.cn-copy){position:relative;inset:auto;width:100%;height:auto;min-height:200px;max-height:none;transform:none;z-index:5}.cn-reading .cn-record{height:auto;max-height:600px}.cn-reading .cn-record img{height:auto;max-height:530px;object-fit:contain}.cn-reading .cn-board{padding:15px}.cn-reading .cn-question-board .cn-record,.cn-reading .cn-honors-board .cn-record{flex:auto}.cn-reading .cn-wuhan-photos{display:flex;flex-direction:column;gap:15px}.cn-reading .cn-wuhan-photos .cn-record:nth-child(2){width:100%}.cn-reading .cn-method-board{display:flex;flex-direction:column;gap:20px}.cn-reading .cn-process{display:grid;grid-template-columns:1fr 1fr;gap:15px}.cn-reading .cn-process b{font-size:19px}.cn-reading .cn-process span{font-size:12px}.cn-reading .cn-monitor .cn-record>span{display:block}.cn-reading .cn-bottom{position:relative}.cn-reading .cn-controls,.cn-reading .cn-chapters,.cn-reading .cn-minor>span,.cn-reading .cn-location{display:none}.cn-reading .cn-bottom-row{justify-content:center}.cn-reading .cn-bottom-row:first-child{display:none}.cn-reading .cn-endmark{min-height:0!important;text-align:center;font-size:40px}.cn-reading .cn-door-sign{min-height:0!important;padding:30px}.cn-reading .cn-hero h2{font-size:clamp(46px,5.8vw,90px)}
@media(min-width:901px) and (max-height:740px){.cn-copy p{font-size:14px;line-height:1.48}.cn-copy h2{font-size:34px}.cn-kicker{font-size:9px}.cn-copy{top:18%}.cn-hero h2{font-size:64px}.cn-appointment .cn-copy{top:13%}.cn-bluebook .cn-copy p{font-size:13px}.cn-evidence-links{margin-top:10px}.cn-screen .cn-record>span{font-size:8px}}
@media(max-width:900px){.cn-top{gap:12px;padding:18px 6%;flex-wrap:wrap}.cn-brand{display:none}.cn-top a{font-size:9px}.cn-top button{font-size:9px}.cn-reading .cn-scene{grid-template-columns:1fr;min-height:0;gap:32px;padding:55px 7%}.cn-reading .cn-scene>div:not(.cn-environment):not(.cn-tone):not(.cn-copy){max-width:650px;margin:0 auto}.cn-reading .cn-copy h2,.cn-reading .cn-bluebook h2{font-size:clamp(38px,7vw,58px);margin:16px 0 22px}.cn-reading .cn-hero h2{font-size:clamp(55px,12vw,90px)}.cn-reading .cn-copy p,.cn-reading .cn-bluebook .cn-copy p{font-size:17px;line-height:1.65}.cn-reading .cn-hero p{width:100%}.cn-reading .cn-kicker{font-size:10px;margin:0 0 18px}.cn-reading .cn-link{font-size:11px!important}.cn-reading .cn-evidence-links{gap:16px;margin-top:16px}.cn-reading .cn-venue{max-width:350px!important}.cn-reading .cn-question-board blockquote{font-size:28px}.cn-reading .cn-question-board small{font-size:9px;margin:10px 0}.cn-reading .cn-record>span{font-size:10px;height:auto;min-height:28px;line-height:1.45;white-space:normal;padding:8px}.cn-reading .cn-record img{max-height:500px}.cn-reading .cn-honor-labels{font-size:10px;flex-wrap:wrap}.cn-enter{margin-top:24px}.cn-dialog-head{padding:14px 16px}.cn-dialog-head h3{font-size:16px}.cn-dialog-scroll{padding:12px}.cn-dialog{width:96vw;height:92vh;max-height:92vh}.cn-time{display:none}.cn-minor{justify-content:center}}
@media(prefers-reduced-motion:reduce){.cn-exhibition *{scroll-behavior:auto!important;transition:none!important;animation:none!important}.cn-environment{will-change:auto}}
@media print{.cn-top,.cn-bottom,.cn-dialog{display:none}.cn-reading .cn-scene{break-inside:avoid;min-height:0;padding:30px}.cn-exhibition{background:white}}

/* Bluebook shares the physical planning board with the preceding work. */
.cn-bluebook .cn-copy{background:none;left:5.7%;top:21%;bottom:auto;width:29%;padding:0;border:0}.cn-bluebook .cn-copy h2{font-size:clamp(33px,3.2cqw,64px);margin-bottom:1.6cqw}.cn-bluebook .cn-kicker{margin-bottom:1.7cqw}.cn-bluebook .cn-copy p{font-size:clamp(15px,1.18cqw,22px);line-height:1.6}.cn-bluebook .cn-evidence-links{margin-top:1.4cqw}.cn-bluebook .cn-environment{opacity:1}.cn-transit{position:absolute;inset:0;opacity:0;transition:none}.cn-transit img{width:100%;height:100%;object-fit:cover}
@media(max-width:900px){.cn-reading .cn-bluebook .cn-copy h2{font-size:clamp(38px,7vw,58px);margin:16px 0 22px}.cn-reading .cn-bluebook .cn-copy p{font-size:17px;line-height:1.65}.cn-reading .cn-bluebook .cn-kicker{font-size:10px;margin-bottom:18px}.cn-reading .cn-bluebook .cn-environment{opacity:.18}}

@media(min-width:901px) and (max-height:740px){.cn-bluebook .cn-copy{top:18%}.cn-bluebook .cn-copy h2{font-size:34px}.cn-bluebook .cn-copy p{font-size:14px;line-height:1.48}.cn-bluebook .cn-kicker{font-size:9px}}

/* 2026-10-12 · FULL-BLEED CINEMA REVISION
   The 16:9 photographic stage now bleeds past viewport edges; the audience
   never sees a surrounding black frame. Its overlay mounts retain one
   common coordinate system, while controls float over the scene. */
.cn-standalone { background:#edeae2; }
.cn-brand { display:inline-flex; align-items:center; justify-content:center; }
.cn-brand img { display:block; height:auto; width:95px; object-fit:contain; }
.cn-endmark { background:transparent; padding:0; letter-spacing:normal; filter:drop-shadow(0 3px 10px #0003); }
.cn-endmark img { display:block; width:clamp(120px,11.5cqw,184px); height:auto; object-fit:contain; }
.cn-reading .cn-endmark { min-height:0!important; display:flex; align-items:center; justify-content:center; filter:none; }
.cn-reading .cn-endmark img { width:clamp(130px,16vw,200px); }
.cn-cinema .cn-walk { height:calc(100svh + 1100vh); }
.cn-cinema .cn-stage {
  position:sticky; top:0; width:100%; height:100svh; min-height:0;
  display:block; overflow:hidden; isolation:isolate; background:#dcd8cf;
}
.cn-cinema .cn-frame {
  position:absolute; top:50%; left:50%;
  width:max(100vw,177.7777778svh); height:max(100svh,56.25vw);
  aspect-ratio:16 / 9; margin:0;
  transform:translate(-50%,-50%);
  flex:none; overflow:hidden; z-index:1;
}
.cn-cinema .cn-top,
.cn-cinema .cn-bottom {
  position:absolute; left:0; width:100%; margin:0;
  color:#fffdf8; border:0; text-shadow:0 1px 9px #0008;
  z-index:30;
}
.cn-cinema .cn-top {
  top:0; height:89px; min-height:0; padding:14px 3.3% 25px;
  background:linear-gradient(to bottom,rgba(12,19,18,.35),rgba(12,19,18,0));
}
.cn-cinema .cn-top a { font-size:10px; letter-spacing:.13em; }
.cn-cinema .cn-top a span { color:#e7e7e2; }
.cn-cinema .cn-top .cn-brand {
  position:absolute; left:50%; top:7px; transform:translateX(-50%);
  pointer-events:none; text-shadow:none;
}
.cn-cinema .cn-brand img { width:95px; filter:drop-shadow(0 1px 3px #1a191980); }
.cn-cinema .cn-mode { color:#fffdf8; }
.cn-cinema .cn-bottom {
  bottom:0; height:112px; padding:30px 3.3% 14px;
  display:flex; flex-direction:column; justify-content:flex-end;
  background:linear-gradient(to top,rgba(10,16,17,.53) 0%,rgba(10,16,17,.17) 63%,transparent 100%);
}
.cn-cinema .cn-bottom-row { min-height:29px; position:relative; }
.cn-cinema .cn-progress { position:absolute; bottom:0; background:#ffffff45; height:2px; }
.cn-cinema .cn-location,
.cn-cinema .cn-minor,
.cn-cinema .cn-credits { color:#f9f6f0; }
.cn-cinema .cn-controls .cn-play { color:#fffdf8; }
.cn-cinema .cn-chapters button:after { background:#e6e4d08c; }
.cn-cinema .cn-chapters button[aria-current]:after { background:white; }
.cn-cinema .cn-chapters span { color:#f7f7f1; background:#17221fd9; text-shadow:none; }
.cn-cinema .cn-time { color:#f2eee8; }
.cn-cinema .cn-progress i { background:#f7f6eb; }
.cn-cinema .cn-copy { left:max(5.7%,calc((100% - 100vw) / 2 + 3vw)); }
.cn-cinema .cn-bluebook .cn-copy { left:max(5.7%,calc((100% - 100vw) / 2 + 3vw)); }
.cn-cinema .cn-venue { transform:rotate(1deg); }
.cn-cinema .cn-endmark {
  right:12%; bottom:16.5%; z-index:6;
  background:transparent; border:0; box-shadow:none;
  padding:0; transform:none;
}
.cn-cinema .cn-endmark img { width:clamp(120px,11.5cqw,184px); }
.cn-cinema .cn-scene { min-height:0; }
/* Keep hover/focus feedback without an extra surrounding UI panel. */
.cn-cinema .cn-enter,
.cn-cinema .cn-link { text-underline-offset:5px; }
.cn-cinema .cn-enter:hover,
.cn-cinema .cn-link:hover { opacity:.72; }
@media (min-width:901px) and (max-height:740px) {
 .cn-cinema .cn-top { height:65px; padding-top:8px; }
 .cn-cinema .cn-brand img { width:75px; }
 .cn-cinema .cn-bottom { height:94px; padding-top:16px; }
 .cn-cinema .cn-endmark { bottom:17%; }
}
