:root{color-scheme:dark;--bg: #0e0f13;--bg-card: #171922;--bg-card-hover: #1e2130;--fg: #e8e9ee;--fg-dim: #9ea3b3;--fg-faint: #6a6f80;--line: #262a36;--accent: #ffcf5c;--accent-dim: #8a7132;--radius: 10px;--w: 960px;--font: system-ui, -apple-system, "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-underline-offset:3px}a:hover{color:#fff}.wrap{max-width:var(--w);margin:0 auto;padding:0 20px}.site-head{border-bottom:1px solid var(--line);position:sticky;top:0;background:#0e0f13eb;backdrop-filter:blur(8px);z-index:10}.site-head .wrap{display:flex;align-items:center;gap:24px;height:56px}.brand{font-weight:700;letter-spacing:.04em;color:var(--fg);text-decoration:none;font-size:15px}.nav{display:flex;gap:18px;margin-left:auto;font-size:14px}.nav a{color:var(--fg-dim);text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--accent)}.cards{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));padding:0;margin:28px 0 0;list-style:none}.card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:background .15s,transform .15s}.card:hover{background:var(--bg-card-hover);transform:translateY(-2px)}.card a{display:block;color:inherit;text-decoration:none}.card .thumb{aspect-ratio:16 / 9;background:#0a0b0e;overflow:hidden}.card .thumb img{width:100%;height:100%;object-fit:cover}.card .body{padding:14px 16px 16px}.card .kicker{font-size:11px;letter-spacing:.12em;color:var(--accent-dim);text-transform:uppercase}.card h3{margin:4px 0 6px;font-size:16px;line-height:1.5;font-weight:700}.card p{margin:0;font-size:13px;line-height:1.7;color:var(--fg-dim)}.article{padding:32px 0 64px}.article h1{font-size:clamp(22px,5vw,30px);line-height:1.45;margin:0 0 10px}.article .meta{font-size:13px;color:var(--fg-faint);margin:0 0 24px}.article h2{font-size:20px;margin:44px 0 14px;padding-top:14px;border-top:1px solid var(--line)}.article h3{font-size:17px;margin:32px 0 10px}.article p{margin:0 0 18px}.article ul,.article ol{padding-left:1.4em}.article table{width:100%;border-collapse:collapse;font-size:14px;margin:18px 0;display:block;overflow-x:auto}.article th,.article td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}.article th{background:var(--bg-card);color:var(--fg-dim);font-weight:600;white-space:nowrap}figure.work{margin:26px 0}figure.work img{border-radius:var(--radius);border:1px solid var(--line);background:#0a0b0e}figure.work figcaption{margin-top:8px;font-size:11.5px;color:var(--fg-faint);line-height:1.65}figure.work figcaption a{color:var(--fg-dim)}figure.work.landscape img{width:100%;height:auto}figure.work.portrait{display:flex;flex-direction:column;align-items:center;text-align:center}figure.work.portrait img{width:auto;max-width:100%;height:auto}figure.work.portrait figcaption{max-width:min(100%,420px)}.posters{display:grid;gap:18px 16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:26px 0;align-items:start}.posters figure.work{margin:0}.posters figure.work{margin-inline:auto}.posters figcaption{font-size:11px}.spec{margin:14px 0 18px;font-size:13.5px}.spec dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 14px;margin:0}.spec dt{color:var(--fg-faint)}.spec dd{margin:0}.article blockquote{margin:24px 0;padding:14px 18px;border-left:3px solid var(--accent-dim);background:var(--bg-card);border-radius:0 var(--radius) var(--radius) 0;color:var(--fg)}.article blockquote p{margin:0 0 10px}.article blockquote p:last-child{margin:0;font-size:12.5px;color:var(--fg-faint)}.article blockquote a{color:var(--fg-dim)}.pr{font-size:12px;color:var(--fg-faint);border:1px solid var(--line);border-radius:6px;padding:8px 12px;margin:0 0 22px}.site-foot{border-top:1px solid var(--line);margin-top:48px;padding:24px 0 48px;font-size:13px;color:var(--fg-faint)}.site-foot a{color:var(--fg-dim)}.site-foot nav{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:10px}
