:root{color:#f4ead4;font-synthesis:none;text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;--cream:#f4ead4;--paper:#dfd1b8;--ink:#080706;--film:#050504;--line:#f4ead42e;--mono:"Cascadia Mono", Consolas, "Courier New", Courier, monospace;--display:"Bahnschrift Condensed", "Arial Narrow", Impact, Haettenschweiler, "Arial Black", sans-serif;--display-cn:"Microsoft YaHei UI", "Microsoft YaHei", SimHei, sans-serif;--serif-cn:SimSun, "Songti SC", "Noto Serif CJK SC", Georgia, serif;--script:KaiTi, STKaiti, "Segoe Print", "Comic Sans MS", cursive;background:#040403;font-family:Microsoft YaHei UI,Microsoft YaHei,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:linear-gradient(#ffffff06,#0000 18rem),#040403;margin:0;overflow-x:hidden}button{color:inherit;font:inherit;cursor:pointer;border:0}button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:disabled{cursor:wait;opacity:.62}.visually-hidden{white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.spin{animation:.9s linear infinite spin}.album-shell{min-height:100vh;color:var(--cream);background:linear-gradient(#ffffff0d,#0000 7rem),linear-gradient(90deg,#ffffff05,#0000 40%),#040403}.top-bar{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#030302f0;grid-template-columns:minmax(17rem,.9fr) minmax(0,1.25fr) auto;align-items:center;min-height:5.2rem;padding:0 2.4rem;display:grid;position:sticky;top:0}.brand-lockup,.progress-strip,.nav-actions{align-items:center;min-width:0;display:flex}.brand-lockup{min-width:0;font-family:var(--mono);white-space:nowrap;gap:.7rem;font-size:.86rem;font-weight:700}.brand-lockup .asterisk{color:var(--accent)}.brand-lockup .muted{color:#f4ead485}.progress-strip{justify-content:center;gap:.42rem;min-width:0;overflow:hidden}.progress-cell{background:#f4ead42e;border:1px solid #f4ead414;border-radius:1px;flex:none;width:1.75rem;height:.72rem;box-shadow:inset 0 0 1rem #00000059}.progress-cell.is-active{background:var(--cell-accent,var(--accent));box-shadow:0 0 1.2rem color-mix(in srgb, var(--cell-accent,var(--accent)) 35%, transparent);border-color:#f4ead447}.progress-cell.ghost{opacity:.52}.progress-meta{color:#f4ead4a3;font-family:var(--mono);white-space:nowrap;flex:none;margin-left:.45rem;font-size:.72rem;font-weight:800}.separator{color:#f4ead46b;font-family:var(--mono)}.nav-actions{justify-content:flex-end;gap:.45rem}.icon-button{background:#ffffff0a;border:1px solid #f4ead429;border-radius:4px;justify-content:center;align-items:center;width:2.4rem;height:2.4rem;display:inline-flex}.stage{min-height:calc(100vh - 5.2rem)}.cover-grid{background:linear-gradient(90deg,#74220c52,#0000 42%),#17110c;grid-template-columns:minmax(24rem,1fr) minmax(25rem,1.12fr);min-height:calc(100vh - 5.2rem);display:grid}.cover-page{background:linear-gradient(#0000,#65230f47 62rem,#090604 100rem),#17110c}.cover-page.is-long-roll .cover-grid{grid-template-columns:minmax(25rem,.82fr) minmax(36rem,1.18fr)}.cover-copy{background:linear-gradient(#0000 38%,#812d111f 68%,#812d11d6),linear-gradient(115deg,#f4ead429,#0000 40%),repeating-linear-gradient(0deg,#f4ead409 0 1px,#0000 1px 26px),#1b150f;flex-direction:column;justify-content:flex-start;padding:3rem 3.2rem 3.5rem;display:flex;position:relative;overflow:hidden}.roll-meta,.journal-meta,.poster-kicker,.stack-label,.hovering,.spotline{font-family:var(--mono);margin:0;font-size:.82rem;font-weight:700}.journal-meta{color:#f4ead4b8;margin-top:2.4rem}.cover-title{max-width:38rem;font-family:var(--serif-cn);flex-direction:column;margin:2.4rem 0 .6rem;font-size:clamp(3.8rem,5.4vw,6.6rem);font-weight:900;line-height:.98;display:flex}.cover-title>span:first-child{text-wrap:balance}.cover-title .outline{font-family:var(--display);color:#0000;-webkit-text-stroke:2px color-mix(in srgb, var(--accent) 72%, var(--cream));text-stroke:2px color-mix(in srgb, var(--accent) 72%, var(--cream));margin-top:.35rem;font-size:clamp(5rem,8vw,8.8rem);font-stretch:75%;line-height:.86}.cover-cn{font-family:var(--serif-cn);margin:.4rem 0 0;font-size:1.35rem;font-weight:700}.scribble,.poster-caption,.chapter-caption{font-family:var(--script);color:var(--accent);font-weight:700}.scribble{max-width:28rem;margin:1rem 0 2rem;font-size:1.22rem;line-height:1.35}.cover-directory-heading{color:#f4ead49e;width:min(100%,35rem);font-family:var(--mono);grid-template-columns:minmax(0,1fr) auto;padding-bottom:.5rem;font-size:.78rem;font-weight:800;display:grid}.roll-stats{border-top:1px solid #f4ead433;border-bottom:1px solid #f4ead433;grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,35rem);margin:.8rem 0 1.3rem;display:grid}.roll-stats span{color:#f4ead4a8;font-family:var(--mono);gap:.12rem;padding:.72rem .8rem .72rem 0;font-size:.68rem;font-weight:800;display:grid}.roll-stats strong{color:var(--cream);font-family:var(--display);font-size:1.85rem;line-height:.88}.itinerary{border-top:1px solid #f4ead433;width:min(100%,35rem)}.itinerary-row{text-align:left;color:#f4ead4cc;width:100%;font-family:var(--mono);background:0 0;border-bottom:1px solid #f4ead429;grid-template-columns:2.4rem 4.6rem minmax(0,1fr) 4.6rem;gap:1rem;padding:.62rem 0;font-size:.82rem;display:grid}.itinerary-row strong{font-family:var(--display-cn);font-weight:900}.itinerary-row:hover,.itinerary-row:focus-visible{color:var(--cream);background:color-mix(in srgb, var(--accent) 18%, transparent)}.enter-button{width:fit-content;min-width:13rem;color:var(--cream);font-family:var(--mono);background:0 0;border:1px solid #f4ead48a;border-radius:3px;align-items:center;gap:.7rem;margin-top:2rem;padding:.95rem 1.2rem;font-weight:800;display:inline-flex}.index-button{border:1px solid color-mix(in srgb, var(--accent) 62%, var(--cream));background:color-mix(in srgb, var(--accent) 15%, transparent);min-width:12rem;color:var(--cream);font-family:var(--mono);border-radius:3px;justify-content:center;align-items:center;margin-top:2rem;padding:.95rem 1.1rem;font-size:.86rem;font-weight:800;text-decoration:none;display:inline-flex}.cover-actions{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.import-button{border:1px solid color-mix(in srgb, var(--accent) 72%, var(--cream));background:color-mix(in srgb, var(--accent) 18%, transparent);width:fit-content;min-width:12.5rem;color:var(--cream);font-family:var(--mono);border-radius:3px;align-items:center;gap:.65rem;margin-top:2rem;padding:.95rem 1.1rem;font-weight:800;display:inline-flex}.enter-button:hover{background:#f4ead414}.import-button:hover{background:color-mix(in srgb, var(--accent) 28%, transparent)}.import-status{color:#f4ead4a8;width:min(100%,35rem);min-height:1.3rem;font-family:var(--mono);margin:1rem 0 0;font-size:.78rem;font-weight:700;line-height:1.45}.cover-stack{scrollbar-width:thin;scrollbar-color:#f4ead457 #f4ead414;background:linear-gradient(90deg,#40170ab8,#0000 15rem),linear-gradient(#f4ead414,#a1431c2e),#120f0b;border-left:1px solid #f4ead417;flex-direction:column;justify-content:flex-start;align-self:start;min-height:calc(100vh - 5.2rem);max-height:calc(100vh - 5.2rem);padding:4rem 4rem 3rem 2rem;display:flex;position:sticky;top:5.2rem;overflow:auto}.contact-stack{background:linear-gradient(115deg,#f4ead40d,#0000 34rem),radial-gradient(circle at 80% 18%,#f4865029,#0000 22rem),#0d0b08;border-left:1px solid #f4ead417;flex-direction:column;align-self:start;min-height:calc(100vh - 5.2rem);max-height:calc(100vh - 5.2rem);padding:3rem 3rem 2.2rem;display:flex;position:sticky;top:5.2rem;overflow:hidden}.contact-heading,.archive-heading{color:#f4ead4c2;font-family:var(--mono);grid-template-columns:minmax(0,1fr) auto;gap:1rem;font-size:.82rem;font-weight:800;display:grid}.contact-grid{flex:auto;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:.5rem;min-height:0;margin-top:1.2rem;display:grid}.contact-tile{border:1px solid #f4ead424;border-left:2px solid var(--tile-accent,var(--accent));text-align:left;background:#050503;grid-template-rows:minmax(0,1fr) auto;gap:.38rem;min-height:0;padding:.44rem;display:grid;position:relative;overflow:hidden}.contact-thumb{background:#f4ead40f;min-height:0;position:relative;overflow:hidden}.contact-thumb:after{content:"";pointer-events:none;background:linear-gradient(#0000000a,#0000 52%,#0000006b),linear-gradient(90deg,#00000057,#0000 46%,#0000002e);position:absolute;inset:0}.contact-thumb img{object-fit:cover;opacity:.82;filter:contrast(1.02)saturate(.9);width:100%;height:100%;transition:transform .36s,opacity .36s;display:block}.contact-tile:hover .contact-thumb img{opacity:1;transform:scale(1.04)}.contact-index{z-index:2;color:var(--tile-accent,var(--accent));font-family:var(--display);text-shadow:0 .16rem .6rem #000000c7;font-size:clamp(1rem,1.8vw,1.38rem);font-weight:900;line-height:1;position:absolute;top:.46rem;left:.5rem}.contact-caption{gap:.1rem;min-width:0;display:grid}.contact-caption strong{min-width:0;color:var(--cream);font-family:var(--display-cn);text-shadow:0 .18rem .7rem #000000d6;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.72rem,1.12vw,.96rem);font-weight:900;line-height:1.05;overflow:hidden}.contact-caption small{color:#f4ead48c;min-width:0;font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.52rem,.78vw,.68rem);font-weight:700;line-height:1.1;overflow:hidden}.contact-note{color:color-mix(in srgb, var(--accent) 72%, var(--cream));font-family:var(--mono);margin:1rem 0 0;font-size:.76rem;font-weight:800}.archive-directory{background:linear-gradient(#f4ead409,#0000 18rem),#080705;border-top:1px solid #f4ead41f;padding:4rem 3rem 5rem}.archive-directory-inner{width:min(100%,88rem);margin:0 auto}.range-nav{flex-wrap:wrap;gap:.5rem;margin:1.1rem 0 1.6rem;display:flex}.range-nav a{color:#f4ead4c7;font-family:var(--mono);border:1px solid #f4ead429;border-radius:3px;padding:.42rem .58rem;font-size:.72rem;font-weight:800;text-decoration:none}.range-nav a:hover,.range-nav a:focus-visible{border-color:var(--accent);color:var(--cream);background:color-mix(in srgb, var(--accent) 16%, transparent)}.range-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.range-card{background:linear-gradient(#f4ead40a,#0000),#f4ead406;border:1px solid #f4ead421}.range-card header{color:#f4ead4bd;font-family:var(--mono);border-bottom:1px solid #f4ead41f;grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding:.8rem .9rem;font-size:.76rem;font-weight:800;display:grid}.range-rows{scrollbar-width:thin;scrollbar-color:#f4ead447 #f4ead40f;max-height:34rem;display:grid;overflow-y:auto}.range-rows button{color:#f4ead4c7;text-align:left;background:0 0;border-bottom:1px solid #f4ead417;grid-template-columns:3.6rem 2.6rem minmax(5rem,.75fr) minmax(0,1fr);align-items:center;gap:.72rem;min-width:0;padding:.45rem .75rem;display:grid}.range-rows img{object-fit:cover;border:1px solid #f4ead424;width:3.6rem;height:2.2rem}.range-rows span{font-family:var(--mono);font-size:.72rem;font-weight:800}.range-rows strong{text-overflow:ellipsis;white-space:nowrap;font-family:var(--display-cn);font-size:.95rem;font-weight:900;overflow:hidden}.range-rows small{color:#f4ead47a;font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:700;overflow:hidden}.range-rows button:hover,.range-rows button:focus-visible{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--cream)}.stack-label{color:#f4ead4c7;position:absolute;top:2rem;left:3rem}.stack-slide{text-align:left;background:color-mix(in srgb, var(--slide-accent) 16%, #f4ead414);border:1px solid #f4ead414;border-left:2px solid var(--slide-accent);align-items:center;min-height:5.3rem;margin-left:0;padding:.5rem 1rem .5rem 1.2rem;display:grid;position:relative;overflow:hidden}.stack-slide+.stack-slide{margin-top:.34rem}.stack-slide:hover{border-color:var(--slide-accent);transform:translate(-.45rem)}.stack-slide img{object-fit:cover;opacity:.72;filter:contrast(1.05)saturate(.95);width:100%;height:100%;position:absolute;inset:0}.stack-slide:after{content:"";background:linear-gradient(90deg,#090704c7,#09070414 44%,#0907046b),linear-gradient(#0000,#f4ead40a);position:absolute;inset:0}.stack-index,.stack-title,.stack-date{z-index:1;position:relative}.stack-index{font-family:var(--display);color:var(--slide-accent);font-size:2rem;font-stretch:75%}.stack-title{font-family:var(--display-cn);justify-self:end;font-size:1.55rem;font-weight:900}.stack-date{font-family:var(--mono);color:#f4ead4b8;font-size:.72rem}.hovering{color:var(--accent);align-self:flex-end;margin-top:1.2rem}.chapter-grid{grid-template-columns:minmax(18rem,.88fr) minmax(24rem,1.45fr);min-height:calc(100vh - 5.2rem);display:grid}.chapter-poster{background:color-mix(in srgb, var(--accent) 42%, #ede2ca);color:#100d0b;flex-direction:column;justify-content:center;min-height:42rem;padding:4rem 3.6rem 3.2rem;display:flex;position:relative;overflow:hidden}.poster-page{font-family:var(--mono);margin:0;font-size:1.1rem;position:absolute;top:2.1rem;left:3.6rem}.poster-kicker{color:#100d0bbd;flex-wrap:wrap;align-items:baseline;gap:.42rem;display:flex}.poster-kicker span{color:var(--accent)}.poster-kicker .kicker-dot{color:#100d0b75}.poster-kicker em{color:#100d0bc7;font-family:var(--serif-cn);font-size:.96rem;font-style:normal;font-weight:700}.chapter-poster h2{max-width:8ch;font-family:var(--display-cn);color:#100d0b;margin:2.1rem 0 .9rem;font-size:5.85rem;font-weight:900;line-height:1.02}.poster-rule{background:var(--accent);width:min(100%,31rem);height:.5rem}.poster-cn{color:#100d0b6b;max-width:28rem;font-family:var(--serif-cn);margin:1.35rem 0 0;font-size:1.65rem;font-weight:700;line-height:1.42}.poster-caption{max-width:27rem;color:color-mix(in srgb, var(--accent) 50%, #15110d);margin:1.15rem 0 0;font-size:1.58rem;line-height:1.25}.poster-bottom{grid-template-columns:minmax(0,1fr) 7.2rem;align-items:end;gap:1.2rem 1.4rem;margin-top:auto;padding-top:3.2rem;display:grid}.notes-list{font-family:var(--mono);grid-column:1;gap:.42rem;font-size:.78rem;font-weight:700;line-height:1.35;display:grid}blockquote{font-family:var(--serif-cn);grid-column:1;margin:0;font-size:1.05rem;font-style:normal;font-weight:600;line-height:1.85}.stamp{border:3px double color-mix(in srgb, var(--accent) 60%, #100d0b);width:7.2rem;height:7.2rem;font-family:var(--mono);color:color-mix(in srgb, var(--accent) 55%, #100d0b);border-radius:50%;grid-area:1/2/span 2;align-self:end;place-items:center;display:grid;transform:rotate(-8deg)}.stamp span{font-size:1.7rem;font-weight:900}.stamp small{font-weight:800}.spotline{color:color-mix(in srgb, var(--accent) 60%, #100d0b);position:absolute;bottom:2.1rem;left:3.6rem}.photo-stage{background:radial-gradient(circle at 50% 46%,#f4ead40d,#0000 46%),#0c0b09;align-items:center;min-height:42rem;padding:2rem 7rem 5.6rem 2rem;display:grid;position:relative;overflow:hidden}.photo-frame{z-index:1;background:linear-gradient(135deg,#f4ead414,#0000 35%),#080705;border:1px solid #f4ead438;place-items:center;width:100%;height:min(68vh,100vh - 12.5rem);min-height:24rem;padding:.8rem;animation:.78s cubic-bezier(.2,.74,.18,1) both film-frame-in;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 .45rem #050503,0 1.4rem 4rem #0006}.photo-stage.direction-prev .photo-frame{animation-name:film-frame-in-prev}.photo-frame img{object-fit:contain;filter:saturate(.9)contrast(1.04);background:#050503;width:100%;height:100%;display:block}.shutter-blinds,.film-flash{pointer-events:none;position:absolute;inset:0}.shutter-blinds{mix-blend-mode:screen;transform-origin:0;background:repeating-linear-gradient(90deg,#030302eb 0 .8rem,#f4ead42e .8rem .95rem,#0000 .95rem 1.5rem);animation:.86s steps(10,end) both shutter-scan}.photo-stage.direction-prev .shutter-blinds{transform-origin:100%;animation-name:shutter-scan-prev}.film-flash{mix-blend-mode:screen;background:linear-gradient(90deg,#0000,#f4ead46b,#0000),radial-gradient(circle at 42% 45%,#fff4d65c,#0000 38%);animation:.78s steps(5,end) both film-flash}.photo-grain{pointer-events:none;mix-blend-mode:soft-light;background:linear-gradient(90deg,#0000000d,#0000 40%,#0000001f),repeating-linear-gradient(0deg,#ffffff09 0 1px,#0000 1px 4px);position:absolute;inset:0}.image-tools{z-index:3;filter:drop-shadow(0 .2rem .5rem #0000008c);align-items:center;gap:.45rem;display:flex;position:absolute;top:2rem;left:2rem}.image-tools span{border:1px solid #ffffff38;width:1rem;height:1rem}.time-badge{z-index:3;color:var(--cream);font-family:var(--mono);background:#0505057a;border-radius:2px;align-items:center;gap:.5rem;padding:.55rem .85rem;font-weight:800;display:inline-flex;position:absolute;top:2rem;right:9rem}.big-exposure{z-index:3;font-family:var(--display);color:var(--cream);font-size:9rem;font-stretch:75%;line-height:.8;position:absolute;bottom:2.4rem;right:3.6rem}.chapter-caption{max-width:28rem;color:var(--cream);text-shadow:0 .2rem .8rem #000c;font-size:2rem;position:absolute;bottom:5.4rem;left:2rem}.bottom-tape{font-family:var(--mono);z-index:3;background:#00000052;border-top:1px solid #f4ead473;grid-template-columns:.6fr .6fr 1fr 1.1fr 1.1fr;gap:1rem;padding:1rem 8.6rem 1rem 2rem;font-size:.8rem;font-weight:800;display:grid;position:absolute;bottom:0;left:0;right:0}.side-film{z-index:4;background:#050503;border-left:1px solid #f4ead42e;border-right:1px solid #f4ead42e;flex-direction:column;gap:.45rem;width:4.8rem;padding:.5rem;display:flex;position:absolute;top:5.7rem;bottom:5.4rem;right:1rem;overflow-y:auto}.side-film button{background:0 0;border:1px solid #0000;flex:0 0 3.2rem;padding:.15rem}.side-film button.is-active{border-color:var(--accent);background:#f4ead414}.side-film img{object-fit:cover;filter:grayscale(.35);width:100%;height:100%}@keyframes film-frame-in{0%{opacity:.18;filter:blur(10px)brightness(.74)saturate(.72);transform:translate(1.4rem)scale(1.035)}58%{opacity:.88;filter:blur(1.8px)brightness(1.04)saturate(.92)}to{opacity:1;filter:blur()brightness()saturate();transform:translate(0)scale(1)}}@keyframes film-frame-in-prev{0%{opacity:.18;filter:blur(10px)brightness(.74)saturate(.72);transform:translate(-1.4rem)scale(1.035)}58%{opacity:.88;filter:blur(1.8px)brightness(1.04)saturate(.92)}to{opacity:1;filter:blur()brightness()saturate();transform:translate(0)scale(1)}}@keyframes shutter-scan{0%{opacity:.95;clip-path:inset(0 100% 0 0)}42%{opacity:.82;clip-path:inset(0)}to{opacity:0;clip-path:inset(0 0 0 100%)}}@keyframes shutter-scan-prev{0%{opacity:.95;clip-path:inset(0 0 0 100%)}42%{opacity:.82;clip-path:inset(0)}to{opacity:0;clip-path:inset(0 100% 0 0)}}@keyframes film-flash{0%,to{opacity:0}15%{opacity:.58}28%{opacity:.12}44%{opacity:.38}}@keyframes spin{to{transform:rotate(360deg)}}.film-holes{background:radial-gradient(circle,#0e0c09 0 .28rem,#0000 .3rem) 0/1.3rem 1.3rem repeat-x,#f4ead447;flex:0 0 1.3rem}.chapter-controls{gap:.45rem;display:none;position:absolute;top:1.5rem;right:1rem}.chapter-controls button{font-family:var(--mono);background:#00000085;border-radius:3px;align-items:center;gap:.35rem;padding:.58rem .68rem;font-size:.78rem;font-weight:800;display:inline-flex}@media (width<=1120px){.top-bar{padding:calc(1rem + env(safe-area-inset-top,0px)) 1.2rem 1rem;grid-template-columns:1fr;gap:.8rem}.brand-lockup,.progress-strip,.nav-actions{justify-content:center}.cover-copy,.chapter-poster{min-height:auto}.cover-stack{min-height:34rem;max-height:38rem;padding:4rem 1.2rem 2rem;position:relative;top:auto}.contact-stack{min-height:auto;max-height:none;padding:3rem 1.2rem 2.4rem;position:relative;top:auto}.contact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.range-grid{grid-template-columns:1fr}.chapter-poster{padding:4rem 1.6rem 3rem}.poster-page,.spotline{left:2rem}.photo-stage{min-height:calc(100vh - 8.4rem);padding:1.5rem 6rem 5.5rem 1.4rem}.photo-frame{height:min(58vh,100vh - 16rem);min-height:22rem}}@media (width<=760px){.top-bar{position:relative}.cover-grid,.chapter-grid,.cover-page.is-long-roll .cover-grid{grid-template-columns:1fr}.brand-lockup{flex-wrap:wrap;font-size:.74rem}.progress-strip{scrollbar-width:none;justify-content:flex-start;gap:.38rem;width:100%;max-width:100%;padding:0 .2rem .35rem;overflow:auto hidden}.progress-strip::-webkit-scrollbar{display:none}.progress-cell{flex:none;width:1.35rem}.progress-meta{margin-left:.2rem;font-size:.64rem}.cover-copy{padding:2.5rem 1.2rem 2rem}.cover-title{font-size:4.4rem}.cover-cn,.scribble{font-size:1rem}.roll-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.roll-stats span{padding-right:.35rem;font-size:.58rem}.roll-stats strong{font-size:1.38rem}.itinerary-row{grid-template-columns:1.7rem 3.8rem minmax(0,1fr);gap:.55rem;font-size:.72rem}.itinerary-row span:last-child{display:none}.stack-slide{min-height:4.1rem}.stack-title{font-size:1.2rem}.chapter-poster{padding:4rem 1.2rem 2.4rem}.poster-page{left:1.2rem}.poster-kicker{font-size:.72rem}.chapter-poster h2{font-size:3.8rem}.poster-cn{font-size:1.2rem;line-height:1.55}.poster-caption{font-size:1.18rem}.poster-bottom{grid-template-columns:1fr;gap:1.4rem;padding-top:2.6rem}.stamp{width:6.4rem;height:6.4rem}.spotline{margin-top:2rem;position:static}.photo-stage{min-height:35rem;padding:1rem 1rem 10rem}.photo-frame{height:24rem;min-height:22rem;padding:.55rem}.image-tools{top:1rem;left:1rem}.time-badge{max-width:calc(100% - 7rem);font-size:.72rem;top:4.3rem;right:1rem}.side-film{border:1px solid #f4ead42e;border-left:0;border-right:0;flex-direction:row;width:auto;height:4.8rem;inset:auto 0 4.4rem;overflow:auto hidden}.side-film button{flex:0 0 4rem}.film-holes{background:radial-gradient(circle,#0e0c09 0 .24rem,#0000 .26rem) 50% 0/1.2rem 1.2rem repeat-y,#f4ead447;flex:0 0 2rem;height:100%}.big-exposure{font-size:5rem;bottom:9.2rem;right:1rem}.chapter-caption{max-width:calc(100% - 6rem);font-size:1.35rem;bottom:9.2rem;left:1rem}.bottom-tape{grid-template-columns:1fr 1fr;padding:.7rem 1rem;font-size:.68rem}.bottom-tape span:nth-child(3),.bottom-tape span:nth-child(5){display:none}.chapter-controls{display:flex}.nav-actions{display:none}}.install-hint{left:50%;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:60;border:1px solid color-mix(in srgb, var(--accent) 60%, var(--cream));width:min(92vw,30rem);color:var(--cream);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a0806eb;border-radius:8px;align-items:center;gap:.7rem;padding:.8rem .9rem;animation:.36s cubic-bezier(.2,.74,.18,1) both install-hint-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 .8rem 2.4rem #00000080}.install-hint>svg{color:var(--accent);flex:none}.install-hint-text{font-family:var(--mono);flex:auto;margin:0;font-size:.78rem;font-weight:700;line-height:1.45}.install-hint-text strong{color:var(--accent)}.install-hint-cta{border:1px solid color-mix(in srgb, var(--accent) 70%, var(--cream));background:color-mix(in srgb, var(--accent) 26%, transparent);color:var(--cream);font-family:var(--mono);border-radius:5px;flex:none;padding:.5rem .85rem;font-weight:800}.install-hint-close{width:1.7rem;height:1.7rem;color:var(--cream);background:#ffffff0f;border-radius:50%;flex:none;font-size:1.1rem;line-height:1}@keyframes install-hint-in{0%{opacity:0;transform:translate(-50%,1rem)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.install-hint{animation:none}}@media (width<=760px){.photo-stage{padding-bottom:calc(10rem + env(safe-area-inset-bottom,0px))}.side-film{bottom:calc(4.4rem + env(safe-area-inset-bottom,0px))}html{scroll-behavior:smooth}.cover-copy{padding:2.2rem 1.25rem 1.6rem}.cover-title{font-size:clamp(3.4rem,21vw,5rem)}.cover-actions{gap:.6rem;width:100%}.enter-button,.import-button,.index-button{justify-content:center;width:100%;min-width:0;margin-top:0}.enter-button{margin-top:1.1rem}.cover-stack{min-height:24rem;max-height:30rem;padding:2.4rem 1.25rem}.contact-stack{padding:2rem 1.25rem 2.4rem}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.contact-caption strong{font-size:.92rem}.archive-directory{padding:2.6rem 1.1rem 3.4rem}.archive-heading{grid-template-columns:1fr;gap:.25rem}.range-card header{grid-template-columns:1fr;gap:.22rem}.range-rows button{grid-template-columns:3.2rem 2.2rem minmax(0,1fr);gap:.54rem}.range-rows img{width:3.2rem}.range-rows small{display:none}.photo-frame{height:min(60vh,30rem);min-height:20rem}.big-exposure{right:.9rem;bottom:calc(8.6rem + env(safe-area-inset-bottom,0px));font-size:3.4rem}.chapter-poster h2{font-size:clamp(3rem,15vw,3.8rem)}}@media (width<=430px){.cover-title{font-size:clamp(2.8rem,20vw,4.2rem)}.photo-frame{height:min(56vh,26rem)}.bottom-tape{gap:.5rem;font-size:.62rem}}@media (width<=760px){.chapter-grid{flex-direction:column;display:flex}.photo-stage{order:0}.chapter-poster{order:1;min-height:auto;padding-top:2.6rem}.poster-page{top:1.3rem;left:auto;right:1.2rem}}.poster-handle{display:none}.poster-body{display:contents}@media (width<=760px){.chapter-poster{z-index:45;background:color-mix(in srgb, var(--accent) 14%, #efe7d6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:22px 22px 0 0;flex-direction:column;width:100%;min-height:0;max-height:82vh;padding:0;transition:transform .44s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden;transform:translateY(calc(100% - 3.8rem));box-shadow:0 -.5rem 2.2rem #00000080}.chapter-poster.is-open{transform:translateY(0)}.poster-handle{color:#100d0b;background:0 0;flex-direction:column;flex:none;align-items:center;gap:.5rem;width:100%;padding:.55rem 1.2rem .7rem;display:flex}.poster-grip{background:#100d0b42;border-radius:1rem;width:2.6rem;height:.28rem}.poster-handle-row{align-items:center;gap:.7rem;width:100%;display:flex}.poster-handle-title{font-family:var(--display-cn);color:#100d0b;font-size:1.55rem;font-weight:900;line-height:1}.poster-handle-meta{font-family:var(--mono);letter-spacing:.04em;color:#100d0b8c;margin-left:auto;font-size:.72rem;font-weight:800}.poster-chevron{color:#100d0b;transition:transform .32s}.chapter-poster.is-open .poster-chevron{transform:rotate(180deg)}.chapter-poster.is-open .poster-handle-title{opacity:0}.poster-body{-webkit-overflow-scrolling:touch;min-height:0;padding:.2rem 1.3rem calc(1.6rem + env(safe-area-inset-bottom,0px));flex:auto;display:block;overflow-y:auto}.chapter-poster .poster-page{display:none}.photo-stage{min-height:calc(100svh - 8.5rem);padding-bottom:calc(4.8rem + env(safe-area-inset-bottom,0px));align-items:center}.bottom-tape{display:none}.side-film{bottom:calc(4.4rem + env(safe-area-inset-bottom,0px))}.big-exposure{bottom:calc(9rem + env(safe-area-inset-bottom,0px))}.chapter-controls{z-index:8;gap:.5rem;inset:1rem 1rem auto auto}.chapter-controls button{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--cream);background:#14100c8c;border:1px solid #f4ead433;border-radius:999px;padding:.5rem .85rem;font-weight:700}.enter-button{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#14100c85;border-color:#f4ead461;border-radius:7px;box-shadow:0 2px 12px #00000052}.import-button{background:color-mix(in srgb, var(--accent) 22%, #14100c7a);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-color:color-mix(in srgb, var(--accent) 68%, var(--cream));border-radius:7px;box-shadow:0 2px 12px #00000052}.enter-button:hover,.enter-button:focus-visible{background:#f4ead41a}.import-button:hover,.import-button:focus-visible{background:color-mix(in srgb, var(--accent) 32%, #14100c7a)}}.photo-frame:before{content:"";z-index:0;background-image:var(--frame-img);filter:blur(30px)saturate(1.2)brightness(.52);background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.18)}.photo-frame img{z-index:1;background:0 0;position:relative}.shutter-blinds,.film-flash{z-index:2}@media (width<=760px){.cover-actions{flex-direction:column;align-items:stretch;display:flex}.import-primary{border-color:color-mix(in srgb, var(--accent) 82%, var(--cream));background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 40%, #1a120c), color-mix(in srgb, var(--accent) 24%, #140e09));box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 24%, transparent), 0 2px 10px #0006;border-radius:9px;order:-1;margin-top:1.4rem;padding:1.05rem 1.1rem;font-size:.95rem}.import-primary:hover,.import-primary:focus-visible{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 48%, #1a120c), color-mix(in srgb, var(--accent) 30%, #140e09))}.import-pack{box-shadow:none;opacity:.8;background:0 0;border-color:#f4ead42e;margin-top:.55rem;padding:.62rem .9rem;font-size:.76rem}}.smart-toggle{text-align:left;background:#ffffff08;border:1px solid #f4ead42e;border-radius:10px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:.7rem;width:min(100%,35rem);margin-top:1rem;padding:.7rem .95rem;display:grid}.smart-toggle.is-on{border-color:color-mix(in srgb, var(--accent) 60%, var(--cream));background:color-mix(in srgb, var(--accent) 14%, transparent)}.smart-dot{grid-row:1/span 2;font-size:1.35rem;line-height:1}.smart-label{font-family:var(--mono);color:var(--cream);align-self:end;font-size:.86rem;font-weight:800}.smart-sub{font-family:var(--mono);color:#f4ead48c;align-self:start;font-size:.7rem}.smart-status{width:min(100%,35rem);color:color-mix(in srgb, var(--accent) 52%, var(--cream));font-family:var(--mono);margin:.5rem 0 0;font-size:.76rem;font-weight:700;line-height:1.5}.admin-page{min-height:100vh;color:var(--cream);background:linear-gradient(135deg,#7e2b1142,#0000 42%),repeating-linear-gradient(90deg,#f4ead406 0 1px,#0000 1px 64px),#060504;padding:clamp(1.2rem,3vw,3rem)}.admin-panel{background:linear-gradient(#f4ead40b,#0000 15rem),#0a0806eb;border:1px solid #f4ead42e;border-radius:8px;width:min(100%,76rem);margin:0 auto;padding:clamp(1rem,2.6vw,2.4rem);box-shadow:0 24px 80px #0000006b}.admin-eyebrow,.admin-status,.admin-preview-row small,.admin-field span,.admin-drop small{font-family:var(--mono)}.admin-eyebrow{color:#f4ead4b3;letter-spacing:.03em;align-items:center;gap:.55rem;font-size:.76rem;font-weight:800;display:inline-flex}.admin-panel h1{font-family:var(--display-cn);letter-spacing:0;margin:1.1rem 0 .55rem;font-size:clamp(3rem,9vw,6.8rem);line-height:.92}.admin-lede{color:#f4ead4b3;max-width:48rem;margin:0 0 1.7rem;font-size:1rem;line-height:1.85}.admin-grid{grid-template-columns:minmax(14rem,.8fr) repeat(2,minmax(13rem,1fr));align-items:stretch;gap:.9rem;display:grid}.admin-field{gap:.48rem;display:grid}.admin-field span{color:#f4ead49e;font-size:.72rem;font-weight:800}.admin-field input,.admin-field textarea{width:100%;color:var(--cream);font:800 .9rem var(--mono);background:#ffffff0a;border:1px solid #f4ead433;border-radius:6px}.admin-field input{min-height:4.6rem;padding:0 1rem}.admin-json{margin-top:1rem}.admin-json textarea{resize:vertical;min-height:18rem;padding:1rem;line-height:1.58}.admin-drop{cursor:pointer;background:#f4ead40d;border:1px solid #f4ead438;border-radius:6px;align-content:center;gap:.34rem;min-height:4.6rem;padding:.86rem 1rem .86rem 3rem;display:grid;position:relative}.admin-drop svg{color:#c48b49;position:absolute;top:1.15rem;left:1rem}.admin-drop span{font-family:var(--mono);font-weight:900}.admin-drop small{color:#f4ead48a;font-size:.68rem}.admin-drop input{opacity:0;cursor:pointer;position:absolute;inset:0}.admin-preview-list{background:#0003;border:1px solid #f4ead429;border-radius:6px;gap:.4rem;max-height:22rem;margin-top:1rem;padding:.65rem;display:grid;overflow:auto}.admin-preview-row{background:#f4ead409;border:1px solid #f4ead41a;grid-template-columns:3rem minmax(8rem,.65fr) minmax(12rem,1fr) 10rem;align-items:center;gap:.8rem;min-height:2.7rem;padding:.5rem .7rem;display:grid}.admin-preview-row span{color:#c48b49;font-family:var(--display);font-size:1.55rem;line-height:1}.admin-preview-row strong{font-family:var(--display-cn);font-size:1.22rem}.admin-preview-row em{color:#f4ead4b8;font-style:normal;line-height:1.45}.admin-preview-row small{color:#f4ead47a;text-align:right;font-size:.65rem}.admin-empty{color:#f4ead47a;font-family:var(--mono);text-align:center;margin:0;padding:2rem}.admin-actions{flex-wrap:wrap;justify-content:flex-end;gap:.8rem;margin-top:1rem;display:flex}.admin-primary,.admin-secondary{min-height:3.2rem;font-family:var(--mono);background:0 0;border:1px solid #f4ead440;border-radius:5px;justify-content:center;align-items:center;gap:.58rem;padding:0 1.25rem;font-weight:900;display:inline-flex}.admin-primary{background:#c48b4929;border-color:#c48b49}.admin-status{color:#f4ead4b3;margin:.85rem 0 0;font-size:.78rem;font-weight:800;line-height:1.55}@media (width<=820px){.admin-grid,.admin-preview-row{grid-template-columns:1fr}.admin-preview-row small{text-align:left}.admin-actions{justify-content:stretch}.admin-primary,.admin-secondary{width:100%}}
