/* Sol 的小放映室 / 2026-10-22. 原创点阵试片，旧书房其余页面保持不变。 */
.cinema-main{padding:12px 0 90px}
.cinema-crumb{display:flex;gap:11px;align-items:center;margin-top:13px;font-size:12px;letter-spacing:.09em;color:var(--muted)}
.cinema-crumb a{border-bottom:1px solid var(--rose)}.cinema-crumb span:nth-child(2){color:var(--rose)}
.cinema-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;padding:51px 0 55px}
.cinema-kicker,.cinema-mini-label{display:block;font:10px/1.6 var(--sans);letter-spacing:.22em;color:var(--accent);text-transform:uppercase}
.cinema-heading h1{margin-top:13px;font-size:clamp(35px,5.2vw,70px);letter-spacing:.035em;line-height:1.32}
.cinema-heading p{font:16px/2.05 var(--serif);margin-top:18px;color:var(--ink)}
.cinema-reel{display:flex;align-items:center;gap:13px;transform:rotate(7deg);padding:0 21px 12px 0}
.reel-disc{width:99px;height:99px;border-radius:50%;border:10px solid #9b7180;box-shadow:0 7px 18px #5f344331,inset 0 0 0 2px #f4dbda;display:block;position:relative;background:radial-gradient(circle,#f9eee6 0 10px,#9e7a89 11px 16px,transparent 17px),conic-gradient(from 0deg,#d9bfc4,#ad8996,#e0cad0,#9e7789,#d9bfc4)}
.reel-disc i{position:absolute;width:16px;height:16px;border-radius:50%;background:var(--bg);box-shadow:inset 0 2px 3px #633d4e44}
.reel-disc i:nth-child(1){left:30px;top:7px}.reel-disc i:nth-child(2){left:57px;top:27px}.reel-disc i:nth-child(3){left:48px;top:54px}.reel-disc i:nth-child(4){left:14px;top:52px}.reel-disc i:nth-child(5){left:6px;top:23px}
.reel-ticket{font:10px/1.9 Georgia,serif;letter-spacing:.15em;color:var(--muted);border-left:2px dotted var(--rose);padding-left:13px}
.cinema-stage{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr);gap:25px;align-items:stretch}
.cinema-screen-panel{padding:14px;border-radius:23px 23px 15px 15px;background:linear-gradient(145deg,#30252e,#1b1d29 53%,#4e353f);border:1px solid #c598ab58;box-shadow:0 18px 41px #4222343b,inset 0 0 0 1px #fff2;min-width:0}
.cinema-screen{isolation:isolate;position:relative;overflow:hidden;background:radial-gradient(ellipse at 60% 45%,#b68c82,#5d3e59 70%,#241d30);border-radius:9px 9px 5px 5px;min-height:525px;border:1px solid #ddd1da40;box-shadow:inset 0 0 0 1px #fff1}
.cinema-screen[data-mood=lost]{background:radial-gradient(ellipse at 48% 53%,#385c79,#172739 74%,#121a2a)}
.cinema-screen[data-mood=after]{background:radial-gradient(ellipse at 60% 45%,#c78897,#503d63 72%,#29253c)}
.cinema-screen canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;image-rendering:pixelated;opacity:.83;filter:contrast(1.07);z-index:-2}
.cinema-screen:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to bottom,#14132350 0%,transparent 26%,#17141e10 45%,#18141b88 100%);pointer-events:none}
.cinema-screen-noise{position:absolute;inset:0;opacity:.16;pointer-events:none;z-index:-1;background-image:repeating-linear-gradient(0deg,transparent 0 3px,#e7e1e180 3.5px 4px);mix-blend-mode:overlay}
.cinema-screen-copy{position:relative;color:#fff9f2;min-height:525px;display:flex;flex-direction:column;justify-content:space-between;padding:26px 29px;text-shadow:0 2px 14px #17121e99}
.cinema-frame-mark,.cinema-screen-footer{font:10px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;display:flex;justify-content:space-between;gap:10px;opacity:.8}
.cinema-screen-center{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;margin-top:5vh}
.cinema-frame-index{font:12px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.2em;border:1px solid #ffffff8a;padding:9px 17px;background:#20233130}
.cinema-screen-center strong{font:500 clamp(25px,3vw,42px)/1.5 var(--serif);letter-spacing:.04em;max-width:12em}
.cinema-screen-subtitle{font:14px/1.8 var(--serif);letter-spacing:.06em}
.cinema-under-screen{display:flex;justify-content:space-between;gap:7px;align-items:center;color:#d1b8c2;padding:15px 12px 3px;font:10px/1.5 var(--sans);letter-spacing:.06em}
.cinema-under-screen span:last-child{font-family:monospace;white-space:nowrap}.cinema-pinhole{height:6px;width:6px;border-radius:50%;background:#bb899c;box-shadow:0 0 7px #f3b9cc}
.cinema-control-paper{padding:clamp(24px,3.2vw,43px);border:1px solid var(--line);background:var(--paper);border-radius:12px;box-shadow:0 13px 35px var(--shadow);display:flex;flex-direction:column;min-width:0}
.cinema-control-paper h2{font-size:clamp(29px,3.2vw,41px);margin:13px 0 14px}
.cinema-control-intro{font:13px/1.9 var(--serif);color:var(--muted);margin-bottom:24px}
.cinema-choices{display:flex;flex-direction:column;gap:10px}
.cinema-choice{display:flex;gap:15px;align-items:center;width:100%;text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--paper-alt);transition:background .18s,border-color .18s,transform .18s}
.cinema-choice:hover{transform:translateX(2px)}.cinema-choice.is-selected{border-color:var(--accent);background:var(--paper);box-shadow:inset 0 0 0 1px var(--rose)}
.cinema-choice strong{display:block;font:500 15px/1.8 var(--serif);color:var(--heading)}.cinema-choice small{display:block;font:11px/1.6 var(--sans);color:var(--muted)}
.cinema-swatch{display:block;flex:0 0 51px;height:51px;border-radius:6px;box-shadow:inset 0 0 0 1px #fff5}
.cinema-swatch-ask{background:radial-gradient(circle at 65% 40%,#ebce98 0 17%,transparent 19%),linear-gradient(140deg,#7d5266,#e5ad8d,#5d384b)}
.cinema-swatch-lost{background:repeating-linear-gradient(90deg,#162e3c 0 4px,#294e68 4px 7px,#17283d 7px 11px)}
.cinema-swatch-after{background:radial-gradient(circle at 60% 40%,#f0bbca 0 20%,transparent 22%),linear-gradient(155deg,#22273d,#a16f92)}
.cinema-current{border-top:1px dashed var(--rose);margin-top:auto;padding-top:23px}.cinema-current span{font:10px var(--sans);letter-spacing:.13em;color:var(--accent)}.cinema-current p{font:14px/1.8 var(--serif);color:var(--ink);min-height:50px;margin-top:7px}
.cinema-next{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--accent-strong);color:var(--paper);padding:13px 18px;margin-top:12px;border-radius:5px;font:14px var(--serif);transition:transform .2s}
.cinema-next:hover{transform:translateY(-2px)}.cinema-next svg{width:16px;height:16px}
.cinema-second-act{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.2fr);gap:clamp(30px,6vw,95px);padding-top:95px;padding-bottom:85px;align-items:center}
.cinema-ticket{background:#f3d7ce;border:1px solid #d5aba9;border-radius:12px;color:#734453;box-shadow:7px 10px 0 #ad7b8750,12px 17px 25px #6b3e4c2b;max-width:390px;padding:27px 29px 30px;position:relative;transform:rotate(-2deg)}
.cinema-ticket-upper{display:flex;justify-content:space-between;border-bottom:1px solid #bc9594;padding-bottom:16px;font:11px Georgia,serif;letter-spacing:.14em}
.cinema-ticket-type{font:11px/1.8 var(--sans);letter-spacing:.13em;display:block;margin:24px 0 9px;color:#925666}
.cinema-ticket h2{font-size:44px;color:#7f3e54}.cinema-ticket>p{font:11px/2 var(--sans);letter-spacing:.2em;margin-top:9px}
.cinema-ticket-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px dashed #b88791;border-bottom:1px dashed #b88791;margin-top:26px;padding:23px 0;gap:12px}
.cinema-ticket-stats strong{display:block;font:32px Georgia,serif;letter-spacing:.02em}.cinema-ticket-stats small{display:block;font:11px/1.8 var(--sans);margin-top:6px}
.cinema-ticket-foot{font:11px/1.9 var(--serif);display:block;margin-top:21px}
.cinema-ticket-tear{position:absolute;top:66%;left:-11px;width:calc(100% + 22px);height:21px;pointer-events:none;background:radial-gradient(circle at 0 50%,var(--bg) 0 10px,transparent 11px),radial-gradient(circle at 100% 50%,var(--bg) 0 10px,transparent 11px)}
.cinema-stamp{display:block;width:100%;margin-top:24px;border:1px solid #9d6679;color:#854c5f;background:#f8e8e1;padding:12px 15px;border-radius:5px;font:13px var(--serif)}
.cinema-stamp:hover{background:#fff6ec}.cinema-stamp[aria-pressed=true]{background:#a16379;color:#fff8ef;border-color:#a16379}
.cinema-stamp-status{font:11px/1.8 var(--serif);display:block;text-align:center;margin-top:12px;min-height:21px}
.cinema-letter-paper{max-width:550px}.cinema-letter-paper h2{margin-top:15px;margin-bottom:28px;font-size:clamp(28px,3.5vw,44px)}
.cinema-letter-paper>p{font:15px/2.15 var(--serif);margin-bottom:14px;max-width:31em}.cinema-letter-paper strong{color:var(--heading)}
.cinema-secret{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:32px 0;padding:17px 0;font:14px/1.95 var(--serif)}
.cinema-secret summary{cursor:pointer;color:var(--accent-strong);list-style:none;display:flex;justify-content:space-between;gap:15px;align-items:center}
.cinema-secret summary:after{content:"+";font:22px/1 Georgia,serif;color:var(--accent)}.cinema-secret[open] summary:after{content:"−"}
.cinema-secret summary::-webkit-details-marker{display:none}.cinema-secret>div{padding:23px 8px 5px}.cinema-secret>div p{margin-bottom:12px}.cinema-secret>div span{display:block;text-align:right;font:italic 15px Georgia,serif;color:var(--muted)}
.cinema-links{display:flex;flex-wrap:wrap;gap:17px;align-items:center;font:14px var(--serif)}.cinema-links a:first-child{padding:12px 19px;background:var(--accent-strong);color:var(--paper);border-radius:4px;display:inline-flex;align-items:center;gap:8px}
.cinema-links a:last-child{border-bottom:1px solid var(--rose);padding-bottom:6px}.cinema-links svg{width:16px;height:16px}
.cinema-endnote{display:flex;align-items:flex-start;gap:24px;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:28px 34px;margin-bottom:10px}
.cinema-endnote-line{flex:0 0 4px;height:94px;border-radius:4px;background:linear-gradient(#efc2b7,#966780)}
.cinema-endnote p{font:13px/2 var(--serif);flex:1}.cinema-endnote strong{color:var(--heading);font-weight:500}
.cinema-endnote a{font:12px/1.8 var(--serif);color:var(--accent-strong);border-bottom:1px solid var(--rose);align-self:center}
.cinema-noscript{font:13px/1.8 var(--serif);padding:20px}
@media(max-width:900px){.cinema-stage{grid-template-columns:1fr}.cinema-control-paper{display:block}.cinema-control-paper h2 br{display:none}.cinema-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.cinema-choice{gap:8px;flex-direction:column;text-align:center;align-items:stretch}.cinema-swatch{width:100%;height:45px}.cinema-current{margin-top:24px}}
@media(max-width:670px){.cinema-main{padding-bottom:45px}.cinema-heading{padding:36px 0 35px;align-items:center}.cinema-heading p{font-size:14px}.cinema-reel{display:none}.cinema-screen-panel{padding:9px}.cinema-screen,.cinema-screen-copy{min-height:390px}.cinema-screen-copy{padding:16px 17px}.cinema-screen-center{margin-top:15px}.cinema-screen-center strong{font-size:26px}.cinema-screen-subtitle{font-size:12px}.cinema-screen-footer{font-size:9px}.cinema-frame-mark{font-size:9px}.cinema-under-screen{font-size:9px}.cinema-control-paper{padding:23px 20px}.cinema-control-intro{font-size:13px}.cinema-choices{gap:7px}.cinema-choice{padding:9px 6px}.cinema-choice strong{font-size:12px}.cinema-choice small{font-size:10px}.cinema-second-act{grid-template-columns:1fr;gap:66px;padding-top:65px;padding-bottom:60px}.cinema-ticket{max-width:360px;width:calc(100% - 20px);margin:0 auto}.cinema-ticket-tear{display:none}.cinema-endnote{flex-wrap:wrap;padding:23px 20px;gap:13px}.cinema-endnote-line{height:55px}.cinema-endnote p{flex-basis:calc(100% - 30px)}.cinema-endnote a{margin-left:17px}}
@media(prefers-reduced-motion:reduce){.cinema-choice,.cinema-next{transition:none;transform:none!important}}
