.mv-wrap{display:grid;gap:12px;color:var(--text);font-size:12px}
.mv-note{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
.mv-cards{display:grid;grid-template-columns:repeat(5,minmax(90px,1fr));gap:8px}
.mv-card{display:grid;gap:5px;padding:12px 13px;border:1px solid var(--line);border-radius:2px;background:var(--panel);color:var(--text);text-align:left;cursor:pointer}
.mv-card:hover{border-color:var(--muted);background:var(--panel2)}
.mv-card.active{border-color:var(--brand);background:var(--fc-mod-bg)}
.mv-card span{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}
.mv-card b{font-size:24px;font-family:var(--font-mono);font-weight:600}
.mv-flow{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:2px;background:var(--panel)}
.mv-flow-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.mv-flow-head h3{margin:0;font-size:12px}
.mv-flow-labels{display:flex;gap:18px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.mv-flow-chip{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:6px 10px;border:1px solid var(--brand);border-radius:2px;background:var(--fc-active-bg);color:var(--fc-active-fg);font-size:10px;overflow-wrap:anywhere}
.mv-flow-chip button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:14px;line-height:1}
.mv-flow-svg{display:block;width:100%;height:auto;color:var(--text)}
.mv-node-rect{fill:var(--panel2);stroke:var(--line);stroke-width:1}
.mv-node-text{fill:currentColor;font-size:13px;font-weight:600}
.mv-link-path{fill:none;stroke-linecap:round;opacity:.45;transition:opacity .12s}
.mv-link-between .mv-link-path{stroke:var(--fc-info-fg)}
.mv-link-internal .mv-link-path{stroke:var(--warn)}
.mv-flow-link{cursor:pointer;outline:none}
.mv-flow-link:hover .mv-link-path,.mv-flow-link:focus .mv-link-path{opacity:.9}
.mv-empty{display:grid;place-items:center;min-height:120px;padding:16px;border:1px dashed var(--line);border-radius:2px;color:var(--muted);text-align:center;font-size:11px}
.mv-list,.mv-results{display:grid;gap:8px}
.mv-toolbar{display:grid;gap:10px;padding:10px;border:1px solid var(--line);border-radius:2px;background:var(--panel)}
.mv-toolbar-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}
.mv-chip-group{display:flex;flex-wrap:wrap;gap:5px}
.mv-chip{border:1px solid var(--line);background:transparent;color:var(--muted);padding:6px 10px;border-radius:2px;font-size:10px;font-weight:600;cursor:pointer}
.mv-chip.active,.mv-chip:hover{background:var(--fc-active-bg);color:var(--fc-active-fg);border-color:var(--fc-active-line)}
.mv-search-input{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:2px;outline:0;background:var(--fc-input);color:var(--text);font-size:11px}
.mv-search-input:focus{border-color:var(--brand2);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand2) 15%,transparent)}
.mv-show-all{display:block;margin:4px auto 0;border:1px solid var(--line);border-radius:2px;background:transparent;color:var(--brand2);padding:6px 10px;font-size:10px;cursor:pointer}
.mv-show-all:hover{border-color:var(--brand);color:var(--text)}
.mv-class-card,.mv-attr-row{display:grid;gap:9px;padding:13px 15px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:2px;background:var(--panel)}
.mv-attr-row{border-left-color:var(--brand2)}
.mv-card-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mv-type{padding:4px 8px;border-radius:2px;font-size:8px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;background:var(--fc-info-bg);color:var(--fc-info-fg)}
.mv-type-attr{background:var(--fc-neutral-bg);color:var(--fc-neutral-fg)}
.mv-confidence{padding:3px 7px;border-radius:2px;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.mv-conf-high{background:var(--fc-add-bg);color:var(--fc-add-fg)}
.mv-conf-possible{background:var(--fc-warn-bg);color:var(--fc-warn-fg)}
.mv-fromto{display:flex;align-items:center;gap:12px}
.mv-side{flex:1;display:grid;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:2px;background:var(--fc-sunk)}
.mv-profile{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}
.mv-name{font-size:15px;font-weight:800}
.mv-arrow,.mv-inline-arrow{color:var(--muted);font-size:16px;line-height:1}
.mv-inline-arrow{font-size:12px}
.mv-evidence{display:flex;flex-wrap:wrap;gap:6px 12px;color:var(--muted);font-size:10px;line-height:1.4}
.mv-evidence-item:before{content:'•';margin-right:4px}
.mv-nested{border:1px solid var(--line);border-radius:2px;background:var(--fc-detail)}
.mv-nested summary{cursor:pointer;padding:8px 10px;color:var(--brand2);font-size:10px;font-weight:700}
.mv-nested-list{display:grid;gap:6px;padding:4px 10px 10px}
.mv-nested-attr{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;font-family:var(--font-mono);font-size:10px}
.mv-nested-attr b{color:var(--brand2)}
.mv-nested-meta{color:var(--muted);font-size:9px}
.mv-attr-path{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;line-height:1.45}
.mv-part.mv-changed{color:var(--fc-mod-fg);font-weight:800}
.mv-dot{color:var(--muted)}
.mv-evidence-chips{display:flex;flex-wrap:wrap;gap:6px}
.mv-ev{padding:3px 6px;border:1px solid var(--line);border-radius:2px;background:var(--fc-sunk);color:var(--muted);font-size:9px;line-height:1.4}
.mv-ev-warn{background:var(--fc-warn-bg);color:var(--fc-warn-fg);border-color:var(--fc-warn-line)}
.mv-kept{border:1px solid var(--line);border-radius:2px;background:var(--panel)}
.mv-kept summary{padding:11px 13px;cursor:pointer;background:var(--panel2);font-size:12px;font-weight:800}
.mv-kept-list{display:grid;gap:6px;padding:10px}
.mv-kept-item{display:grid;gap:3px;padding:8px 10px;border:1px solid var(--line);border-radius:2px;background:var(--fc-sunk);font-size:10px}
.mv-kept-name{font-family:var(--font-mono);font-weight:700}
.mv-kept-still,.mv-footer{color:var(--muted)}
.mv-footer{font-size:11px;line-height:1.5}
.mv-wrap,.mv-wrap *{min-width:0;max-width:100%;overflow-wrap:anywhere}
@media(max-width:800px){.mv-cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.mv-fromto,.mv-attr-path{flex-direction:column;align-items:stretch;gap:6px}.mv-fromto>.mv-arrow,.mv-attr-path>.mv-arrow{transform:rotate(90deg);align-self:center}.mv-toolbar-row,.mv-flow-head{flex-direction:column;align-items:flex-start}}
@media(max-width:480px){.mv-cards{grid-template-columns:1fr 1fr}}
