/* V2 port: Analysis. Layered after the shell styles; scoped to .v2a-page. */
.v2a-page .oroko-page-head{align-items:flex-start;gap:16px;flex-wrap:wrap}
.v2a-state{display:inline-flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--surface);align-self:center}
.v2a-state button{border:0;background:transparent;border-radius:6px;padding:7px 12px;font:inherit;font-size:12px;font-weight:700;color:var(--muted);cursor:pointer}
.v2a-state button.is-active{background:var(--ink);color:var(--surface)}
.v2a-state button:focus-visible,.v2a-tile:focus-visible,.v2a-backlink:focus-visible{outline:2px solid var(--accent,#ff6b1a);outline-offset:2px}
.v2a-summary{display:grid;gap:12px;margin:0 0 20px;padding:0 0 18px;border-bottom:1px solid var(--line)}
.v2a-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.v2a-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.v2a-tile{display:grid;gap:4px;text-align:left;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:11px 13px;min-width:0}
button.v2a-tile{cursor:pointer}
button.v2a-tile:hover{border-color:var(--line-strong,var(--line))}
.v2a-tile.is-active{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.v2a-tile.is-zero{opacity:.55}
.v2a-tile-label{display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:750;color:var(--muted)}
.v2a-tile strong{font-size:26px;font-weight:750;line-height:1.1}
.v2a-outcome{margin:6px 0 0;font-size:12px;color:var(--muted)}
.v2a-outcome b{color:var(--ink);font-weight:700;margin-right:4px}
.v2a-backlink{justify-self:start;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--ink);font:inherit;font-size:11px;font-weight:700;padding:4px 10px;cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v2a-backlink:hover{border-color:var(--ink)}
@media(max-width:680px){.v2a-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.v2a-total{padding:9px 10px}.v2a-tile strong{font-size:22px}.v2a-total .v2a-tile-label{font-size:10px}.v2a-types{grid-template-columns:repeat(2,minmax(0,1fr))}.v2a-state{align-self:flex-start}}
.v2a-page .oroko-analysis-finding .oroko-annotation-callout{border-left:0;padding-left:0;background:transparent}
.v2a-empty{margin-top:8px}
.v2a-empty h2{margin-bottom:6px}

/* Role coverage (RACI) */
.v2a-raci{display:grid;gap:12px;margin:0 0 20px;padding:0 0 18px;border-bottom:1px solid var(--line)}
.v2a-raci h2{margin:0;font-size:14px}
.v2a-raci-note{margin:0;color:var(--muted);font-size:12px}
.v2a-raci-load{margin:0;font-size:12px;color:var(--ink)}
.v2a-raci-issues{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.v2a-raci-issues li{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:8px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}
.v2a-raci-step{border:0;background:none;padding:0;font:inherit;font-weight:600;color:var(--ink);text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.v2a-raci-flag{color:var(--amber,#b26a00);font-size:12px;font-weight:600;white-space:nowrap}
.v2a-tile.v2a-warn strong{color:var(--amber,#b26a00)}
