/* Just enough */

html {
  height: 100%;
  min-height: 100%;
  background-color: #000000;
}

body {
  position: relative;
  width: 100%;
  margin: 0 auto;
  min-height: 100%;
  min-height: 100vh;
  color: #ffffff;
  background-color: #ff00ff;
  background: url("bg0.png") repeat;
  font-family: "Times New Roman", Times, serif;
}

#page {
  width: 100%;
  margin: 0 auto;
  background-color: #000000;
}

#page > h3 {
  margin-bottom: 0;
}

a {
  color: #ffff00;
}

a:visited {
  color: #ffff00;
}

a:hover,
a:focus {
  color: #000000;
  background: #00ff80;
}

.author-note,
.header-note {
  color: #ffffff;
}

.author-note {
  margin: 0 0 1.3em;
}

h1 {
  margin: 0.6em 0 0.35em;
  color: #80ffff;
  line-height: 1.05;
}

.ascii {
  display: inline;
  display: inline-block;
  margin: 0 auto;
  color: #ffff00;
  max-width: 100%;
  white-space: nowrap;
  text-align: left;
}

.ascii i {
  color: #80ffff;
}

.header-note {
  margin: 0.8em 0;
}

.quote {
  margin: 1em auto;
  color: #ffffff;
}

hr {
  height: 2px;
  color: #0030ff;
  background: #0030ff;
  border: 0;
}

.bottom-rule {
  position: absolute;
  right: 0;
  bottom: 0.2em;
  left: 0;
  margin: 0;
}

.menu-line {
  margin: 0.8em 0;
  color: #80ffff;
  font-size: 1.2em;
  line-height: 1.2;
  text-align: center;
}

.ornament {
  color: #80ffff;
}

.menu-link {
  color: #ffff00;
  text-decoration: none;
}

.menu-link:visited {
  color: #ffff00;
}

.tagline {
  color: #80ffff;
  position: absolute;
  right: 0;
  bottom: 1.6em;
  left: 0;
  margin: 0;
}

.route-page {
  width: 92%;
  margin: 1em auto;
  background: #000000;
  text-align: left;
}

.route-page h2 {
  color: #ffff00;
}

.route-page h3 {
  color: #80ffff;
}

.route-page table {
  width: 100%;
  border-collapse: collapse;
}

.route-page th,
.route-page td {
  padding: 0.35em;
  border: 1px solid #0030ff;
  vertical-align: top;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.account-shell table {
  table-layout: fixed;
}

.account-shell code {
  white-space: pre-wrap;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.cyx-rich-toolbar {
  display: none;
  margin: 0.35em 0 0;
  padding: 0.3em;
  border: 1px solid #0030ff;
  background: #000080;
}

.cyx-rich-editor-js .cyx-rich-toolbar {
  display: block;
}

.cyx-rich-toolbar button {
  margin: 0.15em;
  color: #000000;
  background: #80ffff;
  border: 1px solid #ffffff;
}

.cyx-rich-toolbar label {
  color: #ffff00;
  margin: 0.15em;
}

.cyx-rich-toolbar input[type="color"] {
  width: 2em;
  height: 1.5em;
  padding: 0;
  vertical-align: middle;
}

.cyx-rich-editor textarea {
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.cyx-format-help {
  margin: 0.3em 0 0;
  color: #aaaaaa;
}

.cyx-format-help-js {
  display: none;
}

.cyx-rich-editor-js .cyx-format-help-js {
  display: block;
}

.spoiler {
  color: #000000;
  background: #000000;
}

.spoiler:hover,
.spoiler:focus {
  color: #ffffff;
}

.chat-log {
  width: 100%;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.chat-entry,
.chat-empty {
  margin: 0;
  padding: 0.45em 0;
  border-bottom: 1px solid #0030ff;
}

.chat-entry:first-child {
  border-top: 1px solid #0030ff;
}

.chat-time {
  color: #80ffff;
}

.chat-author {
  color: #ffffff;
}

.chat-separator {
  color: #80ffff;
}

.chat-body {
  color: #ffffff;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.chat-compose {
  margin-top: 1em;
  padding-top: 0.5em;
  border-top: 1px solid #0030ff;
}

.chat-refresh-bottom {
  margin-bottom: 0;
}

.chat-live-status {
  color: #00ff80;
}

.chat-live-status.error {
  color: #ff4040;
}

.forum-featured-thread {
  margin: 1em 0;
  padding: 0.5em;
  border: 1px solid #0030ff;
}

.forum-featured-thread h4 {
  margin: 0.35em 0;
}

.forum-thread-label,
.forum-post-number {
  color: #80ffff;
}

.forum-sage {
  color: #ffff00;
}

.forum-thread-meta,
.forum-list-meta,
.forum-preview-time {
  color: #aaaaaa;
}

.forum-preview-post {
  margin: 0.75em 0;
  padding-left: 0.75em;
  border-left: 1px solid #0030ff;
}

.forum-preview-post p,
.forum-listing {
  margin: 0.35em 0;
}

.forum-post {
  margin: 1em 0;
  padding: 0.5em 0;
  border-bottom: 1px solid #0030ff;
}

.forum-post-meta {
  margin: 0 0 0.5em;
}

.forum-post-body {
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.forum-replies {
  border-top: 1px dotted #6767ff;
  margin: 0.75em 0 0;
  padding-top: 0.35em;
}

.forum-replies small {
  color: #6767ff;
}

.forum-reply-link {
  margin-left: 0.35em;
}

.forum-greentext {
  color: #00ff80;
}

.forum-quote {
  color: #80ffff;
}

.forum-attachments {
  margin-top: 0.75em;
}

.forum-attachment,
.chat-attachment {
  display: inline-block;
  margin: 0 0.75em 0.75em 0;
  max-width: 100%;
  vertical-align: top;
}

.forum-attachment img,
.chat-attachment img {
  display: block;
  max-width: 100%;
  height: auto;
}

.forum-attachment video,
.chat-attachment video,
.forum-attachment audio,
.chat-attachment audio {
  display: block;
  max-width: 100%;
  height: auto;
}

.attachment-pending {
  color: #ffff00;
}

.attachment-flagged,
.attachment-rejected,
.attachment-failed {
  color: #ff4040;
}

.forum-removed {
  color: #ff4040;
  font-style: italic;
}

.forum-moderation {
  margin-top: 0.5em;
  color: #ff4040;
}

.forum-quick-action {
  display: inline;
  margin: 0;
}

.forum-quick-link {
  padding: 0;
  border: 0;
  color: #ff4040;
  background: transparent;
  font: inherit;
  text-decoration: underline;
  cursor: pointer;
}

.forum-quick-link:hover,
.forum-quick-link:focus {
  color: #000000;
  background: #00ff80;
}

.forum-moderation-label {
  color: #ff4040;
}

.forum-filter {
  margin: 1em 0;
}

.route-page th {
  color: #80ffff;
  background: #000080;
  text-align: left;
}

.route-page td {
  color: #ffffff;
}

.route-page .available {
  color: #00ff80;
}

.route-page .on-demand {
  color: #ffff00;
}

.route-page .unavailable {
  color: #ff4040;
}

.route-nav {
  margin: 1.5em 0;
  text-align: center;
}

.route-nav a {
  margin: 0 0.4em;
}

.game-status-form {
  display: inline;
  margin: 0;
}

.game-status {
  padding: 0;
  border: 0;
  background: transparent;
  font-family: inherit;
  font-size: inherit;
  text-decoration: underline;
}

button.game-status {
  cursor: pointer;
}

.game-status.online {
  color: #00ff80;
}

.game-status.sleeping,
.game-status.paused {
  color: #ffff00;
}

.game-status.starting {
  color: #80ffff;
}

.game-status.unavailable {
  color: #ff4040;
}

.game-status.unknown {
  color: #ffffff;
}

#services-note {
  margin-top: 2em;
  color: #ffffff;
}

#services-note h3 {
  color: #ffff00;
}

#services-note p {
  margin: 0.45em 0;
}

#links {
  margin-top: 1.5em;
}

.account-shell input,
.account-shell select,
.account-shell textarea {
  max-width: 100%;
  box-sizing: border-box;
}

.account-shell textarea {
  width: 100%;
  font-family: "Courier New", Courier, monospace;
}

.account-shell caption {
  padding: 0.35em 0;
  color: #ffff00;
  font-weight: bold;
  text-align: left;
}

.account-message.success {
  color: #00ff80;
}

.account-message.warning,
.account-errors {
  color: #ff4040;
}


@media screen and (max-width: 32em) {
  #page {
    width: 100%;
  }

  .ascii {
    max-width: 100%;
  }
}

@media screen and (min-width: 33em) and (min-height: 600px) {
  .tagline {
    position: absolute;
    right: 0;
    bottom: 1.6em;
    left: 0;
    margin: 0;
  }

  .bottom-rule {
    position: absolute;
    right: 0;
    bottom: 0.2em;
    left: 0;
    margin: 0;
  }
}
