/* Dark cinematic viewing room; all illustration assets are authored SVG, not archival media. */
.cinema-ribbon{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;margin:0 0 18px;border:1px solid #8b6844;background:linear-gradient(105deg,#30342e,#243336);border-radius:6px;color:#e0d5bd}
.cinema-ribbon b{display:block;font-size:18px;color:#f0e3cc}.cinema-ribbon p{margin:5px 0 0;font-size:12px;color:#c0c5ba}
.cinema-ribbon button,.cinema-event-entry button{flex-shrink:0}
.timeline-item .cinema-card-badge{display:block;margin-top:5px;font-size:10px;color:#f2c18e;letter-spacing:.4px}
.cinema-event-entry{display:flex;gap:24px;align-items:center;justify-content:space-between;background:#e9e5d6;border-left:3px solid #a67641;padding:18px 22px;margin:20px 0;border-radius:3px}
.cinema-event-entry h3{margin:5px 0;font-family:var(--serif,serif);font-size:22px;color:#26494a}.cinema-event-entry p{margin:5px 0;font-size:14px}.cinema-event-entry small,.cinema-event-entry span{font-size:11px;color:#6b6f63}
.cinema-dialog{width:min(1180px,96vw);max-width:1180px;max-height:94dvh;padding:0;border:1px solid #53615c;border-radius:10px;background:#13252a;color:#eee5d2;box-shadow:0 30px 120px #000a}
.cinema-dialog::backdrop{background:#030d12df;backdrop-filter:blur(9px)}
.cinema-shell{position:relative}.cinema-dialog button{font:inherit;cursor:pointer;border:1px solid #62756d;border-radius:4px;padding:9px 14px;background:#253c3f;color:#ede4d0;line-height:1.5}
.cinema-dialog button:hover{background:#355153;border-color:#c5aa79}.cinema-dialog button:focus-visible,.cinema-dialog a:focus-visible,.cinema-dialog summary:focus-visible,.cinema-dialog textarea:focus-visible{outline:3px solid #e6bd7b;outline-offset:3px}
.cinema-dialog .cinema-close{position:absolute;z-index:4;right:17px;top:12px;width:36px;height:36px;padding:0;border-color:#71807a;background:#152a30;font-size:26px;line-height:1}
.cinema-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 74px 10px 28px}.cinema-topbar button{font-size:12px;padding:5px 10px}
.cinema-kicker{font-size:11px;letter-spacing:2px;color:#c0a878}
.cinema-heading{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:12px 28px 20px}.cinema-heading small{font-size:12px;color:#b0c3b8}.cinema-heading h2{font-size:32px;line-height:1.25;margin:9px 0;font-family:"Noto Serif SC","SimSun",serif;color:#f0e6d2}.cinema-heading p{font-size:14px;color:#c7d2c5;margin:0;line-height:1.7}
.cinema-fiction-tag{font-size:10px;line-height:1.8;border:1px solid #8b784e;border-radius:4px;color:#d2b684;padding:8px 12px;flex-shrink:0;text-align:center}
.cinema-screen{position:relative;background:#071319;overflow:hidden;border-block:1px solid #57675d;width:100%;height:330px}.cinema-screen svg{width:100%;height:100%;display:block;animation:cinema-reveal .45s ease-out}
.cinema-screen-caption{position:absolute;left:0;right:0;bottom:0;padding:45px 28px 21px;background:linear-gradient(transparent,#08171cf2);pointer-events:none}.cinema-screen-caption span{display:block;color:#cbb78d;letter-spacing:2px;font-size:11px;margin-bottom:5px}.cinema-screen-caption b{font-family:"Noto Serif SC","SimSun",serif;font-size:26px;font-weight:500}
.cinema-progress{display:flex;gap:6px;padding:16px 28px 9px;flex-wrap:wrap}.cinema-progress span{border-top:2px solid #465b59;flex:1;min-width:120px;font-size:11px;color:#9cafaa;padding:8px 2px 0}.cinema-progress .now{border-color:#dbb67c;color:#ead4aa}.cinema-progress .complete{border-color:#82b8a5;color:#c7d8ca}
.cinema-disclaimer{font-size:11px!important;color:#a8bab1!important;line-height:1.8!important;font-weight:400}
#cinemaContent>.cinema-disclaimer{margin:0 28px 14px}
.cinema-lower{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:28px;padding:4px 28px 22px}
.cinema-script{min-width:0}.cinema-speaker{margin-top:13px;color:#d7c099;font-size:12px}.cinema-speaker span{color:#91a8a1;font-size:10px}.cinema-dialogue{font-family:"Noto Serif SC","SimSun",serif;font-size:20px;line-height:1.9;color:#f0e6d2;margin:8px 0 19px}
.cinema-script h3{font-size:17px;line-height:1.8;color:#e5d9bd;margin:15px 0 12px}
.cinema-choices{display:grid;gap:10px}.cinema-choices button{display:flex;gap:15px;text-align:left;align-items:center;padding:14px 16px;background:#21383b;border-color:#5c746d;font-size:14px}.cinema-choices button>span{display:grid;place-items:center;width:30px;height:30px;border:1px solid #9b9c7e;flex-shrink:0;color:#e1c38d}.cinema-choices small{display:block;font-size:10px;color:#a5bcb2;margin-top:5px}
.cinema-consequence{background:#203d3d;border-left:2px solid #9cbb9e;padding:12px 15px;margin:10px 0 20px}.cinema-consequence small{color:#c7b581;font-size:10px;letter-spacing:1px}.cinema-consequence p{font-size:13px;line-height:1.8;margin:5px 0;color:#d4e0cf}
.cinema-sidebar{border-left:1px solid #435851;padding-left:22px;padding-top:10px}.cinema-sidebar h3{font-size:14px;color:#dbcb9e;margin:20px 0 8px}.cinema-sidebar p{font-size:12px;line-height:1.9;color:#b7cbbf}.cinema-evidence summary{cursor:pointer;font-size:13px;color:#e5d8b6;line-height:1.8;margin-top:12px}.cinema-evidence a{font-size:12px;color:#b7d8c3;line-height:1.8;overflow-wrap:anywhere}.cinema-evidence p{font-size:12px;line-height:1.9}
.cinema-ending>p{font-size:13px;line-height:1.9;color:#c5d0bf}.cinema-receipt{padding-left:23px}.cinema-receipt li{padding:8px 0 13px;border-bottom:1px solid #3d5350;font-size:12px;color:#bbccc1}.cinema-receipt b{font-weight:600;color:#e3d0a8}.cinema-receipt p{margin:7px 0;line-height:1.8}.cinema-receipt small{font-size:11px;line-height:1.8}
.cinema-reflection-label{display:block;font-size:14px;line-height:1.8;margin:24px 0 10px;color:#ead7b2}.cinema-reflection-label span{display:block;font-size:12px;color:#b7c8bb}
.cinema-dialog textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:140px;border:1px solid #76897b;border-radius:4px;background:#e8e7db;color:#203637;padding:12px;font-family:inherit;font-size:14px;line-height:1.8}
.cinema-outcomes{margin-top:20px;border-top:1px solid #53655b;padding-top:15px}.cinema-outcomes summary{font-size:12px;color:#e0ccaa;cursor:pointer}.cinema-outcomes p{font-size:12px;line-height:1.8;color:#b9cabe}
.cinema-bottom{border-top:1px solid #465c54;padding:18px 28px 25px;display:flex;align-items:center;gap:15px;justify-content:space-between}.cinema-bottom>span{font-size:10px;color:#a8bcb0}.cinema-bottom>div{display:flex;gap:8px;flex-wrap:wrap}.cinema-bottom button{font-size:11px}
.cinema-library-header{padding:40px 34px 16px}.cinema-library-header h2{font-family:"Noto Serif SC","SimSun",serif;font-size:32px;line-height:1.5;margin:12px 0;color:#f1e4cb}.cinema-library-header>p{font-size:13px;color:#becdc0}
.cinema-library{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:0 28px 25px}.cinema-library .cinema-poster{padding:0;text-align:left;overflow:hidden;background:#1f3538;border-color:#50695f}.cinema-poster-art{position:relative;background:#0e232a}.cinema-poster-art svg{display:block;width:100%;height:auto}.cinema-poster-art>span{position:absolute;bottom:7px;left:12px;font-size:11px;color:#e8d6ad;background:#15282ce8;padding:3px 8px}.cinema-poster>div+div{padding:16px}.cinema-poster small{font-size:10px;color:#9fb7ac;line-height:1.7}.cinema-poster h3{font-family:"Noto Serif SC","SimSun",serif;font-size:21px;color:#eedcb9;margin:8px 0}.cinema-poster p{font-size:12px;line-height:1.8;color:#b5c9bc;min-height:44px}.cinema-poster-status{font-size:12px;color:#e1be83}
.cinema-library-footer{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:0 28px 12px}.cinema-library-footer button{font-size:12px}.cinema-library-footer span{font-size:10px;color:#acbfb3}
@keyframes cinema-reveal{from{opacity:.3;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.cinema-screen svg{animation:none}}
@media(min-width:1600px){.cinema-dialog{width:1180px}}
@media(max-width:780px){.cinema-library{grid-template-columns:repeat(2,minmax(0,1fr))}.cinema-lower{grid-template-columns:1fr;gap:15px}.cinema-sidebar{border-left:0;border-top:1px solid #435851;padding:18px 0 0}.cinema-bottom{flex-direction:column;align-items:flex-start}.cinema-heading h2{font-size:26px}.cinema-ribbon{flex-wrap:wrap}.cinema-event-entry{flex-wrap:wrap}.cinema-screen-caption b{font-size:22px}}
@media(max-width:480px){.cinema-dialog{width:96vw;max-height:96dvh}.cinema-topbar{padding:14px 58px 8px 15px}.cinema-kicker{font-size:9px;letter-spacing:1px}.cinema-heading{padding:12px 16px 16px;gap:8px;align-items:flex-start}.cinema-heading h2{font-size:23px}.cinema-heading small{font-size:10px}.cinema-heading p{font-size:12px}.cinema-fiction-tag{font-size:8px;padding:5px}.cinema-screen{aspect-ratio:1.6/1}.cinema-screen svg{width:125%;max-width:none;transform:translateX(-10%);animation:none}.cinema-screen-caption{padding:32px 16px 12px}.cinema-screen-caption span{font-size:9px;letter-spacing:1px}.cinema-screen-caption b{font-size:20px}.cinema-progress{padding:13px 16px 7px;gap:8px}.cinema-progress span{font-size:9px;min-width:42%;padding-top:5px}#cinemaContent>.cinema-disclaimer{margin:0 16px 10px}.cinema-lower{padding:0 16px 18px}.cinema-dialogue{font-size:17px}.cinema-choices button{font-size:13px;padding:12px;gap:10px}.cinema-bottom{padding:15px 16px 24px}.cinema-library-header{padding:42px 18px 12px}.cinema-library-header h2{font-size:26px}.cinema-library{grid-template-columns:1fr;padding:0 16px 20px}.cinema-library-footer{padding:0 16px 10px}.cinema-library .cinema-poster{display:grid;grid-template-columns:38% minmax(0,1fr)}.cinema-poster-art svg{height:100%;width:auto;max-width:none;position:absolute;right:-82px}.cinema-poster>div+div{padding:12px}.cinema-poster h3{font-size:17px}.cinema-poster p{min-height:0;font-size:11px}.cinema-poster small{font-size:9px}.cinema-poster-art>span{left:7px;font-size:9px;padding:3px 5px}.cinema-ribbon{padding:15px}.cinema-ribbon b{font-size:16px}}
