/* CEO Trust — mappa dei collegamenti */
.mp{position:relative;background:radial-gradient(700px 300px at 50% 40%,rgba(224,140,156,.08),transparent 70%),var(--surface);border:1px solid var(--line);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:18px;overflow:hidden}
.mp-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap}
.mp-head h3{font-family:var(--f-display);font-weight:400;font-size:clamp(26px,3vw,36px);margin:8px 0 0}
.mp-head h3 em{color:var(--rose)}
.mp-prog{display:flex;flex-direction:column;gap:6px;min-width:200px;font-size:14px;color:var(--muted)}
.mp-prog b{color:var(--ink);font-size:18px}
.mp-bar{height:8px;border-radius:99px;background:var(--surface2);overflow:hidden}
.mp-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--ok),#B8E6C8);box-shadow:0 0 12px rgba(134,205,160,.6)}
.mp-legend{display:flex;flex-wrap:wrap;gap:8px}
.mp-pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:99px;padding:4px 10px;white-space:nowrap;border:1px solid}
.mp-pill i{width:7px;height:7px;border-radius:50%;background:currentColor}
.mp-pill.on{color:var(--ok);border-color:rgba(134,205,160,.35);background:rgba(134,205,160,.08)}
.mp-pill.on i{box-shadow:0 0 8px currentColor;animation:mp-blink 2s ease-in-out infinite}
.mp-pill.wait{color:#B8E6C8;border-color:rgba(134,205,160,.3);background:rgba(134,205,160,.06)}
.mp-pill.soon{color:var(--gold);border-color:rgba(214,181,126,.35);background:rgba(214,181,126,.08)}
.mp-pill.eval{color:var(--muted);border-color:var(--line2);background:transparent}
@keyframes mp-blink{50%{opacity:.35}}
.mp-flow{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(170px,.62fr) minmax(0,.95fr);gap:0 64px;align-items:center}
.mp-lines{position:absolute;inset:0;pointer-events:none;overflow:visible}
.mp-lines path{fill:none;stroke-width:1.8}
.mp-lines path.live{stroke:rgba(134,205,160,.55);filter:drop-shadow(0 0 3px rgba(134,205,160,.5))}
.mp-lines path.live.out{stroke:rgba(224,140,156,.55);filter:drop-shadow(0 0 3px rgba(224,140,156,.5))}
.mp-lines path.plan{stroke:rgba(214,181,126,.4);stroke-dasharray:5 6}
.mp-lines .dot{fill:#CFF3DA;filter:drop-shadow(0 0 4px #86CDA0)}
.mp-lines .dot.out{fill:#F7C9D2;filter:drop-shadow(0 0 4px var(--rose))}
.mp-col{display:flex;flex-direction:column;gap:12px;position:relative;z-index:1;min-width:0}
.mp-group{display:flex;flex-direction:column;gap:8px}
.mp-group + .mp-group{margin-top:8px}
.mp-gl{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.mp-node{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:center;background:var(--bg2);border:1px solid var(--line2);border-radius:12px;padding:12px 14px;transition:transform .25s,border-color .25s,box-shadow .25s}
.mp-node:hover{transform:translateY(-2px)}
.mp-node .mp-pill{grid-column:2;justify-self:start}
.mp-node.on,.mp-node.wait{border-color:rgba(134,205,160,.4);box-shadow:0 10px 28px -20px rgba(134,205,160,.8)}
.mp-node.soon{border-style:dashed;border-color:rgba(214,181,126,.45)}
.mp-node.eval{opacity:.72;border-style:dashed}
.mp-node.out{border-color:rgba(224,140,156,.4);box-shadow:0 10px 28px -20px rgba(224,140,156,.8)}
.mp-ic{grid-row:span 2;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(134,205,160,.1);color:var(--ok);border:1px solid rgba(134,205,160,.3)}
.mp-node.soon .mp-ic{background:rgba(214,181,126,.1);color:var(--gold);border-color:rgba(214,181,126,.35)}
.mp-node.eval .mp-ic{background:var(--surface2);color:var(--muted);border-color:var(--line2)}
.mp-node.out .mp-ic{background:var(--accent-soft);color:var(--rose);border-color:#5A3542}
.mp-ic svg{width:22px;height:22px}
.mp-tx{display:flex;flex-direction:column;gap:2px;min-width:0}
.mp-tx b{font-size:15px;font-weight:600;line-height:1.25}
.mp-tx small{font-size:12.5px;color:var(--muted);line-height:1.35}
.mp-tx em{font-style:normal;font-size:12px;color:var(--gold);line-height:1.35}
.mp-out .mp-node .mp-ic{grid-row:auto}
.mp-mid{align-items:center}
.mp-hub{position:relative;width:100%;aspect-ratio:1;max-width:200px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:22px;background:radial-gradient(circle at 50% 35%,#4A1C2B,#22121A 70%);border:1px solid rgba(224,140,156,.5);box-shadow:0 0 0 8px rgba(224,140,156,.06),0 0 60px -10px rgba(224,140,156,.7)}
.mp-hub .logo{font-size:26px;color:#fff}
.mp-hub .logo i{color:var(--rose)}
.mp-hub small{font-size:12.5px;color:var(--night-muted,#B4A7A8);line-height:1.35}
.mp-hub-ring{position:absolute;inset:-10px;border-radius:50%;border:1px dashed rgba(224,140,156,.35);animation:mp-spin 30s linear infinite}
@keyframes mp-spin{to{transform:rotate(360deg)}}
.mp-foot{margin:0;font-size:13px;color:var(--muted)}
@media (max-width:1000px){.mp-flow{gap:0 40px}}
@media (max-width:860px){
  .mp{padding:20px}
  .mp-flow{display:flex;flex-direction:column;gap:14px}
  .mp-mid{order:0;padding:6px 0}
  .mp-mid::before,.mp-mid::after{content:"";display:block;width:2px;height:22px;margin:0 auto;background:linear-gradient(var(--ok),transparent)}
  .mp-mid::after{background:linear-gradient(var(--rose),transparent)}
  .mp-hub{max-width:170px}
}
@media (prefers-reduced-motion:reduce){.mp-hub-ring,.mp-pill.on i{animation:none}.mp-lines .dot{display:none}}
