:root{color-scheme:dark;--bg:#0c0c0e;--surface:#17171b;--surface-hover:#222228;--border:#2e2e36;--text:#f1f1f3;--muted:#a3a3ad;--accent:#e5322d;--accent-soft:#e5322d24;--gold:#e8b10e;--radius:.75rem;--font:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Noto Sans KR", "Noto Sans TC", "Noto Sans SC", "Meiryo", system-ui, sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);margin:0;line-height:1.7}a{color:var(--accent)}h1,h2,h3{letter-spacing:.01em;line-height:1.3}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 16px}.site-header{z-index:20;backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#0c0c0ee0;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:60px;display:flex}.brand{color:var(--text);letter-spacing:.08em;white-space:nowrap;align-items:center;gap:.4rem;font-size:1.15rem;font-weight:900;text-decoration:none;display:flex}.header-actions{align-items:center;gap:.75rem;display:flex}.my-list-link{color:var(--gold);white-space:nowrap;align-items:center;gap:.35rem;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex}.kofi-btn{color:#fff;white-space:nowrap;background:#ff5e5b;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .7rem .3rem .55rem;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-flex}.kofi-btn:hover{color:#fff;background:#ff7a77}.kofi-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.25rem;height:1.25rem}.kofi-btn-footer{padding:.5rem 1rem .5rem .8rem;font-size:.95rem}.my-list-count{background:var(--gold);color:#111;text-align:center;border-radius:999px;min-width:1.3rem;padding:0 .35rem;font-size:.75rem}@media (width<=640px){.my-list-label,.kofi-btn-label{display:none}.site-header .kofi-btn{padding:.4rem}}.site-nav ul{scrollbar-width:none;gap:.4rem;margin:0 auto;padding-top:0;padding-bottom:.6rem;list-style:none;display:flex;overflow-x:auto}.site-nav ul::-webkit-scrollbar{display:none}.site-nav a{border:1px solid var(--border);color:var(--text);white-space:nowrap;border-radius:999px;padding:.3rem .85rem;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-block}.site-nav a:hover,.site-nav a[aria-current=page]{border-color:var(--accent);color:var(--accent)}.menu summary{border:1px solid var(--border);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.85rem;font-weight:700;list-style:none;display:inline-flex}.menu summary::-webkit-details-marker{display:none}.menu[open] summary{border-color:var(--accent)}.menu summary svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:1.2rem;height:1.2rem}.menu-panel{background:var(--bg);border-bottom:1px solid var(--border);max-height:calc(100vh - 70px);padding:1rem 0;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 12px 24px #00000080}@media (width<=899px){.site-nav{display:none}}@media (width<=440px){.menu-label{display:none}.header-inner{gap:.5rem}.header-actions{gap:.4rem}.brand{letter-spacing:.02em;font-size:.92rem}.site-header .kofi-btn{padding:.3rem}}@media (width>=900px){.menu{display:none}}.brand-mark{color:var(--accent)}main{padding-top:2rem;padding-bottom:4rem}.section{margin-top:3rem}.section-title{align-items:baseline;gap:.75rem;margin:0 0 1rem;font-size:1.35rem;display:flex}.section-title:before{content:"";background:var(--accent);border-radius:2px;align-self:center;width:6px;height:1.1em}.card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.9rem;display:grid}.breadcrumb{color:var(--muted);flex-wrap:wrap;gap:.4rem;margin:0 0 1rem;padding:0;font-size:.85rem;list-style:none;display:flex}.breadcrumb li+li:before{content:"/";margin-right:.4rem}.breadcrumb a{color:var(--muted)}.site-footer{border-top:1px solid var(--border);color:var(--muted);padding:1.5rem 0 2.5rem;font-size:.85rem}.site-footer .kofi-btn,.site-footer .kofi-btn:hover{color:#fff}.site-footer .copyright{margin-top:.5rem}.btn{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:999px;align-items:center;padding:.7rem 1.3rem;font-family:inherit;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{filter:brightness(1.1)}@media (width<=380px){.brand-mark{display:none}}
