
:root{
  --bg:#120817;
  --panel:#22102c;
  --panel2:#321346;
  --ink:#fff7d7;
  --muted:#d8bdf0;
  --hot:#ff3df2;
  --acid:#a8ff00;
  --gold:#ffd34d;
  --blue:#47e7ff;
  --line:rgba(255,255,255,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Verdana, Geneva, Tahoma, sans-serif;
  background:
    radial-gradient(circle at 20% 10%, rgba(255,61,242,.28), transparent 30%),
    radial-gradient(circle at 80% 0%, rgba(71,231,255,.20), transparent 35%),
    repeating-linear-gradient(45deg, rgba(255,255,255,.025) 0 6px, transparent 6px 12px),
    var(--bg);
  color:var(--ink);
  line-height:1.55;
}
a{color:var(--acid);text-decoration-thickness:2px}
a:hover{color:var(--gold)}
.skip-link{position:absolute;left:-999px;top:auto}
.skip-link:focus{left:1rem;top:1rem;background:#000;color:#fff;padding:.6rem;z-index:50}
.sale-bar{
  position:sticky;top:0;z-index:20;
  background:linear-gradient(90deg,var(--hot),var(--gold),var(--acid),var(--blue));
  color:#160018;
  text-align:center;
  font-weight:900;
  padding:.55rem;
  border-bottom:4px double #000;
  text-transform:uppercase;
}
.sale-bar a{color:#160018}
.site-header{
  max-width:1180px;
  margin:0 auto;
  padding:1rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  flex-wrap:wrap;
}
.logo{
  font-size:clamp(1.25rem,3vw,2rem);
  font-weight:900;
  color:#fff;
  text-decoration:none;
  text-shadow:3px 3px #000, 0 0 12px var(--hot);
}
.logo span{color:var(--acid)}
.dice{display:inline-block;animation:spin 5s linear infinite;color:var(--gold)!important}
@keyframes spin{to{transform:rotate(360deg)}}
.main-nav{display:flex;gap:.4rem;flex-wrap:wrap}
.main-nav a{
  background:#000;
  border:2px outset var(--gold);
  color:var(--ink);
  padding:.5rem .7rem;
  text-decoration:none;
  font-size:.9rem;
}
.main-nav a:hover{background:var(--hot);color:#000}
.hero{
  max-width:1180px;
  margin:0 auto;
  padding:3rem 1rem 2rem;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:2rem;
  align-items:center;
}
h1{font-size:clamp(2.2rem,7vw,5.7rem);line-height:.9;margin:.2rem 0 1rem;text-shadow:4px 4px #000}
h2{color:var(--gold);margin-top:0}
.lead{font-size:clamp(1.05rem,2vw,1.35rem);color:var(--muted)}
.blink{color:var(--acid);font-weight:900;animation:blink 1s steps(2,end) infinite}
@keyframes blink{50%{opacity:0}}
.button,button{
  display:inline-block;
  border:3px outset var(--gold);
  background:#09000e;
  color:#fff;
  padding:.85rem 1rem;
  font-weight:900;
  text-decoration:none;
  cursor:pointer;
  box-shadow:5px 5px 0 #000;
}
.button.primary,button{background:linear-gradient(135deg,var(--hot),var(--panel2));}
.hero-actions,.share-links{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.2rem 0}
.tiny,.small-note{font-size:.85rem;color:var(--muted)}
.counter{font-family:"Courier New",monospace;background:#000;color:var(--acid);padding:.15rem .4rem;border:1px solid var(--acid)}
.artifact-card{
  border:8px ridge var(--gold);
  background:linear-gradient(180deg,#3c1851,#120817);
  padding:1rem;
  box-shadow:0 0 28px rgba(255,61,242,.4);
}
.crt{
  min-height:360px;
  border:6px inset #000;
  background:radial-gradient(circle,#17350a,#020702 70%);
  padding:1.25rem;
  color:var(--acid);
  font-family:"Courier New",monospace;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.crt:after{
  content:"";
  position:absolute;inset:0;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0 2px,transparent 2px 5px);
  pointer-events:none;
}
.screen-title{border:1px dashed var(--acid);padding:.5rem;margin-bottom:1rem}
.dice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1rem 0}
.dice-grid span{font-size:4rem;text-shadow:0 0 10px var(--acid)}
.loading{height:18px;border:1px solid var(--acid);padding:2px}
.loading span{display:block;height:100%;width:72%;background:var(--acid);animation:pulse 1.4s infinite}
@keyframes pulse{50%{width:33%}}
.marquee{overflow:hidden;background:#000;border-block:3px dashed var(--hot);color:var(--gold);font-weight:900;padding:.8rem;white-space:nowrap}
.marquee span{display:inline-block;animation:scroll 18s linear infinite}
@keyframes scroll{from{transform:translateX(100%)}to{transform:translateX(-100%)}}
.page,.grid,.split,.share-box,.posts,.timeline{
  max-width:1180px;
  margin:0 auto;
  padding:2rem 1rem;
}
.grid{display:grid;gap:1rem}
.grid.three{grid-template-columns:repeat(3,1fr)}
.grid.two{grid-template-columns:repeat(2,1fr)}
.card,.share-box,.contact-panel,.scroll-box,.post-card,.timeline article{
  background:rgba(34,16,44,.88);
  border:3px ridge var(--blue);
  padding:1.2rem;
  box-shadow:7px 7px 0 #000;
}
.split{display:grid;grid-template-columns:1fr 320px;gap:1rem;align-items:stretch}
blockquote{
  font-size:1.3rem;
  border-left:8px solid var(--hot);
  margin:0;
  padding:1rem;
  background:rgba(0,0,0,.35);
}
.price-box{text-align:center;background:#000;border:4px double var(--gold);padding:1rem}
.price-box strong{display:block;font-size:4rem;color:var(--acid);text-shadow:3px 3px var(--hot)}
.share-box{text-align:center}
.contact-panel{margin:2rem 0}
.offer-form{display:grid;gap:.7rem}
input,textarea{
  width:100%;
  border:3px inset var(--gold);
  padding:.8rem;
  font:inherit;
  background:#fffbe7;
  color:#18051f;
}
.form-status{display:none;padding:.8rem;background:#0b4017;margin:.5rem 0}
.form-status.error{background:#6b0015}
.posts{display:grid;gap:1rem}
.post-card h2 a{text-decoration:none}
.timeline{display:grid;gap:1rem;counter-reset:item}
.timeline article{display:grid;grid-template-columns:70px 1fr;gap:1rem}
.timeline article span{font-size:2rem;color:var(--acid);font-weight:900}
.link-card a{display:inline-block;margin-top:.8rem}
.guestbook{display:grid;gap:.75rem;padding-left:0;list-style:none}
.guestbook li{background:#fffbe7;color:#15001b;border:3px dotted var(--hot);padding:.8rem}
.guestbook strong{display:block;color:#6d0077}
.legal{max-width:850px}
.center{text-align:center}
.site-footer{
  max-width:1180px;
  margin:2rem auto 0;
  padding:2rem 1rem;
  border-top:5px double var(--gold);
  display:flex;
  justify-content:space-between;
  gap:1rem;
  flex-wrap:wrap;
  color:var(--muted);
}
@media (max-width:800px){
  .hero,.split,.grid.three,.grid.two{grid-template-columns:1fr}
  .main-nav a{font-size:.8rem}
  .crt{min-height:270px}
  .dice-grid span{font-size:3rem}
  .timeline article{grid-template-columns:1fr}
}
