/*
 * MIA 2.0 · Product Experience System
 * Quiet intelligence for high-stakes M&A workflows.
 */
:root {
  --v2-canvas: #f4f5f7;
  --v2-canvas-2: #eef0f3;
  --v2-surface: #ffffff;
  --v2-surface-raised: #ffffff;
  --v2-surface-subtle: #f8f9fb;
  --v2-surface-muted: #f1f3f6;
  --v2-ink: #15171b;
  --v2-ink-2: #3e434c;
  --v2-ink-3: #69707d;
  --v2-ink-4: #969ca6;
  --v2-line: #e3e6eb;
  --v2-line-strong: #d4d8df;
  --v2-sidebar: #0d0f13;
  --v2-sidebar-2: #14171d;
  --v2-sidebar-line: rgba(255,255,255,.075);
  --v2-sidebar-text: #f2f4f7;
  --v2-sidebar-muted: #828894;
  --v2-accent: #315efb;
  --v2-accent-2: #2148d4;
  --v2-accent-soft: #eef2ff;
  --v2-accent-softer: #f6f7ff;
  --v2-violet: #7559e8;
  --v2-green: #0f9366;
  --v2-green-soft: #eaf8f2;
  --v2-amber: #a6660e;
  --v2-amber-soft: #fff6e8;
  --v2-red: #c94141;
  --v2-red-soft: #fff0f0;
  --v2-blue-soft: #edf5ff;
  --v2-shadow-xs: 0 1px 2px rgba(15, 23, 42, .035);
  --v2-shadow-sm: 0 7px 22px rgba(15, 23, 42, .055);
  --v2-shadow-md: 0 18px 55px rgba(15, 23, 42, .08);
  --v2-shadow-lg: 0 30px 95px rgba(15, 23, 42, .18);
  --v2-radius-xs: 7px;
  --v2-radius-sm: 10px;
  --v2-radius-md: 14px;
  --v2-radius-lg: 18px;
  --v2-radius-xl: 24px;
  --v2-sidebar-width: 264px;
  --v2-sidebar-collapsed: 76px;
  --v2-topbar-height: 64px;
  --v2-content-max: 1580px;
  --v2-fast: 140ms;
  --v2-ease: cubic-bezier(.2,.8,.2,1);
  --v2-font: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif;
  --v2-display: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif;
}

html[data-theme="dark"] {
  --v2-canvas: #0f1115;
  --v2-canvas-2: #0a0c10;
  --v2-surface: #171a20;
  --v2-surface-raised: #1c2027;
  --v2-surface-subtle: #14171c;
  --v2-surface-muted: #20242c;
  --v2-ink: #f4f5f7;
  --v2-ink-2: #d4d7dd;
  --v2-ink-3: #9ca3af;
  --v2-ink-4: #727985;
  --v2-line: #2b3039;
  --v2-line-strong: #3a404b;
  --v2-accent: #7695ff;
  --v2-accent-2: #9bafff;
  --v2-accent-soft: rgba(78,112,255,.15);
  --v2-accent-softer: rgba(78,112,255,.08);
  --v2-green-soft: rgba(15,147,102,.14);
  --v2-amber-soft: rgba(166,102,14,.16);
  --v2-red-soft: rgba(201,65,65,.16);
  --v2-blue-soft: rgba(49,94,251,.13);
  color-scheme: dark;
}

html { background: var(--v2-canvas); }
body.mia-v2 {
  margin: 0;
  color: var(--v2-ink);
  background: var(--v2-canvas);
  font-family: var(--v2-font);
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: -.006em;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.mia-v2::before { display: none !important; }
body.mia-v2 * { box-sizing: border-box; }
body.mia-v2 a { color: inherit; }
body.mia-v2 a:focus-visible,
body.mia-v2 button:focus-visible,
body.mia-v2 input:focus-visible,
body.mia-v2 select:focus-visible,
body.mia-v2 textarea:focus-visible,
body.mia-v2 summary:focus-visible { outline: 3px solid rgba(49,94,251,.22); outline-offset: 2px; }
body.mia-v2 button, body.mia-v2 input, body.mia-v2 select, body.mia-v2 textarea { font: inherit; }
body.mia-v2 ::selection { color: #fff; background: var(--v2-accent); }

.mia-icon {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: 0 0 auto;
}
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.hidden { display: none !important; }

/* Application shell */
.v2-app-shell { min-height: 100vh; display: grid; grid-template-columns: var(--v2-sidebar-width) minmax(0,1fr); }
.v2-sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 80;
  width: var(--v2-sidebar-width);
  display: flex;
  flex-direction: column;
  padding: 14px 12px 12px;
  color: var(--v2-sidebar-text);
  background:
    radial-gradient(circle at 0 0, rgba(72,92,180,.12), transparent 34%),
    linear-gradient(180deg, var(--v2-sidebar) 0%, #090b0e 100%);
  border-right: 1px solid var(--v2-sidebar-line);
  transition: width .22s var(--v2-ease), transform .22s var(--v2-ease);
  overflow: hidden;
}
.v2-main { grid-column: 2; min-width: 0; min-height: 100vh; transition: margin .22s var(--v2-ease); }
.v2-sidebar-head { display: flex; align-items: center; min-height: 40px; padding: 1px 4px 12px; gap: 8px; }
.v2-brand { display: flex; align-items: center; gap: 10px; min-width: 0; text-decoration: none; }
.v2-brand-mark { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 34px; border-radius: 10px; background: #fff; box-shadow: 0 2px 15px rgba(0,0,0,.22); }
.v2-brand-mark img { width: 30px; height: 30px; display: block; }
.v2-brand-copy { min-width: 0; display: flex; flex-direction: column; }
.v2-brand-copy strong { color: #fff; font-family: var(--v2-display); font-size: .92rem; line-height: 1.15; letter-spacing: .13em; }
.v2-brand-copy small { margin-top: 2px; color: #767d89; font-size: .64rem; letter-spacing: .02em; }
.v2-icon-button { width: 36px; height: 36px; display: inline-grid; place-items: center; padding: 0; border: 1px solid transparent; border-radius: 10px; color: var(--v2-ink-3); background: transparent; cursor: pointer; transition: color var(--v2-fast), background var(--v2-fast), border-color var(--v2-fast); }
.v2-icon-button:hover { color: var(--v2-ink); background: var(--v2-surface-muted); border-color: var(--v2-line); }
.v2-sidebar .v2-icon-button { color: #737a86; }
.v2-sidebar .v2-icon-button:hover { color: #fff; background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.06); }
.v2-sidebar-collapse { margin-left: auto; transform: rotate(90deg); }
.v2-sidebar-close { display: none; margin-left: auto; }

.v2-workspace-switcher { position: relative; display: grid; grid-template-columns: 34px minmax(0,1fr) 16px; align-items: center; gap: 9px; min-height: 54px; padding: 8px 9px; margin: 4px 0 17px; border: 1px solid rgba(255,255,255,.075); border-radius: 12px; background: rgba(255,255,255,.04); transition: background var(--v2-fast), border-color var(--v2-fast); }
.v2-workspace-switcher:hover { background: rgba(255,255,255,.065); border-color: rgba(255,255,255,.11); }
.v2-workspace-avatar { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; color: #fff; font-weight: 750; background: linear-gradient(145deg, #315efb, #7559e8); box-shadow: inset 0 0 0 1px rgba(255,255,255,.16); }
.v2-workspace-copy { min-width: 0; display: flex; flex-direction: column; }
.v2-workspace-copy small { color: #6f7682; font-size: .62rem; text-transform: uppercase; letter-spacing: .1em; }
.v2-workspace-copy strong { margin-top: 1px; overflow: hidden; color: #e9ebef; font-size: .78rem; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.v2-workspace-chevron { color: #626975; }
.v2-workspace-chevron .mia-icon { width: 14px; height: 14px; }
.v2-workspace-switcher form { position: absolute; inset: 0; }
.v2-workspace-switcher select { width: 100%; height: 100%; opacity: 0; cursor: pointer; }

.v2-nav { display: flex; flex-direction: column; gap: 3px; min-height: 0; }
.v2-nav-label { padding: 2px 11px 7px; color: #5e6570; font-size: .61rem; font-weight: 750; text-transform: uppercase; letter-spacing: .135em; }
.v2-nav-label-spaced { margin-top: 15px; }
.v2-nav a { position: relative; min-height: 42px; display: grid; grid-template-columns: 20px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 0 11px; border-radius: 9px; color: #8e949f; text-decoration: none; font-size: .82rem; font-weight: 570; transition: color var(--v2-fast), background var(--v2-fast), transform var(--v2-fast); }
.v2-nav a:hover { color: #edf0f4; background: rgba(255,255,255,.055); }
.v2-nav a.active { color: #fff; background: rgba(255,255,255,.085); box-shadow: inset 0 0 0 1px rgba(255,255,255,.035); }
.v2-nav a.active::before { content: ""; position: absolute; left: -12px; width: 3px; height: 22px; border-radius: 0 4px 4px 0; background: #6f91ff; box-shadow: 0 0 18px rgba(111,145,255,.65); }
.v2-nav a .mia-icon { width: 17px; height: 17px; opacity: .77; }
.v2-nav a.active .mia-icon { opacity: 1; }
.v2-nav a em { padding: 2px 6px; border-radius: 999px; color: #b6c5ff; background: rgba(89,113,210,.2); font-size: .57rem; font-style: normal; font-weight: 760; letter-spacing: .04em; }

.v2-sidebar-bottom { margin-top: auto; display: grid; gap: 8px; }
.v2-mia-launcher { width: 100%; display: grid; grid-template-columns: 32px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 9px; border: 1px solid rgba(111,145,255,.16); border-radius: 12px; color: #eef1f6; background: linear-gradient(135deg, rgba(57,84,175,.18), rgba(117,89,232,.12)); cursor: pointer; text-align: left; }
.v2-mia-launcher:hover { border-color: rgba(126,154,255,.28); background: linear-gradient(135deg, rgba(57,84,175,.27), rgba(117,89,232,.18)); }
.v2-mia-orb { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; color: #c4d1ff; background: rgba(85,112,216,.22); }
.v2-mia-orb .mia-icon { width: 16px; height: 16px; }
.v2-mia-launcher span:nth-child(2) { min-width: 0; display: flex; flex-direction: column; }
.v2-mia-launcher strong { font-size: .74rem; }
.v2-mia-launcher small { color: #7d8591; font-size: .62rem; }
.v2-mia-launcher kbd { color: #7d8591; font: inherit; font-size: .58rem; }
.v2-user-card { position: relative; display: grid; grid-template-columns: 31px minmax(0,1fr) auto; align-items: center; gap: 9px; min-height: 47px; padding: 8px 4px 2px; border-top: 1px solid rgba(255,255,255,.065); }
.v2-user-avatar { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; color: #dfe3e9; background: #23272f; font-size: .71rem; font-weight: 720; }
.v2-user-copy { min-width: 0; display: flex; flex-direction: column; }
.v2-user-copy strong, .v2-user-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v2-user-copy strong { color: #e5e7eb; font-size: .73rem; }
.v2-user-copy small { color: #6e7580; font-size: .61rem; }
.v2-user-menu { position: relative; }
.v2-user-menu summary { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; color: #626a76; cursor: pointer; list-style: none; }
.v2-user-menu summary::-webkit-details-marker { display: none; }
.v2-user-menu summary:hover { color: #fff; background: rgba(255,255,255,.06); }
.v2-user-menu > div { position: absolute; right: 0; bottom: 36px; z-index: 100; width: 190px; padding: 6px; border: 1px solid #2c313a; border-radius: 12px; background: #171a20; box-shadow: var(--v2-shadow-lg); }
.v2-user-menu a, .v2-user-menu button { width: 100%; min-height: 36px; display: flex; align-items: center; gap: 9px; padding: 0 9px; border: 0; border-radius: 8px; color: #cfd3da; background: transparent; text-decoration: none; cursor: pointer; text-align: left; font-size: .74rem; }
.v2-user-menu a:hover, .v2-user-menu button:hover { color: #fff; background: rgba(255,255,255,.06); }
.v2-user-menu .mia-icon { width: 15px; height: 15px; color: #7d8591; }

body.sidebar-collapsed .v2-app-shell { grid-template-columns: var(--v2-sidebar-collapsed) minmax(0,1fr); }
body.sidebar-collapsed .v2-sidebar { width: var(--v2-sidebar-collapsed); padding-inline: 10px; }
body.sidebar-collapsed .v2-brand-copy,
body.sidebar-collapsed .v2-workspace-copy,
body.sidebar-collapsed .v2-workspace-chevron,
body.sidebar-collapsed .v2-nav-label,
body.sidebar-collapsed .v2-nav a span,
body.sidebar-collapsed .v2-nav a em,
body.sidebar-collapsed .v2-mia-launcher span:nth-child(2),
body.sidebar-collapsed .v2-mia-launcher kbd,
body.sidebar-collapsed .v2-user-copy { display: none; }
body.sidebar-collapsed .v2-sidebar-collapse { transform: rotate(-90deg); }
body.sidebar-collapsed .v2-workspace-switcher { grid-template-columns: 34px; justify-content: center; padding-inline: 8px; }
body.sidebar-collapsed .v2-nav a { grid-template-columns: 1fr; justify-items: center; padding: 0; }
body.sidebar-collapsed .v2-nav a.active::before { left: -10px; }
body.sidebar-collapsed .v2-mia-launcher { grid-template-columns: 1fr; justify-items: center; padding: 8px; }
body.sidebar-collapsed .v2-user-card { grid-template-columns: 31px auto; justify-content: center; }
body.sidebar-collapsed .v2-user-menu > div { left: 48px; right: auto; bottom: 0; }

.v2-topbar { position: sticky; top: 0; z-index: 60; height: var(--v2-topbar-height); display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 0 28px; border-bottom: 1px solid rgba(17,24,39,.075); background: color-mix(in srgb, var(--v2-canvas) 88%, transparent); backdrop-filter: blur(20px) saturate(150%); }
.v2-topbar-left, .v2-topbar-actions { display: flex; align-items: center; gap: 8px; }
.v2-page-context { display: flex; flex-direction: column; min-width: 0; }
.v2-page-context span { color: var(--v2-ink-4); font-size: .63rem; font-weight: 650; text-transform: uppercase; letter-spacing: .1em; }
.v2-page-context strong { margin-top: 1px; overflow: hidden; color: var(--v2-ink); font-size: .82rem; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.v2-search-trigger { min-width: 230px; height: 36px; display: flex; align-items: center; gap: 8px; padding: 0 10px; border: 1px solid var(--v2-line); border-radius: 10px; color: var(--v2-ink-3); background: color-mix(in srgb, var(--v2-surface) 84%, transparent); box-shadow: var(--v2-shadow-xs); cursor: pointer; text-align: left; }
.v2-search-trigger:hover { border-color: var(--v2-line-strong); background: var(--v2-surface); }
.v2-search-trigger .mia-icon { width: 15px; height: 15px; }
.v2-search-trigger span { flex: 1; font-size: .75rem; }
.v2-search-trigger kbd { padding: 2px 5px; border: 1px solid var(--v2-line); border-radius: 5px; color: var(--v2-ink-4); background: var(--v2-surface-subtle); font: inherit; font-size: .61rem; }
.v2-topbar-icon { width: 36px; height: 36px; background: color-mix(in srgb, var(--v2-surface) 82%, transparent); border-color: var(--v2-line); box-shadow: var(--v2-shadow-xs); }
.v2-primary-action { min-height: 36px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 0 12px; border: 1px solid #17191d; border-radius: 10px; color: #fff !important; background: #17191d; box-shadow: 0 4px 14px rgba(15,23,42,.12); text-decoration: none; font-size: .76rem; font-weight: 670; transition: transform var(--v2-fast), background var(--v2-fast), box-shadow var(--v2-fast); }
.v2-primary-action:hover { transform: translateY(-1px); background: #000; box-shadow: 0 7px 20px rgba(15,23,42,.18); }
.v2-primary-action .mia-icon { width: 15px; height: 15px; }
.v2-mobile-menu { display: none; }

.v2-page-content { width: min(var(--v2-content-max), calc(100% - 56px)); margin: 0 auto; padding: 30px 0 72px; }

/* Command palette */
.v2-command-backdrop { position: fixed; inset: 0; z-index: 120; opacity: 0; visibility: hidden; background: rgba(8,10,14,.5); backdrop-filter: blur(4px); transition: opacity .18s ease, visibility .18s ease; }
.v2-command-palette { position: fixed; left: 50%; top: 10vh; z-index: 121; width: min(620px, calc(100vw - 32px)); max-height: min(680px, 80vh); opacity: 0; visibility: hidden; transform: translate(-50%, -12px) scale(.985); border: 1px solid color-mix(in srgb, var(--v2-line) 80%, transparent); border-radius: 18px; background: var(--v2-surface-raised); box-shadow: var(--v2-shadow-lg); overflow: hidden; transition: opacity .18s ease, transform .18s ease, visibility .18s ease; }
body.command-open .v2-command-backdrop { opacity: 1; visibility: visible; }
body.command-open .v2-command-palette { opacity: 1; visibility: visible; transform: translate(-50%,0) scale(1); }
.v2-command-search { height: 62px; display: grid; grid-template-columns: 22px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 0 17px; border-bottom: 1px solid var(--v2-line); }
.v2-command-search .mia-icon { color: var(--v2-ink-3); }
.v2-command-search input { min-height: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; color: var(--v2-ink); font-size: .95rem; }
.v2-command-search input:focus { outline: 0; }
.v2-command-search kbd, .v2-command-palette footer kbd { padding: 2px 5px; border: 1px solid var(--v2-line); border-radius: 5px; color: var(--v2-ink-4); background: var(--v2-surface-subtle); font: inherit; font-size: .61rem; }
.v2-command-body { max-height: 560px; padding: 9px; overflow-y: auto; }
.v2-command-label { display: block; padding: 10px 10px 6px; color: var(--v2-ink-4); font-size: .62rem; font-weight: 720; text-transform: uppercase; letter-spacing: .1em; }
.v2-command-body > a, .v2-command-body > button { width: 100%; display: grid; grid-template-columns: 36px minmax(0,1fr) auto; align-items: center; gap: 11px; min-height: 54px; padding: 7px 10px; border: 0; border-radius: 10px; color: var(--v2-ink); background: transparent; text-decoration: none; cursor: pointer; text-align: left; }
.v2-command-body > a:hover, .v2-command-body > button:hover, .v2-command-body > .focused { background: var(--v2-accent-soft); }
.v2-command-body > a > span, .v2-command-body > button > span { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid var(--v2-line); border-radius: 9px; color: var(--v2-ink-2); background: var(--v2-surface); }
.v2-command-body > a div, .v2-command-body > button div { min-width: 0; display: flex; flex-direction: column; }
.v2-command-body strong { font-size: .78rem; }
.v2-command-body small { color: var(--v2-ink-3); font-size: .68rem; }
.v2-command-body kbd { color: var(--v2-ink-4); font: inherit; font-size: .62rem; }
.v2-command-empty { display: none; padding: 32px; color: var(--v2-ink-3); text-align: center; }
.v2-command-empty.visible { display: block; }
.v2-command-palette footer { display: flex; justify-content: flex-end; gap: 18px; padding: 9px 15px; border-top: 1px solid var(--v2-line); color: var(--v2-ink-4); background: var(--v2-surface-subtle); font-size: .65rem; }
.v2-command-palette footer span { display: inline-flex; align-items: center; gap: 4px; }

/* Toasts and tooltips */
.v2-toast-stack { position: fixed; top: 76px; right: 22px; z-index: 110; width: min(380px, calc(100vw - 32px)); display: grid; gap: 8px; pointer-events: none; }
.v2-toast { display: grid; grid-template-columns: 28px minmax(0,1fr) 28px; align-items: start; gap: 9px; padding: 12px; border: 1px solid var(--v2-line); border-radius: 13px; color: var(--v2-ink-2); background: color-mix(in srgb, var(--v2-surface-raised) 94%, transparent); box-shadow: var(--v2-shadow-md); backdrop-filter: blur(18px); pointer-events: auto; animation: v2-toast-in .24s var(--v2-ease); font-size: .76rem; }
.v2-toast-icon { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-toast.success .v2-toast-icon { color: var(--v2-green); background: var(--v2-green-soft); }
.v2-toast.error .v2-toast-icon { color: var(--v2-red); background: var(--v2-red-soft); }
.v2-toast button { width: 28px; height: 28px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 7px; color: var(--v2-ink-4); background: transparent; cursor: pointer; }
.v2-toast button:hover { color: var(--v2-ink); background: var(--v2-surface-muted); }
.v2-toast button .mia-icon { width: 14px; height: 14px; }
.v2-toast.leaving { opacity: 0; transform: translateX(14px); transition: .18s ease; }
@keyframes v2-toast-in { from { opacity: 0; transform: translateY(-8px); } }
[data-tooltip] { position: relative; }
[data-tooltip]::after { content: attr(data-tooltip); position: absolute; z-index: 200; left: 50%; top: calc(100% + 8px); transform: translateX(-50%) translateY(-3px); opacity: 0; visibility: hidden; white-space: nowrap; padding: 5px 8px; border-radius: 7px; color: #fff; background: #111318; box-shadow: var(--v2-shadow-sm); font-size: .64rem; pointer-events: none; transition: opacity .12s ease, transform .12s ease, visibility .12s ease; }
[data-tooltip]:hover::after { opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0); }

/* Type, generic pages and controls */
body.mia-v2 h1, body.mia-v2 h2, body.mia-v2 h3, body.mia-v2 h4 { color: var(--v2-ink); font-family: var(--v2-display); letter-spacing: -.025em; }
body.mia-v2 h1 { font-size: clamp(2rem, 3vw, 2.85rem); line-height: 1.05; font-weight: 720; }
body.mia-v2 h2 { font-size: 1.15rem; line-height: 1.25; font-weight: 680; }
body.mia-v2 h3 { font-size: .93rem; font-weight: 680; }
body.mia-v2 p { color: var(--v2-ink-3); }
body.mia-v2 .muted { color: var(--v2-ink-3) !important; }
body.mia-v2 .eyebrow, body.mia-v2 .section-kicker { display: inline-flex; align-items: center; gap: 7px; margin: 0 0 8px; color: var(--v2-accent); font-size: .64rem; font-weight: 730; text-transform: uppercase; letter-spacing: .115em; }
body.mia-v2 .eyebrow::before, body.mia-v2 .section-kicker::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
body.mia-v2 .page-heading, body.mia-v2 .page-head { margin-bottom: 24px; }
body.mia-v2 .page-heading h1, body.mia-v2 .page-head h1 { margin: 0 0 8px; font-size: clamp(2rem, 3vw, 2.75rem); }
body.mia-v2 .page-heading p, body.mia-v2 .page-head p { max-width: 760px; margin: 0; }

body.mia-v2 .card,
body.mia-v2 .feature-card,
body.mia-v2 .hero-card,
body.mia-v2 .stat-card,
body.mia-v2 .panel,
body.mia-v2 .dossier-section,
body.mia-v2 .control-card,
body.mia-v2 .composer-card,
body.mia-v2 .revisions-card,
body.mia-v2 .mailbox-form-card,
body.mia-v2 .company-overview-card,
body.mia-v2 .contacts-panel,
body.mia-v2 .profile-control-card,
body.mia-v2 .preview-card,
body.mia-v2 .evidence-card,
body.mia-v2 .workflow-template,
body.mia-v2 .chart-panel,
body.mia-v2 .compact-panel,
body.mia-v2 .activity-panel,
body.mia-v2 .import-analysis-hero,
body.mia-v2 .mapping-workbench,
body.mia-v2 .mapped-preview-panel {
  border: 1px solid var(--v2-line);
  border-radius: var(--v2-radius-md);
  color: var(--v2-ink);
  background: var(--v2-surface);
  box-shadow: var(--v2-shadow-xs);
  backdrop-filter: none;
}
body.mia-v2 .card { padding: 20px; }
body.mia-v2 .card:hover { border-color: var(--v2-line); }
body.mia-v2 .card-head, body.mia-v2 .section-heading, body.mia-v2 .dossier-section-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
body.mia-v2 .card-head h2, body.mia-v2 .section-heading h2, body.mia-v2 .dossier-section-head h2 { margin: 0; font-size: 1rem; }
body.mia-v2 .card-head a, body.mia-v2 .section-heading a, body.mia-v2 .section-edit-link { color: var(--v2-accent); font-size: .72rem; font-weight: 620; text-decoration: none; }
body.mia-v2 .card-head a:hover, body.mia-v2 .section-heading a:hover, body.mia-v2 .section-edit-link:hover { text-decoration: underline; text-underline-offset: 3px; }

body.mia-v2 .btn { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 0 13px; border: 1px solid var(--v2-line-strong); border-radius: 9px; color: var(--v2-ink-2); background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); font-size: .75rem; font-weight: 650; text-decoration: none; cursor: pointer; transition: border-color var(--v2-fast), color var(--v2-fast), background var(--v2-fast), transform var(--v2-fast), box-shadow var(--v2-fast); }
body.mia-v2 .btn:hover { transform: translateY(-1px); color: var(--v2-ink); border-color: var(--v2-ink-4); box-shadow: 0 5px 15px rgba(15,23,42,.08); }
body.mia-v2 .btn.primary { color: #fff; border-color: #17191d; background: #17191d; }
body.mia-v2 .btn.primary:hover { background: #000; }
body.mia-v2 .btn.secondary { color: var(--v2-accent); border-color: color-mix(in srgb, var(--v2-accent) 20%, var(--v2-line)); background: var(--v2-accent-soft); }
body.mia-v2 .btn.ghost { color: var(--v2-ink-3); border-color: transparent; background: transparent; box-shadow: none; }
body.mia-v2 .btn.danger { color: var(--v2-red); border-color: color-mix(in srgb, var(--v2-red) 24%, var(--v2-line)); background: var(--v2-red-soft); }
body.mia-v2 .btn.mini { min-height: 31px; padding: 0 9px; border-radius: 8px; font-size: .69rem; }
body.mia-v2 .btn.full { width: 100%; }
body.mia-v2 .actions, body.mia-v2 .inline-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
body.mia-v2 .text-action { color: var(--v2-accent); font-weight: 620; text-decoration: none; }

body.mia-v2 input,
body.mia-v2 select,
body.mia-v2 textarea {
  width: 100%; min-height: 42px; padding: 10px 12px; border: 1px solid var(--v2-line); border-radius: 9px; color: var(--v2-ink); background: var(--v2-surface); box-shadow: 0 1px 1px rgba(15,23,42,.02); transition: border-color var(--v2-fast), box-shadow var(--v2-fast), background var(--v2-fast);
}
body.mia-v2 textarea { min-height: 118px; resize: vertical; }
body.mia-v2 input:hover, body.mia-v2 select:hover, body.mia-v2 textarea:hover { border-color: var(--v2-line-strong); }
body.mia-v2 input:focus, body.mia-v2 select:focus, body.mia-v2 textarea:focus { outline: 0; border-color: color-mix(in srgb, var(--v2-accent) 55%, var(--v2-line)); box-shadow: 0 0 0 3px rgba(49,94,251,.10); background: var(--v2-surface-raised); }
body.mia-v2 input[type="checkbox"], body.mia-v2 input[type="radio"] { width: 16px; height: 16px; min-height: auto; padding: 0; accent-color: var(--v2-accent); box-shadow: none; }
body.mia-v2 input[type="file"] { padding: 8px; }
body.mia-v2 label { color: var(--v2-ink-2); font-size: .74rem; font-weight: 620; }
body.mia-v2 .helptext, body.mia-v2 .profile-help { display: block; margin-top: 5px; color: var(--v2-ink-4); font-size: .67rem; font-weight: 450; }
body.mia-v2 .errorlist, body.mia-v2 .profile-error { color: var(--v2-red); font-size: .7rem; }
body.mia-v2 .form-card { max-width: 820px; }
body.mia-v2 .form-card.wide { max-width: none; }

body.mia-v2 .pill, body.mia-v2 .chip, body.mia-v2 .status-pill, body.mia-v2 .phase-badge, body.mia-v2 .profile-state, body.mia-v2 .match-status-v12, body.mia-v2 .campaign-state, body.mia-v2 .nda-status, body.mia-v2 .workflow-status, body.mia-v2 .activity-status, body.mia-v2 .composer-status {
  display: inline-flex; align-items: center; gap: 5px; min-height: 24px; padding: 3px 8px; border: 1px solid var(--v2-line); border-radius: 999px; color: var(--v2-ink-3); background: var(--v2-surface-subtle); font-size: .65rem; font-style: normal; font-weight: 640; line-height: 1; white-space: nowrap;
}
body.mia-v2 .pill.blue, body.mia-v2 .chip.blue, body.mia-v2 .status-pill.blue { color: var(--v2-accent); border-color: rgba(49,94,251,.17); background: var(--v2-accent-soft); }
body.mia-v2 .pill.ok, body.mia-v2 .chip.ok, body.mia-v2 .status-pill.ok, body.mia-v2 .positive { color: var(--v2-green); border-color: rgba(15,147,102,.18); background: var(--v2-green-soft); }
body.mia-v2 .pill.danger, body.mia-v2 .chip.danger, body.mia-v2 .status-pill.danger { color: var(--v2-red); border-color: rgba(201,65,65,.18); background: var(--v2-red-soft); }

body.mia-v2 .stats-grid, body.mia-v2 .metric-strip { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px,1fr)); gap: 0; margin: 18px 0 22px; overflow: hidden; border: 1px solid var(--v2-line); border-radius: var(--v2-radius-md); background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
body.mia-v2 .stats-grid .stat-card, body.mia-v2 .metric-strip article { min-height: 94px; padding: 17px 18px; border: 0; border-right: 1px solid var(--v2-line); border-radius: 0; box-shadow: none; background: transparent; }
body.mia-v2 .stats-grid .stat-card:last-child, body.mia-v2 .metric-strip article:last-child { border-right: 0; }
body.mia-v2 .stat-card span, body.mia-v2 .metric-strip span { display: block; color: var(--v2-ink-4); font-size: .62rem; font-weight: 680; text-transform: uppercase; letter-spacing: .09em; }
body.mia-v2 .stat-card strong, body.mia-v2 .metric-strip strong { display: block; margin-top: 7px; color: var(--v2-ink); font-size: 1.65rem; line-height: 1; letter-spacing: -.045em; }
body.mia-v2 .stat-card small, body.mia-v2 .metric-strip small { color: var(--v2-ink-3); font-size: .67rem; }

body.mia-v2 .two-col { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin: 16px 0; }
body.mia-v2 .three-col { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin: 16px 0; }
body.mia-v2 .details { display: grid; grid-template-columns: minmax(120px,180px) 1fr; gap: 10px 16px; }
body.mia-v2 .details dt { color: var(--v2-ink-4); }
body.mia-v2 .details dd { margin: 0; color: var(--v2-ink-2); overflow-wrap: anywhere; }
body.mia-v2 .tag-cloud { display: flex; flex-wrap: wrap; gap: 6px; }
body.mia-v2 .tag-cloud span { padding: 4px 8px; border: 1px solid var(--v2-line); border-radius: 999px; color: var(--v2-ink-3); background: var(--v2-surface-subtle); font-size: .65rem; }

/* Tables and dense data */
body.mia-v2 .table-card, body.mia-v2 .match-table-shell-v12 { padding: 0; overflow: hidden; border: 1px solid var(--v2-line); border-radius: var(--v2-radius-md); background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
body.mia-v2 .table-wrap { width: 100%; overflow-x: auto; }
body.mia-v2 .mia-table, body.mia-v2 .match-table-v12, body.mia-v2 .mapping-table { width: 100%; border-collapse: collapse; }
body.mia-v2 .mia-table th, body.mia-v2 .match-table-v12 th, body.mia-v2 .mapping-table th { height: 42px; padding: 0 14px; border-bottom: 1px solid var(--v2-line); color: var(--v2-ink-4); background: var(--v2-surface-subtle); text-align: left; font-size: .61rem; font-weight: 730; text-transform: uppercase; letter-spacing: .085em; white-space: nowrap; }
body.mia-v2 .mia-table td, body.mia-v2 .match-table-v12 td, body.mia-v2 .mapping-table td { padding: 12px 14px; border-bottom: 1px solid var(--v2-line); color: var(--v2-ink-2); vertical-align: middle; font-size: .75rem; }
body.mia-v2 .mia-table tbody tr:last-child td, body.mia-v2 .match-table-v12 tbody tr:last-child td, body.mia-v2 .mapping-table tbody tr:last-child td { border-bottom: 0; }
body.mia-v2 .mia-table tbody tr:hover, body.mia-v2 .match-table-v12 tbody tr:hover, body.mia-v2 .mapping-table tbody tr:hover { background: var(--v2-accent-softer); }
body.mia-v2 .mia-table strong, body.mia-v2 .match-table-v12 strong { color: var(--v2-ink); }
body.mia-v2 .mia-table small, body.mia-v2 .match-table-v12 small { color: var(--v2-ink-4); }
body.mia-v2 .row-arrow { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid var(--v2-line); border-radius: 8px; color: var(--v2-ink-3); background: var(--v2-surface); text-decoration: none; }
body.mia-v2 .row-arrow:hover { color: var(--v2-accent); border-color: rgba(49,94,251,.25); background: var(--v2-accent-soft); }
body.mia-v2 .entity-cell { display: flex; align-items: center; gap: 10px; min-width: 0; }
body.mia-v2 .entity-cell > span { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 34px; border-radius: 9px; color: var(--v2-accent-2); background: var(--v2-accent-soft); font-weight: 730; }
body.mia-v2 .entity-cell > div { min-width: 0; }
body.mia-v2 .entity-cell strong, body.mia-v2 .entity-cell small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.mia-v2 .pagination { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 18px; color: var(--v2-ink-3); }

body.mia-v2 .filter-bar, body.mia-v2 .portfolio-filters-v12, body.mia-v2 .match-filter-v12, body.mia-v2 .mapping-toolbar { display: grid; grid-template-columns: minmax(220px,1fr) repeat(2,minmax(150px,210px)) auto; gap: 8px; align-items: center; padding: 10px; margin-bottom: 16px; border: 1px solid var(--v2-line); border-radius: var(--v2-radius-md); background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
body.mia-v2 .portfolio-filters-v12 > div, body.mia-v2 .match-search { position: relative; }
body.mia-v2 .portfolio-filters-v12 > div > span { position: absolute; left: 11px; top: 50%; z-index: 1; transform: translateY(-50%); color: var(--v2-ink-4); }
body.mia-v2 .portfolio-filters-v12 > div input { padding-left: 32px; }

/* Empty states */
body.mia-v2 .empty-state, body.mia-v2 .premium-empty-state, body.mia-v2 .empty-panel { padding: 34px 24px; color: var(--v2-ink-3); text-align: center; }
body.mia-v2 .premium-empty-state.large { padding: 56px 28px; }
body.mia-v2 .premium-empty-state > span, body.mia-v2 .empty-orb { width: 46px; height: 46px; display: grid; place-items: center; margin: 0 auto 14px; border: 1px solid rgba(49,94,251,.15); border-radius: 14px; color: var(--v2-accent); background: var(--v2-accent-soft); }
body.mia-v2 .premium-empty-state h2, body.mia-v2 .premium-empty-state h3, body.mia-v2 .empty-state h3 { margin: 0 0 6px; }
body.mia-v2 .premium-empty-state p, body.mia-v2 .empty-state p { max-width: 520px; margin: 0 auto 16px; }

/* Home / executive command centre */
.v2-home { display: grid; gap: 18px; }
.v2-home-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.v2-home-head h1 { margin: 0; font-size: clamp(2rem,3vw,2.75rem); }
.v2-home-head p { max-width: 720px; margin: 8px 0 0; }
.v2-home-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.v2-brief-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(300px,.75fr); gap: 16px; }
.v2-brief-card { position: relative; min-height: 260px; padding: 26px; overflow: hidden; border: 1px solid #20242c; border-radius: 18px; color: #fff; background: linear-gradient(145deg,#11151d 0%,#171e2e 64%,#1e2850 100%); box-shadow: var(--v2-shadow-md); }
.v2-brief-card::after { content: ""; position: absolute; right: -100px; bottom: -130px; width: 360px; height: 360px; border-radius: 50%; background: radial-gradient(circle,rgba(92,125,255,.28),transparent 66%); }
.v2-brief-card > * { position: relative; z-index: 1; }
.v2-brief-card .section-kicker { color: #91a8ff; }
.v2-brief-card h2 { max-width: 780px; margin: 7px 0 12px; color: #fff; font-size: clamp(1.7rem,3vw,2.45rem); line-height: 1.12; }
.v2-brief-card p { max-width: 760px; color: #aeb7c8; }
.v2-brief-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.v2-brief-action { display: inline-flex; align-items: center; gap: 8px; min-height: 38px; padding: 0 12px; border: 1px solid rgba(255,255,255,.13); border-radius: 9px; color: #fff; background: rgba(255,255,255,.065); text-decoration: none; font-size: .73rem; font-weight: 630; }
.v2-brief-action:hover { background: rgba(255,255,255,.11); }
.v2-decision-panel { padding: 20px; border: 1px solid var(--v2-line); border-radius: 18px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-decision-panel header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.v2-decision-panel header h2 { margin: 0; font-size: .95rem; }
.v2-decision-list { display: grid; }
.v2-decision-row { display: grid; grid-template-columns: 28px minmax(0,1fr) auto; align-items: center; gap: 10px; min-height: 58px; border-top: 1px solid var(--v2-line); }
.v2-decision-row:first-child { border-top: 0; }
.v2-decision-index { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .65rem; font-weight: 740; }
.v2-decision-row strong, .v2-decision-row small { display: block; }
.v2-decision-row strong { font-size: .74rem; }
.v2-decision-row small { color: var(--v2-ink-4); font-size: .64rem; }
.v2-decision-row em { color: var(--v2-ink); font-size: .82rem; font-style: normal; font-weight: 720; }
.v2-dashboard-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(310px,.65fr); gap: 16px; }
.v2-dashboard-stack { display: grid; gap: 16px; }
.v2-list-panel { border: 1px solid var(--v2-line); border-radius: var(--v2-radius-md); background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); overflow: hidden; }
.v2-list-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 18px; border-bottom: 1px solid var(--v2-line); }
.v2-list-panel-head h2 { margin: 0; font-size: .96rem; }
.v2-list-panel-head p { margin: 3px 0 0; font-size: .69rem; }
.v2-list-panel-head a { color: var(--v2-accent); font-size: .7rem; font-weight: 620; text-decoration: none; }
.v2-deal-row { display: grid; grid-template-columns: minmax(220px,1.25fr) minmax(130px,.7fr) minmax(120px,.6fr) minmax(170px,1fr) 34px; align-items: center; gap: 12px; min-height: 70px; padding: 10px 18px; border-bottom: 1px solid var(--v2-line); text-decoration: none; }
.v2-deal-row:last-child { border-bottom: 0; }
.v2-deal-row:hover { background: var(--v2-accent-softer); }
.v2-deal-row > div { min-width: 0; }
.v2-deal-row strong, .v2-deal-row small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v2-deal-row strong { font-size: .76rem; }
.v2-deal-row small { color: var(--v2-ink-4); font-size: .64rem; }
.v2-row-progress { height: 5px; margin-top: 7px; overflow: hidden; border-radius: 99px; background: var(--v2-surface-muted); }
.v2-row-progress i { display: block; height: 100%; border-radius: inherit; background: var(--v2-accent); }
.v2-signal-row { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 10px; min-height: 61px; padding: 8px 0; border-top: 1px solid var(--v2-line); text-decoration: none; }
.v2-signal-row:first-child { border-top: 0; }
.v2-signal-score { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .73rem; font-weight: 760; }
.v2-signal-row strong, .v2-signal-row small { display: block; }
.v2-signal-row small { color: var(--v2-ink-4); font-size: .63rem; }
.v2-signal-row em { color: var(--v2-ink-3); font-size: .68rem; font-style: normal; }
.v2-system-row { display: grid; grid-template-columns: 32px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 11px 0; border-top: 1px solid var(--v2-line); }
.v2-system-row:first-child { border-top: 0; }
.v2-system-icon { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-ink-3); background: var(--v2-surface-muted); }
.v2-system-icon .mia-icon { width: 15px; height: 15px; }
.v2-system-row strong, .v2-system-row small { display: block; }
.v2-system-row strong { font-size: .72rem; }
.v2-system-row small { color: var(--v2-ink-4); font-size: .62rem; }
.v2-system-status { width: 7px; height: 7px; border-radius: 50%; background: var(--v2-green); box-shadow: 0 0 0 4px var(--v2-green-soft); }

/* Portfolio */
.v2-page-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.v2-page-hero h1 { margin: 0; }
.v2-page-hero p { max-width: 720px; margin: 8px 0 0; }
.v2-page-hero-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.v2-view-switch { display: inline-flex; padding: 3px; border: 1px solid var(--v2-line); border-radius: 9px; background: var(--v2-surface); }
.v2-view-switch button { min-height: 30px; padding: 0 9px; border: 0; border-radius: 6px; color: var(--v2-ink-3); background: transparent; cursor: pointer; font-size: .67rem; font-weight: 620; }
.v2-view-switch button.active { color: var(--v2-ink); background: var(--v2-surface-muted); box-shadow: var(--v2-shadow-xs); }
.v2-portfolio-table { overflow: hidden; border: 1px solid var(--v2-line); border-radius: var(--v2-radius-md); background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-portfolio-head, .v2-portfolio-row { display: grid; grid-template-columns: minmax(230px,1.35fr) minmax(150px,.8fr) minmax(150px,.75fr) minmax(130px,.65fr) minmax(220px,1.15fr) 36px; gap: 16px; align-items: center; }
.v2-portfolio-head { min-height: 42px; padding: 0 16px; border-bottom: 1px solid var(--v2-line); color: var(--v2-ink-4); background: var(--v2-surface-subtle); font-size: .61rem; font-weight: 720; text-transform: uppercase; letter-spacing: .08em; }
.v2-portfolio-row { min-height: 82px; padding: 12px 16px; border-bottom: 1px solid var(--v2-line); text-decoration: none; transition: background var(--v2-fast); }
.v2-portfolio-row:last-child { border-bottom: 0; }
.v2-portfolio-row:hover { background: var(--v2-accent-softer); }
.v2-portfolio-identity { display: flex; align-items: center; gap: 11px; min-width: 0; }
.v2-entity-avatar { width: 39px; height: 39px; display: grid; place-items: center; flex: 0 0 39px; border: 1px solid rgba(49,94,251,.12); border-radius: 11px; color: var(--v2-accent-2); background: linear-gradient(145deg,var(--v2-accent-soft),var(--v2-surface)); font-weight: 740; }
.v2-portfolio-identity div, .v2-portfolio-cell { min-width: 0; }
.v2-portfolio-row strong, .v2-portfolio-row small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v2-portfolio-row strong { color: var(--v2-ink); font-size: .76rem; }
.v2-portfolio-row small { color: var(--v2-ink-4); font-size: .63rem; }
.v2-portfolio-stage { display: inline-flex; align-items: center; gap: 6px; color: var(--v2-ink-2); font-size: .7rem; font-weight: 620; }
.v2-portfolio-stage::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--v2-accent); box-shadow: 0 0 0 4px var(--v2-accent-soft); }
.v2-portfolio-progress { height: 4px; margin-top: 7px; overflow: hidden; border-radius: 99px; background: var(--v2-surface-muted); }
.v2-portfolio-progress i { display: block; height: 100%; border-radius: inherit; background: var(--v2-accent); }
.v2-board-view { display: none; grid-template-columns: repeat(4,minmax(250px,1fr)); gap: 12px; align-items: start; overflow-x: auto; padding-bottom: 8px; }
.v2-board-view.active { display: grid; }
.v2-table-view.hidden-view { display: none; }
.v2-board-lane { min-width: 250px; padding: 10px; border: 1px solid var(--v2-line); border-radius: var(--v2-radius-md); background: var(--v2-surface-subtle); }
.v2-board-lane > header { display: flex; align-items: center; justify-content: space-between; padding: 4px 4px 10px; }
.v2-board-lane > header strong { font-size: .72rem; }
.v2-board-lane > header span { color: var(--v2-ink-4); font-size: .64rem; }
.v2-board-card { display: block; padding: 12px; margin-bottom: 8px; border: 1px solid var(--v2-line); border-radius: 11px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); text-decoration: none; }
.v2-board-card:hover { border-color: rgba(49,94,251,.24); box-shadow: var(--v2-shadow-sm); }
.v2-board-card strong, .v2-board-card small { display: block; }
.v2-board-card small { margin-top: 3px; color: var(--v2-ink-4); font-size: .63rem; }
.v2-board-card footer { display: flex; align-items: center; justify-content: space-between; margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--v2-line); color: var(--v2-ink-3); font-size: .64rem; }

/* Deal workspace */
.deal-workspace-v12 { display: grid; gap: 0; }
.v2-deal-context { position: sticky; top: var(--v2-topbar-height); z-index: 45; margin: -30px calc(50% - 50vw) 0; padding: 0 max(28px, calc((100vw - var(--v2-content-max))/2)); border-bottom: 1px solid var(--v2-line); background: color-mix(in srgb, var(--v2-canvas) 94%, transparent); backdrop-filter: blur(18px); }
.v2-deal-context-inner { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.v2-deal-breadcrumb { display: flex; align-items: center; gap: 9px; min-width: 0; }
.v2-deal-breadcrumb > a { color: var(--v2-ink-3); text-decoration: none; font-size: .7rem; }
.v2-deal-breadcrumb > span { color: var(--v2-ink-4); }
.v2-deal-identity-inline { min-width: 0; display: flex; align-items: center; gap: 10px; }
.v2-deal-identity-inline .v2-entity-avatar { width: 35px; height: 35px; flex-basis: 35px; border-radius: 10px; }
.v2-deal-identity-inline div { min-width: 0; }
.v2-deal-identity-inline strong, .v2-deal-identity-inline small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v2-deal-identity-inline strong { font-size: .78rem; }
.v2-deal-identity-inline small { color: var(--v2-ink-4); font-size: .62rem; }
.v2-deal-context-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }

.deal-dossier-header { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 24px; padding: 30px 0 22px; border-bottom: 0; }
.deal-dossier-identity { display: flex; align-items: flex-start; gap: 15px; }
.deal-monogram { width: 56px; height: 56px; display: grid; place-items: center; flex: 0 0 56px; border: 1px solid rgba(49,94,251,.15); border-radius: 15px; color: var(--v2-accent-2); background: linear-gradient(145deg,var(--v2-accent-soft),var(--v2-surface)); font-size: 1.1rem; font-weight: 760; }
.deal-dossier-header h1 { margin: 5px 0 7px; font-size: clamp(2rem,3.2vw,3rem); }
.deal-header-meta { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; }
.deal-header-meta span, .deal-status-ribbon { display: inline-flex; align-items: center; gap: 5px; min-height: 24px; padding: 3px 8px; border: 1px solid var(--v2-line); border-radius: 999px; color: var(--v2-ink-3); background: var(--v2-surface); font-size: .64rem; }
.deal-header-actions { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.v2-deal-summary-line { max-width: 900px; margin: 0; color: var(--v2-ink-3); font-size: .88rem; line-height: 1.65; }

.deal-journey-v12 { margin: 0 0 14px; padding: 14px; border: 1px solid var(--v2-line); border-radius: var(--v2-radius-md); background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.journey-v12-track { display: grid; grid-template-columns: repeat(12,minmax(92px,1fr)); gap: 0; min-width: 1120px; }
.deal-journey-v12 { overflow-x: auto; }
.journey-v12-step { position: relative; min-height: 56px; display: flex; align-items: center; gap: 8px; padding: 7px 8px; color: var(--v2-ink-4); }
.journey-v12-step::after { content: ""; position: absolute; left: calc(50% + 12px); right: calc(-50% + 12px); top: 20px; height: 1px; background: var(--v2-line); }
.journey-v12-step:last-child::after { display: none; }
.journey-v12-node { position: relative; z-index: 1; width: 25px; height: 25px; display: grid; place-items: center; flex: 0 0 25px; border: 1px solid var(--v2-line-strong); border-radius: 50%; color: var(--v2-ink-4); background: var(--v2-surface); font-size: .62rem; font-style: normal; font-weight: 720; }
.journey-v12-copy { min-width: 0; }
.journey-v12-copy strong, .journey-v12-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.journey-v12-copy strong { color: inherit; font-size: .65rem; }
.journey-v12-copy small { font-size: .57rem; }
.journey-v12-step.done { color: var(--v2-green); }
.journey-v12-step.done .journey-v12-node { color: #fff; border-color: var(--v2-green); background: var(--v2-green); }
.journey-v12-step.done::after { background: rgba(15,147,102,.35); }
.journey-v12-step.active { color: var(--v2-accent); }
.journey-v12-step.active .journey-v12-node { color: #fff; border-color: var(--v2-accent); background: var(--v2-accent); box-shadow: 0 0 0 5px var(--v2-accent-soft); }

.deal-tabs-v12 { position: sticky; top: calc(var(--v2-topbar-height) + 72px); z-index: 42; display: flex; gap: 2px; padding: 5px; margin-bottom: 18px; overflow-x: auto; border: 1px solid var(--v2-line); border-radius: 11px; background: color-mix(in srgb,var(--v2-surface) 90%,transparent); box-shadow: var(--v2-shadow-xs); backdrop-filter: blur(14px); }
.deal-tabs-v12 a { min-height: 34px; display: inline-flex; align-items: center; gap: 7px; padding: 0 11px; border-radius: 7px; color: var(--v2-ink-3); text-decoration: none; font-size: .7rem; font-weight: 620; white-space: nowrap; }
.deal-tabs-v12 a:hover { color: var(--v2-ink); background: var(--v2-surface-subtle); }
.deal-tabs-v12 a.active { color: var(--v2-ink); background: var(--v2-surface-muted); box-shadow: var(--v2-shadow-xs); }

.v2-deal-overview { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 16px; align-items: start; }
.v2-deal-main { display: grid; gap: 16px; min-width: 0; }
.v2-deal-rail { position: sticky; top: calc(var(--v2-topbar-height) + 130px); display: grid; gap: 12px; }
.v2-next-action-card { padding: 20px; border: 1px solid rgba(49,94,251,.18); border-radius: 16px; background: linear-gradient(145deg,var(--v2-accent-soft),var(--v2-surface)); box-shadow: var(--v2-shadow-xs); }
.v2-next-action-card span { display: inline-flex; align-items: center; gap: 6px; color: var(--v2-accent); font-size: .62rem; font-weight: 730; text-transform: uppercase; letter-spacing: .09em; }
.v2-next-action-card h3 { margin: 8px 0 6px; font-size: 1.05rem; }
.v2-next-action-card p { margin: 0 0 15px; font-size: .72rem; }
.v2-health-card { padding: 16px; border: 1px solid var(--v2-line); border-radius: 14px; background: var(--v2-surface); }
.v2-health-card header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.v2-health-card header strong { font-size: .76rem; }
.v2-health-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; padding: 9px 0; border-top: 1px solid var(--v2-line); }
.v2-health-row:first-of-type { border-top: 0; }
.v2-health-row span { color: var(--v2-ink-3); font-size: .67rem; }
.v2-health-row strong { font-size: .69rem; }
.v2-health-bar { grid-column: 1 / -1; height: 4px; overflow: hidden; border-radius: 99px; background: var(--v2-surface-muted); }
.v2-health-bar i { display: block; height: 100%; border-radius: inherit; background: var(--v2-accent); }

.dossier-section { padding: 20px; }
.dossier-summary { max-width: 930px; margin: 0; color: var(--v2-ink-2) !important; font-size: .88rem; line-height: 1.72; }
.key-metric-ledger { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 0; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 12px; }
.key-metric-ledger > div { min-height: 92px; padding: 15px; border-right: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.key-metric-ledger > div:last-child { border-right: 0; }
.key-metric-ledger span { display: block; color: var(--v2-ink-4); font-size: .61rem; font-weight: 680; text-transform: uppercase; letter-spacing: .08em; }
.key-metric-ledger strong { display: block; margin-top: 8px; font-size: 1.18rem; letter-spacing: -.03em; }
.dossier-split { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.narrative-grid { display: grid; gap: 0; }
.narrative-block { padding: 14px 0; border-top: 1px solid var(--v2-line); }
.narrative-block:first-child { border-top: 0; padding-top: 0; }
.narrative-label { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 5px; color: var(--v2-ink-4); font-size: .62rem; font-weight: 680; text-transform: uppercase; letter-spacing: .08em; }
.narrative-block p { margin: 0; color: var(--v2-ink-2); font-size: .77rem; line-height: 1.6; }
.field-source { display: inline-flex; align-items: center; gap: 4px; min-height: 20px; padding: 2px 6px; border: 1px solid var(--v2-line); border-radius: 999px; color: var(--v2-ink-4); background: var(--v2-surface-subtle); font-size: .57rem; font-weight: 650; text-transform: none; letter-spacing: 0; }
.field-source-ai { color: var(--v2-violet); border-color: rgba(117,89,232,.18); background: rgba(117,89,232,.08); }
.field-source-human { color: var(--v2-green); border-color: rgba(15,147,102,.18); background: var(--v2-green-soft); }
.field-origin-icon { width: 14px; height: 14px; display: grid; place-items: center; border-radius: 5px; }
.risk-list-v12, .risk-list, .warning-list, .clean-list { margin: 0; padding-left: 18px; color: var(--v2-ink-2); }
.risk-list-v12 li, .risk-list li, .warning-list li, .clean-list li { margin: 6px 0; font-size: .74rem; }

/* Matching */
.workspace-section-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 16px; }
.workspace-section-header h2 { margin: 3px 0 5px; font-size: 1.45rem; }
.workspace-section-header p { max-width: 760px; margin: 0; }
.workspace-count { display: inline-flex; min-width: 36px; height: 30px; align-items: center; justify-content: center; border: 1px solid var(--v2-line); border-radius: 9px; color: var(--v2-ink-2); background: var(--v2-surface); font-size: .72rem; font-weight: 720; }
.matching-kpi-strip { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 0; margin-bottom: 14px; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface); }
.matching-kpi-strip > div { padding: 13px 14px; border-right: 1px solid var(--v2-line); }
.matching-kpi-strip > div:last-child { border-right: 0; }
.matching-kpi-strip span { display: block; color: var(--v2-ink-4); font-size: .58rem; text-transform: uppercase; letter-spacing: .08em; }
.matching-kpi-strip strong { display: block; margin-top: 4px; font-size: 1.2rem; }
.matching-command-v12 { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 18px; padding: 18px; margin-bottom: 14px; border: 1px solid rgba(49,94,251,.18); border-radius: 14px; background: linear-gradient(135deg,var(--v2-accent-soft),var(--v2-surface)); }
.matching-command-copy h2 { margin: 3px 0 5px; }
.matching-command-copy p { margin: 0; font-size: .72rem; }
.matching-command-metrics { display: flex; align-items: center; gap: 18px; }
.matching-command-metrics div { display: flex; flex-direction: column; }
.matching-command-metrics span { color: var(--v2-ink-4); font-size: .58rem; text-transform: uppercase; letter-spacing: .08em; }
.matching-command-metrics strong { font-size: .9rem; }
.match-queue-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 10px; }
.match-queue-head h2 { margin: 0; }
.bulk-action-bar-v12 { position: sticky; bottom: 14px; z-index: 25; display: grid; grid-template-columns: minmax(220px,1fr) 210px 110px auto; gap: 8px; align-items: center; padding: 10px; margin-top: 12px; border: 1px solid var(--v2-line-strong); border-radius: 12px; background: color-mix(in srgb,var(--v2-surface-raised) 94%,transparent); box-shadow: var(--v2-shadow-md); backdrop-filter: blur(16px); }
.match-company-cell { display: flex; align-items: center; gap: 10px; min-width: 210px; }
.rank-v12 { width: 28px; color: var(--v2-ink-4); font-size: .68rem; font-weight: 710; text-align: center; }
.score-chip, .score-large-v12 { display: grid; place-items: center; border: 1px solid rgba(49,94,251,.16); border-radius: 9px; color: var(--v2-accent); background: var(--v2-accent-soft); font-weight: 760; }
.score-chip { width: 38px; height: 34px; font-size: .72rem; }
.score-large-v12 { width: 66px; height: 66px; border-radius: 17px; font-size: 1.4rem; }
.match-contact-cell strong, .match-contact-cell small { display: block; }
.match-contact-cell small { color: var(--v2-ink-4); }
.match-drawer-v12 > summary { cursor: pointer; list-style: none; }
.match-drawer-v12 > summary::-webkit-details-marker { display: none; }
.match-drawer-v12[open]::before { content: ""; position: fixed; inset: 0; z-index: 91; background: rgba(9,11,15,.38); backdrop-filter: blur(2px); }
.match-drawer-v12[open] > .match-evidence-v12 { position: fixed; inset: var(--v2-topbar-height) 0 0 auto; z-index: 92; width: min(570px,100vw); padding: 24px; overflow-y: auto; border-left: 1px solid var(--v2-line); background: var(--v2-surface-raised); box-shadow: var(--v2-shadow-lg); }
.match-evidence-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.match-evidence-grid { display: grid; gap: 14px; margin-top: 18px; }
.match-evidence-grid > section { padding: 16px; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface-subtle); }
.score-anatomy-v12 { display: grid; gap: 7px; }
.score-anatomy-v12 > div { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 10px; align-items: center; }
.score-anatomy-v12 span { color: var(--v2-ink-3); font-size: .67rem; }
.score-anatomy-v12 strong { font-size: .68rem; }
.semantic-evidence-v12, .quality-flags-v12 { display: grid; gap: 8px; }
.semantic-evidence-v12 article, .quality-flags-v12 span { padding: 9px 10px; border: 1px solid var(--v2-line); border-radius: 9px; background: var(--v2-surface); font-size: .68rem; }

/* Profile editor */
.profile-editor-v12 { display: grid; gap: 16px; }
.profile-editor-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }
.profile-editor-header h1 { margin: 4px 0 7px; }
.profile-editor-status { display: flex; gap: 8px; flex-wrap: wrap; }
.profile-editor-main { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 16px; align-items: start; }
.profile-editor-form { display: grid; gap: 14px; }
.profile-form-section { padding: 20px; border: 1px solid var(--v2-line); border-radius: 14px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.profile-form-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding-bottom: 14px; margin-bottom: 16px; border-bottom: 1px solid var(--v2-line); }
.profile-form-section-head h2 { margin: 0 0 4px; font-size: 1rem; }
.profile-form-section-head p { margin: 0; font-size: .68rem; }
.profile-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.profile-form-grid .span-2 { grid-column: 1 / -1; }
.field-v13 { position: relative; }
.profile-form-label { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 6px; }
.profile-editor-rail { position: sticky; top: calc(var(--v2-topbar-height) + 18px); display: grid; gap: 12px; }
.profile-control-card { padding: 16px; }
.completion-ring { --pct: 0; width: 76px; height: 76px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(var(--v2-accent) calc(var(--pct)*1%),var(--v2-surface-muted) 0); }
.completion-ring::before { content: ""; grid-area: 1/1; width: 60px; height: 60px; border-radius: 50%; background: var(--v2-surface); }
.completion-ring strong { z-index: 1; grid-area: 1/1; font-size: 1rem; }
.profile-editor-actions { position: sticky; bottom: 12px; z-index: 20; display: flex; justify-content: flex-end; gap: 8px; padding: 10px; border: 1px solid var(--v2-line); border-radius: 12px; background: color-mix(in srgb,var(--v2-surface) 94%,transparent); box-shadow: var(--v2-shadow-md); backdrop-filter: blur(14px); }
.profile-editor-legend { display: grid; gap: 7px; }
.profile-editor-legend > div { display: flex; align-items: center; gap: 8px; color: var(--v2-ink-3); font-size: .67rem; }

/* Network */
.v2-network-layout { display: grid; gap: 16px; }
.company-profile-hero { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 24px; padding: 24px; border: 1px solid var(--v2-line); border-radius: 18px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.company-identity { display: flex; align-items: flex-start; gap: 15px; }
.company-monogram { width: 58px; height: 58px; display: grid; place-items: center; flex: 0 0 58px; border-radius: 15px; color: var(--v2-accent-2); background: var(--v2-accent-soft); font-size: 1.1rem; font-weight: 760; }
.company-identity h1 { margin: 3px 0 5px; }
.company-profile-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.company-intel-layout { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 16px; align-items: start; }
.company-metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 12px; }
.company-metrics > div { padding: 14px; border-right: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.company-metrics > div:last-child { border-right: 0; }
.company-metrics span { display: block; color: var(--v2-ink-4); font-size: .58rem; text-transform: uppercase; letter-spacing: .08em; }
.company-metrics strong { display: block; margin-top: 4px; font-size: .85rem; }
.contact-card, .row-link, .match-row, .message-row, .audit-line, .response-card, .operation-row, .incident-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 0; border-top: 1px solid var(--v2-line); }
.contact-card:first-child, .row-link:first-child, .match-row:first-child, .message-row:first-child, .audit-line:first-child, .response-card:first-child { border-top: 0; }
.contact-card strong, .contact-card small, .row-link strong, .row-link small, .match-row strong, .match-row small { display: block; }
.contact-card small, .row-link small, .match-row small { color: var(--v2-ink-4); }

/* Import wizard */
.import-wizard-shell { display: grid; gap: 18px; }
.wizard-steps { display: grid; grid-template-columns: repeat(4,1fr); overflow: hidden; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface); }
.wizard-step { position: relative; min-height: 58px; display: flex; align-items: center; gap: 9px; padding: 10px 14px; border-right: 1px solid var(--v2-line); color: var(--v2-ink-4); }
.wizard-step:last-child { border-right: 0; }
.wizard-step span { width: 26px; height: 26px; display: grid; place-items: center; border: 1px solid var(--v2-line-strong); border-radius: 50%; font-size: .62rem; font-weight: 720; }
.wizard-step strong, .wizard-step small { display: block; }
.wizard-step strong { color: inherit; font-size: .7rem; }
.wizard-step small { font-size: .59rem; }
.wizard-step.active { color: var(--v2-accent); background: var(--v2-accent-softer); }
.wizard-step.active span { color: #fff; border-color: var(--v2-accent); background: var(--v2-accent); }
.wizard-step.done { color: var(--v2-green); }
.wizard-step.done span { color: #fff; border-color: var(--v2-green); background: var(--v2-green); }
.import-review-grid { display: grid; grid-template-columns: minmax(0,1fr) 310px; gap: 16px; align-items: start; }
.import-control-column { position: sticky; top: calc(var(--v2-topbar-height) + 18px); display: grid; gap: 12px; }
.import-metric-strip { display: grid; grid-template-columns: repeat(5,1fr); gap: 0; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface); }
.import-metric-strip > div { padding: 13px; border-right: 1px solid var(--v2-line); }
.import-metric-strip > div:last-child { border-right: 0; }
.mapping-report { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface); }
.mapping-source-name { display: flex; flex-direction: column; }
.mapping-source-name strong { font-size: .72rem; }
.mapping-source-name small, .mapping-samples { color: var(--v2-ink-4); font-size: .62rem; }
.mapping-confidence { min-width: 56px; display: inline-flex; justify-content: center; padding: 4px 7px; border-radius: 999px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .62rem; font-weight: 700; }
.upload-dropzone { position: relative; min-height: 220px; display: grid; place-items: center; padding: 28px; border: 1px dashed var(--v2-line-strong); border-radius: 14px; background: var(--v2-surface-subtle); text-align: center; }
.upload-dropzone:hover { border-color: rgba(49,94,251,.4); background: var(--v2-accent-softer); }
.upload-dropzone input[type="file"] { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.upload-icon { width: 48px; height: 48px; display: grid; place-items: center; margin: 0 auto 12px; border-radius: 14px; color: var(--v2-accent); background: var(--v2-accent-soft); }

/* Outreach and composer */
.campaign-hero-v13 { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.campaign-hero-v13 h1 { margin: 3px 0 7px; font-size: clamp(2rem,3vw,2.75rem); }
.campaign-hero-v13 p { max-width: 760px; margin: 0; }
.campaign-pipeline { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); margin: 18px 0; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 14px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.campaign-pipeline a { position: relative; min-height: 90px; display: flex; flex-direction: column; justify-content: center; padding: 15px 18px; border-right: 1px solid var(--v2-line); text-decoration: none; }
.campaign-pipeline a:last-child { border-right: 0; }
.campaign-pipeline a:hover { background: var(--v2-accent-softer); }
.campaign-pipeline a.active { background: var(--v2-accent-soft); }
.campaign-pipeline a.active::before { content: ""; position: absolute; top: 0; left: 14px; right: 14px; height: 3px; border-radius: 0 0 4px 4px; background: var(--v2-accent); }
.campaign-pipeline span { color: var(--v2-ink-4); font-size: .59rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.campaign-pipeline strong { margin-top: 4px; font-size: 1.45rem; }
.campaign-pipeline small { color: var(--v2-ink-3); font-size: .63rem; }
.campaign-review-shell { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 16px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.campaign-review-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; padding: 19px 20px; border-bottom: 1px solid var(--v2-line); }
.campaign-message-table-head, .campaign-message-row { display: grid; grid-template-columns: minmax(210px,1fr) minmax(220px,1.1fr) minmax(260px,1.35fr) 110px 72px; gap: 16px; align-items: center; }
.campaign-message-table-head { min-height: 40px; padding: 0 20px; color: var(--v2-ink-4); background: var(--v2-surface-subtle); font-size: .59rem; font-weight: 710; text-transform: uppercase; letter-spacing: .08em; }
.campaign-message-row { min-height: 76px; padding: 12px 20px; border-top: 1px solid var(--v2-line); }
.campaign-message-row:hover { background: var(--v2-accent-softer); }
.campaign-buyer-cell { display: flex; align-items: center; gap: 10px; min-width: 0; }
.buyer-avatar, .recipient-avatar { width: 36px; height: 36px; display: grid; place-items: center; flex: 0 0 36px; border-radius: 10px; color: var(--v2-accent-2); background: var(--v2-accent-soft); font-weight: 740; }
.campaign-buyer-cell div, .campaign-angle-cell, .campaign-copy-cell { min-width: 0; }
.campaign-buyer-cell strong, .campaign-buyer-cell small, .campaign-angle-cell strong, .campaign-angle-cell small, .campaign-copy-cell strong, .campaign-copy-cell small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.campaign-buyer-cell small, .campaign-angle-cell small, .campaign-copy-cell small { color: var(--v2-ink-4); font-size: .62rem; }
.composer-shell { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 16px; align-items: start; }
.composer-main { min-width: 0; display: grid; gap: 14px; }
.composer-aside { position: sticky; top: calc(var(--v2-topbar-height) + 18px); display: grid; gap: 12px; }
.composer-hero { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.composer-recipient { display: flex; align-items: center; gap: 11px; }
.composer-recipient-line { display: flex; gap: 7px; flex-wrap: wrap; }
.editor-card { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 14px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.editor-toolbar { position: sticky; top: calc(var(--v2-topbar-height) + 5px); z-index: 10; display: flex; align-items: center; flex-wrap: wrap; gap: 2px; padding: 7px; border-bottom: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.editor-toolbar button, .toolbar-colour { width: 32px; height: 30px; display: grid; place-items: center; border: 1px solid transparent; border-radius: 7px; color: var(--v2-ink-2); background: transparent; cursor: pointer; }
.editor-toolbar button:hover, .toolbar-colour:hover { border-color: var(--v2-line); background: var(--v2-surface); }
.toolbar-divider { width: 1px; height: 20px; margin: 0 4px; background: var(--v2-line); }
.email-rich-editor { min-height: 410px; padding: 24px; color: var(--v2-ink); background: var(--v2-surface); outline: 0; font-size: .86rem; line-height: 1.7; }
.email-rich-editor:focus { box-shadow: inset 0 0 0 2px rgba(49,94,251,.08); }
.composer-savebar { position: sticky; bottom: 12px; z-index: 15; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 10px; border: 1px solid var(--v2-line); border-radius: 12px; background: color-mix(in srgb,var(--v2-surface-raised) 94%,transparent); box-shadow: var(--v2-shadow-md); backdrop-filter: blur(14px); }
.email-preview-shell { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 14px; background: var(--v2-surface-muted); }
.preview-top { padding: 10px 12px; border-bottom: 1px solid var(--v2-line); }
.preview-workspace { padding: 22px; }
.preview-card { max-width: 700px; margin: 0 auto; overflow: hidden; }
.rewrite-presets { display: flex; flex-wrap: wrap; gap: 6px; }
.rewrite-presets button { min-height: 30px; padding: 0 9px; border: 1px solid var(--v2-line); border-radius: 8px; color: var(--v2-ink-3); background: var(--v2-surface-subtle); cursor: pointer; font-size: .64rem; }
.rewrite-presets button:hover { color: var(--v2-accent); border-color: rgba(49,94,251,.2); background: var(--v2-accent-soft); }

/* Data Room */
.dataroom-hero-v13 { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.dataroom-hero-v13 h1 { margin: 3px 0 7px; }
.dataroom-workspace { display: grid; grid-template-columns: 240px minmax(0,1fr) 330px; gap: 0; min-height: 680px; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 16px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.dataroom-side { padding: 15px 12px; border-right: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.dataroom-side-section { margin-bottom: 18px; }
.dataroom-side-section > span { display: block; padding: 0 8px 7px; color: var(--v2-ink-4); font-size: .59rem; font-weight: 720; text-transform: uppercase; letter-spacing: .09em; }
.folder-nav { display: grid; gap: 2px; }
.folder-nav a, .folder-nav button { min-height: 34px; display: flex; align-items: center; gap: 8px; padding: 0 8px; border: 0; border-radius: 7px; color: var(--v2-ink-3); background: transparent; text-decoration: none; cursor: pointer; font-size: .69rem; text-align: left; }
.folder-nav a:hover, .folder-nav a.active, .folder-nav button:hover { color: var(--v2-ink); background: var(--v2-surface-muted); }
.folder-nav .mia-icon { width: 15px; height: 15px; }
.dataroom-library { min-width: 0; padding: 18px; }
.dataroom-panel-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.document-group { margin-bottom: 18px; }
.document-group-head { display: flex; align-items: center; justify-content: space-between; padding: 7px 0; color: var(--v2-ink-4); font-size: .61rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.document-row-v13 { display: grid; grid-template-columns: 36px minmax(0,1fr) auto; align-items: center; gap: 11px; min-height: 60px; padding: 8px 9px; border-top: 1px solid var(--v2-line); }
.document-row-v13:hover { background: var(--v2-accent-softer); }
.document-type-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; color: var(--v2-accent); background: var(--v2-accent-soft); }
.document-row-v13 strong, .document-row-v13 small { display: block; }
.document-row-v13 small { color: var(--v2-ink-4); font-size: .62rem; }
.dataroom-upload { padding: 14px; border-left: 1px solid var(--v2-line); background: var(--v2-surface-subtle); overflow-y: auto; }
.dataroom-upload-grid { display: grid; gap: 10px; }
.dataroom-upload select { opacity: 1 !important; pointer-events: auto !important; appearance: auto !important; color: var(--v2-ink) !important; background: var(--v2-surface) !important; }
.qa-row-v13, .access-row-v13 { padding: 12px 0; border-top: 1px solid var(--v2-line); }
.qa-row-v13:first-child, .access-row-v13:first-child { border-top: 0; }

/* MIA intelligence and insights */
.mia-command-hero { position: relative; display: grid; grid-template-columns: minmax(0,1.35fr) minmax(290px,.65fr); gap: 20px; padding: 28px; overflow: hidden; border: 1px solid #202633; border-radius: 18px; color: #fff; background: linear-gradient(145deg,#10151f,#19213a 65%,#252e5c); box-shadow: var(--v2-shadow-md); }
.mia-command-hero::after { content: ""; position: absolute; right: -80px; top: -120px; width: 330px; height: 330px; border-radius: 50%; background: radial-gradient(circle,rgba(107,135,255,.3),transparent 68%); }
.mia-command-hero > * { position: relative; z-index: 1; }
.mia-command-hero h1, .mia-command-hero h2 { color: #fff; }
.mia-command-hero p { color: #aab4c7; }
.mia-prompt-stack { display: grid; gap: 8px; }
.mia-prompt-stack button { min-height: 42px; padding: 0 12px; border: 1px solid rgba(255,255,255,.11); border-radius: 9px; color: #e9edf4; background: rgba(255,255,255,.055); cursor: pointer; text-align: left; font-size: .7rem; }
.mia-prompt-stack button:hover { background: rgba(255,255,255,.1); }
.capability-index { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.capability-index > article, .product-capability-list > article { padding: 17px; border: 1px solid var(--v2-line); border-radius: 13px; background: var(--v2-surface); }
.capability-index strong { display: block; font-size: .76rem; }
.capability-index p { margin: 5px 0 0; font-size: .68rem; }
.insight-hero-grid { display: grid; grid-template-columns: minmax(0,1.3fr) repeat(2,minmax(220px,.55fr)); gap: 12px; }
.insight-feature { min-height: 180px; padding: 20px; border: 1px solid var(--v2-line); border-radius: 15px; background: var(--v2-surface); }
.insight-feature.dark { color: #fff; border-color: #20242c; background: linear-gradient(145deg,#11151d,#202a4b); }
.insight-feature.dark strong, .insight-feature.dark h2 { color: #fff; }
.insight-feature span { color: var(--v2-ink-4); font-size: .61rem; text-transform: uppercase; letter-spacing: .09em; }
.insight-feature strong { display: block; margin-top: 18px; font-size: 2.2rem; letter-spacing: -.05em; }
.insight-feature p { margin: 5px 0 0; font-size: .68rem; }
.analytics-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin: 16px 0; }
.bar-list { display: grid; gap: 10px; }
.bar-list > div { display: grid; grid-template-columns: 120px minmax(0,1fr) 35px; align-items: center; gap: 10px; }
.bar-list span { color: var(--v2-ink-3); font-size: .68rem; }
.bar-list > div > div { height: 6px; overflow: hidden; border-radius: 99px; background: var(--v2-surface-muted); }
.bar-list i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--v2-accent),var(--v2-violet)); }
.bar-list strong { text-align: right; font-size: .7rem; }

/* Workspace settings */
.v2-settings-layout { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 18px; align-items: start; }
.v2-settings-nav { position: sticky; top: calc(var(--v2-topbar-height) + 18px); padding: 8px; border: 1px solid var(--v2-line); border-radius: 13px; background: var(--v2-surface); }
.v2-settings-nav a { min-height: 36px; display: flex; align-items: center; gap: 8px; padding: 0 9px; border-radius: 8px; color: var(--v2-ink-3); text-decoration: none; font-size: .69rem; }
.v2-settings-nav a:hover, .v2-settings-nav a.active { color: var(--v2-ink); background: var(--v2-surface-muted); }
.v2-settings-nav .mia-icon { width: 15px; height: 15px; }
.v2-settings-content { display: grid; gap: 14px; }
.mailbox-list-v13, .connector-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); gap: 12px; }
.mailbox-row-v13, .connector-card { padding: 16px; border: 1px solid var(--v2-line); border-radius: 13px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.mailbox-icon-v13, .connector-orb { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; color: var(--v2-accent); background: var(--v2-accent-soft); }
.workspace-mail-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; padding: 22px; border: 1px solid var(--v2-line); border-radius: 16px; background: var(--v2-surface); }
.mailbox-setup-shell { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 16px; align-items: start; }
.mailbox-form-section { padding: 18px 0; border-top: 1px solid var(--v2-line); }
.mailbox-form-section:first-child { border-top: 0; padding-top: 0; }
.mailbox-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.mailbox-help-card { position: sticky; top: calc(var(--v2-topbar-height) + 18px); padding: 18px; border: 1px solid var(--v2-line); border-radius: 14px; background: var(--v2-surface); }

/* Background jobs */
.job-workspace-v12 { max-width: 980px; margin: 0 auto; }
.job-header-v12 { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.job-header-v12 h1 { max-width: 760px; margin: 8px 0 7px; font-size: clamp(1.9rem,3vw,2.65rem); }
.job-header-v12 p { max-width: 720px; margin: 0; }
.operation-state { display: inline-flex; align-items: center; gap: 7px; color: var(--v2-ink-3); font-size: .64rem; font-weight: 690; text-transform: uppercase; letter-spacing: .08em; }
.operation-state i { width: 7px; height: 7px; border-radius: 50%; background: var(--v2-accent); box-shadow: 0 0 0 4px var(--v2-accent-soft); }
.operation-state.state-failed i { background: var(--v2-red); box-shadow: 0 0 0 4px var(--v2-red-soft); }
.operation-state.state-succeeded i { background: var(--v2-green); box-shadow: 0 0 0 4px var(--v2-green-soft); }
.job-console-v12 { padding: 22px; border: 1px solid var(--v2-line); border-radius: 16px; background: var(--v2-surface); box-shadow: var(--v2-shadow-sm); }
.job-progress-heading-v12 { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; }
.job-progress-heading-v12 span, .job-progress-heading-v12 strong { display: block; }
.job-progress-heading-v12 span { font-size: .78rem; }
.job-progress-heading-v12 strong { margin-top: 3px; color: var(--v2-ink-3); font-size: .68rem; font-weight: 500; }
.job-progress-heading-v12 em { min-width: 45px; padding: 5px 8px; border-radius: 999px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .68rem; font-style: normal; font-weight: 700; text-align: center; }
.job-progress-track-v12 { height: 7px; margin: 14px 0 17px; overflow: hidden; border-radius: 99px; background: var(--v2-surface-muted); }
.job-progress-track-v12 i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--v2-accent),var(--v2-violet)); transition: width .4s var(--v2-ease); }
.job-step-strip-v12 { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.job-step-strip-v12 span { min-height: 40px; display: flex; align-items: center; gap: 8px; padding: 0 10px; border: 1px solid var(--v2-line); border-radius: 9px; color: var(--v2-ink-4); background: var(--v2-surface-subtle); font-size: .67rem; }
.job-step-strip-v12 span i { width: 21px; height: 21px; display: grid; place-items: center; border-radius: 50%; background: var(--v2-surface-muted); font-size: .58rem; font-style: normal; }
.job-step-strip-v12 span.done { color: var(--v2-green); border-color: rgba(15,147,102,.18); background: var(--v2-green-soft); }
.job-step-strip-v12 span.failed { color: var(--v2-red); border-color: rgba(201,65,65,.18); background: var(--v2-red-soft); }
.job-meta-v12 { display: grid; grid-template-columns: repeat(4,1fr); gap: 0; margin: 18px 0; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 11px; }
.job-meta-v12 > div { padding: 13px; border-right: 1px solid var(--v2-line); }
.job-meta-v12 > div:last-child { border-right: 0; }
.job-meta-v12 span, .job-meta-v12 strong { display: block; }
.job-meta-v12 span { color: var(--v2-ink-4); font-size: .58rem; text-transform: uppercase; letter-spacing: .08em; }
.job-meta-v12 strong { margin-top: 4px; font-size: .72rem; }
.job-outcome-v12 { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: start; gap: 13px; padding: 15px; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface-subtle); }
.job-outcome-v12.state-failed { border-color: rgba(201,65,65,.18); background: var(--v2-red-soft); }
.job-outcome-v12.state-succeeded { border-color: rgba(15,147,102,.18); background: var(--v2-green-soft); }
.job-outcome-icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; color: var(--v2-accent); background: var(--v2-accent-soft); font-weight: 760; }
.job-outcome-v12 > div:nth-child(2) span, .job-outcome-v12 > div:nth-child(2) strong, .job-outcome-v12 > div:nth-child(2) small { display: block; }
.job-outcome-v12 > div:nth-child(2) span { font-size: .68rem; font-weight: 680; }
.job-outcome-v12 > div:nth-child(2) strong { margin-top: 3px; font-size: .76rem; }
.job-outcome-v12 > div:nth-child(2) small { margin-top: 3px; color: var(--v2-ink-3); font-size: .65rem; }

/* Copilot */
.mia-copilot-drawer.v2-copilot { width: min(480px,100vw); border-left: 1px solid var(--v2-line); color: var(--v2-ink); background: var(--v2-surface-raised); box-shadow: var(--v2-shadow-lg); }
.copilot-panel-inner { min-height: 100%; display: flex; flex-direction: column; }
.copilot-head { padding: 18px; border-bottom: 1px solid var(--v2-line); }
.copilot-messages { flex: 1; padding: 16px; background: var(--v2-surface-subtle); }
.copilot-message { max-width: 92%; padding: 11px 12px; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.copilot-message.user { margin-left: auto; color: #fff; border-color: var(--v2-accent); background: var(--v2-accent); }

/* Landing and login */
.v2-public-header { width: min(1180px,calc(100% - 40px)); height: 72px; display: flex; align-items: center; justify-content: space-between; margin: 0 auto; }
.v2-brand.public .v2-brand-copy strong { color: var(--v2-ink); }
.v2-brand.public .v2-brand-copy small { color: var(--v2-ink-3); }
.v2-public-page { width: min(1180px,calc(100% - 40px)); margin: 0 auto; padding: 50px 0 80px; }
.public-hero-v11 { min-height: 620px; display: grid; grid-template-columns: minmax(0,1.05fr) minmax(420px,.95fr); gap: 44px; align-items: center; }
.public-hero-copy h1 { max-width: 800px; margin: 10px 0 16px; font-size: clamp(3rem,6vw,5.7rem); line-height: .96; letter-spacing: -.06em; }
.public-hero-copy p { max-width: 680px; font-size: 1.02rem; line-height: 1.7; }
.public-product-preview { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 22px; background: var(--v2-surface); box-shadow: 0 35px 100px rgba(15,23,42,.17); transform: perspective(1200px) rotateY(-4deg) rotateX(2deg); }
.login-stage { min-height: calc(100vh - 170px); display: grid; grid-template-columns: minmax(0,1fr) 430px; gap: 30px; align-items: center; }
.login-story { padding: 30px; }
.login-story h1 { max-width: 700px; font-size: clamp(2.7rem,5vw,4.8rem); line-height: .98; }
.login-card { padding: 26px; border: 1px solid var(--v2-line); border-radius: 18px; background: var(--v2-surface); box-shadow: var(--v2-shadow-md); }

/* Generic operations, NDA, workflows */
.operations-board, .operations-grid-v12 { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.operation-row-v12 { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 0; border-top: 1px solid var(--v2-line); text-decoration: none; }
.operation-row-v12:first-child { border-top: 0; }
.task-list-v12, .meeting-list-v12, .job-ledger-v12, .nda-list-v12 { display: grid; }
.task-list-v12 > div, .meeting-list-v12 > article, .job-ledger-v12 > a, .nda-list-v12 > a { min-height: 54px; display: flex; align-items: center; gap: 10px; padding: 8px 0; border-top: 1px solid var(--v2-line); text-decoration: none; }
.task-list-v12 > div:first-child, .meeting-list-v12 > article:first-child, .job-ledger-v12 > a:first-child, .nda-list-v12 > a:first-child { border-top: 0; }
.task-priority, .job-dot, .workflow-dot, .priority-dot { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: var(--v2-accent); }
.task-priority.priority-high, .task-priority.priority-critical { background: var(--v2-red); }
.activity-timeline-v12, .workflow-timeline { position: relative; display: grid; }
.activity-timeline-v12 article { display: grid; grid-template-columns: 62px 18px minmax(0,1fr); gap: 10px; min-height: 84px; }
.activity-timeline-v12 time { color: var(--v2-ink-3); font-size: .67rem; text-align: right; }
.activity-timeline-v12 time small { display: block; color: var(--v2-ink-4); }
.activity-node { position: relative; width: 9px; height: 9px; margin-top: 4px; border-radius: 50%; background: var(--v2-accent); box-shadow: 0 0 0 4px var(--v2-accent-soft); }
.activity-node::after { content: ""; position: absolute; top: 13px; bottom: -70px; left: 4px; width: 1px; background: var(--v2-line); }
.activity-timeline-v12 article:last-child .activity-node::after { display: none; }
.activity-timeline-v12 article > div:last-child { padding-bottom: 18px; }
.activity-timeline-v12 article strong { font-size: .73rem; }
.activity-timeline-v12 article em { margin-left: 7px; color: var(--v2-ink-4); font-size: .61rem; font-style: normal; }
.activity-timeline-v12 article p { margin: 4px 0 0; font-size: .68rem; }

/* Responsive */
@media (max-width: 1380px) {
  .v2-page-content { width: calc(100% - 40px); }
  .v2-deal-overview { grid-template-columns: minmax(0,1fr) 300px; }
  .dataroom-workspace { grid-template-columns: 220px minmax(0,1fr) 300px; }
  .v2-portfolio-head, .v2-portfolio-row { grid-template-columns: minmax(210px,1.25fr) 140px 140px 110px minmax(190px,1fr) 32px; gap: 12px; }
}
@media (max-width: 1180px) {
  .v2-brief-grid, .v2-dashboard-grid, .v2-deal-overview, .company-intel-layout, .composer-shell, .mailbox-setup-shell, .profile-editor-main, .import-review-grid { grid-template-columns: 1fr; }
  .v2-deal-rail, .composer-aside, .mailbox-help-card, .profile-editor-rail, .import-control-column { position: static; }
  .dataroom-workspace { grid-template-columns: 210px minmax(0,1fr); }
  .dataroom-upload { grid-column: 1 / -1; border-top: 1px solid var(--v2-line); border-left: 0; }
  .key-metric-ledger { grid-template-columns: repeat(3,1fr); }
  .key-metric-ledger > div:nth-child(3) { border-right: 0; }
  .key-metric-ledger > div:nth-child(n+4) { border-top: 1px solid var(--v2-line); }
  .matching-kpi-strip { grid-template-columns: repeat(3,1fr); }
  .matching-kpi-strip > div:nth-child(3) { border-right: 0; }
  .matching-kpi-strip > div:nth-child(n+4) { border-top: 1px solid var(--v2-line); }
  .campaign-message-table-head { display: none; }
  .campaign-message-row { grid-template-columns: 1fr 1fr; }
  .v2-portfolio-head { display: none; }
  .v2-portfolio-row { grid-template-columns: minmax(220px,1fr) 150px 140px 36px; }
  .v2-portfolio-row > :nth-child(4), .v2-portfolio-row > :nth-child(5) { display: none; }
  .capability-index { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 900px) {
  .v2-app-shell { display: block; }
  .v2-sidebar { transform: translateX(-105%); width: min(300px,86vw); box-shadow: var(--v2-shadow-lg); }
  .v2-main { grid-column: 1; }
  body.sidebar-open .v2-sidebar { transform: translateX(0); }
  .v2-sidebar-backdrop { position: fixed; inset: 0; z-index: 75; opacity: 0; visibility: hidden; background: rgba(8,10,14,.48); backdrop-filter: blur(3px); transition: .2s ease; }
  body.sidebar-open .v2-sidebar-backdrop { opacity: 1; visibility: visible; }
  .v2-sidebar-collapse { display: none; }
  .v2-sidebar-close { display: grid; }
  .v2-mobile-menu { display: grid; }
  .v2-topbar { padding: 0 18px; }
  .v2-page-content { width: calc(100% - 28px); padding-top: 22px; }
  .v2-search-trigger { min-width: 36px; width: 36px; justify-content: center; padding: 0; }
  .v2-search-trigger span, .v2-search-trigger kbd { display: none; }
  .v2-deal-context { margin-top: -22px; padding-inline: 14px; }
  .v2-deal-context-inner { min-height: 66px; }
  .v2-deal-breadcrumb > a, .v2-deal-breadcrumb > span { display: none; }
  .deal-tabs-v12 { top: calc(var(--v2-topbar-height) + 66px); }
  .two-col, .three-col, .analytics-grid, .operations-board, .operations-grid-v12, .dossier-split { grid-template-columns: 1fr !important; }
  .insight-hero-grid { grid-template-columns: 1fr 1fr; }
  .insight-hero-grid > :first-child { grid-column: 1 / -1; }
  .v2-settings-layout { grid-template-columns: 1fr; }
  .v2-settings-nav { position: static; display: flex; overflow-x: auto; }
  .v2-settings-nav a { white-space: nowrap; }
  .matching-command-v12 { grid-template-columns: 1fr; }
  .bulk-action-bar-v12 { grid-template-columns: 1fr 1fr; }
  .public-hero-v11, .login-stage { grid-template-columns: 1fr; }
  .public-product-preview { transform: none; }
}
@media (max-width: 680px) {
  .v2-topbar { padding: 0 12px; }
  .v2-topbar-icon { display: none; }
  .v2-primary-action span { display: none; }
  .v2-page-context span { display: none; }
  .v2-page-content { width: calc(100% - 20px); }
  .v2-page-hero, .v2-home-head, .deal-dossier-header, .campaign-hero-v13, .dataroom-hero-v13, .profile-editor-header, .workspace-section-header, .company-profile-hero, .workspace-mail-hero, .job-header-v12 { align-items: flex-start; flex-direction: column; display: flex; }
  .v2-page-hero-actions, .deal-header-actions, .company-profile-actions, .campaign-hero-actions { justify-content: flex-start; }
  .v2-brief-card { padding: 21px; }
  .v2-dashboard-grid { gap: 12px; }
  .v2-deal-row { grid-template-columns: minmax(0,1fr) 32px; min-height: 66px; }
  .v2-deal-row > :not(:first-child):not(:last-child) { display: none; }
  body.mia-v2 .stats-grid, body.mia-v2 .metric-strip { grid-template-columns: repeat(2,1fr); }
  body.mia-v2 .stats-grid .stat-card, body.mia-v2 .metric-strip article { border-bottom: 1px solid var(--v2-line); }
  .v2-portfolio-row { grid-template-columns: minmax(0,1fr) 32px; }
  .v2-portfolio-row > :not(:first-child):not(:last-child) { display: none; }
  body.mia-v2 .filter-bar, body.mia-v2 .portfolio-filters-v12, body.mia-v2 .match-filter-v12, body.mia-v2 .mapping-toolbar { grid-template-columns: 1fr; }
  .deal-dossier-identity { gap: 10px; }
  .deal-monogram { width: 45px; height: 45px; flex-basis: 45px; }
  .deal-dossier-header h1 { font-size: 2rem; }
  .key-metric-ledger { grid-template-columns: repeat(2,1fr); }
  .key-metric-ledger > div { border-bottom: 1px solid var(--v2-line); }
  .key-metric-ledger > div:nth-child(even) { border-right: 0; }
  .matching-kpi-strip { grid-template-columns: repeat(2,1fr); }
  .matching-kpi-strip > div:nth-child(even) { border-right: 0; }
  .profile-form-grid, .mailbox-form-grid { grid-template-columns: 1fr; }
  .profile-form-grid .span-2 { grid-column: auto; }
  .profile-editor-actions { flex-direction: column; }
  .profile-editor-actions .btn { width: 100%; }
  .campaign-pipeline { grid-template-columns: 1fr 1fr; }
  .campaign-pipeline a { border-bottom: 1px solid var(--v2-line); }
  .campaign-message-row { grid-template-columns: 1fr; }
  .dataroom-workspace { grid-template-columns: 1fr; }
  .dataroom-side { border-right: 0; border-bottom: 1px solid var(--v2-line); }
  .folder-nav { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .job-meta-v12 { grid-template-columns: repeat(2,1fr); }
  .job-outcome-v12 { grid-template-columns: 36px minmax(0,1fr); }
  .job-outcome-actions { grid-column: 1 / -1; }
  .insight-hero-grid, .capability-index { grid-template-columns: 1fr; }
  .insight-hero-grid > :first-child { grid-column: auto; }
  .v2-public-page { width: min(100% - 24px,1180px); }
  .public-hero-copy h1 { font-size: 3rem; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; transition-duration: .001ms !important; }
}

/* Deal dossier refinements */
body.mia-v2 .deal-status-ribbon { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 0; margin-bottom: 14px; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
body.mia-v2 .deal-status-ribbon > div { min-height: 67px; display: flex; flex-direction: column; justify-content: center; padding: 12px 14px; border-right: 1px solid var(--v2-line); }
body.mia-v2 .deal-status-ribbon > div:last-child { border-right: 0; }
body.mia-v2 .deal-status-ribbon span { color: var(--v2-ink-4); font-size: .57rem; font-weight: 680; text-transform: uppercase; letter-spacing: .08em; }
body.mia-v2 .deal-status-ribbon strong { margin-top: 4px; overflow: hidden; font-size: .72rem; text-overflow: ellipsis; white-space: nowrap; }
body.mia-v2 .live-work-v12 { display: grid; gap: 7px; margin-bottom: 14px; }
body.mia-v2 .live-work-v12 > a { display: grid; grid-template-columns: 24px minmax(0,1fr) minmax(180px,.7fr); align-items: center; gap: 10px; min-height: 52px; padding: 8px 12px; border: 1px solid rgba(49,94,251,.16); border-radius: 11px; color: var(--v2-ink); background: var(--v2-accent-softer); text-decoration: none; }
body.mia-v2 .live-work-spinner { width: 17px; height: 17px; border: 2px solid rgba(49,94,251,.18); border-top-color: var(--v2-accent); border-radius: 50%; animation: v2-spin .75s linear infinite; }
body.mia-v2 .live-work-v12 strong, body.mia-v2 .live-work-v12 small { display: block; }
body.mia-v2 .live-work-v12 small { color: var(--v2-ink-4); font-size: .62rem; }
body.mia-v2 .live-work-progress { display: grid; grid-template-columns: minmax(0,1fr) 38px; align-items: center; gap: 8px; }
body.mia-v2 .live-work-progress > span { height: 5px; overflow: hidden; border-radius: 99px; background: var(--v2-surface-muted); }
body.mia-v2 .live-work-progress i { display: block; height: 100%; border-radius: inherit; background: var(--v2-accent); }
body.mia-v2 .live-work-progress em { color: var(--v2-accent); font-size: .63rem; font-style: normal; font-weight: 700; }
@keyframes v2-spin { to { transform: rotate(360deg); } }
body.mia-v2 .profile-review-banner { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 16px; margin-bottom: 16px; border: 1px solid rgba(117,89,232,.2); border-radius: 14px; background: linear-gradient(135deg,rgba(117,89,232,.08),var(--v2-surface)); }
body.mia-v2 .profile-review-icon { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 11px; background: rgba(117,89,232,.11); }
body.mia-v2 .profile-review-icon img { width: 21px; height: 21px; }
body.mia-v2 .profile-review-banner h2 { margin: 2px 0 4px; font-size: .96rem; }
body.mia-v2 .profile-review-banner p { margin: 0; font-size: .69rem; }
body.mia-v2 .profile-review-actions { display: flex; gap: 7px; flex-wrap: wrap; justify-content: flex-end; }
body.mia-v2 .dossier-summary { max-width: none; }
body.mia-v2 .executive-copy { margin: 0; color: var(--v2-ink-2); font-size: .88rem; line-height: 1.72; }
body.mia-v2 .empty-field-link { display: flex; align-items: center; justify-content: space-between; padding: 13px; border: 1px dashed var(--v2-line-strong); border-radius: 10px; color: var(--v2-accent); background: var(--v2-accent-softer); text-decoration: none; font-size: .72rem; }
body.mia-v2 .deal-fact-row { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; margin-top: 18px; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 11px; }
body.mia-v2 .deal-fact-row > div { min-height: 83px; padding: 13px; border-right: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
body.mia-v2 .deal-fact-row > div:last-child { border-right: 0; }
body.mia-v2 .deal-fact-row span, body.mia-v2 .deal-fact-row strong, body.mia-v2 .deal-fact-row small { display: block; }
body.mia-v2 .deal-fact-row > div > span { color: var(--v2-ink-4); font-size: .58rem; text-transform: uppercase; letter-spacing: .08em; }
body.mia-v2 .deal-fact-row strong { margin-top: 6px; font-size: .88rem; }
body.mia-v2 .deal-fact-row small { margin-top: 2px; color: var(--v2-ink-4); font-size: .61rem; }
body.mia-v2 .financial-snapshot { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 11px; }
body.mia-v2 .financial-snapshot article { min-height: 92px; padding: 14px; border-right: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
body.mia-v2 .financial-snapshot article:last-child { border-right: 0; }
body.mia-v2 .financial-snapshot span, body.mia-v2 .financial-snapshot strong, body.mia-v2 .financial-snapshot small { display: block; }
body.mia-v2 .financial-snapshot > article > span { color: var(--v2-ink-4); font-size: .58rem; text-transform: uppercase; letter-spacing: .08em; }
body.mia-v2 .financial-snapshot strong { margin-top: 7px; font-size: 1.2rem; letter-spacing: -.03em; }
body.mia-v2 .financial-snapshot small { color: var(--v2-ink-4); font-size: .61rem; }
body.mia-v2 .narrative-grid article { padding: 13px 0; border-top: 1px solid var(--v2-line); }
body.mia-v2 .narrative-grid article:first-child { padding-top: 0; border-top: 0; }
body.mia-v2 .buyer-thesis-panel { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(280px,.8fr); gap: 18px; }
body.mia-v2 .buyer-persona-copy { padding: 15px; border: 1px solid var(--v2-line); border-radius: 11px; background: var(--v2-surface-subtle); }
body.mia-v2 .buyer-persona-copy p { margin: 0; color: var(--v2-ink-2); font-size: .76rem; line-height: 1.6; }
body.mia-v2 .buyer-thesis-tags { display: grid; gap: 10px; }
body.mia-v2 .buyer-thesis-tags > div > span { display: block; margin-bottom: 5px; color: var(--v2-ink-4); font-size: .58rem; font-weight: 680; text-transform: uppercase; letter-spacing: .08em; }
body.mia-v2 .buyer-thesis-tags > div > div { display: flex; flex-wrap: wrap; gap: 5px; }
body.mia-v2 .buyer-thesis-tags em { padding: 4px 7px; border: 1px solid var(--v2-line); border-radius: 999px; color: var(--v2-ink-3); background: var(--v2-surface-subtle); font-size: .62rem; font-style: normal; }
body.mia-v2 .buyer-thesis-tags em.restricted { color: var(--v2-red); border-color: rgba(201,65,65,.18); background: var(--v2-red-soft); }
body.mia-v2 .case-list ol { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
body.mia-v2 .case-list li { display: grid; grid-template-columns: 24px minmax(0,1fr); gap: 9px; align-items: start; }
body.mia-v2 .case-list li > span { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 7px; color: var(--v2-green); background: var(--v2-green-soft); font-size: .6rem; font-weight: 720; }
body.mia-v2 .case-list.risk li > span { color: var(--v2-red); background: var(--v2-red-soft); }
body.mia-v2 .case-list li p { margin: 2px 0 0; color: var(--v2-ink-2); font-size: .72rem; }
body.mia-v2 .control-card { padding: 15px; }
body.mia-v2 .control-card-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
body.mia-v2 .control-card-head > span { color: var(--v2-ink-3); font-size: .7rem; font-weight: 650; }
body.mia-v2 .completion-ring { --pct: var(--completion); }
body.mia-v2 .completion-ring span { z-index: 1; grid-area: 1/1; font-size: .88rem; font-weight: 720; }
body.mia-v2 .completion-ring small { z-index: 1; grid-area: 1/1; margin-top: 25px; color: var(--v2-ink-4); font-size: .52rem; }
body.mia-v2 .control-list { display: grid; gap: 6px; margin: 12px 0; }
body.mia-v2 .control-list > span { color: var(--v2-ink-4); font-size: .58rem; text-transform: uppercase; letter-spacing: .08em; }
body.mia-v2 .control-list small { color: var(--v2-red); font-size: .65rem; }
body.mia-v2 .readiness-bar { height: 6px; overflow: hidden; border-radius: 99px; background: var(--v2-surface-muted); }
body.mia-v2 .readiness-bar i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--v2-accent),var(--v2-violet)); }
body.mia-v2 .ready-copy { display: flex; align-items: center; gap: 7px; color: var(--v2-green); font-size: .68rem; }
body.mia-v2 .source-legend { display: grid; gap: 7px; }
body.mia-v2 .source-legend > span { display: flex; align-items: center; gap: 7px; color: var(--v2-ink-3); font-size: .65rem; }
body.mia-v2 .source-legend i { width: 8px; height: 8px; border-radius: 50%; background: var(--v2-line-strong); }
body.mia-v2 .source-legend i.ai { background: var(--v2-violet); box-shadow: 0 0 0 3px rgba(117,89,232,.1); }
body.mia-v2 .source-legend i.human { background: var(--v2-green); box-shadow: 0 0 0 3px var(--v2-green-soft); }
body.mia-v2 .compact-links-card { padding: 6px; }
body.mia-v2 .compact-links-card a { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 38px; padding: 0 8px; border-radius: 8px; text-decoration: none; }
body.mia-v2 .compact-links-card a:hover { background: var(--v2-surface-muted); }
body.mia-v2 .compact-links-card span { font-size: .68rem; font-weight: 620; }
body.mia-v2 .compact-links-card em { color: var(--v2-ink-4); font-size: .61rem; font-style: normal; }
@media(max-width:1180px){body.mia-v2 .buyer-thesis-panel{grid-template-columns:1fr}}
@media(max-width:680px){body.mia-v2 .deal-status-ribbon{grid-template-columns:repeat(2,1fr)}body.mia-v2 .deal-status-ribbon>div:nth-child(even){border-right:0}body.mia-v2 .deal-fact-row,body.mia-v2 .financial-snapshot{grid-template-columns:repeat(2,1fr)}body.mia-v2 .deal-fact-row>div:nth-child(even),body.mia-v2 .financial-snapshot article:nth-child(even){border-right:0}body.mia-v2 .deal-fact-row>div,body.mia-v2 .financial-snapshot article{border-bottom:1px solid var(--v2-line)}body.mia-v2 .profile-review-banner{grid-template-columns:38px minmax(0,1fr)}body.mia-v2 .profile-review-actions{grid-column:1/-1;justify-content:flex-start}}

/* ========================================================================== 
   MIA 2.0 · Cohesive product surfaces
   ========================================================================== */

/* Marketing */
.v2-marketing-hero { min-height: 690px; display: grid; grid-template-columns: minmax(0,.92fr) minmax(540px,1.08fr); gap: clamp(38px,6vw,86px); align-items: center; padding: 34px 0 72px; }
.v2-marketing-copy { max-width: 660px; }
.v2-marketing-kicker { display: inline-flex; align-items: center; gap: 9px; color: var(--v2-ink-3); font-size: .68rem; font-weight: 760; letter-spacing: .115em; text-transform: uppercase; }
.v2-marketing-kicker i { width: 7px; height: 7px; border-radius: 50%; background: var(--v2-accent); box-shadow: 0 0 0 5px var(--v2-accent-soft); }
.v2-marketing-copy h1 { margin: 22px 0 20px; font-size: clamp(3.55rem,6.4vw,6.5rem); line-height: .93; letter-spacing: -.072em; }
.v2-marketing-copy h1 em { color: var(--v2-ink-3); font-style: normal; font-weight: 570; }
.v2-marketing-copy > p { max-width: 620px; margin: 0; color: var(--v2-ink-3); font-size: 1.05rem; line-height: 1.75; }
.v2-marketing-actions { display: flex; align-items: center; gap: 20px; margin-top: 30px; }
.v2-marketing-actions > span { max-width: 260px; color: var(--v2-ink-4); font-size: .69rem; line-height: 1.55; }
.v2-marketing-primary { min-height: 48px; display: inline-flex; align-items: center; gap: 22px; padding: 0 18px; border-radius: 12px; color: #fff !important; background: #111318; box-shadow: 0 12px 32px rgba(15,23,42,.18); text-decoration: none; font-size: .8rem; font-weight: 700; transition: transform .18s var(--v2-ease), box-shadow .18s var(--v2-ease); }
.v2-marketing-primary:hover { transform: translateY(-2px); box-shadow: 0 18px 42px rgba(15,23,42,.24); }
.v2-marketing-proof { display: grid; grid-template-columns: repeat(3,1fr); gap: 0; margin-top: 44px; border-top: 1px solid var(--v2-line); }
.v2-marketing-proof > div { padding: 17px 16px 0 0; }
.v2-marketing-proof strong, .v2-marketing-proof small { display: block; }
.v2-marketing-proof strong { font-size: .72rem; }
.v2-marketing-proof small { margin-top: 5px; color: var(--v2-ink-4); font-size: .62rem; line-height: 1.5; }
.v2-product-frame { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 24px; background: var(--v2-surface); box-shadow: 0 38px 120px rgba(15,23,42,.19); transform: perspective(1600px) rotateY(-3deg) rotateX(1.5deg); transform-origin: center right; }
.v2-product-windowbar { height: 37px; display: flex; align-items: center; gap: 6px; padding: 0 13px; border-bottom: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.v2-product-windowbar > span { width: 7px; height: 7px; border-radius: 50%; background: var(--v2-line-strong); }
.v2-product-windowbar em { margin-left: 8px; color: var(--v2-ink-4); font-size: .55rem; font-style: normal; }
.v2-product-shell { min-height: 540px; display: grid; grid-template-columns: 126px minmax(0,1fr); }
.v2-product-shell > aside { display: flex; flex-direction: column; gap: 3px; padding: 15px 10px; color: #7f8794; background: #0f1115; }
.v2-preview-brand { display: flex; align-items: center; gap: 8px; margin: 0 5px 20px; color: #f4f5f7; font-size: .68rem; letter-spacing: .12em; }
.v2-preview-brand img { width: 24px; height: 24px; border-radius: 7px; background: #fff; }
.v2-product-shell > aside > span { min-height: 31px; display: flex; align-items: center; justify-content: space-between; padding: 0 8px; border-radius: 7px; font-size: .55rem; }
.v2-product-shell > aside > span.active { color: #fff; background: rgba(255,255,255,.08); }
.v2-product-shell > aside b { min-width: 18px; padding: 1px 4px; border-radius: 99px; color: #aebfff; background: rgba(82,108,213,.18); font-size: .48rem; text-align: center; }
.v2-product-shell > main { min-width: 0; padding: 18px; background: #f5f6f8; }
.v2-preview-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.v2-preview-head small, .v2-preview-head strong { display: block; }
.v2-preview-head small { color: #7b818c; font-size: .49rem; letter-spacing: .11em; }
.v2-preview-head strong { margin-top: 3px; color: #202329; font-size: .72rem; }
.v2-preview-head button, .v2-preview-action button { min-height: 28px; padding: 0 9px; border: 0; border-radius: 7px; color: #fff; background: #17191d; font-size: .52rem; }
.v2-preview-journey { display: grid; grid-template-columns: repeat(5,1fr); margin: 17px 0 14px; overflow: hidden; border: 1px solid #e0e3e8; border-radius: 8px; background: #fff; }
.v2-preview-journey span { position: relative; padding: 9px 5px; color: #a0a5ae; border-left: 1px solid #e5e7eb; font-size: .48rem; text-align: center; }
.v2-preview-journey span:first-child { border-left: 0; }
.v2-preview-journey span.done { color: #16805d; background: #f3fbf7; }
.v2-preview-journey span.active { color: #315efb; background: #eef2ff; font-weight: 700; }
.v2-preview-grid { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(170px,.65fr); gap: 10px; }
.v2-preview-grid > section { padding: 14px; border: 1px solid #e0e3e8; border-radius: 10px; background: #fff; }
.v2-preview-grid small { color: #969ca6; font-size: .47rem; letter-spacing: .1em; }
.v2-preview-grid h3 { margin: 7px 0 14px; color: #23262b; font-size: .72rem; line-height: 1.45; }
.v2-preview-metrics { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid #eceef1; }
.v2-preview-metrics span { padding: 9px 7px 0 0; }
.v2-preview-metrics strong { display: block; margin-top: 2px; color: #1d2025; font-size: .72rem; }
.v2-preview-action { color: #fff; background: linear-gradient(145deg,#161a22,#252a36) !important; }
.v2-preview-action small { color: #8e99aa; }
.v2-preview-action strong { display: block; margin: 8px 0 5px; font-size: .75rem; }
.v2-preview-action p { margin: 0 0 14px; color: #aeb5c0; font-size: .51rem; line-height: 1.5; }
.v2-preview-action button { color: #1c2027; background: #fff; }
.v2-preview-table { margin-top: 10px; overflow: hidden; border: 1px solid #e0e3e8; border-radius: 10px; background: #fff; }
.v2-preview-table header, .v2-preview-table > div { display: grid; grid-template-columns: 1fr 1.5fr 36px; align-items: center; gap: 8px; min-height: 37px; padding: 0 11px; border-top: 1px solid #edf0f2; font-size: .49rem; }
.v2-preview-table header { min-height: 28px; color: #9a9fa7; border-top: 0; background: #fafbfc; text-transform: uppercase; letter-spacing: .07em; }
.v2-preview-table > div strong { color: #282b31; }
.v2-preview-table > div span { color: #747b86; }
.v2-preview-table > div b { color: #315efb; text-align: right; }
.v2-marketing-principles { display: grid; grid-template-columns: repeat(3,1fr); gap: 0; padding: 30px 0 70px; border-top: 1px solid var(--v2-line); }
.v2-marketing-principles article { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 14px; padding-right: 40px; }
.v2-marketing-principles article > span { color: var(--v2-accent); font-size: .61rem; font-weight: 760; }
.v2-marketing-principles strong { font-size: .83rem; }
.v2-marketing-principles p { margin: 7px 0 0; color: var(--v2-ink-3); font-size: .69rem; line-height: 1.65; }
.v2-marketing-statement { padding: 80px 7vw; border-radius: 28px; color: #fff; background: linear-gradient(145deg,#11141a,#242936); text-align: center; }
.v2-marketing-statement > span { color: #8d96a6; font-size: .65rem; text-transform: uppercase; letter-spacing: .14em; }
.v2-marketing-statement h2 { max-width: 840px; margin: 18px auto 32px; color: #fff; font-size: clamp(2.5rem,5vw,5rem); line-height: .98; letter-spacing: -.055em; }
.v2-marketing-statement div { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; }
.v2-marketing-statement em { padding: 7px 11px; border: 1px solid rgba(255,255,255,.12); border-radius: 99px; color: #bcc3ce; background: rgba(255,255,255,.04); font-size: .62rem; font-style: normal; }

/* Login */
.v2-login-stage { min-height: calc(100vh - 170px); display: grid; grid-template-columns: minmax(0,1fr) 430px; gap: clamp(30px,8vw,120px); align-items: center; padding: 40px 0 70px; }
.v2-login-story h1 { margin: 22px 0 18px; font-size: clamp(3.2rem,6vw,6rem); line-height: .94; letter-spacing: -.068em; }
.v2-login-story h1 em { color: var(--v2-ink-3); font-style: normal; font-weight: 560; }
.v2-login-story > p { max-width: 640px; color: var(--v2-ink-3); font-size: .98rem; line-height: 1.75; }
.v2-login-assurance { max-width: 620px; display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; margin-top: 38px; }
.v2-login-assurance > span { display: flex; align-items: flex-start; gap: 9px; padding-top: 14px; border-top: 1px solid var(--v2-line); }
.v2-login-assurance .mia-icon { width: 15px; height: 15px; margin-top: 2px; color: var(--v2-accent); }
.v2-login-assurance strong, .v2-login-assurance small { display: block; }
.v2-login-assurance strong { font-size: .67rem; }
.v2-login-assurance small { margin-top: 4px; color: var(--v2-ink-4); font-size: .59rem; line-height: 1.45; }
.v2-login-card { padding: 28px; border: 1px solid var(--v2-line); border-radius: 20px; background: color-mix(in srgb,var(--v2-surface) 94%,transparent); box-shadow: var(--v2-shadow-lg); }
.v2-login-card-head { display: flex; align-items: flex-start; gap: 13px; margin-bottom: 25px; }
.v2-login-logo { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid var(--v2-line); border-radius: 12px; background: #fff; box-shadow: var(--v2-shadow-xs); }
.v2-login-logo img { width: 34px; height: 34px; }
.v2-login-card-head small { color: var(--v2-ink-4); font-size: .58rem; letter-spacing: .11em; }
.v2-login-card-head h2 { margin: 3px 0 2px; font-size: 1.3rem; }
.v2-login-card-head p { margin: 0; color: var(--v2-ink-3); font-size: .69rem; }
.v2-login-fields { display: grid; gap: 14px; }
.v2-login-submit { width: 100%; min-height: 45px; display: flex; align-items: center; justify-content: space-between; margin-top: 19px; padding: 0 15px; border: 0; border-radius: 11px; color: #fff; background: #15171b; box-shadow: 0 9px 24px rgba(15,23,42,.14); cursor: pointer; font-size: .76rem; font-weight: 700; }
.v2-login-submit:hover { background: #000; }
.v2-login-footnote { display: block; margin-top: 14px; color: var(--v2-ink-4); font-size: .59rem; text-align: center; }

/* Reusable page and record surfaces */
.v2-page-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin: 0 0 24px; }
.v2-page-hero > div:first-child { max-width: 830px; }
.v2-page-kicker { display: block; margin-bottom: 8px; color: var(--v2-accent); font-size: .62rem; font-weight: 770; letter-spacing: .12em; text-transform: uppercase; }
.v2-page-hero h1 { max-width: 880px; margin: 0 0 8px; font-size: clamp(2.2rem,4vw,3.5rem); line-height: 1.02; letter-spacing: -.055em; }
.v2-page-hero p { max-width: 760px; margin: 0; color: var(--v2-ink-3); font-size: .78rem; line-height: 1.65; }
.v2-page-hero-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
body.mia-v2 .btn .mia-icon { width: 15px; height: 15px; }
.v2-form-page-head { max-width: 1120px; margin: 0 auto 24px; }
.v2-form-page-head > a { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 24px; color: var(--v2-ink-3); text-decoration: none; font-size: .67rem; }
.v2-form-page-head > a:hover { color: var(--v2-ink); }
.v2-form-page-head h1 { margin: 0 0 8px; font-size: clamp(2rem,4vw,3.3rem); letter-spacing: -.052em; }
.v2-form-page-head p { max-width: 720px; margin: 0; color: var(--v2-ink-3); }
.v2-form-alert { padding: 12px 14px; border: 1px solid var(--v2-line); border-radius: 10px; font-size: .68rem; }
.v2-form-alert.error { color: var(--v2-red); border-color: rgba(201,65,65,.2); background: var(--v2-red-soft); }
.v2-field { min-width: 0; }
.v2-field label { display: block; margin-bottom: 6px; color: var(--v2-ink-2); font-size: .65rem; font-weight: 680; }
.v2-field > small { display: block; margin-top: 5px; color: var(--v2-ink-4); font-size: .58rem; line-height: 1.45; }
.v2-field.has-error input, .v2-field.has-error select, .v2-field.has-error textarea { border-color: rgba(201,65,65,.5) !important; }
.v2-field-error { color: var(--v2-red) !important; }
.v2-record-editor { max-width: 1120px; margin: 0 auto; border: 1px solid var(--v2-line); border-radius: 17px; background: var(--v2-surface); box-shadow: var(--v2-shadow-sm); overflow: hidden; }
.v2-record-editor-compact { max-width: 980px; }
.v2-editor-section { display: grid; grid-template-columns: 230px minmax(0,1fr); gap: 32px; padding: 26px; border-top: 1px solid var(--v2-line); }
.v2-editor-section:first-of-type { border-top: 0; }
.v2-editor-section-copy { display: flex; align-items: flex-start; gap: 11px; }
.v2-editor-section-copy > span { width: 26px; height: 26px; display: grid; place-items: center; flex: 0 0 26px; border-radius: 8px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .57rem; font-weight: 750; }
.v2-editor-section-copy h2 { margin: 1px 0 4px; font-size: .88rem; }
.v2-editor-section-copy p { margin: 0; color: var(--v2-ink-4); font-size: .61rem; line-height: 1.5; }
.v2-editor-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.v2-editor-fields.one-column { grid-template-columns: 1fr; }
.v2-editor-fields .span-2 { grid-column: 1 / -1; }
.v2-editor-actions { min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 13px 20px 13px 26px; border-top: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.v2-editor-actions > div { display: flex; align-items: center; gap: 8px; }
.v2-editor-actions > div:first-child { display: block; }
.v2-editor-actions strong, .v2-editor-actions small { display: block; }
.v2-editor-actions strong { font-size: .68rem; }
.v2-editor-actions small { margin-top: 2px; color: var(--v2-ink-4); font-size: .58rem; }

/* Network */
.v2-network-pulse { display: grid; grid-template-columns: repeat(4,1fr); gap: 0; margin-bottom: 18px; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 13px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-network-pulse article { padding: 15px 17px; border-left: 1px solid var(--v2-line); }
.v2-network-pulse article:first-child { border-left: 0; }
.v2-network-pulse span, .v2-network-pulse strong, .v2-network-pulse small { display: block; }
.v2-network-pulse span { color: var(--v2-ink-4); font-size: .58rem; font-weight: 680; text-transform: uppercase; letter-spacing: .08em; }
.v2-network-pulse strong { margin-top: 4px; font-size: 1.45rem; letter-spacing: -.045em; }
.v2-network-pulse small { color: var(--v2-ink-4); font-size: .58rem; }
.v2-directory-panel { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 15px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-directory-toolbar { min-height: 58px; display: flex; align-items: center; gap: 8px; padding: 10px 12px; border-bottom: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.v2-directory-toolbar select, .v2-directory-toolbar > input { width: 170px; min-height: 36px; }
.v2-directory-search { flex: 1; min-width: 220px; display: flex; align-items: center; gap: 7px; height: 36px; padding: 0 10px; border: 1px solid var(--v2-line); border-radius: 9px; background: var(--v2-surface); }
.v2-directory-search .mia-icon { width: 15px; height: 15px; color: var(--v2-ink-4); }
.v2-directory-search input { min-height: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
.v2-directory-count { margin-left: auto; color: var(--v2-ink-4); font-size: .62rem; white-space: nowrap; }
.v2-clear-filter { color: var(--v2-ink-3); text-decoration: none; font-size: .62rem; }
.v2-clear-filter:hover { color: var(--v2-ink); }
.v2-table-wrap { width: 100%; overflow-x: auto; }
.v2-data-table { width: 100%; border-collapse: collapse; }
.v2-data-table th { height: 38px; padding: 0 14px; color: var(--v2-ink-4); background: var(--v2-surface-subtle); border-bottom: 1px solid var(--v2-line); font-size: .57rem; font-weight: 720; letter-spacing: .075em; text-align: left; text-transform: uppercase; white-space: nowrap; }
.v2-data-table td { height: 60px; padding: 9px 14px; border-bottom: 1px solid var(--v2-line); color: var(--v2-ink-2); font-size: .68rem; vertical-align: middle; }
.v2-data-table tbody tr:last-child td { border-bottom: 0; }
.v2-data-table tbody tr:hover td { background: color-mix(in srgb,var(--v2-accent-soft) 32%,var(--v2-surface)); }
.v2-data-table td > strong, .v2-data-table td > small, .v2-data-table td > span { display: block; }
.v2-entity-cell { min-width: 0; display: flex !important; align-items: center; gap: 10px; color: inherit; text-decoration: none; }
.v2-entity-cell > div { min-width: 0; }
.v2-entity-cell strong, .v2-entity-cell small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v2-entity-cell strong { color: var(--v2-ink); font-size: .7rem; }
.v2-entity-cell small { margin-top: 2px; color: var(--v2-ink-4); font-size: .57rem; }
.v2-entity-avatar, .v2-contact-avatar, .v2-file-avatar { width: 32px; height: 32px; display: grid; place-items: center; flex: 0 0 32px; border-radius: 9px; color: var(--v2-accent-2); background: var(--v2-accent-soft); font-size: .65rem; font-weight: 750; }
.v2-contact-avatar { color: var(--v2-violet); background: color-mix(in srgb,var(--v2-accent-soft) 55%,#f6edff); }
.v2-file-avatar .mia-icon { width: 15px; height: 15px; }
.v2-table-primary, .v2-table-secondary { display: block; }
.v2-table-primary { color: var(--v2-ink-2); font-size: .67rem; }
.v2-table-secondary { margin-top: 2px; color: var(--v2-ink-4); font-size: .57rem; }
.v2-type-badge, .v2-state-badge, .v2-source-chip, .v2-ai-chip { display: inline-flex !important; align-items: center; gap: 5px; width: fit-content; padding: 4px 7px; border: 1px solid var(--v2-line); border-radius: 99px; color: var(--v2-ink-3); background: var(--v2-surface-subtle); font-size: .57rem; font-weight: 680; white-space: nowrap; }
.v2-state-badge i, .v2-status-dot { width: 7px; height: 7px; display: inline-block; flex: 0 0 7px; border-radius: 50%; background: var(--v2-ink-4); }
.v2-status-dot.ready, .v2-state-badge.status-completed i, .v2-state-badge.status-succeeded i { background: var(--v2-green); }
.v2-status-dot.warning, .v2-state-badge.status-completed_with_warnings i, .v2-state-badge.status-awaiting_review i { background: var(--v2-amber); }
.v2-state-badge.status-running i, .v2-state-badge.status-analyzing i, .v2-state-badge.status-queued i { background: var(--v2-accent); box-shadow: 0 0 0 3px var(--v2-accent-soft); }
.v2-state-badge.status-failed i { background: var(--v2-red); }
.v2-ai-chip { color: var(--v2-accent-2); border-color: color-mix(in srgb,var(--v2-accent) 18%,var(--v2-line)); background: var(--v2-accent-soft); }
.v2-ai-chip.inverse { color: #d8e1ff; border-color: rgba(143,165,255,.2); background: rgba(94,120,220,.16); }
.v2-ai-chip .mia-icon { width: 13px; height: 13px; }
.v2-relationship-meter { display: flex; gap: 3px; }
.v2-relationship-meter i { width: 13px; height: 4px; border-radius: 99px; background: var(--v2-line); }
.v2-relationship-meter i.filled { background: var(--v2-accent); }
.v2-row-action { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.v2-row-action a, .v2-chevron-link { width: 28px; height: 28px; display: inline-grid; place-items: center; border-radius: 8px; color: var(--v2-ink-4); text-decoration: none; }
.v2-row-action a:hover, .v2-chevron-link:hover { color: var(--v2-ink); background: var(--v2-surface-muted); }
.v2-row-action .mia-icon, .v2-chevron-link .mia-icon { width: 14px; height: 14px; }
.v2-pagination { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 15px 2px 0; color: var(--v2-ink-4); font-size: .61rem; }
.v2-pagination > div { display: flex; align-items: center; gap: 10px; }
.v2-pagination a { display: inline-flex; align-items: center; gap: 5px; color: var(--v2-ink-2); text-decoration: none; }
.v2-pagination em { font-style: normal; }
.v2-empty-actions { display: flex; justify-content: center; gap: 8px; margin-top: 14px; }

.v2-company-workspace { display: grid; gap: 16px; }
.v2-company-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; }
.v2-company-identity { min-width: 0; }
.v2-back-link { display: inline-flex; align-items: center; gap: 5px; margin-bottom: 17px; color: var(--v2-ink-4); text-decoration: none; font-size: .62rem; }
.v2-back-link:hover { color: var(--v2-ink); }
.v2-back-link .mia-icon { width: 14px; height: 14px; }
.v2-company-title { display: flex; align-items: center; gap: 15px; }
.v2-company-avatar { width: 58px; height: 58px; display: grid; place-items: center; flex: 0 0 58px; border-radius: 16px; color: var(--v2-accent-2); background: linear-gradient(145deg,var(--v2-accent-soft),#f8f4ff); font-size: 1.2rem; font-weight: 780; box-shadow: inset 0 0 0 1px rgba(49,94,251,.08); }
.v2-company-title h1 { margin: 2px 0 3px; font-size: clamp(2rem,4vw,3.15rem); letter-spacing: -.052em; }
.v2-company-title p { margin: 0; color: var(--v2-ink-3); font-size: .72rem; }
.v2-company-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.v2-company-pulse { display: grid; grid-template-columns: repeat(4,1fr); overflow: hidden; border: 1px solid var(--v2-line); border-radius: 13px; background: var(--v2-surface); }
.v2-company-pulse article { min-height: 86px; padding: 15px 17px; border-left: 1px solid var(--v2-line); }
.v2-company-pulse article:first-child { border-left: 0; }
.v2-company-pulse span, .v2-company-pulse strong, .v2-company-pulse small { display: block; }
.v2-company-pulse span { color: var(--v2-ink-4); font-size: .57rem; font-weight: 690; letter-spacing: .08em; text-transform: uppercase; }
.v2-company-pulse strong { margin: 6px 0 3px; font-size: .78rem; }
.v2-company-pulse small { color: var(--v2-ink-4); font-size: .57rem; }
.v2-company-layout { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 16px; align-items: start; }
.v2-company-layout > main { display: grid; gap: 16px; }
.v2-dossier-panel, .v2-rail-card, .v2-ledger-panel, .v2-chart-panel { border: 1px solid var(--v2-line); border-radius: 14px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-dossier-panel { padding: 20px; }
.v2-section-head, .v2-ledger-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 16px; }
.v2-section-head span, .v2-ledger-head span { display: block; color: var(--v2-ink-4); font-size: .57rem; font-weight: 730; letter-spacing: .09em; text-transform: uppercase; }
.v2-section-head h2, .v2-ledger-head h2 { margin: 3px 0 0; font-size: .91rem; }
.v2-section-head > a, .v2-ledger-head > a { display: inline-flex; align-items: center; gap: 5px; color: var(--v2-accent); text-decoration: none; font-size: .62rem; }
.v2-section-head > a .mia-icon, .v2-ledger-head > a .mia-icon { width: 13px; height: 13px; }
.v2-company-facts { display: grid; grid-template-columns: repeat(4,1fr); gap: 0; margin-bottom: 19px; border: 1px solid var(--v2-line); border-radius: 10px; overflow: hidden; }
.v2-company-facts > div { padding: 12px; border-left: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.v2-company-facts > div:first-child { border-left: 0; }
.v2-company-facts span, .v2-company-facts strong { display: block; }
.v2-company-facts span { color: var(--v2-ink-4); font-size: .56rem; }
.v2-company-facts strong { margin-top: 4px; overflow: hidden; font-size: .65rem; text-overflow: ellipsis; white-space: nowrap; }
.v2-narrative > span, .v2-thesis-grid article > span { display: block; margin-bottom: 7px; color: var(--v2-ink-4); font-size: .57rem; font-weight: 690; text-transform: uppercase; letter-spacing: .08em; }
.v2-narrative p, .v2-thesis-grid p { margin: 0; color: var(--v2-ink-2); font-size: .7rem; line-height: 1.72; }
.v2-tag-list { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 16px; }
.v2-tag-list span { padding: 4px 7px; border-radius: 7px; color: var(--v2-ink-3); background: var(--v2-surface-muted); font-size: .57rem; }
.v2-thesis-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.v2-thesis-grid article { min-width: 0; padding: 14px; border: 1px solid var(--v2-line); border-radius: 10px; background: var(--v2-surface-subtle); }
.v2-company-rail { position: sticky; top: calc(var(--v2-topbar-height) + 16px); display: grid; gap: 12px; }
.v2-rail-card { padding: 16px; }
.v2-rail-card > span { display: block; color: var(--v2-ink-4); font-size: .57rem; letter-spacing: .09em; text-transform: uppercase; }
.v2-rail-card > strong { display: block; margin: 7px 0 4px; font-size: 1rem; }
.v2-rail-card > p { margin: 0; color: var(--v2-ink-3); font-size: .63rem; line-height: 1.55; }
.v2-readiness-card ul { display: grid; gap: 8px; padding: 13px 0 0; margin: 13px 0 0; border-top: 1px solid var(--v2-line); list-style: none; }
.v2-readiness-card li { position: relative; padding-left: 18px; color: var(--v2-ink-4); font-size: .61rem; }
.v2-readiness-card li::before { content: ""; position: absolute; left: 0; top: 5px; width: 9px; height: 9px; border: 1px solid var(--v2-line-strong); border-radius: 50%; }
.v2-readiness-card li.done { color: var(--v2-ink-2); }
.v2-readiness-card li.done::before { border-color: var(--v2-green); background: var(--v2-green); box-shadow: inset 0 0 0 2px var(--v2-surface); }
.v2-rail-head { display: flex; justify-content: space-between; gap: 10px; }
.v2-rail-head strong { font-size: .65rem; }
.v2-evidence-mini-list { display: grid; margin-top: 10px; }
.v2-evidence-mini-list article { min-height: 49px; display: flex; align-items: center; gap: 8px; padding: 8px 0; border-top: 1px solid var(--v2-line); }
.v2-evidence-mini-list article:first-child { border-top: 0; }
.v2-evidence-mini-list article > div { min-width: 0; flex: 1; }
.v2-evidence-mini-list strong, .v2-evidence-mini-list small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v2-evidence-mini-list strong { font-size: .62rem; }
.v2-evidence-mini-list small { color: var(--v2-ink-4); font-size: .54rem; }
.v2-evidence-mini-list a { color: var(--v2-ink-4); }
.v2-evidence-mini-list .mia-icon { width: 13px; height: 13px; }
.v2-mini-empty { display: flex; align-items: center; gap: 9px; padding: 14px 0; color: var(--v2-ink-4); }
.v2-mini-empty > span { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; background: var(--v2-surface-muted); }
.v2-mini-empty p { margin: 0; font-size: .61rem; line-height: 1.45; }
.v2-muted { color: var(--v2-ink-4); }
.v2-text-action { display: inline-flex; align-items: center; gap: 5px; color: var(--v2-accent) !important; text-decoration: none; font-size: .62rem; }
.v2-text-action .mia-icon { width: 13px; height: 13px; }

/* AI Import */
.v2-process-steps { display: grid; grid-template-columns: repeat(4,1fr); padding: 0; margin: 0 0 18px; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface); list-style: none; }
.v2-process-steps li { display: flex; align-items: center; gap: 9px; min-height: 54px; padding: 0 13px; border-left: 1px solid var(--v2-line); color: var(--v2-ink-4); }
.v2-process-steps li:first-child { border-left: 0; }
.v2-process-steps li > span { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 50%; background: var(--v2-surface-muted); font-size: .56rem; font-weight: 750; }
.v2-process-steps strong, .v2-process-steps small { display: block; }
.v2-process-steps strong { font-size: .64rem; }
.v2-process-steps small { color: var(--v2-ink-4); font-size: .54rem; }
.v2-process-steps li.active { color: var(--v2-accent-2); background: var(--v2-accent-softer); }
.v2-process-steps li.active > span { color: #fff; background: var(--v2-accent); }
.v2-import-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 16px; align-items: start; }
.v2-import-card, .v2-import-guide { border: 1px solid var(--v2-line); border-radius: 15px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-import-card { padding: 22px; }
.v2-upload-zone { position: relative; min-height: 210px; display: flex !important; flex-direction: column; align-items: center; justify-content: center; gap: 7px; padding: 24px; border: 1px dashed var(--v2-line-strong); border-radius: 13px; color: var(--v2-ink-3); background: var(--v2-surface-subtle); cursor: pointer; text-align: center; transition: border-color .15s, background .15s; }
.v2-upload-zone:hover { border-color: var(--v2-accent); background: var(--v2-accent-softer); }
.v2-upload-zone input[type=file] { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.v2-upload-orb { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 13px; color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-upload-orb .mia-icon { width: 21px; height: 21px; }
.v2-upload-zone strong { color: var(--v2-ink); font-size: .76rem; }
.v2-upload-zone small { color: var(--v2-ink-4); font-size: .61rem; }
.v2-upload-zone em { margin-top: 5px; color: var(--v2-green); font-size: .57rem; font-style: normal; }
.v2-import-options { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; margin-top: 17px; }
.v2-import-options .span-2 { grid-column: 1 / -1; }
.v2-privacy-note { display: flex; align-items: flex-start; gap: 11px; margin-top: 16px; padding: 13px; border: 1px solid rgba(49,94,251,.12); border-radius: 10px; color: var(--v2-accent-2); background: var(--v2-accent-softer); }
.v2-privacy-note .mia-icon { width: 16px; height: 16px; margin-top: 1px; }
.v2-privacy-note strong { font-size: .65rem; }
.v2-privacy-note p { margin: 3px 0 0; color: var(--v2-ink-3); font-size: .59rem; line-height: 1.5; }
.v2-import-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 18px; }
.v2-import-actions > span { color: var(--v2-ink-4); font-size: .59rem; }
.v2-import-guide { position: sticky; top: calc(var(--v2-topbar-height) + 16px); padding: 20px; }
.v2-import-guide h2 { margin: 5px 0 18px; font-size: 1.15rem; line-height: 1.25; }
.v2-import-guide ol { display: grid; gap: 0; padding: 0; margin: 0; list-style: none; }
.v2-import-guide li { display: grid; grid-template-columns: 30px minmax(0,1fr); gap: 10px; padding: 12px 0; border-top: 1px solid var(--v2-line); }
.v2-import-guide li > span { color: var(--v2-accent); font-size: .57rem; font-weight: 760; }
.v2-import-guide strong, .v2-import-guide small { display: block; }
.v2-import-guide strong { font-size: .65rem; }
.v2-import-guide small { margin-top: 3px; color: var(--v2-ink-4); font-size: .57rem; line-height: 1.45; }
.v2-ledger-head { min-height: 58px; align-items: center; padding: 0 16px; margin: 0; border-bottom: 1px solid var(--v2-line); }
.v2-ledger-head > strong { color: var(--v2-ink-4); font-size: .61rem; font-weight: 650; }
.v2-ledger-head > a { color: var(--v2-accent); }

/* MIA intelligence */
.v2-mia-page-hero { margin-bottom: 18px; }
.v2-mia-command { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(320px,.85fr); gap: 24px; padding: 30px; border-radius: 19px; color: #fff; background: radial-gradient(circle at 5% 0,rgba(76,103,214,.24),transparent 38%),linear-gradient(145deg,#11141b,#262c39); box-shadow: var(--v2-shadow-md); }
.v2-mia-command-copy h2 { max-width: 640px; margin: 17px 0 10px; color: #fff; font-size: clamp(2rem,4vw,3.5rem); line-height: 1.02; letter-spacing: -.052em; }
.v2-mia-command-copy p { max-width: 650px; margin: 0 0 22px; color: #aab2bf; font-size: .75rem; line-height: 1.65; }
.v2-light-button { min-height: 38px; display: inline-flex; align-items: center; gap: 24px; padding: 0 13px; border: 0; border-radius: 9px; color: #17191d; background: #fff; cursor: pointer; font-size: .68rem; font-weight: 700; }
.v2-mia-prompt-list { display: grid; align-content: center; gap: 7px; }
.v2-mia-prompt-list button { min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 0 13px; border: 1px solid rgba(255,255,255,.09); border-radius: 10px; color: #cbd1da; background: rgba(255,255,255,.035); cursor: pointer; text-align: left; font-size: .66rem; }
.v2-mia-prompt-list button:hover { color: #fff; border-color: rgba(143,165,255,.24); background: rgba(99,125,225,.11); }
.v2-mia-prompt-list .mia-icon { width: 14px; height: 14px; }
.v2-intelligence-pulse, .v2-insight-strip { display: grid; grid-template-columns: repeat(5,1fr); gap: 0; margin: 16px 0; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 13px; background: var(--v2-surface); }
.v2-intelligence-pulse article, .v2-insight-strip article { padding: 14px 15px; border-left: 1px solid var(--v2-line); }
.v2-intelligence-pulse article:first-child, .v2-insight-strip article:first-child { border-left: 0; }
.v2-intelligence-pulse span, .v2-intelligence-pulse strong, .v2-intelligence-pulse small, .v2-insight-strip span, .v2-insight-strip strong, .v2-insight-strip small { display: block; }
.v2-intelligence-pulse span, .v2-insight-strip span { color: var(--v2-ink-4); font-size: .56rem; text-transform: uppercase; letter-spacing: .08em; }
.v2-intelligence-pulse strong, .v2-insight-strip strong { margin-top: 4px; font-size: 1.25rem; letter-spacing: -.035em; }
.v2-intelligence-pulse small, .v2-insight-strip small { color: var(--v2-ink-4); font-size: .56rem; }
.v2-capability-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; margin-bottom: 16px; }
.v2-capability-grid > a { min-height: 170px; display: grid; grid-template-columns: 38px minmax(0,1fr) 20px; align-items: start; gap: 12px; padding: 18px; border: 1px solid var(--v2-line); border-radius: 14px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); text-decoration: none; transition: transform .18s var(--v2-ease), border-color .18s, box-shadow .18s; }
.v2-capability-grid > a:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--v2-accent) 28%,var(--v2-line)); box-shadow: var(--v2-shadow-sm); }
.v2-capability-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-capability-icon .mia-icon { width: 18px; height: 18px; }
.v2-capability-grid small, .v2-capability-grid strong, .v2-capability-grid p { display: block; }
.v2-capability-grid small { color: var(--v2-ink-4); font-size: .54rem; letter-spacing: .08em; }
.v2-capability-grid strong { margin-top: 8px; font-size: .76rem; }
.v2-capability-grid p { margin: 7px 0 0; color: var(--v2-ink-3); font-size: .61rem; line-height: 1.52; }
.v2-capability-grid em { align-self: center; color: var(--v2-ink-4); }
.v2-capability-grid em .mia-icon { width: 14px; height: 14px; }
.v2-intelligence-ledger-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; }
.v2-ledger-panel { overflow: hidden; }
.v2-activity-list { padding: 0 15px; }
.v2-activity-list article { min-height: 56px; display: grid; grid-template-columns: 28px minmax(0,1fr) auto; align-items: center; gap: 10px; border-top: 1px solid var(--v2-line); }
.v2-activity-list article:first-child { border-top: 0; }
.v2-activity-list strong, .v2-activity-list small { display: block; }
.v2-activity-list strong { font-size: .65rem; }
.v2-activity-list small { color: var(--v2-ink-4); font-size: .56rem; }
.v2-activity-list em { color: var(--v2-ink-4); font-size: .56rem; font-style: normal; text-transform: capitalize; }
.v2-model-avatar { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .56rem; font-weight: 780; }

/* Insights */
.v2-insight-hero { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-bottom: 16px; }
.v2-insight-hero > article { min-height: 176px; padding: 20px; border: 1px solid var(--v2-line); border-radius: 15px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-insight-hero > article > div:first-child { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; }
.v2-insight-hero span { color: var(--v2-ink-4); font-size: .58rem; font-weight: 720; letter-spacing: .09em; }
.v2-insight-hero strong { font-size: 2.35rem; line-height: 1; letter-spacing: -.055em; }
.v2-insight-hero p { margin: 17px 0 12px; color: var(--v2-ink-3); font-size: .65rem; }
.v2-insight-hero article.dark { color: #fff; border-color: transparent; background: linear-gradient(145deg,#14171d,#292e39); }
.v2-insight-hero article.dark span { color: #8d96a4; }
.v2-insight-hero article.dark strong { display: block; margin-top: 13px; color: #fff; font-size: 3rem; }
.v2-insight-hero article.dark p { margin: 3px 0 20px; color: #a8b0bc; }
.v2-insight-hero article.dark > div { display: flex; gap: 6px; flex-wrap: wrap; }
.v2-insight-hero article.dark em { padding: 5px 7px; border-radius: 7px; color: #c4cad3; background: rgba(255,255,255,.06); font-size: .57rem; font-style: normal; }
.v2-progress { height: 6px; overflow: hidden; border-radius: 99px; background: var(--v2-surface-muted); }
.v2-progress i { display: block; height: 100%; border-radius: inherit; background: var(--v2-accent); }
.v2-progress.success i { background: var(--v2-green); }
.v2-insight-strip { grid-template-columns: repeat(6,1fr); }
.v2-analytics-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; margin-bottom: 16px; }
.v2-chart-panel { overflow: hidden; }
.v2-bar-list { display: grid; gap: 12px; padding: 16px; }
.v2-bar-list > div { display: grid; grid-template-columns: 110px minmax(0,1fr) 30px; align-items: center; gap: 10px; font-size: .62rem; }
.v2-bar-list > div > span { color: var(--v2-ink-3); }
.v2-bar-list > div > div { height: 6px; overflow: hidden; border-radius: 99px; background: var(--v2-surface-muted); }
.v2-bar-list i { display: block; height: 100%; min-width: 4px; border-radius: inherit; background: var(--v2-accent); }
.v2-bar-list.tier i { background: linear-gradient(90deg,var(--v2-violet),var(--v2-accent)); }
.v2-bar-list > div > strong { text-align: right; }

/* Responsive additions */
@media (max-width: 1200px) {
  .v2-marketing-hero { grid-template-columns: 1fr; }
  .v2-marketing-copy { max-width: 850px; }
  .v2-product-frame { max-width: 860px; transform: none; }
  .v2-capability-grid { grid-template-columns: repeat(2,1fr); }
  .v2-company-layout { grid-template-columns: minmax(0,1fr) 270px; }
}
@media (max-width: 960px) {
  .v2-company-layout, .v2-import-layout, .v2-mia-command, .v2-intelligence-ledger-grid, .v2-analytics-grid, .v2-login-stage { grid-template-columns: 1fr; }
  .v2-company-rail, .v2-import-guide { position: static; }
  .v2-network-pulse, .v2-company-pulse, .v2-intelligence-pulse, .v2-insight-strip { grid-template-columns: repeat(2,1fr); }
  .v2-network-pulse article:nth-child(3), .v2-company-pulse article:nth-child(3), .v2-intelligence-pulse article:nth-child(n+3), .v2-insight-strip article:nth-child(n+3) { border-top: 1px solid var(--v2-line); }
  .v2-marketing-principles, .v2-insight-hero { grid-template-columns: 1fr; gap: 16px; }
  .v2-login-assurance { grid-template-columns: 1fr; }
  .v2-login-card { max-width: 520px; }
}
@media (max-width: 720px) {
  .v2-marketing-copy h1 { font-size: 3.35rem; }
  .v2-marketing-actions, .v2-page-hero, .v2-company-header, .v2-editor-actions, .v2-import-actions { align-items: flex-start; flex-direction: column; }
  .v2-marketing-proof, .v2-capability-grid, .v2-editor-fields, .v2-import-options, .v2-company-facts, .v2-thesis-grid { grid-template-columns: 1fr; }
  .v2-product-shell { grid-template-columns: 88px minmax(0,1fr); }
  .v2-product-shell > aside { padding-inline: 7px; }
  .v2-preview-grid { grid-template-columns: 1fr; }
  .v2-marketing-statement { padding: 55px 22px; }
  .v2-editor-section { grid-template-columns: 1fr; gap: 18px; padding: 20px; }
  .v2-process-steps { grid-template-columns: repeat(2,1fr); }
  .v2-process-steps li:nth-child(3) { border-top: 1px solid var(--v2-line); border-left: 0; }
  .v2-process-steps li:nth-child(4) { border-top: 1px solid var(--v2-line); }
  .v2-directory-toolbar { align-items: stretch; flex-direction: column; }
  .v2-directory-toolbar select, .v2-directory-toolbar > input, .v2-directory-search { width: 100%; }
  .v2-directory-count { margin: 3px 0 0; }
  .v2-company-title { align-items: flex-start; }
  .v2-company-pulse, .v2-network-pulse, .v2-intelligence-pulse, .v2-insight-strip { grid-template-columns: 1fr; }
  .v2-company-pulse article, .v2-network-pulse article, .v2-intelligence-pulse article, .v2-insight-strip article { border-left: 0; border-top: 1px solid var(--v2-line); }
  .v2-company-pulse article:first-child, .v2-network-pulse article:first-child, .v2-intelligence-pulse article:first-child, .v2-insight-strip article:first-child { border-top: 0; }
  .v2-mia-command { padding: 22px; }
}

/* Workspace control plane */
.v2-settings-card { scroll-margin-top: calc(var(--v2-topbar-height) + 18px); overflow: hidden; border: 1px solid var(--v2-line); border-radius: 15px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-settings-card-head { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 17px 19px; border-bottom: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.v2-settings-card-head > div:first-child { min-width: 0; }
.v2-settings-card-head span, .v2-settings-card-head h2, .v2-settings-card-head p { display: block; }
.v2-settings-card-head > div > span { color: var(--v2-ink-4); font-size: .57rem; font-weight: 740; letter-spacing: .09em; }
.v2-settings-card-head h2 { margin: 3px 0 2px; font-size: .91rem; }
.v2-settings-card-head p { margin: 0; color: var(--v2-ink-4); font-size: .6rem; }
.v2-settings-form { padding: 19px; }
.v2-settings-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.v2-settings-fields .span-2 { grid-column: 1 / -1; }
.v2-settings-actions { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--v2-line); }
.v2-settings-actions > span { color: var(--v2-ink-4); font-size: .58rem; }
.v2-ai-runtime-note { display: flex; gap: 11px; padding: 14px 19px; border-bottom: 1px solid var(--v2-line); color: var(--v2-accent); background: var(--v2-accent-softer); }
.v2-ai-runtime-note > span { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; background: var(--v2-accent-soft); }
.v2-ai-runtime-note .mia-icon { width: 15px; height: 15px; }
.v2-ai-runtime-note strong, .v2-ai-runtime-note p { display: block; }
.v2-ai-runtime-note strong { font-size: .65rem; }
.v2-ai-runtime-note p { margin: 3px 0 0; color: var(--v2-ink-3); font-size: .58rem; }
.v2-gmail-setup-card { display: grid; grid-template-columns: 42px minmax(0,1fr) auto auto; align-items: center; gap: 13px; margin: 18px; padding: 15px; border: 1px solid rgba(49,94,251,.14); border-radius: 12px; background: var(--v2-accent-softer); }
.v2-provider-mark { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 11px; color: #fff; background: linear-gradient(145deg,#315efb,#7559e8); font-size: .76rem; font-weight: 780; }
.v2-provider-mark.small { width: 32px; height: 32px; border-radius: 9px; font-size: .64rem; }
.v2-gmail-setup-card > div strong, .v2-gmail-setup-card > div p { display: block; }
.v2-gmail-setup-card > div strong { font-size: .7rem; }
.v2-gmail-setup-card > div p { margin: 3px 0 0; color: var(--v2-ink-3); font-size: .59rem; }
.v2-gmail-setup-card ol { display: flex; gap: 6px; padding: 0; margin: 0; list-style: none; }
.v2-gmail-setup-card li { display: flex; align-items: center; gap: 5px; padding: 5px 7px; border-radius: 7px; color: var(--v2-ink-3); background: var(--v2-surface); font-size: .54rem; white-space: nowrap; }
.v2-gmail-setup-card li b { color: var(--v2-accent); }
.v2-gmail-setup-card > a { display: inline-flex; align-items: center; gap: 5px; color: var(--v2-accent); text-decoration: none; font-size: .6rem; white-space: nowrap; }
.v2-gmail-setup-card > a .mia-icon { width: 12px; height: 12px; }
.v2-mailbox-section-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 19px 11px; }
.v2-mailbox-section-head > div { display: flex; align-items: center; gap: 7px; }
.v2-mailbox-section-head > div:first-child { display: block; }
.v2-mailbox-section-head strong, .v2-mailbox-section-head small { display: block; }
.v2-mailbox-section-head strong { font-size: .68rem; }
.v2-mailbox-section-head small { margin-top: 2px; color: var(--v2-ink-4); font-size: .57rem; }
.v2-mailbox-list { margin: 0 19px 18px; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 11px; }
.v2-mailbox-list article { min-height: 62px; display: grid; grid-template-columns: 32px minmax(0,1fr) auto 30px; align-items: center; gap: 10px; padding: 9px 11px; border-top: 1px solid var(--v2-line); }
.v2-mailbox-list article:first-child { border-top: 0; }
.v2-mailbox-list article > div:nth-child(2) strong, .v2-mailbox-list article > div:nth-child(2) small { display: block; }
.v2-mailbox-list article > div:nth-child(2) strong { font-size: .65rem; }
.v2-mailbox-list article > div:nth-child(2) small { color: var(--v2-ink-4); font-size: .56rem; }
.v2-mailbox-signals { display: flex; align-items: center; justify-content: flex-end; gap: 5px; flex-wrap: wrap; }
.v2-mailbox-signals span { padding: 3px 6px; border-radius: 99px; color: var(--v2-ink-4); background: var(--v2-surface-muted); font-size: .52rem; }
.v2-mailbox-signals span.ok { color: var(--v2-green); background: var(--v2-green-soft); }
.v2-mailbox-signals span.attention { color: var(--v2-amber); background: var(--v2-amber-soft); }
.v2-settings-empty { min-height: 80px; display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 13px; }
.v2-settings-empty > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; color: var(--v2-ink-4); background: var(--v2-surface-muted); }
.v2-settings-empty strong, .v2-settings-empty p { display: block; }
.v2-settings-empty strong { font-size: .65rem; }
.v2-settings-empty p { margin: 2px 0 0; color: var(--v2-ink-4); font-size: .57rem; }
.v2-branding-form { padding: 0 19px 19px; }
.v2-branding-preview { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 15px; border: 1px solid var(--v2-line); border-radius: 11px; background: var(--v2-surface-subtle); }
.v2-branding-preview > div { display: flex; align-items: center; gap: 13px; }
.v2-branding-preview img { max-width: 100px; max-height: 42px; object-fit: contain; }
.v2-branding-preview p { margin: 0; color: var(--v2-ink-3); font-size: .61rem; white-space: pre-line; }
.v2-branding-preview > small { color: var(--v2-ink-4); font-size: .54rem; }
.v2-branding-form details { margin-top: 9px; }
.v2-branding-form summary { display: inline-flex; align-items: center; gap: 6px; color: var(--v2-accent); cursor: pointer; list-style: none; font-size: .62rem; }
.v2-branding-form summary::-webkit-details-marker { display: none; }
.v2-branding-form summary .mia-icon { width: 13px; height: 13px; }
.v2-branding-form details[open] .v2-settings-fields { margin-top: 15px; }
.v2-integration-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; padding: 18px; }
.v2-integration-grid > a { min-height: 66px; display: grid; grid-template-columns: 36px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 11px; border: 1px solid var(--v2-line); border-radius: 10px; background: var(--v2-surface-subtle); text-decoration: none; }
.v2-integration-grid > a:hover { border-color: var(--v2-line-strong); background: var(--v2-surface); }
.v2-integration-icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-integration-icon .mia-icon { width: 16px; height: 16px; }
.v2-integration-grid strong, .v2-integration-grid small { display: block; }
.v2-integration-grid strong { font-size: .64rem; }
.v2-integration-grid small { color: var(--v2-ink-4); font-size: .55rem; }
.v2-integration-grid em { padding: 3px 6px; border-radius: 99px; color: var(--v2-ink-4); background: var(--v2-surface-muted); font-size: .52rem; font-style: normal; }
.v2-integration-grid em.enabled { color: var(--v2-green); background: var(--v2-green-soft); }
.v2-integration-grid .span-all { grid-column: 1 / -1; }
@media (max-width: 1100px) { .v2-gmail-setup-card { grid-template-columns: 42px minmax(0,1fr); } .v2-gmail-setup-card ol, .v2-gmail-setup-card > a { grid-column: 2; } }
@media (max-width: 720px) { .v2-settings-fields, .v2-integration-grid { grid-template-columns: 1fr; } .v2-settings-fields .span-2, .v2-integration-grid .span-all { grid-column: auto; } .v2-gmail-setup-card { grid-template-columns: 36px minmax(0,1fr); margin: 14px; } .v2-gmail-setup-card ol { flex-direction: column; align-items: stretch; } .v2-mailbox-section-head { align-items: flex-start; flex-direction: column; } .v2-mailbox-list article { grid-template-columns: 32px minmax(0,1fr) 28px; } .v2-mailbox-signals { grid-column: 2; justify-content: flex-start; } }

/* Team and mailbox editors */
.v2-member-invite-card { margin-top: 16px; }
.v2-member-form { display: grid; grid-template-columns: minmax(220px,1fr) minmax(220px,.8fr) auto; align-items: end; gap: 12px; padding: 18px; }
.v2-mailbox-setup { max-width: 1180px; display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 16px; margin: 0 auto; align-items: start; }
.v2-mailbox-editor { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 16px; background: var(--v2-surface); box-shadow: var(--v2-shadow-sm); }
.v2-mailbox-editor > section { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 28px; padding: 24px; border-top: 1px solid var(--v2-line); }
.v2-mailbox-editor > section:first-of-type { border-top: 0; }
.v2-mailbox-step { display: flex; gap: 10px; align-items: flex-start; }
.v2-mailbox-step > span { width: 26px; height: 26px; display: grid; place-items: center; flex: 0 0 26px; border-radius: 8px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .56rem; font-weight: 760; }
.v2-mailbox-step h2 { margin: 1px 0 4px; font-size: .85rem; }
.v2-mailbox-step p { margin: 0; color: var(--v2-ink-4); font-size: .59rem; line-height: 1.48; }
.v2-mailbox-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.v2-mailbox-fields .span-2 { grid-column: 1 / -1; }
.v2-provider-notice { grid-column: 2; display: grid; grid-template-columns: 40px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 12px; border: 1px solid rgba(49,94,251,.14); border-radius: 11px; background: var(--v2-accent-softer); }
.v2-provider-notice strong, .v2-provider-notice small { display: block; }
.v2-provider-notice strong { font-size: .65rem; }
.v2-provider-notice small { color: var(--v2-ink-4); font-size: .55rem; }
.v2-provider-notice > a { display: inline-flex; align-items: center; gap: 4px; color: var(--v2-accent); text-decoration: none; font-size: .57rem; }
.v2-provider-notice > a .mia-icon { width: 12px; height: 12px; }
.v2-toggle-row { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; padding: 11px; border: 1px solid var(--v2-line); border-radius: 9px; background: var(--v2-surface-subtle); }
.v2-toggle-row label { display: inline-flex !important; align-items: center; gap: 6px; margin: 0 !important; color: var(--v2-ink-3) !important; font-size: .59rem !important; font-weight: 550 !important; }
.v2-toggle-row input { width: 15px !important; height: 15px !important; min-height: 0 !important; }
.v2-mailbox-help { position: sticky; top: calc(var(--v2-topbar-height) + 16px); padding: 20px; border: 1px solid var(--v2-line); border-radius: 15px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-mailbox-help h2 { margin: 4px 0 17px; font-size: 1.1rem; }
.v2-mailbox-help ol { display: grid; padding: 0; margin: 0; list-style: none; }
.v2-mailbox-help li { display: grid; grid-template-columns: 27px minmax(0,1fr); gap: 9px; padding: 12px 0; border-top: 1px solid var(--v2-line); }
.v2-mailbox-help li > span { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 7px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .54rem; font-weight: 750; }
.v2-mailbox-help strong, .v2-mailbox-help small { display: block; }
.v2-mailbox-help strong { font-size: .63rem; }
.v2-mailbox-help small { margin-top: 3px; color: var(--v2-ink-4); font-size: .55rem; line-height: 1.42; }
.v2-security-note { display: flex; gap: 8px; margin-top: 14px; padding: 11px; border-radius: 9px; color: var(--v2-amber); background: var(--v2-amber-soft); }
.v2-security-note .mia-icon { width: 14px; height: 14px; margin-top: 1px; }
.v2-security-note p { margin: 0; color: var(--v2-ink-3); font-size: .56rem; line-height: 1.45; }
.v2-connection-status { margin-top: 15px; padding-top: 13px; border-top: 1px solid var(--v2-line); }
.v2-connection-status span, .v2-connection-status strong, .v2-connection-status small { display: block; }
.v2-connection-status span { color: var(--v2-ink-4); font-size: .54rem; letter-spacing: .09em; }
.v2-connection-status strong { margin-top: 5px; font-size: .7rem; }
.v2-connection-status small { color: var(--v2-ink-4); font-size: .55rem; }
.v2-connection-status p { padding: 8px; border-radius: 7px; color: var(--v2-red); background: var(--v2-red-soft); font-size: .55rem; }
@media (max-width: 980px) { .v2-mailbox-setup { grid-template-columns: 1fr; } .v2-mailbox-help { position: static; } }
@media (max-width: 720px) { .v2-member-form { grid-template-columns: 1fr; } .v2-mailbox-editor > section { grid-template-columns: 1fr; gap: 17px; padding: 20px; } .v2-mailbox-fields { grid-template-columns: 1fr; } .v2-mailbox-fields .span-2 { grid-column: auto; } .v2-provider-notice { grid-column: 1; grid-template-columns: 40px minmax(0,1fr); } .v2-provider-notice > a { grid-column: 2; } }

/* Data Room 2.0 */
.v2-room-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(300px,1fr)); gap: 13px; }
.v2-room-grid > a { min-height: 250px; display: flex; flex-direction: column; padding: 18px; border: 1px solid var(--v2-line); border-radius: 15px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); text-decoration: none; transition: transform .18s var(--v2-ease), box-shadow .18s, border-color .18s; }
.v2-room-grid > a:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--v2-accent) 24%,var(--v2-line)); box-shadow: var(--v2-shadow-sm); }
.v2-room-head { display: flex; justify-content: space-between; gap: 12px; }
.v2-room-mark { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .64rem; font-weight: 780; }
.v2-room-grid > a > div:nth-child(2) { margin-top: 22px; }
.v2-room-grid > a > div:nth-child(2) small { color: var(--v2-accent); font-size: .55rem; font-weight: 730; letter-spacing: .09em; }
.v2-room-grid h2 { margin: 4px 0 2px; font-size: .93rem; }
.v2-room-grid p { margin: 0; color: var(--v2-ink-4); font-size: .61rem; }
.v2-room-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 0; margin-top: 22px; padding-top: 14px; border-top: 1px solid var(--v2-line); }
.v2-room-stats span { padding-right: 8px; }
.v2-room-stats strong, .v2-room-stats small { display: block; }
.v2-room-stats strong { font-size: .72rem; }
.v2-room-stats small { color: var(--v2-ink-4); font-size: .53rem; }
.v2-room-grid footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 17px; color: var(--v2-ink-4); font-size: .57rem; }
.v2-room-grid footer .mia-icon { width: 14px; height: 14px; }
.v2-room-empty { grid-column: 1 / -1; padding: 40px; border: 1px dashed var(--v2-line-strong); border-radius: 15px; }
.v2-room-workspace { display: grid; gap: 14px; }
.v2-room-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 25px; }
.v2-room-header > div:last-child { display: flex; align-items: center; gap: 8px; }
.v2-room-header h1 { margin: 2px 0 4px; font-size: clamp(2rem,4vw,3.25rem); letter-spacing: -.055em; }
.v2-room-header p { margin: 0; color: var(--v2-ink-3); }
.v2-room-pulse { display: grid; grid-template-columns: repeat(5,1fr); overflow: hidden; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface); }
.v2-room-pulse article { padding: 13px 15px; border-left: 1px solid var(--v2-line); }
.v2-room-pulse article:first-child { border-left: 0; }
.v2-room-pulse span, .v2-room-pulse strong { display: block; }
.v2-room-pulse span { color: var(--v2-ink-4); font-size: .55rem; text-transform: uppercase; letter-spacing: .08em; }
.v2-room-pulse strong { margin-top: 3px; font-size: .75rem; }
.v2-operation-banner { min-height: 56px; display: grid; grid-template-columns: 26px minmax(0,1fr) auto 18px; align-items: center; gap: 10px; padding: 8px 12px; border: 1px solid rgba(49,94,251,.14); border-radius: 11px; color: var(--v2-ink); background: var(--v2-accent-softer); text-decoration: none; }
.v2-live-spinner { width: 21px; height: 21px; border: 2px solid rgba(49,94,251,.18); border-top-color: var(--v2-accent); border-radius: 50%; animation: v2-spin .8s linear infinite; }
@keyframes v2-spin { to { transform: rotate(360deg); } }
.v2-operation-banner strong, .v2-operation-banner small { display: block; }
.v2-operation-banner strong { font-size: .65rem; }
.v2-operation-banner small { color: var(--v2-ink-4); font-size: .56rem; }
.v2-operation-banner em { color: var(--v2-accent); font-size: .6rem; font-style: normal; font-weight: 700; }
.v2-operation-banner .mia-icon { width: 14px; height: 14px; color: var(--v2-ink-4); }
.v2-room-shell { min-height: 690px; display: grid; grid-template-columns: 225px minmax(0,1fr) 310px; overflow: hidden; border: 1px solid var(--v2-line); border-radius: 15px; background: var(--v2-surface); box-shadow: var(--v2-shadow-sm); }
.v2-room-folders { padding: 14px 10px; border-right: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.v2-room-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 3px 8px 9px; }
.v2-room-panel-head > span { color: var(--v2-ink-4); font-size: .55rem; font-weight: 740; letter-spacing: .09em; }
.v2-room-panel-head > strong { color: var(--v2-ink-4); font-size: .55rem; }
.v2-room-folders nav { display: grid; gap: 3px; }
.v2-room-folders nav a { min-height: 36px; display: grid; grid-template-columns: 17px minmax(0,1fr) auto; align-items: center; gap: 8px; padding: 0 8px; border-radius: 8px; color: var(--v2-ink-3); text-decoration: none; font-size: .61rem; }
.v2-room-folders nav a:hover, .v2-room-folders nav a.active { color: var(--v2-ink); background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-room-folders nav .mia-icon { width: 14px; height: 14px; }
.v2-room-folders nav em { color: var(--v2-ink-4); font-size: .54rem; font-style: normal; }
.v2-room-create-folder { margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--v2-line); }
.v2-room-create-folder summary { display: flex; align-items: center; gap: 6px; padding: 5px 8px; color: var(--v2-accent); cursor: pointer; list-style: none; font-size: .59rem; }
.v2-room-create-folder summary::-webkit-details-marker { display: none; }
.v2-room-create-folder summary .mia-icon { width: 13px; height: 13px; }
.v2-room-create-folder form { display: grid; gap: 8px; padding: 8px; }
.v2-room-library { min-width: 0; padding: 18px; }
.v2-room-library-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; margin-bottom: 14px; }
.v2-room-library-head span, .v2-room-library-head h2, .v2-room-library-head p { display: block; }
.v2-room-library-head > div > span { color: var(--v2-ink-4); font-size: .55rem; letter-spacing: .09em; }
.v2-room-library-head h2 { margin: 3px 0 2px; font-size: .9rem; }
.v2-room-library-head p { margin: 0; color: var(--v2-ink-4); font-size: .58rem; }
.v2-room-upload { padding: 12px; border: 1px solid var(--v2-line); border-radius: 11px; background: var(--v2-surface-subtle); }
.v2-room-upload-drop { position: relative; min-height: 62px; display: flex; align-items: center; gap: 11px; padding: 8px 10px; border: 1px dashed var(--v2-line-strong); border-radius: 9px; background: var(--v2-surface); }
.v2-room-upload-drop > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-room-upload-drop .mia-icon { width: 17px; height: 17px; }
.v2-room-upload-drop strong, .v2-room-upload-drop small { display: block; }
.v2-room-upload-drop strong { font-size: .63rem; }
.v2-room-upload-drop small { color: var(--v2-ink-4); font-size: .54rem; }
.v2-room-upload-drop input[type=file] { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.v2-room-upload-fields { display: grid; grid-template-columns: minmax(150px,1fr) 150px 180px auto; align-items: end; gap: 9px; margin-top: 10px; }
.v2-room-upload-fields select { opacity: 1 !important; pointer-events: auto !important; appearance: auto !important; }
.v2-document-groups { display: grid; gap: 15px; margin-top: 17px; }
.v2-document-groups > section { scroll-margin-top: calc(var(--v2-topbar-height) + 20px); }
.v2-document-group-head { display: flex; align-items: center; justify-content: space-between; min-height: 32px; padding: 0 3px; }
.v2-document-group-head strong, .v2-document-group-head small { display: block; }
.v2-document-group-head strong { font-size: .64rem; }
.v2-document-group-head small { color: var(--v2-ink-4); font-size: .53rem; }
.v2-document-row { min-height: 58px; display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 8px 10px; border-top: 1px solid var(--v2-line); }
.v2-document-row:first-of-type { border-top: 1px solid var(--v2-line); }
.v2-document-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .53rem; font-weight: 780; }
.v2-document-row > div:nth-child(2) strong, .v2-document-row > div:nth-child(2) small { display: block; }
.v2-document-row > div:nth-child(2) strong { font-size: .64rem; }
.v2-document-row > div:nth-child(2) small { color: var(--v2-ink-4); font-size: .54rem; }
.v2-document-row > div:last-child { display: flex; align-items: center; gap: 7px; }
.v2-icon-link { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-ink-4); text-decoration: none; }
.v2-icon-link:hover { color: var(--v2-ink); background: var(--v2-surface-muted); }
.v2-icon-link .mia-icon { width: 14px; height: 14px; }
.v2-room-tools { border-left: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.v2-room-tools > section { padding: 14px; border-top: 1px solid var(--v2-line); }
.v2-room-tools > section:first-child { border-top: 0; }
.v2-room-tools > section > p { margin: 0 0 11px; color: var(--v2-ink-4); font-size: .57rem; line-height: 1.5; }
.v2-room-tool-form { display: grid; gap: 8px; }
.v2-room-tool-form > div { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.v2-room-tool-form > label { display: flex; align-items: center; gap: 6px; color: var(--v2-ink-3); font-size: .56rem; }
.v2-room-tool-form > label input { width: 14px !important; height: 14px !important; min-height: 0 !important; }
.v2-grant-list, .v2-question-list { display: grid; margin-top: 11px; }
.v2-grant-list article, .v2-question-list article { padding: 9px 0; border-top: 1px solid var(--v2-line); }
.v2-grant-list strong, .v2-grant-list small, .v2-question-list strong, .v2-question-list small { display: block; }
.v2-grant-list strong, .v2-question-list strong { font-size: .59rem; }
.v2-grant-list small, .v2-question-list small { color: var(--v2-ink-4); font-size: .52rem; }
.v2-question-list p { margin: 4px 0; color: var(--v2-ink-3); font-size: .55rem; line-height: 1.45; }
@media (max-width: 1250px) { .v2-room-shell { grid-template-columns: 210px minmax(0,1fr); } .v2-room-tools { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--v2-line); border-left: 0; } .v2-room-tools > section:nth-child(2) { border-top: 0; border-left: 1px solid var(--v2-line); } }
@media (max-width: 900px) { .v2-room-pulse { grid-template-columns: repeat(2,1fr); } .v2-room-pulse article:nth-child(n+3) { border-top: 1px solid var(--v2-line); } .v2-room-shell { grid-template-columns: 1fr; } .v2-room-folders { border-right: 0; border-bottom: 1px solid var(--v2-line); } .v2-room-folders nav { grid-template-columns: repeat(2,1fr); } .v2-room-upload-fields { grid-template-columns: 1fr 1fr; } .v2-room-tools { grid-template-columns: 1fr; } .v2-room-tools > section:nth-child(2) { border-left: 0; border-top: 1px solid var(--v2-line); } }
@media (max-width: 620px) { .v2-room-header, .v2-room-header > div:last-child { align-items: flex-start; flex-direction: column; } .v2-room-pulse, .v2-room-folders nav, .v2-room-upload-fields { grid-template-columns: 1fr; } .v2-room-pulse article { border-left: 0; border-top: 1px solid var(--v2-line); } .v2-room-pulse article:first-child { border-top: 0; } }

/* =========================================================
   MIA 2.0 · Enterprise surfaces and finishing system
   ========================================================= */

/* Universal form polish for legacy Django form rendering */
.mia-v2 form > p { margin: 0 0 14px; }
.mia-v2 form > p > label,
.mia-v2 .v2-form-stack > p > label { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 6px; color: var(--v2-ink-2); font-size: .68rem; font-weight: 680; }
.mia-v2 form > p > .helptext,
.mia-v2 .v2-form-stack .helptext { display: block; margin-top: 5px; color: var(--v2-ink-4); font-size: .59rem; line-height: 1.45; }
.mia-v2 .errorlist { display: grid; gap: 3px; padding: 0; margin: 0 0 6px; list-style: none; color: var(--v2-red); font-size: .62rem; }
.mia-v2 input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.mia-v2 select,
.mia-v2 textarea { width: 100%; min-height: 40px; padding: 9px 11px; border: 1px solid var(--v2-line-strong); border-radius: 9px; color: var(--v2-ink); background: var(--v2-surface); box-shadow: 0 1px 2px rgba(15,23,42,.02); transition: border-color var(--v2-fast), box-shadow var(--v2-fast), background var(--v2-fast); }
.mia-v2 textarea { min-height: 112px; resize: vertical; line-height: 1.55; }
.mia-v2 input:hover, .mia-v2 select:hover, .mia-v2 textarea:hover { border-color: color-mix(in srgb, var(--v2-line-strong) 70%, var(--v2-ink-4)); }
.mia-v2 input:focus, .mia-v2 select:focus, .mia-v2 textarea:focus { border-color: color-mix(in srgb, var(--v2-accent) 64%, white); box-shadow: 0 0 0 3px var(--v2-accent-soft); outline: none; }
.mia-v2 input:disabled, .mia-v2 select:disabled, .mia-v2 textarea:disabled { color: var(--v2-ink-4); background: var(--v2-surface-muted); cursor: not-allowed; }
.mia-v2 input[type="checkbox"], .mia-v2 input[type="radio"] { accent-color: var(--v2-accent); }
.mia-v2 input[type="file"] { padding: 7px; }
.mia-v2 input[type="file"]::file-selector-button { margin-right: 10px; padding: 6px 9px; border: 1px solid var(--v2-line); border-radius: 7px; color: var(--v2-ink-2); background: var(--v2-surface-subtle); cursor: pointer; }
.v2-form-stack { display: grid; gap: 3px; }
.v2-form-stack > p { margin: 0 0 13px !important; }
.v2-form-actions { position: sticky; bottom: 0; display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 15px -18px -18px; padding: 12px 18px; border-top: 1px solid var(--v2-line); background: color-mix(in srgb, var(--v2-surface) 94%, transparent); backdrop-filter: blur(14px); }
.v2-form-actions > span { color: var(--v2-ink-4); font-size: .58rem; }
.btn .mia-icon { width: 14px; height: 14px; }
.btn.full { width: 100%; }

/* Shared premium primitives */
.v2-page-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 22px; }
.v2-page-hero.compact { align-items: center; }
.v2-page-hero > div:first-child { max-width: 780px; }
.v2-page-hero h1 { margin: 4px 0 6px; font-family: var(--v2-display); font-size: clamp(2rem, 4.1vw, 3.55rem); line-height: .99; letter-spacing: -.057em; }
.v2-page-hero.compact h1 { font-size: clamp(1.8rem, 3.3vw, 3rem); }
.v2-page-hero p { max-width: 720px; margin: 0; color: var(--v2-ink-3); font-size: .79rem; line-height: 1.62; }
.v2-kicker { display: block; color: var(--v2-accent); font-size: .6rem; font-weight: 780; text-transform: uppercase; letter-spacing: .13em; }
.v2-hero-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.v2-hero-actions form { margin: 0; }
.v2-panel { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 14px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-panel-head { min-height: 75px; display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 17px 18px 14px; border-bottom: 1px solid var(--v2-line); }
.v2-panel-head.small { min-height: 61px; padding: 13px 14px 11px; }
.v2-panel-head > div { min-width: 0; }
.v2-panel-head span, .v2-panel-head h2, .v2-panel-head p { display: block; }
.v2-panel-head > div > span { color: var(--v2-ink-4); font-size: .55rem; font-weight: 760; text-transform: uppercase; letter-spacing: .1em; }
.v2-panel-head h2 { margin: 3px 0 1px; color: var(--v2-ink); font-size: .86rem; letter-spacing: -.018em; }
.v2-panel-head.small h2 { font-size: .76rem; }
.v2-panel-head p { margin: 3px 0 0; color: var(--v2-ink-4); font-size: .57rem; line-height: 1.5; }
.v2-count-badge { min-width: 27px; height: 27px; display: inline-grid; place-items: center; flex: 0 0 auto; padding: 0 8px; border: 1px solid var(--v2-line); border-radius: 999px; color: var(--v2-ink-3); background: var(--v2-surface-subtle); font-size: .59rem; font-weight: 730; }
.v2-status-chip { display: inline-flex; align-items: center; justify-content: center; min-height: 24px; padding: 3px 8px; border: 1px solid var(--v2-line); border-radius: 999px; color: var(--v2-ink-3); background: var(--v2-surface-subtle); font-size: .54rem; font-weight: 720; line-height: 1.2; text-transform: capitalize; white-space: nowrap; }
.v2-status-chip.success, .v2-status-chip.succeeded, .v2-status-chip.signed, .v2-status-chip.completed, .v2-status-chip.done { color: var(--v2-green); border-color: rgba(15,147,102,.15); background: var(--v2-green-soft); }
.v2-status-chip.warning, .v2-status-chip.waiting, .v2-status-chip.in_progress, .v2-status-chip.sent, .v2-status-chip.delivered { color: var(--v2-amber); border-color: rgba(166,102,14,.15); background: var(--v2-amber-soft); }
.v2-status-chip.failed, .v2-status-chip.declined, .v2-status-chip.blocked, .v2-status-chip.critical, .v2-status-chip.cancelled { color: var(--v2-red); border-color: rgba(201,65,65,.15); background: var(--v2-red-soft); }
.v2-status-chip.running, .v2-status-chip.active, .v2-status-chip.approved, .v2-status-chip.replied { color: var(--v2-accent); border-color: rgba(49,94,251,.15); background: var(--v2-accent-soft); }
.v2-ai-tag { display: inline-flex !important; align-items: center; gap: 5px; min-height: 24px; padding: 3px 8px; border: 1px solid rgba(117,89,232,.15); border-radius: 999px; color: var(--v2-violet); background: color-mix(in srgb, var(--v2-violet) 8%, var(--v2-surface)); font-size: .54rem !important; font-weight: 720 !important; text-transform: none !important; letter-spacing: 0 !important; white-space: nowrap; }
.v2-ai-tag.subtle { color: var(--v2-ink-3); border-color: var(--v2-line); background: var(--v2-surface-subtle); }
.v2-ai-tag .mia-icon { width: 12px; height: 12px; }
.v2-inline-link { display: inline-flex; align-items: center; gap: 4px; color: var(--v2-accent) !important; text-decoration: none; font-size: .56rem; font-weight: 650; }
.v2-inline-link .mia-icon { width: 11px; height: 11px; }
.v2-empty-quiet { min-height: 180px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 28px; color: var(--v2-ink-4); text-align: center; }
.v2-empty-quiet > span { width: 40px; height: 40px; display: grid; place-items: center; margin-bottom: 10px; border: 1px solid var(--v2-line); border-radius: 12px; background: var(--v2-surface-subtle); }
.v2-empty-quiet .mia-icon { width: 18px; height: 18px; }
.v2-empty-quiet strong { color: var(--v2-ink-2); font-size: .7rem; }
.v2-empty-quiet p { max-width: 330px; margin: 3px 0 0; font-size: .58rem; line-height: 1.5; }
.v2-empty-inline { padding: 22px 14px; color: var(--v2-ink-4); font-size: .6rem; text-align: center; }
.v2-definition-list { display: grid; grid-template-columns: minmax(90px,.7fr) 1.3fr; margin: 0; padding: 4px 14px 14px; }
.v2-definition-list dt, .v2-definition-list dd { min-width: 0; margin: 0; padding: 10px 0; border-bottom: 1px solid var(--v2-line); font-size: .59rem; }
.v2-definition-list dt { color: var(--v2-ink-4); }
.v2-definition-list dd { color: var(--v2-ink-2); font-weight: 620; text-align: right; overflow-wrap: anywhere; }
.v2-definition-list a { color: var(--v2-accent); text-decoration: none; }
.v2-back-link { display: inline-flex; align-items: center; gap: 5px; color: var(--v2-ink-4) !important; text-decoration: none; font-size: .58rem; font-weight: 670; }
.v2-back-link .mia-icon { width: 13px; height: 13px; transform: rotate(180deg); }
.v2-deal-subheader { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.v2-deal-subidentity { display: grid; grid-template-columns: auto 48px minmax(0,1fr); align-items: center; gap: 12px; min-width: 0; }
.v2-deal-subidentity > a { grid-column: 1 / -1; width: max-content; }
.v2-deal-subidentity > div:last-child { min-width: 0; }
.v2-deal-subidentity > div:last-child > span { color: var(--v2-ink-4); font-size: .56rem; font-weight: 740; text-transform: uppercase; letter-spacing: .1em; }
.v2-deal-subidentity h1 { margin: 1px 0 2px; overflow: hidden; font-size: clamp(1.55rem,3vw,2.55rem); line-height: 1.06; letter-spacing: -.048em; text-overflow: ellipsis; }
.v2-deal-subidentity p { margin: 0; color: var(--v2-ink-3); font-size: .68rem; }
.v2-ai-emblem, .v2-nda-emblem, .v2-workflow-emblem, .v2-response-emblem { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid rgba(49,94,251,.14); border-radius: 13px; color: var(--v2-accent); background: var(--v2-accent-soft); box-shadow: var(--v2-shadow-xs); }
.v2-ai-emblem { color: var(--v2-violet); background: color-mix(in srgb, var(--v2-violet) 9%, var(--v2-surface)); }
.v2-nda-emblem { color: var(--v2-green); background: var(--v2-green-soft); }
.v2-workflow-emblem { color: var(--v2-amber); background: var(--v2-amber-soft); }
.v2-response-emblem { color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-ai-emblem .mia-icon, .v2-nda-emblem .mia-icon, .v2-workflow-emblem .mia-icon, .v2-response-emblem .mia-icon { width: 21px; height: 21px; }
.v2-ai-emblem.large { width: 62px; height: 62px; border-radius: 18px; }
.v2-ai-emblem.large .mia-icon { width: 27px; height: 27px; }

/* Operations */
.v2-operations-page { display: grid; gap: 16px; }
.v2-ops-pulse { display: grid; grid-template-columns: repeat(4,1fr); overflow: hidden; border: 1px solid var(--v2-line); border-radius: 13px; background: var(--v2-surface); box-shadow: var(--v2-shadow-xs); }
.v2-ops-pulse article { display: grid; grid-template-columns: 38px minmax(0,1fr); align-items: center; gap: 10px; padding: 14px 15px; border-left: 1px solid var(--v2-line); }
.v2-ops-pulse article:first-child { border-left: 0; }
.v2-pulse-icon { width: 37px; height: 37px; display: grid; place-items: center; border-radius: 10px; color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-pulse-icon.violet { color: var(--v2-violet); background: color-mix(in srgb, var(--v2-violet) 9%, var(--v2-surface)); }
.v2-pulse-icon.green { color: var(--v2-green); background: var(--v2-green-soft); }
.v2-pulse-icon.amber { color: var(--v2-amber); background: var(--v2-amber-soft); }
.v2-pulse-icon .mia-icon { width: 17px; height: 17px; }
.v2-ops-pulse small, .v2-ops-pulse strong, .v2-ops-pulse em { display: block; }
.v2-ops-pulse small { color: var(--v2-ink-4); font-size: .55rem; text-transform: uppercase; letter-spacing: .08em; }
.v2-ops-pulse strong { margin-top: 1px; font-size: 1rem; line-height: 1.1; }
.v2-ops-pulse em { color: var(--v2-ink-4); font-size: .53rem; font-style: normal; }
.v2-operations-layout { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(330px,.75fr); gap: 14px; align-items: start; }
.v2-ops-side { display: grid; gap: 14px; }
.v2-ops-list { display: grid; }
.v2-op-row { min-height: 76px; display: grid; grid-template-columns: 8px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 11px 17px; border-top: 1px solid var(--v2-line); }
.v2-op-row:first-child { border-top: 0; }
.v2-priority-marker { width: 7px; height: 30px; border-radius: 999px; background: var(--v2-line-strong); }
.v2-priority-marker.medium { background: #8ca2eb; }
.v2-priority-marker.high { background: #d99838; }
.v2-priority-marker.critical { background: var(--v2-red); box-shadow: 0 0 0 4px var(--v2-red-soft); }
.v2-op-main strong, .v2-op-main span, .v2-op-main p { display: block; }
.v2-op-main strong { font-size: .67rem; }
.v2-op-main span { margin-top: 2px; color: var(--v2-ink-4); font-size: .55rem; }
.v2-op-main span a { color: var(--v2-accent); text-decoration: none; }
.v2-op-main p { margin: 4px 0 0; color: var(--v2-ink-3); font-size: .55rem; }
.v2-op-meta { display: grid; justify-items: end; gap: 6px; }
.v2-op-meta small { display: inline-flex; align-items: center; gap: 4px; color: var(--v2-ink-4); font-size: .52rem; }
.v2-op-meta small .mia-icon { width: 11px; height: 11px; }
.v2-side-list { display: grid; }
.v2-meeting-row, .v2-signature-row { min-height: 65px; display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 9px 14px; border-top: 1px solid var(--v2-line); }
.v2-meeting-row:first-child, .v2-signature-row:first-child { border-top: 0; }
.v2-meeting-row time { width: 36px; height: 40px; display: grid; place-content: center; border: 1px solid var(--v2-line); border-radius: 9px; text-align: center; background: var(--v2-surface-subtle); }
.v2-meeting-row time strong, .v2-meeting-row time span { display: block; }
.v2-meeting-row time strong { font-size: .78rem; line-height: 1; }
.v2-meeting-row time span { margin-top: 2px; color: var(--v2-ink-4); font-size: .48rem; text-transform: uppercase; }
.v2-meeting-row > div strong, .v2-meeting-row > div span, .v2-signature-row > div strong, .v2-signature-row > div span { display: block; }
.v2-meeting-row > div strong, .v2-signature-row > div strong { font-size: .61rem; }
.v2-meeting-row > div span, .v2-signature-row > div span { color: var(--v2-ink-4); font-size: .52rem; }
.v2-meeting-row > div span a { color: var(--v2-accent); text-decoration: none; }
.v2-provider-mark { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .6rem; font-weight: 780; }
.v2-incident-row { display: grid; grid-template-columns: 31px minmax(0,1fr); gap: 9px; padding: 11px 14px; border-top: 1px solid var(--v2-line); }
.v2-incident-row > span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-red); background: var(--v2-red-soft); }
.v2-incident-row .mia-icon { width: 14px; height: 14px; }
.v2-incident-row strong, .v2-incident-row small { display: block; }
.v2-incident-row strong { font-size: .61rem; }
.v2-incident-row small { color: var(--v2-ink-4); font-size: .51rem; }
.v2-incident-row p { margin: 3px 0 0; color: var(--v2-ink-3); font-size: .53rem; }
.v2-health-good { display: grid; grid-template-columns: 36px minmax(0,1fr); gap: 10px; padding: 16px 14px; }
.v2-health-good > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; color: var(--v2-green); background: var(--v2-green-soft); }
.v2-health-good strong { font-size: .62rem; }
.v2-health-good p { margin: 2px 0 0; color: var(--v2-ink-4); font-size: .53rem; }

/* Deal Intelligence */
.v2-intelligence-page { display: grid; gap: 14px; }
.v2-intelligence-hero { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 130px; gap: 28px; min-height: 210px; padding: 28px 30px; overflow: hidden; border: 1px solid rgba(117,89,232,.18); border-radius: 17px; color: #f4f4ff; background: radial-gradient(circle at 90% 5%, rgba(129,103,255,.34), transparent 31%), linear-gradient(135deg,#141725,#24203f 64%,#171925); box-shadow: 0 20px 50px rgba(24,22,42,.18); }
.v2-intelligence-hero::after { content: ""; position: absolute; right: -70px; bottom: -110px; width: 280px; height: 280px; border: 1px solid rgba(255,255,255,.09); border-radius: 50%; box-shadow: 0 0 0 40px rgba(255,255,255,.025),0 0 0 80px rgba(255,255,255,.018); }
.v2-intelligence-copy { position: relative; z-index: 1; align-self: center; }
.v2-intelligence-meta { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; color: #9b9dad; font-size: .54rem; }
.v2-intelligence-meta .v2-ai-tag { color: #d8ddff; border-color: rgba(198,205,255,.16); background: rgba(145,127,255,.15); }
.v2-intelligence-copy h2 { max-width: 930px; margin: 18px 0 9px; font-size: clamp(1.4rem,2.8vw,2.3rem); line-height: 1.13; letter-spacing: -.04em; }
.v2-intelligence-copy > p { max-width: 860px; margin: 0; color: #b8bbc9; font-size: .75rem; line-height: 1.65; }
.v2-intelligence-score { position: relative; z-index: 1; align-self: center; padding: 20px 10px; border-left: 1px solid rgba(255,255,255,.1); text-align: center; }
.v2-intelligence-score span, .v2-intelligence-score strong, .v2-intelligence-score small { display: block; }
.v2-intelligence-score span { color: #8f92a4; font-size: .55rem; text-transform: uppercase; letter-spacing: .1em; }
.v2-intelligence-score strong { margin-top: 5px; font-size: 2.3rem; line-height: 1; letter-spacing: -.05em; }
.v2-intelligence-score small { margin-top: 5px; color: #9b9dad; font-size: .52rem; }
.v2-intelligence-score i { width: 60px; height: 4px; display: block; margin: 14px auto 0; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.12); }
.v2-intelligence-score i::after { content: ""; display: block; width: var(--score); height: 100%; border-radius: inherit; background: #8da4ff; }
.v2-intel-layout { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(300px,.55fr); gap: 14px; align-items: start; }
.v2-intel-main, .v2-intel-side { display: grid; gap: 14px; }
.v2-intel-side { position: sticky; top: calc(var(--v2-topbar-height) + 16px); }
.v2-intel-quadrants { display: grid; grid-template-columns: repeat(2,1fr); }
.v2-intel-quadrants article { min-height: 210px; padding: 18px; border-top: 1px solid var(--v2-line); border-left: 1px solid var(--v2-line); }
.v2-intel-quadrants article:nth-child(odd) { border-left: 0; }
.v2-intel-quadrants article:nth-child(-n+2) { border-top: 0; }
.v2-quadrant-icon { width: 33px; height: 33px; display: grid; place-items: center; margin-bottom: 12px; border-radius: 9px; color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-quadrant-icon.violet { color: var(--v2-violet); background: color-mix(in srgb,var(--v2-violet) 9%,var(--v2-surface)); }
.v2-quadrant-icon.amber { color: var(--v2-amber); background: var(--v2-amber-soft); }
.v2-quadrant-icon.red { color: var(--v2-red); background: var(--v2-red-soft); }
.v2-quadrant-icon .mia-icon { width: 15px; height: 15px; }
.v2-intel-quadrants h3 { margin: 0 0 9px; font-size: .69rem; }
.v2-intel-quadrants ul, .v2-intel-quadrants ol { display: grid; gap: 8px; padding: 0 0 0 16px; margin: 0; color: var(--v2-ink-3); font-size: .59rem; line-height: 1.45; }
.v2-evidence-ledger { display: grid; }
.v2-evidence-ledger article { min-height: 100px; display: grid; grid-template-columns: 82px minmax(0,1fr) 28px; gap: 12px; padding: 13px 17px; border-top: 1px solid var(--v2-line); }
.v2-evidence-ledger article:first-child { border-top: 0; }
.v2-evidence-type { width: max-content; height: 22px; display: inline-flex; align-items: center; padding: 0 7px; border-radius: 6px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .5rem; font-weight: 730; text-transform: uppercase; letter-spacing: .05em; }
.v2-evidence-ledger strong, .v2-evidence-ledger small { display: block; }
.v2-evidence-ledger strong { font-size: .65rem; }
.v2-evidence-ledger small { margin-top: 2px; color: var(--v2-ink-4); font-size: .52rem; }
.v2-evidence-ledger p { margin: 6px 0 0; color: var(--v2-ink-3); font-size: .57rem; line-height: 1.55; }
.v2-evidence-ledger > article > a { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-ink-4); }
.v2-evidence-ledger > article > a:hover { color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-evidence-ledger > article > a .mia-icon { width: 13px; height: 13px; }
.v2-graph-ledger { display: grid; padding: 5px 17px 16px; }
.v2-graph-ledger article { min-height: 48px; display: grid; grid-template-columns: 70px 1fr max-content 1fr minmax(150px,1fr); align-items: center; gap: 9px; color: var(--v2-ink-4); font-size: .52rem; }
.v2-graph-ledger article > i { height: 1px; background: linear-gradient(90deg,var(--v2-line-strong),var(--v2-line)); }
.v2-graph-origin { padding: 4px 7px; border-radius: 6px; color: var(--v2-ink-2); background: var(--v2-surface-muted); font-weight: 720; text-align: center; }
.v2-graph-relation { color: var(--v2-violet); font-size: .49rem; font-weight: 760; text-transform: uppercase; letter-spacing: .06em; }
.v2-graph-ledger strong, .v2-graph-ledger small { display: block; }
.v2-graph-ledger strong { color: var(--v2-ink-2); font-size: .59rem; }
.v2-graph-ledger small { font-size: .5rem; }
.v2-action-roadmap { display: grid; padding: 5px 14px 13px; }
.v2-action-roadmap article { display: grid; grid-template-columns: 27px minmax(0,1fr); gap: 9px; padding: 10px 0; border-top: 1px solid var(--v2-line); }
.v2-action-roadmap article:first-child { border-top: 0; }
.v2-action-roadmap article > span { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 7px; color: var(--v2-accent); background: var(--v2-accent-soft); font-size: .49rem; font-weight: 760; }
.v2-action-roadmap p { margin: 2px 0 0; color: var(--v2-ink-2); font-size: .58rem; line-height: 1.45; }
.v2-agent-ledger { display: grid; }
.v2-agent-ledger article { display: grid; grid-template-columns: 29px minmax(0,1fr); align-items: center; gap: 8px; padding: 9px 14px; border-top: 1px solid var(--v2-line); }
.v2-agent-ledger article:first-child { border-top: 0; }
.v2-agent-state { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-violet); background: color-mix(in srgb,var(--v2-violet) 9%,var(--v2-surface)); }
.v2-agent-state.failed { color: var(--v2-red); background: var(--v2-red-soft); }
.v2-agent-state .mia-icon { width: 13px; height: 13px; }
.v2-agent-ledger strong, .v2-agent-ledger small { display: block; }
.v2-agent-ledger strong { font-size: .58rem; }
.v2-agent-ledger small { color: var(--v2-ink-4); font-size: .49rem; }
.v2-context-card .btn { margin: 0 14px 14px; width: calc(100% - 28px); }
.v2-intelligence-empty { min-height: 370px; display: grid; grid-template-columns: 70px minmax(0,1fr) auto; align-items: center; gap: 24px; padding: 40px; border: 1px solid var(--v2-line); border-radius: 17px; background: radial-gradient(circle at 90% 10%,rgba(117,89,232,.09),transparent 34%),var(--v2-surface); }
.v2-intelligence-empty h2 { max-width: 710px; margin: 5px 0 8px; font-size: clamp(1.4rem,2.8vw,2.25rem); line-height: 1.13; letter-spacing: -.04em; }
.v2-intelligence-empty p { max-width: 690px; margin: 0; color: var(--v2-ink-3); font-size: .7rem; line-height: 1.62; }

/* Semantic memory */
.v2-memory-page { display: grid; gap: 15px; }
.v2-memory-pulse { display: grid; grid-template-columns: repeat(3,1fr); overflow: hidden; border: 1px solid var(--v2-line); border-radius: 13px; background: var(--v2-surface); }
.v2-memory-pulse article { display: grid; grid-template-columns: 38px minmax(0,1fr); align-items: center; gap: 10px; padding: 14px 16px; border-left: 1px solid var(--v2-line); }
.v2-memory-pulse article:first-child { border-left: 0; }
.v2-memory-pulse article > span { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; color: var(--v2-violet); background: color-mix(in srgb,var(--v2-violet) 9%,var(--v2-surface)); }
.v2-memory-pulse .mia-icon { width: 16px; height: 16px; }
.v2-memory-pulse small, .v2-memory-pulse strong, .v2-memory-pulse em { display: block; }
.v2-memory-pulse small { color: var(--v2-ink-4); font-size: .53rem; text-transform: uppercase; letter-spacing: .08em; }
.v2-memory-pulse strong { font-size: .76rem; }
.v2-memory-pulse em { color: var(--v2-ink-4); font-size: .52rem; font-style: normal; }
.v2-memory-layout { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(310px,.65fr); gap: 14px; align-items: start; }
.v2-memory-search { display: grid; grid-template-columns: 22px minmax(0,1fr) auto; align-items: center; gap: 8px; margin: 16px 17px 12px; padding: 7px 7px 7px 11px; border: 1px solid var(--v2-line-strong); border-radius: 12px; background: var(--v2-surface-subtle); }
.v2-memory-search > span { color: var(--v2-ink-4); }
.v2-memory-search .mia-icon { width: 16px; height: 16px; }
.v2-memory-search input { min-height: 36px !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
.v2-search-context { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 9px; margin: 0 17px 12px; padding: 8px 10px; border-radius: 8px; color: var(--v2-ink-3); background: var(--v2-surface-muted); font-size: .55rem; }
.v2-search-context > span { color: var(--v2-ink-4); text-transform: uppercase; letter-spacing: .07em; }
.v2-search-context strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v2-search-context small { color: var(--v2-ink-4); }
.v2-memory-results { display: grid; }
.v2-memory-results > article { display: grid; grid-template-columns: 64px minmax(0,1fr); gap: 14px; padding: 15px 17px; border-top: 1px solid var(--v2-line); }
.v2-result-score { text-align: center; }
.v2-result-score strong, .v2-result-score span { display: block; }
.v2-result-score strong { font-size: .86rem; }
.v2-result-score span { color: var(--v2-ink-4); font-size: .46rem; text-transform: uppercase; letter-spacing: .06em; }
.v2-memory-results h3 { margin: 5px 0 1px; font-size: .68rem; }
.v2-memory-results article small { color: var(--v2-ink-4); font-size: .52rem; }
.v2-memory-results article p { margin: 6px 0 5px; color: var(--v2-ink-3); font-size: .58rem; line-height: 1.55; }
.v2-memory-prompt-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; padding: 17px; }
.v2-memory-prompt-grid button { min-height: 150px; display: flex; flex-direction: column; align-items: flex-start; padding: 14px; border: 1px solid var(--v2-line); border-radius: 11px; color: var(--v2-ink); background: var(--v2-surface-subtle); cursor: pointer; text-align: left; }
.v2-memory-prompt-grid button:hover { transform: translateY(-1px); border-color: var(--v2-line-strong); background: var(--v2-surface); box-shadow: var(--v2-shadow-sm); }
.v2-memory-prompt-grid button > span { width: 33px; height: 33px; display: grid; place-items: center; margin-bottom: auto; border-radius: 9px; color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-memory-prompt-grid .mia-icon { width: 15px; height: 15px; }
.v2-memory-prompt-grid strong { margin-top: 15px; font-size: .63rem; }
.v2-memory-prompt-grid small { margin-top: 2px; color: var(--v2-ink-4); font-size: .52rem; }
.v2-memory-stream { position: sticky; top: calc(var(--v2-topbar-height) + 16px); }
.v2-chunk-ledger { display: grid; }
.v2-chunk-ledger article { display: grid; grid-template-columns: 30px minmax(0,1fr) auto; gap: 8px; padding: 10px 14px; border-top: 1px solid var(--v2-line); }
.v2-chunk-ledger article:first-child { border-top: 0; }
.v2-chunk-icon { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-violet); background: color-mix(in srgb,var(--v2-violet) 9%,var(--v2-surface)); }
.v2-chunk-icon .mia-icon { width: 13px; height: 13px; }
.v2-chunk-ledger strong, .v2-chunk-ledger small, .v2-chunk-ledger p { display: block; }
.v2-chunk-ledger strong { font-size: .57rem; }
.v2-chunk-ledger small { color: var(--v2-ink-4); font-size: .49rem; }
.v2-chunk-ledger p { margin: 3px 0 0; color: var(--v2-ink-3); font-size: .51rem; }
.v2-chunk-ledger time { color: var(--v2-ink-4); font-size: .48rem; }
.v2-memory-note { display: grid; grid-template-columns: 25px minmax(0,1fr); gap: 7px; padding: 11px 14px; border-top: 1px solid var(--v2-line); color: var(--v2-ink-4); background: var(--v2-surface-subtle); }
.v2-memory-note .mia-icon { width: 13px; height: 13px; }
.v2-memory-note p { margin: 0; font-size: .51rem; line-height: 1.45; }

/* NDA */
.v2-nda-page { display: grid; gap: 14px; }
.v2-nda-status { display: grid; grid-template-columns: minmax(130px,1fr) minmax(30px,.35fr) minmax(130px,1fr) minmax(30px,.35fr) minmax(130px,1fr) auto; align-items: center; gap: 9px; padding: 12px 15px; border: 1px solid var(--v2-line); border-radius: 13px; background: var(--v2-surface); }
.v2-nda-status article { display: grid; grid-template-columns: 31px minmax(0,1fr); align-items: center; gap: 8px; opacity: .48; }
.v2-nda-status article.active, .v2-nda-status article.complete { opacity: 1; }
.v2-nda-status article > span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-ink-4); background: var(--v2-surface-muted); }
.v2-nda-status article.complete > span { color: var(--v2-green); background: var(--v2-green-soft); }
.v2-nda-status article.active > span { color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-nda-status article .mia-icon { width: 14px; height: 14px; }
.v2-nda-status article strong, .v2-nda-status article small { display: block; }
.v2-nda-status article strong { font-size: .6rem; }
.v2-nda-status article small { color: var(--v2-ink-4); font-size: .49rem; }
.v2-nda-status > i { height: 1px; background: var(--v2-line-strong); }
.v2-nda-layout { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(310px,.55fr); gap: 14px; align-items: start; }
.v2-nda-editor { padding-bottom: 0; }
.v2-nda-editor .v2-form-stack { padding: 17px 18px 18px; }
.v2-nda-editor textarea { min-height: 440px; font-family: ui-monospace,SFMono-Regular,Menlo,monospace; font-size: .63rem; line-height: 1.62; }
.v2-nda-side { display: grid; gap: 14px; position: sticky; top: calc(var(--v2-topbar-height) + 16px); }
.v2-panel-copy { margin: 0; padding: 13px 14px 0; color: var(--v2-ink-3); font-size: .57rem; line-height: 1.5; }
.v2-signature-form { display: grid; gap: 10px; padding: 13px 14px; }
.v2-signature-form label span { display: block; margin-bottom: 5px; color: var(--v2-ink-3); font-size: .58rem; font-weight: 650; }
.v2-envelope-ledger { display: grid; }
.v2-envelope-ledger article { display: grid; grid-template-columns: 32px minmax(0,1fr) auto; align-items: center; gap: 8px; padding: 9px 14px; border-top: 1px solid var(--v2-line); }
.v2-envelope-ledger strong, .v2-envelope-ledger small { display: block; }
.v2-envelope-ledger strong { font-size: .57rem; }
.v2-envelope-ledger small { color: var(--v2-ink-4); font-size: .48rem; }
.v2-legal-note, .v2-governance-note { display: grid; grid-template-columns: 31px minmax(0,1fr); gap: 9px; padding: 13px; border: 1px solid rgba(166,102,14,.14); border-radius: 12px; color: var(--v2-amber); background: var(--v2-amber-soft); }
.v2-legal-note > span, .v2-governance-note > span { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 8px; background: rgba(255,255,255,.55); }
.v2-legal-note .mia-icon, .v2-governance-note .mia-icon { width: 14px; height: 14px; }
.v2-legal-note p, .v2-governance-note p { margin: 1px 0 0; color: color-mix(in srgb,var(--v2-amber) 72%,var(--v2-ink-3)); font-size: .54rem; line-height: 1.5; }
.v2-governance-note { color: var(--v2-accent); border-color: rgba(49,94,251,.14); background: var(--v2-accent-soft); }
.v2-governance-note strong { display: block; font-size: .59rem; }
.v2-governance-note p { color: var(--v2-ink-3); }

/* Workflow surfaces */
.v2-workflow-page, .v2-workflow-detail { display: grid; gap: 14px; }
.v2-workflow-pulse { display: grid; grid-template-columns: repeat(3,1fr); overflow: hidden; border: 1px solid var(--v2-line); border-radius: 13px; background: var(--v2-surface); }
.v2-workflow-pulse article { padding: 14px 16px; border-left: 1px solid var(--v2-line); }
.v2-workflow-pulse article:first-child { border-left: 0; }
.v2-workflow-pulse small, .v2-workflow-pulse strong, .v2-workflow-pulse span { display: block; }
.v2-workflow-pulse small { color: var(--v2-ink-4); font-size: .53rem; text-transform: uppercase; letter-spacing: .08em; }
.v2-workflow-pulse strong { margin-top: 2px; font-size: .83rem; }
.v2-workflow-pulse span { color: var(--v2-ink-4); font-size: .52rem; }
.v2-workflow-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items: start; }
.v2-template-list, .v2-instance-list { display: grid; }
.v2-template-list article { min-height: 105px; display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 11px; padding: 13px 17px; border-top: 1px solid var(--v2-line); }
.v2-template-list article:first-child { border-top: 0; }
.v2-template-icon, .v2-instance-state { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; color: var(--v2-amber); background: var(--v2-amber-soft); }
.v2-template-icon .mia-icon, .v2-instance-state .mia-icon { width: 16px; height: 16px; }
.v2-template-title { display: flex; align-items: center; gap: 7px; }
.v2-template-title strong { font-size: .65rem; }
.v2-template-list small { display: block; margin-top: 2px; color: var(--v2-ink-4); font-size: .51rem; }
.v2-template-list p { margin: 7px 0 0; color: var(--v2-ink-3); font-size: .55rem; line-height: 1.5; }
.v2-instance-list > a { min-height: 70px; display: grid; grid-template-columns: 36px minmax(0,1fr) auto 18px; align-items: center; gap: 10px; padding: 10px 14px; border-top: 1px solid var(--v2-line); color: var(--v2-ink); text-decoration: none; }
.v2-instance-list > a:first-child { border-top: 0; }
.v2-instance-list > a:hover { background: var(--v2-surface-subtle); }
.v2-instance-state.running { color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-instance-state.completed { color: var(--v2-green); background: var(--v2-green-soft); }
.v2-instance-state.failed { color: var(--v2-red); background: var(--v2-red-soft); }
.v2-instance-list strong, .v2-instance-list small { display: block; }
.v2-instance-list strong { font-size: .61rem; }
.v2-instance-list small { color: var(--v2-ink-4); font-size: .51rem; }
.v2-row-arrow { color: var(--v2-ink-4); }
.v2-row-arrow .mia-icon { width: 14px; height: 14px; }
.v2-workflow-controller { display: grid; grid-template-columns: minmax(0,1fr) minmax(220px,.55fr) auto; align-items: center; gap: 22px; padding: 19px 20px; border: 1px solid var(--v2-line); border-radius: 14px; background: linear-gradient(135deg,var(--v2-surface),var(--v2-surface-subtle)); }
.v2-workflow-controller > div:first-child > span { color: var(--v2-ink-4); font-size: .53rem; text-transform: uppercase; letter-spacing: .08em; }
.v2-workflow-controller h2 { margin: 3px 0 2px; font-size: .87rem; }
.v2-workflow-controller p { margin: 0; color: var(--v2-ink-3); font-size: .56rem; }
.v2-workflow-progress > span { height: 7px; display: block; overflow: hidden; border-radius: 999px; background: var(--v2-surface-muted); }
.v2-workflow-progress i { height: 100%; display: block; border-radius: inherit; background: linear-gradient(90deg,var(--v2-accent),var(--v2-violet)); }
.v2-workflow-progress small { display: block; margin-top: 6px; color: var(--v2-ink-4); font-size: .5rem; text-align: right; }
.v2-decision-actions { display: flex; align-items: center; gap: 7px; }
.v2-workflow-detail-layout { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(300px,.5fr); gap: 14px; align-items: start; }
.v2-workflow-side { display: grid; gap: 14px; position: sticky; top: calc(var(--v2-topbar-height) + 16px); }
.v2-workflow-timeline { display: grid; padding: 9px 18px 18px; }
.v2-workflow-timeline article { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 12px; min-height: 82px; }
.v2-step-marker { position: relative; display: flex; justify-content: center; }
.v2-step-marker > span { position: relative; z-index: 1; width: 29px; height: 29px; display: grid; place-items: center; border: 1px solid var(--v2-line); border-radius: 9px; color: var(--v2-ink-4); background: var(--v2-surface); font-size: .49rem; font-weight: 760; }
.v2-step-marker > i { position: absolute; top: 31px; bottom: 0; width: 1px; background: var(--v2-line); }
.v2-workflow-timeline article:last-child .v2-step-marker > i { display: none; }
.v2-step-marker.succeeded > span { color: var(--v2-green); border-color: rgba(15,147,102,.14); background: var(--v2-green-soft); }
.v2-step-marker.running > span, .v2-step-marker.waiting > span { color: var(--v2-accent); border-color: rgba(49,94,251,.14); background: var(--v2-accent-soft); }
.v2-step-marker.failed > span { color: var(--v2-red); border-color: rgba(201,65,65,.14); background: var(--v2-red-soft); }
.v2-step-marker .mia-icon { width: 13px; height: 13px; }
.v2-step-copy { padding: 4px 0 20px; }
.v2-step-copy > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.v2-step-copy strong { font-size: .63rem; }
.v2-step-copy small { display: block; margin-top: 2px; color: var(--v2-ink-4); font-size: .51rem; }
.v2-step-copy p { margin: 5px 0 0; color: var(--v2-ink-3); font-size: .54rem; }
.v2-step-error { margin-top: 7px; padding: 8px 9px; border-radius: 7px; color: var(--v2-red); background: var(--v2-red-soft); font-size: .53rem; }

/* Response Intelligence */
.v2-response-page { display: grid; gap: 14px; }
.v2-response-layout { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(340px,.55fr); gap: 14px; align-items: start; }
.v2-message-meta { display: grid; grid-template-columns: repeat(3,1fr); overflow: hidden; margin: 14px 17px; border: 1px solid var(--v2-line); border-radius: 10px; }
.v2-message-meta > span { padding: 9px 10px; border-left: 1px solid var(--v2-line); }
.v2-message-meta > span:first-child { border-left: 0; }
.v2-message-meta small, .v2-message-meta strong { display: block; }
.v2-message-meta small { color: var(--v2-ink-4); font-size: .49rem; text-transform: uppercase; letter-spacing: .06em; }
.v2-message-meta strong { margin-top: 2px; overflow: hidden; font-size: .56rem; text-overflow: ellipsis; white-space: nowrap; }
.v2-mail-document { margin: 0 17px 17px; padding: 28px 32px; border: 1px solid var(--v2-line); border-radius: 11px; color: #24262a; background: #fff; box-shadow: inset 0 0 0 1px rgba(15,23,42,.015); font-family: Arial,sans-serif; font-size: 13px; line-height: 1.62; }
.v2-reply-capture { position: sticky; top: calc(var(--v2-topbar-height) + 16px); }
.v2-reply-capture .v2-form-stack { padding: 15px 16px 16px; }
.v2-reply-capture textarea { min-height: 300px; }
.v2-classification-preview { display: grid; grid-template-columns: 32px minmax(0,1fr); gap: 9px; padding: 10px; border: 1px solid rgba(117,89,232,.12); border-radius: 9px; background: color-mix(in srgb,var(--v2-violet) 6%,var(--v2-surface)); }
.v2-classification-preview > span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: var(--v2-violet); background: color-mix(in srgb,var(--v2-violet) 11%,var(--v2-surface)); }
.v2-classification-preview .mia-icon { width: 14px; height: 14px; }
.v2-classification-preview strong { display: block; font-size: .57rem; }
.v2-classification-preview p { margin: 2px 0 0; color: var(--v2-ink-4); font-size: .51rem; }
.v2-reply-capture > footer { display: flex; align-items: center; gap: 6px; padding: 10px 16px; border-top: 1px solid var(--v2-line); color: var(--v2-ink-4); background: var(--v2-surface-subtle); font-size: .5rem; }
.v2-reply-capture > footer .mia-icon { width: 12px; height: 12px; }

/* Background operations */
.v2-job-page { max-width: 1120px; display: grid; gap: 15px; margin: 0 auto; }
.v2-job-console { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 16px; background: var(--v2-surface); box-shadow: var(--v2-shadow-sm); }
.v2-job-state-zone { min-height: 126px; display: grid; grid-template-columns: 54px minmax(0,1fr) auto; align-items: center; gap: 15px; padding: 22px 24px 17px; }
.v2-job-orb { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 15px; color: var(--v2-ink-4); background: var(--v2-surface-muted); }
.v2-job-orb.running { color: var(--v2-accent); background: var(--v2-accent-soft); }
.v2-job-orb.succeeded { color: var(--v2-green); background: var(--v2-green-soft); }
.v2-job-orb.failed { color: var(--v2-red); background: var(--v2-red-soft); }
.v2-job-orb .mia-icon { width: 22px; height: 22px; }
.v2-job-orb > i { width: 22px; height: 22px; border: 2px solid rgba(49,94,251,.18); border-top-color: var(--v2-accent); border-radius: 50%; animation: v2-spin .8s linear infinite; }
.v2-job-state-zone > div > span, .v2-job-state-zone > div > strong, .v2-job-state-zone > div > small { display: block; }
.v2-job-state-zone > div > span { color: var(--v2-ink-4); font-size: .55rem; text-transform: uppercase; letter-spacing: .08em; }
.v2-job-state-zone > div > strong { margin-top: 3px; font-size: .78rem; }
.v2-job-state-zone > div > small { margin-top: 3px; color: var(--v2-ink-4); font-size: .54rem; }
.v2-job-state-zone > em { color: var(--v2-accent); font-size: 1.35rem; font-style: normal; font-weight: 760; letter-spacing: -.04em; }
.v2-job-progress { padding: 0 24px 18px; }
.v2-job-progress > span { height: 7px; display: block; overflow: hidden; border-radius: 999px; background: var(--v2-surface-muted); }
.v2-job-progress > span i { height: 100%; display: block; border-radius: inherit; background: linear-gradient(90deg,var(--v2-accent),var(--v2-violet)); transition: width .35s var(--v2-ease); }
.v2-job-progress > div { display: flex; justify-content: space-between; margin-top: 6px; color: var(--v2-ink-4); font-size: .48rem; }
.v2-job-metadata { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--v2-line); border-bottom: 1px solid var(--v2-line); background: var(--v2-surface-subtle); }
.v2-job-metadata article { padding: 11px 15px; border-left: 1px solid var(--v2-line); }
.v2-job-metadata article:first-child { border-left: 0; }
.v2-job-metadata small, .v2-job-metadata strong { display: block; }
.v2-job-metadata small { color: var(--v2-ink-4); font-size: .49rem; text-transform: uppercase; letter-spacing: .06em; }
.v2-job-metadata strong { margin-top: 3px; font-size: .57rem; }
.v2-job-outcome { display: grid; grid-template-columns: 39px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 17px 24px; }
.v2-job-outcome > span { width: 37px; height: 37px; display: grid; place-items: center; border-radius: 10px; color: var(--v2-green); background: var(--v2-green-soft); }
.v2-job-outcome.failed > span { color: var(--v2-red); background: var(--v2-red-soft); }
.v2-job-outcome > span .mia-icon { width: 17px; height: 17px; }
.v2-job-outcome small, .v2-job-outcome strong { display: block; }
.v2-job-outcome small { color: var(--v2-ink-4); font-size: .51rem; text-transform: uppercase; letter-spacing: .06em; }
.v2-job-outcome strong { margin-top: 2px; font-size: .65rem; }
.v2-job-outcome p { margin: 3px 0 0; color: var(--v2-ink-3); font-size: .54rem; }
.v2-job-outcome-actions { display: flex; gap: 7px; }
.v2-technical-detail { margin-top: 8px; }
.v2-technical-detail summary { color: var(--v2-ink-4); cursor: pointer; font-size: .52rem; }
.v2-technical-detail code { display: block; max-height: 150px; margin-top: 6px; padding: 9px; overflow: auto; border-radius: 7px; color: var(--v2-red); background: var(--v2-red-soft); font-size: .51rem; }
.v2-job-note { display: flex; align-items: center; justify-content: center; gap: 6px; color: var(--v2-ink-4); font-size: .53rem; }
.v2-job-note .mia-icon { width: 12px; height: 12px; }
.v2-job-note p { margin: 0; }

/* MIA Copilot 2.0 */
.v2-copilot { width: min(470px,100vw) !important; background: var(--v2-surface) !important; }
.v2-copilot-inner { height: 100%; display: grid; grid-template-rows: auto auto minmax(0,1fr) auto; color: var(--v2-ink); background: var(--v2-surface); }
.v2-copilot-head { min-height: 66px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; border-bottom: 1px solid var(--v2-line); }
.v2-copilot-identity { display: grid; grid-template-columns: 35px minmax(0,1fr); align-items: center; gap: 9px; min-width: 0; }
.v2-copilot-identity > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; color: var(--v2-violet); background: color-mix(in srgb,var(--v2-violet) 10%,var(--v2-surface)); }
.v2-copilot-identity .mia-icon { width: 16px; height: 16px; }
.v2-copilot-identity small, .v2-copilot-identity strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v2-copilot-identity small { color: var(--v2-ink-4); font-size: .49rem; text-transform: uppercase; letter-spacing: .08em; }
.v2-copilot-identity strong { font-size: .66rem; }
.v2-copilot-context { display: grid; grid-template-columns: 20px minmax(0,1fr); gap: 6px; padding: 8px 14px; border-bottom: 1px solid var(--v2-line); color: var(--v2-ink-4); background: var(--v2-surface-subtle); }
.v2-copilot-context .mia-icon { width: 12px; height: 12px; }
.v2-copilot-context p { margin: 0; font-size: .5rem; line-height: 1.45; }
.v2-copilot-messages { min-height: 0; padding: 15px 14px; overflow-y: auto; }
.v2-copilot-message { display: grid; gap: 5px; margin-bottom: 16px; }
.v2-copilot-role { display: flex; align-items: center; gap: 6px; }
.v2-copilot-role > span { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 7px; color: var(--v2-violet); background: color-mix(in srgb,var(--v2-violet) 10%,var(--v2-surface)); }
.v2-copilot-role > span.human { color: var(--v2-ink-2); background: var(--v2-surface-muted); font-size: .49rem; font-weight: 760; }
.v2-copilot-role .mia-icon { width: 11px; height: 11px; }
.v2-copilot-role strong { font-size: .53rem; }
.v2-copilot-message.user .v2-copilot-role { justify-content: flex-end; }
.v2-copilot-bubble { max-width: 91%; padding: 10px 11px; border: 1px solid var(--v2-line); border-radius: 4px 12px 12px 12px; color: var(--v2-ink-2); background: var(--v2-surface-subtle); font-size: .61rem; line-height: 1.55; }
.v2-copilot-message.user .v2-copilot-bubble { justify-self: end; border-radius: 12px 4px 12px 12px; color: #fff; border-color: var(--v2-accent); background: var(--v2-accent); }
.v2-copilot-bubble p { margin: 0 0 7px; }
.v2-copilot-bubble p:last-child { margin-bottom: 0; }
.v2-copilot-bubble details { margin-top: 8px; padding-top: 7px; border-top: 1px solid var(--v2-line); }
.v2-copilot-bubble summary { color: var(--v2-accent); cursor: pointer; font-size: .51rem; }
.v2-copilot-bubble details small { display: block; margin-top: 4px; color: var(--v2-ink-4); font-size: .48rem; }
.v2-copilot-empty { min-height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 25px 10px; text-align: center; }
.v2-copilot-empty h3 { margin: 13px 0 4px; font-size: .83rem; }
.v2-copilot-empty > p { max-width: 320px; margin: 0; color: var(--v2-ink-4); font-size: .56rem; }
.v2-copilot-empty > div { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin-top: 14px; }
.v2-copilot-empty button { padding: 6px 9px; border: 1px solid var(--v2-line); border-radius: 999px; color: var(--v2-ink-3); background: var(--v2-surface); cursor: pointer; font-size: .53rem; }
.v2-copilot-empty button:hover { color: var(--v2-accent); border-color: rgba(49,94,251,.24); background: var(--v2-accent-soft); }
.v2-copilot-composer { padding: 10px 12px 12px; border-top: 1px solid var(--v2-line); background: var(--v2-surface); }
.v2-copilot-composer textarea { min-height: 86px; border-radius: 11px; }
.v2-copilot-composer > div { display: flex; align-items: center; justify-content: space-between; gap: 9px; margin-top: 7px; }
.v2-copilot-composer > div > span { color: var(--v2-ink-4); font-size: .47rem; }

/* Responsive finishing */
@media (max-width: 1180px) {
  .v2-operations-layout, .v2-intel-layout, .v2-memory-layout, .v2-nda-layout, .v2-workflow-detail-layout, .v2-response-layout { grid-template-columns: 1fr; }
  .v2-ops-side { grid-template-columns: repeat(2,1fr); }
  .v2-health-panel { grid-column: 1 / -1; }
  .v2-intel-side, .v2-memory-stream, .v2-nda-side, .v2-workflow-side, .v2-reply-capture { position: static; }
  .v2-intel-side, .v2-nda-side, .v2-workflow-side { grid-template-columns: repeat(2,1fr); }
  .v2-next-action-panel, .v2-context-card, .v2-legal-note, .v2-governance-note { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
  .v2-page-hero, .v2-deal-subheader { align-items: flex-start; flex-direction: column; }
  .v2-ops-pulse { grid-template-columns: repeat(2,1fr); }
  .v2-ops-pulse article:nth-child(3) { border-left: 0; }
  .v2-ops-pulse article:nth-child(n+3) { border-top: 1px solid var(--v2-line); }
  .v2-memory-pulse, .v2-workflow-pulse { grid-template-columns: 1fr; }
  .v2-memory-pulse article, .v2-workflow-pulse article { border-left: 0; border-top: 1px solid var(--v2-line); }
  .v2-memory-pulse article:first-child, .v2-workflow-pulse article:first-child { border-top: 0; }
  .v2-workflow-layout { grid-template-columns: 1fr; }
  .v2-intelligence-hero { grid-template-columns: 1fr; }
  .v2-intelligence-score { display: grid; grid-template-columns: repeat(3,auto); align-items: center; gap: 8px; padding: 12px 0 0; border-top: 1px solid rgba(255,255,255,.1); border-left: 0; text-align: left; }
  .v2-intelligence-score i { display: none; }
  .v2-workflow-controller { grid-template-columns: 1fr; }
  .v2-decision-actions { justify-content: flex-start; }
  .v2-job-metadata { grid-template-columns: repeat(2,1fr); }
  .v2-job-metadata article:nth-child(3) { border-left: 0; border-top: 1px solid var(--v2-line); }
  .v2-job-metadata article:nth-child(4) { border-top: 1px solid var(--v2-line); }
  .v2-nda-status { grid-template-columns: 1fr; }
  .v2-nda-status > i { display: none; }
  .v2-nda-status article { min-height: 44px; }
}
@media (max-width: 680px) {
  .v2-ops-pulse, .v2-ops-side, .v2-intel-side, .v2-nda-side, .v2-workflow-side, .v2-intel-quadrants, .v2-memory-prompt-grid, .v2-message-meta { grid-template-columns: 1fr; }
  .v2-ops-pulse article { border-left: 0; border-top: 1px solid var(--v2-line); }
  .v2-ops-pulse article:first-child { border-top: 0; }
  .v2-health-panel, .v2-next-action-panel, .v2-context-card, .v2-legal-note, .v2-governance-note { grid-column: auto; }
  .v2-intel-quadrants article { min-height: auto; border-left: 0; }
  .v2-intel-quadrants article:nth-child(2) { border-top: 1px solid var(--v2-line); }
  .v2-evidence-ledger article { grid-template-columns: 1fr; }
  .v2-graph-ledger article { grid-template-columns: 56px 20px max-content 20px minmax(110px,1fr); }
  .v2-deal-subidentity { grid-template-columns: 42px minmax(0,1fr); }
  .v2-deal-subidentity > a { grid-column: 1 / -1; }
  .v2-deal-subidentity > span { width: 42px; height: 42px; }
  .v2-job-state-zone { grid-template-columns: 44px minmax(0,1fr); padding: 17px; }
  .v2-job-state-zone > em { grid-column: 1 / -1; justify-self: end; }
  .v2-job-orb { width: 42px; height: 42px; }
  .v2-job-metadata { grid-template-columns: 1fr; }
  .v2-job-metadata article { border-left: 0; border-top: 1px solid var(--v2-line); }
  .v2-job-metadata article:first-child { border-top: 0; }
  .v2-job-outcome { grid-template-columns: 36px minmax(0,1fr); padding: 15px 17px; }
  .v2-job-outcome-actions { grid-column: 1 / -1; }
  .v2-form-actions { align-items: flex-start; flex-direction: column; }
  .v2-message-meta > span { border-left: 0; border-top: 1px solid var(--v2-line); }
  .v2-message-meta > span:first-child { border-top: 0; }
  .v2-mail-document { padding: 20px 18px; }
}

/* Deal dossier and journey finishing */
.deal-dossier-header { grid-template-columns: minmax(0,1fr); }
.deal-journey-v12 { overflow-x: auto; scrollbar-width: thin; }
.journey-v12-step.completed { color: var(--v2-green); }
.journey-v12-step.completed .journey-v12-node { color: #fff; border-color: var(--v2-green); background: var(--v2-green); box-shadow: 0 0 0 4px color-mix(in srgb,var(--v2-green) 12%,transparent); }
.journey-v12-step.completed::after { background: var(--v2-green); }
.journey-v12-step.current { color: var(--v2-accent); }
.journey-v12-step.current .journey-v12-node { color: #fff; border-color: var(--v2-accent); background: var(--v2-accent); box-shadow: 0 0 0 5px color-mix(in srgb,var(--v2-accent) 14%,transparent); }
.journey-v12-step.current::after { background: linear-gradient(90deg,var(--v2-accent),var(--v2-line-strong)); }
.journey-v12-step.attention { color: var(--v2-amber); }
.journey-v12-step.attention .journey-v12-node { color: #fff; border-color: var(--v2-amber); background: var(--v2-amber); box-shadow: 0 0 0 4px color-mix(in srgb,var(--v2-amber) 12%,transparent); }
.journey-v12-step.blocked { color: var(--v2-ink-4); }
.journey-v12-step.blocked .journey-v12-node { color: var(--v2-ink-4); border-color: var(--v2-line-strong); background: var(--v2-surface-muted); }
