
SCP-2951의 붕괴된 출입구.
특수 격리 절차: 비인가 인원의 레몬 채석장 접근은 금지되어 있다. 지역 법 집행관으로 위장한 재단 인원은 기지 주위로 접근을 통제하여야 한다. 통제 구역을 침범한 인원들은 적절한 기억소거 처치 후 지역 당국에 넘겨야 한다.
SCP-2951로의 탐사 임무는 현재 금지되어 있다.
설명: SCP-2951은 인디애나 주 거스리 근처에 위치한 버려진 석회암 광산이다. 이 광산은 1944년에 발생한 사건 전까지는 B.G. 호드리 광업 조합의 소유였다. 채석장의 외딴 장소와 황폐화된 구조로 인해, 민간인의 출입은 적었다. 이에 따라, 이 구역은 대체로 침입받지 않았다.
SCP-2951의 내부는 비정상적 시공간 변칙 현상들의 영향 하에 있다. 탐사 팀들은 또한 SCP-2951 내부의 알려지지 않은 변칙 개체들에 대해 보고한 바 있다. 이 개체들은 1944년 사건과 관련이 있는 것으로 보인다. 사건에 대한 자세한 정보는 이하 서술되어 있다.
SCP-2951의 주 출입로는 1944년 사건 당시 붕괴되어 접근이 불가능하다. 현재, 부 출입로인 황폐화된 창고 건물 내의 수직갱을 통해 접근이 가능하다.

SCP-2951의 부 출입로인 수직갱이 위치한 건물.
부록 2951.1: 1944년 사건과 붕괴
주석: 이하의 정보는 케르비어의 관리자이자 세계 오컬트 연합의 정보원이었던 J. 하워드 반즈의 개인 사무실에서 가져온 것이다. 그의 사후 재단은 그의 자산 다수를 차지했으며, 그 중에는 분실된 것으로 간주되었던 1944년 레몬 채석장 붕괴에 관한 정보도 있었다.
1944년 8월 23일 레몬 채석장 지하의 지진 활동 이후, 채석장 감독관들은 석회암 광산 내부 구조물들의 파괴 정도를 알아보기 위해 탐사 팀을 파견했다. 3시간 뒤 귀환한 첫 번째 팀은 주요한 접근 터널이 붕괴했음을 알렸다.
심사숙고 이후, 채석장 감독관들은 파편 더미를 치우기 위해 더 큰 팀을 꾸렸다. 이 노동자들은 붕괴 지점까지 내려가, 더 큰 기계를 가져오기 위해 낙석들을 길 밖으로 치우기 시작했다. 그러나 이 시도 도중 여진이 발생했고1, 접근 터널 정리조 뒤편의 터널이 붕괴하였다.
이후 수 시간 동안, 장애물 양측에서 파편 더미를 치우고 정리조를 구출하기 위한 작업이 진행되었다. 동부 표준시 오후 4시경, 장애물이 제거되었고 첫 번째 정리조가 광산에서 구출되었다. 이들은 주 접근 터널은 여전히 막혀 있으나, 광업 조합에서 만든 바 없고 기록되어 있지도 않은 새 터널이 이차 지진 활동으로 드러났음을 알렸다. 이 터널에 대한 정보를 수집하기 위해 다른 작은 팀이 급파되었다.

주 접근 터널의 장애물. 케르비어 사건 기록에서 가져옴.
두 번째 터널은 매끄럽게 굴착되었으나 비자연적인 방법이 사용되지 않았다고 묘사되었으며, 약간의 내리막을 이루며 북서쪽을 향하고 있었다. 조합의 감독관들은 이것이 아마도 광산을 구상할 당시(B.G. 호드리가 구매하기 전에) 굴착된 원래의 접근 터널이며, 단지 적절히 기록되지 않았을 뿐이라고 추정하였다. 이 접근 터널이 본래의 막힌 터널 주위로 연결되기를 바라며, 채석장 감독관들은 23명으로 구성된 새 팀을 꾸렸다. 그들의 임무는 이 두 번째 터널을 통해 장애물의 뒤로 이동해, 그곳의 구조를 확인하여, 터널을 뚫기 위해 폭발물의 사용이 필요한가를 판단하는 것이었다.
이 팀이 광산으로 파견된 뒤 주목할 만한 사항은 기록되지 않았다. 얼마간 이후 광산으로 향하는 출입 터널을 붕괴시킬 정도로 강력한 세 번째 지진 활동이 있었다. 그 뒤 사흘간, 지상의 팀들은 통로를 덮고 있는 돌무더기를 치우려 시도했으며, 감독관과 추가 노동자들은 유지 건물 내의 부 출입로인 수직갱에 설치된 전화 케이블선을 통해 팀과 연락을 시도했다. 셋째 날 저녁, B.G. 호드리의 관리자들이 근방의 광업 조합에 도움을 요청하려 준비하는 동안, 알려지지 않은 개체가 부 수직갱에서 나타났다. 이 사건에 대한 유일한 기록은 루이스빌에 위치한 B.G. 호드리 사무실에 보내진 다음 전보가 유일하다.
26 8 1944
광산 폐쇄됨. 터널 붕괴된 상태임. 23명 실종됨.
그들 중 하나가 수직갱으로 올라옴. 다시 던져 넣었음. 뭔가 잘못됐음.
GPE
부록 2951.2: 1998년 사건
1998년 6월 4일, 제81기지의 남쪽에서 작은 규모의 지진 활동이 감지되었다. 재단 지질학자들이 사건 관련 정보를 더 수집하기 위해 파견되었으나, 활동의 정확한 위치를 파악하는 데에는 실패했다. 여진에 대비하기 위해, 몇 개의 지진계가 이웃 마을들에 배치되었다.
6월 16일, 지역 경찰이 버려진 레몬 채석장에 친구들과 함께 침입한 15세의 학생, 테빈 네이피어가 실종되었음을 알렸다. 네이피어의 흔적을 찾기 위해 팀들이 수색을 개시하였으며, 이로 인해 채석장 내에 위치한 황폐한 유지 건물 밑에서 현재는 개방된 부 출입로인 수직갱이 발견되었다.

유지 건물 밑의 부 출입로인 수직갱.
네이피어의 시신을 발견할 것으로 예상하며, 탐사 및 구조 팀은 수직갱으로 내려갔다. 그러나, 수직갱이 가파른 까닭에 첫 시도는 성공적이지 못했으며, 더 긴 안전 장비가 갖춰질 때까지 팀들은 다시 불러들여졌다. 이 시점에서 구조 팀은 수직갱의 깊이에 대한 어떤 기록도 가지고 있지 않았으며, 따라서 자체적으로 그 깊이를 240m 이하로 추정했는데, 이는 기존에 갱도의 깊이가 120m 이하라고 기록된 것과는 달랐다.
구조 팀이 마침내 접근 수직갱의 밑바닥에 다다랐음에도 불구하고, 네이피어의 시신은 발견되지 않았다. 그러나 조원들은 급격한 불안감과, 그들 주위의 광산에 대한 이상한 느낌을 보고하였다. 이 탐사 도중, 5명으로 구성되었던 구조 팀은 이따금 팀이 7~8명으로 구성되었다고 보고했으며, 조원 하나는 그들이 "황금을 찾아" 광산 속에 있다고 보고하였다. 광산 내에서 43분을 보낸 뒤, 팀은 음성 소통을 중지했다. 지상의 팀들은 황급히 구명줄을 되감았으나, 본래보다 더 많은 줄이 되감겨 나오는 것을 발견할 뿐이었다. 400m가량의 구명줄을 되감은 끝에 윈치는 작동 불능이 되었다.
이 시점에서, 재단이 레몬 채석장에서의 변칙적 활동 가능성을 통보받고 연방 탐사 및 구조 팀으로 위장하여 구조 업무를 인계받았다. 더 강력한 윈치 장비를 통해, 재단 인원들은 5명 중 아직 구명줄에 매달려 있던 2명을 구조하는 데 성공하였다. 첫 번째로 구조된 아벨 파커는 지상으로 나오자마자 급격한 불안감과 폭력성을 보였으며, 자신이 아직 광산 속에 있다고 확신하였다. 두 번째로 구조된 그레그 해밀턴은 처음에는 혼수 상태에 빠진 것으로 생각되었으나, 지상에 올라온 지 이십 분쯤 뒤 이해할 수 없는 말을 하기 시작했다. 그러나, 초기 구조 팀은 해밀턴이 그의 목소리가 아닌, 아직 구조되지 못하고 광산 속에 있는 제레미 리빙스톤의 목소리로 말하고 있음을 확인하였다. 두 명 모두 진정제 처치 후 분석을 위해 제81기지로 이송되었다.
다른 구명줄 셋 중 둘은 끝이 깨끗하게 잘린 채로 되돌아왔다. 세 번째 구명줄은 거칠거칠한 돌에 끊긴 것으로 생각되었으며, 끝부분 13m는 인간의 혈액에 젖어 있었다.
파커와 해밀턴의 구조 후, 재단 인원들은 이 사건에 관계된 모든 비재단 인원에게 기억소거제를 처치하는 한편, 광산 내에서 일어난 사건에 관한 커버 스토리를 제작하였다. 제81기지는 즉시 광산을 SCP-2951로 지정할 것을 요청했으며, 이는 분류 위원회에 의해 6월 18일자로 통과되었다.
부록 2951.3: 탐사 기록
주석: 1998년 6월 16일 사건 이후, 기동특무부대 트로터-5 "지옥의 영웅들"이 SCP-2951을 조사하기 위해 파견되었다. 그들의 임무는 SCP-2951의 변칙적 성질을 조사하는 한편, 실종된 상태인 탐사 및 구조 팀 셋과 테빈 네이피어를 찾는 것이었다. 4인으로 구성된 팀은 부 출입로인 수직갱을 통해 SCP-2951에 입장했으며, 광산 내에서 40분 이상 있지 말 것을 지시받았다.

기동특무부대 트로터-5에 의해 촬영된 사진.
[기록 시작]
T5-1: 마이크 켜짐.
T5-4: 나도.
T5-2: 체크했어.
T5-3: 여기도.
T5-1: 좋아. 내려가자. (멈춤) 여기 조심해. 거기 발 디디지 말고, 미끄러워.
T5-3: 너네 우리 여기서 미끄러지면 그냥 두고 가진 않을 거지? (희미한 웃음 소리, T5-3이 웃음) 우리 자료 말야.
T5-2: 빨리 와 케빈, 시간 없어.
T5-3: 알았어, 알았어.
(T5 팀이 갱도를 내려간다. T5-4가 내려가며 깊이를 기록한다. 120m 지점에서 T5-1이 멈춘다.)
T5-2: 문제 있어?
T5-1: 아마도. 얼마나 내려왔다고?
T5-4: 120m.
T5-1: 뭔가 이상한데. 경비 애들이 깊이 200m 넘는댔잖아.
T5-2: 길이 굽어서 그런 거 아냐? 저짝에 굽이가 하나 보이는데. 저기서 더 내려가는 것 같아.
T5-1: 여기 후크 몇 개 달려 있어야 하는 거 아냐? 마지막 다녀간 사람들 거.
T5-3: 그런 건 없는데. 발자국이 있는 거로 봐서 여길 다녀 간 것 같긴 해.
T5-1: 램프 켜. 여기를 돌면 또 뭐가 있을지 보자고.
(팀이 구명줄 연결을 끊고, 갱도에서 떨어진 구석으로 이동한다.)
T5-1: 데이비스, 시계 맞춰 놨어?
T5-2: 땅에 닿았을 때 해 놨지.
T5-1: 좋아. 매 십 분마다 시간 알려 주고.
T5-2: 알겠음.
T5-4: 대장, 이리 와 봐요. 벽에 뭔가 있는데.
T5-3: 구명줄이네. 여기서 돌에 비벼 끊은 모양이야. 얼마나 많이 있나?
T5-4: 두 개.
T5-2: 요상한데.
T5-1: 사진 찍어 두고 계속 이동하자고. 시간 모자라.
(팀이 광산 쪽으로 내려간다. 관계 없는 기록 생략.)
T5-2: 십 분 지났어.
T5-1: 읭.
T5-2: 뭐?
T5-1: 한참은 더 있었던 것 같은데.
T5-2: (멈춤) 시계는 잘 돌아가고, 배터리도 만땅이고 다 멀쩡한 것 같은데.
T5-1: 기분이 그렇다고.
T5-3: 하이고야, 저기 디게 좁아 보이네. 저기가 접근 통로인가?
T5-1: 어. 광산의 다른 부분과 연결된 것 같긴 한데, 그냥 비상구야. 다시 만났을 때 숨통이 좀 늘겠군.
T5-4: 일렬 종대로 이동해야 할 것 같은데.
T5-1: 내가 선두에 서지. 이동.
(팀이 일렬 종대로 터널 몇 개를 지나간다. 상당한 시간이 지나가나, 팀원들 간 대화는 적다.)
T5-1: 시간이 얼마나 지났지?
T5-2: (멈춤) 17분.
T5-3: 확실히 뭔가 잘못됐어.
T5-4: 이거 시공간 변칙인가?
T5-1: 그런 듯. (멈춤) 너희 저거 보여?
T5-5: 뭐?
T5-2: 빛?
T5-1: 광산 끄트머리 같은데. 더 들어가지는 말자.
T5-4: 무슨 소리가 들리는데.
T5-3: 바람 소리겠지.
T5-4: 아냐, 뭔가 밑에 있어. 깊은 곳에.
T5-2: 지진 활동일지도.
T5-5: 확실히 뭔가 잘못됐어.
T5-1: 이 굴에서 나가자 그럼. 동굴 안에서 끼여 죽게 생겼네.
(팀이 전면의 빛을 향해 급히 이동한다. 통로가 조금씩 열리기 시작한다.)
T5-2: 왜 저 밑에 빛이 보이는 거지?
T5-4: 다른 구조원들 아닐까? 걔네도 등은 가지고 있겠지 아마.
T5-2: 그렇긴 한데, 며칠이나 지났잖아. 그렇게 오래 버틸 리가.
T5-6: 시간이 얼마나 지났지?
T5-2: 어… 17분.
T5-3: 이런 시발.
T5-2: 뭔가 잘못됐어.
T5-4: 얼마나 더 가야 해?
T5-5: 아냐, 뭔가 밑에 있어. 깊은 곳에.
T5-1: 모르겠네, 한 이십 미터쯤 가야 하나.
T5-2: 빨리빨리 움직입시다, 동지들. 기분이 이상해.
T5-3: 토하고 싶거들랑 좀 참아—
T5-4: 닥쳐 좀.
T5-7: 얼마나 지나 왔지?
T5-1: 10미터.
T5-2: 자꾸 뺑뺑이만 도는 것 같은—
T5-5: 얼마나 더 가야 해?
T5-3: 시발!
T5-4: 빛이 어디 갔지?
T5-1: 좀 참아. 내 등도 나갔어.
T5-6: 시발!
T5-2: 뭔가 움직이고 있어.
T5-5: 뭔가 밑에 있어. 깊은 곳에.
T5-1: 다들 오 초만 좀 닥쳐 주면 안 될까.
T5-3: 어두워서 암것도 안 보여, 대장.
T5-1: 내게 라이터가 있네.
(침묵. 라이터가 켜진다.)
T5-1: 좋아. 이 쪽은 막혔네.
T5-2: 아까 그 지진 활동 때문일지도.
T5-4: 아냐, 안정돼 있잖아. 한참은 이 상태였어.
T5-1: 근데 이 터널—
T5-5: 아냐, 뭔가—
T5-1: 이 쪽은 깔끔하게 깎인 것 같은데. 그 쪽으로는 뭐가 보여?
T5-3: 별 건 없어. 죽 내려가는 길 같아.
T5-2: 뭔가 냄새가 나. 오존.
T5-1: 어, 나도. 우리 시간이 얼마나 지났지?
T5-3: 벽에 뭔가 적혀 있는데, 뭐라는 건지는 모르겠네.
T5-2: 13분.
T5-1: 우리 여기 너무 오래 내려와 있었어.
T5-5: 너무 오래.
T5-3: 돌아가려고?
T5-1: 장비가 더 필요할 것 같은데, 아님 뭐를—
T5-6: 너무 오래.
T5-2: 그럽시다. 더는 내려가고 싶질 않아.
T5-4: 이번엔 내가 선두에 서지. 쪼그려서 가자.
T5-7: 불 속에 너무 오래.
T5-1: 갑시다.
(시간이 흐른다. 관계 없는 기록 생략.)
T5-2: 아 젠장 드디어 뭐가 보이네.
T5-3: 저기 접근 통로가 있네.
T5-4: 잠시만. 방금 너 뭐라고 했어?
T5-3: 아니?
T5-4: 누구— 시발! 당신 누구야?
T5-2: 우리 네 명 뿐이었잖아, 아냐?
T5-6: 우리 네 명 뿐이었잖아, 아냐?
T5-1: 이런 시발—
T5-7: 우리 네 명—
(총성)
T5-5: 불 속에 너무 오래, 불 속에 너무 오래, 불 속에 너무 오래, 불 속에—
T5-1: 시발놈의 총 좀 갈겨 다니엘, 저것들 목소리 신경 쓸 때야?
(총성)
T5-6: 우리 여기 너무 오래 내려와 있었어.
(총성)
T5-1: 시발 누구—
T5-3: 쟤네 우리 유니폼을 입고 있어, 어떻게—
T5-4: 저거 연기 나는 것 같은데, 불 붙—
T5-1: 엎드려!
(격렬히 불 붙는 소리)
T5-2: 누가 말하는 거야?
T5-1: 시발 당장—
(격렬히 불 붙는 소리, 모든 기록 장비가 작동을 멈춘다.)
[기록 종료]
노트: 이 사건 직후, MTF T-5는 접근 통로에서 제거되어 신체 및 심리 평가를 받았다. T5-1, -3, -4는 폭발로 인한 경미한 열상과 화상을 호소하였으며, T5-2는 치료를 위해 제81기지로 이송되었다.
MTF T-5의 대원들을 공격한 미확인 개체 셋은 모두 부대의 다른 대원들과 같은 복장과 장비를 하고 있었으며, 다른 대원들의 목소리를 완벽히 모사한 것으로 판명되었다. 이는 저광도 및 좁은 시야와 맞물려 당시 대원들이 조우한 개체의 수를 파악하는 것을 방해한 것으로 보인다.
심리 평가 음성 기록본
노트: 이하는 MTF T-5-3의 심리 평가의 음성 기록본이다.
로스테틀러 박사: 음성 파일에서 당신의 동료들이 시간이 비정상적으로 흐른다고 몇 차례 언급한 것 같던데, 확인해 주실 수 있나요?
T5-3: 아무렴요. 비슷한 상황을 몇 차례 겪은 적이 있거든요, 시간 확장이나 그런 거요. 시간이 아주 약간이라도 흐른다는 걸 알고 있는데도 시간 개념이 점점 사라지기 시작하죠. 얼마나 오래 내려가 있었는지 짐작도 안 가네요. 아마… 네 시간 정도려나요?
로스테틀러 박사: 당신의 기록 장치는 5시간 33분 동안 작동됐더군요.
T5-3: 뭐 흐른 시간을 어찌 다시 주워 담겠습니까. 지상에서는 시간이 얼마나 흘렀던가요?
로스테틀러 박사: 19분요.
T5-3: 시발 세상에. 앞에 말은 취소할게요, 이런 상황은 전에 겪어 본 적이 없네요.
로스테틀러 박사: 시간 확장으로 인해 심리적으로 불편한 점은 있으십니까?
T5-3: 약간요. 이게 그러니까, 안은 수프 같은 느낌이거든요. 마음이 걸쭉해지기 시작하는 거죠. 돌아가는 일들이 흐릿하게 보이고, 그게 언제 일어났는지, 아니면 정말 일어나기는 했는지 분간이 안 가는, 그런 거에요. 혼란스럽죠.
로스테틀러 박사: 알겠습니다. 접근 갱도로 들어서기 전에 우리가 회수한 개체 셋을 눈치챈 시점이 있었나요?
T5-3: 회수라니 이상한 표현이네요.
로스테틀러 박사: 그들의 유해 말입니다.
T5-3: 전 아직도 그들이 어디서 그것들을 얻었는지 모르겠어요. 이름표 등등 온갖 걸 다 갖추고 있더만요, 신원 확인란이 지져진 걸 빼면요. 정말 이상해요. (멈춤) 눈치챘다라… 아니요. 우리는 어둠 속에서 일렬 종대로 걷고 있었으니까요. 저는 다니엘을 보고 있었어요… 그러니까 다니엘이라고 믿었던 무언가를요. 그런데 음향 상태는 너무 나빴고, 소리가 어디서 들리는지 알아채기조차 힘들었어요. 내 뒤에서 그의 소리를 죽 듣고 있었던 거죠. 아마 그랬을 거에요. 확신은 못 하겠네요, 내가 아까 말했던 것처럼. 당신 주변에서 뭔가 돌아가고 있고 당신은 거기 반응하지만, 그게 전부… 잘못됐다고 느껴졌어요.
로스테틀러 박사: 그렇군요.
T5-3: 그 애는 못 찾았죠, 그렇죠? 걔는 다시 나왔나요?
로스테틀러 박사: 아니요.
T5-3: 이런 젠장. (멈춤) 데이비스는요?
로스테틀러 박사: (침묵)
T5-3: 말을 해요, 아르민. 알고 있—
로스테틀러 박사: 그는 아직 아무것도 말한 게 없습니다, 케빈. 몇 번 입을 열기는 했는데 말을 하지는 않아요. 당신을 쳐다보지조차 않을 겁니다.
T5-3: 세상에나.
로스테틀러 박사: (멈춤) 기억소거제 필요하신가요? 필요하시다면 주문해 드릴 수 있습니다, 아니면—
T5-3: 괜찮습니다. 제가 그게 제 목소리로 비명을 지르는 걸 매달 꿈에서 다시 보게 된다면 부탁드릴게요.
부록 2951.4: 고먼 P. 엘리스와의 인터뷰
부록 2951.3에 기록된 사건 이후, 재단 탐사 인원들은 레몬 채석장과 광산에 대한 정보를 수집하기 시작했다. B.G. 호드리 사가 거의 40년 전에 망한 데다 회사의 모든 기록이 분실된 것으로 간주되었으므로 이는 어려운 작업임이었다. 추가로, 케르비어 인터내셔널2의 변칙적으로 추정되는 성질로 인해 그들의 기록에 접근하는 것 또한 어려웠다. 그러나, 베드포드 근처의 버려진 B.G. 호드리 사무실에서 연락처 목록이 발견됨에 따라, 재단 조사 인원들은 현재 노인인 은퇴한 B.G. 호드리 조사관, 고먼 P. 엘리스 씨에게 연락할 수 있었다.
엘리스 씨는 연락 당시 협조적이었으며, 재단 조사 인원들과 만났다. 이 인터뷰를 통해 재단 인원들은 케르비어 관리자 J. 하워드 반즈가 가지고 있을 정보에 대해 알게 되었으며, 이는 추후 조사 과정에서 수집되어 재단이 차지하는 데 성공하였다. 이하는 영 요원과 엘리스 씨 간의 면담 음성 녹취록이다.
[기록 시작]
영: 만나 주셔서 감사합니다, 엘리스 씨. 시간을 많이 잡아먹진 않을 거에요.
엘리스: 괜찮소, 괜찮소.
영: B.G. 호드리에서의 일을 말씀해 주실 수 있으신가요?
엘리스: 글쎄, 나는 일당 노동자로 거기 고용이 됐소. 내 아버지가 그랬던 것처럼. 그와 내 삼촌, 그러니까 제임스 엘리스는 내가 아이였을 때 회사의 주임이었소. 내 삼촌은 호드리 씨와 헤지워터 씨의 동료였는데, 그 둘은 삼사십년대에 석회암 광산의 큰손이었다더만. 나는 헤지워터에게 고용되어 유나이티드 라임스톤 사에서 한동한 일하다, 내 아버지가 퇴직하기 직전에 호드리 쪽으로 갈아 타서 주임이 되었소.
영: 회사에서 일할 때 어떤 지역에서 근무를 하셨습니까?
엘리스: 글쎄… 저 북쪽에 스프링빌이라는 데가 있었고, 37년도에 올리언스 근처에서 개장한 뭐가 또 있었소. 양쪽에서 몇 년간 일했지. 그러다 서쪽에 크게 개장한 데가 미첼이라는 곳이었고, 거기서 퇴직할 때까지 일했소.
영: 거스리의 레몬 지역에 대해서는 아시는 바 있으신가요?
엘리스: 그런 것 같소만.
영: 거기서 일하신 적이 있으신가요?
엘리스: 아니, 그건 아니고. 그건 그… 론 피츠 쪽이었던 것 같소. 면식 정도만 있었고 그리 잘 아는 사람은 아니었는데.
영: 혹시—
엘리스: 사실, 당신 얘기 듣고 이제사 생각난 건데, 레몬에서 시간을 좀 보내긴 했소. 그게… 기억하기 힘들어서 그렇지. 팀 몇을 이끌고 가서 그걸 폐쇄한 이후에 정리하는 작업을 했던 것 같소. 지진이 있었소, 보다시피, 터널 몇 개가 무너졌고. 지질학적으로 말이 되지는 않았다던데.
영: 이상한 점이라도?
엘리스: 항상 그게 좀 이상하다고 생각해 왔소. 이 근처에서는 지진이라곤 찾아보기 힘든데. 그 석회암들이 남쪽이나 다른 데서 오는 진동을 다 흡수해 준단 말이오.
영: 그들이 그 광산에 대해 뭔가 말해 주던가요?
엘리스: 오, 꽤나 오래 전 일이지. 기계 몇을 뜯어 내다가, 그걸 트럭에 담아서 남쪽으로 이송하는 일이었소. 내가 거기 주임들과 말을 나누지는 않았던 것 같소. 그들은 대부분 그 당시에는 호드리 장비를 쓰는 외부인이었을 뿐이었으니까.
영: 알겠습니다. 붕괴에 대해서는요? 사상자가 있었습니까?
엘리스: 내 생각에는 그들이, 음… 애들 몇을 잃은 것 같소만, 확신하기는 어렵구려. 그런 일이 지금 일어난다면, 아시겠지. 돌이켜 보니 그들이 지금처럼 조심스럽지는 않았던 것 같소. 뭐 그래서 그 관해서 그리 많은 대화가 오고가지는 않았던 것 같구만.
영: 우리 기록에는 B.G. 호드리가 붕괴 직후에 케르비어에게 그 광산을 팔았을 가능성이 높다고 나오는데, 왜 그랬을지 짐작가는 거라도 있으신가요?
엘리스: 흐으음… 아니오, 왜 그랬는지는 모르겠소. 유나이티드도 몇 개를 사긴 했는데, 보통은 다른 광산을 개장하기 위한 밑밥 정도였소. 케르비어는 이쪽 전문이 아니고 다른 주에서 주로 영업을 했지. 특히나 레몬처럼 작은 광산을 그런 데서 사들이는 게 흔한 일은 아니오.
영: 알겠습니다. 더 덧붙이고 싶은 말씀 있으신가요, 엘리스 씨?
엘리스: 혹시 그… 이름이 뭐더라, 짐? 제프? 아무튼 성이 반즈인 양반을 찾아본 적 있소? 그는 나보다 나이가 약간 많아서 지금쯤 이 세상에 없을지도 모르겠지만, 그 정리 작업에 그도 끼여 있었던 것 같소. 내가 헤지워터에서 일할 때 그가 우리 측 케르비어 연락 담당이었는데, 몇 번 대화할 기회가 있었지. 괜찮은 사람이오. 그에게서 이거 관해서 좀 더 들을 수 있을지 모르겠네.
영: 감사합니다, 정—
엘리스: 그게… 생각을 좀 해 봤는데, 그 정리 작업에 다른 이상한 점이 있었구려. 우리는 그 기계를 옮기려 열댓 명의 애들을 데려갔는데, 케르비어 쪽에서도 다른 열댓 명이 걔네 걸 치우고 있었고, 거기에 대엿명을 더 얹은 숫자의 호드리 쪽 사람들이 같은 작업을 하고 있었소. 그렇게 조용한 작업은 처음 봤소이다. 그들 전부가 우리가 거기 있는 동안 우리에게 아무 말도 안 했던 것 같소.
[기록 종료]
부록 2951.5: J. 하워드 반즈의 회수된 개인 서신
제레미아,
자네가 들었는지 모르겠다만, 거스리 광산에서 사고가 있었네. 동굴이 지진 때문에 무너져 내렸어. 스무 명 정도의 애들이 거기 갇혀 있네. 팀들이 돌무더기를 치우려고 노력하고 있다만, 잘 돼 가고 있진 않아.
자네가 알아야 할 것 같아서. 변호사가 필요할 수도 있으니까. 내일 사무실에 짐 싸라고 해 놓겠네.
이만 줄이네.
트렌트
제레미아, 오늘 양복쟁이들 떼거지가 몰려와서는 동굴에 대해 물었네. 변호산지 뭔지는 모르겠다만, 계속 이상한 질문들을 해 대더군. 마치 뭔가 듣기를 바라는 것처럼, 돌덩이들이랑 동굴 속 일들에 대해 질문하더군. 자네 뭐 아는 거라도 있나?
네이트 와바시
반즈 씨,
우리 단체가 최근 거스리 레몬 채석장에 대한 모든 권리를 사들였으며, 당신이 아는 모든 정보를 알려 주기를 바라고 있습니다. 우리의 대표단이 다음 주 중에 그쪽으로 갈 텐데, 당신이 흥미를 가질 만한 우리 단체 내의 기회들에 관한 대화를 나눠 봤으면 합니다.
이만,
데이비드 P. 휘팅거
케르비어 인터내셔널
내 눈으로 봤어, 제레미아. 구멍 밖으로 기어나오는 사람 비슷한 뭔가를 봤다고. 불에 타고 그을린 데다가 다른 이의 목소리로 울부짖었네. 무저갱이 아닌 데서 그런 게 나올 리 없다 확신하네.
천상에서 온 그 사람이 말하기를, 세상을 받치는 기둥은 금이 가고 흔들릴 것이며, 기반암은 붕괴될 것일세. 밑에 누워 있는 것들이 곧추 일어서, 온유한 자들에게로 쓰러질 것이라고. 내가 직접 봤네. 그게 사실임을 믿네.
아직 그의 목소리가 들려, 제레미아. "만 년." 들개처럼 울부짖으면서, 구석에 몰린 것처럼 떨면서. "만 년 동안 불 속에 있었네."
부록 2951.6: 고먼 P. 엘리스의 회수된 서신
2003년 4월 19일, 앞서 언급한 고먼 P. 엘리스 씨가 세상을 떠났다. 그가 요주의 인물임을 감안해, 재단 인원들이 추가 조사를 위해 그의 자산을 차지하려 작업했다. 이하는 엘리스 씨에 의해 쓰인 것으로 추정되는 수신인 미상의 편지이다.
모두 스물 세 명이었소. 그 벽 뒤에 스물 세 명의 불쌍한 애들이 갇혀 있었던 거요. 우리가 죽치고 앉아서 아무것도 안 하는 동안, 그들의 비명 소리가 계속해서 들려 왔지.
블랙아웃 동안 광산 속에 있어 본 적이 있소, 킴? 없다면 알려 드리리다. 처음에는 다들 공황에 빠져서, 무슨 일이 일어나고 있는지를 파악하려 하지. 그리고, 상황이 좀 진정되면, 당신은 당신의 눈이 어둠에 적응되기를 기다릴 거요. 하지만 적응되는 일은 절대 없지, 볼 수 있는 게 없으니까. 별빛도 달빛도 거리의 불빛도, 아무것도 없는 어둠. 블랙아웃 동안 광산 속에는 한 줄기의 빛도 없소. 아무것도 볼 게 없다고.
그러고 나면 환청이 들릴 거요. 애들 몇몇은 목소리나, 동물 소리나, 여튼 거기에는 없는 뭔가의 소리를 듣기 시작하지. 몇몇은 떠돌다 길을 잃을 거요, 밧줄을 타고 올라오지도 않고. 몇몇은 수직갱이나 크레바스에 빠질 테고, 다시는 그들을 볼 수 없을 테요. 그러면 드디어 정적이 찾아오지.
동굴이 무너지기 전에 그들이 발견한 터널을 볼 기회가 있었소. 정말 이상하더구만, 킴. 도구나 적절한 뭔가로 파낸 것 같지는 않았소. 등불을 내려보내 그게 어디로 통하는지 확인할 시간조차 없었지. 그 밑에 뭐가 있는지 나는 모르겠습디다. 아무튼간에, 내가 하고 싶은 말은, 난 지옥이니 뭐니 하는 걸 심각하게 생각해 본 적은 없지만 우리가 거기 떨어져도 이상한 일은 아닐 거요. 그 애들에게 일어나는 모든 일은, 그들이 그 밑에 있는 한, 우리 잘못이오. 아무것도 안 한 우리 잘못이라고.
그리고 어둠은 사람을 바꿔 놓지.
@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; } } } }
@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; } } } }
: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; } } } }
: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; }
@font-face { font-family: 'MapoDPPA'; src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/MapoDPPA.woff') format('woff'); font-weight: 700; font-style: normal; } @supports(display: grid) { :root:lang(ko) { --lgurl: var(--logo-image); --header-title: "SCP 재단"; --header-subtitle: "확보 - 격리 - 보호"; /* Typefaces */ --body-font: "Roboto", 'NanumBarunCatsi', sans-serif; --header-font: "Josefin Sans", 'MapoDPPA', sans-serif; --title-font: "Josefin Sans", 'MapoDPPA', sans-serif; --mono-font: "Fira Code", "Andale Mono", "Courier New", Courier, 'Nanum Gothic Coding', monospace; } #header::before { background-image: var(--lgurl); } } .modalbox { background: rgb(var(--dark-gray-monochrome)); box-shadow: 0 2px 6px rgb(0 79 102 / 50%); } .modalbox .close-credits { filter: invert(1); }
/* 폰트 출처: https://noonnu.cc/font_page/776 */ @font-face { font-family: 'establishRetrosansOTF'; src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2112@1.0/establishRetrosansOTF.woff') format('woff'); font-weight: normal; font-style: normal; } :root:lang(ko){ --header-title: "재 단"; --header-subtitle: "격리부"; --header-font: "Josefin Sans", "establishRetrosansOTF", sans-serif; --title-font: "Josefin Sans", "establishRetrosansOTF", sans-serif; } #header h2 span { transform: translateY(10px); } .top-right-box > .level { line-height: 0.5; } body .danger-diamond > .arrows { background-color: transparent; }