.im-banner{margin-top:1rem;padding:.9rem 1.1rem;border-radius:var(--r-sm);background:var(--amber-soft);color:var(--ink-2);border:1px solid #F3D9A8;max-width:62rem}
.im-layout{display:grid;grid-template-columns:17rem 1fr;gap:2rem;align-items:start}
.im-side{position:sticky;top:5.5rem;display:grid;gap:.75rem;font-size:.92rem}
.im-side summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}
.im-toc{margin:0;padding-left:1.2rem;display:grid;gap:.35rem}.im-toc a{color:var(--ink)}
.im-subset{list-style:none;margin:0;padding:0;display:grid;gap:.2rem;color:var(--ink-2)}
.im-sid{display:inline-block;min-width:2.6rem;color:var(--muted);font-variant-numeric:tabular-nums}
.im-how p{margin:.4rem 0;color:var(--ink-2)}
.im-list{display:grid;gap:1.75rem}
.im-mix{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:1.5rem 1.6rem;scroll-margin-top:5.5rem}
.im-num{margin:0;color:var(--muted);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}
.im-head h2{margin:.25rem 0 .6rem;font-size:1.35rem;line-height:1.25}
.im-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}
.im-type,.im-score{padding:.25rem .7rem;border-radius:999px;font-size:.82rem;font-weight:600}
.im-type-synergistic{background:var(--accent);color:#fff}.im-type-complementary{background:var(--accent-soft);color:var(--accent)}
.im-type-reinforcing{background:#E8F5EE;color:#11643A}.im-type-tension{background:var(--amber-soft);color:var(--amber);border:1px solid #F3D9A8}
.im-score{background:var(--bg-alt);color:var(--ink-2);font-weight:500}
.im-asps{list-style:none;margin:0 0 1.2rem;padding:0;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}
.im-asp{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);padding:.9rem 1rem}
.im-org{margin:0;font-weight:600;font-size:.9rem;color:var(--accent)}.im-title{margin:.3rem 0;color:var(--ink);line-height:1.4}
.im-meta,.im-src{margin:.25rem 0 0;font-size:.82rem;color:var(--muted)}.im-src a{color:var(--muted)}
.im-body{display:grid;grid-template-columns:1fr 15rem;gap:1.5rem}
.im-body h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:1rem 0 .3rem}.im-body h3:first-child{margin-top:0}
.im-body p{margin:0;color:var(--ink-2);line-height:1.55}
.im-q{font-style:italic;color:var(--ink)!important;border-left:3px solid var(--accent);padding-left:.8rem}
.im-bars{list-style:none;margin:0;padding:0;display:grid;gap:.45rem;font-size:.82rem;align-content:start}
.im-bars li{display:grid;grid-template-columns:1fr auto auto;gap:.5rem;align-items:center}
.im-dim{color:var(--ink-2)}.im-v{color:var(--muted);font-variant-numeric:tabular-nums;min-width:2rem;text-align:right}
.im-bar{display:inline-flex;gap:3px}.im-bar span{width:14px;height:8px;border-radius:3px;background:var(--line)}
.im-bar[data-v="1"] span:nth-child(-n+1),.im-bar[data-v="2"] span:nth-child(-n+2),.im-bar[data-v="3"] span{background:var(--accent)}
.im-tension{border-top:1px solid var(--line);padding-top:.45rem;margin-top:.2rem}
.im-disc{margin:1.1rem 0 0;font-size:.8rem;color:var(--muted)}
@media (max-width:900px){.im-layout{grid-template-columns:1fr}.im-side{position:static}.im-body{grid-template-columns:1fr}}
.section > .wrap.im-layout{display:grid;max-width:var(--max);grid-template-columns:17rem minmax(0,1fr);column-gap:2.5rem}
.section > .wrap.im-layout > *{grid-column:auto}
.page-im .section{padding:56px 0}
@media (max-width:900px){.section > .wrap.im-layout{grid-template-columns:1fr}}
