/* FEED://BBS — a dial-up board skin for fossil. Direction: classic ANSI 16-color board. Bright phosphor colors on deep blue-black, box-drawing chrome, no gradients, no webfonts. */ :root { --bg: #070b14; --bg-raised: #0c1220; --bg-inset: #050810; --line: #1d2b3a; --line-bright: #2e4459; --text: #b9c6cc; --text-dim: #6b7d88; --green: #7ee787; --cyan: #76e3ea; --magenta: #e891e0; --yellow: #ffd76d; --red: #ff7b72; --blue: #82aaff; } * { box-sizing: border-box; } html { margin: 0; padding: 0; } body { margin: 0; padding: 1em 0.5em 3em; background: var(--bg); color: var(--text); font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 15px; line-height: 1.55; } /* faint scanlines */ body::after { content: ""; position: fixed; inset: 0; pointer-events: none; background: repeating-linear-gradient( to bottom, transparent 0 2px, rgba(255, 255, 255, 0.018) 2px 3px ); z-index: 9999; } ::selection { background: var(--yellow); color: var(--bg-inset); } a { color: var(--cyan); text-decoration: none; } a:visited { color: var(--magenta); } a:hover { color: var(--yellow); text-decoration: underline; } /* ---------- header chrome ---------- */ .bbs-head { max-width: 920px; margin: 0 auto; text-align: center; } .ansi { margin: 0; font-size: 11px; line-height: 1.2; white-space: pre; overflow-x: auto; } .ansi .c-cyan { color: var(--cyan); text-shadow: 0 0 6px rgba(118, 227, 234, 0.4); } .ansi .c-green { color: var(--green); text-shadow: 0 0 6px rgba(126, 231, 135, 0.4); } .ansi .c-magenta { color: var(--magenta); text-shadow: 0 0 6px rgba(232, 145, 224, 0.4); } .ansi .c-yellow { color: var(--yellow); text-shadow: 0 0 6px rgba(255, 215, 109, 0.4); } .ansi .c-white { color: var(--text); } .status-line { display: flex; justify-content: space-between; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 0.2em 0.6em; color: var(--text-dim); font-size: 0.85em; } .status-line .who { color: var(--green); } .status-line .node { color: var(--blue); } /* ---------- menu: bracketed, one color per entry like a board menu ---------- */ nav.mainmenu { max-width: 920px; margin: 0.4em auto 1.2em; text-align: center; } nav.mainmenu a { margin: 0 0.35em; padding: 0.1em 0.2em; } nav.mainmenu a::before { content: "[ "; color: var(--text-dim); } nav.mainmenu a::after { content: " ]"; color: var(--text-dim); } nav.mainmenu a:hover { color: var(--text); text-decoration: none; background: var(--bg-inset); } nav.mainmenu a.m-green { color: var(--green); } nav.mainmenu a.m-cyan { color: var(--cyan); } nav.mainmenu a.m-magenta { color: var(--magenta); } nav.mainmenu a.m-yellow { color: var(--yellow); } nav.mainmenu a.m-red { color: var(--red); } nav.mainmenu a.m-blue { color: var(--blue); } /* ---------- avatars ---------- */ img.avatar { width: 2.2em; height: 2.2em; vertical-align: middle; margin-right: 0.5em; border: 1px solid var(--line-bright); image-rendering: pixelated; } .forumPostHdr img.avatar { float: left; margin: 0 0.7em 0.4em 0; width: 3em; height: 3em; } /* ---------- content well ---------- */ .content { max-width: 920px; margin: 0 auto; padding: 1.2em 1.5em 2em; background: var(--bg-raised); border: 1px solid var(--line); box-shadow: 0 0 0 1px var(--bg-inset), 0 0 24px rgba(0, 0, 0, 0.6); } h1, h2, h3, h4 { color: var(--yellow); font-weight: 600; letter-spacing: 0.02em; } h1 { font-size: 1.35em; border-bottom: 1px solid var(--line); padding-bottom: 0.3em; } h2 { font-size: 1.15em; color: var(--magenta); } h3 { color: var(--cyan); } hr { border: none; border-top: 1px solid var(--line); } code, pre { font-family: inherit; background: var(--bg-inset); color: var(--green); } code { padding: 0 0.25em; } pre { padding: 0.8em 1em; border: 1px solid var(--line); border-left: 2px solid var(--yellow); overflow-x: auto; } blockquote { margin: 1em 0; padding: 0.2em 1em; border-left: 2px solid var(--magenta); color: var(--text-dim); } /* ---------- tables, forms, buttons ---------- */ table { border-collapse: collapse; } th, td { border: 1px solid var(--line); padding: 0.3em 0.7em; } th { color: var(--cyan); background: var(--bg-inset); } input, textarea, select { background: var(--bg-inset); color: var(--text); border: 1px solid var(--line-bright); font-family: inherit; font-size: inherit; padding: 0.3em 0.5em; caret-color: var(--yellow); } input:focus, textarea:focus, select:focus { outline: 1px solid var(--yellow); } input[type=submit], .btn, button { background: var(--bg-inset); border: 1px solid var(--green); color: var(--green); cursor: pointer; } input[type=submit]:hover, .btn:hover, button:hover { background: var(--green); color: var(--bg-inset); } /* ---------- footer ---------- */ .bbs-foot { max-width: 920px; margin: 1.5em auto 0; text-align: center; color: var(--text-dim); font-size: 0.85em; } /* ---------- forum: kill fossil's light boxes ---------- */ div.forumTime, div.forumSel { background: var(--bg-inset); border: 1px solid var(--line-bright); padding: 0.8em 1.2em; } .forumPostHdr { color: var(--text-dim); background: transparent; border-bottom: 1px solid var(--line); padding-bottom: 0.4em; font-weight: 400; } .forumPostHdr a { color: var(--green); } div.forumPostBody { background: transparent; color: var(--text); } div.debug { background: var(--bg-inset); border: 1px dashed var(--magenta); color: var(--text-dim); padding: 0.5em 1em; } span.debug { background: transparent; } input[type=button], .action-close { background: var(--bg-inset); border: 1px solid var(--red); color: var(--red); cursor: pointer; font-family: inherit; font-size: inherit; padding: 0.3em 0.5em; } input[type=button]:hover { background: var(--red); color: var(--bg-inset); } .submenu { margin-bottom: 0.8em; } .submenu .label { color: var(--blue); margin-right: 1em; } .submenuctrl { color: var(--text-dim); } .forum-editor-widget { background: var(--bg-inset); border: 1px solid var(--line); padding: 1em; } /* ---------- timeline ---------- */ .timelineModernCell[id], .timelineColumnarCell[id], .timelineDetailCell[id] { background-color: var(--bg-inset); border: 1px solid var(--line-bright); border-radius: 0; } .timelineModernDetail, .timelineColumnarDetail { color: var(--text-dim); opacity: 1; } .timelineModernDetail a, .timelineColumnarDetail a { color: var(--blue); } .timelineSelected { background-color: var(--bg-raised) !important; outline: 1px solid var(--yellow); } /* ---------- linkhut (/ext/links) ---------- */ .linkhut { margin-top: 2em; } .dim { color: var(--text-dim); } .linkform { display: flex; gap: 0.5em; flex-wrap: wrap; margin-bottom: 1.5em; } .linkform input[type=url] { flex: 2 1 16em; } .linkform input[type=text]:first-of-type { flex: 2 1 12em; } .linkform input[type=text]:last-of-type { flex: 1 1 10em; } .linkrow { border: 1px solid var(--line); background: var(--bg-inset); padding: 0.5em 0.9em; margin-bottom: 0.5em; position: relative; } .linktitle { color: var(--green); font-weight: 600; } .linktitle:hover { color: var(--yellow); } .linkmeta { color: var(--text-dim); font-size: 0.85em; } .linkmeta a { color: var(--blue); } .tag { border: 1px solid var(--line-bright); padding: 0 0.4em; margin-left: 0.3em; color: var(--magenta); font-size: 0.9em; } .tag:hover { border-color: var(--magenta); text-decoration: none; } .killform { position: absolute; top: 0.4em; right: 0.5em; } .killform input[type=submit] { border: 1px solid var(--red); color: var(--red); background: transparent; padding: 0 0.45em; } .killform input[type=submit]:hover { background: var(--red); color: var(--bg-inset); }