/* ==========================================================================
   Living Dead Archive — styled like the web of ~2001 (think movie promo sites:
   black cinematic backdrops, glowing titles, beveled buttons). Palette built
   around the classic graveyard green #50b369.
   ========================================================================== */
:root{
  --green:#50b369;
  --green-br:#76e692;
  --green-dim:#2f7d45;
  --ink:#cfe9d6;
  --muted:#86a791;
  --bg:#000;
  --panel:#08110b;
  --panel2:#0c1a11;
  --border:#23502f;
  --blood:#9a1f15;
  --gold:#caa64a;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:#000 radial-gradient(120% 80% at 50% 0%, #07150c 0%, #020503 55%, #000 100%) no-repeat fixed;
  color:var(--ink);
  font-family:Arial, Helvetica, "Helvetica Neue", sans-serif;
  font-size:15px; line-height:1.6;
}
a{color:var(--green-br);text-decoration:none;}
a:hover{color:#fff;text-decoration:underline;}
.wrap{max-width:840px;margin:0 auto;padding:0 16px;}
.skip-link{position:absolute;left:-9999px;}
.skip-link:focus{left:8px;top:8px;background:#000;color:var(--green-br);padding:6px;z-index:99;}
.glow{color:var(--green-br);text-shadow:0 0 6px rgba(80,179,105,.85);}

/* --- Top "best viewed in" bar --- */
.topbar{
  background:linear-gradient(#0c1a11,#060d08);
  border-bottom:1px solid var(--border);
  color:var(--muted);
  text-align:center;font-size:11px;letter-spacing:.5px;padding:5px 10px;
}
.topbar strong{color:var(--green);}

/* --- Header / brand --- */
.site-header{padding:22px 0 14px;text-align:center;border-bottom:1px solid #11250f;}
.brand{display:inline-block;}
.brand-main{
  display:block;
  font-family:"Arial Black","Arial Narrow",Impact,sans-serif;
  font-weight:900;letter-spacing:3px;font-size:42px;line-height:1;
  color:var(--green);
  text-shadow:0 0 10px rgba(80,179,105,.7), 0 0 28px rgba(80,179,105,.35), 0 2px 0 #000;
}
.brand-sub{display:block;color:var(--muted);font-size:12px;margin-top:8px;letter-spacing:1px;}
.brand-sub em{color:var(--ink);}

/* --- Nav --- */
.site-nav{background:linear-gradient(#0e1f13,#05100a);border-top:1px solid #2a5e38;border-bottom:1px solid #040a06;}
.site-nav .wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:0;padding:0;}
.site-nav a{
  color:var(--ink);font-size:12.5px;font-weight:bold;letter-spacing:.5px;
  padding:9px 14px;border-right:1px solid #04150a;
  text-transform:uppercase;
}
.site-nav a:first-child{border-left:1px solid #04150a;}
.site-nav a:hover{background:#15301d;color:var(--green-br);text-decoration:none;text-shadow:0 0 6px rgba(80,179,105,.8);}
.site-nav a.on{background:#1a3a23;color:var(--green-br);}

/* --- Layout / panels --- */
.layout{padding:22px 16px 10px;}
.panel{
  background:linear-gradient(#0b170f,#070f0a);
  border:1px solid var(--border);
  box-shadow:inset 0 0 0 1px #02060300, 0 0 0 1px #000, 0 6px 18px rgba(0,0,0,.6);
  margin:0 0 20px;
}
.panel-h{
  background:linear-gradient(#1c3f27,#0e2014);
  border-bottom:1px solid #02060300;border-bottom:1px solid #1c3f27;
  color:var(--green-br);font-weight:bold;letter-spacing:1px;text-transform:uppercase;
  font-size:13px;padding:8px 12px;text-shadow:0 0 6px rgba(80,179,105,.6);
}
.panel-b{padding:14px 16px;}
.cols{display:grid;grid-template-columns:1fr 280px;gap:20px;align-items:start;}
@media (max-width:760px){.cols{grid-template-columns:1fr;}}

h1.page-title{
  font-family:"Arial Black",Impact,sans-serif;font-size:30px;letter-spacing:1px;margin:0 0 4px;
  color:var(--green);text-shadow:0 0 10px rgba(80,179,105,.55);
}
h2{color:var(--green-br);font-size:20px;margin:22px 0 8px;}
h3{color:var(--green);font-size:16px;margin:18px 0 6px;letter-spacing:.5px;}
p{margin:0 0 12px;}
.lead{font-size:16px;color:#e2f3e7;}
.muted{color:var(--muted);}
hr{border:0;border-top:1px dashed #1f4b2c;margin:18px 0;}
ul.tidy{margin:0 0 14px;padding-left:20px;}
ul.tidy li{margin:4px 0;}
blockquote{margin:14px 0;padding:10px 16px;border-left:3px solid var(--green-dim);background:#08130c;color:#dcefe1;font-style:italic;}

/* --- Buttons / promo boxes --- */
.btn{
  display:inline-block;cursor:pointer;font-family:Arial,sans-serif;font-weight:bold;
  color:#04130a;background:linear-gradient(#7fe39a,#46a85f);
  border:1px solid #1f5e34;border-radius:3px;padding:9px 18px;letter-spacing:.5px;
  box-shadow:0 1px 0 #bdf6cd inset, 0 2px 4px rgba(0,0,0,.6);
  text-shadow:0 1px 0 rgba(255,255,255,.3);
}
.btn:hover{background:linear-gradient(#9bf3b2,#54bd6f);color:#000;text-decoration:none;}
.btn.big{font-size:18px;padding:13px 26px;}
.btn.ghost{background:#0c1a11;color:var(--green-br);border:1px solid var(--green-dim);box-shadow:none;text-shadow:none;}
.btn.ghost:hover{background:#13261a;}

.promo{display:block;background:linear-gradient(#0d1d12,#070f0a);border:1px solid var(--border);padding:12px;margin:0 0 14px;}
.promo:hover{border-color:var(--green-dim);text-decoration:none;}
.promo .k{display:block;color:var(--green-br);font-weight:bold;font-size:13px;letter-spacing:.5px;text-transform:uppercase;}
.promo .d{display:block;color:var(--muted);font-size:12px;margin-top:3px;}
.promo .go{display:block;color:#fff;font-size:11px;margin-top:6px;letter-spacing:1px;}

/* --- Splash / enter screen --- */
.splash{min-height:100vh;background:#000 radial-gradient(120% 90% at 50% 18%, #0a1d11 0%, #020604 60%, #000 100%) no-repeat;color:var(--ink);}
.splash-wrap{max-width:980px;margin:0 auto;padding:26px 16px 40px;text-align:center;}
.splash-side{position:relative;}
.splash-hero{position:relative;margin:8px auto 0;max-width:520px;}
.splash-hero img{width:100%;display:block;border:1px solid #16331e;box-shadow:0 0 40px rgba(80,179,105,.18);filter:grayscale(.1) contrast(1.05);}
.splash-title{
  font-family:"Arial Black",Impact,sans-serif;font-weight:900;letter-spacing:3px;
  font-size:54px;line-height:.95;color:var(--green);margin:18px 0 2px;
  text-shadow:0 0 14px rgba(80,179,105,.75),0 0 40px rgba(80,179,105,.4),0 3px 0 #000;
}
.splash-title small{display:block;font-size:18px;letter-spacing:8px;color:var(--green-br);margin-top:8px;}
.splash-tag{color:var(--muted);font-style:italic;margin:6px 0 18px;}
.enter{
  display:inline-block;font-family:"Arial Black",Impact,sans-serif;letter-spacing:4px;font-size:24px;
  color:var(--green-br);padding:10px 30px;border:1px solid var(--green-dim);background:#08130c;
  text-shadow:0 0 10px rgba(80,179,105,.8);
}
.enter:hover{background:#13261a;color:#fff;text-decoration:none;box-shadow:0 0 22px rgba(80,179,105,.5);}
.flank{color:var(--green-dim);}
.splash-cols{display:grid;grid-template-columns:1fr 1.7fr 1fr;gap:18px;align-items:start;margin-top:10px;}
@media (max-width:780px){.splash-cols{grid-template-columns:1fr;}.splash-title{font-size:40px;}}
.bestview{color:var(--muted);font-size:12px;margin-top:24px;}
.rating-box{display:inline-block;border:1px solid var(--gold);color:var(--gold);font-size:11px;padding:4px 10px;margin-top:12px;letter-spacing:.5px;}
.lang{margin-top:14px;color:var(--muted);font-size:12px;}
.lang select{background:#0c1a11;color:var(--ink);border:1px solid var(--green-dim);padding:3px;}

/* --- CRT television --- */
.crt-stage{max-width:760px;margin:6px auto 0;}
.crt{
  background:linear-gradient(#20231f,#0c0d0b);
  border:2px solid #000;border-radius:22px;
  padding:26px 26px 16px;
  box-shadow:0 0 0 2px #2c2f29 inset, 0 14px 40px rgba(0,0,0,.7), 0 0 60px rgba(80,179,105,.08);
}
.crt-bezel{
  background:#050605;border-radius:14px;padding:14px;
  box-shadow:0 0 0 2px #000 inset, 0 0 0 6px #1a1c19;
}
.crt-screen{
  position:relative;overflow:hidden;background:#000;border-radius:10px/16px;
  box-shadow:0 0 60px rgba(0,0,0,.9) inset, 0 0 12px rgba(80,179,105,.12);
  aspect-ratio:4/3;
}
.crt-screen video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;display:block;}
/* overlays */
.crt-screen .ovl{position:absolute;inset:0;pointer-events:none;}
.crt-scanlines{background:repeating-linear-gradient(to bottom, rgba(0,0,0,0) 0 2px, rgba(0,0,0,.28) 2px 3px);mix-blend-mode:multiply;opacity:.7;}
.crt-vignette{box-shadow:0 0 120px rgba(0,0,0,.9) inset;border-radius:10px/16px;background:radial-gradient(120% 120% at 50% 50%, rgba(0,0,0,0) 60%, rgba(0,0,0,.55) 100%);}
.crt-glass{background:linear-gradient(125deg, rgba(255,255,255,.07) 0%, rgba(255,255,255,0) 32%);border-radius:10px/16px;}
#crt-static{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .25s;mix-blend-mode:screen;}
.crt-screen.static-on #crt-static{opacity:.16;}
.crt-screen.crt-off video{filter:brightness(0);}
.crt-screen.crt-off .crt-static-msg{display:flex;}
.crt-flicker{animation:flick 6s infinite steps(60);}
@keyframes flick{0%,98%{opacity:1;}99%{opacity:.92;}100%{opacity:1;}}

/* control panel under the screen */
.crt-panel{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:14px;flex-wrap:wrap;}
.crt-brand{font-family:"Arial Black",Impact,sans-serif;letter-spacing:2px;color:#6b6f66;font-size:13px;}
.crt-brand b{color:var(--green);text-shadow:0 0 8px rgba(80,179,105,.6);}
.crt-knobs{display:flex;align-items:center;gap:12px;}
.knob{width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#3a3d36,#101109);box-shadow:0 1px 2px #000,0 0 0 2px #000;position:relative;}
.knob::after{content:"";position:absolute;top:3px;left:50%;width:2px;height:9px;background:#7a7e72;transform:translateX(-50%);}
.led{width:9px;height:9px;border-radius:50%;background:var(--green-br);box-shadow:0 0 8px var(--green-br);}
.crt-controls{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:14px;}
.crt-btn{
  cursor:pointer;font-family:Arial,sans-serif;font-weight:bold;font-size:13px;letter-spacing:1px;
  color:var(--ink);background:linear-gradient(#1b3a24,#0c1c12);border:1px solid var(--green-dim);
  border-radius:4px;padding:8px 16px;box-shadow:0 1px 0 #2c5e3a inset, 0 2px 4px rgba(0,0,0,.5);
}
.crt-btn:hover{background:linear-gradient(#24512f,#102a1a);color:#fff;}
.crt-btn[aria-pressed="true"]{color:#04130a;background:linear-gradient(#7fe39a,#46a85f);border-color:#1f5e34;text-shadow:0 1px 0 rgba(255,255,255,.3);}
.crt-static-msg{display:none;position:absolute;inset:0;align-items:center;justify-content:center;color:var(--green-br);font-family:"Arial Black",Impact;letter-spacing:4px;}

/* --- Hit counter (odometer) --- */
.counter{display:inline-flex;gap:2px;background:#000;border:1px solid var(--green-dim);padding:3px;border-radius:2px;}
.counter b{font-family:"Courier New",monospace;font-weight:bold;background:#04140a;color:var(--green-br);
  padding:2px 5px;font-size:16px;text-shadow:0 0 6px rgba(80,179,105,.8);}
.counter-line{color:var(--muted);font-size:12px;margin-top:6px;}

/* --- Guestbook --- */
.gb-entry{border:1px solid var(--border);background:#08130c;padding:10px 12px;margin:0 0 10px;}
.gb-entry .who{color:var(--green-br);font-weight:bold;}
.gb-entry .meta{color:var(--muted);font-size:12px;}
.gb-entry .msg{margin:6px 0 0;color:#dcefe1;white-space:pre-wrap;}
.field{display:block;margin:0 0 10px;}
.field label{display:block;font-size:12px;color:var(--green);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px;}
.field input,.field textarea{width:100%;background:#04100a;color:var(--ink);border:1px solid var(--green-dim);padding:8px;font-family:Arial,sans-serif;font-size:14px;}
.field input:focus,.field textarea:focus{outline:1px solid var(--green);border-color:var(--green);}
.hp{position:absolute;left:-9999px;}
.ok{background:#0e2a17;border:1px solid var(--green-dim);color:var(--green-br);padding:10px;margin:0 0 14px;}
.err{background:#2a0e0c;border:1px solid var(--blood);color:#ffb3ab;padding:10px;margin:0 0 14px;}

/* --- Webring + plugins (footer) --- */
.site-footer{margin-top:24px;border-top:1px solid #11250f;background:linear-gradient(#040a06,#000);padding:18px 0 30px;}
.webring{border:1px solid var(--border);background:#08130c;padding:12px;text-align:center;margin:0 0 16px;}
.webring-badge{vertical-align:middle;margin-right:8px;image-rendering:auto;}
.webring-head{display:block;color:var(--green-br);font-weight:bold;letter-spacing:1px;margin:6px 0;}
.webring-nav a{margin:0 6px;font-size:13px;font-weight:bold;}
.webring-tag{display:block;color:var(--muted);font-size:12px;margin-top:6px;font-style:italic;}
.plugins{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 14px;}
.plug{font-size:10px;color:var(--muted);background:linear-gradient(#13140f,#070803);border:1px solid #2a2c24;border-radius:3px;padding:4px 8px;letter-spacing:.5px;}
.plug b{color:#9fb6a6;}
.foot-links{text-align:center;font-size:13px;}
.attribution,.disclaimer{text-align:center;color:var(--muted);font-size:11.5px;margin:6px 0 0;}

/* --- Store / "Own It" cards --- */
.store-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin:0 0 16px;}
.store-card{margin:0;display:flex;flex-direction:column;}
.store-card .panel-b{display:flex;flex-direction:column;flex:1;}
.store-card .panel-b p:first-child{flex:1;}
.store-labels{display:flex;flex-wrap:wrap;gap:10px;}
.label-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;}
.label-card{border:1px solid var(--border);background:#08130c;padding:10px 12px;display:flex;flex-direction:column;gap:8px;}
.label-name{color:var(--green-br);font-weight:bold;letter-spacing:.5px;}
.label-links{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:13px;}
.label-direct{font-weight:bold;}

/* --- Tables --- */
table.data{width:100%;border-collapse:collapse;margin:6px 0 14px;}
table.data th,table.data td{border:1px solid var(--border);padding:7px 10px;text-align:left;vertical-align:top;font-size:14px;}
table.data th{background:#11271a;color:var(--green-br);}
table.data tr:nth-child(even) td{background:#070f0a;}

/* --- Stills / gallery --- */
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;}
.gallery img{width:100%;border:1px solid var(--border);filter:grayscale(.1) contrast(1.05);display:block;}
.still{border:1px solid var(--border);max-width:100%;filter:contrast(1.05);}
figure{margin:0 0 14px;}
figcaption{color:var(--muted);font-size:11px;margin-top:4px;}
.gthumb{display:block;cursor:pointer;line-height:0;}
.gthumb img{transition:box-shadow .15s, filter .15s;}
.gthumb:hover img{box-shadow:0 0 14px rgba(80,179,105,.55);filter:contrast(1.1) brightness(1.08);}

/* Lightbox (click-to-enlarge viewer) */
.lightbox{display:none;position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.9);}
.lightbox.open{display:flex;align-items:center;justify-content:center;}
.lb-frame{position:relative;max-width:92vw;max-height:90vh;background:#08110b;border:2px solid var(--green-dim);padding:14px;box-shadow:0 0 50px rgba(80,179,105,.25);}
#lb-img{display:block;max-width:88vw;max-height:74vh;border:1px solid var(--border);filter:contrast(1.05);}
.lb-cap{color:var(--ink);text-align:center;font-size:13px;margin:8px 0 0;}
.lb-close{position:absolute;top:-14px;right:-14px;width:34px;height:34px;border-radius:50%;cursor:pointer;
  background:linear-gradient(#1b3a24,#0c1c12);color:var(--green-br);border:1px solid var(--green-dim);font-size:20px;line-height:1;}
.lb-close:hover{background:#24512f;color:#fff;}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);cursor:pointer;background:rgba(8,17,11,.8);
  color:var(--green-br);border:1px solid var(--green-dim);font-size:20px;padding:10px 12px;}
.lb-nav:hover{background:#24512f;color:#fff;}
.lb-prev{left:-6px;}.lb-next{right:-6px;}

/* --- Mobile --- */
@media (max-width:640px){
  body{font-size:15px;}
  .brand-main{font-size:30px;letter-spacing:2px;}
  .site-nav .wrap{flex-direction:column;}
  .site-nav a{border:0;border-bottom:1px solid #04150a;}
  h1.page-title{font-size:24px;}
  .crt{padding:14px 12px 10px;border-radius:14px;}
}
