:root { --bg: #f3efe7; --ink: #1d2230; --soft: #5d6372; --line: rgba(29,34,48,0.14); --card: #fbf9f4; --accent: #b4532f; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --bg: #0e1119; --ink: #ece7dc; --soft: #9aa0ae; --line: rgba(236,231,220,0.14); --card: #151926; --accent: #e08a5e; } }
:root[data-theme="dark"] { --bg: #0e1119; --ink: #ece7dc; --soft: #9aa0ae; --line: rgba(236,231,220,0.14); --card: #151926; --accent: #e08a5e; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink); font: 16px/1.75 "Noto Serif SC", "Songti SC", Georgia, serif; }
.wrap { max-width: 920px; margin: 0 auto; padding: 48px 16px 96px; }
.eyebrow { font: 12px/1.4 ui-sans-serif, system-ui, sans-serif; letter-spacing: 0.22em; text-transform: uppercase; color: var(--soft); }
h1 { font-weight: 400; font-size: clamp(40px, 8vw, 72px); line-height: 1.1; margin: 10px 0 4px; letter-spacing: 0.04em; }
h1 .en { display: block; font-family: "Cormorant Garamond", Georgia, serif; font-style: italic; font-size: 0.5em; color: var(--soft); letter-spacing: 0.01em; margin-top: 8px; }
h2 { font-weight: 400; font-size: 24px; margin: 56px 0 12px; }
h3 { font: 600 13px/1.4 ui-sans-serif, system-ui, sans-serif; letter-spacing: 0.12em; text-transform: uppercase; color: var(--soft); margin: 28px 0 8px; }
p { margin: 0 0 14px; }
a { color: var(--accent); }
.lead { font-size: 18px; color: var(--ink); max-width: 680px; }
.meta { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; margin: 28px 0; }
.meta div { border-top: 1px solid var(--line); padding-top: 10px; }
.meta b { display: block; font: 600 12px/1.4 ui-sans-serif, system-ui, sans-serif; letter-spacing: 0.12em; text-transform: uppercase; color: var(--soft); margin-bottom: 4px; }
video { width: 100%; border-radius: 6px; background: #000; display: block; }
.release { display: grid; grid-template-columns: 220px 1fr; gap: 20px; align-items: center; padding: 18px 0; border-top: 1px solid var(--line); text-decoration: none; color: inherit; }
.release img { width: 100%; border-radius: 4px; display: block; }
.release .date { font: 13px ui-monospace, monospace; color: var(--soft); }
.release .t { font-size: 20px; }
@media (max-width: 560px) { .release { grid-template-columns: 1fr; } }
.copy { position: relative; background: var(--card); border: 1px solid var(--line); border-radius: 6px; padding: 16px 16px 14px; white-space: pre-wrap; font-size: 15px; line-height: 1.7; margin-bottom: 12px; overflow-wrap: anywhere; }
.copy button { position: absolute; top: 8px; right: 8px; font: 12px ui-sans-serif, system-ui, sans-serif; border: 1px solid var(--line); background: var(--bg); color: var(--ink); border-radius: 999px; padding: 4px 12px; cursor: pointer; }
.copy .count { display: block; text-align: right; font: 11px ui-monospace, monospace; color: var(--soft); margin-top: 6px; }
.files { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 14px; }
.files a { text-decoration: none; color: inherit; font-size: 14px; }
.files img { width: 100%; border-radius: 4px; display: block; margin-bottom: 6px; }
.dl { display: flex; flex-wrap: wrap; gap: 10px; margin: 16px 0; }
.dl a { font: 14px ui-sans-serif, system-ui, sans-serif; border: 1px solid var(--line); border-radius: 999px; padding: 8px 16px; text-decoration: none; color: var(--ink); background: var(--card); }
footer { margin-top: 72px; font-size: 13px; color: var(--soft); border-top: 1px solid var(--line); padding-top: 16px; }
