/* Maniac DB — シンプル版(10-13 深夜: 背景の光・ぼかし・自前フォントをやめた)。旧: 四角寄りのガラス風(2026-10-13 作り直し)。背景のぼかした光の上に、半透明の面を重ねる。
   色は :root の変数だけ。ダークは端末の設定に合わせ、右上のボタンで切り替え(html[data-theme])。
   ぼかし(backdrop-filter)はヘッダー・パネルなど少数に限る(作品カードは半透明だけ。スマホで重くしない)。 */

:root {
  color-scheme: light;
  --bg: #eef1f8;
  --glow1: rgba(147, 170, 220, .45); --glow2: rgba(200, 190, 215, .35); --glow3: rgba(150, 200, 205, .3);
  --glass: rgba(255, 255, 255, .58); --glass2: rgba(255, 255, 255, .78); --glass-hd: rgba(255, 255, 255, .7);
  --edge: rgba(15, 23, 42, .1); --line: rgba(15, 23, 42, .12); --line2: rgba(15, 23, 42, .07);
  --text: #0f172a; --text2: #334155; --mute: #64748b; --faint: #94a3b8;
  --acc1: #1d4ed8; --acc2: #1d4ed8; --acc-t: #1d4ed8; --link: #1d4ed8;
  --sale: #f43f5e; --sale-t: #e11d48; --ok: #059669; --star: #d97706; --gold1: #f59e0b; --gold2: #f97316;
  --chip: rgba(255, 255, 255, .7); --shadow: 0 1px 3px rgba(15, 23, 42, .08); --shadow-s: 0 1px 2px rgba(15, 23, 42, .06);
  --noimg1: #5b6b8c; --noimg2: #4a5875; --noimgg1: #4f7a6a; --noimgg2: #3f6658;
  --font: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic UI", "Segoe UI", Meiryo, sans-serif;
  --r: 6px; --r-s: 4px;
}
:root[data-theme=dark] {
  color-scheme: dark;
  --bg: #0a0c14;
  --glow1: rgba(70, 90, 140, .3); --glow2: rgba(90, 80, 120, .2); --glow3: rgba(40, 110, 120, .16);
  --glass: rgba(23, 26, 40, .58); --glass2: rgba(30, 34, 52, .72); --glass-hd: rgba(14, 16, 26, .68);
  --edge: rgba(255, 255, 255, .1); --line: rgba(255, 255, 255, .12); --line2: rgba(255, 255, 255, .07);
  --text: #e8eaf2; --text2: #c4c9d8; --mute: #8f97ad; --faint: #6b7287;
  --acc1: #3b6ef5; --acc2: #3b6ef5; --acc-t: #8fb0ff; --link: #8fb0ff;
  --sale: #f43f5e; --sale-t: #fb7185; --ok: #34d399; --star: #fbbf24;
  --chip: rgba(255, 255, 255, .06); --shadow: 0 1px 3px rgba(0, 0, 0, .4); --shadow-s: 0 1px 2px rgba(0, 0, 0, .35);
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { -webkit-text-size-adjust: 100%; background: var(--bg); }
body { margin: 0; color: var(--text); font: 400 14.5px/1.75 var(--font); background: var(--bg); min-height: 100vh; position: relative; }
body::before { content: ""; position: fixed; inset: -20vh -10vw; z-index: -1; pointer-events: none;
  background: radial-gradient(52vw 46vw at 6% 4%, var(--glow1), transparent 68%), radial-gradient(48vw 44vw at 98% 18%, var(--glow2), transparent 68%),
              radial-gradient(56vw 46vw at 50% 100%, var(--glow3), transparent 70%); filter: blur(12px); }
a { color: var(--link); text-decoration: none; }
a:hover { text-decoration: underline; }
h1, h2, h3, p, ul, ol { margin: 0; }
img { color: transparent; }
:focus-visible { outline: 2px solid var(--acc1); outline-offset: 2px; border-radius: 6px; }
.skip { position: absolute; left: -999px; top: 8px; background: var(--glass2); padding: 6px 12px; border-radius: 6px; z-index: 60; }
.skip:focus { left: 8px; }
.w { max-width: 1200px; margin: 0 auto; padding: 0 16px; }
.mute { color: var(--mute); }
.glassy, .hdr, .panel, .hero, .tools, .ft .ftin, .gate-box, .facts, .wl, .kpi, .mlist { -webkit-backdrop-filter: blur(18px) saturate(160%); backdrop-filter: blur(18px) saturate(160%); }

/* ヘッダー */
.hdr { position: sticky; top: 0; z-index: 40; background: var(--glass-hd); border-bottom: 1px solid var(--line); }
.hrow { display: flex; align-items: center; gap: 14px; height: 60px; }
.logo { display: inline-flex; align-items: center; gap: 9px; color: var(--text); text-decoration: none !important; flex: none; }
.logo svg { width: 32px; height: 32px; border-radius: 4px; box-shadow: 0 0 0 1px var(--line); }
.logo b { font-size: 21px; letter-spacing: .01em; }
.test { font-size: 11px; font-weight: 700; color: #fff; background: var(--sale); padding: 2px 9px; border-radius: 4px; flex: none; }
.search { margin-left: auto; display: flex; align-items: center; gap: 6px; flex: 0 1 380px; min-width: 0; background: var(--chip); border: 1px solid var(--line); border-radius: 4px; padding: 0 12px; height: 38px; }
.search svg { width: 17px; height: 17px; fill: none; stroke: var(--mute); stroke-width: 2; stroke-linecap: round; flex: none; }
.search input { flex: 1; min-width: 0; border: 0; background: transparent; color: var(--text); font: 400 14px var(--font); outline: none; }
.theme { flex: none; width: 38px; height: 38px; border-radius: 4px; border: 1px solid var(--line); background: var(--chip); display: grid; place-items: center; cursor: pointer; color: var(--text2); }
.theme svg { width: 18px; height: 18px; fill: currentColor; }
.gnav .w { display: flex; gap: 6px; overflow-x: auto; padding-bottom: 10px; scrollbar-width: none; }
.gnav .w::-webkit-scrollbar { display: none; }
.gnav a { flex: none; padding: 6px 14px; border-radius: 4px; font-size: 13.5px; font-weight: 700; color: var(--text2); text-decoration: none; border: 1px solid transparent; }
.gnav a:hover { background: var(--chip); border-color: var(--line); }
.gnav a.on { color: #fff; background: var(--acc1); }

main { padding: 22px 0 40px; }
.crumb { font-size: 12px; color: var(--mute); margin-bottom: 10px; }
.crumb a { color: var(--mute); }
.bar { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; font-size: 19px; font-weight: 700; margin: 34px 0 14px; letter-spacing: .01em; }
.bar a { font-size: 13px; font-weight: 700; white-space: nowrap; }
h1.bar { font-size: 27px; margin: 0 0 10px; }
.panel .bar { margin-top: 0; font-size: 16.5px; }
.desc { color: var(--text2); font-size: 14px; line-height: 1.9; margin: 0 0 14px; max-width: 860px; }
.attn { font-size: 12.5px; line-height: 1.8; color: var(--mute); margin-top: 8px; }
.panel { background: var(--glass); border: 1px solid var(--edge); border-radius: var(--r); padding: 16px 18px; box-shadow: var(--shadow); }
.two { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 34px; }
.two > * { min-width: 0; }
.two .bar { margin-top: 0; }

/* ヒーロー */
.hero { display: grid; grid-template-columns: 1.3fr 1fr; gap: 26px; align-items: center; background: var(--glass); border: 1px solid var(--edge); border-radius: 6px; padding: 30px 30px; box-shadow: var(--shadow); }
.eyebrow { font-size: 12px; font-weight: 700; color: var(--mute); }
.hero h1 { font-size: 32px; line-height: 1.35; margin: 6px 0 10px; letter-spacing: 0;
  color: var(--text); }
.lead2 { color: var(--text2); font-size: 14.5px; line-height: 1.9; }
.quick { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 16px; }
.pill { font-size: 12.5px; font-weight: 700; padding: 5px 12px; border-radius: 4px; background: var(--chip); border: 1px solid var(--line); color: var(--text2); text-decoration: none !important; }
.pill:hover { border-color: var(--acc1); color: var(--acc-t); }
.pill.hl { color: #fff; border-color: transparent; background: var(--acc1); }
.kpis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.kpi { background: var(--glass2); border: 1px solid var(--edge); border-radius: var(--r-s); padding: 12px 14px; line-height: 1.35; }
.kpi small { display: block; font-size: 12px; color: var(--mute); font-weight: 700; }
.kpi b { display: block; font-size: 30px; line-height: 1.25; margin-top: 2px; letter-spacing: -.01em; }
.kpi b.sm { font-size: 17px; }
.kpi b i { font-style: normal; font-size: 13px; margin-left: 3px; color: var(--mute); }
.kpi span { display: block; font-size: 11.5px; color: var(--mute); margin-top: 3px; }
.kpis.wide { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); margin-bottom: 14px; }

/* 作品カード */
.grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 16px; }
.wc { background: var(--glass); border: 1px solid var(--edge); border-radius: var(--r); overflow: hidden; box-shadow: var(--shadow-s); display: flex; flex-direction: column; transition: transform .15s ease, box-shadow .15s ease; min-width: 0; }
.wc:hover { border-color: var(--acc1); }
.wc .th { position: relative; display: block; line-height: 0; }
.cv { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; background: var(--chip); }
.noimg { display: grid; place-items: center; background: linear-gradient(135deg, var(--noimg1), var(--noimg2)); }
.noimg.game { background: linear-gradient(135deg, var(--noimgg1), var(--noimgg2)); }
.noimg i { font-style: normal; font-size: 13px; font-weight: 700; color: rgba(255, 255, 255, .9); line-height: 1.4; }
.wc .rk, .rl .rk { position: absolute; top: 8px; left: 8px; min-width: 28px; height: 28px; padding: 0 6px; border-radius: 4px; display: grid; place-items: center; font-size: 13px; font-weight: 700; line-height: 1;
  color: #fff; background: rgba(15, 23, 42, .72); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.grid .wc:nth-child(-n+3) .rk { background: var(--gold1); }
.wc .off { position: absolute; top: 8px; right: 8px; }
.off { display: inline-block; font-size: 11.5px; font-weight: 700; color: #fff; line-height: 1; padding: 5px 8px; border-radius: 4px; background: var(--sale); }
.wc .bd { padding: 11px 13px 13px; display: flex; flex-direction: column; gap: 5px; flex: 1; }
.wt { font-weight: 700; color: var(--text); line-height: 1.5; font-size: 14px; word-break: break-all; }
.wc .wt { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.mk { display: block; font-size: 12px; color: var(--mute); }
.mk a { color: var(--mute); }
.prow { display: flex; align-items: baseline; flex-wrap: wrap; gap: 2px 8px; margin-top: auto; }
.pr { font-size: 17px; font-weight: 700; color: var(--text); letter-spacing: -.01em; }
.pr.sale { color: var(--sale-t); }
s { font-size: 12px; color: var(--faint); }
.end { font-size: 11px; color: var(--sale-t); width: 100%; }
.meta { font-size: 11.5px; color: var(--mute); }
.st { color: var(--star); font-weight: 700; }
.chips { display: flex; flex-wrap: wrap; gap: 4px; }
.chip { font-size: 11px; line-height: 1.5; padding: 2px 8px; border-radius: 4px; background: var(--chip); border: 1px solid var(--line); color: var(--text2); white-space: nowrap; text-decoration: none !important; }
.chip.ok { color: var(--ok); border-color: color-mix(in srgb, var(--ok) 40%, transparent); }
.chip.ai { color: var(--mute); }
.chip.lk { color: var(--acc-t); border-color: color-mix(in srgb, var(--acc1) 35%, transparent); }
a.chip:hover { border-color: var(--acc1); color: var(--acc-t); }

/* 並べ替え・絞り込み */
.tools { background: var(--glass); border: 1px solid var(--edge); border-radius: var(--r); padding: 12px 14px; margin-bottom: 16px; display: grid; gap: 10px; box-shadow: var(--shadow-s); }
.tabs { display: flex; gap: 6px; flex-wrap: wrap; }
.tabs button { font: 700 13px var(--font); border: 1px solid var(--line); background: var(--chip); color: var(--text2); padding: 5px 13px; border-radius: 4px; cursor: pointer; }
.tabs button[aria-pressed=true] { color: #fff; border-color: transparent; background: var(--acc1); }
.flt { display: flex; gap: 8px 16px; flex-wrap: wrap; align-items: center; font-size: 13px; color: var(--text2); }
.flt label { display: inline-flex; gap: 6px; align-items: center; cursor: pointer; }
.flt input { accent-color: var(--acc1); }
.flt select { font: 400 13px var(--font); padding: 5px 10px; border: 1px solid var(--line); border-radius: 4px; background: var(--chip); color: var(--text); max-width: 100%; }
.cnt { font-size: 12.5px; color: var(--mute); }
.cnt b { font-size: 18px; color: var(--text); margin-right: 2px; }
.more { display: block; margin: 18px auto 0; font: 700 14px var(--font); padding: 10px 28px; border-radius: 4px; border: 1px solid var(--line); background: var(--glass2); color: var(--text); cursor: pointer; box-shadow: var(--shadow-s); }
.none { padding: 22px; text-align: center; color: var(--mute); }

/* 順位の一覧(狭い枠) */
.rl { list-style: none; padding: 0; display: grid; gap: 8px; }
.rl li { position: relative; display: grid; grid-template-columns: 30px 72px 1fr; gap: 10px; align-items: center; font-size: 12.5px; }
.rl .rk { position: static; }
.rl li:nth-child(-n+3) .rk { background: var(--gold1); }
.rl li > a { line-height: 0; }
.rl .cv { width: 72px; border-radius: 6px; }
.rl .wt { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 13px; }
.rl .rp { display: flex; gap: 6px; align-items: baseline; }
.rl .rp .pr { font-size: 14px; }

/* アーティスト */
.arts { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 12px; }
.arts li { background: var(--glass); border: 1px solid var(--edge); border-radius: var(--r-s); padding: 12px 14px; font-size: 12.5px; line-height: 1.55; display: flex; flex-direction: column; gap: 4px; box-shadow: var(--shadow-s); min-width: 0; }
.arts .nums { color: var(--text2); }

/* MOD・まとめの一覧 */
.mods { list-style: none; padding: 0; display: grid; gap: 2px; }
.mods li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; padding: 8px 2px; border-bottom: 1px solid var(--line2); font-size: 13px; }
.mods li:last-child { border-bottom: 0; }
.mods li a { font-weight: 700; }
.mods li b { font-size: 12px; padding: 1px 8px; border-radius: 4px; background: var(--chip); border: 1px solid var(--line); }
.mods li time { margin-left: auto; font-size: 12px; color: var(--mute); }
.mods li span { width: 100%; font-size: 12px; color: var(--mute); }
.mlist { list-style: none; display: grid; gap: 0; background: var(--glass); border: 1px solid var(--edge); border-radius: var(--r); padding: 6px 18px; }
.mlist li { padding: 12px 0; border-bottom: 1px solid var(--line2); }
.mlist li:last-child { border-bottom: 0; }

/* 表 */
.wlw { overflow-x: auto; border-radius: var(--r); }
table { border-collapse: separate; border-spacing: 0; width: 100%; }
.wl { background: var(--glass); border: 1px solid var(--edge); border-radius: var(--r); font-size: 13px; overflow: hidden; box-shadow: var(--shadow-s); }
.wl th { text-align: left; font-size: 12px; color: var(--mute); font-weight: 700; padding: 10px 12px; border-bottom: 1px solid var(--line); white-space: nowrap; }
.wl td { padding: 10px 12px; border-bottom: 1px solid var(--line2); vertical-align: top; }
.wl tr:last-child td { border-bottom: 0; }
.wl tbody tr:hover td { background: var(--chip); }
.wl td.nm, .wl td.dt { white-space: nowrap; text-align: right; font-variant-numeric: tabular-nums; }
.wl td.dt { color: var(--mute); }
.wl .wt { font-size: 13.5px; }
.wl .chips { margin-top: 5px; }
.wl.md td .chip { margin: 0 3px 3px 0; display: inline-block; }

/* 作品ページ */
.work h1 { font-size: 24px; line-height: 1.5; word-break: break-all; }
.wk { display: grid; grid-template-columns: 340px 1fr; gap: 22px; margin: 16px 0 6px; align-items: start; }
.wkc { background: var(--glass); border: 1px solid var(--edge); border-radius: var(--r); padding: 12px; box-shadow: var(--shadow); }
.wkc .cvl, .wkc .cv { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--r-s); display: block; }
.btn.go { margin-top: 12px; text-align: center; }
.wkc .fine { font-size: 11.5px; color: var(--mute); margin-top: 8px; line-height: 1.6; }
.facts { background: var(--glass); border: 1px solid var(--edge); border-radius: var(--r); overflow: hidden; font-size: 13.5px; box-shadow: var(--shadow-s); }
.facts th { width: 10em; text-align: left; color: var(--mute); font-size: 12.5px; font-weight: 700; padding: 9px 12px; border-bottom: 1px solid var(--line2); vertical-align: top; }
.facts td { padding: 9px 12px; border-bottom: 1px solid var(--line2); word-break: break-word; }
.facts tr:last-child th, .facts tr:last-child td { border-bottom: 0; }
.facts .pr { font-size: 18px; margin-right: 6px; }
.facts s { margin-right: 6px; }
.facts .chip { display: inline-block; margin: 1px 3px 1px 0; }
.facts .end { display: block; }
.spark { display: block; width: 100%; max-width: 640px; height: auto; background: var(--glass); border: 1px solid var(--edge); border-radius: var(--r); margin-bottom: 12px; }
.spark polyline { stroke: var(--acc1); }
.spark text { font-size: 11px; fill: var(--mute); font-family: var(--font); }

/* 相場の横棒(1系列。数字は文字でも出す) */
h3.sub { font-size: 14px; margin: 14px 0 8px; }
.bars { font-size: 12.5px; }
.bars caption { display: none; }
.bars th { text-align: left; font-weight: 400; white-space: nowrap; padding: 4px 10px 4px 0; width: 1%; color: var(--text2); }
.bars td { padding: 4px 0; }
.bars td.nm { width: 1%; white-space: nowrap; padding-left: 10px; text-align: right; color: var(--text2); font-variant-numeric: tabular-nums; }
.bar1 { display: block; height: 10px; border-radius: 4px; background: var(--acc1); min-width: 0; }
.notes { padding-left: 1.2em; font-size: 13.5px; color: var(--text2); line-height: 1.9; }

.tagidx { display: flex; flex-wrap: wrap; gap: 8px; }
.tagidx a { padding: 7px 14px; border-radius: 4px; background: var(--glass); border: 1px solid var(--edge); color: var(--text); font-weight: 700; font-size: 13px; text-decoration: none; box-shadow: var(--shadow-s); }
.tagidx a:hover { border-color: var(--acc1); }
.tagidx small { color: var(--mute); margin-left: 6px; font-weight: 400; }
.months { display: flex; flex-wrap: wrap; gap: 6px 12px; font-size: 13.5px; margin: 4px 0; }
.months small { color: var(--mute); }

/* 読みもの(このサイトについて など) */
.entry h1 { font-size: 26px; line-height: 1.5; }
.entry .prose { background: var(--glass); border: 1px solid var(--edge); border-radius: var(--r); padding: 6px 22px 10px; margin-top: 14px; box-shadow: var(--shadow-s); }
.prose { font-size: 15px; line-height: 1.95; }
.panel.prose { font-size: 15px; }
.prose h2 { font-size: 18px; margin: 1.6em 0 .6em; }
.prose p { margin: 0 0 1em; }
.prose ul, .prose ol { margin: 0 0 1.1em; padding-left: 1.4em; }
.eye { display: block; width: 100%; height: auto; border-radius: var(--r); }
.tocbox, .box { background: var(--glass2); border: 1px solid var(--edge); border-radius: var(--r-s); padding: 10px 16px; margin: 14px 0; }
.box .lb { font-weight: 700; font-size: 12px; color: var(--sale-t); }

/* フッター */
.ft { padding: 10px 0 40px; }
.ft .ftin { background: var(--glass); border: 1px solid var(--edge); border-radius: 6px; padding: 22px 24px; display: grid; gap: 12px; box-shadow: var(--shadow); }
.ft .fl p { font-size: 13px; color: var(--text2); margin-top: 8px; line-height: 1.8; }
.logo.sm svg { width: 26px; height: 26px; }
.logo.sm b { font-size: 17px; }
.ft .links { display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 13px; font-weight: 700; }
.ft .fine { font-size: 11.5px; color: var(--mute); line-height: 1.8; }
.totop { position: fixed; right: 14px; bottom: 16px; width: 44px; height: 44px; border-radius: 4px; display: grid; place-items: center; z-index: 30; color: #fff; font-size: 18px; text-decoration: none !important;
  background: var(--acc1);  }

/* 年齢確認(ページの上にかぶせる) */
.gate-ov { display: none; }
html.agegate .gate-ov { display: flex; position: fixed; inset: 0; z-index: 100; background: rgba(10, 12, 20, .55); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); overflow: auto; padding: 16px 0; }
html.agegate body { overflow: hidden; }
html.agegate .totop { display: none; }
.gate { display: flex; min-height: 100vh; }
.gate-box { margin: auto; max-width: 460px; width: calc(100% - 32px); background: var(--glass); border: 1px solid var(--edge); border-radius: 6px; padding: 30px 26px 24px; text-align: center; box-shadow: var(--shadow); }
.gate-box .gl svg { width: 64px; height: 64px; border-radius: 6px; box-shadow: var(--shadow); }
.gate-box h1 { font-size: 30px; margin-top: 10px; }
.gate-box .sub { font-size: 13.5px; color: var(--text2); line-height: 1.85; margin-top: 8px; }
.gate-box .q { font-weight: 700; font-size: 16px; margin-top: 18px; display: flex; align-items: center; justify-content: center; gap: 8px; }
.r18 { font-size: 12px; color: #fff; padding: 2px 9px; border-radius: 4px; background: var(--sale); }
.btns { display: grid; gap: 10px; margin-top: 12px; }
.btn { font: 700 15px/1.4 var(--font); padding: 12px 16px; border: 0; border-radius: 4px; color: #fff; cursor: pointer; text-decoration: none !important; display: block;
  background: var(--acc1); }
.btn.ghost { background: var(--chip); color: var(--text2); border: 1px solid var(--line); box-shadow: none; }
.gate .fine { color: var(--mute); font-size: 12px; margin-top: 16px; line-height: 1.75; }

@media (max-width: 900px) {
  .hero { grid-template-columns: 1fr; padding: 22px 18px; gap: 18px; }
  .hero h1 { font-size: 27px; }
  .two { grid-template-columns: 1fr; }
  .wk { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .w { padding: 0 12px; }
  .hrow { height: auto; flex-wrap: wrap; padding: 10px 0 8px; gap: 10px; }
  .search { order: 3; flex: 1 1 100%; }
  .theme { margin-left: auto; }
  .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .wc { border-radius: 6px; }
  .wc .bd { padding: 9px 10px 11px; }
  .wt { font-size: 13px; }
  .pr { font-size: 15.5px; }
  .wc .chips { display: none; }
  h1.bar { font-size: 22px; }
  .bar { font-size: 17px; margin-top: 28px; }
  .kpi b { font-size: 24px; }
  .wl .hide-sm { display: none; }
  .facts th { width: 7.5em; }
  .work h1 { font-size: 20px; }
}
@media (min-width: 901px) { .totop { display: none; } }
@media (prefers-reduced-motion: reduce) { .wc { transition: none; } }
@media print { .hdr, .totop, .tools { display: none; } body::before { display: none; } }

/* ===== シンプル版の上書き(2026-10-13 深夜。ユーザー「ダサい・フォント凝りすぎ」) ===== */
:root { --bg: #f5f6f8; --glass: #fff; --glass2: #fff; --glass-hd: rgba(255, 255, 255, .92); --edge: #e3e6eb; --line: #e3e6eb; --line2: #eef0f3; --chip: #f1f3f6;
  --text: #16181d; --text2: #3d434d; --mute: #6b7280; --shadow: none; --shadow-s: none; --r: 8px; --r-s: 6px; }
:root[data-theme=dark] { --bg: #0f1115; --glass: #171a20; --glass2: #1c2027; --glass-hd: rgba(15, 17, 21, .92); --edge: #262b33; --line: #262b33; --line2: #1f242b; --chip: #1f242b;
  --text: #e8eaee; --text2: #c3c8d1; --mute: #8b93a1; }
body::before { display: none; }
body { font-size: 14px; line-height: 1.7; }
.glassy, .panel, .hero, .tools, .ft .ftin, .gate-box, .facts, .wl, .kpi, .mlist { -webkit-backdrop-filter: none; backdrop-filter: none; }
.hdr { -webkit-backdrop-filter: saturate(180%) blur(8px); backdrop-filter: saturate(180%) blur(8px); }
.logo b { font-size: 19px; letter-spacing: 0; }
.search { border-radius: 6px; background: var(--chip); border-color: transparent; }
.search:focus-within { border-color: var(--acc1); background: var(--glass); }
.theme { border-radius: 6px; background: transparent; }
/* メニュー: 下線で選択中を示す */
.gnav .w { gap: 2px; padding-bottom: 0; }
.gnav a { padding: 10px 12px 9px; border-radius: 0; border: 0; border-bottom: 2px solid transparent; font-weight: 600; font-size: 13.5px; color: var(--mute); }
.gnav a:hover { background: transparent; color: var(--text); }
.gnav a.on { background: transparent; color: var(--text); border-bottom-color: var(--text); box-shadow: none; }
/* ホームの帯 */
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.strip { display: flex; flex-wrap: wrap; gap: 6px 22px; align-items: baseline; font-size: 13px; color: var(--mute); padding: 4px 0 2px; }
.strip b { font-size: 20px; color: var(--text); margin-right: 3px; font-variant-numeric: tabular-nums; }
.strip .upd { margin-left: auto; font-size: 12px; }
.quick { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0 0; }
.pill { font-weight: 600; font-size: 12.5px; padding: 4px 10px; border-radius: 6px; background: var(--glass); border: 1px solid var(--line); color: var(--text2); }
.pill.hl { background: var(--glass); color: var(--acc-t); border-color: var(--line); }
/* 見出し */
.bar { font-size: 17px; margin: 30px 0 12px; }
h1.bar { font-size: 22px; }
/* 作品カード: 画像・題名・サークル・価格・数字だけ */
.grid { grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 18px 14px; }
.wc { background: transparent; border: 0; border-radius: 0; overflow: visible; }
.wc:hover { border-color: transparent; }
.wc .th { border-radius: 8px; overflow: hidden; background: var(--chip); }
.wc:hover .th { outline: 2px solid var(--acc1); outline-offset: 0; }
.wc .bd { padding: 8px 2px 0; gap: 3px; }
.wc .wt { font-size: 13.5px; font-weight: 600; line-height: 1.45; }
.mk { font-size: 12px; }
.pr { font-size: 15.5px; }
.meta { font-size: 11.5px; }
.noimg { background: var(--chip); }
.noimg.game { background: var(--chip); }
.noimg i { color: var(--mute); font-weight: 600; }
.off { border-radius: 4px; font-size: 11px; padding: 3px 6px; }
.wc .rk { border-radius: 4px; background: rgba(17, 24, 39, .8); }
.panel { padding: 14px 16px; }
.kpi { border-color: var(--line); }
.facts th { color: var(--mute); }
.tabs button { border-radius: 6px; font-weight: 600; }
.tabs button[aria-pressed=true] { background: var(--text); color: var(--bg); }
.btn { border-radius: 6px; font-weight: 600; }
.ft .ftin { border-radius: 8px; }
@media (max-width: 640px) {
  .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 10px; }
  .strip { gap: 4px 14px; }
  .strip b { font-size: 17px; }
  .strip .upd { margin-left: 0; width: 100%; }
}
.totop { background: var(--text); color: var(--bg); box-shadow: none; opacity: .85; }
/* 価格帯・推し */
.coin { position: absolute; left: 8px; bottom: 8px; font-size: 11px; font-weight: 700; color: #fff; background: #16a34a; padding: 2px 6px; border-radius: 4px; line-height: 1.4; }
.heart { position: absolute; left: 8px; top: 8px; font-size: 13px; color: #fff; background: #e11d48; border-radius: 4px; padding: 1px 6px; line-height: 1.5; }
.wc .rk + .off + .coin, .wc .rk ~ .heart { top: 40px; }
.note { margin: 10px 0 0; padding: 10px 12px; border-left: 3px solid #e11d48; background: var(--glass); border-radius: 0 6px 6px 0; font-size: 14px; }
.note b { display: block; font-size: 12px; color: #e11d48; margin-bottom: 2px; }
.flt select + select { margin-left: 0; }
/* ページ切り替え中の細いバー */
.navbar { position: fixed; top: 0; left: 0; height: 2px; width: 0; background: var(--acc1); z-index: 200; opacity: 0; transition: width .2s ease, opacity .2s; }
.navbar.on { width: 70%; opacity: 1; transition: width 1.2s ease-out; }
