:root{--paper:#fcfbf8;--card:#f3f1ea;--ink:#26221b;--mute:#8f8472;--line:rgba(38,34,27,.12);--ai:#2a4657;
--serif:"EB Garamond","Iowan Old Style","Palatino Linotype","Hiragino Mincho ProN","Noto Serif CJK JP",Georgia,serif;color-scheme:light dark}
@media(prefers-color-scheme:dark){:root{--paper:#16141a;--card:#211e25;--ink:#dad4ca;--mute:#968c7e;--line:rgba(255,255,255,.13);--ai:#8fb3c9}}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif)}
a{color:inherit;text-decoration:none}
.ic{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.tabs{position:sticky;top:0;z-index:5;background:var(--paper);display:flex;justify-content:center;align-items:center;gap:30px;padding:calc(10px + env(safe-area-inset-top)) 0 0;border-bottom:1px solid var(--line)}
.tabs a{color:var(--mute);padding:8px 14px 10px;border-bottom:2px solid transparent;margin-bottom:-1px;display:inline-flex}
.tabs a.cur{color:var(--ink);border-bottom-color:var(--ai)}
.tabs .rsep{width:1px;height:20px;background:var(--line);margin:0 -14px}
@media(max-width:420px){.tabs{gap:6px}.tabs a{padding:8px 10px 10px}.tabs .rsep{margin:0 -2px}}
main{max-width:1100px;margin:0 auto;padding:16px 16px 60px}
.home{max-width:620px;margin:6vh auto 0}
.home h1{font-weight:500;font-size:20px;letter-spacing:.3em;text-align:center;color:var(--mute);margin:0 0 32px}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tile{aspect-ratio:1;border:1px solid var(--line);border-radius:12px;background:var(--card);display:flex;align-items:center;justify-content:center}
.tile .ic{width:40%;height:40%;stroke-width:1.2}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
@media(max-width:420px){.grid{grid-template-columns:repeat(2,1fr);gap:10px}}
.cov{aspect-ratio:1;border-radius:6px;background:var(--card) center/cover no-repeat;border:1px solid var(--line);overflow:hidden;display:flex;align-items:center;justify-content:center}
.cov img{width:100%;height:100%;object-fit:cover}
.cov.txt{align-items:flex-start;justify-content:flex-start;padding:12px;font-size:15px;line-height:1.25;flex-direction:column;gap:8px;background:linear-gradient(160deg,var(--card),var(--paper))}
.cov.txt b{font-weight:500}.cov.txt i{color:var(--mute);font-size:13px}
.tt{font-size:14px;line-height:1.25;margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sm{font-size:13px;color:var(--mute)}
.det{max-width:760px;margin:0 auto}
.det .big{width:100%;max-height:72vh;object-fit:contain;display:block;margin:0 auto;border-radius:8px;background:var(--card)}
.det h1{font-weight:500;font-size:24px;text-align:center;margin:18px 0 4px}
.det .who{text-align:center;color:var(--mute)}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0}
.chip{border:1px solid var(--line);border-radius:16px;padding:6px 12px;font-size:14px;min-height:36px;display:inline-flex;align-items:center}
.src{text-align:center;font-size:13px;color:var(--mute);margin:10px 0}.src a{text-decoration:underline;text-decoration-color:var(--line)}
.play{width:72px;height:72px;border-radius:50%;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:center;margin:16px auto;border:0;cursor:pointer}
.play .ic{fill:currentColor;stroke:none;width:30px;height:30px}
iframe.emu{width:100%;aspect-ratio:4/3;border:0;border-radius:8px;background:#000}
h2{font-weight:500;font-size:17px;margin:28px 0 10px;display:flex;gap:8px;align-items:center;color:var(--mute)}
.strip{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}.strip>a{flex:0 0 130px}
input.q{width:100%;min-height:48px;font:inherit;padding:0 16px;border-radius:24px;border:1px solid var(--line);background:var(--card);color:var(--ink);margin-bottom:16px}
.fade{animation:f .2s ease}@keyframes f{from{opacity:0;transform:translateY(4px)}}
.grid>a,.strip>a{min-width:0}
