/* ===========================================================
   VYBINARCHIVE style.css
   old personal page styling. not much organization to this, sorry.

   EDITING NOTES:
   - main bg color:      body { background-color }
   - text color:         body { color }
   - box border color:   .sideBoxTitle / .contentBoxTitle background
   - font:               body font-family (near top)
   =========================================================== */

* {
  margin: 0;
  padding: 0;
}

body {
  background-color: #050202;
  background-image: url("images/bg-tile.gif");
  color: #ebe6d8;
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 11px;
  line-height: 1.4;
}

a {
  color: #f0c48a;
  text-decoration: underline;
}

a:visited {
  color: #e6ac6e;
}

a:hover {
  color: #f5dab3;
  background-color: #2b120c;
}

img {
  border: 0;
}

table {
  border-collapse: collapse;
}

/* ---------------------------------------------------------
   crt / scanline overlay - kept subtle on purpose
--------------------------------------------------------- */
#crtOverlay {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  pointer-events: none;
  z-index: 500;
  background-image: repeating-linear-gradient(
    to bottom,
    rgba(0,0,0,0.10) 0px,
    rgba(0,0,0,0.10) 1px,
    rgba(0,0,0,0) 2px,
    rgba(0,0,0,0) 3px
  );
  opacity: 0.35;
}

#noiseLayer {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  pointer-events: none;
  z-index: 499;
  opacity: 0.03;
  background-color: #ffffff;
  mix-blend-mode: overlay;
}

/* occasional flicker, applied via JS by toggling this class on body */
body.flickerFrame #crtOverlay {
  opacity: 0.55;
}

/* ---------------------------------------------------------
   outer wrapper
--------------------------------------------------------- */
#outerWrap {
  margin-top: 12px;
  margin-bottom: 24px;
}

#topTicker {
  background-color: #0a0403;
  color: #7a695c;
  font-family: "Courier New", Courier, monospace;
  font-size: 10px;
  padding: 3px 6px;
  white-space: nowrap;
  overflow: hidden;
  border-bottom: 1px solid #4c4640;
  text-align: left;
}

/* ---------------------------------------------------------
   header
--------------------------------------------------------- */
#headerCell {
  background-color: #120605;
  background-image: url("images/header-texture.gif");
  border: 1px solid #4c4640;
  border-top: none;
}

#siteLogo {
  font-family: "Times New Roman", Georgia, serif;
  font-size: 30px;
  font-weight: bold;
  color: #ffffff;
  letter-spacing: 1px;
  text-shadow: 1px 1px 0px #000000, 0 0 8px rgba(255, 230, 150, 0.25);
}

#logoSlash {
  color: #ffd670;
}

#siteTagline {
  font-family: "Courier New", Courier, monospace;
  font-size: 10px;
  color: #7a695c;
}

.webBadge {
  border: 1px solid #4c4640;
  background-color: #0a0403;
  color: #f0c48a;
  font-family: "Courier New", Courier, monospace;
  font-size: 9px;
  text-align: center;
  padding: 4px;
  width: 88px;
  line-height: 1.3;
}

.badgeSmall {
  font-size: 8px;
  color: #7a695c;
}

/* quick jump strip - small text nav so long page is easier to
   get around without scrolling blind */
#quickJumpStrip {
  background-color: #0b0a0c;
  border-left: 1px solid #4c4640;
  border-right: 1px solid #4c4640;
  border-bottom: 1px solid #4c4640;
  color: #7a695c;
  font-family: "Courier New", Courier, monospace;
  font-size: 10px;
  padding: 4px 7px;
  text-align: left;
}

#quickJumpStrip a {
  color: #f0c48a;
  text-decoration: none;
  margin-right: 4px;
}

#quickJumpStrip a:hover {
  color: #f5dab3;
  text-decoration: underline;
}

/* construction strip */
#constructionStrip {
  background-color: #230a06;
  border: 1px dashed #7a695c;
  color: #f0c48a;
  font-family: "Courier New", Courier, monospace;
  font-size: 10px;
  padding: 3px 6px;
  text-align: left;
}

.blinkText {
  font-weight: bold;
  color: #ffd670;
  animation: blinkAnim 1.1s steps(1) infinite;
}

@keyframes blinkAnim {
  50% { opacity: 0; }
}

/* ---------------------------------------------------------
   nav
--------------------------------------------------------- */
#navTable {
  background-color: #1a0806;
  border-left: 1px solid #4c4640;
  border-right: 1px solid #4c4640;
}

.navCell {
  padding: 4px 8px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
  text-align: center;
}

.navCell a {
  text-decoration: none;
  color: #ebe6d8;
}

.navCell a:hover {
  text-decoration: underline;
  color: #ffd670;
}

.navDivider {
  color: #4c4640;
  font-size: 11px;
}

/* ---------------------------------------------------------
   sidebars
--------------------------------------------------------- */
#leftSidebar, #rightSidebar {
  background-color: #0b0a0c;
  border-left: 1px solid #4c4640;
  border-right: 1px solid #4c4640;
  padding: 6px;
  font-size: 10px;
}

.sideBox {
  margin-bottom: 10px;
  border: 1px solid #4c4640;
  background-color: #120605;
}

.sideBoxTitle {
  background-color: #1f1915;
  color: #ffffff;
  font-family: "Courier New", Courier, monospace;
  font-size: 10px;
  font-weight: bold;
  text-transform: lowercase;
  padding: 2px 5px;
  border-bottom: 1px solid #4c4640;
}

.sideBoxBody {
  padding: 6px;
  color: #ebe6d8;
  font-size: 10px;
}

.sideBoxBody a {
  font-size: 10px;
}

.tinyDim {
  color: #7a695c;
  font-size: 9px;
}

/* fake 88x31 buttons */
.mini88 {
  width: 88px;
  height: 31px;
  border: 1px solid #4c4640;
  font-family: "Courier New", Courier, monospace;
  font-size: 8px;
  text-align: center;
  line-height: 1.2;
  padding-top: 3px;
  margin-bottom: 4px;
  color: #ebe6d8;
}

.mini88a { background-color: #2b120c; }
.mini88b { background-color: #120605; }
.mini88c { background-color: #1f1915; }
.mini88d { background-color: #0a0403; }

#visitorCounter {
  font-family: "Courier New", Courier, monospace;
  font-size: 16px;
  letter-spacing: 2px;
  background-color: #050202;
  color: #ffd670;
  border: 1px inset #4c4640;
  padding: 2px 6px;
}

.siteMapItem {
  cursor: pointer;
  color: #ebe6d8;
}

.siteMapItem:hover {
  color: #ffd670;
  text-decoration: underline;
}

.siteMapItemActive {
  color: #ffd670;
  font-weight: bold;
}

.siteMapItemActive:before {
  content: "> ";
  color: #f0c48a;
}

/* whisper text - tiny, easy to miss */
.whisperText {
  font-size: 7px;
  color: #1f1915;
  margin-top: 20px;
  text-align: center;
  cursor: default;
}

.whisperText:hover {
  color: #4c4640;
}

/* ---------------------------------------------------------
   main content
--------------------------------------------------------- */
#mainContent {
  background-color: #0b0a0c;
  border-left: 1px solid #4c4640;
  padding: 8px;
  vertical-align: top;
}

.contentBox {
  border: 1px solid #4c4640;
  margin-bottom: 12px;
  background-color: #120605;
}

.contentBoxTitle {
  background-color: #1f1915;
  color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 13px;
  font-weight: bold;
  padding: 3px 7px;
  border-bottom: 1px solid #4c4640;
}

.contentBoxBody {
  padding: 8px 10px;
  font-size: 11px;
  color: #ebe6d8;
}

.sectionNum {
  color: #f0c48a;
  font-family: "Courier New", Courier, monospace;
  font-size: 11px;
  margin-right: 4px;
}

.backToTop {
  margin-top: 8px;
  padding-top: 5px;
  border-top: 1px dotted #4c4640;
  text-align: right;
}

.backToTop a {
  font-family: "Courier New", Courier, monospace;
  font-size: 9px;
  color: #7a695c;
  text-decoration: none;
}

.backToTop a:hover {
  color: #f0c48a;
  background-color: transparent;
  text-decoration: underline;
}

.newsEntry {
  margin-bottom: 8px;
  padding-bottom: 6px;
  border-bottom: 1px dotted #4c4640;
  font-size: 11px;
}

.newsDate {
  font-family: "Courier New", Courier, monospace;
  color: #7a695c;
  font-size: 10px;
}

.newsEntryFaint {
  opacity: 0.55;
}

/* ---------------------------------------------------------
   album art
--------------------------------------------------------- */
.coverArt {
  width: 120px;
  height: 120px;
  border: 1px solid #4c4640;
  background-color: #0a0403;
}

.coverArtFallback {
  display: none;
  width: 118px;
  height: 118px;
  border: 1px dashed #4c4640;
  color: #7a695c;
  font-size: 9px;
  text-align: center;
  padding-top: 45px;
  font-family: "Courier New", Courier, monospace;
}

/* ---------------------------------------------------------
   listen links (soundcloud / spotify / apple music / bandcamp)
--------------------------------------------------------- */
#listenBox {
  border: 1px solid #4c4640;
  background-color: #0a0403;
  padding: 7px 9px;
}

#listenBoxLabel {
  font-family: "Courier New", Courier, monospace;
  font-size: 10px;
  color: #7a695c;
  margin-bottom: 5px;
}

#listenTable {
  font-size: 11px;
}

#listenTable td {
  padding: 2px 4px;
  border-bottom: 1px dotted #1f1915;
}

.listenIcon {
  font-family: "Courier New", Courier, monospace;
  color: #7a695c;
  width: 30px;
}

.listenNote {
  text-align: right;
}

#trackListTable {
  border-top: 1px solid #4c4640;
  padding-top: 4px;
}

.trackRow td {
  padding: 2px 4px;
  font-size: 10px;
  border-bottom: 1px dotted #1f1915;
  color: #ebe6d8;
}

.trackNum {
  color: #7a695c;
  width: 22px;
}

.trackRowInterlude .trackName {
  font-style: italic;
  color: #ebe6d8;
}

/* ---------------------------------------------------------
   archive table
--------------------------------------------------------- */
.archiveTable {
  font-size: 11px;
}

.archiveTable td {
  padding: 2px 4px;
  border-bottom: 1px dotted #1f1915;
}

.archiveIcon {
  font-family: "Courier New", Courier, monospace;
  color: #7a695c;
  width: 34px;
}

.mysteryLink {
  color: #d9ab7e;
}

.mysteryLink:hover {
  color: #f0c48a;
}

.deadLink {
  color: #96867b;
  text-decoration: line-through;
  cursor: default;
}

/* ---------------------------------------------------------
   footer
--------------------------------------------------------- */
#footerTable {
  margin-top: 4px;
}

#footerCell {
  background-color: #0a0403;
  border: 1px solid #4c4640;
  color: #7a695c;
  font-size: 9px;
  text-align: center;
  padding: 8px;
}

/* ---------------------------------------------------------
   fake overlays (404 / mystery file)
--------------------------------------------------------- */
#fakeOverlayBg, #mysteryOverlayBg {
  display: none;
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background-color: rgba(0,0,0,0.75);
  z-index: 999;
}

#fakeOverlayBox, #mysteryOverlayBox {
  width: 300px;
  margin: 120px auto 0 auto;
  background-color: #0b0a0c;
  border: 2px outset #4c4640;
  font-family: "Courier New", Courier, monospace;
}

#fakeOverlayTitle, #mysteryOverlayTitle {
  background-color: #291c14;
  color: #ffd670;
  font-size: 11px;
  font-weight: bold;
  padding: 3px 6px;
  border-bottom: 1px solid #4c4640;
}

#mysteryOverlayTitle {
  background-color: #1f1410;
  color: #f0c48a;
}

#fakeOverlayBody, #mysteryOverlayBody {
  padding: 12px;
  font-size: 11px;
  color: #ebe6d8;
}

/* ---------------------------------------------------------
   small screens - intentionally left mostly un-fixed.
   this is not meant to be a modern responsive site.
   a very light touch so it doesn't totally collapse.
--------------------------------------------------------- */
@media screen and (max-width: 800px) {
  #outerWrap, #outerWrap table {
    width: 96% !important;
  }
  #siteLogo {
    font-size: 22px;
  }
}
/* ---------------------------------------------------------
   pictures page
--------------------------------------------------------- */

.pictureTable {
  border: 1px solid #4c4640;
  background-color: #0a0403;
}

.pictureCell {
  width: 33%;
  padding: 6px;
  vertical-align: top;
  text-align: center;
  border: 1px dotted #4c4640;
  background-color: #120605;
}

.archivePicture {
  width: 150px;
  height: 115px;

  object-fit: cover;

  border: 1px solid #4c4640;

  filter:
    saturate(0.75)
    contrast(0.92);
}

.archivePicture:hover {
  filter:
    saturate(1)
    contrast(1);
}

.pictureFile {
  display: inline-block;

  margin-top: 4px;

  font-family: "Courier New", Courier, monospace;

  font-size: 9px;

  color: #7a695c;

  text-align: left;
}

.pictureMissing {
  height: 145px;

  font-family: "Courier New", Courier, monospace;

  font-size: 10px;

  color: #7a695c;

  vertical-align: middle !important;

  border: 1px dashed #4c4640;
}

.pictureMissing .pictureFile {
  color: #4c4640;
}