*{box-sizing:border-box}html{scroll-padding-top:85px}body{margin:0;background:#101716;color:#e7e3d8;font-family:"PingFang SC","Microsoft YaHei",sans-serif;line-height:1.8;font-size:16px}a{color:inherit;text-decoration:none}button,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,textarea:focus-visible{outline:2px solid #ddbd7a;outline-offset:5px}button{cursor:pointer}h1,h2,h3,.brand,.footer-brand{font-family:"Noto Serif CJK SC","Songti SC",SimSun,serif}h1,h2,h3,p{margin:0}h1{font-size:clamp(43px,7vw,84px);line-height:1.35;letter-spacing:.08em;font-weight:500}h2{font-size:30px;letter-spacing:.13em;font-weight:500}h3{font-size:23px;font-weight:500;letter-spacing:.1em}.masthead{max-width:1240px;margin:auto;display:flex;align-items:center;gap:36px;padding:22px 40px;border-bottom:1px solid #34403a}.brand{color:#d7ba7e;font-size:24px;letter-spacing:.16em}.brand span{display:inline-block;margin-left:16px;font-size:12px;color:#b7bcb1}.edition{color:#9da89e;font-size:12px;letter-spacing:.15em}nav{display:flex;margin-left:auto;gap:22px}nav a{display:flex;align-items:center;min-height:44px;font-size:14px}main{max-width:1160px;margin:auto;padding:0 32px}.intro{position:relative;overflow:hidden;padding:76px 18px 90px;border-bottom:1px solid #6d644b}.eyebrow{color:#c9aa70;font-size:11px;letter-spacing:.17em;margin-bottom:18px}.lead{margin:25px 0;color:#b5beb4;line-height:2}.entry{display:inline-flex;align-items:center;gap:38px;color:#ddbd7a;border-bottom:1px solid #988057;min-height:48px;padding:6px 0;font-size:14px}.stars{position:absolute;right:12%;top:45px;color:#ac9361;letter-spacing:24px;font-size:27px}.mountains{position:absolute;right:-8%;bottom:-1px;width:66%;height:82%;background:#273a31;clip-path:polygon(0 100%,16% 79%,25% 83%,43% 34%,53% 51%,67% 8%,80% 42%,90% 28%,100% 51%,100% 100%);opacity:.6;pointer-events:none}.mountains:after{content:"";position:absolute;inset:33% 0 0;background:#405041;clip-path:polygon(0 100%,31% 47%,40% 58%,62% 0,80% 63%,90% 48%,100% 100%)}.seal{position:absolute;right:28px;bottom:35px;color:#cfac71;border:1px solid #9b8050;padding:8px 11px;line-height:1.3;font-family:serif;opacity:.8}.intro>*:not(.mountains){z-index:1;position:relative}.intro .stars,.intro .seal{position:absolute}.notice{display:flex;gap:24px;padding:25px 0;color:#b9c0b5;font-size:13px;border-bottom:1px solid #34403a}.notice-label{flex-shrink:0;color:#ddbd7a;letter-spacing:.1em}.notice strong{font-weight:400;color:#e7e3d8}.section{padding:65px 0 12px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.section-head .eyebrow{margin-bottom:8px}.section-note{font-size:12px;color:#b0b9ae;letter-spacing:.1em}.section-desc{font-size:13px;color:#aeb8ac;margin-bottom:26px}.commands{display:grid;grid-template-columns:1fr 1fr;column-gap:32px}.command{padding:22px 0;border-top:1px solid #34403a;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px;align-items:start}.command-label{font-size:12px;color:#bdab84;margin-bottom:7px}.command code{font-family:"SFMono-Regular",Consolas,"PingFang SC",monospace;font-size:18px;white-space:normal;overflow-wrap:anywhere;color:#efeadc;line-height:1.7}.command p{color:#b4beb0;font-size:13px;grid-column:1/-1;margin-top:9px}.copy{border:1px solid #6d644b;background:transparent;color:#ddbd7a;min-height:44px;min-width:58px;padding:8px 12px;font-size:13px;margin-top:12px}.copy:hover{background:#273329}.chronicles{margin-top:30px;padding:38px 32px 14px;background:#17211d;border-top:1px solid #6d644b}.timeline article{position:relative;padding:28px 0 32px;border-top:1px solid #34403a;display:grid;grid-template-columns:64px 1fr;gap:18px}.chapter{font-family:serif;font-size:30px;color:#b49865;line-height:1.5}.timeline p{color:#c5cdc1;line-height:2.1;max-width:740px;margin-top:12px;font-size:15px}.rules{display:grid;grid-template-columns:1fr 1fr;column-gap:44px}.rule{border-top:1px solid #34403a;padding:24px 0}.rule h3{font-size:19px;color:#d6ba82}.rule p{font-size:14px;color:#b9c3b5;margin-top:12px}footer{margin-top:60px;padding:35px 0 40px;border-top:1px solid #6d644b;font-size:12px;color:#aab5a7}footer p{margin:8px 0}.footer-brand{font-size:22px;color:#d2b77e}footer a{display:inline-flex;min-height:44px;align-items:center;color:#d2b77e}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#e0c58d;color:#17211d;padding:12px 18px;max-width:90vw;width:max-content;z-index:10;box-shadow:0 6px 32px #0005}#toast:empty{display:none}dialog{background:#17211d;color:#e7e3d8;border:1px solid #b49865;max-width:min(92vw,520px);padding:24px}dialog::backdrop{background:#000a}dialog p{font-size:14px;margin:16px 0}textarea{width:100%;min-height:100px;background:#101716;color:#e7e3d8;padding:12px;border:1px solid #6d644b}dialog button{min-height:44px;background:#ddbd7a;color:#101716;border:0;padding:8px 24px;margin-top:12px}.skip{position:absolute;left:10px;top:-100px;background:#ddbd7a;color:#101716;padding:10px;z-index:20}.skip:focus{top:10px}#load-error{padding:24px;color:#f3bda1}@media(max-width:650px){.masthead{padding:12px 20px;gap:12px}.brand{font-size:22px}.brand span{font-size:10px;margin-left:8px}.edition{display:none}nav{gap:15px}main{padding:0 22px}.intro{padding:57px 0 75px}.intro .stars{right:-5%;font-size:17px;top:18px}.mountains{width:92%;height:55%;right:-30%;opacity:.4}.lead{font-size:14px}.seal{display:none}.notice{gap:12px;padding:20px 0}.notice-label{writing-mode:vertical-rl;letter-spacing:.2em}.commands,.rules{grid-template-columns:1fr}.section{padding-top:45px}.section-note{font-size:10px}.section-head{gap:10px}h2{font-size:27px}.chronicles{margin-left:-22px;margin-right:-22px;padding:30px 22px 0}.timeline article{grid-template-columns:35px 1fr;gap:12px}.chapter{font-size:24px}.timeline p{font-size:14px}.timeline h3{font-size:22px}.command{padding:19px 0}.command code{font-size:17px}footer{margin-top:35px}}
/* Historical archive: preserve native hidden semantics and narrow-screen wrapping. */
[hidden]{display:none!important}.timeline article>div{min-width:0}.timeline .chronicle-body{white-space:pre-line;overflow-wrap:anywhere}.timeline .chronicle-meta{font-size:12px;color:#bdab84;margin:0 0 8px}.timeline .chronicle-source{font-size:12px;color:#aeb8ac;margin-top:16px;overflow-wrap:anywhere}.history-toggle{display:block;width:100%;min-height:48px;border:1px solid #6d644b;background:transparent;color:#ddbd7a;padding:12px 16px;margin:0 0 24px;white-space:normal}.history-toggle:hover{background:#273329}

/* Confirmed ink scroll: complete artwork, no cover crop or page-height stretching. */
.intro{min-height:640px;background-color:#101716;background-image:linear-gradient(90deg,#101716 0%,rgba(16,23,22,.92) 28%,rgba(16,23,22,.48) 53%,rgba(16,23,22,.12) 80%),url("assets/honghuang-ink-3f4fc292a440.webp");background-position:center,right top;background-size:100% 100%,auto 100%;background-repeat:no-repeat}
.intro .mountains,.intro .stars{display:none}
.intro h1,.intro .lead,.intro .eyebrow,.intro .entry{text-shadow:0 2px 8px #101716,0 0 20px #101716}
@media(max-width:650px){
.intro{min-height:0;padding-top:calc((100vw - 44px)*1.5 + 24px);background-image:linear-gradient(to bottom,rgba(16,23,22,.05) 0%,rgba(16,23,22,.05) 80%,#101716 100%),url("assets/honghuang-ink-3f4fc292a440.webp");background-position:center top,center top;background-size:100% calc((100vw - 44px)*1.5),100% auto;background-repeat:no-repeat}
}

/* Optional music: small ink-and-brass control, outside document rendering. */
.music-toggle{position:fixed;right:max(14px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:9;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:82px;min-height:44px;padding:8px 13px;border:1px solid #988057;border-radius:22px;background:#17211df5;color:#ddbd7a;box-shadow:0 3px 14px #0004;font-family:"Songti SC",SimSun,serif;font-size:14px;line-height:1.5}.music-toggle:hover{background:#273329}.music-toggle[aria-pressed="true"]{border-color:#ddbd7a}.music-clearance{height:calc(76px + env(safe-area-inset-bottom,0px))}.music-status{position:fixed;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
