/* —— The Glitchsmith: vault aesthetics, zero fluff —— */

/* Base */
:root{
  --bg:#0b0b0b;
  --fg:#e6e6e6;
  --muted:#9aa3a8;
  --link:#a7f3ff;
  --link-visited:#72cbd6;
  --accent:#1f2937;     /* subtle lines */
  --edge:#111315;       /* card edges */
  --warn:#ffd166;       /* highlight */
}

@media (prefers-color-scheme: light){
  :root{
    --bg:#f7f7f5;
    --fg:#161616;
    --muted:#4b5563;
    --link:#005b6b;
    --link-visited:#00424d;
    --accent:#dcdcdc;
    --edge:#e8e8e6;
    --warn:#a15d00;
  }
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background:var(--bg);
  color:var(--fg);
  font:15px/1.55 ui-monospace, SFMono-Regular, Menlo, Monaco, "Liberation Mono", "Courier New", monospace;
  text-rendering:optimizeLegibility;
}

/* Subtle “photocopy” vibe */
body::before{
  content:"";
  position:fixed; inset:0;
  pointer-events:none;
  opacity:.07;
  background:
    repeating-linear-gradient(180deg, transparent 0 2px, rgba(255,255,255,.03) 2px 3px),
    linear-gradient(0deg, rgba(255,255,255,.02), transparent 60%);
  mix-blend-mode:overlay;
}

/* Layout */
main, header, footer{max-width:740px; margin:0 auto; padding:16px}
header{padding-top:36px; padding-bottom:8px; border-bottom:1px solid var(--accent)}
footer{padding-top:12px; margin-top:24px; border-top:1px solid var(--accent); color:var(--muted); font-size:.9rem}

/* Title */
h1{
  margin:0 0 6px 0;
  font-size:32px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.tagline{
  margin:0 0 10px 2px;
  color:var(--muted);
  font-size:.95rem;
  letter-spacing:.08em;
}

/* Section headings */
h2{
  margin:22px 0 10px 0;
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:var(--muted);
}

/* Links */
a{color:var(--link); text-decoration:none; border-bottom:1px dotted var(--link); padding-bottom:1px}
a:hover{border-bottom:1px solid var(--link)}
a:visited{color:var(--link-visited); border-bottom-color:var(--link-visited)}

/* Artifact list = directory index */
#artifacts ul{
  list-style:none;
  margin:6px 0 0 0;
  padding:0;
}
#artifacts li{
  margin:0; padding:10px 12px;
  background:linear-gradient(0deg, var(--edge), transparent 60%);
  border:1px solid var(--accent);
  border-radius:6px;
  display:flex; gap:8px; align-items:baseline;
}
#artifacts li + li{margin-top:8px}
#artifacts li::before{
  content:"▞";
  color:var(--muted);
  font-size:12px;
  margin-right:2px;
}
#artifacts li .meta{
  margin-left:auto;
  color:var(--muted);
  font-size:.88rem;
}

/* Inline code feel (for filenames, snippets) */
code, .mono{
  background:rgba(255,255,255,.06);
  padding:.08em .35em;
  border-radius:4px;
}

/* Selection styling */
::selection{background:var(--warn); color:#000}

/* Print: make artifacts printable, no dark bg */
@media print{
  body{background:#fff; color:#000}
  a, a:visited{color:#000; border-bottom:1px solid #000}
  header, footer{border-color:#000}
  body::before{display:none}
}