/* Requiem ～蒼キ月ノ墓標～
   見た目の主体は BODY 属性と FONT/TABLE タグ（当時の書き方）。
   ここに置くのは属性では書けないものだけに絞る。 */

/* 当時のGIFを拡大しても滑らかにしない */
IMG { image-rendering: pixelated; }

/* 区切り線。インライン画像のままだと直前の行に食い込むので、
   ブロックにして必ず1行を占有させる */
IMG[SRC*="line_rainbow"] { display: block; margin: 12px auto; }

/* 隠し文字をドラッグ反転したときに読めるようにする */
::selection { background: #00FF00; color: #000000; }

BODY {
  font-family: "MS PGothic", "ＭＳ Ｐゴシック", Osaka, sans-serif;
  font-size: 12px; line-height: 1.6;
  margin: 0; padding: 16px 0 60px;
}

/* 背景と同色の隠し文字。読み終わりの余白に置く */
.h { color: #000000; }

/* 詩は左揃え。中央揃えにすると行頭が縦に並ばず、縦読みに到達できない */
.poem {
  display: inline-block; text-align: left;
  color: #CCDDFF; font-size: 13px; line-height: 2.6; letter-spacing: 1px;
}
.lst { display: inline-block; text-align: left; }

/* アクセスカウンター。幅430pxの窓に42px幅の数字13個で、右3桁が外に出る。
   overflow:hidden にはしない（横スクロールでの到達経路を潰さないため） */
.cw {
  width: 430px; overflow-x: auto; white-space: nowrap;
  display: inline-block; vertical-align: middle; border: 1px solid #113311;
}
.cw IMG { width: 42px; height: 58px; }

/* AIの割り込み（進化・復帰） */
#aic {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; display: none;
  background: #001100; border-top: 2px solid #00AA00;
  color: #00FF00; padding: 10px 16px; font-size: 12px;
}

/* デバッグコンソール。ここだけ当時風の装飾を一切使わない */
#dbg {
  position: fixed; inset: 0; z-index: 80; display: none;
  background: #000; color: #00FF00; overflow-y: auto;
  font-family: "MS Gothic", "ＭＳ ゴシック", monospace;
  font-size: 13px; line-height: 1.55;
  padding: 18px 20px 80px; white-space: pre-wrap; word-break: break-all;
}
#dbg .u { color: #CCFFCC; }
#dbg .s { color: #338833; }
#dbg .e { color: #88AA88; }
#dbgline { display: flex; align-items: center; }
#dbgin {
  background: transparent; border: 0; outline: 0; flex: 1; padding-left: 6px;
  font-family: inherit; font-size: 13px; color: #00FF00;
}
#dbgv { position: fixed; right: 14px; bottom: 12px; z-index: 81; display: none;
        color: #226622; font-family: monospace; font-size: 12px; }
#scan { position: fixed; inset: 0; z-index: 82; display: none; opacity: .18;
        pointer-events: none;
        background: repeating-linear-gradient(#000 0 1px, transparent 1px 3px); }

/* エンディングの崩落 */
.fall { transition: transform 1.5s cubic-bezier(.5,0,1,1), opacity 1.5s ease-in; }
#blackout { position: fixed; inset: 0; background: #000; z-index: 90;
            opacity: 0; pointer-events: none; transition: opacity 1.2s ease; }

/* フィクションである旨の注記（掲載要件）。
   作中の言葉ではないので、1999年の枠の外に現代の書体で置く。
   **世界観に溶かし込まない** ── 読めなければ注記の意味がない */
.note {
  margin: 28px auto 0; text-align: center;
  font-family: "Hiragino Sans", "Yu Gothic", "Noto Sans JP", sans-serif;
  font-size: 11px; line-height: 1.8; color: #888888; letter-spacing: .03em;
}
