
@import url('https://fonts.googleapis.com/css2?family=Share+Tech+Mono&display=swap');
:root{--acid:#b6ff00;--pink:#ff00a8;--cyan:#00e5ff;--bg:#070707;--panel:#101010;--line:#303030;--text:#eee}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text);font-family:'Share Tech Mono',monospace}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:50;background:repeating-linear-gradient(to bottom,transparent 0 3px,rgba(255,255,255,.025) 4px)}
a{color:var(--acid);text-decoration:none}
.wrap{width:min(1180px,94%);margin:auto}
header{padding:18px 0;border-bottom:1px solid var(--acid);display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{font-size:28px;color:var(--acid);text-shadow:3px 3px var(--pink)}
nav{display:flex;gap:8px;flex-wrap:wrap}nav a{border:1px solid #333;padding:8px 10px}
nav a:hover{border-color:var(--pink)}
.hero{padding:40px 0 25px}.kicker{color:var(--pink);letter-spacing:4px}
h1{font-size:clamp(44px,9vw,90px);line-height:.85;margin:10px 0;color:var(--acid)}
.muted{color:#777}
.toolbar{display:flex;gap:8px;overflow:auto;padding:8px 0 20px;scrollbar-width:none}
.filter{white-space:nowrap;background:#0c0c0c;border:1px solid #333;color:#aaa;padding:9px 13px;font:inherit;cursor:pointer}
.filter.active,.filter:hover{border-color:var(--acid);color:var(--acid)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:var(--panel);border:1px solid var(--line);overflow:hidden;cursor:pointer;transition:.16s}
.card:hover{transform:translate(-3px,-3px);border-color:var(--pink)}
.card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.meta{padding:13px}.tag{color:var(--pink);font-size:11px}.title{font-size:18px;margin:5px 0}.desc{color:#777;font-size:12px}
.empty{border:1px dashed #333;padding:30px;color:#666}
.viewer{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.96);display:none;overflow:auto}
.viewer.open{display:block}
.viewer-inner{min-height:100%;display:grid;grid-template-columns:minmax(0,1fr) 360px}
.visual{position:relative;display:flex;align-items:center;justify-content:center;padding:35px 55px;min-height:100vh}
.visual img{max-width:100%;max-height:88vh;object-fit:contain;user-select:none;touch-action:pan-y}
.close,.arrow{position:absolute;border:1px solid #444;background:#090909;color:var(--acid);font:inherit;cursor:pointer}
.close{top:15px;right:15px;padding:10px 14px}.arrow{top:50%;transform:translateY(-50%);padding:14px}
.prev{left:15px}.next{right:15px}
.side{border-left:1px solid #333;padding:28px 22px;overflow:auto}
.side h2{color:var(--acid);font-size:26px;margin:0 0 5px}
.counter{color:#666;font-size:12px}
.reactions{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.react{background:#0b0b0b;border:1px solid #333;color:#ddd;padding:10px 12px;font:inherit;cursor:pointer}
.react.active{border-color:var(--pink);color:var(--pink)}
.comment-form{border-top:1px dashed #333;padding-top:18px}
textarea{width:100%;min-height:100px;resize:vertical;background:#080808;color:#eee;border:1px solid #444;padding:12px;font:inherit}
button.primary{margin-top:8px;background:var(--acid);color:#000;border:0;padding:12px 15px;font:inherit;cursor:pointer}
.comments{margin-top:22px}.comment{border-left:2px solid var(--cyan);padding:9px 11px;margin:10px 0;background:#0b0b0b}
.comment .time{color:#555;font-size:10px}.cipher{color:#fff;word-break:break-word}
.note{color:#666;font-size:11px;line-height:1.5;margin-top:12px}
@media(max-width:800px){
 .gallery{grid-template-columns:repeat(2,1fr);gap:9px}
 .viewer-inner{display:block}
 .visual{min-height:56vh;height:56vh;padding:48px 35px 10px}
 .visual img{max-height:49vh}
 .side{border-left:0;border-top:1px solid #333;padding:20px 16px}
 .arrow{top:28vh}
 .prev{left:7px}.next{right:7px}
 header{align-items:flex-start;flex-direction:column}
}
@media(max-width:450px){
 .gallery{grid-template-columns:1fr}
 .logo{font-size:23px}
 .hero{padding-top:30px}
}

/* ===== TITLE PAGE VISUAL LANGUAGE ===== */
.site-head{
  position:relative;
  margin:24px 0 34px;
  border:1px solid #333;
  background:
    linear-gradient(135deg,rgba(182,255,0,.06),transparent 42%),
    linear-gradient(315deg,rgba(255,0,168,.06),transparent 42%),
    #0a0a0a;
  padding:18px;
  box-shadow:8px 8px 0 #111;
  overflow:hidden;
}
.site-head:after{
  content:"STUPID_GOD_ // PERSONAL DIGITAL ARCHIVE // NO SIGNAL / NO RULES";
  position:absolute;
  right:14px;
  bottom:7px;
  color:#333;
  font-size:9px;
  letter-spacing:2px;
}
.site-head-main{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:22px;
  align-items:center;
}
.avatar-frame{
  border:1px solid var(--acid);
  padding:5px;
  background:#000;
  transform:rotate(-2deg);
}
.avatar-frame img{
  display:block;
  width:100%;
  aspect-ratio:1;
  object-fit:cover;
  filter:contrast(1.15) saturate(.8);
}
.identity .micro{
  color:var(--pink);
  font-size:11px;
  letter-spacing:3px;
}
.identity h1{
  margin:5px 0 8px;
  font-size:clamp(40px,8vw,78px);
  text-shadow:4px 4px 0 var(--pink);
}
.identity .manifest{
  max-width:680px;
  color:#aaa;
  line-height:1.5;
}
.title-menu{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  margin-top:18px;
}
.title-menu a{
  border:1px solid #333;
  background:#0d0d0d;
  padding:11px 12px;
  color:var(--acid);
  text-align:center;
  font-size:12px;
  letter-spacing:1px;
}
.title-menu a:hover{
  border-color:var(--pink);
  color:#fff;
  background:#161016;
}
.latest-strip{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:8px;
  margin:0 0 35px;
}
.latest-strip a{
  position:relative;
  display:block;
  overflow:hidden;
  border:1px solid #292929;
}
.latest-strip img{
  width:100%;
  aspect-ratio:1/1;
  display:block;
  object-fit:cover;
  filter:contrast(1.05) saturate(.8);
  transition:.2s;
}
.latest-strip a:hover img{transform:scale(1.05);filter:contrast(1.2) saturate(1.1)}
.latest-strip span{
  position:absolute;
  left:5px;bottom:5px;
  background:#000;
  padding:3px 5px;
  color:var(--acid);
  font-size:9px;
}
.archive-label{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:13px;
  color:var(--pink);
  font-size:11px;
  letter-spacing:3px;
}
.archive-label:after{
  content:"";
  height:1px;
  background:#333;
  flex:1;
}
@media(max-width:800px){
  .site-head-main{grid-template-columns:90px 1fr;gap:15px}
  .title-menu{grid-template-columns:repeat(2,1fr)}
  .latest-strip{grid-template-columns:repeat(5,minmax(75px,1fr));overflow:auto}
  .latest-strip a{min-width:75px}
}
@media(max-width:450px){
  .site-head-main{grid-template-columns:1fr;text-align:left}
  .avatar-frame{width:115px}
  .identity h1{font-size:43px}
  .site-head:after{display:none}
}
