*{box-sizing:border-box}
:root{
  --bg:#0f1115;--panel:#151923;--muted:#8892a6;--txt:#e6ecff;--accent:#7aa2f7;
  --ok:#46d27a;--warn:#ffd166;--block:#ef476f;--chip:#1b2130;
}
html,body{height:100%}
body{margin:0;background:linear-gradient(180deg,#0d0f14,#0b0d12);color:var(--txt);font:14px/1.45 Inter,system-ui,-apple-system,Segoe UI,Roboto;min-height:100vh}
body.no-js #app{display:flex}
body.no-js #app[hidden]{display:flex}
body.no-js .landing-hero{display:none}
.no-js-notice{margin:0;padding:16px 24px;background:rgba(16,22,36,.92);border-bottom:1px solid #1d2230;color:#dbe3ff;text-align:center;font-size:14px;line-height:1.6;font-weight:600;letter-spacing:.01em}
.landing-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:80px;min-height:100vh;padding:96px clamp(2rem,6vw,6rem) 72px;background:linear-gradient(180deg,rgba(18,23,38,.9),rgba(12,15,23,.92));overflow:hidden;transition:opacity .45s ease,transform .45s ease}
.landing-hero::before{content:"";position:absolute;inset:-20%;background:radial-gradient(120% 120% at 10% 10%,rgba(122,162,247,.32),transparent 58%),radial-gradient(90% 110% at 82% 30%,rgba(124,58,237,.3),transparent 68%),radial-gradient(120% 120% at 55% 90%,rgba(70,210,122,.12),transparent 62%);z-index:0;filter:blur(0)}
.landing-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(11,14,22,.82),rgba(9,12,20,.92));opacity:.92;z-index:0}
.landing-hero.is-hidden{opacity:0;transform:translateY(16px);visibility:hidden;pointer-events:none}
@media (prefers-reduced-motion:reduce){.landing-hero{transition:none}.landing-hero.is-hidden{transform:none}}
.landing-hero__content{position:relative;z-index:1;max-width:clamp(560px,48vw,680px);display:flex;flex-direction:column;gap:24px}
.landing-hero__brand{margin:0;width:120px;display:flex;align-items:flex-start}
.landing-hero__brand img{display:block;width:100%;height:auto}
.landing-hero__eyebrow{margin:0;font-size:13px;letter-spacing:.26em;text-transform:uppercase;color:rgba(166,185,255,.82)}
.landing-hero__headline{margin:0;font-size:clamp(2.6rem,4vw+1rem,3.6rem);line-height:1.08;color:#f6f8ff;text-shadow:0 30px 70px rgba(8,11,22,.7)}
.landing-hero__lead{margin:0;font-size:16px;line-height:1.6;color:#a6b4d9;max-width:48ch}
.landing-hero__actions{display:flex;flex-wrap:wrap;gap:12px}
.landing-hero__meta{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:12px;color:#8b96b4}
.landing-hero__meta-item{display:inline-flex;align-items:center;gap:8px}
.landing-hero__meta-item--highlight{color:#cbd5ff;font-weight:600}
.landing-hero__cta{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border-radius:999px;border:1px solid rgba(122,162,247,.35);background:rgba(17,23,36,.78);color:#dbe3ff;font-size:14px;font-weight:600;letter-spacing:.02em;cursor:pointer;box-shadow:0 16px 38px rgba(8,12,24,.42);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.landing-hero__cta:hover{transform:translateY(-2px);box-shadow:0 20px 46px rgba(8,12,24,.56);border-color:rgba(122,162,247,.55)}
.landing-hero__cta:focus-visible{outline:2px solid rgba(138,168,255,.8);outline-offset:3px}
.landing-hero__cta--primary{background:linear-gradient(180deg,#7c3aed,#5c30d6);border-color:rgba(139,110,255,.65);color:#f8f5ff;box-shadow:0 24px 52px rgba(88,60,200,.48)}
.landing-hero__cta--primary:hover{background:linear-gradient(180deg,#8b4efd,#6336e2);border-color:rgba(149,120,255,.78);box-shadow:0 28px 58px rgba(88,60,200,.58)}
.landing-hero__cta--secondary{background:linear-gradient(180deg,rgba(26,34,54,.96),rgba(14,20,34,.92));border-color:rgba(122,162,247,.45)}
.landing-hero__cta--ghost{background:transparent;border-color:rgba(122,162,247,.25);color:#b5c3ff;box-shadow:none}
.landing-hero__cta--audio{background:linear-gradient(180deg,rgba(28,36,58,.94),rgba(16,22,36,.9));border-color:rgba(122,162,247,.45);color:#dbe3ff}
.landing-hero__cta--audio:hover{border-color:rgba(122,162,247,.65);background:linear-gradient(180deg,rgba(32,42,68,.98),rgba(18,24,40,.92))}
.landing-hero__cta--audio.is-playing{background:linear-gradient(180deg,#24b485,#19846c);border-color:rgba(70,210,122,.65);box-shadow:0 24px 52px rgba(18,160,114,.38);color:#f2fff9}
.landing-hero__cta--audio.is-playing:hover{border-color:rgba(82,218,152,.82);background:linear-gradient(180deg,#28c892,#1f9278)}
.landing-hero__audio{position:relative;display:inline-flex;flex-direction:column;align-items:stretch}
.landing-hero__audio .landing-hero__cta--audio{width:100%}
.landing-hero__audio-controls{display:flex;align-items:stretch;gap:10px}
.landing-hero__audio-controls .landing-hero__cta--audio{flex:1 1 auto;min-width:0}
.landing-hero__audio-controls .landing-hero__cta--rewind{flex:0 0 auto}
.landing-hero__cta--rewind{background:linear-gradient(180deg,rgba(22,30,48,.92),rgba(14,20,34,.9));border-color:rgba(122,162,247,.38);color:#d6e0ff;box-shadow:0 12px 28px rgba(8,12,24,.4);padding:12px 18px;white-space:nowrap}
.landing-hero__cta--rewind:hover{border-color:rgba(122,162,247,.56);background:linear-gradient(180deg,rgba(26,34,54,.96),rgba(16,22,36,.92))}
.landing-hero__cta-icon{display:inline-flex;align-items:flex-end;gap:4px;margin-right:12px}
.landing-hero__cta-icon span{display:block;width:4px;height:12px;border-radius:999px;background:rgba(138,168,255,.72);transform-origin:center bottom;transition:transform .18s ease,background .18s ease}
.landing-hero__cta-text{display:inline-flex;align-items:center;gap:8px}
.landing-hero__cta-caret{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:14px;border-radius:999px;background:rgba(122,162,247,.16);border:1px solid rgba(122,162,247,.22);cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease}
.landing-hero__cta-caret::after{content:"";width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid rgba(177,196,255,.88);transition:transform .18s ease}
.landing-hero__cta--audio:hover .landing-hero__cta-caret{background:rgba(122,162,247,.22);border-color:rgba(122,162,247,.35)}
.landing-hero__cta--audio.is-open .landing-hero__cta-caret{background:rgba(122,162,247,.26);border-color:rgba(122,162,247,.45)}
.landing-hero__cta--audio.is-open .landing-hero__cta-caret::after{transform:rotate(180deg)}
.landing-hero__speed-menu{position:absolute;top:100%;left:0;margin-top:12px;display:flex;flex-direction:column;gap:6px;min-width:220px;padding:14px;border-radius:18px;background:linear-gradient(180deg,rgba(20,26,40,.96),rgba(13,18,32,.94));border:1px solid rgba(66,78,112,.55);box-shadow:0 22px 48px rgba(6,10,22,.62);opacity:0;transform:translateY(-8px) scale(.98);pointer-events:none;visibility:hidden;transition:opacity .18s ease,transform .18s ease,visibility .18s ease;z-index:10}
.landing-hero__audio.is-open .landing-hero__speed-menu{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;visibility:visible}
.landing-hero__speed-option{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:12px;border:1px solid transparent;background:rgba(18,24,36,.6);color:#dbe3ff;font-size:13px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.landing-hero__speed-option:hover{background:rgba(122,162,247,.14);border-color:rgba(122,162,247,.24)}
.landing-hero__speed-option:focus-visible{outline:2px solid rgba(138,168,255,.7);outline-offset:2px}
.landing-hero__speed-option.is-active,.landing-hero__speed-option[aria-pressed="true"]{background:rgba(122,162,247,.22);border-color:rgba(122,162,247,.35);color:#f4f7ff;box-shadow:inset 0 0 0 1px rgba(122,162,247,.22)}
.landing-hero__audio.is-open .landing-hero__cta--audio{box-shadow:0 24px 52px rgba(8,12,24,.56)}
.landing-hero__audio.is-open .landing-hero__cta--audio:hover{transform:none}
.landing-hero__cta--audio.is-playing .landing-hero__cta-icon span{animation:hero-audio-bar 1.2s ease-in-out infinite;background:rgba(162,242,201,.95)}
.landing-hero__cta--audio.is-playing .landing-hero__cta-icon span:nth-child(2){animation-delay:.12s}
.landing-hero__cta--audio.is-playing .landing-hero__cta-icon span:nth-child(3){animation-delay:.24s}
.landing-hero__cta--audio.is-playing .landing-hero__cta-icon span:nth-child(4){animation-delay:.36s}
@keyframes hero-audio-bar{0%,100%{transform:scaleY(.55)}50%{transform:scaleY(1.1)}}
@media (prefers-reduced-motion:reduce){.landing-hero__cta--audio.is-playing .landing-hero__cta-icon span{animation:none;transform:scaleY(1);transition:none}}
.landing-hero__preview{position:relative;z-index:1;flex:1;display:flex;justify-content:flex-end}
.landing-hero__timeline{list-style:none;margin:0;padding:28px;border-radius:28px;background:rgba(14,20,34,.84);border:1px solid rgba(42,49,70,.65);box-shadow:0 36px 90px rgba(5,9,20,.62);backdrop-filter:blur(22px);display:grid;gap:18px;max-width:520px;width:100%}
.landing-hero__timeline-item{padding:20px;border-radius:18px;border:1px solid rgba(60,74,110,.45);background:linear-gradient(160deg,rgba(18,24,38,.9),rgba(15,19,30,.68));box-shadow:inset 0 1px 0 rgba(114,136,205,.25)}
.landing-hero__timeline-item h2{margin:8px 0 10px;font-size:18px;font-weight:700;color:#e7ecff}
.landing-hero__timeline-item p{margin:0;font-size:14px;line-height:1.5;color:#a8b5d9}
.landing-hero__timeline-item--stacked{background:linear-gradient(160deg,rgba(18,24,38,.9),rgba(15,19,30,.68));border-color:rgba(60,74,110,.45);box-shadow:inset 0 1px 0 rgba(114,136,205,.25)}
.landing-hero__phase-label{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;background:rgba(122,162,247,.16);border:1px solid rgba(122,162,247,.32);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#7aa2f7}
@media (max-width:1100px){.landing-hero{flex-direction:column;align-items:flex-start;gap:56px;padding:88px clamp(1.5rem,6vw,4.5rem) 72px}.landing-hero__preview{width:100%;max-width:none}.landing-hero__timeline{max-width:none}}
@media (max-width:640px){.landing-hero{padding:72px 24px 56px}.landing-hero__headline{font-size:clamp(2.2rem,8vw,2.8rem)}.landing-hero__brand{width:96px}.landing-hero__timeline{padding:20px}.landing-hero__timeline-item{padding:16px}.landing-hero__actions{width:100%;flex-direction:column}.landing-hero__cta{width:100%}.landing-hero__audio{width:100%}.landing-hero__audio-controls{flex-direction:column;gap:8px}.landing-hero__audio-controls .landing-hero__cta{width:100%}.landing-hero__meta{margin-top:20px;justify-content:flex-start}.landing-hero__speed-menu{left:0;right:0;min-width:0}}
#app[hidden]{display:none}
#app{display:flex;height:100vh;overflow:hidden}
.sidebar{width:240px;flex:0 0 240px;background:linear-gradient(180deg,#0b0e13,#0a0c10);border-right:1px solid #1d2230;padding:16px;display:flex;flex-direction:column}
.brand{font-weight:800;letter-spacing:.3px;margin-bottom:12px}
nav button{position:relative;width:100%;padding:10px 12px;margin:2px 0;background:transparent;border:1px solid #1e2433;border-radius:8px;color:var(--muted);text-align:left;cursor:pointer;transition:.2s}
nav button.active,nav button:hover{border-color:#2a3146;color:#c7d2ff;background:#121826}
nav button.persona-focus{border-color:#3a4678;background:linear-gradient(90deg,rgba(122,162,247,.22),rgba(18,24,38,0));color:#dbe3ff;padding-right:58px;box-shadow:inset 0 0 0 1px rgba(122,162,247,.18)}
nav button.persona-focus::after{content:'Role default';position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#8da2ff;opacity:.9}
nav button.persona-focus.active{background:linear-gradient(90deg,rgba(122,162,247,.35),rgba(18,24,38,.4));box-shadow:inset 0 0 0 1px rgba(122,162,247,.28)}
nav button.persona-focus.active::after{color:#b5c8ff}
.footnote{margin-top:auto;color:var(--muted);font-size:12px;opacity:.9}
main{flex:1;display:flex;flex-direction:column}
header.controls{border-bottom:1px solid #1d2230;padding:12px 16px;background:#0e121a;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.controls__left{flex:1;min-width:280px}
.controls__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.controls__actions>*{flex-shrink:0}
.chips{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.chip{background:var(--chip);border:1px solid #1c2232;border-radius:12px;padding:8px 10px;display:flex;gap:8px;align-items:center}
.chip label{color:var(--muted);font-size:12px}
.primary,.secondary{padding:10px 14px;border-radius:10px;border:1px solid #2a3146;background:#121826;color:#c7d2ff;cursor:pointer}
.faq-trigger{position:relative;display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;border:1px solid rgba(122,162,247,.45);background:linear-gradient(180deg,rgba(28,36,58,.92),rgba(17,23,38,.92));color:#dbe3ff;font-weight:600;letter-spacing:.02em;text-transform:uppercase;font-size:12px;box-shadow:0 14px 34px rgba(8,12,24,.55);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;background-origin:border-box}
.faq-trigger__icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:rgba(122,162,247,.18);border:1px solid rgba(122,162,247,.4);font-size:14px;font-weight:700;color:#a8bcff;text-shadow:0 0 18px rgba(122,162,247,.6)}
.faq-trigger__label{letter-spacing:.18em}
.faq-trigger:hover{transform:translateY(-1px);box-shadow:0 18px 42px rgba(8,12,24,.68);border-color:rgba(122,162,247,.68)}
.faq-trigger:focus-visible{outline:2px solid rgba(138,168,255,.75);outline-offset:3px}
.primary{background:linear-gradient(180deg,#1a2034,#151a2a)}
#startGuided{
  background:linear-gradient(180deg,#7c3aed,#6536d9);
  border-color:#8a53ff;
  color:#f5f0ff;
  box-shadow:0 12px 28px rgba(104,72,204,.28);
  transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
#startGuided:hover{
  background:linear-gradient(180deg,#8b4cfe,#6f40ea);
  border-color:#9b6bff;
  box-shadow:0 14px 34px rgba(104,72,204,.36);
  transform:translateY(-1px);
}
#startGuided:focus-visible{
  outline:2px solid #b193ff;
  outline-offset:2px;
}
.view{display:none;padding:16px;overflow:auto}
.view.active{display:block}
.grid{display:grid;gap:16px}
.grid.two{grid-template-columns:1fr 1fr}
.grid.three{grid-template-columns:1fr 1fr 1fr}
.governance-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card{background:var(--panel);border:1px solid #1d2230;border-radius:14px;padding:16px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.card h3{margin:0 0 12px 0}
.status-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.status-chip.badge{border-width:1px}
.deployment-status-copy{margin:-8px 0 12px 0;font-size:13px;color:#9fb0ff;transition:color .2s ease,opacity .2s ease}
.deployment-status-copy.is-hidden{display:none}
.deployment-status-copy[data-tone="ok"]{color:#63e099}
.deployment-status-copy[data-tone="warn"]{color:#ffd166}
.deployment-status-copy[data-tone="block"]{color:#ef7691}
.deployment-card-header{align-items:center}
.role-context-panel{border:1px solid #202840;border-radius:12px;padding:12px 16px;margin-bottom:16px;background:rgba(13,19,33,.82);box-shadow:0 12px 28px rgba(0,0,0,.28);display:flex;flex-direction:column;gap:12px}
.role-context-panel.is-hidden{display:none}
.role-context-panel__header{display:flex;flex-direction:column;gap:4px}
.role-context-panel__eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#8da2ff;opacity:.9}
.role-context-panel__header h4{margin:0;font-size:16px}
.role-context-panel__body{display:flex;flex-direction:column;gap:10px}
.role-context-panel__guidance{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:12px;color:#cbd5ff}
.role-context-panel__guidance li{line-height:1.4}
.role-context-panel__metrics{display:flex;flex-wrap:wrap;gap:6px}
.role-context-panel__metrics span{background:rgba(122,162,247,.16);border:1px solid rgba(122,162,247,.28);border-radius:999px;padding:4px 10px;font-size:11px;color:#d6dcff;white-space:nowrap}
.role-banner{display:flex;align-items:flex-start;gap:14px;padding:14px 18px;border-bottom:1px solid #1d2230;background:rgba(16,22,36,.82);backdrop-filter:blur(6px);box-shadow:inset 0 -1px 0 rgba(15,24,40,.5)}
.role-banner.is-hidden{display:none}
.role-banner__icon{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;background:rgba(122,162,247,.18);color:#9fb0ff;flex-shrink:0}
.role-banner__body{display:flex;flex-direction:column;gap:2px}
.role-banner__eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#8da2ff}
.role-banner__title{font-size:15px;font-weight:700;color:#e6ecff}
.role-banner__copy{margin:0;font-size:13px;color:#a7b4ff;line-height:1.5}
.role-banner__copy.is-hidden{display:none}
.role-banner__badge{margin-left:auto;align-self:center;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px;border:1px solid #2b3350;color:#9fb0ff;background:rgba(16,24,40,.76)}
.role-banner__badge.is-hidden{display:none}
.role-banner[data-tone="ok"] .role-banner__icon{background:rgba(70,210,122,.18);color:#63e099}
.role-banner[data-tone="warn"] .role-banner__icon{background:rgba(255,209,102,.18);color:#ffd166}
.role-banner[data-tone="block"] .role-banner__icon{background:rgba(239,71,111,.18);color:#ef7691}
.role-banner[data-tone="ok"] .role-banner__badge{color:#63e099;border-color:rgba(70,210,122,.4)}
.role-banner[data-tone="warn"] .role-banner__badge{color:#ffd166;border-color:rgba(255,209,102,.4)}
.role-banner[data-tone="block"] .role-banner__badge{color:#ef7691;border-color:rgba(239,71,111,.4)}
.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px 0}
.card-header h3{margin:0}
.agent-gallery-actions{display:flex;gap:8px;flex-wrap:wrap}
.agent-gallery-controls{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}
.agent-gallery-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:space-between;padding:8px 12px;border:1px solid #1d2230;border-radius:10px;background:#101523;color:#dbe3ff;font-size:13px}
.agent-gallery-summary>span{font-weight:600}
.agent-filter-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.agent-filter-chip{border:1px solid rgba(122,162,247,.45);background:rgba(122,162,247,.16);color:#cdd6ff;border-radius:999px;padding:4px 10px;font-size:12px;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}
.agent-filter-chip:hover{background:rgba(122,162,247,.28);border-color:rgba(122,162,247,.6);color:#f5f6ff}
.agent-filter-reset{border:1px dashed rgba(122,162,247,.4);background:transparent;color:#b5c8ff;border-radius:999px;padding:4px 12px;font-size:12px;cursor:pointer;transition:border-color .16s ease,color .16s ease}
.agent-filter-reset:hover{border-color:rgba(122,162,247,.7);color:#e2e9ff}
.agent-gallery-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.agent-filter-field{display:flex;flex-direction:column;gap:4px}
.agent-filter-label{font-size:12px;color:#9fb0ff}
.agent-filter-field input,.agent-filter-field select,.agent-contribution__form input,.agent-contribution__form textarea{background:#0b1224;border:1px solid #27304a;border-radius:8px;padding:8px 10px;color:#f0f4ff;font-size:13px}
.agent-filter-field input:focus,.agent-filter-field select:focus,.agent-contribution__form input:focus,.agent-contribution__form textarea:focus{outline:2px solid rgba(122,162,247,.45);outline-offset:1px}
.agent-filter-field input::placeholder,.agent-contribution__form input::placeholder,.agent-contribution__form textarea::placeholder{color:#62709c}
.rbac-card{display:flex;flex-direction:column;gap:12px}
.fine-print{font-size:12px}
.rbac-matrix .table{margin:0}
.rbac-table td{vertical-align:top;padding:8px 8px;font-size:12px}
.rbac-table th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:#94a3d8}
.rbac-role{font-weight:700;color:#d6dcff}
.rbac-role-summary{font-size:12px;color:#9fb0ff;margin-top:4px}
.rbac-role-coverage{font-size:11px;color:#7483ab;margin-top:4px}
.rbac-chip{display:inline-flex;align-items:center;background:#101423;border:1px solid #242b41;border-radius:999px;padding:4px 8px;font-size:11px;margin:2px 4px 2px 0;color:#cbd5ff}
.rbac-entitlements{display:flex;flex-direction:column;gap:10px}
.rbac-entitlement{border:1px solid #27304a;border-radius:10px;padding:8px 10px;background:#101423}
.rbac-entitlement-line{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px}
.rbac-entitlement-notes{margin-top:4px;font-size:13px;font-weight:600;color:#d6dcff}
.rbac-guardrail{margin-top:4px;font-size:12px;color:#ffd166}
.rbac-subhead{font-weight:700;font-size:13px;color:#d6dcff;margin:4px 0}
.rbac-slas{display:flex;flex-direction:column;gap:8px}
.rbac-sla-line{border:1px dashed #27304a;border-radius:10px;padding:8px;font-size:12px;color:#cbd5ff;background:#0f1422}
.rbac-sla-line strong{color:#d6dcff}
.rbac-sla-target{color:#7aa2f7;font-weight:600}
.rbac-coverage{border-top:1px solid #1d2230;padding-top:12px;display:flex;flex-direction:column;gap:16px}
.rbac-coverage-section{display:flex;flex-direction:column;gap:8px}
.rbac-matrix-editor{width:100%;border-collapse:collapse;font-size:11px;background:transparent}
.rbac-matrix-editor thead th{padding:6px 8px;text-align:left;border-bottom:1px solid #1b2233;color:#94a3d8;font-size:11px;letter-spacing:.03em;text-transform:uppercase}
.rbac-matrix-editor tbody th{padding:6px 8px;text-align:left;font-weight:600;color:#d6dcff;border-bottom:1px solid #1b2233}
.rbac-matrix-editor tbody td{padding:6px 8px;text-align:center;border-bottom:1px solid #1b2233}
.rbac-matrix-editor tbody tr:last-child th,.rbac-matrix-editor tbody tr:last-child td{border-bottom:none}
.rbac-matrix-toggle{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.rbac-matrix-toggle input{position:absolute;opacity:0;width:18px;height:18px;margin:0}
.rbac-matrix-indicator{width:18px;height:18px;border-radius:6px;border:1px solid #27304a;background:#101423;display:inline-flex;align-items:center;justify-content:center;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.rbac-matrix-toggle input:checked+.rbac-matrix-indicator{background:#16203a;border-color:rgba(122,162,247,.65);box-shadow:0 0 0 1px rgba(122,162,247,.25) inset}
.rbac-matrix-toggle input:checked+.rbac-matrix-indicator::after{content:"";width:8px;height:8px;border-radius:50%;background:#7aa2f7}
.rbac-matrix-toggle input:focus-visible+.rbac-matrix-indicator{outline:2px solid rgba(122,162,247,.65);outline-offset:2px}
.rbac-coverage-empty{font-size:12px;color:#8892a6}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.readiness{font-size:28px;font-weight:700;margin-bottom:10px}
.missingPills{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.pill{border:1px solid #2a3146;background:#121826;border-radius:999px;padding:6px 10px;color:#cbd5ff}
.pill--requirement{border-color:rgba(255,209,102,.4);background:rgba(255,209,102,.16);color:#ffe9b0}
.pill.is-focus{border-color:rgba(122,162,247,.6);background:rgba(122,162,247,.16);color:#dbe3ff}
.control-banner{margin-bottom:14px;padding:12px 16px;border:1px solid rgba(122,162,247,.32);border-radius:12px;background:rgba(16,22,36,.88);backdrop-filter:blur(6px);color:#cfd9ff;font-size:13px;line-height:1.5;display:flex;flex-direction:column;gap:4px}
.control-banner.is-hidden{display:none}
.control-banner__eyebrow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8da2ff}
.control-banner__copy{font-size:13px;color:#dbe3ff}
.heatmap{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-top:8px}
.heat{
  position:relative;
  min-height:28px;
  border-radius:6px;
  border:1px solid #30384f;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:4px 6px;
  font-size:11px;
  color:#dbe3ff;
  text-align:center;
  overflow:visible;
  transition:transform .15s ease;
  cursor:pointer;
}
.heat .heat-label{
  display:block;
  width:100%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.heat:focus{
  outline:2px solid var(--accent);
  outline-offset:1px;
}
.heat:hover{
  transform:translateY(-1px);
}
.heat::after{
  content:attr(data-name) "\A" attr(data-type) " • " attr(data-status) " • " attr(data-coverage) "% coverage";
  position:absolute;
  left:50%;
  bottom:calc(100% + 10px);
  transform:translate(-50%,4px);
  opacity:0;
  background:#0f1422;
  border:1px solid #2b3350;
  border-radius:8px;
  padding:6px 8px;
  box-shadow:0 12px 24px rgba(0,0,0,.45);
  pointer-events:none;
  white-space:pre;
  font-size:11px;
  line-height:1.3;
  color:#dbe3ff;
  transition:opacity .15s ease,transform .15s ease;
  z-index:20;
}
.heat::before{
  content:'';
  position:absolute;
  left:50%;
  bottom:calc(100% + 4px);
  transform:translate(-50%,4px);
  opacity:0;
  border-width:6px;
  border-style:solid;
  border-color:#2b3350 transparent transparent transparent;
  pointer-events:none;
  transition:opacity .15s ease,transform .15s ease;
  z-index:19;
}
.heat:hover::after,
.heat:hover::before{
  opacity:1;
  transform:translate(-50%,0);
}
.heat.ok{background:rgba(70,210,122,.18);border-color:rgba(70,210,122,.4)}
.heat.warn{background:rgba(255,209,102,.16);border-color:rgba(255,209,102,.45)}
.heat.fail{background:rgba(239,71,111,.14);border-color:rgba(239,71,111,.5)}
.pricing-grid{align-items:start}
.pricing-card{display:flex;flex-direction:column;gap:16px}
.pricing-form{display:flex;flex-direction:column;gap:16px}
.pricing-form fieldset{border:1px solid #1f273b;border-radius:12px;padding:14px 16px;margin:0;display:flex;flex-direction:column;gap:14px;background:rgba(13,19,33,.72)}
.pricing-form legend{padding:0 6px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#8da2ff}
.pricing-form-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.pricing-input-group{display:flex;flex-direction:column;gap:6px;font-size:13px}
.pricing-input-group label{font-weight:600;color:#dbe3ff;font-size:13px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.pricing-input-group input,.pricing-input-group select{width:100%;padding:8px 10px;border-radius:10px;border:1px solid #262f45;background:#0f1422;color:#e6ecff;font-size:13px}
.pricing-input-group select{appearance:none;background-image:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="10" height="6" viewBox="0 0 10 6"%3E%3Cpath fill="%23aab7ff" d="M5 6L0 .75h10z"/%3E%3C/svg%3E');background-repeat:no-repeat;background-position:right 10px center;padding-right:28px}
.pricing-input-group--range input[type=range]{width:100%;padding:0;background:transparent}
.pricing-input-group--range input[type=range]::-webkit-slider-thumb{appearance:none;width:16px;height:16px;border-radius:50%;background:#7aa2f7;border:none;box-shadow:0 0 0 3px rgba(122,162,247,.25)}
.pricing-input-group--range input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(90deg,rgba(122,162,247,.6),rgba(122,162,247,.2))}
.pricing-input-group--range input[type=range]::-moz-range-thumb{width:16px;height:16px;border:none;border-radius:50%;background:#7aa2f7;box-shadow:0 0 0 3px rgba(122,162,247,.25)}
.pricing-input-group--range input[type=range]::-moz-range-track{height:4px;border-radius:999px;background:linear-gradient(90deg,rgba(122,162,247,.6),rgba(122,162,247,.2))}
.pricing-field-value{font-size:12px;color:#a7b4ff;font-weight:600}
.pricing-form-note{font-size:12px;color:#cbd5ff;background:rgba(15,22,36,.72);border:1px solid #1f273b;border-radius:10px;padding:10px 12px}
.pricing-form-note.muted{color:#8892a6;background:rgba(13,18,28,.58)}
.pricing-value-table{display:flex;flex-direction:column;gap:12px}
.pricing-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}
.pricing-table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8da2ff;padding:8px 10px;text-align:left;border-bottom:1px solid #1f273b}
.pricing-table tbody td{padding:10px;border-bottom:1px solid #1f273b;vertical-align:top;word-break:break-word;overflow-wrap:anywhere}
.pricing-table tbody tr:last-child td{border-bottom:none}
.pricing-table .metric{font-weight:600;color:#e6ecff}
.pricing-table .delta{color:#a7b4ff;font-size:12px}
.pricing-table .value{font-weight:700;color:#63e099;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.pricing-table .notes{color:#9fb0ff;font-size:12px;line-height:1.5}
.pricing-value-summary{margin-top:auto;display:flex;flex-direction:column;gap:12px}
.pricing-summary-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.pricing-summary-card{border:1px solid #1f273b;border-radius:12px;padding:12px 14px;background:rgba(13,19,33,.72);display:flex;flex-direction:column;gap:6px}
.pricing-summary-card h4{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8da2ff}
.pricing-summary-card .figure{font-size:18px;font-weight:700;color:#e6ecff}
.pricing-summary-card .meta{font-size:12px;color:#9fb0ff}
.pricing-guidance-card{display:flex;flex-direction:column;gap:16px}
.pricing-guidance{display:flex;flex-direction:column;gap:12px}
.pricing-guidance__headline{font-size:18px;font-weight:700;color:#f0f3ff}
.pricing-guidance__detail{font-size:13px;color:#cbd5ff;line-height:1.5;word-break:break-word;overflow-wrap:anywhere}
.pricing-guidance__detail strong{color:#9fb0ff}
.pricing-guidance__grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.pricing-guidance__pill{border:1px solid rgba(122,162,247,.35);background:rgba(122,162,247,.18);color:#dbe3ff;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;text-align:center}
.pricing-narrative{font-size:13px;color:#9fb0ff;line-height:1.6;background:rgba(15,22,36,.72);border:1px solid #1f273b;border-radius:12px;padding:12px 14px}
.pricing-empty{font-size:13px;color:#8892a6;padding:20px;border:1px dashed #27324a;border-radius:12px;background:rgba(15,20,32,.6)}
@media (max-width:1200px){
  .grid.three{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
}
@media (max-width:720px){
  .pricing-form-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
}
.heat.is-selected{
  border-color:rgba(122,162,247,.65);
  box-shadow:0 0 0 1px rgba(122,162,247,.45),0 12px 28px rgba(122,162,247,.18);
  background:rgba(122,162,247,.16);
  color:#e6ecff;
}
.heatmap-detail{
  margin-top:10px;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid #2a3146;
  background:rgba(16,20,34,.82);
  color:#cbd5ff;
  font-size:12px;
  line-height:1.4;
  min-height:52px;
  display:flex;
  flex-direction:column;
  gap:4px;
  transition:opacity .15s ease,color .15s ease;
}
.heatmap-detail:not(.active){
  opacity:.8;
  color:var(--muted);
}
.heatmap-detail__name{
  font-weight:700;
  font-size:13px;
  color:#e6ecff;
}
.heatmap-detail__meta{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:#9fb0ff}
.heatmap-detail__meta-item{display:flex;align-items:center;gap:6px}
.heatmap-detail__meta-item:not(:first-child)::before{content:'\2022';color:#535e7b;font-weight:600}
.heatmap-detail__meta--sub{margin-top:4px}
.heatmap-detail__notes{margin-top:6px;font-size:12px;color:#cbd5ff}
.heatmap-detail__hint{font-size:12px;color:#aab7ff}
.heatmap-detail__status{font-weight:700}
.heatmap-detail__status.ok{color:var(--ok)}
.heatmap-detail__status.warn{color:var(--warn)}
.heatmap-detail__status.fail{color:var(--block)}
.card.is-highlighted{
  box-shadow:0 0 0 2px var(--accent),0 18px 44px rgba(122,162,247,.2);
  border-color:rgba(122,162,247,.5);
}
.actions{margin-top:8px}
.guided-callout{
  position:fixed;
  top:88px;
  right:28px;
  width:min(320px,calc(100vw - 56px));
  background:rgba(15,19,30,.92);
  border:1px solid #2a3146;
  border-radius:14px;
  padding:14px 16px;
  box-shadow:0 18px 44px rgba(0,0,0,.45);
  color:var(--txt);
  opacity:0;
  transform:translate3d(var(--callout-offset-x,0px),calc(var(--callout-offset-y,0px) - 8px),0);
  transition:opacity .2s ease,transform .2s ease;
  pointer-events:none;
  cursor:grab;
  touch-action:none;
  will-change:transform;
  z-index:60;
}
.guided-callout.visible{
  opacity:1;
  transform:translate3d(var(--callout-offset-x,0px),var(--callout-offset-y,0px),0);
  pointer-events:auto;
}
.guided-callout.is-dragging{
  cursor:grabbing;
  transition:none;
}
.guided-callout__handle{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
  color:var(--muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  cursor:inherit;
  user-select:none;
}
.guided-callout__handle-grip{
  display:inline-block;
  width:34px;
  height:4px;
  border-radius:999px;
  background:#2f3650;
  box-shadow:0 1px 0 rgba(0,0,0,.35);
}
.guided-callout__handle-label{
  font-weight:600;
}
.guided-callout__close{
  margin-left:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  border-radius:8px;
  border:1px solid #394467;
  background:#1b2134;
  color:#cbd5ff;
  font-size:16px;
  font-weight:700;
  line-height:1;
  padding:0;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
  appearance:none;
}
.guided-callout__close:hover{
  background:#222b44;
  border-color:#4a5678;
  color:#f5f8ff;
}
.guided-callout__close:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
}
.guided-callout__close:active{
  transform:scale(.96);
}
.guided-callout__body{
  cursor:auto;
}
.guided-callout__badge{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--accent);
  font-weight:700;
  margin-bottom:6px;
}
.guided-callout__progress{
  font-size:12px;
  font-weight:600;
  color:#cbd5ff;
  margin-bottom:6px;
}
.guided-callout__copy{
  margin:0;
  font-size:13px;
  line-height:1.5;
  color:var(--txt);
}
.guided-callout__controls{
  display:flex;
  gap:8px;
  margin-top:12px;
}
.guided-callout__button{
  flex:1;
  border-radius:10px;
  border:1px solid #394467;
  background:#1b2134;
  color:var(--txt);
  font-size:12px;
  font-weight:600;
  letter-spacing:.02em;
  padding:8px 12px;
  cursor:pointer;
  transition:background .2s ease, border-color .2s ease, color .2s ease;
}
.guided-callout__button:hover:not([disabled]){
  background:#222b44;
  border-color:#4a5678;
}
.guided-callout__button:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
}
.guided-callout__button[disabled]{
  opacity:.6;
  cursor:not-allowed;
}
.guided-callout__button--primary{
  background:var(--accent);
  border-color:var(--accent);
  color:#0b1120;
}
.guided-callout__button--primary:hover:not([disabled]){
  background:#8cb0f8;
  border-color:#8cb0f8;
}
.guided-callout__button--primary[disabled]{
  background:#394467;
  border-color:#394467;
  color:var(--txt);
}
@media (max-width:900px){
  .guided-callout{
    top:auto;
    bottom:24px;
    right:16px;
    left:16px;
    width:auto;
  }
}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}
.kpi{background:#101423;border:1px solid #242b41;border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:6px}
.kpi-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.kpi-name{font-weight:600;font-size:14px;color:#e6ecff}
.kpi.is-highlighted{
  border-color:rgba(122,162,247,.6);
  box-shadow:0 0 0 1px rgba(122,162,247,.6),0 12px 30px rgba(122,162,247,.18);
  background:rgba(122,162,247,.12);
}
.kpi .val{font-size:22px;font-weight:700;color:#dbe3ff;text-align:right;word-break:break-word;overflow-wrap:anywhere}
.kpi-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:11px;color:#9fb0ff}
.kpi-notes{font-size:12px;line-height:1.4;color:#cbd5ff}
.kpi-rollup-line{font-size:11px;color:#8892a6;text-transform:uppercase;letter-spacing:.05em}
.kpi--preview{gap:4px;padding:8px}
.kpi--preview .val{font-size:16px}
.dial{font-size:40px;font-weight:800;color:#c7d2ff}
.dial.ok{color:var(--ok)}
.dial.warn{color:var(--warn)}
.dial.block{color:var(--block)}
.journal{max-height:340px;overflow:auto;border:1px solid #232a40;border-radius:10px;background:#0f1422;padding:10px}
.export-preview-panel{margin-top:12px;padding:12px;border:1px solid #27304a;border-radius:12px;background:#0f1422;display:flex;flex-direction:column;gap:10px}
.export-preview-panel__header{display:flex;justify-content:space-between;align-items:center;gap:8px}
.export-preview-panel__title{font-weight:600;color:#dbe3ff}
.export-preview-panel__meta{font-size:12px}
.export-preview{margin:0;font-family:'JetBrains Mono','Fira Code',monospace;font-size:12px;line-height:1.5;padding:10px 12px;border-radius:10px;border:1px solid #1f2740;background:#0b1120;color:#dbe3ff;max-height:260px;overflow:auto;white-space:pre}
.export-preview.is-empty{color:#64719b}
.export-preview-summary{border:1px solid #1f2740;border-radius:10px;background:#0b1120;padding:12px;display:flex;flex-direction:column;gap:12px}
.export-preview-summary.is-empty{border-style:dashed;opacity:.85}
.export-preview-summary__empty{font-size:12px;line-height:1.5;color:#8c98c9}
.export-preview-summary__chips{display:flex;flex-wrap:wrap;gap:8px}
.export-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;border:1px solid #2b3454;background:#19233a;color:#dbe3ff;font-size:12px;font-weight:500;letter-spacing:.01em;text-transform:uppercase}
.export-chip--graph{border-color:#3c7dff;background:rgba(60,125,255,.15)}
.export-chip--eval{border-color:#3ec8b7;background:rgba(62,200,183,.16)}
.export-chip--runbook{border-color:#ff9f43;background:rgba(255,159,67,.16)}
.export-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.export-summary-card{background:#0f172a;border:1px solid #1f2740;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;min-height:110px}
.export-summary-card__title{font-size:14px;font-weight:600;color:#dbe3ff;margin:0}
.export-summary-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;color:#b6c4ff;font-size:12px;line-height:1.4}
.export-summary-list li{margin:0}
.export-summary__stat{color:#ffffff;font-weight:600}
.export-summary__placeholder{font-size:12px;line-height:1.4}
.export-summary__suggestions{margin-top:6px;padding-top:6px;border-top:1px dashed #27304a;font-size:12px;color:#cbd5ff;line-height:1.4}
.export-summary__suggestions div{line-height:1.4}
.provenance-detail__customizations{margin-top:12px;padding:10px 12px;border:1px solid #27304a;border-radius:10px;background:#10172c;display:flex;flex-direction:column;gap:6px}
.provenance-detail__suggestions ul{margin:6px 0 0;padding-left:18px;color:#cbd5ff}
.provenance-detail__suggestions li{margin:2px 0;line-height:1.4}
.provenance-detail__status-line{font-size:12px;color:#fbbf24}
.provenance-event__customizations{margin-top:4px;font-size:12px;color:#fbbf24}
.provenance-event__suggestions{margin:4px 0 0;padding-left:18px;font-size:12px;color:#cbd5ff}
.provenance-event__suggestions li{margin:2px 0}
.journal .line{padding:6px 4px;border-bottom:1px solid #1a2033}
.kpi-catalog-card{grid-column:1/-1}
.kpi-catalog-pack{background:#10172c;border:1px solid #27304a;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.kpi-catalog-pack__label{font-weight:600;color:#dde6ff;font-size:13px;letter-spacing:.01em}
.kpi-catalog-pack__meta{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#cbd5ff}
.kpi-catalog-pack__meta span{display:flex;align-items:center;gap:6px}
.kpi-catalog-pack__muted{color:var(--muted);font-size:11px}
.kpi-catalog-form{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}
.kpi-catalog-form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.kpi-catalog-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#9fb0ff}
.kpi-catalog-form input,.kpi-catalog-form textarea{background:#10172c;border:1px solid #27304a;border-radius:8px;padding:8px;color:#e6ecff;font-size:13px}
.kpi-catalog-form textarea{min-height:56px;resize:vertical}
.kpi-catalog-form__actions{display:flex;justify-content:flex-end}
.kpi-catalog-table table{width:100%;border-collapse:collapse}
.kpi-catalog-table th,.kpi-catalog-table td{padding:8px;border-bottom:1px solid #1f2536;text-align:left;font-size:12px;vertical-align:top}
.kpi-catalog-table th{color:#9fb0ff;text-transform:uppercase;letter-spacing:.04em;font-size:11px}
.kpi-catalog-table .kpi-catalog-empty{color:var(--muted);padding:8px 0;font-size:12px}
.kpi-catalog-usage{display:flex;flex-wrap:wrap;gap:4px}
.kpi-usage-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;border:1px solid #27304a;background:#121826;font-size:11px;color:#cbd5ff}
.kpi-cell-badges{display:inline-flex;align-items:center;gap:6px;margin-left:6px}
.kpi-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;border:1px solid #2f3a5a;background:#141c33;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#9fb0ff}
.kpi-badge--custom{border-color:#3a6aff;color:#d5e0ff;background:rgba(58,106,255,.12)}
.kpi-row-actions{display:flex;gap:6px;flex-wrap:wrap}
.journal .line.is-highlighted{
  background:rgba(122,162,247,.14);
  border-bottom-color:rgba(122,162,247,.5);
}
.journal .tag{font-size:11px;border-radius:6px;padding:2px 6px;margin-right:6px;display:inline-flex;align-items:center;gap:4px}
.journal .tag--source{background:#18213a;color:#9fb0ff;border:1px solid #27304a}
.journal .tag--source-refinery{color:#46d27a;border-color:rgba(70,210,122,.45);background:rgba(70,210,122,.12)}
.journal .journal-ts{font-size:11px;color:#64719b;margin-right:6px;display:inline-flex;align-items:center;gap:4px}
.tag.info{background:#1b2236;color:#9fb0ff;border:1px solid #293355}
.tag.guard{background:rgba(255,209,102,.2);color:#ffd166;border:1px solid rgba(255,209,102,.5)}
.tag.block{background:rgba(239,71,111,.15);color:#ef476f;border:1px solid rgba(239,71,111,.5)}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border-bottom:1px solid #27304a;padding:6px 8px;text-align:left}
#meshGraph{width:100%;max-width:100%;display:block}
#meshGraph text{letter-spacing:.02em}
#meshTable .mesh-policy{text-align:center;white-space:nowrap}
#meshTable .mesh-policy .badge{display:inline-flex;justify-content:center;min-width:110px}
.legend .badge{display:inline-block;border-radius:6px;padding:2px 8px;margin-right:6px;border:1px solid #2b3350}
.badge.ok{background:rgba(70,210,122,.14);color:#46d27a;border-color:rgba(70,210,122,.5)}
.badge.warn{background:rgba(255,209,102,.14);color:#ffd166;border-color:rgba(255,209,102,.5)}
.badge.block{background:rgba(239,71,111,.14);color:#ef476f;border-color:rgba(239,71,111,.5)}
.logos{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.logo{height:52px;border:1px solid #27304a;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#0f1422;color:#9fb0ff}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;align-items:stretch}
.agent-card.is-selected{border-color:rgba(122,162,247,.65);box-shadow:0 0 0 1px rgba(122,162,247,.45),0 20px 44px rgba(122,162,247,.18);background:rgba(18,24,38,.95)}
.agent-card.is-selected .agent-status.badge{box-shadow:0 0 0 1px rgba(122,162,247,.45)}
.agent-card.is-selected .agent-status-note{border-top-color:rgba(122,162,247,.45)}
.agent-gallery-header{margin-bottom:0}
.agent-gallery-shell{display:grid;gap:18px}
@media (min-width:980px){.agent-gallery-shell{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);align-items:start}}
.agent-gallery-detail{border:1px solid #27304a;border-radius:14px;background:rgba(15,20,34,.95);padding:16px;display:flex;flex-direction:column;gap:14px;min-height:260px;color:#dbe3ff;transition:border-color .2s ease,box-shadow .2s ease}
.agent-gallery-detail:focus{outline:2px solid var(--accent);outline-offset:2px}
.agent-gallery-detail.has-selection{border-color:rgba(122,162,247,.45);box-shadow:0 20px 48px rgba(122,162,247,.14)}
.agent-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.agent-detail-title{font-size:18px;font-weight:700;color:#e6ecff}
.agent-detail-meta{font-size:13px;color:#9fb0ff}
.connector-bindings{margin-top:8px;display:flex;flex-direction:column;gap:8px}
.mapping-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.mapping-grid--spaced{margin-top:8px}
.mapping-card-header .status-chip{margin-left:auto}
.wizard-text--small{font-size:12px}
.wizard-text--xsmall{font-size:11px}
.wizard-text--spaced{margin-bottom:6px}
.scope-select-list{display:flex;flex-direction:column;gap:8px}
.scope-select-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid #27304a;border-radius:10px;background:#101423;transition:border-color .18s ease,box-shadow .18s ease}
.scope-select-row.is-active{border-color:rgba(122,162,247,.55);box-shadow:0 0 0 1px rgba(122,162,247,.35)}
.scope-select-label{display:flex;flex-direction:column;gap:2px;color:#e6ecff;font-size:13px}
.scope-select-label__meta{font-size:12px;color:#9fb0ff}
.scope-select-label .muted{font-size:12px;color:#9fb0ff}
.scope-select-controls{display:flex;align-items:center;gap:8px}
.scope-select-controls select{min-width:160px;background:#0b1224;border:1px solid #27304a;border-radius:8px;padding:6px 8px;color:#e6ecff;font-size:12px}
.scope-select-empty{padding:8px 10px;border:1px dashed #27304a;border-radius:10px}
.scope-active-hint{margin-top:6px}
.mapping-hint{display:block}
.mapping-matrix{display:flex;flex-direction:column;gap:10px;margin-top:6px}
.mapping-matrix__row{display:grid;grid-template-columns:minmax(210px,1fr) minmax(280px,1.25fr);gap:14px;padding:12px 14px;border:1px solid #27304a;border-radius:12px;background:#10172c}
@media (max-width:780px){.mapping-matrix__row{grid-template-columns:1fr}}
.mapping-matrix__source{display:flex;flex-direction:column;gap:4px}
.mapping-matrix__dependency{font-size:14px;font-weight:600;color:#f0f4ff}
.mapping-matrix__source-status{margin-top:4px}
.mapping-matrix__source-meta{margin-top:2px;color:#9fb0ff}
.mapping-matrix__canonical{display:flex;flex-direction:column;gap:10px}
.mapping-matrix__domain{color:#9fb0ff}
.mapping-assignment{display:flex;flex-direction:column;gap:6px}
.mapping-assignment__select{width:100%;background:#0b1224;border:1px solid #27304a;border-radius:8px;padding:6px 8px;color:#e6ecff;font-size:12px}
.mapping-assignment__status{display:flex;align-items:center;gap:8px;font-size:12px;color:#9fb0ff}
.mapping-assignment__domain{color:#9fb0ff}
.mapping-suggestion{display:flex;flex-direction:column;gap:6px;font-size:12px}
.mapping-suggestion__header{display:flex;align-items:center;gap:8px}
.mapping-suggestion__title{font-weight:600;color:#e6ecff}
.mapping-suggestion__evidence{margin:0;padding-left:18px;list-style:disc}
.suggestion-options{font-size:12px}
.suggestion-options summary{cursor:pointer;font-size:12px}
.mapping-options__summary{font-size:12px;color:#9fb0ff}
.mapping-options__list{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}
.mapping-options__item{display:flex;flex-direction:column;gap:2px;font-size:12px}
.mapping-manual{margin-top:8px;padding-top:8px;border-top:1px dashed #27304a;display:flex;flex-direction:column;gap:6px}
.mapping-manual__header{display:flex;align-items:center;justify-content:space-between}
.mapping-manual__title{font-size:12px;font-weight:600;color:#e6ecff}
.mapping-manual__fields{display:flex;flex-direction:column;gap:6px}
.mapping-manual__fields[hidden]{display:none}
.mapping-manual__input,.mapping-manual__notes{background:#0b1224;border:1px solid #27304a;border-radius:8px;padding:6px 8px;color:#f0f4ff;font-size:12px}
.mapping-manual__notes{min-height:48px;resize:vertical}
.mapping-connectors__title{font-weight:600;color:#e6ecff}
.mapping-export{margin-top:12px;padding:10px;border:1px solid #27304a;border-radius:10px;background:#0f1422;display:flex;flex-direction:column;gap:6px}
.mapping-export__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mapping-export__help{margin:0;font-size:12px;color:#9fb0ff}
.connector-bindings__title{font-weight:600;color:#e6ecff}
.guard-preview{margin-top:10px;padding:12px;border:1px solid #27304a;border-radius:10px;background:#0b1224;display:flex;flex-direction:column;gap:8px}
.guard-preview__header{display:flex;align-items:center;justify-content:space-between;gap:10px}
.guard-preview__left{display:flex;align-items:center;gap:8px}
.guard-preview__title{font-weight:600;color:#e6ecff}
.guard-preview__timestamp{font-size:11px;color:#9fb0ff}
.guard-preview__text{font-size:12px;color:#9fb0ff}
.guard-preview__meta{display:flex;flex-wrap:wrap;gap:6px;font-size:12px;color:#9fb0ff}
.mapping-export__status{font-size:12px;color:#9fb0ff}
.mapping-policy{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.mapping-policy__toggle{display:flex;align-items:center;gap:6px;font-size:13px;color:#e6ecff}
.mapping-threshold{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mapping-threshold__label{font-size:13px;color:#e6ecff}
.mapping-threshold__input{width:160px}
.mapping-threshold__value{font-size:12px;color:#9fb0ff}
.connector-card{border:1px solid #27304a;border-radius:8px;padding:6px;background:#10172c;display:flex;flex-direction:column;gap:4px;transition:border-color .2s ease,box-shadow .2s ease}
.connector-card.is-selected{border-color:#46d27a;box-shadow:0 0 0 1px rgba(70,210,122,.35)}
.connector-card.is-active{border-color:#3b82f6}
.connector-card.is-planned{border-color:#4f5f9a}
.connector-card__name{font-weight:600;color:#e6ecff}
.connector-card__status-row{display:flex;align-items:center;gap:6px;margin-top:4px}
.connector-card__sync{font-size:12px}
.connector-card__note{font-size:12px}
.connector-warning{margin-top:6px;color:#ffd166}
.connector-empty{margin-top:4px}
.data-quality-panel{margin-top:8px;padding:12px;border:1px solid #27304a;border-radius:10px;background:#0b1224;display:flex;flex-direction:column;gap:6px}
.data-quality-panel__header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.data-quality-panel__title{margin:0;font-size:14px;font-weight:600;color:#e6ecff}
.data-quality-panel__meta{font-size:12px}
.data-quality-panel__list{font-size:12px;margin:6px 0 0 0;padding-left:18px;display:flex;flex-direction:column;gap:2px}
.mapping-policies{margin-top:6px;font-size:12px;color:#cbd5ff}
.agent-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}
.agent-metric-card{background:#111a2c;border:1px solid #27304a;border-radius:10px;padding:8px;display:flex;flex-direction:column;gap:4px}
.agent-metric-label{font-size:11px;color:#9fb0ff;text-transform:uppercase;letter-spacing:.08em}
.agent-metric-value{font-size:14px;font-weight:600;color:#e6ecff}
.agent-detail-summary{margin:0;font-size:13px;color:#dbe3ff}
.agent-detail-meta-grid{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#b9c7ff}
.agent-detail-meta-grid span strong{color:#e1e8ff}
.agent-detail-section{display:flex;flex-direction:column;gap:8px}
.agent-detail-section h4{margin:0;font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:#7483ab}
.agent-detail-guard-badges{display:flex;flex-wrap:wrap;gap:6px}
.agent-detail-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:12px;color:#dbe3ff}
.agent-detail-links{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:12px;color:#dbe3ff}
.agent-connector-bindings{display:flex;flex-direction:column;gap:12px}
.agent-connector-summary{display:flex;align-items:center;gap:8px;font-size:12px;color:#9fb0ff}
.agent-connector-summary .badge{margin-right:4px}
.agent-connector-row{background:#10172c;border:1px solid #27304a;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:12px}
.agent-connector-row__header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.agent-connector-row__meta{display:flex;flex-direction:column;gap:4px;max-width:65%}
.agent-connector-row__title{font-weight:600;color:#e6ecff}
.agent-connector-row__description{color:#9fb0ff;font-size:12px}
.agent-connector-row__status{display:flex;flex-direction:column;gap:6px;align-items:flex-end;text-align:right}
.agent-connector-row__status .badge{margin-left:6px}
.agent-connector-row__status-text{color:#8a97c7;font-size:12px}
.agent-connector-row__controls{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.agent-connector-row__select{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#9fb0ff}
.agent-connector-row__select select{background:#0b1224;border:1px solid #27304a;border-radius:8px;padding:6px 10px;color:#e6ecff;min-width:220px}
.agent-connector-row__actions{display:flex;flex-wrap:wrap;gap:8px}
.agent-connector-row__result{background:#0b1224;border:1px solid #27304a;border-radius:8px;padding:10px;font-family:'SFMono-Regular',Consolas,'Liberation Mono',Menlo,monospace;font-size:12px;color:#dbe3ff;max-height:180px;overflow:auto;white-space:pre-wrap;word-break:break-word}
.agent-connector-row__empty{color:#6b7ba7;font-size:12px}
.agent-connector-row__note{color:#9fb0ff;font-size:12px}
.agent-detail-links a{color:#7aa2f7;text-decoration:none}
.agent-detail-links a:hover{text-decoration:underline}
.agent-detail-messages{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.agent-detail-message{background:#10172c;border:1px solid #27304a;border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:6px}
.agent-detail-message-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.agent-detail-message-route{font-weight:600;font-size:12px;color:#dbe3ff}
.agent-detail-message-note{font-size:12px;color:#cbd5ff}
.agent-detail-message-meta{font-size:11px;color:#8a97c7}
.agent-detail-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.agent-io-grid{display:grid;gap:10px}
@media (min-width:620px){.agent-io-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.agent-io-card{border:1px solid #27304a;border-radius:10px;background:#10172c;padding:10px;display:flex;flex-direction:column;gap:6px}
.agent-io-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#7483ab}
.agent-io-value{font-size:12px;color:#dbe3ff;white-space:pre-line}
.agent-autonomy-flags{display:flex;flex-wrap:wrap;gap:6px}
.agent-flag-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;border:1px solid #27304a;background:#111728;font-size:11px;font-weight:600;letter-spacing:.04em;color:#cbd5ff}
.agent-help-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:4px;border-radius:50%;border:1px solid #2f3a56;background:#1a2238;color:#9fb0ff;font-size:9px;font-weight:700;line-height:1}
.ontology-align{margin-top:16px;padding:14px;border:1px solid #27304a;border-radius:14px;background:#10172c;display:flex;flex-direction:column;gap:12px}
.ontology-align__header{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ontology-align__header h4{margin:0;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:#7483ab}
.ontology-align__summary{font-size:12px;color:#9fb0ff}
.ontology-align__controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.ontology-align__controls label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#9fb0ff}
.ontology-align__controls select{background:#0b1224;border:1px solid #27304a;border-radius:8px;padding:6px 8px;color:#e6ecff;font-size:13px}
.ontology-align__badges{display:flex;flex-wrap:wrap;gap:8px}
.ontology-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid #27304a;background:#11182a;font-size:11px;color:#cbd5ff;line-height:1.4}
.ontology-badge strong{color:#e6ecff;font-weight:600}
.agent-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--panel);border:1px solid #1d2230;border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.25);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;min-height:320px}
.agent-card:hover,.agent-card:focus-visible{transform:translateY(-2px);border-color:rgba(122,162,247,.45);box-shadow:0 18px 44px rgba(0,0,0,.32)}
.agent-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.agent-card.is-coming-soon{opacity:.88;border-style:dashed;border-color:rgba(255,209,102,.4)}
.agent-header{display:flex;justify-content:space-between;align-items:center;gap:12px}
.agent-title{font-weight:700;font-size:16px;letter-spacing:.01em;color:#e6ecff}
.agent-status.badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border:1px solid rgba(122,162,247,.18)}
.agent-summary{margin:0;font-size:13px;color:#cbd5ff}
.agent-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.agent-meta div{display:flex;flex-direction:column;gap:2px}
.agent-meta dt{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#7483ab}
.agent-meta dd{margin:0;font-size:12px;color:#dbe3ff}
.agent-actions-block,.agent-guardrails-block{display:flex;flex-direction:column;gap:6px}
.agent-actions-block h4,.agent-guardrails-block h4{margin:0;font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:#7483ab}
.agent-actions{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:12px;color:#dbe3ff}
.agent-actions li::marker{color:#414d6f}
.agent-guardrails{display:flex;flex-wrap:wrap;gap:6px}
.agent-guardrail{font-size:11px;padding:4px 8px;border-radius:999px;border:1px solid #27304a;background:#111728;color:#cbd5ff;white-space:nowrap;transition:border-color .18s ease,box-shadow .18s ease}
.agent-card:hover .agent-guardrail,.agent-card:focus-visible .agent-guardrail{border-color:rgba(122,162,247,.35);box-shadow:0 0 0 1px rgba(122,162,247,.08)}
.agent-status-note{margin-top:auto;padding-top:10px;border-top:1px solid #1d2230;font-size:12px;color:#9fb0ff}
.agent-status-note.is-coming-soon{color:#ffd166;border-top-style:dashed}
.agent-card.is-coming-soon .agent-status.badge{opacity:.92}
.agent-card:hover .agent-status.badge,.agent-card:focus-visible .agent-status.badge{box-shadow:0 0 0 1px rgba(122,162,247,.35)}
.agent-title-group{display:flex;align-items:center;gap:8px}
.agent-featured-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;background:rgba(255,209,102,.18);border:1px solid rgba(255,209,102,.35);font-size:11px;font-weight:600;color:#ffd166;text-transform:uppercase;letter-spacing:.08em}
.agent-pack-chips,.agent-runtime-tags{display:flex;flex-wrap:wrap;gap:6px}
.agent-pack-chip,.agent-runtime-tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#11182b;border:1px solid #27304a;font-size:11px;color:#cbd5ff}
.agent-runtime-tag{background:#10202f;color:#9bd7ff;border-color:#2a3a54}
.agent-marketplace{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid #27304a;border-radius:10px;background:#0d1426}
.agent-marketplace-row{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#dbe3ff}
.agent-marketplace-metrics{font-size:12px;color:#9fb0ff}
.agent-rating{display:flex;align-items:center;gap:8px;font-size:12px;color:#ffd166}
.agent-rating-star{font-weight:700}
.agent-rating-downloads,.agent-rating-reviews{font-size:11px;color:#9fb0ff}
.agent-marketplace .agent-rating{margin-top:2px}
.agent-contribution{border:1px solid #1d2230;border-radius:12px;background:#0d1222;padding:8px 12px}
.agent-contribution summary{cursor:pointer;font-weight:600;color:#dbe3ff}
.agent-contribution__body{margin-top:8px;display:flex;flex-direction:column;gap:12px}
.agent-contribution__notice{padding:10px 12px;border-radius:10px;font-size:12px;background:rgba(122,162,247,.12);border:1px solid rgba(122,162,247,.28);color:#cfd9ff}
.agent-contribution__notice--success{background:rgba(70,210,122,.16);border-color:rgba(70,210,122,.45);color:#aff3c8}
.agent-contribution__notice--error{background:rgba(239,71,111,.16);border-color:rgba(239,71,111,.45);color:#ffc2cd}
.agent-contribution__form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.agent-contribution__field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#9fb0ff}
.agent-contribution__actions{grid-column:1/-1;display:flex;justify-content:flex-end}
.agent-contribution__submit{padding:8px 16px;border-radius:10px;border:1px solid rgba(122,162,247,.45);background:linear-gradient(180deg,#1a2034,#151a2a);color:#dbe3ff;font-weight:600;cursor:pointer;transition:border-color .16s ease,transform .16s ease}
.agent-contribution__submit:hover{border-color:rgba(122,162,247,.65);transform:translateY(-1px)}
.agent-contribution__queue{border-top:1px solid #1d2230;padding-top:8px}
.agent-submissions-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.agent-submission{border:1px solid #27304a;border-radius:10px;padding:8px 10px;background:#0b1224;display:flex;flex-direction:column;gap:4px}
.agent-submission__meta{font-size:11px;color:#9fb0ff}
.agent-submission__pack{font-size:11px;color:#63e099}
.agent-value-summary{margin-top:12px;padding:12px;border:1px solid #1d2230;border-radius:12px;background:#101728;display:flex;flex-direction:column;gap:8px;font-size:12px;color:#cbd5ff}
.agent-value-summary__headline{font-size:13px;font-weight:700;color:#e6ecff}
.agent-value-summary__flags{display:flex;flex-wrap:wrap;gap:8px}
.agent-value-summary__meta{display:flex;flex-wrap:wrap;gap:12px;color:#9fb0ff}
.agent-knowledge-section{margin-top:16px;padding-top:12px;border-top:1px solid #1d2230;display:flex;flex-direction:column;gap:10px}
.agent-knowledge-section h4{margin:0;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:#7483ab}
.agent-registry-table{width:100%;border-collapse:collapse;font-size:12px}
.agent-registry-table thead th{padding:6px 8px;text-align:left;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:#7483ab;border-bottom:1px solid #1d2230}
.agent-registry-table tbody td{padding:6px 8px;border-bottom:1px solid #1b2233;color:#dbe3ff}
.agent-registry-table tbody tr:last-child td{border-bottom:none}
.agent-registry-table .agent-flag-chip{font-size:10px;padding:3px 8px}
.agent-registry-empty{font-size:12px;color:#8892a6}
.agent-knowledge-link{background:none;border:none;padding:0;font:inherit;font-size:12px;color:#7aa2f7;cursor:pointer;text-decoration:underline dotted}
.agent-knowledge-link:hover,.agent-knowledge-link:focus{color:#a7c4ff}
.agent-knowledge-link:focus-visible{outline:2px solid rgba(122,162,247,.7);outline-offset:2px;border-radius:4px}
.secondary.danger{border-color:rgba(239,71,111,.45);background:rgba(239,71,111,.12);color:#ffb3c2}
.secondary.danger:hover{background:rgba(239,71,111,.18)}
.agent-detail-updated{color:#9fb0ff;font-size:12px}
.faq-dialog{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:220}
.faq-dialog.is-open{display:flex}
.faq-dialog__backdrop{position:absolute;inset:0;background:rgba(8,11,19,.82);backdrop-filter:blur(8px)}
.faq-dialog__panel{position:relative;z-index:1;width:min(960px,calc(100% - 32px));max-width:100%;background:rgba(15,20,34,.96);border:1px solid #1d2230;border-radius:20px;box-shadow:0 32px 68px rgba(3,5,12,.7);display:flex;flex-direction:column;max-height:min(92vh,900px);overflow:hidden}
.faq-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 26px;border-bottom:1px solid #1d2230;background:linear-gradient(180deg,rgba(19,25,40,.88),rgba(13,18,30,.88))}
.faq-dialog__intro{display:flex;flex-direction:column;gap:6px;outline:none}
.faq-dialog__intro:focus-visible{outline:2px solid rgba(138,168,255,.75);outline-offset:4px}
.faq-dialog__eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#8da2ff;opacity:.9}
.faq-dialog__title{margin:0;font-size:20px;font-weight:700;color:#f0f4ff;letter-spacing:.01em}
.faq-dialog__subtitle{margin:0;font-size:13px;color:#aeb9ff;max-width:40ch;line-height:1.6}
.faq-dialog__close{background:transparent;border:1px solid rgba(122,162,247,.3);border-radius:50%;width:32px;height:32px;color:#9fb0ff;font-size:20px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.faq-dialog__close:hover{background:rgba(122,162,247,.16);border-color:rgba(122,162,247,.55);transform:translateY(-1px)}
.faq-dialog__close:focus-visible{outline:2px solid rgba(138,168,255,.75);outline-offset:2px}
.faq-dialog__content{position:relative;flex:1;overflow:auto;padding:24px 26px}
.faq-dialog__sections{display:grid;gap:18px}
@media (min-width:900px){.faq-dialog__sections{grid-template-columns:repeat(2,minmax(0,1fr))}}
.faq-section{background:rgba(17,23,36,.88);border:1px solid #1f273a;border-radius:16px;padding:18px 20px;box-shadow:0 16px 34px rgba(3,6,14,.55);display:flex;flex-direction:column;gap:12px}
.faq-section h3{margin:0;font-size:15px;font-weight:700;color:#dbe3ff;letter-spacing:.02em}
.faq-list{margin:0;display:flex;flex-direction:column;gap:14px}
.faq-item{display:flex;flex-direction:column;gap:6px}
.faq-item dt{font-weight:700;color:#9fb0ff;font-size:13px}
.faq-item dd{margin:0;color:#cbd5ff;font-size:13px;line-height:1.6}
.faq-item code{font-family:"Fira Code",Consolas,monospace;font-size:12px;background:rgba(14,20,32,.7);padding:2px 6px;border-radius:6px;border:1px solid rgba(122,162,247,.25);color:#b8caff}
.ref-arch-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:230}
.ref-arch-modal.is-open{display:flex}
.ref-arch-modal__backdrop{position:absolute;inset:0;background:rgba(8,12,22,.82);backdrop-filter:blur(10px)}
.ref-arch-modal__panel{position:relative;z-index:1;width:min(1040px,calc(100% - 40px));max-width:100%;background:rgba(14,19,31,.95);border:1px solid rgba(36,52,94,.72);border-radius:22px;box-shadow:0 32px 72px rgba(3,5,12,.7);display:flex;flex-direction:column;max-height:min(92vh,960px);overflow:hidden}
.ref-arch-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:26px;border-bottom:1px solid rgba(36,52,94,.5);background:linear-gradient(180deg,rgba(20,27,44,.92),rgba(11,16,26,.92))}
.ref-arch-modal__title-group{display:flex;flex-direction:column;gap:6px}
.ref-arch-modal__eyebrow{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:#8da2ff;opacity:.88}
.ref-arch-modal__title{margin:0;font-size:22px;font-weight:700;color:#f0f4ff;letter-spacing:.01em}
.ref-arch-modal__close{background:transparent;border:1px solid rgba(122,162,247,.32);border-radius:50%;width:34px;height:34px;color:#9fb0ff;font-size:22px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.ref-arch-modal__close:hover{background:rgba(122,162,247,.16);border-color:rgba(122,162,247,.52);transform:translateY(-1px)}
.ref-arch-modal__close:focus-visible{outline:2px solid rgba(138,168,255,.75);outline-offset:2px}
.ref-arch-modal__body{padding:24px 26px 32px;display:flex;flex-direction:column;gap:24px;overflow:auto}
.ref-arch-modal__layout{display:flex;flex-direction:column;gap:22px}
@media (min-width:860px){.ref-arch-modal__layout{display:grid;grid-template-columns:minmax(0,1.1fr)minmax(0,0.9fr);align-items:start;gap:26px}}
.ref-arch-modal__copy{display:flex;flex-direction:column;gap:20px;color:#cbd5ff;font-size:14px;line-height:1.6}
.ref-arch-modal__copy h3{margin:0;font-size:20px;font-weight:700;color:#f0f4ff;letter-spacing:.01em}
.ref-arch-modal__copy h4{margin:0 0 6px;font-size:15px;font-weight:700;color:#dbe3ff;letter-spacing:.08em;text-transform:uppercase}
.ref-arch-modal__copy h5{margin:0;font-size:14px;font-weight:700;color:#f7f9ff;letter-spacing:.04em}
.ref-arch-intent{position:relative;padding:18px 20px 22px;border-radius:18px;border:1px solid rgba(118,146,226,.35);background:linear-gradient(135deg,rgba(23,36,72,.92),rgba(16,24,46,.88));box-shadow:0 18px 42px rgba(5,8,16,.38);display:flex;flex-direction:column;gap:10px}
.ref-arch-intent::before{content:"Intent";position:absolute;top:-14px;left:18px;padding:4px 10px;border-radius:999px;background:rgba(141,162,255,.22);border:1px solid rgba(150,174,255,.45);color:#dbe3ff;font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.ref-arch-intent h4{margin:12px 0 0;font-size:13px;color:#9fb0ff;letter-spacing:.2em;text-transform:uppercase}
.ref-arch-intent__bullets{display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.7;color:#d8e2ff}
.ref-arch-intent__bullets p{margin:0}
.ref-arch-layers{display:flex;flex-direction:column;gap:14px}
.ref-arch-layer-grid{display:grid;gap:18px}
.ref-arch-layer-card{position:relative;padding:20px 20px 22px;border-radius:20px;border:1px solid rgba(118,146,226,.3);background:linear-gradient(160deg,rgba(21,31,64,.92),rgba(13,20,40,.88));box-shadow:0 16px 36px rgba(6,9,18,.32);display:flex;flex-direction:column;gap:14px;overflow:hidden}
.ref-arch-layer-card::after{content:"";position:absolute;inset:auto auto -40px 40%;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle at center,rgba(119,153,255,.35),rgba(119,153,255,0));opacity:.6;pointer-events:none}
.ref-arch-layer-card__header{display:flex;align-items:center;gap:12px}
.ref-arch-layer-card__badge{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:rgba(129,155,255,.22);border:1px solid rgba(150,174,255,.55);color:#dfe6ff;font-weight:700;font-size:16px;letter-spacing:.08em}
.ref-arch-layer-card__body{display:flex;flex-direction:column;gap:8px;color:#cfd9ff;font-size:13.5px;line-height:1.7}
.ref-arch-layer-card__body p{margin:0}
@media (min-width:680px){.ref-arch-layer-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}
@media (max-width:540px){.ref-arch-intent{padding:20px 16px 22px}.ref-arch-layer-card{padding:18px 16px 20px}}
.ref-arch-modal__hint{margin:0;font-size:12px;color:#8f9abc}
.ref-arch-modal__visual{position:relative;display:block;border:1px solid rgba(122,162,247,.2);border-radius:18px;background:linear-gradient(180deg,rgba(15,21,34,.88),rgba(10,14,24,.88));padding:20px}
.ref-arch-modal__visual-gallery{display:grid;grid-template-columns:1fr;gap:22px;width:100%}
.ref-arch-modal__visual-figure{margin:0;display:flex;flex-direction:column;gap:12px}
.ref-arch-modal__visual-title{margin:0;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#aebeff}
.ref-arch-modal__visual-figure .ref-arch-modal__zoom-trigger{width:100%}
.ref-arch-modal__visual-figure .ref-arch-modal__zoom-trigger img{width:100%}
.ref-arch-modal__zoom-trigger{background:none;border:none;padding:0;margin:0;display:block;cursor:zoom-in;border-radius:14px;overflow:hidden;box-shadow:0 18px 36px rgba(7,10,18,.36);transition:transform .22s ease,box-shadow .22s ease}
.ref-arch-modal__zoom-trigger:hover{transform:translateY(-1px);box-shadow:0 28px 48px rgba(7,10,18,.42)}
.ref-arch-modal__zoom-trigger:focus-visible{outline:2px solid rgba(138,168,255,.8);outline-offset:4px}
.ref-arch-modal__visual img{display:block;width:100%;height:auto;border-radius:14px}
.ref-arch-modal__visual-gallery figure+figure{margin-top:0}
@media (min-width:900px){.ref-arch-modal__visual-gallery{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}
.ref-arch-modal__zoom-layer{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:32px;opacity:0;pointer-events:none;transition:opacity .22s ease;z-index:260}
.ref-arch-modal--enlarged .ref-arch-modal__zoom-layer{opacity:1;pointer-events:auto}
.ref-arch-modal__zoom-backdrop{position:absolute;inset:0;background:rgba(7,10,19,.88);backdrop-filter:blur(10px)}
.ref-arch-modal__zoom-figure{position:relative;z-index:1;margin:0;max-width:min(1200px,100%);width:min(1100px,calc(100% - 48px));max-height:min(90vh,960px);display:flex;flex-direction:column;overflow:hidden;border-radius:24px;background:rgba(12,18,32,.94);border:1px solid rgba(122,162,247,.35);box-shadow:0 36px 80px rgba(0,0,0,.68)}
.ref-arch-modal__zoom-stage{position:relative;flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:rgba(10,16,28,.96);border-bottom:1px solid rgba(122,162,247,.18);cursor:zoom-in;touch-action:pan-x pan-y pinch-zoom}
.ref-arch-modal__zoom-stage img{width:100%;height:auto;max-width:none;display:block;object-fit:contain;background:#0a101c;user-select:none;pointer-events:none;transform-origin:center center;transition:transform .12s ease}
.ref-arch-modal__zoom-stage--interactive{cursor:grab;touch-action:none}
.ref-arch-modal__zoom-stage--interactive img{pointer-events:auto;cursor:inherit}
.ref-arch-modal__zoom-stage--panning{cursor:grabbing}
.ref-arch-modal__zoom-controls{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px 24px;background:linear-gradient(180deg,rgba(12,18,32,.94),rgba(9,14,26,.94));border-bottom:1px solid rgba(122,162,247,.14)}
.ref-arch-modal__zoom-status{min-width:68px;text-align:center;font-size:14px;font-weight:600;letter-spacing:.04em;color:#d7e0ff;text-transform:uppercase}
.ref-arch-modal__zoom-control{background:rgba(18,26,44,.88);border:1px solid rgba(138,168,255,.4);color:#e5ecff;font-size:18px;line-height:1;border-radius:12px;padding:10px 14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-width:44px;transition:background .16s ease,border-color .16s ease,transform .16s ease}
.ref-arch-modal__zoom-control:hover{background:rgba(138,168,255,.18);border-color:rgba(138,168,255,.62);transform:translateY(-1px)}
.ref-arch-modal__zoom-control:focus-visible{outline:2px solid rgba(155,176,255,.8);outline-offset:2px}
.ref-arch-modal__zoom-control[disabled],.ref-arch-modal__zoom-control[aria-disabled="true"]{opacity:.45;cursor:default;transform:none}
.ref-arch-modal__zoom-control--reset{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:10px 18px}
.ref-arch-modal__zoom-caption{margin:0;padding:18px 24px 24px;font-size:13px;color:#9fb0ff;line-height:1.5;background:linear-gradient(180deg,rgba(16,22,38,.94),rgba(12,18,32,.94));border-top:1px solid rgba(122,162,247,.18)}
.ref-arch-modal__zoom-close{position:absolute;top:18px;right:18px;width:38px;height:38px;border-radius:50%;border:1px solid rgba(138,168,255,.45);background:rgba(16,22,38,.88);color:#d7e0ff;font-size:22px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.ref-arch-modal__zoom-close:hover{background:rgba(138,168,255,.18);border-color:rgba(138,168,255,.65);transform:translateY(-1px)}
.ref-arch-modal__zoom-close:focus-visible{outline:2px solid rgba(155,176,255,.8);outline-offset:2px}
@media (max-width:720px){.ref-arch-modal__panel{width:calc(100% - 24px)}.ref-arch-modal__body{padding:20px}.ref-arch-modal__visual{padding:12px}.ref-arch-modal__visual-gallery{gap:16px}.ref-arch-modal__visual-title{font-size:12px;letter-spacing:.08em}.ref-arch-modal__zoom-layer{padding:18px}}
@media (prefers-reduced-motion:reduce){.ref-arch-modal__zoom-trigger,.ref-arch-modal__zoom-layer,.ref-arch-modal__zoom-close,.ref-arch-modal__zoom-stage img{transition:none}}
@media (max-width:600px){
  header.controls{flex-direction:column;align-items:flex-start}
  .faq-trigger{width:100%;justify-content:center}
}
body.agent-authoring-open,body.faq-open,body.ref-arch-open{overflow:hidden}
.agent-authoring{position:fixed;inset:0;display:none;align-items:stretch;justify-content:flex-end;z-index:240}
.agent-authoring.is-open{display:flex}
.agent-authoring__backdrop{position:absolute;inset:0;background:rgba(8,11,19,.78);backdrop-filter:blur(6px)}
.agent-authoring__panel{position:relative;z-index:1;width:min(460px,100%);max-width:100%;background:#0e1422;border-left:1px solid #1d2230;box-shadow:-20px 0 48px rgba(0,0,0,.45);display:flex;flex-direction:column;max-height:100vh}
.agent-authoring__header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #1d2230}
.agent-authoring__title{font-size:16px;font-weight:700;color:#e6ecff}
.agent-authoring__close{background:transparent;border:none;color:#8f9abc;font-size:24px;line-height:1;padding:4px;cursor:pointer}
.agent-authoring__form{flex:1;overflow:auto;padding:16px;display:flex;flex-direction:column}
.agent-authoring__field{display:flex;flex-direction:column;gap:6px;margin-top:14px}
.agent-authoring__field:first-of-type{margin-top:0}
.agent-authoring__field label{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#7483ab}
.agent-authoring__field input,.agent-authoring__field textarea,.agent-authoring__field select{background:#101728;border:1px solid #27304a;border-radius:10px;padding:10px 12px;color:#e6ecff;font-size:13px;font-family:inherit}
.agent-authoring__field input:focus,.agent-authoring__field textarea:focus,.agent-authoring__field select:focus{outline:2px solid rgba(122,162,247,.55);outline-offset:1px}
.agent-authoring__field textarea{min-height:88px;resize:vertical}
.agent-authoring__field-grid{display:grid;gap:12px;margin-top:14px}
@media (min-width:680px){.agent-authoring__field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.agent-authoring__note{margin:0;font-size:12px;color:#8892a6}
.agent-authoring__fieldset{border:1px solid #27304a;border-radius:12px;padding:12px;margin-top:16px}
.agent-authoring__fieldset legend{padding:0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#7483ab}
.agent-authoring__checkboxes{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.agent-authoring__checkbox{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#cbd5ff}
.agent-authoring__checkbox input{accent-color:#7aa2f7}
.agent-authoring__footer{padding:14px 16px;border-top:1px solid #1d2230;background:#0c111c;display:flex;justify-content:space-between;align-items:center;gap:12px}
.agent-authoring__buttons{display:flex;gap:10px;flex-wrap:wrap}
.agent-authoring__hint{font-size:12px;color:#8892a6}
@media (prefers-reduced-motion:reduce){
  .agent-card{transition:none}
  .agent-card:hover,.agent-card:focus-visible{transform:none;box-shadow:0 10px 30px rgba(0,0,0,.25)}
  .agent-guardrail{transition:none}
}
.ascmodel{
  display:grid;
  gap:8px;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
}
.entity{
  border:1px solid #27304a;
  border-radius:10px;
  padding:10px;
  background:#0f1422;
  display:flex;
  flex-direction:column;
  gap:8px;
  min-height:82px;
  cursor:pointer;
  transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease;
}
.entity .title{font-weight:800;font-size:13px;color:#d6dcff}
.entity .badge{align-self:flex-start}
.entity:focus{
  outline:2px solid var(--accent);
  outline-offset:2px;
}
.entity:hover{
  border-color:#2f3750;
  transform:translateY(-1px);
}
.entity.is-selected{
  border-color:rgba(122,162,247,.7);
  box-shadow:0 0 0 1px rgba(122,162,247,.5),0 16px 36px rgba(122,162,247,.16);
  background:rgba(18,24,38,.92);
}
.ascmodel-detail{
  margin-top:16px;
  border:1px solid #27304a;
  border-radius:12px;
  background:rgba(15,20,34,.95);
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:12px;
  min-height:160px;
  color:#dbe3ff;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.ascmodel-detail:focus{
  outline:2px solid var(--accent);
  outline-offset:2px;
}
.ascmodel-detail.has-selection{
  border-color:rgba(122,162,247,.45);
  box-shadow:0 18px 44px rgba(122,162,247,.12);
}
.ascmodel-detail__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.ascmodel-detail__eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#9fb0ff;font-weight:700}
.ascmodel-detail__title{font-size:18px;font-weight:700;color:#e6ecff;margin:2px 0 0}
.ascmodel-detail__subtitle{font-size:13px;color:#aab7ff;line-height:1.5;margin-top:4px}
.ascmodel-detail__section{display:flex;flex-direction:column;gap:8px}
.ascmodel-detail__section-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8ea2ff;font-weight:700}
.ascmodel-detail__code{background:#0e1322;border:1px solid #222b45;border-radius:10px;padding:10px;white-space:pre-wrap;font-family:'JetBrains Mono','Fira Code',monospace;font-size:12px;line-height:1.45;color:#dbe3ff;max-height:200px;overflow:auto}
.ascmodel-detail__chips{display:flex;flex-wrap:wrap;gap:6px}
.ascmodel-detail__chip{display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(122,162,247,.45);background:rgba(122,162,247,.16);padding:4px 8px;font-size:12px;font-weight:600;color:#d6dcff}
.ascmodel-detail__section--cross-domain{
  border-top:1px solid #1f2536;
  padding-top:10px;
  gap:12px;
}
.ascmodel-detail__narrative{font-size:12px;color:#bac7ff;line-height:1.5}
.ascmodel-detail__callouts{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.cross-domain-callout{
  width:100%;
  border:1px solid #27304a;
  border-radius:12px;
  background:rgba(18,24,38,.92);
  padding:10px 12px;
  display:flex;
  flex-direction:column;
  gap:6px;
  align-items:flex-start;
  color:#dbe3ff;
  text-align:left;
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,box-shadow .25s ease,background .25s ease;
  font:inherit;
  -webkit-appearance:none;
  appearance:none;
}
.cross-domain-callout:hover,.cross-domain-callout:focus-visible{
  border-color:rgba(122,162,247,.65);
  background:rgba(23,31,49,.95);
  box-shadow:0 10px 28px rgba(122,162,247,.18);
  transform:translateY(-1px);
}
.cross-domain-callout.is-active{
  border-color:rgba(122,162,247,.9);
  background:rgba(27,35,56,.97);
  box-shadow:0 12px 30px rgba(122,162,247,.24);
}
.cross-domain-callout:focus-visible{
  outline:2px solid rgba(122,162,247,.75);
  outline-offset:2px;
}
.cross-domain-callout:disabled,.cross-domain-callout[aria-disabled="true"]{
  cursor:default;
  opacity:.55;
  border-color:#27304a;
  box-shadow:none;
  transform:none;
}
.cross-domain-callout__badge{
  display:inline-flex;
  align-items:center;
  padding:2px 8px;
  border-radius:999px;
  border:1px solid rgba(122,162,247,.35);
  background:rgba(122,162,247,.18);
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#d6dcff;
}
.cross-domain-callout__copy{font-size:12px;color:#c5d4ff;line-height:1.45}
.cross-domain-callout__fields{display:flex;flex-wrap:wrap;gap:6px}
.cross-domain-callout__field{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  border:1px solid rgba(122,162,247,.4);
  background:rgba(122,162,247,.18);
  padding:3px 8px;
  font-size:11px;
  font-weight:600;
  color:#d6dcff;
}
.cross-domain-callout:disabled:hover,.cross-domain-callout:disabled:focus{
  border-color:#27304a;
  background:rgba(18,24,38,.92);
  box-shadow:none;
}
.ascmodel-detail__taglist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ascmodel-detail__taglist li{border:1px solid #27304a;border-radius:10px;padding:8px 10px;background:#101423;color:#cbd5ff;font-size:12px;line-height:1.45}
.ascmodel-detail__tag-title{display:block;font-weight:700;color:#d6dcff;margin-bottom:2px}
.ascmodel-detail__empty{font-size:12px;color:var(--muted)}
.ascmodel-mapping{margin-top:18px;border:1px solid #27304a;border-radius:14px;background:#10172c;padding:16px;display:flex;flex-direction:column;gap:12px;color:#dbe3ff}
.ascmodel-mapping__header{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.ascmodel-mapping__title{font-size:13px;font-weight:600;color:#e6ecff}
.ascmodel-mapping__subtitle{font-size:12px;color:#9fb0ff}
.ascmodel-mapping__empty{font-size:12px;color:#9fb0ff}
.kg-mapping-table{width:100%;border-collapse:collapse}
.kg-mapping-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#7483ab;padding:6px 8px;border-bottom:1px solid #27304a}
.kg-mapping-table td{font-size:12px;padding:6px 8px;border-bottom:1px solid #1f2536;vertical-align:top}
.kg-mapping-table select{width:100%;background:#0b1224;border:1px solid #27304a;border-radius:8px;padding:6px 8px;color:#e6ecff;font-size:12px}
.kg-mapping-table__field{font-weight:600;color:#e6ecff}
.kg-mapping-table__sample{font-size:11px;color:#9fb0ff;margin-top:2px;word-break:break-word}
.kg-mapping-table__cross-domain{margin-top:6px;display:flex;flex-direction:column;gap:4px}
.kg-mapping-table__cross-domain-item{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start}
.kg-mapping-table__cross-domain-badge{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  border:1px solid rgba(122,162,247,.35);
  background:rgba(122,162,247,.18);
  color:#d6dcff;
  font-size:10px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  padding:2px 6px;
}
.kg-mapping-table__cross-domain-note{font-size:11px;color:#9fb0ff;line-height:1.4;max-width:320px}
.kg-mapping-table__row--cross-domain td{background:rgba(122,162,247,.08);transition:background .25s ease,box-shadow .25s ease,opacity .25s ease}
.kg-mapping-table__row--cross-domain td:first-child{border-left:2px solid rgba(122,162,247,.45)}
.kg-mapping-table__row--cross-domain.kg-mapping-table__row--focused td{background:rgba(122,162,247,.18);box-shadow:inset 0 0 0 1px rgba(122,162,247,.25)}
.kg-mapping-table__row--cross-domain.kg-mapping-table__row--dimmed td{opacity:.55}
.cross-domain-callout,.kg-mapping-table__row--cross-domain td{position:relative}
@media (prefers-reduced-motion:reduce){
  .cross-domain-callout{transition:none}
  .cross-domain-callout:hover,.cross-domain-callout:focus-visible{transform:none;box-shadow:none}
  .kg-mapping-table__row--cross-domain td{transition:none}
}
.badge.ok,.badge.warn,.badge.block{font-size:12px}
.timeline-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}
.timeline-controls button{white-space:nowrap}
.timeline-status{font-size:12px;color:var(--muted);min-height:18px;margin-left:auto;text-align:right}
.timeline-status.is-error{color:#ef476f}
.timeline-status.is-success{color:#46d27a}
.timeline{min-height:200px;border:1px dashed #2a3146;border-radius:12px;padding:10px}
.timeline-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.timeline-event{border:1px solid #27304a;border-radius:10px;padding:10px;background:#10172c;display:flex;flex-direction:column;gap:6px}
.timeline-event__header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.timeline-event__title{font-weight:600;color:#e6ecff}
.timeline-event__meta{display:flex;align-items:center;gap:6px;font-size:11px;color:#8193d8;flex-wrap:wrap}
.timeline-event__meta .badge{font-size:10px;padding:2px 6px}
.timeline-event__timestamp{font-size:11px;color:#64719b}
.badge--source{border:1px solid #2b3350;background:#151d33;color:#9fb0ff;font-size:9px;letter-spacing:.04em;text-transform:uppercase}
.badge--source-refinery{color:#46d27a;border-color:rgba(70,210,122,.45);background:rgba(70,210,122,.12)}
.badge--source-simulated{color:#9fb0ff;border-color:#2b3350;background:#151d33}
.timeline-event__detail{font-size:12px;color:#cbd5ff;line-height:1.4}
.timeline-event__meta-line{font-size:11px;color:#9fb0ff}
.timeline-event__metrics{display:flex;flex-wrap:wrap;gap:6px}
.timeline-event__metric{font-size:11px;padding:3px 6px;border-radius:6px;background:#18213a;color:#d6dcff}
.timeline-empty{color:var(--muted);font-size:12px;text-align:center;padding:20px 0}
.inbox .item{border-bottom:1px solid #27304a;padding:8px 4px}
.code{background:#0e1322;border:1px solid #222b45;border-radius:10px;padding:10px;white-space:pre-wrap}
.muted{color:var(--muted)}
.ref-arch-launch{
  margin-top:auto;
  padding:32px 16px 16px;
  border-top:1px solid rgba(36,52,94,.45);
  display:flex;
  justify-content:flex-end;
  align-items:center;
  background:linear-gradient(180deg,rgba(9,12,20,.65),rgba(10,13,19,.85));
  backdrop-filter:blur(6px);
}
.ref-arch-launch__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 24px;
  min-width:240px;
  font-size:13px;
  font-weight:600;
  letter-spacing:.04em;
  box-shadow:0 24px 48px rgba(8,12,24,.42);
  text-transform:uppercase;
}
.ref-arch-launch__button:hover{
  transform:translateY(-1px);
  box-shadow:0 30px 60px rgba(8,12,24,.5);
}
.ref-arch-launch__button:focus-visible{
  outline:2px solid rgba(138,168,255,.78);
  outline-offset:3px;
}
@media (max-width:900px){
  .ref-arch-launch{
    justify-content:center;
    padding:24px 16px 16px;
  }
  .ref-arch-launch__button{
    width:100%;
    max-width:320px;
  }
}
footer{
  border-top:1px solid #1d2230;
  padding:8px 16px;
  color:#8b96b4;
  background:#0e121a;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  justify-content:space-between;
  font-size:12px;
}
.footer-contact{
  color:#cbd5ff;
  font-weight:600;
}
.strike{opacity:.7;text-decoration:line-through}

/* New styles for assets catalog and lifecycle */
.catalog-layout{
  display:grid;
  grid-template-columns:minmax(0,2.2fr) minmax(280px,1fr);
  gap:16px;
  align-items:start;
}
.catalog{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:12px;
}
.asset-preview{
  background:#0f1422;
  border:1px solid #27304a;
  border-radius:12px;
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:14px;
  min-height:100%;
  color:#cbd5ff;
}
.asset-preview__header{display:flex;flex-direction:column;gap:4px}
.asset-preview__title{font-size:18px;font-weight:700;color:#d6dcff}
.asset-preview__meta{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:#8c98c9}
.asset-preview__stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.asset-preview__stat{background:#10172c;border:1px solid #27304a;border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:2px}
.asset-preview__stat-label{font-size:11px;color:#94a3ff;text-transform:uppercase;letter-spacing:.06em}
.asset-preview__stat-value{font-size:18px;font-weight:700;color:#e6ecff}
.asset-preview__section{display:flex;flex-direction:column;gap:6px}
.asset-preview__section h4{margin:0;font-size:13px;font-weight:600;color:#dee6ff;text-transform:uppercase;letter-spacing:.05em}
.asset-preview__list{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#c7d2ff}
.asset-preview__list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 8px;border-radius:8px;background:#10172c;border:1px solid #1f2740}
.asset-preview__list li span:first-child{font-weight:600;color:#d6dcff}
.asset-preview__runs{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#cbd5ff}
.asset-preview__run{border:1px solid #1f2740;border-radius:8px;padding:8px;background:#10172c;display:flex;flex-direction:column;gap:4px}
.asset-preview__run-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:#94a3ff}
.asset-preview__run-kpis{font-size:11px;color:#dee6ff;display:flex;flex-wrap:wrap;gap:6px}
.asset-preview__run-kpis span{display:flex;align-items:center;gap:4px}
.asset-preview__empty{font-size:12px;color:#8c98c9;line-height:1.5}
.asset-preview__empty--inline{padding:10px;border:1px dashed #27304a;border-radius:10px;background:#10172c;color:#94a3ff}
.asset-card{
  background:#0f1422;
  border:1px solid #27304a;
  border-radius:12px;
  padding:12px;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.asset-card .title{font-weight:700;font-size:16px;color:#d6dcff}
.asset-card .meta{font-size:12px;color:var(--muted)}
.asset-card .kpi-list{font-size:12px;color:#c7d2ff;display:flex;flex-direction:column;gap:2px;margin-top:4px}
.asset-card .actions{margin-top:auto;display:flex;gap:6px}
.asset-card .actions button{flex:1;border-radius:8px;padding:6px 8px;border:1px solid #2a3146;background:#121826;color:#c7d2ff;cursor:pointer;font-size:12px}
.asset-card .actions button:hover{background:#151a2a}
.asset-card .badge-container{display:flex;gap:4px;margin-top:4px}
.asset-card .badge-container .badge{font-size:10px;padding:2px 6px;border-radius:6px;border:1px solid #27304a}
.asset-card.is-previewed{border-color:#4f6ae6;box-shadow:0 0 0 1px rgba(79,106,230,.4)}

@media (max-width:1100px){
  .catalog-layout{grid-template-columns:1fr}
  .asset-preview{order:-1}
}

/* Stepper */
.stepper{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.step{
  background:#0f1422;
  border:1px solid #27304a;
  border-radius:12px;
  padding:12px;
  display:flex;
  flex-direction:column;
  gap:6px;
  align-items:flex-start;
  cursor:pointer;
  transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease;
}
.step:hover{transform:translateY(-1px)}
.step:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.step.active:not(.warn):not(.block){border-color:rgba(122,162,247,.45)}
.step.active .num{background:rgba(122,162,247,.25);color:#e6ecff}
.step.active .label{color:#e6ecff}
.step.ok{border-color:rgba(70,210,122,.45);box-shadow:0 8px 22px rgba(70,210,122,.16)}
.step.warn{border-color:rgba(255,209,102,.45);background:rgba(255,209,102,.08)}
.step.block{border-color:rgba(239,71,111,.55);background:rgba(239,71,111,.1)}
.step.is-selected{border-color:rgba(122,162,247,.65);box-shadow:0 0 0 1px rgba(122,162,247,.45),0 16px 36px rgba(122,162,247,.18)}
.step .num{font-weight:700;font-size:13px;padding:4px 8px;border-radius:999px;background:#1b2234;color:#cbd5ff}
.step .label{font-size:13px;color:#d6dcff;font-weight:600}
.step .desc{font-size:11px;color:var(--muted);line-height:1.45}

.lifecycle-layout{display:flex;flex-wrap:wrap;gap:16px}
.lifecycle-layout .stepper{flex:2 1 380px}
.lifecycle-detail{
  flex:1 1 240px;
  min-height:164px;
  border:1px solid #2a3146;
  border-radius:12px;
  padding:14px 16px;
  background:rgba(16,20,34,.82);
  color:#cbd5ff;
  display:flex;
  flex-direction:column;
  gap:8px;
  line-height:1.5;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.lifecycle-detail.active{box-shadow:0 14px 34px rgba(0,0,0,.28)}
.lifecycle-detail.status-ok{border-color:rgba(70,210,122,.45)}
.lifecycle-detail.status-warn{border-color:rgba(255,209,102,.45)}
.lifecycle-detail.status-block{border-color:rgba(239,71,111,.55)}
.lifecycle-detail__hint{color:#9fb0ff;font-size:12px}
.lifecycle-detail__header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.lifecycle-detail__title{font-size:15px;font-weight:700;color:#e6ecff}
.lifecycle-detail__desc{font-size:12px;color:#d6dcff}
.lifecycle-detail__status{font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.04em}
.lifecycle-detail__status--ok{color:var(--ok);border-color:rgba(70,210,122,.45);background:rgba(70,210,122,.12)}
.lifecycle-detail__status--warn{color:var(--warn);border-color:rgba(255,209,102,.45);background:rgba(255,209,102,.1)}
.lifecycle-detail__status--block{color:var(--block);border-color:rgba(239,71,111,.55);background:rgba(239,71,111,.1)}
.lifecycle-detail__metrics{margin-top:2px;display:flex;flex-direction:column;gap:6px}
.lifecycle-detail__metric{display:flex;justify-content:space-between;gap:8px;font-size:12px}
.lifecycle-detail__metric dt{margin:0;font-weight:600;color:#9fb0ff}
.lifecycle-detail__metric dd{margin:0;font-weight:600;color:#e6ecff;text-align:right}

/* Wizard */
.wizard{display:flex;flex-direction:column;gap:12px}
.wizard .wizard-step{border:1px solid #27304a;border-radius:12px;padding:12px;background:#0f1422}
.wizard .wizard-step h4{margin:0 0 6px 0;font-size:14px}
.wizard .wizard-step select,.wizard .wizard-step input[type="checkbox"]{background:#121826;border:1px solid #2a3146;border-radius:6px;padding:6px;color:#c7d2ff;width:100%}
.wizard-hint{margin:4px 0;font-size:12px;color:#9fb0ff}
.wizard-overview__headline{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#f0f4ff}
.wizard-overview__domain{color:#9fb0ff;font-weight:400}
.wizard-overview__label{margin-top:6px;font-size:12px;color:#9fb0ff}
.wizard-overview__meta{margin-top:4px;font-size:12px;color:#9fb0ff}
.wizard-overview__dependencies{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.wizard-overview__dependency{background:#10172c;border:1px solid #27304a;border-radius:999px;padding:4px 10px;font-size:12px;color:#dbe3ff}
.wizard-empty{font-size:12px}
.wizard .wizard-step .map-entities{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.wizard .wizard-step .map-entities .entity-map{background:#101423;border:1px solid #242b41;border-radius:8px;padding:6px 8px;font-size:12px;color:#cbd5ff}
.wizard .wizard-step button{margin-top:8px;padding:8px 12px;border-radius:8px;border:1px solid #2a3146;background:#121826;color:#c7d2ff;cursor:pointer}
.wizard .wizard-step button:hover{background:#151a2a}

/* Deployment */
.deployment{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#c7d2ff}
.deployment .plan-item{padding:6px;border:1px solid #27304a;border-radius:8px;background:#0f1422}
.deployment .plan-item strong{color:#d6dcff}
.deployment .readiness-gates{display:flex;flex-direction:column;gap:6px}
.readiness-gates__list{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.readiness-gate__row{display:flex;flex-direction:column;gap:6px;padding:6px;border:1px solid #27304a;border-radius:8px;background:#0b1224}
.readiness-gate__header{display:flex;align-items:center;gap:8px}
.readiness-gate__label{font-weight:600;color:#d6dcff}
.readiness-gate__detail{font-size:12px;color:#8f9ed6}
.readiness-gate__subchecks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.readiness-gate__subchecks li{display:flex;align-items:center;gap:6px;font-size:12px;color:#9aaadf}
.readiness-gate__subchecks .badge{font-size:10px;padding:2px 6px}
.deployment .runbook-summary{margin-top:4px;font-size:12px;color:#9fb0ff}
.deployment .runbook-summary--detail{font-size:11px;color:#8193d8;margin-top:2px}
.deployment .plan-item.runbook-editor textarea{width:100%;min-height:48px;margin-top:6px;background:#0b1120;border:1px solid #27304a;border-radius:6px;padding:6px;color:#e6ecff;font-size:13px;resize:vertical}
.deployment .plan-item.runbook-editor .muted{margin-top:4px;font-size:11px;color:#8193d8}
.deployment .runbook-checklist{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.deployment .runbook-step{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:8px;border:1px dashed #27304a;border-radius:8px;background:rgba(18,24,38,.6)}
.deployment .runbook-step__info{flex:1 1 auto;display:flex;flex-direction:column;gap:4px}
.deployment .runbook-step__header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.deployment .runbook-step__label{font-weight:600;color:#e6ecff}
.deployment .runbook-step__desc{font-size:12px;color:#cbd5ff;line-height:1.4}
.deployment .runbook-step__meta{font-size:11px;color:#8193d8}
.deployment .runbook-step__assignment{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.deployment .runbook-step__assignment input,
.deployment .runbook-step__assignment textarea{background:#0b1120;border:1px solid #27304a;border-radius:6px;padding:6px;color:#e6ecff;font-size:12px}
.deployment .runbook-step__assignment textarea{resize:vertical}
.deployment .runbook-step__assignment input[disabled],
.deployment .runbook-step__assignment textarea[disabled]{opacity:.6;cursor:not-allowed}
.deployment .runbook-step__actions{display:flex;align-items:center;gap:8px}
.deployment .runbook-step__actions input[type="checkbox"]{width:18px;height:18px;cursor:pointer}
.deployment .runbook-step__actions button{margin-top:0;padding:8px 12px;font-size:13px}
.deployment .runbook-step__actions button.is-complete{border-color:rgba(70,210,122,.45);color:#46d27a;background:rgba(70,210,122,.1)}
.deployment button{margin-top:8px;padding:10px 14px;border-radius:10px;border:1px solid #2a3146;background:#121826;color:#c7d2ff;cursor:pointer;font-size:14px}
.deployment button:hover{background:#151a2a}
.deployment .status{font-size:12px;color:var(--muted);margin-top:6px}

/* Provenance */
.provenance-container{border:1px dashed #2a3146;border-radius:12px;padding:10px;margin-bottom:12px;background:#0f1422}
.provenance-details{font-size:12px;color:#c7d2ff;display:flex;flex-direction:column;gap:8px}
.provenance-detail-panel{border:1px solid #27304a;border-radius:10px;padding:10px;background:#10172c;display:flex;flex-direction:column;gap:6px;color:#cbd5ff;font-size:13px}
.provenance-detail__header{display:flex;flex-direction:column;gap:4px}
.provenance-detail__title{font-size:16px;font-weight:600;color:#d6dcff}
.provenance-detail__meta{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:#9fb0ff}
.provenance-detail__kpis{display:flex;flex-wrap:wrap;gap:6px;font-size:12px}
.provenance-detail__kpis span{padding:3px 6px;border-radius:6px;background:rgba(148,163,255,.12);border:1px solid rgba(148,163,255,.35);color:#dee8ff}
.provenance-detail__hint{font-size:12px;color:#8c98c9}
.provenance-detail__footer{font-size:11px;color:#8c98c9}
.provenance-detail__status{font-size:11px;color:#ffd166}
.provenance-detail__status-line{font-size:11px;color:#9fb0ff}
.provenance-event-groups{display:flex;flex-direction:column;gap:10px}
.provenance-event-group{padding:8px;border:1px solid #1f2740;border-radius:8px;background:#0b1224;display:flex;flex-direction:column;gap:6px}
.provenance-event-group__header{font-weight:600;color:#d6dcff}
.provenance-event{padding-left:10px;border-left:2px solid rgba(148,163,255,.35);display:flex;flex-direction:column;gap:3px}
.provenance-event__meta{color:#c7d2ff;font-size:12px}
.provenance-event__kpis{font-size:11px;color:#9fb0ff}
.asset-card.is-provenance-highlight{border:1px solid #46d27a;box-shadow:0 0 0 1px rgba(70,210,122,.35)}
#lifecycleStepper .step.is-provenance-highlight{box-shadow:0 0 0 2px rgba(148,163,255,.45);border-color:rgba(148,163,255,.45)}
.policy-card h3{margin-bottom:16px}
.policy-authoring{display:grid;gap:16px}
@media (min-width:960px){.policy-authoring{grid-template-columns:minmax(0,1.75fr)minmax(0,1fr)}}
.policy-authoring__main{display:flex;flex-direction:column;gap:12px}
.policy-authoring__toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.policy-authoring__status{display:flex;gap:8px;flex-wrap:wrap}
.policy-authoring__toolbar-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.policy-authoring__toolbar-actions .secondary{font-size:12px;padding:8px 12px}
.policy-format-toggle.is-alt{background:#101423;border-color:#2f3a58;color:#cbd5ff}
.policy-authoring__editor{height:320px;border:1px solid #27304a;border-radius:10px;overflow:hidden;background:#0f1422}
.policy-authoring__editor .monaco-editor,.policy-authoring__editor .monaco-editor-background{background:#0f1422}
#policyEditor.policy-editor--fallback{display:flex;flex-direction:column;background:#0f1422;color:#cbd5ff;overflow:auto}
.policy-editor-fallback{padding:16px;display:flex;flex-direction:column;gap:12px;width:100%}
.policy-editor-fallback__notice{font-size:13px;line-height:1.4;color:#9fb0ff}
.policy-editor-fallback__code{margin:0;font-size:12px;line-height:1.45;background:#05070f;border:1px solid #1f273e;border-radius:8px;padding:12px;overflow:auto;white-space:pre-wrap;word-break:break-word}
.policy-editor-fallback__code-block{font-family:var(--font-mono);display:block;color:#e2e8ff}
.policy-authoring__lint{border:1px solid #27304a;border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.4;background:#101423;color:#cbd5ff;min-height:48px}
.policy-authoring__lint.is-error{border-color:rgba(239,71,111,.6);background:rgba(239,71,111,.12);color:#ffc9d4}
.policy-authoring__sidebar{display:flex;flex-direction:column;gap:16px}
.policy-authoring__section h4{margin:0 0 6px 0;font-size:14px}
.policy-version-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.policy-version-item{border:1px solid #27304a;border-radius:10px;padding:8px 10px;background:#101423;font-size:12px;display:flex;flex-direction:column;gap:4px}
.policy-version-item__meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:11px}
.policy-test-table thead th{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:#94a3d8}
.policy-test-table tbody td{font-size:12px;vertical-align:top}
.policy-test-table tbody tr:last-child td{border-bottom:none}
.policy-test-table .badge{font-size:10px;letter-spacing:.05em;text-transform:uppercase}
.policy-preview-summary{border:1px solid #27304a;border-radius:10px;padding:10px 12px;background:#101423;font-size:12px;color:#cbd5ff;min-height:48px;display:flex;flex-direction:column;gap:6px}
.policy-preview-summary .badge{align-self:flex-start}
.policy-preview-summary__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:11px;color:#9fb0ff}
.policy-preview-summary__agent{border-top:1px solid #1f263a;padding-top:6px;margin-top:6px;display:flex;flex-direction:column;gap:6px}
.policy-preview-summary__agent-header{display:flex;flex-direction:column;gap:2px}
.policy-preview-summary__agent-header strong{font-size:12px;color:#f5f7ff}
.policy-preview-summary__agent-header span{font-size:11px;color:#9fb0ff}
.policy-preview-summary__section-label{font-size:11px;color:#7483ab;letter-spacing:.04em;text-transform:uppercase}
.policy-preview-summary__chips{display:flex;flex-wrap:wrap;gap:6px}
.policy-preview-summary__meta{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:#9fb0ff}

/* Connector registry */
.connector-card{display:flex;flex-direction:column;gap:16px}
.connector-card__header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.connector-card__actions{display:flex;gap:8px}
.connector-card__body{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:16px;align-items:start}
@media (max-width:1100px){.connector-card__body{grid-template-columns:1fr}}
.connector-catalog{display:flex;flex-direction:column;gap:12px}
.connector-pack-card{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:12px;border:1px solid #1f2738;background:#11172a;color:#cbd5ff;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.connector-pack-card:hover,.connector-pack-card:focus-visible{border-color:#364167;box-shadow:0 10px 24px rgba(8,12,22,.38);outline:none;transform:translateY(-1px)}
.connector-pack-card.is-selected{border-color:#7aa2f7;box-shadow:0 16px 32px rgba(14,24,46,.42)}
.connector-pack-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.connector-pack-card__name{font-size:15px;font-weight:600;color:#f1f4ff}
.connector-pack-card__meta{display:flex;flex-wrap:wrap;gap:6px;font-size:11px;color:#9fb0ff}
.connector-pack-card__vendor{background:rgba(122,162,247,.16);padding:2px 8px;border-radius:999px;border:1px solid rgba(122,162,247,.28)}
.connector-pack-card__summary{font-size:12px;color:#9fb0ff;line-height:1.5}
.connector-pack-card__previews{margin-top:4px}
.connector-preview-chip-list{display:flex;flex-wrap:wrap;gap:6px}
.connector-preview-chip{position:relative;display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;border:1px solid #27304a;background:#10162a;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:#cbd5ff}
.connector-preview-chip .badge{font-size:10px;padding:2px 6px;border-radius:999px}
.connector-preview-chip__label{font-weight:600;color:#f1f4ff}
.connector-preview-chip__tooltip{display:none;position:absolute;left:0;bottom:calc(100% + 6px);min-width:220px;max-width:320px;max-height:220px;padding:10px;border-radius:10px;border:1px solid #27304a;background:#060a16;box-shadow:0 18px 32px rgba(6,12,24,.6);font-size:11px;line-height:1.4;white-space:pre-wrap;color:#f1f4ff;overflow:auto;z-index:30}
.connector-preview-chip.is-hovered .connector-preview-chip__tooltip{display:block}
.connector-card__preview{margin-top:8px}
.connector-preview{display:flex;flex-direction:column;gap:8px}
.connector-preview__title{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8da2ff}
.connector-preview__item{border:1px solid #1f2738;border-radius:10px;background:#0d1322;overflow:hidden}
.connector-preview__summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;font-size:12px;color:#dbe3ff;cursor:pointer;list-style:none}
.connector-preview__summary::marker{display:none}
.connector-preview__label{font-weight:600;text-transform:uppercase;letter-spacing:.05em;flex:1;color:#f5f7ff}
.connector-preview__badge{font-size:10px;padding:2px 6px;border-radius:999px}
.connector-preview__caret{width:10px;height:10px;border-right:2px solid #7aa2f7;border-bottom:2px solid #7aa2f7;transform:rotate(45deg);transition:transform .18s ease}
.connector-preview__item[open] .connector-preview__caret{transform:rotate(-135deg)}
.connector-preview__code{margin:0;padding:12px;background:#060a16;border-top:1px solid #1f2738;font-size:11px;line-height:1.5;color:#f1f4ff;max-height:240px;overflow:auto}
.connector-detail{border:1px solid #1f2738;border-radius:12px;padding:16px;background:rgba(15,20,32,.82);display:flex;flex-direction:column;gap:16px;min-height:320px}
.connector-detail__header{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.connector-detail__title{margin:0;font-size:18px;font-weight:700;color:#f5f7ff}
.connector-detail__badges{display:flex;gap:6px;flex-wrap:wrap}
.connector-detail__meta{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#9fb0ff}
.connector-detail__summary{margin:0;font-size:13px;color:#cbd5ff;line-height:1.6}
.connector-detail__manifest{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;padding:12px;border-radius:12px;background:rgba(14,20,34,.76);border:1px solid #1f2738;font-size:12px;color:#9fb0ff}
.connector-detail__actions{display:flex;justify-content:flex-end}
.connector-detail__installs{display:flex;flex-direction:column;gap:12px}
.connector-install-list{display:flex;flex-direction:column;gap:12px}
.connector-install-card{border:1px solid #27304a;border-radius:12px;padding:12px;background:#10162a;display:flex;flex-direction:column;gap:12px;transition:border-color .18s ease,box-shadow .18s ease;cursor:pointer}
.connector-install-card.is-selected{border-color:#7aa2f7;box-shadow:0 14px 28px rgba(10,16,32,.42)}
.connector-install-card__header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.connector-install-card__tenant{font-weight:600;color:#f1f4ff}
.connector-install-card__meta{font-size:11px}
.connector-install-card__body{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#9fb0ff}
.connector-install-card__toggles{display:flex;flex-direction:column;gap:6px}
.connector-toggle{display:flex;flex-direction:column;gap:2px;font-size:11px;color:#9fb0ff}
.connector-toggle input{margin-right:6px}
.connector-toggle span{display:inline-flex;align-items:center;gap:6px}
.connector-console{display:flex;flex-direction:column;gap:12px;border:1px solid #27304a;border-radius:12px;padding:12px;background:#10162a}
.connector-console__tabs{display:flex;flex-wrap:wrap;gap:6px}
.connector-console__tab{padding:6px 12px;border-radius:999px;border:1px solid #1f2738;background:#0d1322;color:#b6c4ff;font-size:12px;cursor:pointer;transition:background .18s ease,border-color .18s ease}
.connector-console__tab.is-active{background:#7aa2f7;color:#0b0f18;border-color:#7aa2f7}
.connector-console__panel{font-size:12px;color:#cbd5ff;display:flex;flex-direction:column;gap:12px}
.connector-console__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.connector-test-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;align-items:end}
.connector-test-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#9fb0ff}
.connector-test-form select,.connector-test-form input{background:#0b1020;border:1px solid #27304a;border-radius:8px;padding:6px 8px;color:#dbe3ff}
.connector-test-output{border:1px solid #27304a;border-radius:10px;padding:10px;background:#0d1322;display:flex;flex-direction:column;gap:8px}
.connector-test-output__status{font-weight:600}
.connector-test-output__status.status-error{color:#ef7691}
.connector-test-output__status.status-throttled{color:#ffd166}
.connector-test-output pre{margin:0;font-size:11px;max-height:200px;overflow:auto;background:#060a16;padding:10px;border-radius:8px;color:#f1f4ff}
.connector-health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;font-size:12px;color:#cbd5ff}
.connector-log-list,.connector-event-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:11px;color:#cbd5ff}
.connector-log__meta,.connector-event__meta{display:block;font-size:10px;color:#8da2ff;margin-bottom:2px}
.connector-schema-diff{padding:10px;border-radius:10px;background:rgba(255,209,102,.12);border:1px solid rgba(255,209,102,.35);color:#ffd166;font-size:12px}
.connector-empty{padding:14px;border-radius:12px;background:rgba(15,20,30,.72);border:1px dashed #27304a;font-size:12px;text-align:center}
.badge--source{background:rgba(122,162,247,.18);border:1px solid rgba(122,162,247,.28);color:#9fb0ff;font-size:11px;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}
.badge--cert{background:rgba(70,210,122,.16);border:1px solid rgba(70,210,122,.32);color:#63e099;font-size:11px;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}
.success{color:#63e099}
.error{color:#ef7691}

/* Connector wizard */
.modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(8,12,20,.76);opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:1200}
.modal.is-open{opacity:1;pointer-events:auto}
.modal__dialog{background:#11172a;border:1px solid #27304a;border-radius:16px;padding:18px;box-shadow:0 28px 68px rgba(8,12,24,.55);width:min(520px,92vw);max-height:88vh;display:flex;flex-direction:column;gap:16px;transform:translateY(18px);transition:transform .18s ease}
.modal.is-open .modal__dialog{transform:translateY(0)}
.pack-diff-open{overflow:hidden}
.pack-diff-modal__dialog{gap:14px;padding:20px;width:min(620px,92vw)}
.pack-diff-modal__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.pack-diff-modal__title-group{display:flex;flex-direction:column;gap:6px}
.pack-diff-modal__eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#8da2ff}
.pack-diff-modal__title{margin:0;font-size:18px;color:#f1f4ff}
.pack-diff-modal__lede{margin:0;font-size:13px;color:#cbd5ff;max-width:52ch}
.pack-diff-modal__body{display:flex;flex-direction:column;gap:14px}
.pack-diff-summary{margin:0;padding:0;max-height:46vh;overflow:auto}
.pack-diff-summary__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.pack-diff-summary__label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8da2ff;margin-bottom:4px}
.pack-diff-summary__detail{font-size:14px;color:#e6ecff}
.pack-diff-summary__empty{font-size:13px}
.pack-diff-modal__note{margin:0;font-size:12px;color:#9fb0ff}
.pack-diff-modal__footer{display:flex;justify-content:flex-end;gap:8px}
.icon-button{background:transparent;border:1px solid #27304a;border-radius:999px;color:#9fb0ff;width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;transition:border-color .18s ease,color .18s ease}
.icon-button:hover{border-color:#7aa2f7;color:#dbe3ff}
.connector-wizard__dialog{gap:12px}
.connector-wizard__header{display:flex;justify-content:space-between;align-items:center;gap:12px}
.connector-wizard__header h4{margin:0;font-size:16px;color:#f1f4ff}
.connector-wizard__body{flex:1;overflow:auto;display:flex;flex-direction:column;gap:12px;font-size:13px;color:#cbd5ff}
.connector-wizard__footer{display:flex;justify-content:flex-end;gap:8px}
.connector-wizard__step{font-size:12px;color:#8da2ff;text-transform:uppercase;letter-spacing:.08em}
.connector-wizard__content{display:flex;flex-direction:column;gap:10px}
.connector-wizard__alert{padding:10px 12px;border-radius:10px;font-size:12px;line-height:1.4}
.connector-wizard__alert--error{background:rgba(239,118,145,.18);border:1px solid rgba(239,118,145,.45);color:#ef7691}
.connector-wizard__content label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#9fb0ff}
.connector-wizard__content input{background:#0b1020;border:1px solid #27304a;border-radius:8px;padding:6px 8px;color:#dbe3ff}
