/* 挂与落 / design #7 layout=timeline nav=sidebar */
:root{--bg:hsl(336 24% 96%);--surface:hsl(336 20% 99%);--ink:hsl(336 30% 17%);--muted:hsl(336 14% 44%);--accent:hsl(336 48% 38%);--line:hsl(336 20% 84%)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:hsl(336 24% 96%);color:hsl(336 30% 17%);font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;line-height:1.75;-webkit-font-smoothing:antialiased}
.shell{max-width:1180px;margin:0 auto}
.nav{position:fixed;left:0;top:0;bottom:0;width:186px;padding:34px 20px;background:hsl(336 20% 99%);border-right:1px solid hsl(336 20% 84%);display:flex;flex-direction:column;gap:16px;font-size:14px}.nav .mark{font-weight:800;font-size:20px;writing-mode:vertical-rl;letter-spacing:.18em;margin-bottom:14px}.nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.nav a{color:inherit;text-decoration:none;opacity:.82}.nav a:hover{opacity:1;color:hsl(336 48% 38%)}.shell{margin-left:186px}
.hero{padding:0 5%}.hero h1{font-family:"SFMono-Regular",Consolas,monospace;font-size:clamp(30px,5.2vw,60px);line-height:1.16;margin:0 0 18px;font-weight:750;letter-spacing:-.01em}.hero .lead{font-size:clamp(15px,1.7vw,19px);line-height:1.8;color:hsl(336 14% 44%);max-width:66ch}.hero .kicker{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:hsl(336 48% 38%);margin-bottom:16px}.hero{padding:70px 5% 60px;border-left:4px solid hsl(336 48% 38%);margin-left:5%}.hero .kicker{font-family:monospace;font-size:14px}.hero h1:before{content:"01 / ";color:hsl(336 48% 38%);font-family:monospace;font-size:.5em;vertical-align:middle;margin-right:12px}
.sec{padding:52px 5%}.sec h2{font-family:"SFMono-Regular",Consolas,monospace;font-size:clamp(21px,2.6vw,30px);margin:0 0 8px}.sec .sub{color:hsl(336 14% 44%);font-size:14px;margin:0 0 26px}.bt{width:100%;border-collapse:collapse;font-size:14px}.bt th,.bt td{padding:11px 12px;text-align:left;vertical-align:top;border-bottom:1px solid hsl(336 20% 84%)}.bt th{font-size:12px;letter-spacing:.08em;color:hsl(336 14% 44%);font-weight:600}.bt .bn{font-weight:700;color:hsl(336 30% 17%)}.bdef{margin:0}.bdef .row{display:grid;grid-template-columns:190px 1fr;gap:16px;padding:13px 0;border-bottom:1px solid hsl(336 20% 84%)}.bdef dt{font-weight:700}.bdef dd{margin:0;color:hsl(336 14% 44%);font-size:14px;line-height:1.7}
.g-list{display:grid;gap:12px}.g-list .gt{font-weight:700;font-size:16px;color:hsl(336 30% 17%)}.g-list .gp{color:hsl(336 14% 44%);font-size:14px;line-height:1.8;margin-top:4px}.g-list{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.g-list .gi{background:hsl(336 20% 99%);border:1px solid hsl(336 20% 84%);border-radius:0px;padding:18px}
.qa .qq{font-weight:700;font-size:15px;color:hsl(336 30% 17%)}.qa .qa-a{color:hsl(336 14% 44%);font-size:14px;line-height:1.85;margin-top:8px}.qa{counter-reset:q}.qa .qi{display:grid;grid-template-columns:40px 1fr;gap:10px;padding:16px 0;border-bottom:1px solid hsl(336 20% 84%)}.qa .qi:before{counter-increment:q;content:"Q" counter(q);font-family:monospace;color:hsl(336 48% 38%)}
.note{padding:34px 5%;background:hsl(336 20% 99%);color:hsl(336 14% 44%);font-size:14px;line-height:1.9}
.note strong{color:hsl(336 30% 17%)}
.foot{padding:28px 5% 44px;border-top:1px solid hsl(336 20% 84%);color:hsl(336 14% 44%);font-size:12px;line-height:1.9}
.foot .fn{font-weight:700;color:hsl(336 30% 17%);font-size:15px;margin-bottom:6px}
.langbtn{cursor:pointer;background:transparent;color:inherit;border:1px solid hsl(336 20% 84%);border-radius:0px;padding:5px 12px;font:inherit;font-size:12px;white-space:nowrap}
.langbtn:hover{border-color:hsl(336 48% 38%);color:hsl(336 48% 38%)}
.t-en{display:none}
html.lang-en .t-zh{display:none!important}
html.lang-en .t-en{display:revert!important}
.sec,.note{border-top:3px solid hsl(336 30% 17%);padding-top:34px}

a{color:hsl(336 48% 38%)}
@media(max-width:760px){
  .nav{position:static;width:auto;flex-direction:row;flex-wrap:wrap;border-right:0;border-bottom:1px solid hsl(336 20% 84%)}.nav .mark{writing-mode:horizontal-tb}.shell{margin-left:0}
  .hero.split,.hero{display:block;padding:44px 6% 38px}
  .hero.split>.shell{display:block!important}
  .hero>.shell{column-count:1}
  .hero .h-side{border-left:0;padding-left:0;border-top:1px solid hsl(336 20% 84%);padding-top:20px;margin-top:20px}
  .hero .kicker{writing-mode:horizontal-tb;float:none;margin:0 0 12px}
  .bsplit,.qa,.g-list{grid-template-columns:1fr}
  .bdef .row,.g-list .gi,.bsplit .row,.qa .qi{grid-template-columns:1fr}
  .nav ul{gap:12px;flex-wrap:wrap}
}
