:root {
/* header measurements */
--header-height-on-desktop: 10rem;
--header-height-on-mobile: 10rem;
--header-h1-font-size: clamp(2rem, 5vw, 2.8125rem);
--header-h2-font-size: clamp(0.875rem, 3vw, 0.9375rem);
--logo-image: url("https://nu-scptheme.github.io/Black-Highlighter/img/logo.svg");
}
#header {
--search-textbox-text-color: var(--swatch-secondary-color);
background: none;
}
#header::before {
content: " ";
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0.75rem;
background-image: var(--logo-image);
background-repeat: no-repeat;
background-position: center 0;
background-size: auto calc(var(--header-height-on-desktop) - 1.5rem);
opacity: 0.8;
pointer-events: none;
}
#header h1,
#header h2 {
margin: 0;
padding: 0;
width: 100%;
height: var(--header-height-on-desktop);
display: flex;
align-items: center;
justify-content: center;
display: flex;
align-items: center;
justify-content: center;
}
#header h1 a,
#header h1 a::before,
#header h2 span,
#header h2 span::before {
margin: 0;
padding: 0;
z-index: 0;
display: block;
text-align: center;
}
#header h1 {
z-index: 1;
}
#header h1 a::before,
#header h1 a::after {
content: var(--header-title);
}
#header h1 a::before {
color: rgb(var(--swatch-text-tertiary-color));
z-index: -1;
-webkit-text-stroke: 0.325rem rgb(var(--swatch-text-dark));
}
#header h1 a::after {
color: rgb(var(--swatch-headerh1-color));
z-index: 1;
}
#header h2 {
z-index: 0;
text-transform: uppercase;
pointer-events: none;
}
#header h2 span {
margin-top: calc(var(--header-height-on-mobile)/2 + var(--header-h1-font-size)/2 - 2em);
}
#header h2 span::before,
#header h2 span::after {
--wght: 600;
content: var(--header-subtitle);
position: absolute;
left: 50%;
transform: translateY(-50%) translateX(-50%);
width: 100%;
text-align: center;
}
#header h2 span::before {
-webkit-text-stroke: 0.25rem rgb(var(--swatch-text-dark));
}
#header h2 span::after {
color: rgb(var(--swatch-headerh2-color));
z-index: 1;
}
#search-top-box form[id="search-top-box-form"]:not(:focus-within) input[type="text"] {
color: rgba(0, 0, 0, 0);
}
@media (min-width: 36rem) {
#login-status {
flex-grow: 1;
left: 3%;
right: initial;
}
#login-status::before {
--mask-image: none;
background-color: transparent;
}
#login-status:not(:focus-within) {
color: rgb(var(--login-line-divider-color));
-webkit-user-select: initial;
-moz-user-select: initial;
-ms-user-select: initial;
user-select: initial;
}
#login-status #account-topbutton,
#login-status:not(:focus-within) #account-topbutton {
--clip-path:
polygon( 0 0, 100% 0, 100% 100%, 0 100% );
background-color: rgba(var(--login-arrow-color), 0);
}
#login-status #account-topbutton::before{
--clip-path:
polygon( 30% 35%, 70% 35%, 50% 60%, 50% 60% );
--mask-image: initial;
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(var(--login-arrow-color), 1);
-webkit-clip-path: var(--clip-path);
clip-path: var(--clip-path);
}
#login-status #account-topbutton::before,
#login-status:not(:focus-within) #account-topbutton::before,
#login-status:not(:focus-within) #account-topbutton:hover::before {
--clip-path:
polygon( 30% 35%, 70% 35%, 50% 60%, 50% 60% );
--mask-image: initial;
}
#login-status:not(:focus-within) #account-topbutton::after {
display: none;
}
#login-status:not(:focus-within) *:not(#account-topbutton):not([href*="account/messages"]) {
--clip-path:
polygon(
0 0,
100% 0,
100% 100%,
0 100%
);
pointer-events: all;
-webkit-clip-path: var(--clip-path);
clip-path: var(--clip-path);
}
#login-status:not(:focus-within) *:not(#account-topbutton):not(#account-options):not([href*="account/messages"]) {
opacity: 1;
}
#login-status #my-account {
--wght: 300;
}
#account-options {
background: var(--gradient-header);
}
#search-top-box {
top: 1.5em;
right: 3%;
background: rgba(var(--search-focus-textbox-bg-color), 0.4);
}
#search-top-box:focus-within ~ #login-status {
opacity: 1;
}
#search-top-box::after {
transition:
background-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
-webkit-clip-path 150ms cubic-bezier(0.4, 0, 0.2, 1);
transition:
background-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
clip-path 150ms cubic-bezier(0.4, 0, 0.2, 1);
transition:
background-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
clip-path 150ms cubic-bezier(0.4, 0, 0.2, 1),
-webkit-clip-path 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
#search-top-box:not(:focus-within)::after {
--clip-path:
polygon(
0 0,
100% 0,
100% 100%,
0% 100%
);
background-color: rgba(var(--search-icon-bg-color, --dark-accent), 1);
-webkit-clip-path: var(--clip-path);
clip-path: var(--clip-path);
}
#search-top-box:not(:focus-within):hover::after {
--clip-path:
polygon(
0 0,
100% 0,
100% 100%,
0 100%
);
background-color: rgb(var(--search-icon-hover-bg-color));
}
#search-top-box form[id="search-top-box-form"]:not(:focus-within) {
max-width: var(--search-width);
}
#search-top-box form[id="search-top-box-form"]:not(:focus-within) input[type="text"] {
max-width: var(--search-width);
padding: 0 var(--search-height) 0 1em;
outline-width: 0;
background-color: rgb(var(--search-focus-textbox-bg-color), 0.35);
color: rgba(var(--search-textbox-text-color), 0.4);
cursor: pointer;
}
#search-top-box form[id="search-top-box-form"]:not(:focus-within) input[type="submit"],
#search-top-box form[id="search-top-box-form"]:focus-within input[type="submit"] {
pointer-events: all;
border: none;
}
}
#page-title::after,
.meta-title::after,
#page-title::before,
.meta-title::before {
content: "";
flex-grow: 1;
height: 0.0625rem;
background: rgb(var(--swatch-primary));
}
#page-title::before,
.meta-title::before {
margin: auto 1.25rem auto auto;
}
@supports(display: grid) {
:root {
--sidebar-width-on-desktop: calc((var(--base-font-size) * (14 / 15)) * 19);
--body-width-on-desktop: 45.75rem;
}
@media only screen and (min-width: 769px) {
#side-bar .close-menu {
display: block;
position: fixed;
top: 0.5rem;
left: 0.5rem;
width: 3rem;
height: 3rem;
background: unset;
opacity: 1;
pointer-events: all;
z-index: -1;
}
#side-bar .close-menu img {
color: transparent;
}
#side-bar .close-menu::before,
#side-bar .close-menu::after {
content: "";
box-sizing: border-box;
position: fixed;
display: block;
top: 0.5rem;
left: 0.5rem;
width: 3rem;
height: 3rem;
padding: 0;
margin: 0;
text-align: center;
pointer-events: all;
cursor: pointer;
transition:
opacity var(--sidebar-transition-timing);
}
#side-bar .close-menu::before {
--mask:url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' id='Hamburger' x='0' y='0' baseProfile='tiny' overflow='visible' version='1.2' viewBox='0 0 32 32' xml:space='preserve'%3E%3Cpath d='M4 10h24c1.1 0 2-.9 2-2s-.9-2-2-2H4c-1.1 0-2 .9-2 2s.9 2 2 2zm24 4H4c-1.1 0-2 .9-2 2s.9 2 2 2h24c1.1 0 2-.9 2-2s-.9-2-2-2zm0 8H4c-1.1 0-2 .9-2 2s.9 2 2 2h24c1.1 0 2-.9 2-2s-.9-2-2-2z'/%3E%3C/svg%3E");
z-index: -1;
background-color: var(--toggle-icon-color, rgb(var(--sidebar-links-text))) !important;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-repeat: no-repeat;
mask-repeat: no-repeat;
-webkit-mask-position: 50% 50%;
mask-position: 50% 50%;
-webkit-mask-size: 60%;
mask-size: 60%;
}
#side-bar .close-menu::after {
z-index: -2;
background-color: var(--toggle-button-bg, rgb(var(--sidebar-bg-color))) !important;
border-radius: var(--toggle-roundness, 50%);
border: var(--toggle-border-color, rgb(var(--sidebar-links-text))) var(--toggle-border-width, 0.25rem) solid;
}
#side-bar:focus-within .close-menu,
#side-bar:not(:has(.close-menu:hover)):not(:focus-within):hover .close-menu {
pointer-events: none;
}
#side-bar:focus-within .close-menu::before,
#side-bar:focus-within .close-menu::after {
opacity: 0;
pointer-events: none;
}
#side-bar:not(:has(.close-menu:hover)):not(:focus-within):hover .close-menu::before,
#side-bar:not(:has(.close-menu:hover)):not(:focus-within):hover .close-menu::after {
opacity: 0;
pointer-events: none;
}
#side-bar {
display: block;
position: fixed;
top: 0;
left: calc(var(--sidebar-width-on-desktop)*-1);
z-index: 10;
transition:
left 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
height: 100%;
overflow-y: auto;
overflow-x: hidden;
margin-top: 0;
}
#side-bar:focus-within {
left: 0;
}
#side-bar:not(:has(.close-menu:hover)):not(:focus-within):hover {
left: 0;
}
#side-bar .side-block {
margin-top: 1rem;
background-color: rgb(0, 0, 0, 0);
border-radius: 0;
border-left-width: 0px;
border-right-width: 0px;
}
#main-content::before {
content: "";
display: block;
position: fixed;
top: 0;
right: 0;
z-index: -1;
opacity: 0;
transition:
opacity 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms,
width 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
margin-left: var(--sidebar-width-on-desktop);
background: rgba(var(--swatch-menubg-black-color), .3) 1px 1px repeat;
padding-right: 0;
width: 100%;
height: 100vh;
pointer-events: none;
z-index: 99;
}
#side-bar:focus-within ~ #main-content::before {
width: calc(100% - var(--sidebar-width-on-desktop));
opacity: 1;
pointer-events: all;
}
#side-bar:not(:has(.close-menu:hover)):not(:focus-within):hover ~ #main-content::before {
width: calc(100% - var(--sidebar-width-on-desktop));
opacity: 1;
pointer-events: all;
}
@supports (-moz-appearance:none) and (background-attachment:local) and (not (-moz-osx-font-smoothing:auto)) { #side-bar {
padding: inherit;
} }
#content-wrap {
display: flex;
flex-direction: row;
width: calc(100vw - (100vw - 100%));
min-height: calc(100vh - calc(var(--final-header-height-on-desktop, 10.125rem)));
flex-grow: 2;
height: auto;
position: relative;
margin: 0 auto;
max-width: inherit;
}
#main-content {
width: 100%;
position: initial;
max-height: 100%;
padding: 2rem 1rem;
max-width: var(--body-width-on-desktop, 45.75rem);
margin: 0 auto;
}
#page-content {
max-width: min(90vw, var(--body-width-on-desktop, 45.75rem));
}
@supports (-webkit-hyphens:none) {
#side-bar {
transition:
left 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms,
padding-right 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms,
background-color 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
padding-right: 0;
background-color: rgb(0, 0, 0, 0);
pointer-events: all;
overflow-x: visible;
overflow-y: visible;
z-index: 999;
}
#side-bar::-webkit-scrollbar {
opacity: 0;
-webkit-transition: opacity 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
transition: opacity 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
}
#side-bar .close-menu::before {
z-index: 999;
}
#side-bar .close-menu::after {
z-index: 998;
}
#side-bar:hover .close-menu::before,
#side-bar:hover .close-menu::after {
opacity: 0;
}
#side-bar:hover {
left: 0;
background-color: rgba(var(--swatch-menubg-color), 1);
padding-right: 0;
}
#side-bar:hover::-webkit-scrollbar {
opacity: 1;
}
#side-bar:hover~#main-content::before {
width: calc(100% - var(--sidebar-width-on-desktop));
opacity: 1;
pointer-events: all;
}
}
}
}
猎者与猎物
德国埃内佩塔尔的凌晨,只有一辆汽车在马路上行驶。Norbert刚值完本地医院的夜班。疲倦……还有一点困意袭来,他奋力集中注意力到眼前的路上。在此之前他已喝完了一杯咖啡,但这时他已喝了太多,咖啡对他没什么效果了。他接着沿路开,旅程安静而孤独。看来所有人都已经睡着了,或者……管他们晚上做什么呢。这时间应该真没人在外面了。说实话,没人愿意这样。不过至少他不用担心引起不必要的关注。
然而,他用余光看见了什么,打断了他的思绪。路边有个人影正悠闲地走着。
“咦?!……这时候怎么会有人散步?”Norbert边看边这么想着。就在这时,大约是被迎面而来的车辆的声音惊到了,人影在路灯前停了下来,转头看向车。Norbert停下了车。在车灯和路灯的光下,Norbert看清楚了这个人影。
那是一个不大整洁的年轻白人男子,大概20岁出头,穿着深绿色连帽衫和牛仔裤。男子将胳膊靠在脸上,像是在试着遮挡车头灯直射的眩光。Norbert想问问那个人在做什么,于是关掉了车头灯。为了以防万一,他在关闭窗户之前锁上了门。
“你好啊,”他说,“这么晚了,你在外面做什么?”
男子端详了一会儿Norbert和他的车,然后回答道:
“其实我是迷路了,”他以略显疲倦但仍然清醒的口吻讲道。
男子凝视着Norbert,似乎是等着他采取行动。
Norbert也看着男子。他略略考虑了一下要不要让他上车。平时他会仔细思量一下,但看着这青年可怜兮兮的样子,他估计没什么威胁。况且,他作为医生的职责是确保人们无虞,尤其是现在。
“你想搭便车吗?”Norbert问道。
男子看起来很疑惑。
“呃——我没事的,先生,我——”
“听着,孩子,现在外面不安全,”Norbert的语气严厉起来,“你想在哪儿停我就在哪儿把你放下。”
男子想了一会儿,答道:
“好的,多谢。”
Norbert微笑着打开车门,让男子坐在副驾驶座上。车出发时,男子握了握他的手,再次向Norbert表示感谢。当他们握手时,Norbert因自己手上的一个小刺打了个激灵。他看着工作时手上而缠着绷带的手指。
肯定是擦到了,他对自己说,妈的,下次可要小心点。
他耸了耸肩,带着这位新乘客驶离。
“那么,你想去哪儿呢?”
男子坐在座位上,双手交叉摸着自己的手肘,似乎在努力保持温暖。
“其实我得找个地方过夜。我不是本地人,您看。”Norbert在心里叹了口气,听着又是个粗心的游客。
“我们会找到解决办法的。好了,你叫什么名字?”Norbert问道。
“Maurice。”男子轻声回答。
“那你是怎么迷路的?”
“嗯,我和几个熟人一起来这里旅行,早些时候我们去参加一个派对。我喝点酒就睡着了。后来我迷糊着醒来,发现他们已经走了。所以我现在在这儿困住了。真是一帮好朋友呢,是不?”
Norbert轻笑一声表示肯定。
“听着——你可以在我家过夜。”
男子看着像是在考虑这个提议。
“当真?!”Maurice疑惑地问道。
“当然了。只要别惹麻烦咱就没事,懂了吗?”
“好的先生。我不会惹麻烦的,真是太感谢您了。”
旅途中,两人接着聊了聊他们的日常。车开了一段时间后,Maurice问道:
“请问,您说现在外面不安全是什么意思?”
Norbert缓缓转过身,不可置信地看着他。
“你没注意到外面没有人吗?”
“呃,现在挺迟了,所以——”
“是的,不过你应该听说过有杀手啊。”
Norbert开始解释情况。在过去的8个月里,附近的森林里发现了几人死亡。尸体被肢解而且吃了一部分。警方起初怀疑是什么人犯下的暴行,但他们死亡的情状与野生动物袭击相似。况且,这附近有狼;就在两周前,一只犯狂犬病的狼袭击了两名在森林中散步的游客后被当局压制了。
“嗯,这就是为什么我避开了森林。但已经有人在扑杀狼群了,不是吗?要不然杀戮就不会到现在再没发生了。”Maurice回答。
“是的,到现在是这样。”
“那为什么大家还在担心呢?”
“因为说是狼根本是无稽之谈。我觉得是有些别的什么在杀人。”Norbert驳道。
“所以说不是一群吃人的狼干的……?”Maurice疑惑地问道。
“那是官方说法。你可以问当地人,他们会告诉你不同的版本。我们有许多人都相信这个小镇潜伏着一个怪物。有个叫Lars的农民说,几年前的一个晚上,他被鸡舍里传来的声音吵醒了。当他离开房子去调查时,他看到有人从鸡舍里离去。”
他停下来想了想。
“离去,这么说不准确。他说它是从门外穿过——就像一个幽灵。关键在于——他告诉我它看起来像是人,但他立刻觉得有什么不对劲。突然,那东西把头转向了他的方向。他没来得及看到那坏东西的脸,但他知道那家伙正看着他,之后那家伙爬进了森林。Lars跑到鸡舍里,发现他养的几只鸡被搞得一团糟,地上全是羽毛和骨头。他向当局投诉,当局说是野生动物侵袭,但Lars相信自己眼见为实。显然那天酒吧里的还有几个人也在森林里看到了类似的人影。我们开始叫它食尸鬼。杀戮开始时,我们确信是它干的。”
他回头看向Maurice,他脸上浮现出不相信的神色。
“行,我知道你在想什么:是有人喝醉了酒,然后编造了这个故事来给酒吧打广告……我倒不是说Lars不酗酒,但我认识这人有一段时间了。当时,Lars是东德的一名护林员。这个人很了解野生动物,所以要有什么东西让他如此肯定的话——它肯定很可怕。”
他透过后视镜看着他的乘客,Maurice只是默默地看着他。Maurice低头看了看自己的手,放在膝盖上轻拍。Norbert吞了口唾沫,抓紧了方向盘。
“我吓到你了,是吗——对不起啊,呵呵。”
“没事的,先生。”Maurice平静地回答道。“不过还是谢谢您的提醒,您救了我。”
很快,车子就停在了一间农舍样式的小屋前。
“喏,到我们到了。别太拘束,宾至如归。”
他们进到客厅里,Maurice坐下。
“你想喝点什么吗?”Norbert问他的客人。
Maurice看着Norbert,嬉笑了一下。
“朗姆酒怎么样?”
Norbert叹了口气,他还真敢。
“嗯嗯——很滑稽。但老实说,说了这么多,我也需要一杯。”
他离开客人走进厨房,拿出一瓶朗姆酒,将浓郁的红棕色液体倒进两个玻璃杯中。一边说着,一边飞快地瞥了客人一眼。
Maurice坐在座位上,专心观察他橱柜上的小饰品。
“完美!”他心里想。
他打开抽屉,拿出一个小玻璃瓶。Norbert摸摸手中的瓶子,阅读着标签和警告:
苯二氮䓬类,真的很好用。
他小心地往其中一个杯子里倒了一小剂,抑制不住对下面将发生的事的兴奋。这可怜的傻瓜很快就会被迷晕。然后他会把这傻瓜锁在他的地下室里好好享受一番。
之后,他就把尸体丢在林子里。多年来,他已经熟练地把他的杀戮掩盖成动物的攻击和捕食。警方则会说又是个流浪汉或者来旅游的瘾君子,在树林里迷路之后被野生动物杀死了。
然后这里的人们就开始吓唬自己,觉得食尸鬼又来了。
医生的脸上浮现出笑容,他向两个玻璃杯里丢进冰块,然后走回客厅。
他为天真的客人提供这致命的鸡尾酒,而客人舒适地坐在他的沙发上,不知道下面要发生什么。
“来——干杯。”
Maurice接过杯子举到嘴边。Norvert嘬了一小口,津津有味地看着这个男孩,就像秃鹰看着垂死的动物一样:等待它踉跄,然后盛宴开始。这将是他遗体名册里又一个受害者。
但之后的事出乎他所料。
Maurice没喝那杯朗姆酒。Maurice把酒举开,注视了一会儿后看向Norbert道:
“你看——苯二氮䓬加酒,我不是很喜欢呢。”他嘲讽地说道。
这句话像货车一样碾倒了他。Maurice似乎察觉到他愈发强烈的恐惧,将玻璃杯放在咖啡桌上,平静地站了起来。
“我——我不明白。”Norbert结结巴巴地意识到事实已经掩盖不住了。
他尽了最大的努力,偷偷地摸出身后的弹簧刀。
“你明白的。”Maurice说出这几个字,走向医生。
Norbert迅速拔出刀刃,很快在对方的脖子上划出一个大洞。
就像抽刀断水一样,伤口愈合的速度几乎和产生时一样快。Norbert盯着Maurice,完全糊涂了。之后他低头一看,恐惧地发现洒在地板上的鲜血开始朝着Maurice流回去,仿佛它有意识,之后似乎又钻回了Maurice的腿。
Norbert现在明显惊慌失措,他试图再次攻击,却发现Maurice抓住了他的手臂。只消一下,他的前臂就被Maurice一握握得粉碎,他丢下刀,痛得尖叫起来。Maurice随后将他推到墙上。
Norbert瘫倒在地,对方走向他时,他紧紧地抓着他受伤的肢体。Norbert惊恐地看着这个男人,现在离他只有几英尺远。他用穿透灵魂的眼睛盯着他,然后不祥地说:
“自业自得。”
说这话的时候,这戴着兜帽的男子化作了幽灵般的薄雾,Norvert只能看出那是血从Maurice的衣服里流出来。雾气像黄蜂一样笼住医生,他开始感到全身像针扎一样,但很快意识到那是皮肉撕裂的感觉。他痛苦地尖叫,但很快就被冲进他嘴里的雾掩盖。只消几秒他踉跄起来。随后,这雾又退回到地板上褪下的衣物里,变回人形,只剩下Norbert的残体。
Maurice对自己的工作很满意,走到尸体旁边。他蹲下来检查口袋,拿出一捆钥匙。之后他走到茶柜旁,用手指抚摸着粘在上面的饰品,然后将橱柜推到一边,一扇隐藏的门露了出来。这把锁看起来经常被使用。开门后他打开电灯开关,照亮了通往另一扇门的楼梯。走下楼梯,他把耳朵贴在门上,听见另一边传来极微弱的啜泣声。他解了门锁,任由它吱吱作响着开启,然后小心翼翼地走进去。
里面是一个衣衫褴褛的少女,腿用铁链拴在一张看着就很不舒服的床旁边的金属杆上。他看得出她脸上的恐惧,所以他慢慢地走近,以免吓到她。靠得更近后,他解开她的束缚,手捧她满是泪水的脸来安慰她。
她往后缩了缩。他向她保证道:“不会有事的,亲爱的。你现在安全了;你自由了。”
2008年8月12日,有人疯狂拨打110后,警方突袭了Norbert Glenn博士的房产,看见地下室里有许多身体部件和手术用具。
埃内佩塔尔的食尸鬼The Ghoul of Ennepetal应对1999至2008年发生的16起恐怖谋杀负责。
然而,警方无法解释Glenn的失踪,也对15岁的Anna Dietrich提供的目击者证言感到困惑。警方素描师设法绘制了拯救Anna的人的画像。
他被认为是20岁的Maurice Fischer。6个月前他因登山事故身亡。
只在现场发现了他的骨头和破碎的衣物。