:root{
  --red:#ff2828;
  --red-dark:#690000;
  --silver:#c7cbd0;
  --white:#f4f4f4;
  --black:#030303;
  --panel:#0b0d0e;
  --panel-2:#121617;
  --line:#687076;
  --green:#50ff78;
  --yellow:#ffd42a;
  --cyan:#62d8e8;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#000}
body{
  margin:0;
  color:var(--silver);
  background:
    radial-gradient(circle at 20% 8%,rgba(170,0,0,.12),transparent 26%),
    radial-gradient(circle at 82% 32%,rgba(37,90,100,.09),transparent 27%),
    radial-gradient(#282828 1px,transparent 1px),#000;
  background-size:auto,auto,22px 22px;
  font-family:"Courier New",Courier,monospace;
  line-height:1.48;
}
button,input,textarea{font:inherit}
button{touch-action:manipulation}
a{color:#ff4444;text-decoration:underline;font-weight:700}
a:visited{color:#c56791}
a:hover{color:#fff;background:#760000}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
[hidden]{display:none!important}

.top-strip{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  min-height:42px;padding:7px max(12px,calc((100vw - 1120px)/2));
  color:#111;background:#c4c4c4;border-bottom:4px ridge #f3f3f3;
  font:700 13px Arial,sans-serif;
}
.top-strip a{color:#700000}
.top-strip button,.midi button,.poll-box button,.guestbook-form button,.quiz-submit,.scanner-copy button,.scene-vote-form button{
  min-height:40px;border:3px outset #eee;background:#c0c0c0;color:#111;padding:8px 12px;font-weight:800;cursor:pointer;
}
.top-strip button:active,.midi button:active,.poll-box button:active,.guestbook-form button:active,.quiz-submit:active,.scanner-copy button:active,.scene-vote-form button:active{border-style:inset}
button:disabled{opacity:.58;cursor:wait}

.construction-banner{
  display:flex;align-items:center;justify-content:center;gap:18px;
  min-height:58px;padding:8px 14px;overflow:hidden;
  color:#fff;background:repeating-linear-gradient(135deg,#dfb900 0 30px,#090909 30px 60px);
  border-top:4px solid var(--yellow);border-bottom:4px solid var(--yellow);
  text-align:center;text-shadow:-2px -2px #000,2px 2px #000;font:900 14px Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;letter-spacing:1.3px;
}
.construction-banner strong,.construction-banner span{background:#090909;border:2px solid var(--yellow);padding:6px 12px}
.construction-banner strong{color:var(--yellow);font-size:20px;white-space:nowrap}

.page-shell{width:min(1120px,calc(100% - 20px));margin:12px auto 40px}
.fan-nav{
  display:flex;flex-wrap:wrap;margin-bottom:10px;border:4px ridge #a7aaad;background:#410000;
}
.fan-nav a{flex:1 1 145px;padding:9px 8px;color:#fff;border-right:2px solid #b07a7a;text-align:center;font:800 12px Arial,sans-serif}
.fan-nav a:last-child{border-right:0}

.metal-table{
  border:4px ridge #9ca1a4;background:linear-gradient(145deg,#151819,#030303 72%);
  box-shadow:inset 0 0 0 2px #34393b,0 9px 22px rgba(0,0,0,.7);padding:18px;
}
.eyebrow{margin:0 0 5px;color:var(--green);font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}
h1,h2,h3{margin:.15em 0 .55em;color:var(--red);font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;letter-spacing:1.2px;line-height:1.04;text-shadow:2px 2px #4c0000}
h1{font-size:clamp(39px,6.2vw,74px)}
h2{font-size:clamp(25px,3.5vw,38px)}
h3{font-size:24px;color:#fff}

.hero-archive{
  position:relative;min-height:515px;overflow:hidden;border:5px ridge #a5a7a9;background:#020303;
  box-shadow:0 12px 30px #000;
}
.hero-archive>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.75) 41%,rgba(0,0,0,.08) 72%),linear-gradient(0deg,rgba(0,0,0,.78),transparent 35%)}
.hero-shade:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,20,20,.09),transparent);animation:heroScan 5s linear infinite}
@keyframes heroScan{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.hero-copy{position:absolute;z-index:2;left:clamp(18px,5vw,62px);top:50%;width:min(570px,56%);transform:translateY(-54%)}
.hero-copy h1{margin:.12em 0;color:#f42b2b;text-transform:uppercase}
.tagline{color:#fff;font:800 clamp(13px,1.8vw,18px) Arial,sans-serif;letter-spacing:1px}
.blink{color:#ff0;font-weight:800;animation:blink 1s steps(1,end) infinite}
@keyframes blink{50%{opacity:.2}}
.visitor-chip{display:inline-block;margin:9px 0 0;padding:6px 11px;color:#ff0;border:2px inset #aaa;background:#050505;font-size:12px}
.visitor-chip b{color:var(--green);letter-spacing:2px}
.hero-status{
  position:absolute;z-index:2;right:18px;bottom:16px;display:grid;grid-template-columns:auto minmax(135px,1fr);gap:3px 12px;
  width:min(360px,42%);padding:10px 12px;border:2px solid #5d676b;background:rgba(0,7,8,.86);font-size:11px;
}
.hero-status span{color:#8d999c}.hero-status b{color:var(--green);text-align:right}
.marquee{overflow:hidden;border:3px inset #999;background:#070707;color:#ff4242;white-space:nowrap;margin:10px 0 14px}
.marquee span{display:inline-block;min-width:100%;padding:6px 0;animation:marquee 18s linear infinite}
@keyframes marquee{from{transform:translateX(100%)}to{transform:translateX(-100%)}}

.page-message:empty{display:none}
.notice,.error{margin:14px 0;padding:12px;border:3px ridge #aaa;background:#063d16;color:#fff;scroll-margin-top:60px}
.error{background:#650000}

.archive-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:22px;align-items:center;margin:14px 0}
.archive-intro>div>p:last-child{font-family:"Times New Roman",Times,serif;font-size:20px;color:#e2e2e2}
.film-data{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0}
.film-data div{border:2px inset #80888a;background:#00120b;padding:10px}
.film-data dt{color:#79b487;font-size:10px;font-weight:800}.film-data dd{margin:3px 0 0;color:var(--green);font-weight:800}

.two-col{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.75fr);gap:14px;margin:14px 0;scroll-margin-top:56px}
.review p:not(.eyebrow){font-family:"Times New Roman",Times,serif;font-size:19px;color:#dedede}
.rating{border:2px dashed var(--red);padding:10px;background:#250000;color:#fff!important}
.midi{text-align:center;align-self:start}.player-display{min-height:62px;margin:10px 0;padding:12px;background:#001b08;border:3px inset #aaa;color:var(--green)}
.player-display span,.player-display small{display:block}.player-display small{margin-top:4px;color:#a7ffb9}
#music-visualiser{display:block;width:100%;height:90px;background:#000;border:3px inset #999;image-rendering:pixelated}
.player-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:9px 0}.volume-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:9px;font-weight:800}.midi-note{font-size:12px}

.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:14px 0}
.reason-grid article{position:relative;min-height:205px;padding-top:45px}.reason-grid article>span{position:absolute;top:5px;right:12px;color:#5a0000;font:900 50px Impact,sans-serif;text-shadow:1px 1px #bd0000}.reason-grid p{font-family:"Times New Roman",Times,serif;font-size:18px}

.archive-section,.quiz-section,.scanner,.poll-box,.guest-grid{scroll-margin-top:58px}
.archive-section{margin:14px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:14px}
.section-head h2{margin-bottom:0}.section-head>p{max-width:400px;margin:0;color:#aab1b3;text-align:right}

.timeline-section{background:linear-gradient(145deg,#101718,#020404)}
.timeline-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:14px}
.timeline-tabs{display:grid;gap:5px}
.timeline-tabs button{display:grid;grid-template-columns:88px 1fr;gap:10px;align-items:center;min-height:53px;padding:7px 10px;border:2px outset #92999c;background:#1c2022;color:#ddd;text-align:left;font:700 12px "Courier New",monospace;cursor:pointer}
.timeline-tabs button span{color:var(--yellow);font-weight:900}.timeline-tabs button[aria-selected=true]{border-color:#ff7777;background:#5b0000;color:#fff}.timeline-tabs button:active{border-style:inset}
.timeline-panels{min-height:365px;border:3px inset #777;background:repeating-linear-gradient(0deg,#00100d 0 3px,#000b08 3px 6px);padding:clamp(18px,4vw,40px)}
.timeline-panels article>b{display:block;color:var(--yellow);font-size:clamp(35px,6vw,70px);line-height:1}.timeline-panels h3{font-size:clamp(27px,4vw,42px)}.timeline-panels article>p:last-child{font-family:"Times New Roman",serif;font-size:21px;color:#e2eee8}.terminal-label{color:var(--green);font-size:11px;letter-spacing:1px}

.dossier-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dossier-card{padding:0}.dossier-card summary{display:grid;grid-template-columns:90px 1fr auto;gap:12px;align-items:center;min-height:74px;padding:14px;cursor:pointer;list-style:none}.dossier-card summary::-webkit-details-marker{display:none}.dossier-card summary span{color:var(--green);font-size:12px}.dossier-card summary strong{color:#fff;font:28px Impact,sans-serif;letter-spacing:1px}.dossier-card summary i{color:var(--yellow);font-size:11px;font-style:normal}.dossier-card[open] summary{border-bottom:2px solid #666;background:#310000}.dossier-card[open] summary i{font-size:0}.dossier-card[open] summary i:after{content:"CLOSE FILE";font-size:11px}.dossier-card dl{display:grid;gap:5px;margin:14px}.dossier-card dl div{display:grid;grid-template-columns:90px 1fr;gap:10px;padding:7px;border:1px solid #42494b;background:#001009}.dossier-card dt{color:#7f9d88;font-size:10px}.dossier-card dd{margin:0;color:var(--green);font-size:12px}.dossier-card>p{margin:14px;font-family:"Times New Roman",serif;font-size:18px;color:#ddd}

.scene-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.scene-card{position:relative;display:flex;flex-direction:column;min-height:435px;padding-top:54px}.scene-card.is-selected{border-color:var(--yellow);box-shadow:inset 0 0 0 2px var(--yellow),0 0 24px rgba(255,212,42,.18)}.scene-number{position:absolute;right:10px;top:2px;color:#540000;font:900 52px Impact,sans-serif;text-shadow:1px 1px #c10000}.scene-location{margin:0;color:var(--green);font-size:11px;text-transform:uppercase}.scene-card>p:not(.scene-location){font-family:"Times New Roman",serif;font-size:17px}.scene-card details{margin-top:auto;border-top:1px dashed #777;padding-top:8px}.scene-card details summary{color:var(--yellow);cursor:pointer;font-weight:800}.scene-card details p{font-size:14px}.scene-vote-form{margin-top:12px}.scene-vote-form button{width:100%;font-size:12px}.scene-card.is-selected .scene-vote-form button{background:var(--yellow)}.scene-result{margin-top:10px}.scene-result>span{display:block;height:15px;border:2px inset #777;background:#111}.scene-result i{display:block;height:100%;background:repeating-linear-gradient(90deg,#8d0000 0 10px,var(--red) 10px 20px);transition:width .3s}.scene-result b{display:block;margin-top:4px;color:#fff;font-size:11px;text-align:right}.scene-total{text-align:center;color:#fff}.scene-total strong{color:var(--green)}

.scanner{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);gap:18px;margin:14px 0;border-color:#90a3a8;background:linear-gradient(145deg,#14191a,#020404)}
.scanner-copy p{font-family:"Times New Roman",serif;font-size:18px}.scanner-copy li{margin:5px 0}.scanner-copy button{margin-top:8px;background:var(--yellow)}
.scanner-terminal{min-height:390px;padding:12px;border:4px inset #7f898b;background:repeating-linear-gradient(0deg,#001510 0 3px,#000b08 3px 6px)}
.scanner-readout{display:flex;justify-content:space-between;gap:9px;border-bottom:1px solid #315d4b;padding-bottom:9px;color:#7f9c8e;font-size:11px}.scanner-readout b{color:var(--green);font-size:15px}.scanner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;min-height:260px;padding:16px 0}.signature{position:relative;min-height:105px;border:2px solid #27543f;background:#021c12;color:var(--green);cursor:pointer;overflow:hidden}.signature span{position:absolute;left:10%;right:10%;height:6px;background:#3eff78;box-shadow:0 0 7px #0f3}.signature span:nth-child(1){top:24%;width:48%}.signature span:nth-child(2){top:47%;width:67%}.signature span:nth-child(3){top:70%;width:36%}.signature small{position:absolute;right:5px;bottom:4px;color:#73a488;font-size:9px}.signature.is-infiltrator span:nth-child(1){width:78%;transform:translateX(9px)}.signature.is-infiltrator span:nth-child(2){width:29%;transform:translateX(31px)}.signature.is-infiltrator{animation:signalFault .75s steps(2,end) infinite}.signature.is-revealed{border-color:var(--red);background:#340000}.signature:disabled{opacity:1;cursor:default}@keyframes signalFault{50%{filter:hue-rotate(120deg);transform:translateX(2px)}}
#scanner-message{margin:0;border-top:1px solid #315d4b;padding-top:8px;color:var(--green);text-align:center;font-weight:800}

.quiz-section{margin:14px 0}.quiz-progress{position:sticky;top:46px;z-index:4;height:13px;margin:10px 0 16px;border:2px inset #888;background:#111}.quiz-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#750000,var(--red),var(--yellow));transition:width .25s}
.quiz-question{margin:0 0 12px;padding:14px;border:2px solid #596064;background:#080a0b}.quiz-question legend{padding:0 8px;color:#fff;font-weight:800}.quiz-question legend span{display:inline-block;margin-right:9px;color:var(--red)}.quiz-question>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.quiz-question label{display:flex;align-items:center;gap:9px;min-height:50px;padding:8px;border:2px outset #5d6366;background:#171a1b;cursor:pointer}.quiz-question label:has(input:checked){border-color:var(--yellow);background:#3b3100;color:#fff}.quiz-question input{width:18px;height:18px;accent-color:#d00}.quiz-question.is-correct{border-color:var(--green)}.quiz-question.is-wrong{border-color:var(--red)}.quiz-question label.is-answer{background:#073c19;border-color:var(--green)}.quiz-explanation{margin:10px 0 0;padding:8px;border-left:4px solid var(--green);background:#00180c;color:#b7eac4;font-size:13px}.quiz-submit{display:block;margin:18px auto;background:var(--yellow);font-size:16px}.quiz-result{margin-top:16px;padding:18px;border:3px double var(--green);background:#00170c;text-align:center}.quiz-result strong{display:block;color:var(--green);font:60px Impact,sans-serif;line-height:1}.quiz-result p{margin-bottom:0;color:#fff}

.poll-box{text-align:center;margin:14px 0}.poll-box form{display:flex;justify-content:center;align-items:stretch;gap:10px;flex-wrap:wrap}.poll-box label{display:flex;align-items:center;gap:8px;border:2px inset #777;padding:10px;background:#111;text-align:left}.poll-box input{width:18px;height:18px;accent-color:#d00}.poll-results{width:min(720px,100%);margin:18px auto 0;padding:12px;border:3px inset #999;background:#050505;text-align:left}.poll-results>p{text-align:center;color:#fff;margin-top:0}.poll-row{display:grid;grid-template-columns:38px minmax(100px,1fr) 120px;align-items:center;gap:9px;margin:9px 0}.poll-row>span{color:var(--red);font-weight:800}.poll-row>div{height:22px;border:2px inset #aaa;background:#171717}.poll-row i{display:block;height:100%;background:repeating-linear-gradient(90deg,#950000 0 12px,#f22 12px 24px);transition:width .35s}.poll-row b{text-align:right;color:#fff}

.guest-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:14px;margin:14px 0}.guestbook-form label{display:grid;gap:4px;margin:10px 0;color:#fff}.guestbook-form input,.guestbook-form textarea{width:100%;background:#050505;color:var(--green);border:3px inset #aaa;padding:9px}.guestbook-form textarea{min-height:145px;resize:vertical}.guestbook-form>form>div{display:flex;gap:9px}.website-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.guestbook-entries{max-height:560px;overflow:auto}.guestbook-entries blockquote{margin:0 0 12px;padding:10px;border-left:5px solid var(--red);background:#111;box-shadow:2px 2px #330000}.guestbook-entries small{color:#888}.guestbook-entries p{overflow-wrap:anywhere}.empty-guestbook{color:#aaa;font-style:italic}

.web-ring{text-align:center;margin:14px 0;background:#111135;border-color:#7676dd}.web-ring div{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}
.end-zone{text-align:center;border:5px double var(--red);padding:24px 20px;background:#080808}.counter-label{font-weight:800;color:#ff0}.counter{display:inline-block;margin:8px;padding:5px 10px;background:#020202;color:var(--green);border:4px ridge #aaa;font:700 30px "Courier New",monospace;letter-spacing:7px;text-shadow:0 0 8px #0f0}.badges{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:12px}.badges span{display:inline-block;min-width:120px;padding:5px 11px;border:3px outset #ddd;background:#17175a;color:#fff;font:11px Arial,sans-serif}.badges b{color:#ff0}

.entry-screen{position:fixed;inset:0;z-index:999;display:grid;place-items:center;padding:18px;overflow:auto;background:rgba(0,0,0,.975)}
.entry-box{width:min(650px,100%);padding:26px;text-align:center;border:6px ridge #aaa;background:#030505;box-shadow:0 0 35px #a40000}.entry-box h1{font-size:clamp(38px,8vw,68px)}.entry-box button{display:block;margin:18px auto;padding:13px 18px;border:4px outset #eee;background:var(--yellow);color:#000;font-weight:900;cursor:pointer}.entry-box button:active{border-style:inset}.system-line{color:var(--green);font-size:12px}.entry-code{color:#88ad91;font-size:12px}.entry-scan{position:relative;width:min(430px,100%);height:72px;margin:14px auto;border:2px solid #2e4a42;background:repeating-linear-gradient(0deg,#00140d 0 3px,#000805 3px 6px);overflow:hidden}.entry-scan i{position:absolute;left:-20%;top:0;width:30%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,0,0,.95),transparent);filter:blur(5px);animation:entryScan 2s ease-in-out infinite}@keyframes entryScan{to{left:90%}}

@media(max-width:900px){
  .scene-grid{grid-template-columns:1fr 1fr}.reason-grid{grid-template-columns:1fr}.reason-grid article{min-height:0}.dossier-grid{grid-template-columns:1fr}.scanner-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  .top-strip{justify-content:center;flex-wrap:wrap;font-size:11px;gap:7px}.top-strip>span{display:none}
  .construction-banner{display:block;padding:7px 5px}.construction-banner strong,.construction-banner span{display:block;width:max-content;max-width:100%;margin:auto}.construction-banner strong{white-space:normal}.construction-banner span{margin-top:5px;font-size:10px}
  .page-shell{width:calc(100% - 10px);margin-top:6px}.fan-nav{display:grid;grid-template-columns:1fr 1fr}.fan-nav a{min-width:0;border-right:2px solid #b07a7a;border-bottom:2px solid #b07a7a}.fan-nav a:nth-child(even){border-right:0}.fan-nav a:last-child:nth-child(odd){grid-column:1/-1;border-right:0}
  .hero-archive{min-height:590px}.hero-archive>img{object-position:66% center}.hero-shade{background:linear-gradient(0deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.65) 52%,rgba(0,0,0,.15) 100%)}.hero-copy{left:16px;right:16px;top:auto;bottom:105px;width:auto;transform:none}.hero-copy h1{font-size:clamp(38px,12vw,58px)}.hero-status{left:16px;right:16px;bottom:14px;width:auto;max-width:none}.marquee span{animation-duration:12s}
  .archive-intro,.two-col,.scanner,.guest-grid{grid-template-columns:1fr}.film-data{grid-template-columns:1fr 1fr}.section-head{display:block}.section-head>p{text-align:left}
  .timeline-layout{grid-template-columns:1fr}.timeline-tabs{display:flex;overflow-x:auto;padding-bottom:5px}.timeline-tabs button{flex:0 0 245px;grid-template-columns:72px 1fr}.timeline-panels{min-height:330px}
  .scene-grid{grid-template-columns:1fr}.scene-card{min-height:0}.scanner-terminal{min-height:350px}.scanner-grid{grid-template-columns:repeat(2,1fr)}
  .metal-table{padding:13px}.quiz-progress{top:45px}.quiz-question>div{grid-template-columns:1fr}.quiz-question label{min-height:54px}.poll-box form{flex-direction:column}.guestbook-entries{max-height:390px}
}
@media(max-width:480px){
  h1{font-size:38px}.film-data{grid-template-columns:1fr}.player-buttons{grid-template-columns:1fr 1fr}.player-buttons button:last-child{grid-column:1/-1}.poll-row{grid-template-columns:30px minmax(70px,1fr) 92px;font-size:12px}.guestbook-form>form>div{flex-direction:column}.counter{max-width:100%;font-size:21px;letter-spacing:3px}.dossier-card summary{grid-template-columns:70px 1fr}.dossier-card summary i{grid-column:2}.scanner-grid{gap:6px}.signature{min-height:92px}.entry-box{padding:18px 12px}.hero-archive{min-height:620px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.blink,.hero-shade:after,.marquee span,.entry-scan i,.signature.is-infiltrator{animation:none}}
