/* 2.3: an AI history exhibition, not a dashboard. Scoped rules leave evidence papers quiet. */
:root{--bg:#101d35;--panel:#192d47;--surface:#203953;--line:#405872;--text:#f4f7fa;--muted:#b8c9d9;--world:#8adce7;--china:#f4c57b}
body{background:#101d35}
.masthead{background:#13223c;border-bottom-color:#415873}.brand-mark{border-color:#71859b;border-radius:4px}.brand b{letter-spacing:3px}
.mode-switch{background:#101c31;border-color:#405571}.mode-switch button.active{background:#38526e}.mode-switch button{color:#c5d5e3}
.workspace-heading h1{font-family:"STZhongsong","Songti SC","SimSun",serif;font-size:30px;font-weight:500}
.cinema-ribbon{padding:28px 30px;background:#1a304c;border:1px solid #6d7c8b;border-left:5px solid #f4c57b;position:relative;overflow:hidden}
.cinema-ribbon b{font-family:"STZhongsong","Songti SC","SimSun",serif;font-size:27px;font-weight:500;color:#f7f3e8}.cinema-ribbon p{font-size:14px;color:#c6d5e2}
.cinema-ribbon .primary-button{background:#f4c57b;color:#142941;border-color:#f4c57b;font-size:14px;min-height:48px}
.history-timeline .vis-item{background:#203850;border-color:#648ca0}.china-timeline.history-timeline .vis-item{background:#3c3740;border-color:#a18265}
.item-year{font-size:14px}.timeline-item strong{font-size:13px;font-weight:500}.timeline-item .cinema-card-badge{font-size:11px;letter-spacing:0;color:#f4cc90}
.history-timeline .vis-item:has(.timeline-item:hover){border-color:#e4eaf0}.shared-axis-note{background:#14233a;color:#bfcedc}
.cinema-dialog{--film-accent:#f4c57b;background:#12243d;border:1px solid #8091a4;width:min(1420px,96vw);max-width:1420px;max-height:96dvh;border-radius:12px;color:#eef4f8}
.cinema-dialog::backdrop{background:#061123ed;backdrop-filter:blur(12px)}
.cinema-shell{padding-top:0}.cinema-dialog .cinema-close{position:sticky;top:12px;float:right;right:auto;margin:12px 14px -48px 0;width:40px;height:40px;z-index:20;background:#172c47;border-color:#99adbd;box-shadow:0 2px 12px #071425aa}
.cinema-dialog button{border-color:#768ca0;background:#203b57;color:#edf4fa;border-radius:5px;min-height:44px}.cinema-dialog button:hover{background:#304f6c;border-color:var(--film-accent)}.cinema-dialog button:focus-visible,.cinema-dialog a:focus-visible,.cinema-dialog summary:focus-visible,.cinema-dialog textarea:focus-visible{outline:3px solid #f4c57b;outline-offset:3px}
.cinema-section-label{font-size:13px;color:#c1d2e1;font-weight:500;letter-spacing:.5px}
.cinema-library-hero{display:grid;grid-template-columns:1fr 1.35fr;min-height:390px;background:#172e49;overflow:hidden;border-bottom:1px solid #536e88}
.cinema-library-intro{position:relative;z-index:1;padding:44px 0 35px 42px}
.cinema-library-intro h2{font-family:"STZhongsong","Songti SC","SimSun",serif;font-size:clamp(36px,3.8vw,57px);font-weight:500;line-height:1.3;letter-spacing:1px;color:#f7f5ee;margin:19px 0 20px}
.cinema-library-intro>p{font-size:16px;color:#c4d4e2;line-height:1.9;margin:0 0 23px}
.cinema-dialog .cinema-feature-button{display:flex;align-items:center;justify-content:space-between;gap:35px;background:#f4c57b;color:#152b45;border-color:#f4c57b;padding:12px 18px;font-size:15px;font-weight:600}
.cinema-dialog .cinema-feature-button:hover{background:#ffdaa2;border-color:#ffdaa2}
.cinema-library-intro>small{display:block;font-size:12px;color:#c2d2df;margin-top:12px}
.cinema-library-feature{position:relative;display:flex;align-items:center;min-width:0;background:#142c46}.cinema-library-feature svg{width:114%;max-width:none;transform:translateX(-3%);flex-shrink:0}
.cinema-feature-caption{position:absolute;bottom:25px;right:28px;padding:14px 18px;background:#12263eea;border-left:2px solid #f4c57b;pointer-events:none}.cinema-feature-caption span{font-size:12px;color:#f4c57b;display:block;margin-bottom:6px}.cinema-feature-caption b{font-family:"STZhongsong","Songti SC","SimSun",serif;font-weight:500;line-height:1.5;font-size:22px;color:#f0f5f8}
.cinema-library-meta{padding:28px 32px 20px}.cinema-library-meta>p{display:flex;gap:20px;align-items:baseline;flex-wrap:wrap;margin:0 0 18px}.cinema-library-meta b{font-size:21px;font-weight:500}.cinema-library-meta>p>span{font-size:13px;color:#c1d1df}
.cinema-topic-tabs{display:flex;gap:9px;flex-wrap:wrap}.cinema-dialog .cinema-topic-tabs button{font-size:13px;background:transparent;border-color:#637f99;color:#c9d8e5;padding:8px 15px;min-height:40px}.cinema-dialog .cinema-topic-tabs .active{background:#d7e8f3;color:#17334f;border-color:#d7e8f3;font-weight:600}
.cinema-library{gap:24px;padding:0 32px 32px;grid-template-columns:repeat(3,minmax(0,1fr))}.cinema-library .cinema-poster{display:block;background:#1a314c;border:1px solid #58718b;transition:border-color .16s,background .16s}
.cinema-library .cinema-poster:hover{background:#253f5b;border-color:var(--film-accent);box-shadow:0 0 0 1px var(--film-accent)}
.cinema-poster-art{position:relative;overflow:hidden;border-bottom:1px solid #4b637c;background:#132b43;aspect-ratio:2/1}.cinema-poster-art svg{position:static;display:block;width:100%;height:100%;max-width:none;transform:none}
.cinema-poster-art .cinema-year{position:absolute;left:14px;top:11px;bottom:auto;background:#10263ded;color:var(--film-accent);font-size:15px;padding:2px 7px;border:1px solid #7e92a3;border-radius:2px}
.cinema-poster-art .cinema-poster-state{left:auto;right:12px;bottom:10px;background:#0e2439e8;color:#e4edf5;font-size:11px;padding:3px 8px;border-radius:3px}
.cinema-poster>div+div{padding:20px 20px 17px}.cinema-poster small{font-size:12px;line-height:1.7;color:#b9cddd}.cinema-poster h3{font-family:"STZhongsong","Songti SC","SimSun",serif;font-size:24px;color:#f4f5f5;font-weight:500;margin:9px 0 11px}.cinema-poster p{font-size:14px;line-height:1.85;color:#c6d5e2;min-height:52px;margin:0 0 19px}.cinema-poster-status{display:flex;justify-content:space-between;border-top:1px solid #4b637b;padding-top:12px;font-size:13px;color:var(--film-accent)}.cinema-poster-status>span{font-size:18px;line-height:1}
.cinema-library-footer{padding:0 32px 16px;gap:13px}.cinema-library-footer button{font-size:13px}.cinema-library-footer span{font-size:12px;color:#c1d2df}
.cinema-library-footer+ .cinema-disclaimer{padding-bottom:20px}
.cinema-topbar{padding:15px 76px 13px 28px;border-bottom:1px solid #405b75;background:#152b44}
.cinema-topbar button{font-size:13px;min-height:38px;padding:7px 12px}.cinema-kicker{letter-spacing:.5px;color:#c5d8e8;font-size:12px}
.cinema-heading{padding:22px 30px;align-items:center;border-bottom:1px solid #405b75}.cinema-heading small{font-size:13px;color:#bbd1e1}.cinema-heading h2{font-size:34px;font-family:"STZhongsong","Songti SC","SimSun",serif;font-weight:500;line-height:1.35;margin:9px 0}.cinema-heading p{font-size:15px;color:#c6d8e7;line-height:1.8}
.cinema-fiction-tag{font-size:12px;border-color:#8a9b9a;color:#efe1be;padding:8px 12px;border-radius:4px;background:#2a3947}
.cinema-stage-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}
.cinema-visual-column{min-width:0;background:#142b44;position:sticky;top:0;border-right:1px solid #4b657d;align-self:start}
.cinema-screen{width:100%;height:auto;aspect-ratio:2/1;border:0;background:#142b44}.cinema-screen svg{width:100%;height:100%;max-width:none;transform:none;animation:scene-cut .24s ease-out}
.cinema-screen-caption{position:static;background:none;padding:14px 25px 20px;border-bottom:1px solid #405d76;min-height:100px}.cinema-screen-caption span{font-size:12px;letter-spacing:.5px;color:var(--film-accent);margin-bottom:7px}.cinema-screen-caption b{font-family:"STZhongsong","Songti SC","SimSun",serif;font-size:27px;font-weight:500;line-height:1.4;color:#f1f5f9}
.cinema-progress{padding:18px 23px 16px;gap:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.cinema-progress span{min-width:0;font-size:12px;color:#b8cddd;border-color:#5d7790;padding-top:9px;line-height:1.6}.cinema-progress .now{color:#ffe0a7;border-color:#f4c57b}.cinema-progress .complete{color:#d6eee5;border-color:#8fd2b8}
.cinema-disclaimer{font-size:12px!important;color:#bbd0df!important;line-height:1.8!important}.cinema-scene-boundary{padding:0 23px 18px;margin:0}
.cinema-decision-column{min-width:0;padding:24px 27px;background:#12243d}
.cinema-speaker{font-size:13px;color:var(--film-accent);margin:0 0 11px;display:flex;justify-content:space-between;gap:8px}.cinema-speaker span{font-size:11px;color:#b5cddd}
.cinema-dialogue{font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:19px;line-height:1.9;color:#f2f5f6;margin:8px 0 21px}
.cinema-script h3{font-size:17px;color:#f4e4c8;margin:17px 0 13px;font-weight:600}
.cinema-choices{gap:12px}.cinema-choices button{padding:15px 14px;gap:12px;background:#213c57;border-color:#7e9ab3;font-size:15px;line-height:1.75;color:#f5f8fa;align-items:flex-start;border-radius:6px}
.cinema-choices button:hover{background:#304f6b;border-color:var(--film-accent)}
.cinema-choices button>span:first-child{border-radius:4px;border-color:var(--film-accent);color:var(--film-accent);width:30px;height:30px;font-size:14px;margin-top:1px}
.cinema-choices button>div{flex:1;min-width:0}.cinema-choices small{font-size:11px;color:#c0d5e4;margin-top:6px}
.cinema-choices button>.cinema-choice-arrow{border:0;width:auto;height:auto;font-size:22px;color:var(--film-accent);margin-top:0}
.cinema-script>.cinema-disclaimer{margin-top:15px}
.cinema-consequence{padding:13px 15px;margin:19px 0 0;background:#203e51;border-left:3px solid var(--film-accent)}.cinema-consequence small{color:#e6cd9f;font-size:12px;letter-spacing:0}.cinema-consequence p{font-size:14px;color:#e4edf2;line-height:1.85;margin:7px 0}.cinema-consequence summary{font-size:12px;color:#c2d7e4;cursor:pointer;min-height:24px}
.cinema-sidebar{margin:0;padding:22px 28px;display:grid;grid-template-columns:1fr 1fr;gap:32px;background:#e7eef3;color:#234059;border:0;border-top:1px solid #637f99}
.cinema-sidebar h3{font-size:16px;color:#243d53;margin:0 0 8px}.cinema-sidebar .cinema-section-label{font-size:15px;color:#254860;font-weight:600}.cinema-sidebar p{font-size:14px;line-height:1.9;color:#38586d}.cinema-sidebar .cinema-disclaimer{color:#4a6577!important;font-size:12px!important}
.cinema-evidence summary{font-size:14px;color:#25536b;margin-top:8px;min-height:40px;padding:7px 0}.cinema-evidence p{font-size:13px;line-height:1.9;color:#39596e}.cinema-evidence a{font-size:13px;color:#19566e;text-decoration:underline;text-underline-offset:3px;line-height:1.8}
.cinema-bottom{padding:17px 28px 22px;gap:12px;border-color:#465e77;align-items:center}.cinema-bottom>span{font-size:12px;color:#c5d6e2}.cinema-bottom button{font-size:12px;min-height:42px}
.cinema-ending>p{font-size:14px;color:#ccdeea}.cinema-ending h3{font-family:"STZhongsong","Songti SC","SimSun",serif;font-size:25px;font-weight:500;color:#f5deba;line-height:1.65}.cinema-receipt{padding-left:25px}.cinema-receipt li{border-color:#4e6c86;font-size:14px;padding:11px 0 17px;color:#d1deeb}.cinema-receipt b{color:#f2d9b3}.cinema-receipt small{font-size:12px;line-height:1.9;color:#c6dae8}
.cinema-reflection-label{font-size:16px;color:#f4ddb8}.cinema-reflection-label span{font-size:13px;color:#cadce7}.cinema-outcomes summary{font-size:14px;color:#ecd3a6;min-height:40px;padding:7px 0}.cinema-outcomes p{font-size:13px;color:#c9dce9}.cinema-dialog textarea{background:#edf2f5;font-size:15px;border-color:#9cbbcd;color:#203a51}
body.projection-mode .cinema-dialog{width:98vw;max-width:1600px}body.projection-mode .cinema-dialogue{font-size:23px}body.projection-mode .cinema-choices button{font-size:19px}body.projection-mode .cinema-script h3{font-size:21px}
@keyframes scene-cut{from{opacity:.4}to{opacity:1}}
@media(min-width:1600px){.cinema-heading h2{font-size:38px}.cinema-dialogue{font-size:21px}.cinema-choices button{font-size:16px}.cinema-screen-caption b{font-size:30px}}
@media(max-width:1050px){.cinema-dialog{width:96vw}.cinema-library-intro{padding:36px 0 30px 28px}.cinema-library-intro h2{font-size:40px}.cinema-library-feature svg{width:130%;transform:translateX(-11%)}.cinema-feature-caption b{font-size:18px}.cinema-stage-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cinema-decision-column{padding:20px}.cinema-dialogue{font-size:17px}.cinema-choices button{font-size:14px}.cinema-heading h2{font-size:29px}.cinema-library{gap:18px}.cinema-poster h3{font-size:22px}.cinema-poster p{font-size:13px}}
@media(max-width:780px){.cinema-library-hero{grid-template-columns:1fr 1fr;min-height:340px}.cinema-library-intro h2{font-size:34px}.cinema-library-intro>p{font-size:14px}.cinema-feature-caption{right:13px;bottom:20px;padding:10px 12px}.cinema-feature-caption b{font-size:16px}.cinema-library{grid-template-columns:repeat(2,minmax(0,1fr))}.cinema-stage-layout{grid-template-columns:1fr}.cinema-visual-column{position:static;border-right:0}.cinema-screen{max-height:290px;aspect-ratio:2/1}.cinema-screen-caption{min-height:0;padding:12px 23px 15px}.cinema-screen-caption b{font-size:25px}.cinema-progress{grid-template-columns:repeat(4,minmax(0,1fr));padding:14px 23px}.cinema-progress span{font-size:11px}.cinema-scene-boundary{padding-bottom:12px}.cinema-decision-column{padding:19px 23px 24px}.cinema-sidebar{grid-template-columns:1fr;gap:20px}.cinema-bottom{align-items:flex-start}.cinema-heading{padding:18px 23px}.cinema-heading h2{font-size:28px}.cinema-library-meta>p{gap:9px}}
@media(max-width:480px){.workspace-heading h1{font-size:24px}.cinema-ribbon{padding:20px}.cinema-ribbon b{font-size:23px}.cinema-ribbon p{font-size:13px}
.cinema-dialog{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border-radius:0;border:0;margin:0}.cinema-dialog .cinema-close{top:10px;margin:10px 12px -50px 0;width:40px;height:40px}
.cinema-library-hero{display:flex;flex-direction:column;min-height:0}.cinema-library-intro{padding:33px 22px 23px}.cinema-library-intro h2{font-size:43px;line-height:1.25;margin:15px 0}.cinema-section-label{font-size:12px;padding-right:30px}.cinema-library-intro>p{font-size:15px;line-height:1.75;margin-bottom:17px}.cinema-library-intro>small{font-size:11px}
.cinema-library-feature{height:198px;overflow:hidden}.cinema-library-feature svg{width:100%;height:auto;transform:none}.cinema-feature-caption{right:16px;bottom:12px;padding:8px 12px}.cinema-feature-caption b{font-size:17px}.cinema-feature-caption span{font-size:10px}
.cinema-library-meta{padding:23px 18px 18px}.cinema-library-meta b{font-size:20px}.cinema-library-meta>p>span{font-size:12px;line-height:1.8}.cinema-topic-tabs{gap:7px}.cinema-dialog .cinema-topic-tabs button{font-size:12px;padding:7px 10px;min-height:40px}
.cinema-library{display:grid;grid-template-columns:1fr;gap:18px;padding:0 18px 24px}.cinema-library .cinema-poster{display:block}.cinema-poster-art{aspect-ratio:2/1}.cinema-poster-art svg{position:static;width:100%;height:100%;transform:none}.cinema-poster>div+div{padding:17px}.cinema-poster h3{font-size:24px}.cinema-poster p{font-size:14px;min-height:0}.cinema-poster small{font-size:12px}.cinema-poster-status{font-size:13px}
.cinema-topbar{padding:12px 63px 12px 15px;gap:7px}.cinema-topbar button{font-size:11px;padding:6px 8px}.cinema-topbar .cinema-kicker{font-size:10px;letter-spacing:0}
.cinema-heading{padding:18px 17px 16px;gap:12px;align-items:flex-start}.cinema-heading small{font-size:11px;line-height:1.7}.cinema-heading h2{font-size:27px;line-height:1.4}.cinema-heading p{font-size:13px;line-height:1.8}.cinema-fiction-tag{font-size:10px;padding:5px 7px;min-width:68px}
.cinema-screen{height:auto;max-height:none;aspect-ratio:2/1}.cinema-screen svg{width:100%;height:100%;transform:none;max-width:100%}.cinema-screen-caption{padding:10px 17px 14px}.cinema-screen-caption span{font-size:11px}.cinema-screen-caption b{font-size:24px}
.cinema-progress{padding:13px 17px;gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.cinema-progress span{font-size:11px;min-width:0}.cinema-scene-boundary{padding:0 17px 13px;font-size:11px!important}
.cinema-decision-column{padding:18px 17px 23px}.cinema-dialogue{font-size:18px;line-height:1.85;margin-bottom:19px}.cinema-speaker{font-size:13px}.cinema-script h3{font-size:17px}.cinema-choices button{font-size:15px;padding:14px 12px;gap:10px;min-height:80px}.cinema-choices small{font-size:11px}.cinema-consequence p{font-size:14px}.cinema-sidebar{padding:20px 17px;gap:16px}.cinema-bottom{padding:18px 17px 28px;flex-direction:column}.cinema-bottom>div{gap:8px}.cinema-bottom button{font-size:12px;min-height:44px}.cinema-library-footer{padding:0 18px 16px}.cinema-library-footer span{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.cinema-screen svg,.cinema-poster{animation:none!important;transition:none!important}}
