.remaster .shot-thumb img{height:auto}
.remaster button,.remaster input,.remaster a{-webkit-tap-highlight-color:transparent}
.remaster button,.remaster input{font:inherit}
.remaster button,.remaster a,.remaster input{touch-action:manipulation}
.remaster button{cursor:pointer}
.remaster button{color:inherit}
.remaster a{color:inherit;text-decoration:none}
.remaster button:disabled{cursor:default;opacity:.35}
.remaster [hidden]{display:none!important}
.remaster button:focus-visible,.remaster a:focus-visible,.remaster input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.remaster button{border:1px solid var(--line);background:var(--panel2)}
.remaster .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.remaster .intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:50px 0 32px}
.remaster .eyebrow{font-size:10px;letter-spacing:.18em;font-weight:650;color:var(--accent);margin:0 0 12px}
.remaster h1,.remaster h2,.remaster p{margin-top:0}
.remaster .intro h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-2px;font-size:clamp(42px,5vw,66px);line-height:1.07;margin:0}
.remaster .intro h1 em{color:var(--accent);font-weight:400}
.remaster .intro-copy{color:var(--muted);line-height:1.8;margin-bottom:1px}
.remaster .search-row{display:flex;align-items:center;gap:24px;justify-content:space-between;margin:0 0 28px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.remaster .search-box{display:flex;align-items:center;position:relative;background:var(--panel);border:1px solid var(--line);border-radius:8px;flex:1;max-width:620px}
.remaster .search-box svg{margin-left:17px;color:var(--muted);flex:none}
.remaster .search-box input{width:100%;min-width:0;min-height:52px;background:none;color:var(--text);border:0;padding:12px 48px 12px 12px;outline-offset:0;border-radius:8px}
.remaster .search-box input::placeholder{color:#99a793}
.remaster .search-box input::-webkit-search-cancel-button{display:none}
.remaster .clear-search{position:absolute;right:5px;border:0;background:none;font-size:26px;min-width:44px;min-height:44px}
.remaster #result-count{margin:0;color:var(--muted);font-size:13px;white-space:nowrap}
.remaster .map-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.remaster .map-card{display:block;border-radius:var(--radius);overflow:hidden;background:var(--panel);border:1px solid var(--line);transition:border-color .15s,transform .15s}
.remaster .map-card:hover{border-color:var(--accent);transform:translateY(-3px)}
.remaster .cover{position:relative;aspect-ratio:1060/661;overflow:hidden;background:#243027}
.remaster .cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}
.remaster .map-card:hover .cover img{transform:scale(1.025)}
.remaster .cover::after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#10181390)}
.remaster .cover-count{position:absolute;bottom:12px;left:14px;z-index:1;font-size:11px;background:#101813dc;border:1px solid #ffffff20;border-radius:4px;padding:4px 8px}
.remaster .card-body{padding:20px 21px}
.remaster .card-body h2{font-size:20px;font-weight:550;letter-spacing:-.4px;line-height:1.3;margin:0 0 18px;min-height:52px}
.remaster .card-action{display:flex;align-items:center;justify-content:space-between;color:var(--accent);font-size:13px}
.remaster .card-action b{font-size:22px;font-weight:400;line-height:1}
.remaster .load-more-wrap{text-align:center;padding:32px 0 10px}
.remaster .button{border-radius:7px;padding:11px 20px;min-height:44px;background:var(--panel2);font-weight:550}
.remaster .button:hover{border-color:var(--accent)}
.remaster .button span{margin-left:12px}
.remaster .text-button{border:0;background:none;color:var(--muted);padding:10px 0;min-height:44px}
.remaster .text-button:hover{color:var(--accent)}
.remaster .empty{text-align:center;padding:70px 15px;color:var(--muted)}
.remaster .empty h2{color:var(--text)}
.remaster .detail-nav{display:flex;justify-content:space-between;align-items:center;margin-top:18px}
.remaster .detail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:18px 0 22px}
.remaster .detail-heading .eyebrow{margin-bottom:8px}
.remaster .detail-heading h1{font-size:clamp(26px,3vw,38px);font-weight:550;line-height:1.15;letter-spacing:-1px;margin:0}
.remaster .counter{color:var(--muted);font-size:13px;white-space:nowrap;margin:0}
.remaster .compare-panel{width:100%}
.remaster .viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.remaster .segmented{display:flex;padding:3px;border-radius:8px;border:1px solid var(--line);background:var(--panel);gap:2px}
.remaster .segmented button{min-height:40px;padding:8px 18px;border:0;border-radius:5px;background:none;font-size:13px}
.remaster .segmented button[aria-pressed=true]{background:var(--accent);color:#152113}
.remaster .view-actions{display:flex;gap:6px;align-items:center}
.remaster .icon-button{height:44px;min-width:44px;border-radius:7px;font-size:23px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.remaster .icon-button:hover:not(:disabled){border-color:var(--accent)}
.remaster .zoom-reset{min-width:56px;height:44px;border:0;background:none;color:var(--muted);font-size:12px}
.remaster .expand{margin-left:8px}
.remaster .stage{aspect-ratio:1060/661;position:relative;overflow:hidden;background:#0a110d;border-radius:10px;border:1px solid var(--line);touch-action:pan-y;user-select:none;cursor:ew-resize;isolation:isolate;max-height:72vh;margin:auto;width:100%;--split:50%}
.remaster .stage.zoomed{touch-action:none;cursor:grab}
.remaster .stage.dragging.zoomed{cursor:grabbing}
.remaster .image-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.remaster .image-layer img{width:100%;height:100%;object-fit:fill;display:block;transform-origin:center;user-select:none;will-change:transform}
.remaster .before-layer{clip-path:inset(0 calc(100% - var(--split)) 0 0)}
.remaster .image-tag{position:absolute;top:14px;background:#101813df;padding:5px 10px;border:1px solid #ffffff20;border-radius:4px;font-size:10px;letter-spacing:.12em;pointer-events:none}
.remaster .before-tag{left:14px}
.remaster .after-tag{right:14px}
.remaster .divider{position:absolute;left:var(--split);top:0;bottom:0;width:2px;background:#f5f5e9;transform:translateX(-1px);box-shadow:0 0 12px #0009;pointer-events:none}
.remaster .divider span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;border:1px solid #fff9;background:#18231eea;display:flex;align-items:center;justify-content:space-evenly;font-size:24px}
.remaster .divider i{display:block;width:1px;height:17px;background:#fff6}
.remaster .slider-row{display:flex;align-items:center;gap:18px;font-size:11px;color:var(--muted);margin:0 4px}
.remaster .slider-row input{appearance:none;-webkit-appearance:none;width:100%;height:44px;background:transparent;cursor:ew-resize;touch-action:pan-y}
.remaster .slider-row input::-webkit-slider-runnable-track{height:3px;border-radius:5px;background:var(--line)}
.remaster .slider-row input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--accent);margin-top:-7px;box-shadow:0 0 0 5px #c5dfa21a}
.remaster .slider-row input::-moz-range-track{height:3px;background:var(--line)}
.remaster .slider-row input::-moz-range-thumb{width:18px;height:18px;border:0;border-radius:50%;background:var(--accent)}
.remaster .scene-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:16px;margin:3px 0 18px}
.remaster .scene-nav>div{text-align:center;min-width:0}
.remaster .shot-title{font-size:15px;margin:0;overflow-wrap:anywhere}
.remaster .gesture-help{color:var(--muted);font-size:11px;margin:4px 0 0}
.remaster .shots-heading{display:flex;justify-content:space-between;align-items:center;padding-top:18px;border-top:1px solid var(--line);margin-bottom:12px}
.remaster .shots-heading h2{font-size:14px;font-weight:550;margin:0}
.remaster .shots-heading>span{font-size:11px;color:var(--muted)}
.remaster .shot-strip{display:flex;overflow-x:auto;gap:12px;padding:4px 3px 16px;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.remaster .shot-thumb{flex:0 0 150px;padding:0;text-align:left;overflow:hidden;border-radius:8px;background:var(--panel);scroll-snap-align:start;border:1px solid var(--line)}
.remaster .shot-thumb[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.remaster .shot-thumb img{display:block;width:100%;aspect-ratio:1060/661;object-fit:cover;background:var(--panel2)}
.remaster .shot-thumb span{display:block;padding:9px 10px;font-size:11px;line-height:1.4;min-height:48px;overflow-wrap:anywhere}
.remaster .source-note{color:var(--muted);font-size:11px;margin:12px 0 0;max-width:750px}
.remaster .image-status,.remaster .image-error{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#101813ec;flex-direction:column;text-align:center;padding:20px;color:var(--muted)}
.remaster .image-status span::before{content:"";display:inline-block;width:12px;height:12px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;vertical-align:-2px;margin-right:10px;animation:remaster-spin 1s linear infinite}
@keyframes remaster-spin{to{transform:rotate(360deg)}}
.remaster .toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--accent);color:#162314;padding:12px 22px;border-radius:8px;font-size:13px;z-index:20;max-width:90vw;box-shadow:0 5px 35px #0005}
.remaster .error-message{padding:20px;border:1px solid #9c5e43;border-radius:8px;color:#f1c9ab}
.remaster .error-message button{color:inherit;text-decoration:underline}
.remaster dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:20px 30px;border:0;background:#0c130f;color:var(--text);overflow:auto}
.remaster dialog::backdrop{background:#0c130f}
.remaster .dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1600px;margin:0 auto 14px}
.remaster .dialog-header h2{font-size:16px;font-weight:500;margin:0}
.remaster .dialog-header .button{padding:8px 15px}
.remaster #dialog-body{max-width:1600px;margin:0 auto}
.remaster dialog .stage{max-height:none;width:min(100%,calc((100dvh - 262px) * var(--ratio, 1.6036)))}
.remaster dialog .expand{display:none}
.remaster dialog .scene-nav{margin-bottom:0}
@media(min-width:760px){.remaster .stage{width:min(100%,calc(72vh * var(--ratio, 1.6036)))}}
@media(max-width:1000px){.remaster .map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.remaster .intro{align-items:flex-start;flex-direction:column;gap:20px}
.remaster .intro-copy br{display:none}
.remaster .intro h1{font-size:56px}}
@media(max-width:600px){.remaster .intro{padding:28px 0 22px;gap:16px}
.remaster .intro h1{font-size:42px;letter-spacing:-1.8px}
.remaster .intro-copy{font-size:13px;line-height:1.6}
.remaster .eyebrow{font-size:9px;letter-spacing:.14em}
.remaster .search-row{flex-wrap:wrap;gap:12px;padding:16px 0;margin-bottom:20px}
.remaster .search-box{flex-basis:100%;max-width:none}
.remaster .search-box input{font-size:14px;padding-left:10px;min-height:50px}
.remaster #result-count{font-size:12px}
.remaster .map-grid{grid-template-columns:1fr;gap:18px}
.remaster .card-body{padding:17px 18px}
.remaster .card-body h2{font-size:22px;min-height:0;margin-bottom:14px}
.remaster .load-more-wrap{padding-top:24px}
.remaster .detail-nav{margin-top:10px;font-size:12px}
.remaster .detail-heading{margin:8px 0 18px;align-items:flex-start;gap:12px}
.remaster .detail-heading h1{font-size:27px;letter-spacing:-.6px}
.remaster .detail-heading .eyebrow{font-size:9px;margin-bottom:6px}
.remaster .counter{font-size:11px;white-space:nowrap;padding-top:5px}
.remaster .viewer-toolbar{gap:6px;margin-bottom:10px}
.remaster .segmented{padding:2px;gap:0}
.remaster .segmented button{padding:7px 10px;min-height:40px;font-size:12px}
.remaster .view-actions{gap:2px}
.remaster .view-actions .icon-button{min-width:36px;width:36px;height:44px;font-size:21px;border:0;background:none}
.remaster .zoom-reset{min-width:40px;padding:0;font-size:10px}
.remaster .expand{margin-left:0}
.remaster .stage{max-height:none;border-radius:8px}
.remaster .image-tag{top:8px;font-size:9px;padding:4px 7px}
.remaster .before-tag{left:8px}
.remaster .after-tag{right:8px}
.remaster .divider span{width:38px;height:38px;font-size:21px}
.remaster .slider-row{gap:12px;margin:0}
.remaster .scene-nav{gap:10px;margin:0 0 18px}
.remaster .shot-title{font-size:13px}
.remaster .gesture-help{font-size:10px;line-height:1.5}
.remaster .shots-heading{padding-top:15px}
.remaster .shots-heading>span{font-size:10px}
.remaster .shot-strip{gap:10px}
.remaster .shot-thumb{flex-basis:128px}
.remaster .shot-thumb span{padding:8px;font-size:10px}
.remaster .source-note{font-size:10px}
.remaster dialog{padding:12px}
.remaster .dialog-header{gap:12px;margin-bottom:12px}
.remaster .dialog-header h2{font-size:13px}
.remaster dialog .stage{width:100%}
.remaster dialog .scene-nav{margin-top:0}}
@media(max-width:359px){.remaster .segmented button{padding:7px}
.remaster .view-actions .icon-button{width:31px;min-width:31px}
.remaster .zoom-reset{min-width:34px}}
@media(prefers-reduced-motion:reduce){}
.remaster{--panel:var(--surface);--panel2:var(--surface-2);padding-top:36px;padding-bottom:64px}
.remaster .remaster-back{display:inline-flex;min-height:44px;align-items:center}
.remaster .intro{padding-top:28px;gap:48px}
.remaster .intro h1{font-family:inherit;font-size:clamp(38px,4.5vw,64px);font-weight:550;letter-spacing:-.045em}
.remaster .intro h1 em{display:block;font-size:.65em;line-height:1.3;font-style:normal;font-weight:500;margin-top:10px}
.remaster .intro-copy{max-width:340px;font-size:15px}
.remaster .detail-heading{padding:0;border:0}
.remaster .map-description{color:var(--muted);max-width:760px;white-space:pre-line;overflow-wrap:anywhere;margin:0 0 24px}
.remaster .search-box svg{width:22px;height:22px}
.remaster .expand svg{width:20px;height:20px}
.remaster .button{color:var(--text);display:inline-flex;justify-content:center;align-items:center}
.remaster .card-body h2,.remaster .detail-heading h1{overflow-wrap:anywhere}
.remaster .view-actions button{flex-shrink:0}
body.remaster-dialog-open{overflow:hidden}
@media(max-width:760px){.remaster{padding-top:18px;padding-bottom:32px}.remaster .intro{padding-top:18px;gap:18px}.remaster .intro-copy{max-width:none}.remaster .detail-heading{display:block}.remaster .counter{margin-top:10px}.remaster .viewer-toolbar{flex-wrap:wrap}.remaster .map-grid{grid-template-columns:1fr}}
