:root{color-scheme:dark;--bg:#26131a;--panel:#2b1720;--line:rgba(255,236,240,.12);--text:#fff4f7;--muted:#d4b9c2;--soft:#ead6dc;--accent:#ff7ea8;--accent2:#b56dff;--shadow:0 26px 58px rgba(0,0,0,.34);--radius:24px;--max:1228px}*{box-sizing:border-box}html,body{margin:0;min-width:320px;min-height:100%}body{background:radial-gradient(circle at 18% 12%, rgba(255,126,168,.12), transparent 22%),radial-gradient(circle at 84% 18%, rgba(181,109,255,.10), transparent 18%),linear-gradient(180deg,#241119 0%,#2a1620 100%);color:var(--text);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;line-height:1.8;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}p,ul,ol,dl,figure,table{margin:0}.shell{width:min(var(--max), calc(100vw - 24px));margin:0 auto}.masthead{position:sticky;top:0;z-index:40;backdrop-filter:blur(14px);background:color-mix(in srgb, var(--bg) 76%, transparent);border-bottom:1px solid var(--line)}.masthead-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}.brand{font-family:"Noto Serif SC","Songti SC",serif;font-weight:800;letter-spacing:.02em;font-size:18px;white-space:nowrap}.mastnav{display:flex;flex-wrap:wrap;gap:14px;color:var(--muted);font-size:14px}.mastnav a{border-bottom:1px solid transparent;padding-bottom:2px}.mastnav a:hover{border-bottom-color:var(--accent);color:var(--text)}.page{padding:18px 0 32px}.hero,.section,.about-card,.note,.tag-cloud,.faq-list details{background:linear-gradient(180deg,#2b1720 0%,#23131a 100%);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.hero,.section,.about-card,.note,.tag-cloud,.faq-list details{padding:20px}.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:18px;align-items:stretch}.hero-copy,.hero-art{background:#3a2630;border:1px solid var(--line);border-radius:22px;padding:16px}.hero-art img{border-radius:18px;border:1px solid var(--line)}.eyebrow{display:inline-flex;align-items:center;gap:8px;width:fit-content;padding:6px 10px;border-radius:999px;background:rgba(255,126,168,.12);border:1px solid rgba(255,126,168,.22);color:#ffdce7;font-size:12px;letter-spacing:.08em;text-transform:uppercase}h1{margin:12px 0 10px;font-family:"Noto Serif SC","Songti SC",serif;font-size:clamp(31px, 5vw, 54px);line-height:1.02;letter-spacing:-0.04em}h2{margin:0 0 12px;font-size:22px;line-height:1.18}h3{margin:0 0 8px;font-size:17px;line-height:1.25}.lede{color:var(--soft);font-size:16px;max-width:66ch}.intro-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.note{display:grid;gap:8px}.note p,.section p,.faq-list p,.tag-cloud p{color:var(--muted);font-size:14px}.mosaic{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.mosaic .tile{padding:16px;border:1px solid var(--line);border-radius:18px;background:#3a2630}.mosaic .tile.wide{grid-column:span 7}.mosaic .tile.narrow{grid-column:span 5}.mosaic .tile.full{grid-column:1 / -1}.tag-cloud{display:flex;flex-wrap:wrap;gap:10px}.tag{border:1px solid var(--line);border-radius:999px;padding:8px 12px;background:#3a2630}.section{margin-top:18px}.section-head{max-width:70ch;margin-bottom:14px}.faq-list{display:grid;gap:10px}.footer{display:flex;justify-content:space-between;gap:16px;padding:8px 0 24px;color:var(--muted)}.footer-links{display:flex;gap:14px;flex-wrap:wrap}.footer-links a{border-bottom:1px solid transparent}.footer-links a:hover{border-bottom-color:var(--accent);color:var(--text)}.about-only{padding-top:22px}.home-link{display:inline-flex;padding-top:6px;border-bottom:1px solid var(--accent)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width: 960px){.hero,.intro-grid{grid-template-columns:1fr}.mosaic .tile.wide,.mosaic .tile.narrow{grid-column:1 / -1}}@media (max-width: 430px){.shell{width:min(var(--max), calc(100vw - 16px))}.hero,.section,.about-card,.note,.tag-cloud,.faq-list details{padding:18px}h1{font-size:clamp(28px, 11vw, 42px)}.footer{flex-direction:column}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
