:root { --black: #000; --white: #FFF; --red: #800; --cyan: #AFE; --violet: #C4C; --green: #0C5; --blue: #00A; --yellow: #EE7; --orange: #D85; --brown: #640; --light-red: #F77; --light-green: #AF6; --light-blue: #08F; --grey-1: #333; --grey-2: #777; --grey-3: #BBB; --crt-frame: #BFBCAD; } @keyframes scanline { 0% { top: 0; } 30% { top: 100%; } 100% { top: 100%; } } @media (prefers-color-scheme: light) { body { background: var(--cyan); color: var(--blue); } } @media (max-width: 1280px) { #app { width: 90vw; height: 90vh; } } body { width: 100vw; height: 100vh; display: flex; align-items: center; justify-content: center; font-family: VT323, monospace; font-size: 24px; background: var(--black); } #app { position: relative; z-index: 10; background: var(--crt-frame); width: 1280px; height: 900px; max-width: 1280px; max-height: 1024px; box-shadow: inset 0.25em 0.25em 2px rgba(255, 255, 255, 0.4), inset -0.25em -0.25em 2px rgba(0, 0, 0, 0.4); user-select: none; transform: translate3d(0, 0, 0); backface-visibility: hidden; perspective: 1000; color: var(--cyan); text-shadow: 0 0 2px yellow; } #screen.enhanced-readability { text-shadow: none; } #screen { width: calc(100% - 2.4em); height: calc(100% - 2.4em); overflow: hidden; margin: 1.2em; z-index: 20; box-shadow: 0 0 1px 3px #0A0A0AB2; background: var(--blue); } #app, #screen { border-radius: 1em; } #wrap { position: relative; height: 100%; padding: 1.5em; background: radial-gradient(ellipse at center, #FFF2 0%, #0003 100%); } #interlace { position: absolute; right: 0; top: 0; bottom: 0; left: 0; background: linear-gradient(#888 50%, #000 0); background-repeat: repeat-y; background-size: 100% 4px; opacity: .1; z-index: 21; pointer-events: none; } #scanline { position: absolute; top: 0; left: 0; right: 0; height: 1em; background: linear-gradient(180deg, transparent 0, #EEE 50%, navy 0, transparent); opacity: .1; animation: scanline 6s linear infinite; pointer-events: none; } #inner { height: 100%; background: #0003; border-radius: .5em; overflow-y: auto; } #inner::selection { color: var(--blue); background: var(--cyan); } #inner>textarea { width: 100%; height: calc(100% - 1.5em); padding: 0 1em; scroll-behavior: smooth; } #inner>footer { display: flex; flex-flow: row nowrap; height: 1.5em; line-height: 1.5em; overflow-x: auto; } #inner>footer>a { padding: 0 1em; margin-right: 1em; background: var(--cyan); color: var(--blue); }