北京黄昏的刹车声
:root {
    --lh-red: #c0392b;
    --lh-blue: #2980b9;
    --lh-green: #27ae60;
    --lh-dark-green: #16a085;
    --lh-purple: #8e44ad;
    --lh-orange: #e67e22;
    --lh-yellow: #f1c40f;
 
    --lh-paper-bg: 255, 251, 240;
    --lh-string-color: 192, 57, 43;
    --lh-book-color: var(--gray-monochrome);
    --lh-tape-color: 90,90,90,0.3;
    --lh-white-bg: 249,249,249;
    --lh-dark-bg: 50, 50, 50;
    --lh-highlighter: var(--bright-accent);
    --lh-border-color: var(--gray-monochrome);
    --lh-wiki-note-color: var(--bright-accent)
}
 
/**
 *  旧代码合集
 *  为了向下兼容而保留
 */
 
.grid-container{display:flex;flex-direction:row;flex-wrap:wrap;width:100%}.grid-container,.grid-container [class*=grid]{box-sizing:border-box}[class*=grid]{padding:5px}.grid{width:100%}.grid-large{width:75%}.grid-big{width:50%}.grid-medium{width:33.33%}.grid-small{width:25%}@media screen and (min-width:768px){.wd-grid-large{width:75%}.wd-grid,.wd-grid-big{width:50%}.wd-grid-medium{width:33.33%}.wd-grid-small{width:25%}}.text-hover-hide{opacity:0;transition:opacity .3s}.text-hover-hide:hover{opacity:1}.text-block-hide{background:rgb(var(--black-monochrome));color:rgb(var(--black-monochrome));transition:background .3s}.text-block-hide:hover{background:0 0}.text-blur-hide,.text-blur-hover-hide{filter:blur(.3rem);-webkit-filter:blur(.3rem) transition: blur .3s}.text-blur-hover-hide:hover{filter:blur(0);-webkit-filter:blur(0)}.lyric-box{text-align:center;font-size:1.05rem;display:flex;flex-direction:column;flex-wrap:wrap;justify-content:center}.lyric-box p{margin:1.5em auto}.lyric-box.with-bigger-line p{margin:3em auto}
 
/**
 *  便签纸
 *  notepaper
 */
 
.notepaper {
    background: linear-gradient(rgb(var(--lh-paper-bg)) 95%, #ddd 0);
    line-height: 2em;
    background-size: 100% 2em;
    background-attachment: local;
    border: 2em solid rgb(var(--lh-paper-bg));
    box-shadow: 0 0.1rem 0.3rem rgba(0,0,0,0.2);
    padding: 0;
    margin: 1em auto;
    box-sizing: border-box;
    position: relative
}
.notepaper p {
    margin: 0;
    font-size: 1.05rem;
    letter-spacing: 0.1rem;
    line-height: inherit
}
.notepaper.narrow,
.notepaper.wide {
        width: 90%
}
@media screen and (min-width:768px){
    .notepaper.narrow {
        width: 50%
    }
    .notepaper.wide {
        width: 75%
    }
}
 
.notepaper.tight {
    border-width: 1rem;
    border-left-width: 1.2rem;
    border-right-width: 1.2rem;
    line-height: 1.8em;
    background-size: 100% 1.8em;
    font-size: 13px
}
 
.notepaper.with-string::before {
    content: '';
    width: 0.5em;
    height: 6rem;
    background: rgb(var(--lh-string-color));
    top: -2rem; right: -1rem;
    display: block;
    position: absolute;
    box-shadow: 0 0.1em 0.2em rgba(0,0,0,0.2);
    clip-path: polygon(-100% -100%,100% 0%,100% 100%,50% 98%,0% 100%);
}
.notepaper.with-tape::before {
    content: '';
    border: 1px solid #ddd;
    background: rgba(var(--lh-tape-color));
    width: 1.5em;
    height: 4em;
    transform: rotate(45deg);
    display: block;
    position: absolute;
    top: -3em;
    left: -1.8em
}
 
.notepaper.tight.with-string::before {
    top: -1rem; 
    right: -0.25rem;
}
.notepaper.tight.with-tape::before {
    top: -2.5em;
    left: -1.3em
}
 
.notepaper.page {
    min-height: 36em;
    counter-increment: page;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}
@media screen and (min-width:768px){
    .notepaper.page {
        width: 70%
    }
}
.notepaper.page:after {
    content: counter(page);
    display: block;
    text-align: center
}
.notepaper-group {
    counter-reset: page;
}
 
.book-pattern {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row
}
.book-pattern .notepaper.page:not(.notepaper > .notepaper) {
    width: 100%
}
@media screen and (min-width: 768px) {
    .book-pattern .notepaper.page:not(.notepaper > .notepaper) {
        width: 50%
    }
}
 
.book-wrapper {
    background: rgb(var(--lh-book-color));
    padding: 0.5rem;
    box-shadow: 0 0.1rem 0.2rem rgba(0,0,0,0.2);
    border-radius: 5px;
    margin: 1rem auto
}
@media screen and (min-width: 768px) {
    .book-wrapper .notepaper {
        margin: 0
    }
}
 
/**
 *  文字修饰
 */
 
.text-highlighted {
    position: relative
}
.text-highlighted::before {
    content: "";
    position: absolute;
    height: 0.9em;
    bottom: 2px;
    left: -2px;
    width: 105%;
    z-index: -1;
    background-color: rgb(var(--lh-highlighter));
    opacity: .6;
    transform: skew(-15deg);
    transition: opacity .2s ease;
    border-radius: 3px 8px 10px 6px;
    transition: 0.1s ease background-color;
}
 
.text-underlined {
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: 2px;
    text-decoration-color: rgb(var(--lh-highlighter))
}
.text-wavy {
    text-decoration: underline wavy;
    text-underline-offset: 4px;
    text-decoration-color: rgb(var(--lh-highlighter))
}
 
.text-circled,
.text-squared {
    display: inline-block;
    border: 2px solid rgb(var(--lh-highlighter));
    border-radius: 100%;
    box-sizing: border-box
}
.text-squared { border-radius: 0 }
 
.text-shadow { text-shadow: 0.075em 0.075em 0 rgb(var(--lh-highlighter)) }
 
.text-highlighted.td-red::before { background: var(--lh-red) }
.text-circled.td-red, .text-squared.td-red { border-color: var(--lh-red) }
.text-underlined.td-red, .text-wavy.td-red { text-decoration-color: var(--lh-red) }
 
.text-highlighted.td-blue::before { background: var(--lh-blue) }
.text-circled.td-blue, .text-squared.td-blue { border-color: var(--lh-blue) }
.text-underlined.td-blue, .text-wavy.td-blue { text-decoration-color: var(--lh-blue) }
 
.text-highlighted.td-green::before { background: var(--lh-green) }
.text-circled.td-green, .text-squared.td-green { border-color: var(--lh-green) }
.text-underlined.td-green, .text-wavy.td-green { text-decoration-color: var(--lh-green) }
 
.text-highlighted.td-darkgreen::before { background: var(--lh-dark-green) }
.text-circled.td-darkgreen, .text-squared.td-darkgreen { border-color: var(--lh-dark-green) }
.text-underlined.td-darkgreen, .text-wavy.td-darkgreen { text-decoration-color: var(--lh-dark-green) }
 
.text-highlighted.td-purple::before { background: var(--lh-purple) }
.text-circled.td-purple, .text-squared.td-purple { border-color: var(--lh-purple) }
.text-underlined.td-purple, .text-wavy.td-purple { text-decoration-color: var(--lh-purple) }
 
.text-highlighted.td-yellow::before { background: var(--lh-yellow) }
.text-circled.td-yellow, .text-squared.td-yellow { border-color: var(--lh-yellow) }
.text-underlined.td-yellow, .text-wavy.td-yellow { text-decoration-color: var(--lh-yellow) }
 
.text-highlighted.td-orange::before { background: var(--lh-orange) }
.text-circled.td-orange, .text-squared.td-orange { border-color: var(--lh-orange) }
.text-underlined.td-orange, .text-wavy.td-orange { text-decoration-color: var(--lh-orange) }
 
/* 隐藏文字 */
 
.text-blank { color: rgba(0,0,0,0) }
.text-block { 
    background: rgb(var(--black-monochrome));
    color: rgb(var(--black-monochrome)); 
}
.text-blur { 
    filter: blur(0.3em);
    -webkit-filter: blur(0.3em)
}
 
.text-hoverback,
.text-selectback {
    transition-duration: 0.3s;
    transition-property: background, transform, color
}
 
.text-blank.text-hoverback:hover,
.text-blank.text-selectback::selection,
.text-blank.text-selectback *::selection { color: rgb(var(--black-monochrome)) }
 
.text-block.text-hoverback:hover { background: transparent!important }
.text-block.text-selectback::selection,
.text-block.text-selectback *::selection { color: rgb(var(--white-monochrome, 255, 255, 255)) }
 
.text-blur.text-hoverback:hover { filter: blur(0)!important; -webkit-filter: blur(0)!important }
 
/**
 * 附加项
 */
.with-border, .with-box-style { border: 1px solid rgb(var(--bright-accent)) }
.with-border-dark { border: 1px solid rgb(var(--black-monochrome)) }
.with-border-light { border: 1px solid rgb(var(--white-monochrome)) }
.with-border-thick { border-width: 2px }
 
.with-shadow-sm { box-shadow: 0 0 0.1em rgba(0,0,0,0.2) }
.with-shadow { box-shadow: 0 0.1em 0.2em rgba(0,0,0,0.2) }
.with-shadow-lg { box-shadow: 0 0.15em 0.3em rgba(0,0,0,0.2) }
.with-shadow-xl { box-shadow: 0 0.2em 0.5em rgba(0,0,0,0.2) }
.with-shadow-xxl { box-shadow: 0 0.25em 0.8em rgba(0,0,0,0.2) }
 
.with-padding, .with-box-style { padding: 0.25em 1em }
.with-p-sm { padding: 0.125em 0.5em }
.with-p-lg { padding: 0.5em 2em }
 
.with-margin, .with-box-style { margin: 1em auto }
.with-m-sm { margin: 0.5em auto }
.with-m-lg { margin: 2em auto }
 
.with-narrow-width { 
    width: 90%!important; 
    margin-left: auto; 
    margin-right: auto 
}
@media screen and (min-width: 768px) {
    .with-narrow-width { width: 75%!important }
}
[class*="with-bg-"], [class*="with-bg-"] h1 { color: #fff!important }
.with-bg-red { background: var(--lh-red)!important }
.with-bg-blue { background: var(--lh-blue)!important }
.with-bg-green { background: var(--lh-green)!important }
.with-bg-darkgreen { background: var(--lh-dark-green)!important }
.with-bg-yellow { background: var(--lh-yellow)!important }
.with-bg-orange { background: var(--lh-orange)!important }
.with-bg-purple { background: var(--lh-purple)!important }
 
/**
 * 删除类
 */
 
.offwith-shadow { box-shadow: none!important }
.offwith-border { border: none!important }
.offwith-padding, .offwith-pam { padding: 0!important }
.offwith-margin, .offwith-pam { margin: 0!important }
 
.offwith-width-limit {
    width: auto!important;
    margin-left: auto!important;
    margin-right: auto!important
}
 
div[class*="grider"].offwith-grid-gap { grid-gap: 0!important }
 
/**
 * 网格布局
 */
 
/* Gridder 容器 */
 
div[class*="gridder"] {
    display: grid;
    box-sizing: border-box;
    grid-gap: 1rem;
    padding: 0
}
div[class*="gridder"] * { box-sizing: border-box }
 
.gridder, .gridder-col-2 {
    grid-template-columns: 1fr 1fr;
}
.gridder-col-3 {
    grid-template-columns: repeat(3, 1fr);
}
.gridder-col-4 {
    grid-template-columns: repeat(4, 1fr);
}
 
@media screen and (min-width: 768px) {
    .pc-gridder, .pc-gridder-col-2 {
       grid-template-columns: 1fr 1fr;
   }
   .pc-gridder-col-3 {
       grid-template-columns: repeat(3, 1fr);
   }
   .pc-gridder-col-4 {
       grid-template-columns: repeat(4, 1fr);
   }
}
 
.spanner, .spanner-2 {
    grid-column-start: span 2;
}
.spanner-3 {
    grid-column-start: span 3;
}
 
/**
 * 告示组件
 */
.signblock,
.signblock-dark,
.signblock-warn {
    margin: 1rem auto;
    box-shadow: 0 0.1rem 0.3rem rgba(0,0,0,0.4);
    background: rgb(var(--lh-white-bg));
    font-size: 1.05rem;
    padding: 2rem
}
@media screen and (min-width: 768px) {
    .signblock,
    .signblock-dark,
    .signblock-warn {
        width: 75%
    }
}
.signblock-dark, 
.signblock-dark h1 {
    background: rgb(var(--lh-dark-bg));
    color: #fff
}
.signblock-warn, 
.signblock-warn h1 {
    background: var(--lh-red);
    color: #fff
}
 
.signblock h1,
.signblock-dark h1,
.signblock-warn h1 {
    text-align: center;
    font-size: 2rem;
    margin: 0;
    font-weight: 700
}
.signblock-img {
    display: flex;
    flex-direction: row;
    justify-content: center
}
.signblock-img img {
    width: 8em
}
.signblock-footer {
    font-size: 0.9em;
    text-align: center;
    margin: 0.5rem 0;
    font-weight: bolder;
    display: block
}
 
/**
 * 报告
 */
 
.reportblock,
.reportblock-dark {
    border: 2px solid rgb(var(--lh-border-color));
    box-shadow: 0 0.1rem 0.2rem rgba(0,0,0,0.3);
    background: rgb(var(--white-monochrome));
    padding: 0.8rem 1.5rem;
    padding-bottom: 0.4rem;
    margin: 1.5rem auto;
    margin-bottom: 1rem;
    position: relative
}
 
.reportblock hr,
.reportblock-dark hr {
    background-color: rgb(var(--lh-border-color));
    margin-left: -1.5rem;
    margin-right: -1.5rem
}
 
.reportblock h1:first-child,
.reportblock-dark h1:first-child {
    position: absolute;
    top: -1rem;
    left: 1.5rem;
    font-size: 110%;
    font-weight: 600;
    background: rgb(var(--lh-border-color));
    color: #fff;
    padding: 0.2rem 0.5rem;
    margin: 0;
}
 
.reportblock-dark,
.reportblock-dark h1 {
    border-color: rgb(var(--lh-white-bg));
    background: rgb(var(--lh-dark-bg));
    color: #fff
}
 
.reportblock-dark hr {
    background-color: rgb(var(--lh-white-bg));
}
 
/* 更好的折叠框 */
 
.bettercollap {
  margin: 1em 0;
}
 
.bettercollap .collapsible-block {
  width: auto;
  overflow: hidden;
  border: 1px solid rgb(var(--lh-border-color))
}
 
.bettercollap .collapsible-block-content,
.bettercollap .collapsible-block-link {
  background: rgb(var(--white-monochrome));
  padding: 0.5em
}
 
.bettercollap .collapsible-block-content {
  padding-left: 1em;
  padding-right: 1em
}
 
.bettercollap .collapsible-block-link {
  color: rgb(var(--lh-border-color));
  background: rgb(var(--white-monochrome));
  transition: .3s;
  display: block;
}
.bettercollap .collapsible-block-link:hover,
.bettercollap .collapsible-block-unfolded .collapsible-block-link,
.styledcollap.bettercollap .collapsible-block-link {
  color: rgb(var(--white-monochrome));
  background: rgb(var(--lh-border-color))!important;
  text-decoration: none
}
 
.bettercollap .collapsible-block-link:hover a { color: rgb(var(--white-monochrome)) }
 
.bettercollap .collapsible-block-link::before {
  content: "\25BC";
  display: inline-block;
  margin-right: 0.5em;
  transform: rotate(-90deg) scale(0.9)
}
.bettercollap .collapsible-block-unfolded .collapsible-block-link::before {
   transform: rotate(0) scale(0.9)
}
 
.bettercollap .collapsible-block + .collapsible-block { border-top: none }
 
.styledcollap.bettercollap .collapsible-block {
  border-radius: 2px;
  box-shadow: 0 0.1rem 0.2rem rgba(0,0,0,0.3)
}
 
.styledcollap.bettercollap .collapsible-block-content {
  background-color: rgb(var(--pale-gray-monochrome));
  border-width: 3px
}
 
.styledcollap.bettercollap .collapsible-block-link:hover {
  background: rgba(var(--lh-border-color),0.95)!important;
}
 
/**
 * 提示框
 */
 
.infoblock {
    color: #f1f1f1;
    font-weight: bold;
    background: #424242;
    padding: 5px 5px 5px 5px;
    border-radius: 4px;
    margin: -0.5rem 0 1rem 0;
    display: block;
    width: fit-content;
    padding-right: 25px;
}
 
.infoblock::before {
    content: "ⓘ "
}
 
/**
 * 单页迭代 
 */
 
.offset-page:not(:target), .offset-page:target ~ div#u-default-page { display: none }
.offset-page:target { display: block }

北京黄昏的刹车声


夏日序曲,无声的轰鸣

记忆里的高一,是被阳光浸泡得近乎透明的一年。教室窗外的老樟树,叶子绿了又黄,黄了又绿,光影在书页上悄无声息地流转。而我的世界中心,不知不觉,从黑板上的公式,偏移到了斜前方的那个座位上。

她坐在那里,像一株安静吸收阳光的植物。马尾辫总是松松地扎着,几缕碎发垂在颈边,随着她写字的动作轻轻晃动。我喜欢看她沉思时咬笔头的样子,喜欢看她回答问题时微微泛红的耳廓,更喜欢她偶尔回过头,与我的目光不经意撞个满怀时,那瞬间慌乱又带着笑意的眼神。

那一年,我们之间隔着不到三米的距离,却仿佛横亘着一条名为“暗恋”的银河。每一次短暂的交集——收发作业时指尖的轻微触碰,在走廊尽头的擦肩而过,小组讨论时她对我观点的轻轻颔首——都像一颗小石子投入我心湖,漾开一圈又一圈无法平息涟漪。空气里弥漫着粉笔灰和青春期特有的、微甜的躁动气息。蝉鸣是永恒的背景音,聒噪却又奇异地衬托出我们之间那份秘而不宣的寂静。

我记得最清楚的,是一个初夏的午后。一场突如其来的暴雨席卷了校园,天空阴沉得像泼了墨。放学铃响后,没带伞的同学都挤在教学楼的屋檐下。我和她,恰好被人群隔在两端。雨水顺着屋檐倾泻而下,形成一道透明的水帘。透过那晃动的水幕,我看见她安静地站着,望着外面的雨幕,侧脸在昏暗的光线下显得格外柔和。一阵风裹挟着冰凉的雨丝扑进来,她下意识地抱了抱手臂。那一刻,一股莫名的勇气涌上心头,我挤过人群,走到她身边,将手里那把唯一的、略显陈旧的雨伞递了过去。

“给你。”

我的声音干涩,几乎被雨声淹没。

她惊讶地转过头,看到是我,眼中的诧异化为了更复杂的情绪,有羞涩,有感激,还有一丝……或许是我渴望看到的欣喜?

“那你呢?”

她轻声问。

“我……我等人,一会儿雨就小了。”

我撒了个拙劣的谎言。

她看了看我,又看了看伞,忽然笑了,那笑容像阴霾天地缝里漏出的一缕阳光,瞬间照亮了我整个世界。她没有接伞,而是往我这边靠了靠,说:

“那……一起走吧?反正顺路。”

那一刻,周遭所有的喧嚣——雨声、人声、风声——都消失了。我的世界里只剩下她靠近时带来的、若有似无的清香,和她微微泛红的脸颊。我们共撑一把伞,走入滂沱大雨中。伞很小,为了不让她淋湿,我的半边肩膀暴露在雨里,冰凉的雨水浸透衣衫,可我丝毫感觉不到冷,反而觉得胸腔里有一团火在燃烧。伞下的空间狭小逼仄,我们的手臂偶尔会碰到一起,每一次轻微的接触都像电流穿过,带来一阵战栗般的酥麻。我们一路无话,只有雨点敲打伞面的噼啪声,像为我们伴奏的、凌乱而热烈的心跳。

那一路,是我整个高一最漫长又最短暂的旅程。送到她家巷口,她低声道谢,转身跑进雨里,身影很快模糊。我握着还残留她体温的伞柄,站在雨里,久久没有动弹。空气里是雨水砸在泥土上泛起的清新腥气,而我心中,一种名为“可能”的种子,正在这潮湿的空气里,疯狂破土、生长。


世界在我们唇间融化

高二的秋天,梧桐叶开始泛黄飘落的时候,我们在一起了。表白的过程简单得近乎笨拙,只是在某个放学后的黄昏,在空无一人的教室里,我堵住了正要离开的她,鼓足勇气,把憋了一年多的话磕磕绊绊地说了出来。她的脸瞬间红透,像天边燃烧的晚霞,然后,她轻轻点了点头。

从此,我的世界被重新调色。

我们像所有校园情侣一样,享受着隐秘而纯粹的快乐。交换的笔记本里藏着只有彼此才懂的话语,放学后故意绕远路回家,只为多待那十几分钟。周末,我们会偷偷溜出去“约会”。所谓的约会,也不过是去市里最大的免费公园,或者钻进旧书店耗上一整个下午。

但那个夜晚,是不同的。

那是一个初冬的夜晚,刚下过一场小雨,地面湿漉漉的,反射着路灯光晕,像洒了一地的碎金子。我们看完一场电影,沿着老街漫无目的地走着。空气清冷而湿润,吸入肺里,带着一丝凛冽的甜。行人稀少,世界显得格外安静。我们聊着电影里的情节,聊着学校的趣事,笑声在空旷的街道上传得很远。

走到一条僻静的小巷口,她忽然停下脚步,指着巷子深处一家还亮着暖黄灯光的小糖水铺说:“我想吃红豆汤圆。”

那家铺子很小,旧旧的,在冬夜里散发着温暖的诱惑。我们坐在靠窗的位置,分享着一碗热腾腾的红豆汤圆。白色的雾气氤氲上升,模糊了彼此的眉眼,也模糊了窗外的寒夜。她小口小口地吃着,嘴角沾了一点红豆沙,我下意识地伸手,用指腹轻轻帮她擦去。

指尖触碰到她柔软嘴唇的瞬间,我们两人都愣住了。时间仿佛在这一刻停滞。糖水铺里老旧收音机播放的缠绵情歌,锅里煮糖水发出的“咕嘟”声,窗外偶尔路过的车声……所有声音都褪去,成了遥远的背景音。我的世界里,只剩下她近在咫尺的、水光潋滟的眼睛,那里映着暖黄的灯光,也映着我的倒影,像盛满了整个宇宙的星辰。

她的睫毛轻轻颤抖着,像受惊的蝶翼,但没有躲闪。空气中弥漫着红豆甜腻的香气和冬日潮湿的水汽,这气息变得粘稠而暧昧,将我们紧紧包裹。

我不知道是谁先靠近的。或许是我微微倾过了身,或许是她抬起了头。当我的嘴唇终于触碰到那两片我凝视过无数次的柔软时,整个世界,真的在我唇间融化了。

那是一种难以言喻的触感,温热、柔软,带着红豆汤圆的清甜和她本身独特的、像初雪融化般的气息。起初只是轻轻的、试探性的触碰,像羽毛拂过水面。然后,某种更强大的力量攫住了我们。我感觉到她笨拙而羞涩的回应,感觉到她抓住我衣角的手在微微发抖。我闭上眼睛,加深了这个吻。所有的声音都消失了,只剩下我们彼此剧烈的心跳声,擂鼓般敲打着寂静的夜。感官被无限放大,我能清晰地感受到她唇瓣的每一丝纹路,呼吸的每一次起伏,以及那传递过来的、几乎要将我焚尽的滚烫温度。

这个吻,生涩、短暂,却仿佛耗尽了我們所有的力气。分开时,我们都气喘吁吁,脸颊烫得惊人,不敢看对方的眼睛。窗玻璃上凝结了一层厚厚的水雾,将我们与外面的世界彻底隔绝。这个小而温暖的糖水铺,成了宇宙中唯一的孤岛,而我们,是岛上刚刚经历了创世般悸动的、唯一的两个人。

回去的路上,我们牵着手,十指紧扣,手心都沁出了汗,却谁也不愿意松开。清冷的夜风吹在滚烫的脸上,无比舒爽。夜空不知何时放晴了,几颗寒星疏疏落落地挂着,闪烁着明亮而纯净的光芒。那条寻常的街道,因为那个吻,在我记忆中永远被镀上了一层梦幻的、金色的光边。我以为,那就是永恒的模样。


北京的星辰,与戛然而止的乐章

去北京的决定,是我们蓄谋已久的“壮举”。用攒了很久的零花钱和过年红包,偷偷订好了高铁票和民宿,像两个即将开启伟大冒险的探险家,兴奋得几个晚上都没睡好。

各位旅客请注意,由“深圳北”开往“北京西”的G904次列车即将进站,列车停靠在本站第3站台,请前往“北京西”方向的旅客携带好随身物品,到第3站台指定位置有序候车,注意列车与站台之间的缝隙,请勿拥挤。

出发那天,天气好得不像话。天空是那种洗过的、明净的湛蓝,几朵白云像蓬松的棉花糖悬浮着。高铁飞驰,窗外的景物飞速向后掠去,农田、村庄、城镇,像一幅流动的画卷。我们并肩坐在靠窗的位置,她靠在我的肩膀上,戴着耳机,分享着同一首歌。阳光透过车窗,在她脸上跳跃,她闭着眼,嘴角带着浅浅的笑意,长长的睫毛在眼下投下一小片阴影。我低头看着她,心里被一种饱胀的、名为“幸福”的情绪填满,满得几乎要溢出来。车厢里空调温度适宜,弥漫着其他乘客便当和零食的混合气味,但在我闻来,都成了甜蜜的背景。

各位旅客请注意,列车即将到达本次行程的终点站——“北京西站”,请您提前整理好随身行李物品,特别是放在行李架上的物品,避免遗漏。下车时请留意列车与站台之间的缝隙,注意脚下安全。

在北京的日子,像一场绚丽得不真实的梦。我们凌晨爬起来去看升旗仪式,在凛冽的晨风中和成千上万的人一起看着国旗与太阳一同升起,她激动地紧紧抓着我的胳膊,眼眶泛红。我们穿梭在故宫深红色的宫墙之间,触摸着历史的厚重,在颐和园的昆明湖上划船,她用手拨弄着清凉的湖水,笑声像银铃一样洒在水面上。我们在南锣鼓巷的人流里紧紧牵着手,品尝各种新奇的小吃,她被奇怪的糖葫芦酸得皱起鼻子,模样可爱极了。我们还爬了长城,站在烽火台上,看群山起伏如海,她冲着山谷大声呼喊我的名字(当然用的是昵称),回声阵阵,仿佛天地都在为我们的青春作证。

那几天,北京的阳光格外灿烂,天空总是高远而蔚蓝。每一处古迹,每一条胡同,都因为身边有她,而变得生动无比,色彩鲜明。夜晚,我们住在胡同里一家小小的民宿,天台可以看见一片狭窄但星光璀璨的夜空。我们裹着同一条毯子,依偎在一起看星星,规划着未来——要考同一所大学,要去更多的地方,要有一个属于我们自己的小家……未来像我们头顶的星空,浩瀚,明亮,充满无限可能。

悲剧发生的前一刻,我们刚刚从国家博物馆出来。已是黄昏,夕阳将天空染成一片温暖的橘红色,云朵被镶上了金边。我们意犹未尽地讨论着刚才看到的展品,沿着长安街的人行道慢慢走着,准备去附近的地铁站。北京的傍晚车水马龙,华灯初上,城市的脉搏强劲而有力。她走在我外侧,兴奋地比划着,讲述她对某件文物的惊奇发现,眼睛亮晶晶的,映照着晚霞和霓虹。

我笑着听她讲,目光偶尔掠过川流不息的车河。一切都那么正常,那么美好。

然后,毫无预兆地,她背包上的一个小挂件掉了,滚向了机动车道。那是一个我送给她的、很普通的猫咪挂件。她几乎是下意识地,轻呼一声,弯腰就去捡。

时间在那一刻被无限拉长,又仿佛被压缩成尖锐的一点。

一阵刺耳到极致的刹车声,像一把生锈的锯子,猛地撕裂了黄昏温馨的空气,也撕裂了我整个世界。那声音如此尖锐,如此突兀,让我的耳膜和心脏同时感到一阵剧痛。

我猛地转过头。

我看见她弯下去的身影,被一辆突然变道试图避让、却已来不及的黑色轿车,轻轻地、却又无比沉重地……撞了出去。

像一个慢镜头。她像一只断了线的风筝,或者说,像一片突然被狂风从枝头扯下的、脆弱的花瓣,轻飘飘地飞了起来,在空中划过一道短暂的、令人窒息的弧线,然后,重重地落在几米开外的冰冷柏油路上。

那个猫咪挂件,还静静躺在路沿边,完好无损。

世界,在我眼前,瞬间失去了所有颜色和声音。夕阳的暖橘,天空的酡红,霓虹的闪烁,全部褪变成一片死寂的、绝望的灰白。那喧嚣的车流声,人群的嘈杂声,甚至我自己的心跳声,都消失了。绝对的、真空般的寂静。

几秒钟后,或者说一个世纪后,声音猛地回归——是周围人群发出的惊呼、尖叫,是司机慌乱下车奔跑的脚步声,是远处传来的、越来越近的、象征着不祥的救护车鸣笛声……

我像一尊被钉在地上的雕像,无法动弹,无法思考。我的目光,死死地、贪婪地、却又无比恐惧地,锁定在那个躺在路中间、一动不动的身影上。她今天穿的那件我最喜欢的、鹅黄色的毛衣,在灰暗的路面上,刺眼得像个巨大的、正在溃烂的伤口。

救护车的红灯旋转着,把周围所有人的脸都映照得忽明忽暗,像一群表情扭曲的鬼魅。有人在我身边说话,拍我的肩膀,但我什么都听不见,什么都感觉不到。我的灵魂好像已经从身体里飘了出去,悬浮在半空,冷漠地看着地面上这出荒诞的悲剧。

直到医护人员用担架将她抬起,那抹鹅黄色被白色的床单覆盖,我才像突然被解除了咒语,发疯一样冲过去。我抓住担架边缘,看到床单下她毫无生气的脸,那么白,那么静,像一尊冰冷的瓷娃娃。我想喊她的名字,喉咙却像被一只无形的手死死扼住,只能发出“嗬嗬”的、如同破风箱般的怪异声响。

我被护士 gently, 却又坚决地推开。担架被迅速抬上救护车,车门“砰”地关上,隔绝了我的视线,也仿佛隔绝了我与她所有的过去与未来。救护车尖锐地鸣叫着,汇入车流,很快消失在长安街无尽的灯火尽头。

我独自站在原地,手里还紧紧攥着那个掉落的、毫发无损的猫咪挂件。北京的夜空彻底黑了下来,星星隐匿不见,只有城市的光污染将天空染成一种沉闷的、病态的暗红色。寒风像刀子一样刮过我的脸颊,可我感觉不到冷。巨大的、如同实质般的悲痛和恐惧,像滔天巨浪,在这一刻终于轰然拍下,将我彻底淹没、摧毁。

那一刻,我知道,我的世界,连同里面所有的星辰、阳光和未来,已经随着那辆远去的救护车,彻底崩塌了。


溺毙于无声的永夜

后来发生的事情,像一部混乱、嘈杂却又无声的黑白默片。

医院里消毒水的气味浓烈得刺鼻,那味道从此像烙印一样刻在我的嗅觉记忆里,代表着绝望和死亡。长长的、明亮的、冰冷的走廊,穿着白大褂的医生和护士步履匆匆,他们的表情凝重,说着我听不懂的医学术语。抢救室门口那盏“手术中”的红灯,亮得触目惊心,像地狱的入口,吞噬了我所有的希望。

我坐在走廊冰凉的塑料长椅上,身体无法控制地颤抖。时间失去了意义,每一分每一秒都像一个世纪那么漫长。我盯着自己的鞋尖,上面似乎还沾着北京夜晚的灰尘。脑海里不受控制地闪过无数画面“她吃糖水时嘴角的豆沙,她在我怀里羞涩的颤抖,她在长城上回眸灿烂的笑容,她在黄昏里亮晶晶的眼睛……”这些鲜活的、彩色的画面,与眼前这片死寂的白、刺目的红,疯狂地交织、冲突,几乎要将我的头颅撑爆。

灯,熄灭了。

医生走出来,摘下口罩,脸上是掩饰不住的疲惫和……歉意。我听不见他说什么,只看到他的嘴唇在一张一合。但我看懂了他眼神里的意思。那是一种终极的、毫无挽回余地的宣判。

世界,彻底静音了。

我没有哭,没有喊,没有闹。巨大的悲伤在瞬间抽干了我所有的力气和情绪。我只是呆呆地坐着,像被抽走了灵魂的木偶。父母赶来了,她的父母也赶来了,哭声,劝慰声,嘈杂一片。可我什么都听不见。我的世界,从那个刹车声响起的那一刻,就再也没有任何声音了。

处理完所有后续事宜,回到熟悉的城市,回到学校,一切都变了模样。

我的天空,从此是永恒的、沉闷的灰色。

我开始了彻底的堕落。这是一种从内部开始的、缓慢而坚定的腐烂。我拒绝再去学校,那个充满了她身影和回忆的地方,每一寸空气都带着倒刺,呼吸一次,便疼痛一次。我把自己锁在房间里,窗帘拉得严严实实,隔绝了外面所有的光线。白天和黑夜失去了界限,时间变成了一摊停滞的、发臭的死水。

房间里的空气浑浊不堪,弥漫着食物腐烂、汗水以及一种……绝望的味道。书本、衣服、杂物扔得到处都是,我蜷缩在床上,或者瘫坐在地板上,像一具还有呼吸的尸体。手机里我们的合照,我们的聊天记录,我看了又看,直到眼睛干涩刺痛,直到手机没电自动关机。然后,就陷入一片更深的黑暗。

父母试图沟通,哭泣,争吵,甚至威胁。但我无动于衷。他们的声音像是从很远很远的水底传来,模糊不清,无法触及我沉沦的核心。朋友来看我,被我拒之门外。他们发来的安慰信息,我扫一眼,连回复的欲望都没有。任何试图将我拉回“正常”世界的努力,都让我感到烦躁和厌恶。那个世界,那个没有她的“正常”世界,对我而言,毫无意义,甚至是一种背叛。

我开始整夜整夜地失眠,瞪着天花板,直到它在我眼中扭曲变形。偶尔睡着,也总是被噩梦纠缠——刺耳的刹车声,她飞起来的身影,医院那盏红灯,还有无尽的、追逐我的黑暗。我会在深夜突然惊醒,浑身冷汗,心脏狂跳,然后被巨大的、空无一物的虚无感紧紧攫住,窒息般难受。

窗外,季节依旧更替。我能听到春天的雨声,夏天的蝉鸣,秋天的风声。但这些曾经美好的事物,如今都蒙上了一层灰翳。雨声是哀泣,蝉鸣是嘲弄,风声是她远去的叹息。阳光偶尔从窗帘缝隙挤进来,在地上投下一道狭长的、苍白的光痕,像一道无法愈合的伤口。

我咀嚼着回忆,像咀嚼着玻璃碴,明知满口鲜血,却停不下来。那份极致的甜蜜,在失去之后,变成了最残忍的刑罚,日夜凌迟着我残破的灵魂。快乐是有罪的,平静是有罪的,甚至连“活着”本身,都成了一种沉重的负累。

我就这样,在自己构筑的、与世隔绝的废墟里,一步步走向更深的黑暗。我不知道明天在哪里,也不关心。

未来?这个词已经从我的人生字典里被硬生生挖去了,只留下一个血淋淋的窟窿。

我溺毙在了那个北京黄昏之后,无边无际的永夜里。光不再来,声不再有,只剩下我,和这片庞大到足以吞噬一切的、死寂的悲伤。


除非特别注明,本页内容采用以下授权方式: Creative Commons Attribution-ShareAlike 3.0 License