/* /irreplaceable/ 人类不可替代系列。方块风，沿用 blocky-interior 的 --gb-* 变量。 */
.gm-irr{max-width:980px;margin:0 auto;padding:32px 20px 72px;display:grid;gap:28px;color:var(--gb-text,#20251e)}
.gm-irr h1,.gm-irr h2,.gm-irr h3{margin:0;text-wrap:balance;line-height:1.35}
.gm-irr__hero{background:var(--gb-card,#fffefa);border:2px solid var(--gb-edge,#343b30);border-top:8px solid #628c43;box-shadow:var(--gb-shadow,4px 4px 0 #343b30);padding:30px clamp(18px,4vw,34px);display:grid;gap:12px}
.gm-irr__kicker{margin:0;font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:12px;letter-spacing:.14em;color:#315e23}
.gb-interior .gm-irr__hero h1{font-size:clamp(32px,6vw,50px);letter-spacing:.04em}
.gm-irr__slogan{margin:0;font-size:18px;font-weight:600}
.gm-irr__q{margin:0;color:var(--gb-muted,#596153);font-size:15px;line-height:1.8;max-width:42em}
.gm-irr__stats{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.gm-irr__stats li{border:2px solid var(--gb-edge,#343b30);background:var(--gb-wash,#e5eadc);padding:5px 12px;font-size:13px;display:flex;align-items:baseline;gap:6px}
.gm-irr__stats b{font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:19px;font-variant-numeric:tabular-nums;color:#315e23}
.gm-irr__stats b.gm-irr__date{font-size:14px}

.gm-irr__wall{background:var(--gb-card,#fffefa);border:2px solid var(--gb-edge,#343b30);box-shadow:inset 2px 2px #fff,inset -2px -2px #d8ddcf,3px 3px #b0b8a4;padding:18px clamp(14px,3vw,24px);display:grid;gap:12px}
.gm-irr__wall-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.gm-irr__wall-head h2{font-size:19px}
.gm-irr__legend{display:flex;gap:16px;font-size:12px;color:var(--gb-muted,#596153)}
.gm-irr__legend span{display:inline-flex;align-items:center;gap:6px}
.gm-irr__legend i{width:12px;height:12px;display:inline-block;background:#d6dacf;border:1px solid #b7beae}
.gm-irr__legend i.is-on{background:#3b7322;border-color:#24481a}
.gm-irr__grid{display:grid;grid-template-columns:repeat(25,minmax(0,1fr));gap:4px}
.gm-irr__cell{display:block;aspect-ratio:1;max-width:100%;background:#d6dacf;border:1px solid #c3c9ba}
a.gm-irr__cell.is-on{background:#3b7322;border-color:#24481a;box-shadow:inset 2px 2px #5f9a45,inset -2px -2px #24481a}
a.gm-irr__cell.is-on:hover{filter:brightness(1.15)}
@media (max-width:600px){.gm-irr__grid{grid-template-columns:repeat(15,minmax(0,1fr))}}

.gm-irr__eps{display:grid;gap:14px}
.gm-irr__ep{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:16px;row-gap:4px;padding:16px 18px;text-decoration:none;color:inherit;background:var(--gb-card,#fffefa);border:2px solid var(--gb-edge,#343b30);box-shadow:inset 2px 2px #fff,inset -2px -2px #d8ddcf,3px 3px #b0b8a4;scroll-margin-top:90px}
.gm-irr__ep:hover{background:var(--gb-wash,#e5eadc)}
.gm-irr__ep:target{outline:3px dashed #3b7322;outline-offset:3px}
.gm-irr__no{grid-row:span 3;align-self:start;min-width:66px;text-align:center;border:2px solid var(--gb-edge,#343b30);background:var(--gb-wash,#e5eadc);padding:8px 6px;font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:12px;line-height:1.2}
.gm-irr__no b{display:block;font-size:24px;color:#315e23;font-variant-numeric:tabular-nums}
.gm-irr__ep h3{font-size:17px}
.gm-irr__ep p{margin:0;font-size:14px;line-height:1.75;color:var(--gb-muted,#596153)}
.gm-irr__meta{display:flex;flex-wrap:wrap;gap:14px;font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:12px;color:var(--gb-muted,#596153)}
.gm-irr__star{color:#9a5a12}
.gm-irr__next{border:2px dashed var(--gb-edge,#343b30);padding:16px 18px;display:grid;gap:4px}
.gm-irr__next b{font-family:ui-monospace,"SF Mono",Menlo,monospace;color:#315e23}
.gm-irr__next p{margin:0;font-size:14px;color:var(--gb-muted,#596153)}
@media (max-width:480px){.gm-irr{padding-inline:16px}.gm-irr__ep{grid-template-columns:minmax(0,1fr)}.gm-irr__no{grid-row:auto;justify-self:start;display:flex;gap:4px;align-items:baseline;padding:4px 8px}.gm-irr__no b{display:inline;font-size:16px}}
