
:root{--ink:#172422;--paper:#f3efe5;--muted:#5b665f;--line:#d2d5c9;--red:#a54432;--jade:#0e7468;--gold:#b88a3c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.8 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}a{color:var(--jade);text-underline-offset:4px}button{font:inherit;cursor:pointer}button,a,input,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #bc8f45;outline-offset:4px}button{border:0}nav{height:62px;position:sticky;top:0;z-index:30;background:#f3efe5f5;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 4vw;gap:20px}.brand{color:var(--ink);text-decoration:none;font-size:14px;font-weight:750;letter-spacing:2px}.links{display:flex;gap:27px;font-size:12px}.links a{color:var(--ink);text-decoration:none}.wrap{max-width:1380px;margin:auto;padding-left:5vw;padding-right:5vw}.intro{padding-top:55px;padding-bottom:30px;display:grid;grid-template-columns:1fr 410px;align-items:end;gap:60px}.eyebrow{font-size:11px;letter-spacing:.16em;color:var(--red);font-weight:700}.intro h1{font-family:"Songti SC",serif;font-size:clamp(48px,5.2vw,76px);line-height:1.2;letter-spacing:.01em;margin:16px 0}.intro p{font-size:17px;margin:0;color:var(--muted)}.intro strong{color:var(--ink)}.art{margin:0;position:relative;background:#1b302c}.art img{width:100%;height:auto;display:block}.badge{position:absolute;top:20px;left:22px;color:#fff9e7;background:#132721db;padding:7px 14px;font-size:12px;letter-spacing:1px}.art figcaption{position:absolute;bottom:0;left:0;right:0;padding:38px 24px 16px;color:white;background:linear-gradient(transparent,#122720db);font-size:12px}.manifest{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:24px;padding-bottom:30px;border-bottom:1px solid var(--line);font-size:14px}.manifest b{display:block;color:var(--red);font-size:13px;margin-bottom:5px}.manifest p{margin:0}.section{padding-top:66px;padding-bottom:60px;border-bottom:1px solid var(--line)}.section-head{display:flex;gap:20px;align-items:baseline;margin-bottom:30px}.num{font:25px/1 Georgia,serif;color:var(--red)}h2{font-family:"Songti SC",serif;font-size:35px;line-height:1.3;margin:0}h3{font-size:20px;line-height:1.5;margin:0 0 10px}.section-head p{margin:12px 0 0;color:var(--muted);font-size:15px}.play-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:42px}.map-panel{background:#e9eadd;border:1px solid #d3d8c9;padding:20px 24px}.map-head{display:flex;justify-content:space-between;gap:15px;align-items:center}.map-head>span{font-size:13px;color:var(--muted)}.route-switch{display:flex;gap:4px;padding:3px;background:#dce2d3;border-radius:5px}.route-switch button{padding:7px 17px;font-size:13px;background:transparent;color:var(--muted);border-radius:3px}.route-switch button[aria-pressed=true]{background:#0e7468;color:white}.route-map{width:100%;height:auto;display:block;margin:15px 0 0}.route-map path{transition:opacity .25s,stroke-width .25s}.route-caption{font-size:13px;color:var(--muted);margin:5px 0 0}.score-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #afb8a9;margin-top:15px;padding-top:12px;gap:10px}.score-strip span{display:block;font-size:11px;color:var(--muted)}.score-strip b{display:block;font-size:20px;color:var(--jade)}.keys{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;border-bottom:1px solid var(--line);padding-bottom:22px}.key-row{display:flex;gap:12px;align-items:center;font-size:14px}.key-row kbd{display:flex;align-items:center;justify-content:center;min-width:43px;height:42px;background:#fcf9f0;border:1px solid #a9b3a3;border-bottom:3px solid #a9b3a3;border-radius:5px;font-family:inherit;font-size:13px}.key-row small{display:block;color:var(--muted);font-size:11px}.rule{margin:20px 0;font-size:15px}.rule b{color:var(--jade)}.fine{font-size:12px!important;line-height:1.8;color:var(--muted)}.event-chain{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;margin-top:25px;padding:16px 0;border-top:1px solid var(--line)}.event-chain i{font-style:normal;color:#9d8e66}.video-section{background:#102723;color:#f4efdf;margin-top:0}.video-section .section{border:0}.video-section .num{color:#dca558}.video-section .section-head p{color:#a8b9af}.video-section a{color:#bed3bd}.video-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:32px}.tabs{display:flex;flex-direction:column;gap:0}.tabs button{display:block;width:100%;text-align:left;padding:19px 16px;background:transparent;color:#f1ecde;border-top:1px solid #3c5145;font-size:18px;border-left:3px solid transparent}.tabs button small{font-size:11px;color:#a2b3a6;margin-right:12px}.tabs button span{display:block;font-size:12px;color:#adc1b5;margin:5px 0 0 28px}.tabs button[aria-selected=true]{border-left-color:#d1a057;background:#244437}.tabs button[aria-selected=true] small{color:#e7bb70}.screen{position:relative;aspect-ratio:16/9;background:#070f0c;overflow:hidden}.screen video{display:block;width:100%;height:100%;background:#070f0c}.video-cover{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(0deg,#0009,transparent 60%)}.video-cover button{background:#f5eedf;color:#13392a;padding:15px 27px;border-radius:3px;box-shadow:0 4px 20px #0005;font-size:15px;font-weight:650}.video-caption{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start;margin-top:18px}.video-caption h3{color:#f5ecd9;font-size:19px}.video-caption p{font-size:14px;line-height:1.75;color:#c3cec0;margin:6px 0}.video-caption a{font-size:12px}.video-status{min-height:22px;font-size:11px;color:#a8b9af}.video-section .fine{color:#afc0b2}.song-line{display:grid;grid-template-columns:repeat(6,1fr);gap:0;margin:38px 0 28px}.song-node{position:relative;padding:30px 20px 0 0;border-top:2px solid #c2b99f}.song-node:before{content:'';position:absolute;left:0;top:-6px;width:10px;height:10px;transform:rotate(45deg);background:var(--red)}.song-node em{display:block;font-style:normal;font-size:11px;color:var(--muted);margin-bottom:9px}.song-node b{display:block;font-size:18px;margin-bottom:10px}.song-node p{font-size:13px;color:var(--muted);margin:0}.song-node:nth-child(4):before{background:var(--jade)}.end-rule{display:flex;gap:32px;border-top:1px solid var(--line);padding-top:20px;font-size:14px}.end-rule>div{flex:1}.end-rule b{color:var(--red)}.systems{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.system{border-top:1px solid #9caa97;padding-top:20px}.system .tag{font-size:11px;color:var(--red);letter-spacing:1px;margin-bottom:12px}.system h3{font-family:"Songti SC",serif;font-size:26px}.system p{font-size:14px;margin:12px 0;color:#47594d}.enemy-list{padding:0;margin:14px 0;list-style:none;font-size:14px}.enemy-list li{margin:9px 0}.enemy-list b{color:var(--jade)}.state-ribbon{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;border-top:1px solid var(--line);margin-top:32px;padding-top:23px;font-size:13px}.state-ribbon b{display:block;font-size:15px;margin-bottom:6px}.state-ribbon span{color:var(--muted)}.method-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:55px}.method-statement{font:32px/1.5 "Songti SC",serif;margin:0 0 22px}.method-statement strong{color:var(--jade)}.method-desc{font-size:15px;margin:16px 0;color:var(--muted)}.steps{list-style:none;margin:0;padding:0;counter-reset:method}.steps li{position:relative;padding:0 0 24px 45px;border-left:1px solid #aeb8a4;margin-left:12px;counter-increment:method}.steps li:before{content:counter(method,decimal-leading-zero);position:absolute;left:-12px;top:0;background:var(--paper);color:var(--red);font:20px Georgia;padding:3px 0}.steps li:last-child{border-left:0;padding-bottom:0}.steps h3{font-size:18px}.steps p{font-size:14px;margin:7px 0;color:var(--muted)}.target{background:#e4e8da;padding:22px 26px;margin-top:35px;font-size:15px}.target b{color:var(--jade)}details{margin-top:26px;border-top:1px solid var(--line);padding-top:14px;font-size:13px;color:var(--muted)}summary{cursor:pointer;color:var(--ink);font-size:14px}details p{margin:14px 0}footer{padding-top:30px!important;padding-bottom:45px!important;font-size:12px;color:var(--muted)}footer .footer-links{display:flex;gap:25px;flex-wrap:wrap;margin-bottom:13px}[hidden]{display:none!important}@media(max-width:1000px){.intro{grid-template-columns:1fr;gap:12px}.intro p{max-width:780px}.play-layout{grid-template-columns:1.3fr 1fr;gap:25px}.video-layout{grid-template-columns:210px 1fr;gap:20px}.systems{gap:23px}.method-layout{gap:30px}.song-node{padding-right:12px}.song-node b{font-size:16px}}@media(max-width:700px){body{font-size:16px}.wrap{padding-left:20px;padding-right:20px}nav{padding:0 20px;height:56px}.links{gap:16px}.links a:nth-child(3){display:none}.intro{padding-top:32px;padding-bottom:22px}.intro h1{font-size:44px;margin:12px 0}.intro p{font-size:15px}.art{margin-left:-20px;margin-right:-20px}.badge{left:12px;top:12px;font-size:10px;padding:4px 8px}.art figcaption{position:static;background:#102723;padding:10px 15px;font-size:11px}.manifest{grid-template-columns:1fr;gap:16px;padding-top:20px;font-size:13px}.manifest b{margin:0}.section{padding-top:40px;padding-bottom:35px}.section-head{gap:14px;margin-bottom:25px}h2{font-size:28px}.num{font-size:21px}.section-head p{font-size:14px}.play-layout,.method-layout{grid-template-columns:1fr;gap:26px}.map-panel{padding:15px}.map-head{align-items:start}.map-head>span{font-size:11px;max-width:95px}.route-switch button{padding:7px 12px;font-size:12px}.keys{gap:16px;font-size:13px}.rule{font-size:14px}.video-layout{grid-template-columns:1fr;gap:16px}.tabs{flex-direction:row;display:grid;grid-template-columns:1fr 1fr;gap:7px}.tabs button{font-size:14px;padding:10px 9px;border-top:0;background:#1d362c}.tabs button small{font-size:10px;margin-right:6px}.tabs button span{font-size:10px;margin-left:21px}.video-caption{grid-template-columns:1fr;gap:0}.video-cover button{font-size:13px;padding:12px 18px}.song-line{grid-template-columns:1fr 1fr;gap:32px 20px;margin:26px 0}.song-node{padding-top:17px}.song-node b{font-size:18px}.end-rule{flex-direction:column;gap:17px}.systems{grid-template-columns:1fr;gap:27px}.system h3{font-size:25px}.state-ribbon{grid-template-columns:1fr 1fr}.method-statement{font-size:27px}.target{padding:20px;font-size:14px}.event-chain{font-size:12px;gap:6px}.route-caption{font-size:12px}.score-strip b{font-size:18px}.score-strip span{font-size:10px}.source-links{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{nav,.video-cover,.route-switch{display:none}.wrap{padding-left:0;padding-right:0}.intro{padding-top:0}.section{padding-top:25px;padding-bottom:25px;break-inside:avoid}.video-section{background:#e5e9dd;color:#142d23}.video-section .section-head p,.video-section .fine,.video-caption p,.video-caption h3{color:#243f31}.tabs button{color:#193e2c}.art{margin:0}.art img{max-height:340px;object-fit:contain}.intro h1{font-size:42px}.song-line{grid-template-columns:repeat(6,1fr)}.systems{grid-template-columns:repeat(3,1fr)}.screen{max-height:300px}.links{display:none}.print-note{display:block!important}}
