/* Presentation only: fitted diagrams and collapsible causal detail. */
.rm-root{--rm-ink:#e1eef4;--rm-muted:#91a8b8;--rm-border:#2b414f;color:var(--rm-ink);padding:20px;border:1px solid var(--rm-border);border-radius:14px;background:linear-gradient(135deg,#102530,#0a1923 65%);scroll-margin-top:90px;font:13px/1.7 "Microsoft YaHei",system-ui,sans-serif;min-width:0}
.rm-root *{box-sizing:border-box}.rm-root h2,.rm-root h4,.rm-root h5,.rm-root p{margin:0}
.rm-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.rm-root h2{font-size:24px;line-height:1.4}
.rm-button{font:inherit;font-size:12px;color:var(--rm-ink);padding:6px 12px;border:1px solid #385364;border-radius:6px;background:#132c38;cursor:pointer;white-space:nowrap;text-decoration:none}
.rm-button:hover{border-color:#8d82cd;background:#1b3349}.rm-root button:focus-visible,.rm-root a:focus-visible,.rm-root summary:focus-visible{outline:2px solid #efc284;outline-offset:3px}
.rm-gallery{margin-top:14px}.rm-graph-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.rm-graph-tabs [aria-selected=true]{border-color:#b39be7;background:#302d4d;color:#e7dcff}
.rm-graph-panel{border:1px solid #35445b;border-radius:8px;background:#0c1925;min-width:0}.rm-graph-panel[hidden]{display:none}
.rm-graph-viewport{height:calc(100dvh - 240px);min-height:200px;overflow:hidden;padding:8px}
.rm-source-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;padding:14px}
.rm-source-node{padding:12px;background:#17273a;border:1px solid #3b4b67;border-radius:5px;font-size:12px;line-height:1.7;min-width:0}
.rm-source-wording{white-space:pre-line;color:#e1eef4}
.rm-source-next{display:flex;gap:8px;align-items:flex-start;margin-top:10px;padding-top:8px;border-top:1px solid #304457;color:#a9bfce;font-size:11px;white-space:pre-line}
.rm-source-label{color:#e4c18b;flex-shrink:0;max-width:40%}.rm-source-arrow{color:#77d1cf}
.rm-graph-viewport svg{display:block;width:100%;height:100%;max-width:100%;margin:0}
.rm-flow-details{margin-top:16px;display:grid;gap:8px}.rm-phase-flow{border:1px solid #2b414f;border-radius:8px;background:#0c1e29;min-width:0}
.rm-phase-flow>summary{cursor:pointer;padding:11px 15px;font-size:13px;font-weight:600;color:#bcd4df}
.rm-phase-flow[open]>summary{border-bottom:1px solid #2b414f;color:#7addd0}
.rm-detail-flow{padding:14px}.rm-detail-flow+.rm-detail-flow{border-top:1px solid #233b48}.rm-detail-flow h4{font-size:13px;margin-bottom:10px;color:#dce9f3}
.rm-detail-row{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.8fr) minmax(0,1fr);gap:22px}
.rm-detail-node{position:relative;min-width:0;padding:12px;border:1px solid #3b4b67;border-radius:5px;background:#17273a;font-size:11px;line-height:1.8;color:#b6c8d8;overflow-wrap:anywhere}
.rm-detail-node:not(:last-child)::after{content:'→';position:absolute;right:-19px;top:28px;color:#9d9ac9;font-size:17px}
.rm-detail-node h5{font-size:11px;color:#78d4c9;margin-bottom:7px}.rm-detail-node p+p{margin-top:6px}.rm-detail-caution{background:#292836;border-color:#55495c}.rm-detail-caution h5{color:#dab98f}
.rm-detail-chain{list-style:none;margin:10px 0;padding:0;display:grid;gap:16px}.rm-detail-chain li{position:relative;padding:5px 8px;border:1px solid #556080;border-radius:3px;background:#222f49;color:#d0d3ea}
.rm-detail-chain li:not(:last-child)::after{content:'↓';position:absolute;bottom:-17px;left:50%;color:#a5a3cb}
.rm-detail-evidence{margin:8px 0 0;padding-left:15px}.rm-detail-evidence li+li{margin-top:4px}.rm-warning{color:#eec69a}
.rm-page{margin:0;padding:14px;background:#07151e}.rm-page .rm-root{max-width:none;margin:auto}
@media(max-width:1000px){.rm-detail-row{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.rm-detail-node:nth-child(2)::after{content:none}}
@media(max-width:600px){.rm-page{padding:6px}.rm-root{padding:12px}.rm-root h2{font-size:19px}.rm-header{align-items:flex-start}.rm-button{padding:5px 8px;font-size:11px}.rm-graph-viewport{height:calc(100dvh - 190px)}.rm-detail-row{grid-template-columns:1fr;gap:20px}.rm-detail-node:not(:last-child)::after{content:'↓';top:auto;bottom:-20px;left:50%;right:auto}}
@media print{.rm-page{padding:0}.rm-header>a,.rm-graph-tabs{display:none}.rm-graph-viewport{height:85vh}.rm-phase-flow{break-inside:avoid}}
