:root{color-scheme:dark;--bg:#121419;--panel:#191c23;--line:#2c313c;--text:#dfe3ec;--dim:#8a92a3;--accent:#8b7dff;--code:#0f1116}
@media (prefers-color-scheme:light){:root{color-scheme:light;--bg:#eef0f4;--panel:#f8f9fb;--line:#d5d9e1;--text:#1c1f26;--dim:#5f6675;--accent:#5a4ae0;--code:#f3f4f7}}
*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:15px/1.7 system-ui,-apple-system,'Hiragino Sans','Noto Sans JP',sans-serif}
a{color:var(--accent)}header.site{display:flex;align-items:center;gap:18px;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--panel);flex-wrap:wrap}
header.site .brand{font-weight:700;color:var(--text);text-decoration:none;margin-right:auto}header.site .brand span{color:var(--accent)}header.site nav{display:flex;gap:16px;flex-wrap:wrap}header.site nav a{color:var(--dim);text-decoration:none}header.site nav a[aria-current]{color:var(--text)}
.cta{display:inline-block;background:linear-gradient(135deg,#7063ff,#3fb8e6);color:#fff;border-radius:8px;padding:6px 14px;text-decoration:none;font-weight:600}
main{max-width:1080px;margin:0 auto;padding:24px 16px 48px}main.article{max-width:760px}h1{font-size:28px;line-height:1.3;margin:8px 0 12px}h2{font-size:20px;margin:36px 0 10px}h3{font-size:16px;margin:24px 0 6px}
.lead{color:var(--dim)}pre{background:var(--code);border:1px solid var(--line);border-radius:8px;padding:12px 14px;overflow-x:auto;font:13px/1.55 ui-monospace,'SF Mono',Menlo,monospace}code{font-family:ui-monospace,'SF Mono',Menlo,monospace;font-size:.92em}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.card video,.card img{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#121419}
.card p{margin:0;padding:8px 10px;font-size:13px;display:flex;justify-content:space-between;gap:8px;align-items:center}.card p span{color:var(--dim)}
footer.site{border-top:1px solid var(--line);padding:18px 16px 28px;color:var(--dim);font-size:13px;text-align:center}footer.site a{color:var(--dim);margin:0 8px}
ul,ol{padding-left:22px}li{margin:4px 0}.ad-slot{display:none}