@font-face{font-family:PersonalSans;src:url(assets/personal-sans.woff2) format('woff2');font-weight:400;font-display:swap}
:root{--paper:#f8f7f0;--ink:#2b3c33;--muted:#627066;--line:#dce1d5;--green:#375740;--soft:#e9eee2;--serif:PersonalSans,'PingFang SC','Microsoft YaHei',sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-padding-top:24px;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 PersonalSans,'PingFang SC','Microsoft YaHei',sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #9b7b50;outline-offset:5px}::selection{background:#dce6d3}.preview{font-size:11px;text-align:center;letter-spacing:.08em;padding:5px 16px;color:#5b6d54;background:#eaf0e2}.wrap{max-width:1120px;margin:auto;padding:0 48px}.header{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:100px;border-bottom:1px solid var(--line)}.brand{font-size:25px;font-weight:500;letter-spacing:.13em;min-height:44px;display:inline-flex;align-items:center}.header nav{display:flex;gap:25px;align-items:center}.header nav a,.logout{font-size:13px;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}.logout{border:0;background:none;color:var(--muted);padding:0}.intro{padding:57px 0 44px;max-width:800px}.eyebrow{font-size:12px;letter-spacing:.08em;color:var(--muted)}.intro h1{font-size:38px;font-weight:400;line-height:1.55;letter-spacing:.025em;margin:14px 0 19px}.intro p{font-size:15px;line-height:1.95;color:#5d6c61;margin:0;max-width:600px}.featured{padding:0 0 45px}.feature-layout{display:grid;grid-template-columns:1.18fr 1fr;align-items:center;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fffef9}.feature-cover{display:block;min-width:0;background:#e8eddf;padding:24px}.feature-cover img{display:block;width:100%;height:auto;object-fit:contain;border-radius:3px}.feature-copy{padding:35px}.feature-copy h2{font-size:29px;font-weight:400;line-height:1.6;letter-spacing:.01em;margin:14px 0 17px}.feature-copy p{font-size:14px;color:#5e6b60;line-height:2;margin:0 0 25px}.primary{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;min-height:46px;padding:10px 21px;border:1px solid var(--green);border-radius:4px;background:var(--green);color:#fff;font-size:14px;line-height:1.6}.primary:hover{background:#2d4936}.section-label{font-size:12px;color:var(--muted);margin:0 0 18px}.game-section{padding:36px 0 43px;border-top:1px solid var(--line)}.game-layout{display:grid;grid-template-columns:.83fr 1fr;align-items:center;gap:40px}.game-photo{position:relative;border-radius:5px;overflow:hidden;background:#20352e}.game-photo img{width:100%;aspect-ratio:1.6;object-fit:cover;display:block}.game-tag{position:absolute;bottom:13px;left:15px;font-size:11px;color:#f8f6e9;background:#1d352bd9;padding:4px 10px}.game-copy h2{font-size:28px;font-weight:400;line-height:1.5;margin:9px 0 14px}.game-copy p{font-size:14px;color:var(--muted);line-height:2;margin:0 0 19px}.quiet-link{font-size:12px;color:var(--muted);min-height:44px;display:inline-flex;align-items:center;margin-left:15px}.details-note{font-size:12px;color:var(--muted);line-height:1.8;margin-top:14px}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:45px;padding:29px 0 35px}.about p{margin:0;font-size:13px;line-height:2;color:var(--muted);max-width:620px}.footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:19px 0 26px;font-size:11px;color:var(--muted)}.site-info{font-size:12px;color:var(--muted);margin-top:15px}.site-info summary{cursor:pointer;min-height:35px}.site-info p{margin:8px 0 0;line-height:1.9}.gear-reader{max-width:760px;margin:auto;padding:15px 0 50px}.gear-reader h1{font-size:32px;font-weight:400;line-height:1.55;letter-spacing:.01em;margin:30px 0}.reading-tools{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:58px;background:#f8f7f0f7;border-bottom:1px solid var(--line)}.reading-tools a,.reading-tools button{font-size:13px;min-height:44px;display:inline-flex;align-items:center}.reading-tools button{background:none;border:0;color:var(--muted);padding:0 8px}.gear-prose p{font-size:18px;line-height:2.05;margin:0 0 24px;overflow-wrap:anywhere}.gear-prose figure{margin:31px 0}.gear-prose img{width:100%;height:auto;display:block;border-radius:4px;cursor:zoom-in}.gear-prose figcaption{font-size:12px;color:var(--muted);margin-top:9px}.subtle{font-size:12px;color:var(--muted);line-height:1.85}.back{display:inline-flex;align-items:center;min-height:44px;font-size:14px}.image-dialog{max-width:1080px;width:calc(100% - 24px);max-height:90dvh;padding:13px;border:1px solid #b7c7ae;border-radius:7px;background:var(--paper)}.image-dialog::backdrop{background:#12271ec9}.image-dialog img{max-width:100%;max-height:75dvh;display:block;object-fit:contain;margin:auto}.image-dialog button{display:block;margin:8px auto 0;min-width:120px;min-height:44px;background:none;border:1px solid #aebaac;border-radius:4px;color:var(--ink)}
@media(max-width:900px){.wrap{padding-inline:32px}.header{gap:18px}.header nav{gap:19px}.intro{padding-top:43px}.intro h1{font-size:35px}.feature-copy{padding:27px}.feature-copy h2{font-size:25px}.feature-cover{padding:18px}.game-layout{gap:28px}}
@media(max-width:640px){.wrap{padding-inline:23px}.header{display:block;padding:21px 0 13px;min-height:0}.brand{font-size:24px;min-height:35px}.header nav{gap:22px;justify-content:flex-start;flex-wrap:wrap;margin-top:9px}.header nav a,.logout{font-size:12px;min-height:44px}.intro{padding:31px 0 29px}.intro h1{font-size:31px;line-height:1.65;margin:13px 0 16px}.intro p{font-size:14px;line-height:2}.eyebrow{font-size:11px}.feature-layout{grid-template-columns:1fr}.feature-cover{padding:19px 22px 0;background:#edf1e5}.feature-cover img{aspect-ratio:auto;object-fit:contain}.feature-copy{padding:25px}.feature-copy h2{font-size:25px;margin:11px 0 15px}.feature-copy p{font-size:14px;margin-bottom:20px}.featured{padding-bottom:31px}.game-section{padding:27px 0 31px}.game-layout{grid-template-columns:1fr;gap:24px}.game-photo img{aspect-ratio:1.75}.game-copy h2{font-size:26px;margin-top:8px}.game-copy p{font-size:14px}.section-label{margin-bottom:16px}.game-copy .primary{min-width:175px}.quiet-link{font-size:12px;margin-left:10px}.about{grid-template-columns:1fr;gap:11px;padding:27px 0}.about p{font-size:13px}.footer{display:block;font-size:11px;line-height:2}.footer span{display:block}.gear-reader{padding-top:8px}.gear-reader h1{font-size:27px;margin:24px 0}.gear-prose p{font-size:17px;line-height:2}.reading-tools{min-height:54px}.preview{font-size:10px}.feature-copy .primary{min-width:155px}}@media(max-width:360px){.wrap{padding-inline:19px}.header nav{gap:18px}.intro h1{font-size:29px}.feature-copy{padding:22px}.feature-copy h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Approved homepage refinement: retain live content and artwork, modest spacing/rhythm. */
.wrap{max-width:1160px}.header{min-height:104px}.intro{padding:62px 0 48px}.intro h1{font-size:40px;line-height:1.6;letter-spacing:.04em}.feature-layout{border-radius:5px}.primary{background:transparent;color:var(--green);border-color:#9eaf9b}.primary:hover{background:#e9eee2}.feature-copy{padding:38px}.footer{align-items:center;position:relative;padding:15px 0 24px;gap:8px}.footer-note{margin-left:auto}.private-door{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:flex-end;color:#8b9589;flex:0 0 44px}.private-door:hover{color:#375740}.private-door:focus-visible{outline:2px solid #9b7b50;outline-offset:2px}.smallprint{font-size:11px;line-height:1.9;color:#7b877c;margin:0 0 18px;max-width:860px}
@media(max-width:640px){.wrap{padding-inline:24px}.header{min-height:0;padding-top:23px}.intro{padding:34px 0 33px}.intro h1{font-size:31px}.feature-copy{padding:25px}.footer{display:grid;grid-template-columns:1fr 44px;gap:0;padding-top:15px}.footer>span:first-child{grid-column:1}.footer-note{grid-column:1;grid-row:2;margin:0}.private-door{grid-column:2;grid-row:1 / span 2;align-self:center}.smallprint{font-size:10px;margin-bottom:19px}}
