html { }

@font-face {
  font-family: 'monobrains-100';
  src: url('/res/font/monobrains-100.woff2') format('woff2');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

body {
    max-width: 1024px;
    width: calc(100% - 32px);
    margin: 16px; /* Keeps it left-aligned on your desktop browser */

    color: #666699;
    background: #111122;
    font-family: sans-serif;

    border-style: double;
    border-width: 3px;
    border-color: #669;
    border-top-color: #67a;
    border-right-color: #556;
    border-bottom-color: #77A;
}

body, pre, code {
  #clock-tower {
    box-sizing: border-box; /* Prevents padding from breaking the layout width */
    overflow: visible;  
    white-space: pre;
    background: #0b0b12; 
    color: #666699;      
    padding: 8px 12px;
    border: 1px solid #333355;
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.5);
    font-family: 'monobrains-100';
    font-size: 13px; /* Default desktop size */
    user-select: none;
    line-height: 1.1em;
    cursor: default; 
    max-width: 100%;
  }

  #clock-tower pre {
    margin: 0;
    font-family: inherit;
  }
  #tower-date, #tower-time {
    font-weight: bold;
    text-align: center;
  }

}


.nevenen {
    color: #666699;
    font-weight: 200;
    font-style: monospace;
    font-size: 18px;
    font-color: 18px;
}

.george-carlin {
    color: green;
    font-style: Comic Sans MS, Handwriting;
    font-size: 24px;
    font-weight: 400;
}

.green-terminal {
    font-family: Monospace;
    font-weight: 420;
    font-size: 24px;
    color: #00cc66;
}

.new-newsflash {
    font-size: 18px;
    font-family: Monaco;
    color: #99c;
    font-weight: 222;    
}

.fancier-timestamp {
    font-family: Lucida Console;
    font-size: 48px;
    color: #688a;
    border-size: 5px;
    border-style: double;
    border-color: #669;
}

.hot-newsflash {
    font-size: 16px;
    font-family: monospace;
    font-weight: 420;
    color: #87a;
    margin-left: 55px;
}

.tik-tok-drop {
    font-family: Comic Sans MS;
    font-size: 26px;
    font-style: underline;
    font-weight: 400;
    color: #A2B;
    background: #669;
}

.tik-tok-drop:hover {
    cursor: crosshair;
}

.mail-rcvd {
    font-family: Helsinki;
    font-spacing: 0.4;
    font-weight: 200;
    font-size: 14pt;
}

.mail-from {
    font-family: Garamond;
    font-size: 13px;
    font-weight: 600;
    font-color: #879;
}

  hr {
      inset: #112;
      outset: #857;
      border-style: double;
      border-width: 3px;
      border-color: #669;
  }

  a {
    font-family: monospace;
    font-weight: 800;
    display: inline;
    font-size:28px;
    letter-spacing: 0.1;
    color: #887799;
    text-decoration: none;
    border-style: solid;
    border-width: 1px;
    border-color: #887799;
  }

  a:hover {
      color: #9999CC;
      border-color: #9999CC;
      cursor:crosshair;
  }

  .nvn-welcome {
      font-family: Garamond;
      font-size: 36px;
      font-weight: 800;
      letter-spacing: 0.1em;
      overflow: visible;
  }

  .newsletter-timestamp {
      font-family: monospace;
      font-size: 16px;
      font-weight: 900;
  }

  .nvn-journal {
      font-size: 14px;
      font-family: monospace;
      margin-left: 12px;
      margin-top: 8px;
      margin-bottom: 64px;
      margin-right: 9px;
  }

  .journaling {
      fontfamily: sans-serf;
      font-size: 14px;
      color: #EBE;
  }

#tower-date, #tower-time {
  display: inline-block;
  font-weight: bold;
}
#billboard-container {
  display: inline-block;
  vertical-align: bottom;
  overflow: hidden;
  height: 1.2em;
}
#billboard {
  display: inline-block;
  overflow: visible;
  color: #a0a0d0; /* Soft slate pastel */
  font-weight: bold;
  text-transform: uppercase;
  transition: opacity 0.35s cubic-bezier(0.25, 1, 0.5, 1), transform 0.35s cubic-bezier(0.25, 1, 0.5, 1);
  transform: translateY(0);
  opacity: 1;
}

@media (max-width: 1024px) {
    /* Shrinks the huge 48px timestamp */
    .fancier-timestamp {
        font-size: 5vw !important;
    }

    /* Shrinks the 36px welcome text */
    .nvn-welcome {
        font-size: 4.5vw !important;
    }

    /* Shrinks the 24px terminal and link text so they don't clip */
    .green-terminal, a {
        font-size: 3vw !important;
    }

    /* Keeps your core blog text looking sharp on small screens */
    .nvn-journal {
        font-size: 2.2vw !important;
    }
}
/* Container safety check: prevents preformatted text from stretching the page boundaries */
pre, #clock-tower {
    max-width: 100% !important;
    /* overflow-x: auto; */
}

/* Mobile responsive adjustments */
@media (max-width: 1024px) {
    /* Drastically shrink pre and clock text relative to the phone screen width */
    
    /* Prevent other large font classes from scaling past the screen edge */
    .fancier-timestamp {
        font-size: 5vw !important;
    }
    .nvn-welcome {
        font-size: 4.5vw !important;
    }
    .green-terminal, a {
        font-size: 3vw !important;
    }
    .nvn-journal {
        font-size: 2.5vw !important;
    }
}
