/* 黑白影廊·全景 */
:root{--canvas:#0f1217;--paper:#1a1e26;--ink:#ebecef;--subtle:#a6acba;--accent:#5583e7;--companion:#ad439e;--on-accent:#000000;--edge:color-mix(in srgb,var(--ink) 17%,transparent);--corner:4px;--measure:1440px;--space:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--canvas);color:var(--ink);font:15px/1.65 Georgia,"Noto Serif SC","Songti SC",SimSun,serif;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button{cursor:pointer}img{display:block;max-width:100%}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:550;line-height:1.2}ul,ol{padding:0;margin:0;list-style:none}input,select,textarea{max-width:100%;min-width:0;color:var(--ink);background:var(--paper);border:1px solid var(--edge);border-radius:var(--corner);padding:10px 12px}input::placeholder,textarea::placeholder{color:var(--subtle)}button{border:0}details>summary{cursor:pointer}[hidden]{display:none!important}::selection{background:var(--accent);color:var(--on-accent)}
.noir-panorama-stage{min-height:100vh}.noir-panorama-gallery,.noir-panorama-entrance{width:min(var(--measure),calc(100% - 64px));margin-inline:auto}.noir-panorama-entrance{min-height:94px;position:relative;z-index:20}.noir-panorama-signature{font-size:clamp(18px,1.9vw,27px);letter-spacing:.08em;font-weight:800;line-height:1.25;display:flex;align-items:center;gap:12px;max-width:540px}.noir-panorama-emblem{width:38px;height:38px;flex:0 0 38px;color:var(--accent)}.noir-panorama-wayfinding{display:flex;gap:23px;align-items:center;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.noir-panorama-wayfinding a{font-size:13px;padding:8px 0;border-bottom:2px solid transparent}.noir-panorama-wayfinding a:hover{color:var(--accent);border-color:currentColor}.noir-panorama-finder{display:flex;gap:7px;align-items:center}.noir-panorama-finder input{width:180px;background:transparent}.noir-panorama-finder button{background:var(--accent);color:var(--on-accent);padding:10px 14px;border-radius:var(--corner);white-space:nowrap}.noir-panorama-menu{display:none}.noir-panorama-edition{color:var(--accent);font:700 11px/1.3 "Segoe UI",sans-serif;letter-spacing:.25em;text-transform:uppercase}.noir-panorama-invitation{display:inline-flex;justify-content:center;align-items:center;gap:10px;background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);padding:12px 22px;border-radius:var(--corner);font-size:13px;font-weight:750;min-height:44px}.noir-panorama-invitation:hover{filter:brightness(1.13)}.noir-panorama-quiet{background:transparent;color:var(--ink);border-color:var(--edge)}.noir-panorama-choices{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.noir-panorama-overture{position:relative;min-height:550px;padding:46px 0 52px;isolation:isolate}.noir-panorama-headline{font-size:clamp(34px,4.3999999999999995vw,68px);letter-spacing:.025em;max-width:14ch;margin:20px 0}.noir-panorama-prologue{max-width:650px;z-index:2;position:relative}.noir-panorama-prologue>p{color:var(--subtle);max-width:45ch;font-size:16px;line-height:1.9}.noir-panorama-projection{position:relative;min-width:0;overflow:hidden;border-radius:calc(var(--corner)*1.5);background:var(--paper)}.noir-panorama-projection>img{width:100%;height:100%;object-fit:cover;aspect-ratio:1.32}.noir-panorama-projection figcaption{position:absolute;bottom:18px;left:18px;right:18px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--canvas);padding:12px 16px;border:1px solid var(--edge);font-size:12px}.noir-panorama-folio{font-size:11px;letter-spacing:.16em;color:var(--subtle)}.noir-panorama-chapter{padding:40px 0;border-top:1px solid var(--edge)}.noir-panorama-caption{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.noir-panorama-caption h1,.noir-panorama-caption h2{font-size:clamp(25px,3vw,36px)}.noir-panorama-caption>span{font-size:12px;color:var(--subtle)}.noir-panorama-collection{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space)}.noir-panorama-reel{min-width:0;display:block;position:relative}.noir-panorama-image{position:relative;aspect-ratio:2/3;overflow:hidden;border-radius:var(--corner);background:var(--paper);border:1px solid var(--edge)}.noir-panorama-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.noir-panorama-reel:hover img{transform:scale(1.045)}.noir-panorama-note{padding:13px 0}.noir-panorama-note h3{font-size:15px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-bottom:7px}.noir-panorama-seal{position:absolute;left:10px;bottom:10px;background:var(--canvas);padding:3px 9px;font-size:10px;border:1px solid var(--edge)}.noir-panorama-byline,.noir-panorama-aside{color:var(--subtle);font-size:12px}.noir-panorama-sheet{background:var(--paper);border:1px solid var(--edge);border-radius:var(--corner);padding:24px;margin-bottom:20px}.noir-panorama-sheet>h2,.noir-panorama-sheet>h3{margin-bottom:16px}.noir-panorama-subjects{display:flex;flex-wrap:wrap;gap:9px}.noir-panorama-subject{padding:8px 16px;font-size:12px;border:1px solid var(--edge);border-radius:var(--corner);background:var(--paper)}.noir-panorama-subject:hover,.noir-panorama-subject.active{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.noir-panorama-refine{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.noir-panorama-question{display:grid;gap:7px;margin-bottom:14px}.noir-panorama-question label{font-size:12px;color:var(--subtle)}.noir-panorama-question input,.noir-panorama-question select,.noir-panorama-question textarea{width:100%}.noir-panorama-intermission{grid-column:1/-1;min-height:220px;border:1px dashed var(--edge);padding:42px;display:grid;place-content:center;text-align:center;gap:12px;border-radius:var(--corner);background:var(--paper)}.noir-panorama-intermission h3{font-size:24px}.noir-panorama-intermission p{font-size:13px;color:var(--subtle)}.noir-panorama-credits{padding:38px 0;margin-top:40px;border-top:1px solid var(--edge);font-size:12px;color:var(--subtle)}.noir-panorama-credits>div{display:flex;align-items:start;justify-content:space-between;gap:24px;flex-wrap:wrap}.noir-panorama-credits nav{display:flex;gap:20px}.noir-panorama-pages{margin-top:28px;display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap;font-size:12px}.noir-panorama-pages svg{width:18px;height:18px}.noir-panorama-pages a,.noir-panorama-pages span{padding:6px}.noir-panorama-feature{display:grid;grid-template-columns:260px minmax(0,1fr);gap:38px;padding:34px 0}.noir-panorama-jacket{width:100%;border-radius:var(--corner);border:1px solid var(--edge)}.noir-panorama-feature h1{font-size:clamp(28px,3.6vw,48px);margin:16px 0 22px}.noir-panorama-synopsis{grid-column:1/-1}.noir-panorama-program{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.noir-panorama-session{border:1px solid var(--edge);padding:9px 15px;font-size:12px;border-radius:var(--corner);background:var(--paper);min-width:70px;text-align:center}.noir-panorama-session:hover,.noir-panorama-session.active{background:var(--accent);color:var(--on-accent)}.noir-panorama-screen{aspect-ratio:16/9;background:#050505;position:relative;border-radius:var(--corner);overflow:hidden;isolation:isolate}.noir-panorama-screen video,.noir-panorama-screen iframe{width:100%;height:100%;border:0}.noir-panorama-story{line-height:2;overflow-wrap:anywhere}.noir-panorama-message{padding:15px 20px;border-left:3px solid var(--accent);background:var(--paper);margin:20px 0}.noir-panorama-ledger{width:100%;border-collapse:collapse}.noir-panorama-ledger th,.noir-panorama-ledger td{text-align:left;padding:12px;border-bottom:1px solid var(--edge)}.noir-panorama-figures{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.noir-panorama-figure strong{font-size:30px;display:block}.noir-panorama-index{display:grid;gap:16px}.noir-panorama-index a{display:block;padding:20px;border:1px solid var(--edge);background:var(--paper);border-radius:var(--corner)}.noir-panorama-index b{font-size:18px;display:block}.noir-panorama-index span{color:var(--subtle);font-size:12px}.noir-panorama-return{position:fixed;right:20px;bottom:20px;border:1px solid var(--edge);background:var(--paper);color:var(--ink);width:42px;height:42px;border-radius:50%;z-index:25;display:grid;place-items:center}
.noir-panorama-entrance{display:grid;grid-template-columns:1fr auto;gap:22px;padding:30px 0 16px}.noir-panorama-signature{font-size:32px}.noir-panorama-entrance nav{grid-column:1/-1;justify-content:start;background:var(--accent);color:var(--on-accent);padding:5px 22px;border-radius:var(--corner);gap:34px}.noir-panorama-entrance nav a:hover{color:var(--on-accent)}.noir-panorama-overture{border-bottom:1px solid var(--edge);display:grid;grid-template-columns:1fr 1.25fr;gap:55px;align-items:center}.noir-panorama-projection{padding:22px;border:1px solid var(--edge);border-radius:0}.noir-panorama-projection img{filter:grayscale(1);aspect-ratio:1.4}.noir-panorama-headline{font-size:clamp(34px,4vw,64px)}.noir-panorama-overture>footer{grid-column:1/-1;display:flex;justify-content:space-between;padding-top:14px;letter-spacing:.22em;font-size:11px}.noir-panorama-contents{width:100%;margin:0;min-width:0}.noir-panorama-entrance nav{min-width:0;flex:1}.noir-panorama-signature{flex-shrink:1}.noir-panorama-index{grid-template-columns:repeat(3,minmax(0,1fr))}.noir-panorama-index a{padding:18px;min-height:110px}.noir-panorama-projection a{display:block;height:100%}.noir-panorama-projection a img{width:100%;height:100%;aspect-ratio:1.32;object-fit:cover}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.noir-panorama-image{aspect-ratio:4/5;border-radius:0}.noir-panorama-note{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--edge)}.noir-panorama-note h3{max-width:65%;font-size:14px}.noir-panorama-byline{font-size:10px}.noir-panorama-feature{grid-template-columns:180px 1fr;border-bottom:1px solid var(--edge)}.noir-panorama-collection{column-gap:18px;row-gap:30px}@media(min-width:1500px){.noir-panorama-headline{max-width:15ch}}@media(max-width:1100px){.noir-panorama-finder{display:none}.noir-panorama-entrance{gap:16px}.noir-panorama-signature{font-size:20px}.noir-panorama-overture{gap:35px;min-height:430px}.noir-panorama-headline{font-size:44px}.noir-panorama-collection{grid-template-columns:repeat(3,minmax(0,1fr))}.noir-panorama-entrance nav{gap:17px}}@media(max-width:760px){.noir-panorama-gallery,.noir-panorama-entrance{width:calc(100% - 32px);margin-inline:16px}.noir-panorama-entrance{position:relative;inset:auto;min-height:76px;padding:18px 0;border-radius:0;display:flex;flex-direction:column;gap:15px;background:transparent;border-inline:0;border-top:0;border-bottom:1px solid var(--edge);margin-top:0;align-items:stretch}.noir-panorama-signature{display:flex;font-size:20px;border:0;padding:0;max-width:100%;text-align:left;justify-self:start}.noir-panorama-entrance nav{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;justify-content:start;gap:22px;overflow:auto;border:0;padding:0;background:transparent;color:var(--ink)}.noir-panorama-entrance nav a{font-size:12px;padding:5px 0}.noir-panorama-entrance small{display:none}.noir-panorama-overture{display:flex;flex-direction:column;gap:28px;min-height:0;padding:36px 0;align-items:stretch;text-align:left;border-inline:0;margin-top:0}.noir-panorama-prologue{max-width:100%;padding:0;order:0;border:0}.noir-panorama-headline{font-size:clamp(32px,7.8vw,49px);max-width:14ch;margin:15px 0;line-height:1.25}.noir-panorama-prologue>p{font-size:14px;line-height:1.8}.noir-panorama-prologue .noir-panorama-choices{justify-content:start;margin-top:22px}.noir-panorama-projection{position:relative;inset:auto;order:1;opacity:1;z-index:0;max-width:100%;height:270px;min-height:0;aspect-ratio:auto;transform:none;box-shadow:none;margin:0;border-radius:var(--corner);clip-path:none;border-width:1px;padding:0}.noir-panorama-projection>img{height:100%;aspect-ratio:auto;object-fit:cover}.noir-panorama-projection figcaption{display:flex;font-size:11px;bottom:10px;left:10px;right:10px;padding:9px 12px}.noir-panorama-overture>aside{display:none}.noir-panorama-overture>footer{position:static;order:2;font-size:10px;gap:15px}.noir-panorama-chapter{padding:28px 0}.noir-panorama-caption{margin-bottom:20px}.noir-panorama-caption h2{font-size:25px}.noir-panorama-chapter[data-library]{display:block}.noir-panorama-collection{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.noir-panorama-note h3{font-size:13px}.noir-panorama-refine{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.noir-panorama-sheet{padding:18px}.noir-panorama-feature{grid-template-columns:105px 1fr;gap:20px;padding:25px 0;background:transparent;margin:0;border-radius:0}.noir-panorama-feature>figure{order:0}.noir-panorama-feature h1{font-size:25px;margin:10px 0}.noir-panorama-feature .noir-panorama-choices{grid-column:1/-1}.noir-panorama-synopsis{grid-column:1/-1}.noir-panorama-program{display:flex;gap:8px}.noir-panorama-session{padding:8px 12px}.noir-panorama-figures{grid-template-columns:1fr}.noir-panorama-intermission{padding:30px 20px;min-height:180px}.noir-panorama-credits{margin-top:20px}.noir-panorama-return{right:12px;bottom:12px;width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(max-width:760px){.noir-panorama-index{grid-template-columns:1fr}.noir-panorama-index a{min-height:0;padding:14px 16px}.noir-panorama-index b{font-size:16px}}