To the graveyard come a soldier, a charlatan, and a sentinel.
/*
Foxtrot Sigma-9 Theme
[2022 Wikidot Theme]
By Liryn
*/
/* FONTS */
@import url('https://fonts.bunny.net/css2?family=Montserrat:ital,wght@0,800;1,800&display=swap');
@import url('https://fonts.bunny.net/css2?family=Lexend:wght@700;800&display=swap');
@import url('https://fonts.bunny.net/css2?family=JetBrains+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap');
@import url('https://fonts.bunny.net/css2?family=Fira+Code:wght@400;700&display=swap');
@import url('https://fonts.bunny.net/css2?family=Sofia+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap');
@import url('https://scp-wiki.wikidot.com/local--files/theme:foxtrot/inter.css');
@import url('https://fonts.bunny.net/css2?family=Figtree:wght@800;900&display=swap');
@import url('https://fonts.bunny.net/css2?family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap');
/* VARIABLES */
:root {
/* VARIABLES > Core */
--header-title: "SCP Foundation";
--header-subtitle: "SECURE, CONTAIN, PROTECT";
--logo-img: url(https://scp-wiki.wikidot.com/local--files/theme:foxtrot/fxtrt-scp_logo_lightmode.svg);
--darkmode-logo-img: url(https://scp-wiki.wikidot.com/local--files/theme:foxtrot/fxtrt-scp_logo_darkmode.svg);
--logo-opacity: 14%;
--head-font: 'Sans Normalcy';
--ui-font: 'IBM Plex Sans';
--mono-font: 'JetBrains Mono', 'Fira Code', monospace;
--page-font: 'Inter', 'verdana';
--base-font-size: 0.9rem;
--page-font-size: 1rem;
/* VARIABLES > Misc */
--header-txt-color: #333333;
--subheader-txt-color: rgb(var(--accent));
--misc-txt-color: #464646;
--link-txt-color: #E6283C;
--link-hover-txt-color: white;
/* VARIABLES > Color Accents */
--accent: var(--acc-default);
--acc-default: 59, 59, 59;
--acc-wyoming: 142, 0, 18;
--acc-canada: var(--acc-default);
--acc-poland: 87, 44, 17;
--acc-slothspit: 27, 60, 133;
--acc-vanguard: 0, 153, 75;
--acc-threshold: 121, 113, 130;
--acc-overwatch: 28, 37, 56;
--acc-spc: 0, 165, 200;
--acc-fishing: 67, 111, 145;
--acc-nightfall: 151, 0, 2;
--acc-hybrasil: 27, 60, 133;
--acc-goc: 39, 84, 149;
--acc-spooky: 252, 112, 40;
/* VARIABLES > BetterFootnotes */
--fnColor: var(--link-txt-color);
--fnLinger: 1s;
}
/* VARIABLES > Info Bar */
.info-container {
--barColour: rgb(var(--accent));
--linkColour: #EDEDED;
}
/* MAIN */
html {
scroll-behavior: smooth;
overflow-x: hidden;
}
body {
font-family: var(--ui-font), sans-serif;
font-size: var(--base-font-size);
color: rgb(51, 51, 51);
background-image: linear-gradient(to bottom, #e0e0e0, #fff 200px);
text-rendering: optimizeLegibility;
overflow-wrap: break-word;
}
div#container-wrap {
background: none;
}
#content-wrap {
margin: 2em auto 0;
}
#page-content {
font-family: var(--page-font), var(--ui-font), sans-serif;
font-size: var(--page-font-size);
font-weight: 440;
}
#page-content strong {
font-weight: 700;
}
tt,
.page-source,
pre,
#edit-page-textarea {
font-family: var(--mono-font);
}
ol li {
margin: 0 0 1em;
}
ul {
margin: 1em 0;
}
li,
p {
line-height: 1.5;
text-underline-offset: 40%;
}
::selection {
background: rgb(var(--accent));
color: #fff;
}
/* Clicky links */
a,
a.newpage,
a:visited,
#side-bar a:visited {
color: var(--link-txt-color);
}
a:hover,
a.newpage:hover,
a:visited:hover,
#side-bar a:visited:hover {
color: var(--link-hover-txt-color);
text-decoration: none;
background-color: var(--link-txt-color);
}
a {
transition-duration: 0.1s;
}
/* patch for sidebar media, collapsibles, ACS, info button and ayers module so link doesn't override */
#page-content .collapsible-block-folded a:hover,
#page-content .collapsible-block-unfolded-link a:hover,
#page-content .rate-box-with-credit-button .fa-info:hover,
#side-bar .side-block.media a:hover,
.danger-diamond a:hover {
background: transparent;
}
.info-container .collapsible-block-folded .collapsible-block-link,
.info-container .collapsible-block-link {
background: var(--linkColour) !important;
}
/* MAIN > Header */
div#header {
background: none;
height: 160px;
}
#header h1 span,
#header h2 span {
font-size: 0;
display: none;
}
#header h1 a::before,
#header h2::before {
color: var(--header-txt-color);
letter-spacing: 1px;
font-family: var(--head-font), sans-serif !important;
font-weight: 900;
text-shadow: none;
}
#header h1 {
margin-top: -0.3rem;
}
#header h1 a {
width: fit-content;
margin: auto;
}
#header h1 a::before {
content: var(--header-title);
font-size: 1.3em;
}
#header h2::before {
content: var(--header-subtitle);
font-family: var(--ui-font) !important;
font-weight: 700;
font-size: 1.4em;
color: var(--misc-txt-color);
line-height: 26px;
margin-top: 0.35rem;
display: block;
text-transform: uppercase;
}
#header h1,
#header h2 {
margin-left: 0;
float: none;
text-align: center;
}
#header h1 span,
#header h2 span {
font-size: 0;
display: none;
}
div#extra-div-1 {
height: 160px;
width: 100%;
top: 7px;
position: absolute;
background: var(--logo-img) 10px 30px no-repeat;
background-size: 130px;
background-repeat: no-repeat;
background-position: 50% 50%;
z-index: -1;
opacity: var(--logo-opacity);
}
/* MAIN > Header > Search Box */
#search-top-box-form>input[type=text] {
display: none;
}
#search-top-box-input,
#search-top-box-input:hover,
#search-top-box-input:focus,
#search-top-box-form input[type=submit],
#search-top-box-form input[type=submit]:hover,
#search-top-box-form input[type=submit]:focus {
border: none;
background: rgb(var(--accent));
box-shadow: none;
border-radius: 5px !important;
color: #efefef;
font-family: var(--ui-font);
font-size: calc(var(--page-font-size) - 10%);
}
#search-top-box input.empty {
color: #999999;
}
#search-top-box {
position: absolute;
top: 47px;
width: unset;
}
/* MAIN > Header > Top Bar */
#top-bar,
#top-bar a {
top: 10rem;
}
#header #top-bar ul {
border-radius: 10px;
border: none;
background: rgb(var(--accent));
padding-left: 15px;
padding-right: 15px;
}
#header #top-bar a {
color: white;
background: rgb(var(--accent));
font-weight: bold;
}
#header #top-bar ul li ul {
padding: 0px;
border-radius: 0px;
}
#top-bar ul li.sfhover a,
#top-bar ul li:hover a {
border-left: solid 1px #FFF;
border-right: solid 1px #FFF;
}
#top-bar ul li ul li a:hover {
color: rgba(255, 255, 255, 0.83) !important;
line-height: 230%;
text-indent: 3px;
}
#top-bar {
display: flex;
justify-content: center;
right: 0;
}
.mobile-top-bar {
left: unset;
}
/* MAIN > Header > Login Info */
#login-status {
top: 19px;
}
#login-status,
#login-status a {
color: #333333;
}
@media (max-width: 767px) {
#header .printuser {
font-size: 0;
}
}
.printuser a {
margin: 0;
}
.printuser img.small {
width: 18px;
height: 18px;
padding: 1px 4px 0 0;
background-image: none !important;
}
@media (max-width: 767px) {
#header .printuser img.small {
transform: translate(0, 4px);
}
}
#my-account {
display: none;
}
@media (max-width: 767px) {
#account-topbutton {
margin: 0 0 0 5px;
}
}
/* MAIN > Header > Side Bar */
#top-bar .open-menu a {
border-radius: 0px;
border: none;
background: rgb(var(--accent));
color: white;
}
#side-bar {
background: #FFF;
}
@media (min-width: 768px) {
#side-bar {
padding: 0.3em 0.6em 0 0.6em;
width: 18.75em;
transition: left 0.2s ease-in-out;
direction: rtl;
text-align: left;
border-right: none;
}
}
#side-bar .side-block,
#side-bar .side-block.resources,
#side-bar .side-block.media,
#interwiki .side-block {
border: 2px solid rgba(0, 0, 0, 0.2);
border-radius: 0px;
box-shadow: none;
margin-bottom: 6px;
direction: ltr;
background: transparent;
}
#side-bar .side-block.resources {
text-align: center;
}
#side-bar .heading {
color: var(--misc-txt-color);
border-bottom: solid 2px #cfcfcf;
font-size: 9pt;
font-family: var(--head-font);
font-weight: 800;
text-transform: uppercase;
}
/* CONTENT */
/* CONTENT > Blockquotes, Custom Divs */
.blockquote,
div.blockquote,
blockquote {
border: solid 2px rgba(0, 0, 0, 0.15);
background: #f7f7f7;
}
.jotting {
padding: 1.3em;
margin: 1em 4.5em;
border: dashed 2px rgba(0, 0, 0, 0.2);
background: #f7f7f7;
}
.notation {
padding: 1em 1.5em;
margin: 1em 3em;
border-left: solid 3px rgba(0, 0, 0, 0.35);
border-right: solid 3px rgba(0, 0, 0, 0.35);
background: #f7f7f7;
}
.modal {
padding: 1.2em;
margin: 1em 3em;
border: solid 5px rgba(0, 0, 0, 0.15);
background: #fbfbfb;
}
.quote {
padding: 0.4em 2em;
margin: 3em auto;
border-left: solid 3px #bbb;
max-width: 500px !important;
}
.paper {
padding: 1.5em;
margin: 2em;
background: #FFF;
box-shadow: 0px 4px 9px rgba(0, 0, 0, 0.2);
}
.box {
padding: 1px 9px;
border: solid 3px #bbb;
margin: 0.5em 1em;
}
div.note {
font-size: unset;
border: 2px solid #afafaf;
background-color: #fff;
}
.round {
border-radius: 10px;
}
/* CONTENT > Headings, Titles */
#page-title,
.meta-title {
font-family: var(--ui-font), sans-serif;
font-weight: 800;
color: #3b3b3b;
border-bottom: solid 2px rgba(0, 0, 0, 0.2);
width: fit-content;
margin: 0 auto 1.5rem;
}
#page-title,
.meta-title,
#breadcrumbs,
.pseudocrumbs {
text-align: center;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-family: var(--head-font), sans-serif;
font-weight: 800;
color: #3b3b3b;
}
h1,
h2 {
font-weight: 800;
}
.footnotes-footer .title {
font-family: var(--head-font), sans-serif;
color: #3b3b3b;
font-weight: 800;
}
/* CONTENT > Rate Module */
#page-content .creditRate {
margin: unset;
font-family: var(--ui-font);
float: unset !important;
}
#page-content .rate-box-with-credit-button {
background-color: #fff;
border: solid 1px #bbb;
box-shadow: none;
border-radius: 0;
}
#page-content .rate-box-with-credit-button .fa-info {
border: none;
color: #333;
}
#page-content .rate-box-with-credit-button .fa-info:hover {
background: #333;
color: #fff;
}
.rate-box-with-credit-button .cancel {
border: solid 1px #fff;
}
.page-rate-widget-box {
box-shadow: none;
border: solid 1px #bbb;
margin: unset;
margin-bottom: 4px;
border-radius: 0;
font-family: var(--ui-font);
}
.page-rate-widget-box .rate-points {
background-color: #fff !important;
color: #333 !important;
border: none !important;
border-radius: 0;
}
.page-rate-widget-box .rateup,
.page-rate-widget-box .ratedown {
background-color: #fff;
border-top: none;
border-bottom: none;
}
.page-rate-widget-box .rateup a,
.page-rate-widget-box .ratedown a {
background: transparent;
color: #333;
}
.page-rate-widget-box .rateup a:hover,
.page-rate-widget-box .ratedown a:hover {
background: #333;
color: #fff;
}
.page-rate-widget-box .cancel {
background: #fff;
border: none;
border-radius: 0;
display: inline-block;
}
.page-rate-widget-box .cancel a {
color: #333;
}
.page-rate-widget-box .cancel a:hover {
background: #333;
color: #fff;
border-radius: 0;
}
#page-content .rate-box-with-credit-button .page-rate-widget-box {
border: none;
}
/* CONTENT > Rate Module > Author Label */
.authorlink-wrapper {
--author-top-adjust: 0;
--author-bottom-adjust: 0;
--author-right-adjust: 0;
font-family: var(--ui-font);
font-size: var(--base-font-size);
}
/* CONTENT > Side Box */
.anchor {
position: sticky;
height: 0;
top: 0;
}
.sidebox {
padding: .14rem;
margin-top: 0;
margin-bottom: 8px;
width: calc((100vw - 870px)/2);
max-height: calc(100vh - 18rem);
position: absolute;
top: 0;
left: 103.5%;
z-index: 5;
overflow: auto;
box-sizing: border-box;
}
@media (max-width: 1290px) {
.sidebox {
display: none;
visibility: hidden;
}
}
/* CONTENT > Image Block */
.scp-image-block .scp-image-caption {
background-color: #f4f4f4;
color: #3b3b3b;
border: solid 2px rgba(0, 0, 0, 0.1);
margin-top: 8px;
box-sizing: border-box;
border-radius: 4px;
}
.scp-image-block {
border: none;
box-shadow: none;
}
.scp-image-block img {
border: solid 2px rgba(0, 0, 0, 0.1);
box-sizing: border-box;
}
.imagediv {
float: right;
margin: 15px
}
@media (max-width: 540px) {
.imagediv {
float: unset;
text-align: center;
margin: 1.3rem auto 1.3rem auto;
}
}
@media only screen and (max-width: 600px) {
.scp-image-block.block-right {
float: none;
margin: 10px auto;
}
}
/* CONTENT > Tables Base */
#page-content tr th {
padding: 6px;
border: 2px solid rgba(0, 0, 0, 0.2);
}
#page-content tr td {
padding: 12px;
border: 2px solid #bfbfbf;
line-height: 1.4;
}
#page-content .sidebox tr td,
#page-content .sidebox tr th {
padding: 0.35em;
}
/* CONTENT > Tables Customization (Table Coloring System) */
/* CONTENT > Tables Customization (Table Coloring System) > Table Headings, Image Captions */
#page-content .table1 tr th,
#page-content .table1 .scp-image-block .scp-image-caption {
background-color: #E0FFD4;
}
#page-content .table2 tr th,
#page-content .table2 .scp-image-block .scp-image-caption {
background-color: #D8ECF4;
}
#page-content .table3 tr th,
#page-content .table3 .scp-image-block .scp-image-caption {
background-color: #FDF6D7;
}
#page-content .table4 tr th,
#page-content .table4 .scp-image-block .scp-image-caption {
background-color: #FFDFCD;
}
#page-content .table5 tr th,
#page-content .table5 .scp-image-block .scp-image-caption {
background-color: #FFCFCF;
}
#page-content .table6 tr th,
#page-content .table6 .scp-image-block .scp-image-caption {
background-color: rgba(146, 0, 255, 0.2);
}
.tableb .wiki-content-table {
border-collapse: separate;
border-spacing: 2px;
}
/* CONTENT > Tables Customization (Table Coloring System) > Other Colored Divs */
.table1 .blockquote,
.table1 div.blockquote,
.table1 blockquote,
.table1 .jotting,
.table1 .notation,
.table1 .modal,
.table1 .paper,
.blockquote.table1,
div.blockquote.table1,
.jotting.table1,
.notation.table1,
.modal.table1,
.paper.table1 {
background: rgb(224, 255, 212);
}
.table2 .blockquote,
.table2 div.blockquote,
.table2 blockquote,
.table2 .jotting,
.table2 .notation,
.table2 .modal,
.table2 .paper,
.blockquote.table2,
div.blockquote.table2,
.jotting.table2,
.notation.table2,
.modal.table2,
.paper.table2 {
background: rgb(226, 244, 255);
}
.table3 .blockquote,
.table3 div.blockquote,
.table3 blockquote,
.table3 .jotting,
.table3 .notation,
.table3 .modal,
.table3 .paper,
.blockquote.table3,
div.blockquote.table3,
.jotting.table3,
.notation.table3,
.modal.table3,
.paper.table3 {
background: rgb(255, 245, 189);
}
.table4 .blockquote,
.table4 div.blockquote,
.table4 blockquote,
.table4 .jotting,
.table4 .notation,
.table4 .modal,
.table4 .paper,
.blockquote.table4,
div.blockquote.table4,
.jotting.table4,
.notation.table4,
.modal.table4,
.paper.table4 {
background: rgb(255, 223, 205);
}
.table5 .blockquote,
.table5 div.blockquote,
.table5 blockquote,
.table5 .jotting,
.table5 .notation,
.table5 .modal,
.table5 .paper,
.blockquote.table5,
div.blockquote.table5,
.jotting.table5,
.notation.table5,
.modal.table5,
.paper.table5 {
background: rgb(255, 207, 207);
}
.table6 .blockquote,
.table6 div.blockquote,
.table6 blockquote,
.table6 .jotting,
.table6 .notation,
.table6 .modal,
.table6 .paper,
.blockquote.table6,
div.blockquote.table6,
.jotting.table6,
.notation.table6,
.modal.table6,
.paper.table6 {
background: rgb(255, 218, 255);
}
/* CONTENT > Tabs Base */
.yui-navset .yui-nav a,
.yui-navset .yui-navset-top .yui-nav a {
background-color: inherit;
background-image: inherit
}
.yui-navset .yui-nav a:hover,
.yui-navset .yui-nav a:focus {
background: inherit;
text-decoration: inherit
}
.yui-navset .yui-nav .selected a,
.yui-navset .yui-nav .selected a:focus,
.yui-navset .yui-nav .selected a:hover {
color: inherit;
background: inherit
}
.yui-navset .yui-nav,
.yui-navset .yui-navset-top .yui-nav {
border-color: inherit
}
.yui-navset li {
line-height: inherit
}
/* CONTENT > Tabs Customization */
.yui-navset .yui-nav,
.yui-navset .yui-navset-top .yui-nav {
display: flex;
flex-wrap: wrap;
width: calc(100% - .125rem);
margin: 0 auto;
border-color: #333333;
box-shadow: none;
}
.yui-navset .yui-nav a,
/* ---- Link Modifier ---- */
.yui-navset .yui-navset-top .yui-nav a {
color: #333333;
/* ---- Tab Background Colour | [UNSELECTED] ---- */
background-color: #efefef;
border: unset;
box-shadow: none;
box-shadow: none;
}
.yui-navset .yui-nav a:hover,
.yui-navset .yui-nav a:focus {
color: #ffffff;
/* ---- Tab Background Colour | [HOVER] ---- */
background-color: #333333;
}
.yui-navset .yui-nav li,
/* ---- Listitem Modifier ---- */
.yui-navset .yui-navset-top .yui-nav li {
position: relative;
display: flex;
flex-grow: 2;
max-width: 100%;
margin: 0;
padding: 0;
color: #ffffff;
background-color: #ffffff;
border-color: transparent;
box-shadow: none;
}
.yui-navset .yui-nav li a,
.yui-navset-top .yui-nav li a,
.yui-navset-bottom .yui-nav li a {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.yui-navset .yui-nav li em {
border: unset;
}
.yui-navset .yui-nav a em,
.yui-navset .yui-navset-top .yui-nav a em {
padding: .35em .75em;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
.yui-navset .yui-nav .selected,
/* ---- Selection Modifier ---- */
.yui-navset .yui-navset-top .yui-nav .selected {
flex-grow: 2;
margin: 0;
padding: 0;
/* ---- Tab Background Colour | [SELECTED] ---- */
background-color: #333333;
}
.yui-navset .yui-nav .selected a,
.yui-navset .yui-nav .selected a em {
border: none;
}
.yui-navset .yui-nav .selected a {
width: 100%;
color: #ffffff;
}
.yui-navset .yui-nav .selected a:focus,
.yui-navset .yui-nav .selected a:active {
color: #ffffff;
background-color: #333333;
}
.yui-navset .yui-content {
background-color: #ffffff;
box-shadow: none;
}
.yui-navset .yui-content,
.yui-navset .yui-navset-top .yui-content {
padding: .5em;
border: 1px solid #333;
box-sizing: border-box;
}
/* CONTENT > WORDS NO BROKEY. CROQ HAS SPOKEY. and other things */
span,
a {
word-break: normal !important
}
.avatar-hover {
display: none !important;
}
#main-content .page-tags span {
max-width: 100%;
}
/* CONTENT > Dustjacket Assets */
.fancyhr hr {
border-top: 2vw solid transparent;
background-color: rgba(var(--bright-accent), 0);
height: 0;
box-sizing: border-box;
border-image-source: url('https://scp-wiki.wikidot.com/local--files/theme:foxtrot/wl_hr.webp');
border-image-repeat: round round;
background: none;
border-image-slice: 80 500 80 500 fill;
border-image-width: 10em 80em 10em 80em;
}
.fancyborder {
box-sizing: border-box;
border: 2vw solid rgba(0, 0, 0, 0.5);
border-image: url('https://scp-wiki.wikidot.com/local--files/theme:foxtrot/wl_border.webp') 600 round;
border-image-width: 6;
padding: 2vw;
}
/* CONTENT > Collapsibles */
#page-content a.collapsible-block-link:hover {
text-decoration: underline;
color: var(--link-txt-color);
}
#page-content a.collapsible-block-link:not(.licensebox a.collapsible-block-link, .info-container a.collapsible-block-link, .default-col a.collapsible-block-link) {
text-decoration: none;
font-weight: bold;
color: white;
padding-top: 4px;
padding-bottom: 4px;
padding-left: 7px;
padding-right: 9px;
background: rgb(var(--accent));
border-radius: 6px;
margin-top: 5px;
font-family: var(--ui-font);
font-size: var(--base-font-size);
box-shadow: inset 0px 0px 0px 2px rgba(0, 0, 0, 0.4);
transition-duration: 0.4s;
display: inline-block;
}
#page-content a.collapsible-block-link:not(.licensebox a.collapsible-block-link, .info-container a.collapsible-block-link, .default-col a.collapsible-block-link):hover {
background: rgba(var(--accent), 0.7);
box-shadow: none;
}
/* CONTENT > ACS Adjustments */
.top-left-box>.item {
display: none;
}
.anom-bar-container {
margin-top: 1.1rem;
}
.anom-bar-container,
.anom-bar-container * {
font-family: var(--ui-font), Inter, sans-serif !important;
}
.acs-extra-1,
.acs-extra-2,
.acs-extra-3,
.acs-extra-4 {
font-family: var(--ui-font), Inter, sans-serif !important;
}
.anom-bar > .top-box {
text-transform: none;
}
/* CONTENT > Woed Bar Adjustments */
div.scale div.item1>div {
color: #333;
font-family: var(--head-font);
font-size: 1.4em;
text-transform: uppercase;
letter-spacing: 2px;
line-height: unset;
}
div.scale div.class1>div {
color: #333;
font-family: var(--head-font);
font-size: 2em;
line-height: 0.9em;
letter-spacing: 2px;
}
div.scale {
--woedbar-class-bar-color: #333 !important;
}
div.scale div.obj {
height: 1.7em;
}
div.scale div.obj>div {
font-size: 1.55em;
}
/* MISC */
#page-content hr {
height: 2px;
}
.bt {
color: rgb(var(--accent));
font-weight: bold;
}
#footer {
background: transparent;
color: #444;
margin-top: 45px;
}
#footer a {
color: #7b7b7b;
}
.footer-wikiwalk-nav {
font-weight: 700;
font-size: 88%;
word-spacing: 5px;
}
#page-info-break {
height: 10px;
}
#page-options-container {
border-top: solid 1px rgba(213, 213, 213, 0.5);
padding-top: 1rem;
}
.page-watch-options {
padding-bottom: 0.6rem;
font-size: 77%;
}
.page-options-bottom {
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-content: center;
justify-content: center;
}
.page-options-bottom a {
margin: 3px;
color: #FFF;
background: rgb(var(--accent));
padding: 5px 13px 5px 13px;
text-decoration: none;
font-size: 90%;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
}
.page-options-bottom a:hover {
background: rgba(var(--accent), 0.8);
}
#page-info-break {
height: 6px;
}
#license-area {
color: #5f5f5f;
background: #ecf2f1;
border-top: solid 2px #d9d9d9;
margin-top: 10px;
}
#license-area a::after {
content: ".";
}
@media (min-width: 768px) {
#main-content .page-tags {
padding-right: 16rem;
}
}
#main-content div.page-tags::before {
content: "tags ";
color: var(--misc-txt-color);
font-family: var(--head-font);
font-weight: 800;
font-size: var(--page-font-size);
}
#main-content .page-tags a {
display: inline-block;
height: .8125rem;
margin: 0 0 .5rem .75rem;
padding: .1875rem .3125rem .1875rem 0;
color: #FFF;
background-color: rgb(var(--accent));
border-bottom-right-radius: .25rem;
border-top-right-radius: .25rem;
line-height: 13px;
line-height: .8125rem;
font-size: calc(var(--page-font-size) - 10%);
font-weight: bold;
}
#main-content .page-tags a::before {
width: 0;
height: 0;
top: -.1875rem;
left: -.625rem;
padding: 0 .0625rem .1875rem;
border-color: transparent rgb(var(--accent)) transparent transparent;
border-style: solid;
border-width: .5rem .5rem .5rem 0;
}
#main-content .page-tags a::before,
#main-content .page-tags a::after {
content: "";
position: relative;
float: left;
}
#main-content .page-tags a::after {
width: .25rem;
height: .25rem;
top: .2813rem;
left: -.5rem;
background-color: #FFF;
border-radius: .125rem;
}
#main-content .page-tags span {
max-width: 100%;
border-top: .5rem solid transparent;
}
#page-tags-input {
font-weight: bold;
word-spacing: 8px;
}
#edit-page-form input.text {
font-family: var(--head-font), sans-serif;
font-weight: 800;
font-size: 150% !important;
padding: 4px;
}
#edit-page-form>table.form>tbody>tr>td:nth-child(1) {
font-weight: bold;
}
.edit-help-34 {
font-size: 85%;
opacity: 60%;
transition-duration: 0.3s;
width: fit-content;
}
.edit-help-34:hover {
opacity: 100%;
}
.edit-help-34 a {
margin-right: 3px;
margin-left: 10px;
}
table.edit-page-bottomtable {
width: 100%;
}
#edit-page-comments {
height: 86px;
}
#lock-info {
background-color: transparent;
margin: 0.8em;
line-height: 1.7;
font-size: 86%;
border: none;
}
#lock-info::before {
content: "!";
padding-right: 12px;
font-weight: bold;
font-size: 110%;
opacity: 60%;
}
#lock-timer {
font-size: 115%;
margin: 0 5px;
}
#lock-timer::before {
content: "⏲ ";
opacity: 80%;
}
textarea,
#edit-page-form input.text {
outline: none;
border: 1px solid #ccc;
transition-duration: 0.3s;
transition-property: box-shadow;
}
textarea:focus-visible,
#edit-page-form input.text:focus-visible {
box-shadow: 0px 0px 0px 1px #a3a3a3;
border: 1px solid #a3a3a3;
}
#action-area>p {
font-size: 85%;
color: darkslategrey;
}
#action-area>p:nth-child(5)>a {
display: block;
text-align: center;
font-size: 120%;
font-weight: bold;
}
#who-rated-page-area>div {
column-count: 4;
}
@media (max-width: 900px) {
#who-rated-page-area>div {
column-count: 3;
}
}
@media (max-width: 700px) {
#who-rated-page-area>div {
column-count: 2;
}
}
@media (max-width: 540px) {
#who-rated-page-area>div {
column-count: 1;
}
}
#page-content .content-warning.creditRate {
padding-top: 8px;
padding-right: 21px;
}
.preview-message {
right: 0em;
top: 2em;
border: unset;
padding: 1em 1.5em;
background-color: rgba(0, 0, 0, 0.9);
max-width: 29em;
opacity: 1;
z-index: 100;
line-height: 1.7;
filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.2));
color: #EDEDED;
}
.error-block {
background-color: rgba(255, 0, 48, 0.1);
text-align: center;
border: none;
border-top: solid 3px #B00;
border-top-left-radius: 6px;
border-top-right-radius: 6px;
}
table.page-history tbody tr:nth-child(2n) {
background: rgba(var(--accent), 0.05);
}
.owindow {
animation: fade 0.5s;
}
@keyframes fade {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
.owindow .button-bar a {
border: solid 2px rgba(0, 0, 0, 0.1);
margin: 11px;
padding: 0.5em 2em;
border-radius: 4px;
}
.owindow .button-bar a:hover {
background-color: var(--link-txt-color);
color: var(--link-hover-txt-color);
border-radius: 0px;
}
.owindow .button-bar {
padding: 1.2em 1em 1.2em;
}
.owindow .table {
margin-bottom: 1.5rem;
}
.owindow .title {
cursor: default;
font-family: var(--head-font);
font-weight: 800;
font-size: 155%;
text-align: center;
padding: 0.5em 1em;
border-bottom: solid 2px rgba(187, 187, 187, 0.4);
background-color: #F7F7F7;
}
.owindow.owait .content {
padding: 0.5em 0.5em 2em;
background-image: none;
}
.owindow.owait .content::after {
content: " ";
display: block;
width: 1.5rem;
height: 1.5rem;
margin: -0.9rem auto;
margin-top: 1rem;
animation: loading 1.2s linear infinite;
border-top: 0.4rem solid grey;
border-right: 0.4rem solid transparent;
border-bottom: 0.4rem solid grey;
border-left: 0.4rem solid transparent;
border-radius: 50%;
}
@keyframes loading {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.owindow.osuccess {
padding: 0.5em;
}
.owindow div.content:nth-child(2)>img:nth-child(1) {
margin-right: 1.2rem;
margin-top: 1rem;
}
.odialog-shader {
background-color: #262a39;
}
.btn {
transition-duration: 0.15s;
}
.btn:not(#main-content .btn, #search-top-box-form input[type="submit"]),
.btn.btn-primary,
div.buttons input,
input.button:not(#search-top-box-form input[type="submit"]) {
padding: 0.5em;
margin: 11px;
border-radius: 3px;
font-family: var(--ui-font);
cursor: pointer;
}
#edit-cancel-button,
#edit-diff-button,
#edit-preview-button,
#edit-save-draft-button,
#edit-save-continue-button,
#edit-save-button {
background: #fff;
border: solid 1px #ccc;
cursor: pointer;
font-family: var(--ui-font);
color: #333;
padding: 0.5rem 14px;
margin: 1px;
font-size: 90%;
border-radius: 3px;
}
#edit-cancel-button:hover,
#edit-diff-button:hover,
#edit-preview-button:hover,
#edit-save-draft-button:hover,
#edit-save-continue-button:hover,
#edit-save-button:hover {
background-color: #eaeaea;
}
#edit-save-continue-button,
#edit-save-button {
background: #dbffd6;
transition-duration: 0.3s;
color: #005a0a;
}
#edit-save-continue-button:hover,
#edit-save-button:hover {
color: #fff;
background: #0d951c;
}
#edit-cancel-button {
background: #ffe1e1;
transition-duration: 0.3s;
color: #c52727;
}
#edit-cancel-button:hover {
color: #fff;
background: #c5272e;
}
table.page-history tbody tr {
color: #757575;
}
.fncon {
font-size: var(--page-font-size) !important;
line-height: 1.4;
border: 2px solid rgba(0, 0, 0, 0.2);
}
.fncon::before {
font-size: var(--page-font-size) !important;
}
.hovertip {
border: none !important;
box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.2);
background: #FFF;
padding: 3px;
max-width: 400px;
}
input.checkbox,
.page-history input,
#h-perpage {
cursor: pointer;
}
input,
textarea {
font-family: var(--ui-font);
}
#breadcrumbs,
.pseudocrumbs {
font-weight: bold;
font-size: 110%;
font-family: var(--ui-font);
}
/* ---- REDUCED MOTION ACCESSIBILITY ---- */
@media (prefers-reduced-motion: reduce) {
*,
*::before,
*::after {
animation-duration: .001s !important;
animation-iteration-count: 1 !important;
transition-duration: .001s !important;
}
}
/* @MEDIA */
@media (max-width: 850px) {
#header h2::before {
font-size: 1.4em;
}
}
@media (max-width: 700px) {
#header h2::before {
font-size: 1.2em;
margin-top: 0.3rem;
}
#top-bar,
#top-bar a {
top: 8.8rem;
font-size: 90%;
}
}
@media (max-width: 620px) {
#header h2::before {
font-size: 1em;
margin-top: 0.15rem;
}
#top-bar,
#top-bar a {
top: 8.3rem;
font-size: 90%;
}
div#header {
height: 123px;
}
}
@media (max-width: 520px) {
#header h2::before {
line-height: 16px;
margin-top: 0.5rem;
}
#top-bar,
#top-bar a {
top: 9.3rem;
}
div#header {
height: 145px;
}
}
At the heart of the Eternal City there is a ghost that will not die.
In his nightmare-wracked sleep he prays for it, but the bodies of his gods are piled up at Calvary. His name is Quintus Valerius Solanus; when the Earth was young and men were unsaved he learned the secret name of Rome, whose holiness reverberated back through time. Now he sits suspended between life and death, never to tell a soul.
Sister Immaculata does not love the wind on her face, nor the roar of the engine beneath her, nor her sleek dark leathers. She loves only God. When His servants come asking for her aid, what can that love do but answer? So she careens past loping domes and under vaulting arches, atop a modern dragon, a purring Ducati breathing V4 fire. The wheels scrabble for purchase on the cobbles, catch, propel her endlessly forward.
Today the sun thrums over a summer-lit Rome. Beside it is another city, built baroque and twisted, built of labyrinthine paths winding in on themselves; built in the image of Dis. A thousand years ago His Holiness wished for an escape-hatch, and so he raised this, a left-hand path. It has become gnarled and magnificent.
She shrieks — left, right, right, left, up a blind alley, across a rooftop — snickersnacking through drifts of ash that whirl into familiar shapes: limbs and jaws and wings. The mirror-beasts of the mirror-city want nothing but to live. Her life, then, is a precious commodity.
At last she emerges out of the maze-maddened backstreets onto the arterial road. It is twenty metres of glassy choking tarmac, extending hyperbolic into infinity. She picks up speed, screaming gladly into the triple digits past endless colonnades and tarnished galleries. The sky blurs into a brushstroke.
On the horizon the road congeals into a teratoma of spite. Writhing out of the asphalt are a hundred eyes, a thousand teeth. Unlike its smaller kin the crawling thing could not plumb the old city, so it waited where it knew she must pass, for her to fling herself into its maw. Instead as her laughter is stolen by the wind she jerks sharp left, onto the subducted roof of a manor embedded at an angle in the earth.
She rises, and then the roof ends and she soars over air, the grasping of the thing too close for comfort, and one tentacled limb hooks around a wheel. So she trusts to Heaven and as more hands close around her she leaps—
Now she is falling. Free, but falling still. See her caught in midair. A javelin six feet long in a biker's leathers, hurled by the Mother Church towards Her enemies, slipping through the interceding grasp of the beast below. See how her hair clings close and buzzcut to her skull, how her skin comes away from it gruesomely, how her bone is bare and bleached and beatific.
Born on the feast-day of St. Christopher, who consecrates the road and the traveller, she was taken into the Abbey as an orphan. When she was an empty vessel the elder sisters of the convent poured love for the Name into her, and for ten years she has returned it in the name of the Horizon Initiative.
Look as she hurtles earthward: nestled beneath her bare eyesocket, where one pupil stares blank and sightless, glittering like a star. A sliver of eternity. When she was young she was pierced by a splinter of the True Cross; it lies there still.
So before she touches down and is splayed by gravity across the blank blacktop she calls and something answers, cradling her toward the ground. She crashes down and rolls in the carriagework of a Lamborghini, safely ensconced, and slams the accelerator, bursting forward. The perplexed creature recedes firmly into the rearview, and with her allotted trial passed the Arterial will take her where she needs to be.
She has a ghost to steal.
There's only one master worth having and that's Time, so when he talks his way into Iris Dark's shindig it's for his own amusement. It's not a hard thing to do: when you show up decked out in a gleaming suit, a ten-gallon hat, and a diamond-studded cane, she practically pays for you to come in. He thinks of himself as auxiliary entertainment. The dangerous part is getting back out again.
Obvious fact: you cannot hire out St. Peter's Basilica for literally any amount of money. Subtle corollary: it doesn't follow that the venue is literally priceless. You just have to be able to pay in more than cash. (Though Dark did spend a lot of fucking cash — $8,191 on one-day life insurance per caterer alone. He knows these things.)
So here he is under Michaelangelo's masterwork. It nibbles at the paranoiac in him that no matter where he is, one of those rhapsodic figures is drilling into his back. But he's gotta focus up or this'll be over before it begins. He glances across the room, counting barely three dozen people scattered like ricegrains across the palatial interior. He's here for exactly one of them.
He sidles up to Iris Dark eellike, twirling his cane as he does, gem noisy in the austere space, brash and proud with three hundred and forty-three facets. She turns and makes a moue of annoyance; dressed in her evening best and shown up by this clown. Something gnaws at the back of his mind, but he can't place it. The symmetry of the situation is off? These rankles always mean something, but no point worrying. It'll be apparent in time.
He extends a chubby hand: "Ono Marat, ma'am. I'm in arithmetics."
Dark grins like the cat that's found the mouse. She thinks she's toying with him. "Can't say I've heard of you. And I keep up with all our clients, which makes you competition or merchandise."
"Oh, I'm new 'round these parts. Always been outta place, you know how it is? I wandered on down here thinking there might be something worth buying, what with it being your jubilee. Wouldn't have showed hide nor hair if I'd've known this was the welcome I'd get, though. The Darks don't know hospitality, is how I see it."
She snorts. "Your story is that you just wandered past the planet's best private security and into its most exclusive auction?"
"The usher saw how I was dressed and figured you'd pay to see the getup, lady."
She laughs, pealing like a bell.
"I'll refund whoever paid for you to be here. They've been conned hard."
"Maybe it's all part of my charm. Y'all let your guard down, and then I've gotcha."
Suddenly he realises that Ms. Dark isn't alone. She's flanked by two nondescript men who loom distressingly close, so she can only be seen through the gap between their shoulders, behind which are slung twin rifles. He expected something of that shape; with their presence the polyhedron of their bodies tesselates perfectly.
"Who did you say you were with?"
Her tone is still light, but people who don't answer to it tend to appear facedown in reservoirs.
"Ah, what the heck. You got me. I'm with JOVE, miss."
She raises her eyebrows.
"You gave that up awfully fast."
He leans theatrically on the cane. It's really a lot harder than it looks to stay upright in this pose, but if he falls over he'll die of embarrassment, so he balances just fine.
"They pay me to be memorable, not stealthy. Wouldn't have shown up in these digs if I were up to sneaking."
"Quite."
She tilts her head and they're alone again as he comes upright. Not that at any point they weren't alone. But the symmetry group of their arrangement is all wrong. She interrupts him:
"Thanks for the forthrightness. Secondly: what the fuck do the Joint Occult Venture in Europe want with me?"
He winces. "Please don't spell out the name. It's awful, ma'am, just awful."
"Quit the fucking aw-gosh act."
He shrugs halfheartedly.
"Can't fault a man for trying. You the tip?"
She frowns a "Hm?" back at him, forehead lined with thought.
"I really thought I had you pegged. Someone kindly mailed a warning to our Milan office about shenanigans going down in this city. Trying to rain on your parade. Thought you were calling us in for protection, on the down-low."
"Are you here for a fee, then?"
From anyone else the question would be an expression of disgust, but she seems quite at ease. Iris Dark's not a snake — they at least bite — she's a fucking vulture. He can suppress his irritation until this is done, though, and enjoy the decor.
"Just a warning and a request. There's to be a calling up of dead things, they say."
Iris gestures minutely, a twitched inclination of her head. Suddenly the conversation feels perfectly congruent. He's not sure how, but the warning's out.
"The type that can't be put down, hm?" she murmurs.
He gives her his classic thousand-volt grin and a teasing wink.
"Just the kind. We don't always get along, your hucksters and ours, but there are things buried in your back office that need to stay that way. Someone wants to pull one over you at the final sale."
He gestures expansively to the venue, which has barely begin to fill up. She's expecting at least a hundred people, a who's-who of the sub-Veil world (or those parts of it capable of talking to eachother, at any rate). The last item — well, even his uncanny instincts aren't sure what it is, but he can feel security thickening on his skin like fog. They think it's going to be big. All the prophets and the augurs and the diagrams agree: a thousand futures are foreclosed here. Whatever's on the block needs to go to the right person.
Iris hums contemplatively. "And you're telling me this out of charity?"
Ono rumbles a deep chuckle, and —
Asks of her a favour.
(Everything he told her was almost true.)
Thirty minutes later, he's on the metro, whistling all the way.
(Someone really did mail a warning into the Milanese office of JOVE, which he did read, alongside half their Mediterranean deployment plans.)
There's a detail bothering him, something unaccountably wrong in his bones. A house laid on bad foundations, sinking into the murk.
(And he is with Jove. The other one. Or what remains of Him, anyway.)
But it doesn't matter. Away with showtime jitters.
(Monodromy Marat, who appeared one day, a virgin birth, in a megachurch which cried reverberating from fivefold naves his nature, has no master but Time.)
He doesn't quite know where he's going. But he has a knack, y'see?
(Of course, the Hand do not believe in masters.)
At the birthplace, be told: of the celestial river that girdles the dome of the world, of the stones piled atop each other to reach it, of the sons of the lost city, holy Tjenu, who first furrowed soil. And know also that their hands cupped the nations, reached to the mountains that wall the far waters, and they called themselves gods, golden-bodied, living ceaselessly. Last and most sacred is what was trusted to you alone; that this was a lie, that they were only men, that their bodies were sealed and silent beneath the stone.
They made you to guard against the tyranny of the dead, who do not stir — who must not stir — in their gathering-places, the cities and the palaces of the ghosts, which they called the Valley of the Kings. You and your siblings, seven-by-seven-by-seven, stood ringed as sentries.
They forged you from electrum and bronze, precious priest-sons, enemies of the hated Osiris, the flesh that did not fail, who called all his kin to aid him. When hoary Narmer rose you crushed his skull; it was your hand that pulled undying Akhenaten's sun out of the sky and burned his name from memory. The stars poured across heaven, and your years were many. In time the children of your makers forgot your names and purposes, and your numbers dwindled as the sand swallowed the world you had known. But still you kept to your oath: seal away the dead, lest the living join them.
Strangers poured across the land; strange men, strange gods, all for the burial. The body that was given to you failed, so that all that remained was a spirit of Law, chained by the warders of the earth. The languages grew and branched and died like the papyrus by the Nile, and conquerors were conquered in turn. Even the men who had forgotten you were long dead, and soon, bereft of purpose, you would follow. But —
Out of the ocean an alien people came; new of hue and speech and manner. Their lord found you, sky-robed in brilliant white and blue, crowned with a cap like the waves of the night-sea that bore him. At first sight, you knew his name, blazing in his heart: KING, it said, king of the world between the mountains and the sea by acclaim and rule. He had other names, but they were false: L'Empereur Bonaparte. And he held your spirit, stole it away in clear glass, and carried you across the tides to a foreign shore.
You did not know them. Their alien tongue was like poison to your ears, which craved the honeyed words of dead Memphis. But they hammered and prised and forged and made you a new flesh, brass and jade enamel, and you felt new veins pump quicksilver through tantalum sinew. And last of all they gave you a new purpose.
This nation was vast, stretching over seas of water and grain both, and its heart was a city which was mighty as Thebes was mighty, thick with the treasures of subject peoples. But it was ill: the dead were unquiet, and every manner of geist and ghoul preyed on its people. So your new master set you to work on your old purpose.
For him, and his successors, you hunted haunting things, strong of arm and firm of brow. You dwelled among decay, in the catacombs of Paris. As the Empire crumbled around you, your duty fell from master to master, and you thought nothing of it, for no matter who showed you the way your enemy was unchanged. Under the Concert of Europe you stalked strigoi, and for the Entente you purged artillerist-revenants. Finally you came to your last master, who rules you still: JOVE, named for the god of some passing empire — only another spindrift prince.
Now, they send you to his capital, seeking the stink of a soul that clings to life. You know that in this age the world seethes with crawling things. Why they aim you this way rather than another barely registers as a question. There is a traitor in the city, they tell you, or an enemy. The shade must not fall into their hands. Better for it to die in your embrace. But these are meaningless errata. Only one thing matters to you.
There are things above the Earth that ought to be below it.
First was the graveyard.
The quaint church with the cobbled walls and the rough pews grew up around it, enclosing the bodies, drinking deep of the departed to raise an altar above them. The ground was made consecrated. But this was only a latter-day emendation: first was the graveyard, first were the dead.
Spreading trees shed shade over the tombs, humble all. Here, just beyond the limits of the old city, were buried nameless peasants and plague-struck children of a dozen generations. The stones were simple, slabs of rock rough-hewn and etched with small names. Toward the centre was a grave that was not a grave, little more than a rise in the soil.
To the graveyard come a soldier, a charlatan, and a sentinel.
The charlatan kneels over the mound of soil and pours a libation for the man beneath it: the stolen blood of St. Christina, Mirabilis, who imitated her Lord and laughed at death. The ground shifts, disturbed, and a figure emerges. His brow is strong, his nose aquiline, his face twisted into the customary Roman sneer, even as he rises from Limbo.
"Qui estis? Ubi sum?"
His voice is of command. Here, in this city, his words are a supreme power. Best, then, not to let him speak. Ono smiles to himself and snaps his fingers. A spray of sparks lends life to a censer in his left hand, and the smoke spears outward, chaining the spectre, who vanishes into it with a cry:
"Faciam ut hoc paeniteat!"
Then he stands, knees aching under the strain, and turns toward the old gate that guards the sepulchres. By the alignment of the sun, that wind whispering at his back, the wispy clouds in the sky he is quite sure this was the time —
A snakelike automobile low to the ground screeches to a stop outside the gate, appearing from nowhere, and vanishes into uprising billows of smoke. Out of the ember glow steps a woman whose face is half-torn away. Stubbled hair clings to her scalp where the skull does not show through. Her eyes flick over him and the censer.
"Give me the ghost." rules the soldier, after a moment of judgement. In the sudden silence she does not need to shout, though she is halfway across the yard.
Ono smirks and takes his hat in one hand. "Hello, darling. You with the Initiative? Because —"
"Give me the ghost." She's only a few strides from him. Her hand nestles comfortably in her jacket.
He frowns. Something is wrong with her shape. The stars do not love easily around her. "Not opposed to that, s'long as you keep it from —"
Predictably she pulls the gun and he flings his arms up, censer carefully strung across the knuckles of his right hand.
"Give me the ghost. This city belongs to the bride of Christ. I will not ask again."
"Ah, fuck it. Take the darn thing. But know I charge interest. And, oh, watch out."
He tosses the censer and as she catches it something comes thumping behind her. She hears the crash of the fence and turns —
For a moment, she mistakes it for a man. But the glamour is weak, meant for more credulous eyes than hers, and it fades as mist to reveal truth.
The sentinel is nine feet of brass and steel, sculpted lovingly by French modernists into a figure of planar muscle, with the hooves and head of a bull on a man's body: a Futurist minotaur. Its eyes burn, like a flame that flickers beneath the smoke, after the bombs have fallen. Now that corded sinew, false though it is, drives it thundering forwards.
She calls up her Ducati and accelerates, feeling the wind rush and pulling her body low to the frame. A gust is the only indication that its fist has just missed her eggshell skull and then she's away, zigzagging through backways, and the shudder of its steps is close behind. Soon she races straight into a particular whitewashed wall and thence into Rema, the uncity disjoint from this one.
As she looks back through the collapsing portal a hand thrusts in. The rift tears open and it steps through. For a second their gazes meet. Then she turns ahead, and it gives chase. Together they plunge into the deep.
Back in the cemetery, among the churned earth, Ono is already running. Between heaving breaths he activates his contingencies. Around the city people dredged — from armouries, obituaries, libraries — abandon their lives, wives, children, and set off. It wasn't meant to follow her through. From here, nothing will go as he planned.
Now, it begins.