새벽 공기가 폐부를 찔렀다. 늦겨울의 칼바람은 낡은 창문 틈을 비집고 들어와 방 안의 온기를 남김없이 앗아갔다. 김도윤은 삐걱거리는 침대 위에서 몸을 웅크렸다. 전기장판의 미열은 이미 식어버린 지 오래였다. 코끝이 시렸다. 입을 벌려 숨을 내뱉자 하얀 김이 몽글몽글 피어올랐다. 허공에서 흩어지는 그 모양새가 마치 도시가 내뱉는 마지막 탄식 같았다. 그는 굳은 손가락을 더듬어 휴대폰을 찾았다. 액정의 시린 푸른 빛이 어둠을 갈랐다.
메시지 함은 조용했다. 정유진이 보낸 형식적인 안부와 시청 팀 단톡방의 공지사항이 전부였다. 도윤은 엄지손가락으로 화면을 천천히 밀어 올렸다. 이서하의 이름은 보이지 않았다. 폭풍이 휩쓸고 간 자리에는 기묘한 정적만이 고여 있었다. 그는 단체 채팅방의 마지막 줄에서 멈췄다. '관리자가 채팅방 이름을 [보관: 2025-겨울]로 변경했습니다.' 시스템 문구는 차가웠다. 그것은 한 시대의 종말을 선언하는 비문처럼 그 자리에 박혀 있었다.
"읽었으면 답이라도 좀 하지."
갈라진 목소리가 빈방에 울렸다. 그는 몸을 일으켜 앉았다. 습관적으로 감각을 확장해 도시의 기척을 살피려 했다. 예전 같으면 서울 전체의 흐름이 거대한 혈관처럼 머릿속에 그려졌을 터였다. 하지만 지금은 달랐다. 능력을 끌어올리려 하자마자 관자놀이에 둔탁한 통증이 박동했다. 시야가 하얗게 점멸하며 뇌를 짓누르는 압박감이 몰려왔다. 그는 신음하며 머리를 감싸 쥐었다. 고장 난 감지기가 비명을 지르는 것 같았다. 외부의 초자연적인 기척은 썰물이 빠져나간 갯벌처럼 잠잠했지만, 그 공백을 채우는 것은 자신의 육체가 보내는 명확한 거부 신호였다.
전자레인지가 요란한 소리를 내며 멈췄다. 편의점 삼각김밥의 눅눅한 김 냄새가 좁은 방 안을 채웠다. 도윤은 식탁에 걸터앉아 식어가는 밥알을 씹었다. 창밖의 서울은 평온을 가장하고 있었다. 도로 위를 달리는 차들의 소음은 멀리서 들려오는 파도 소리처럼 아득하게 들렸다. 이 평범함이 낯설었다. 불과 얼마 전까지 얼음 폭풍과 푸른 빛의 궤적이 교차하던 그 도시가 맞는지 의심스러웠다. 아침 햇살이 먼지 낀 바닥을 비스듬히 덮었다. 그는 그 빛을 보며 자신이 지켜낸 것이 정말 이 지루한 일상이었는지 자문했다.
시청 임시 사무실의 형광등은 신경질적인 하얀 빛을 쏟아냈다. 도윤은 모니터 앞에 앉아 전쟁 관련 디지털 로그를 정리하기 시작했다. 오래된 사무실 특유의 쾨쾨한 먼지 냄새가 코끝을 간지럽혔다. 본체의 팬이 돌아가는 소리가 정적을 깨뜨렸다. 그는 'Return JSON' 형식으로 저장된 전투 로그 파일들을 하나씩 열어보았다. 화면에는 무수한 코드와 데이터들이 폭포처럼 나열되었다.
`{"log_id": "20250214_03", "location": "Gangnam_District", "energy_type": "frost", "guardian_id": null}`
마우스 휠을 돌리던 손가락이 멈췄다. `guardian_id`가 `null`로 표시된 줄들이 반복적으로 나타났다. 분명히 그곳에 누군가 있었다. 함께 어깨를 맞대고 싸웠던 동료, 혹은 이름을 불러주었던 누군가의 흔적이 있어야 했다. 하지만 데이터는 차갑게 입을 다물고 있었다. 기억의 한구석이 도려나간 듯한 기분 나쁜 공백이 그를 괴롭혔다. 그때, 뒤에서 서류 뭉치를 든 상사가 다가왔다.
"김도윤 씨, 그 작업 아직 멀었나?"
정민석 팀장이 안경테를 고쳐 쓰며 물었다. 그의 목소리에는 관료 특유의 딱딱함이 배어 있었다. 도윤은 모니터를 가리키며 조심스럽게 입을 열었다.
"팀장님, 여기 깨진 로그들이 좀 많습니다. 특히 `guardian_id`가 비어 있는 줄들이 계속 반복돼요. 이거… 누군가 누락된 거 아닙니까? 데이터가 인위적으로 삭제된 것 같은 느낌이 들어서요."
정민석은 모니터를 힐끗 보더니 대수롭지 않다는 듯 손을 저었다.
"아, 그거? 전산팀에서 이미 확인했어. 시스템 오류로 발생한 유령 계정 같은 거라더군. 전쟁 중에 서버가 과부하 걸려서 데이터가 꼬인 모양이야. 보고서에는 넣을 필요 없으니 그냥 삭제 처리해."
"하지만 팀장님, 유령 계정이라기엔 발생 패턴이 너무 일정합니다. 마치 특정 인물의 활동 기록이 통째로 지워진 것 같아요."
도윤의 말에 정민석의 미간이 깊게 패였다. 그는 목소리를 낮추며 덧붙였다.
"김도윤 씨, 지금은 정리가 우선이야. 시민들은 이미 이 사건을 잊고 싶어 해. 우리 역할은 이 비극을 깔끔하게 서류상으로 마무리하는 거지, 존재하지도 않는 유령을 찾는 게 아니라고. 그러니까 시키는 대로 해."
상사의 단호한 어조에 도윤은 입을 다물 수밖에 없었다. 정민석이 멀어지자 그는 다시 화면을 응시했다. `{"guardian_id": null}`. 이 짧은 코드가 마치 살려달라고 외치는 누군가의 비명처럼 느껴졌다. 전쟁의 공식 서술은 이미 권력자들의 입맛에 맞게 재편되고 있었다. 진실은 데이터의 틈새로 흘러나가 버려지고 있었다.
점심시간, 도윤은 답답한 가슴을 누르며 건물 옥상으로 올라갔다. 옥상 위의 차가운 콘크리트 바닥에서는 한기가 올라왔다. 바람에 실려 오는 매캐한 매연 냄새가 폐부를 찔렀다. 그는 난간에 기대어 도심을 내려다보았다. 그리고 조용히 눈을 감았다. 다시 한번 능력을 시험해보고 싶었다. 균형을 유지하던 그 감각, 도시의 심장 박동을 느끼던 그 힘을 되찾아야 했다.
그는 의도적으로 주변의 흐름을 읽으려 애썼다. 공기 중에 흩어진 미세한 에너지를 붙잡으려 손을 뻗었다. 하지만 그 순간, 머릿속에서 폭탄이 터지는 듯한 통증이 몰려왔다. 심한 어지럼증과 함께 속이 뒤집히는 구토감이 치밀었다. 다리가 젖은 모래처럼 무너져 내렸다. 그는 비틀거리며 옥상 난간을 붙잡았다. 쇠파이프의 차가운 감촉이 손바닥에 닿았지만, 감각은 이미 마비되어 가고 있었다.
"윽… 여기서 하아, 하아… ."
귀 안에서 자신의 심장 박동 소리가 천둥처럼 울렸다. 시야가 좁아지며 가장자리부터 어둠이 잠식해 들어왔다. 능력을 조금만 사용했을 뿐인데도 신체는 명확한 거부 신호를 보냈다. 이제 예전만큼 싸울 수 없다는, 아니, 평범한 인간으로 돌아가야 한다는 냉정한 현실이 뼛속까지 스며들었다. 그는 헐떡이는 숨을 몰아쉬며 휴대폰을 꺼내 녹음 버튼을 눌렀다.
"기록. 감지 범위, 이전의 반도 안 됨. 과부하 시 극심한 두통과 구토감 수반. 신체적 대가가 기하급수적으로 증가함. 그래도… 드디어 최소한 이 동네 정도는 내가 보고 있어야 한다. 균형이 무너지는 걸 방치할 수는 없으니까."
그의 목소리는 떨리고 있었다. 그것은 결연함이라기보다 처절한 매달림에 가까웠다. 그는 자신이 가진 마지막 조각을 잃지 않기 위해 안간힘을 쓰고 있었다.
퇴근길, 도윤은 무거운 몸을 이끌고 지하철역으로 향했다. 계단을 내려가던 중 갑작스러운 빈혈이 그를 덮쳤다. 눈앞이 캄캄해지며 몸이 앞으로 기울어졌다. 그가 바닥으로 고꾸라지려던 찰나, 누군가 강한 힘으로 그의 팔을 낚아챘다.
"조심해요!"
익숙한 목소리였다. 도윤은 간신히 정신을 차리고 고개를 들었다. 그곳에는 이서하가 서 있었다. 그녀의 눈동자에는 걱정과 안도, 그리고 형언할 수 없는 복잡한 감정이 섞여 있었다. 이서하는 도윤의 상태가 심상치 않음을 직감하고 곧바로 그를 부축했다.
"김도윤 씨, 괜찮아요? 얼굴이 왜 이래요? 완전히 종잇장 같네."
"아… 이서하 씨. 그냥 조금 피곤해서… ."
"피곤한 수준이 아니잖아요. 일단 어디 좀 앉아요. 근처에 카페 있으니까 거기로 가요."
이서하는 도윤의 대답도 듣지 않고 그를 이끌었다. 그녀의 코트에서 도윤은 익숙한 세제 향이 코끝에 닿았다. 그 냄새가 어쩐지 도윤의 마음을 놓이게 했다. 두 사람은 근처의 작은 카페로 들어갔다. 실내의 따뜻한 난방 공기가 얼어붙은 몸을 감싸 안았다. 이서하는 김이 모락모락 그는 아메리카노 두 잔을 주문해 도윤의 앞에 놓아주었다.
도윤은 머그잔을 두 손으로 감싸 쥐었다. 손바닥을 타고 전해지는 온기가 차갑게 식었던 혈관을 타고 흐르는 것 같았다. 카페 안에는 고소한 빵 냄새와 커피 향이 가득했다. 통유리창을 통해 들어오는 겨울 햇살이 두 사람의 어깨를 비스듬히 덮었다. 한동안 두 사람 사이에는 어색한 침묵이 흘렀다. 전쟁 중에 서로에게 했던 말들, 지키지 못했던 약속들, 그리고 그 과정에서 입은 상처들이 보이지 않는 벽처럼 가로막고 있었다.
"계단에서 거의 굴러떨어질 뻔했어요. 예전 같았으면 그 정도는 눈 감고도 버텼을 텐데."
이서하가 먼저 침묵을 깨며 씁쓸하게 웃었다. 도윤은 잔을 내려다보며 나직하게 대답했다.
"예전 같았으면… 이서하 씨가 나 대신 맞아줬겠죠. 그래서 아직도 미안해요. 내가 더 잘했어야 했는데."
"그만 좀 미안해해요. 우리 둘 다 살아남은 거, 그거 하나만으로도 겨우 버티는 중이니까. 사실 나도 그래요. 현장에 나가면 예전처럼 몸이 안 움직여서 짜증 날 때가 한두 번이 아니거든요."
그녀는 자신의 손을 내려다보았다. 거칠어진 손마디에는 전쟁의 흔적이 흉터처럼 남아 있었다. 도윤은 그녀의 눈을 똑바로 응시했다.
"근데… 가끔 누가 하나 더 있어야 할 것 같다는 생각이 들어요. 이름도, 얼굴도 생각 안 나는… 공백 같은 사람 말이죠. 오늘 로그를 정리하다가도 그런 느낌을 받았어요. 분명히 누군가 더 있었는데, 시스템이 그 존재를 지워버린 것 같은."
이서하의 눈동자가 흔들렸다. 그녀는 잠시 머뭇거리다가 고개를 끄덕였다.
"나도 그래요. 가끔 꿈을 꾸는데, 누군가 내 이름을 부르는 소리가 들려요. 그런데 그게 누구 목소리인지 도무지 기억이 안 나요. 아마… 누군가 있었겠죠. 우리가 기억 못 하게 된 거겠고. 세상은 그들을 잊어야만 굴러가는 모양이에요."
그녀의 목소리에는 깊은 슬픔이 배어 있었다. 도윤은 그녀의 떨리는 손 위로 자신의 손을 겹쳤다. 차가운 손등에 따뜻한 체온이 전달되었다. 그것은 어떤 위로의 말보다 강력했다. 이서하는 도윤의 손을 잠시 바라보더니, 이내 자리에서 일어나 그에게 다가왔다. 그리고 천천히 그를 끌어안았다.
이서하의 팔이 도윤의 등을 단단히 감싸 안았다. 그녀의 코트 촉감과 체온이 온몸으로 전해졌다. 도윤은 그녀의 어깨에 고개를 묻고 눈을 감았다. 그녀의 심장 박동 소리가 귓가에 울렸다. 규칙적이고 힘찬 그 소리는 그가 살아 있음을, 그리고 혼자가 아님을 증명하고 있었다. 포옹하는 동안 도윤은 가슴 속 깊은 곳에서 무언가 울컥 치밀어 오르는 것을 느꼈다. 그것은 안도감이었고, 동시에 살아남은 자의 죄책감이었으며, 서로의 상처를 확인한 자들만이 공유할 수 있는 유대감이었다.
"그냥… 오늘만큼은, 서로 살아 있다는 거 확인하는 걸로 해요. 더 복잡한 생각은 하지 말고."
이서하가 그의 귓가에 속삭였다. 도윤은 그녀를 더 세게 마주 안았다. 긴 시간 동안, 두 사람은 말없이 서로의 체온을 나누었다. 카페 안의 따스한 공기와 햇살이 두 사람을 감쌌다. 그것은 전쟁 이후 그들이 처음으로 맛본 진정한 휴식이었다. 최소한 이 한 사람과의 연결은 아직 끊어지지 않았다는 사실이 도윤에게는 작은 승리처럼 느껴졌다.
헤어진 후, 도윤은 혼자 집으로 향했다. 그는 일부러 평소보다 한 정거장 일찍 내려 걷기 시작했다. 거리는 전쟁의 흔적을 지우느라 분주했다. 새로 칠해진 벽, 복구된 가로등, 그리고 임시 안내문들이 곳곳에 보였다. 완전히 평범한 척하기에는 여전히 상처가 깊었지만, 사람들은 각자의 방식으로 삶을 이어가고 있었다.
그는 자주 들렀던 붕어빵 노점 앞에 멈춰 섰다. 달큰한 팥 냄새가 겨울 공기에 섞여 풍겨왔다. 노점 상인은 밝은 표정으로 붕어빵을 뒤집고 있었다.
"사장님, 3천 원어치만 주세요."
"오랜만이네! 오늘은 팥이 좀 더 달아요. 요즘 겨울이 겨울 같지가 않죠?"
상인이 종이봉투에 붕어빵을 담으며 쾌활하게 물었다. 도윤은 붕어빵의 따뜻한 온기가 담긴 봉투를 건네받으며 미소 지었다.
"그래도… 갑자기 이렇게 추운 게, 어쩐지 안심되기도 하네요."
"안심이요? 추워 죽겠구만, 무슨 소리야."
"그러게요. 그냥… 예전 겨울 같아서요."
도윤은 웃으며 대답했다. 예전의 겨울, 재난이 닥치기 전의 그 평범했던 추위가 그리웠던 것이다. 그는 붕어빵을 하나 꺼내 입에 물었다. 뜨거운 팥소가 혀끝을 데웠지만, 그 고통마저도 살아 있다는 감각으로 다가왔다.
집으로 돌아온 그는 TV를 켰다. 가벼운 예능 프로그램의 웃음소리가 적막한 방 안을 채웠다. 그는 소소한 야식을 먹으며 노트북을 열었다. 오늘 정리했던 로그 파일들을 다시 한번 훑어보았다. 여전히 `null` 값들이 가득했지만, 그는 이제 그것을 피하지 않기로 했다. 지워진 사람들을 기억하는 것이 살아남은 자의 의무라고 생각했다.
그때였다. 화면 하단에 마지막으로 처리되지 않은 임시 파일 하나가 깜빡였다. 도윤은 무심코 그 파일을 열었다. 순간, 모니터에 한 줄의 코드가 나타났다.
`{"guardian_id": "0000", "status": "unknown", "last_seen": "20250214_0432"}`
도윤의 심장이 멎는 듯했다. `0000`. 그것은 시스템상 존재할 수 없는 번호였다. 게다가 `status`는 `unknown`이었다. 그는 방금 본 것이 진짜인지 확인하기 위해 눈을 비볐다. 하지만 그 문구는 순식간에 화면에서 사라졌다. 다시 파일을 열어보았지만, 그곳에는 아무것도 남아 있지 않았다.
그는 멍하니 빈 화면을 응시했다. 시스템 오류였을까, 아니면 누군가 보내온 마지막 신호였을까. 지워진 첫 번째 수호자들, 그리고 이 도시의 밑바닥에 여전히 숨 쉬고 있는 진실의 파편들. 도윤은 자신이 아직 이 전쟁에서 완전히 벗어나지 못했음을 직감했다. 창밖에는 다시 눈이 내리기 시작했다. 서울의 마지막 겨울은 아직 끝나지 않은 모양이었다.