:root {
  color-scheme: dark;
  /* Surfaces and lines are anthracite like Aura; the accents below stay (Gerd 15.10.2026). */
  --p-bg: light-dark(#f2f5f8, #0b0c0e);
  --p-surface: light-dark(#ffffff, #141519);
  --p-surface-2: light-dark(#edf1f5, #17181d);
  --p-surface-3: light-dark(#e3e9ef, #1d1e23);
  --p-surface-raised: light-dark(#ffffff, #1c1d22);
  --p-text: light-dark(#18202a, #f1f4f8);
  --p-muted: light-dark(#5b6774, #a2adbd);
  --p-border: light-dark(#d4dce5, #2a2c33);
  --p-border-strong: light-dark(#bdc8d4, #3a3d46);
  --p-blue: light-dark(#2563eb, #69a9ff);
  --p-blue-soft: light-dark(#e7f0ff, #13263f);
  --p-blue-text: light-dark(#174f9e, #94c4ff);
  --p-teal: light-dark(#0f8a72, #2bd1ad);
  --p-teal-soft: light-dark(#e0f7f2, #0b2c25);
  --p-teal-text: light-dark(#0b7a63, #7fe8d0);
  --p-btn-confirm: #14a58a;
  --p-btn-create: #2a9a5f;
  --p-btn-review: #c9992b;
  --p-btn-go: #2f66a8;
  --p-cyan: light-dark(#087fae, #46d3ff);
  --p-cyan-soft: light-dark(#e4f7fd, #0d2a37);
  --p-cyan-text: light-dark(#086184, #91e6ff);
  --p-orange: light-dark(#c96416, #f2a35c);
  --p-orange-soft: light-dark(#fff0e3, #2e1e13);
  --p-orange-text: light-dark(#914307, #ffc08a);
  --p-amber: light-dark(#956b00, #f0c94f);
  --p-amber-soft: light-dark(#fff6d9, #302711);
  --p-amber-text: light-dark(#755400, #f7dc82);
  --p-green: light-dark(#2f7b4b, #6bd394);
  --p-green-soft: light-dark(#eaf8ef, #13271d);
  --p-red: light-dark(#a43b3b, #ff817a);
  --p-red-soft: light-dark(#fff0ef, #2c1719);
  --p-violet: light-dark(#7457d7, #a58cff);
  --p-violet-soft: light-dark(#f0edff, #211b3a);
  --p-violet-text: light-dark(#6547c8, #beaaff);
  --p-shadow: light-dark(rgba(29, 40, 54, .13), rgba(0, 0, 0, .48));
  --p-glow: color-mix(in srgb, var(--p-blue) 18%, transparent);
  font-family: "Segoe UI Variable Text", "Segoe UI", Inter, ui-sans-serif, system-ui, sans-serif;
  background: var(--p-bg);
  color: var(--p-text);
}

* { box-sizing: border-box; }
html, body, #app { width: 100%; height: 100%; margin: 0; overflow: hidden; }
body { background: var(--p-bg); }
button, input, textarea { font: inherit; }
button { color: inherit; }
.p-icon { width: 18px; height: 18px; flex: none; }

.p-app-shell { display: flex; flex-direction: column; width: 100%; height: 100dvh; min-width: 320px; background: var(--p-bg); color: var(--p-text); }
.p-topbar { position: relative; z-index: 10; display: grid; grid-template-columns: minmax(220px, 1fr) auto minmax(220px, 1fr); align-items: center; min-height: 76px; padding: 11px 18px; gap: 18px; border-bottom: 1px solid color-mix(in srgb, var(--p-border) 84%, transparent); background: color-mix(in srgb, var(--p-surface) 91%, transparent); box-shadow: 0 8px 30px color-mix(in srgb, var(--p-shadow) 18%, transparent); backdrop-filter: blur(18px); }
.p-brand { display: flex; align-items: center; gap: 12px; min-width: 0; }
.p-brand-mark { position: relative; display: grid; place-items: center; width: 43px; height: 43px; overflow: hidden; border: 1px solid color-mix(in srgb, var(--p-blue) 52%, var(--p-border)); border-radius: 13px; color: #ddecff; background: linear-gradient(145deg, color-mix(in srgb, var(--p-blue) 62%, #11233c), color-mix(in srgb, var(--p-violet) 40%, #101722)); box-shadow: 0 9px 24px color-mix(in srgb, var(--p-blue) 18%, transparent), inset 0 1px rgba(255,255,255,.16); font-family: Georgia, Cambria, serif; font-size: 1.2rem; }
.p-brand-mark::before { position: absolute; width: 25px; height: 25px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; content: ""; }
.p-brand-mark span { position: relative; z-index: 1; }
.p-brand-copy strong, .p-brand-copy small { display: block; }
.p-brand-copy strong { font-size: 1rem; font-weight: 680; letter-spacing: .01em; }
.p-brand-copy small { margin-top: 3px; color: var(--p-muted); font-size: .72rem; letter-spacing: .04em; }
.p-top-truth { justify-self: center; display: flex; align-items: center; gap: 10px; min-width: 176px; padding: 7px 12px 7px 8px; border: 1px solid var(--p-border); border-radius: 999px; color: var(--p-muted); background: color-mix(in srgb, var(--p-surface-2) 80%, transparent); white-space: nowrap; }
.p-top-truth-icon { position: relative; display: grid; place-items: center; width: 29px; height: 29px; border-radius: 50%; color: var(--p-orange); background: var(--p-orange-soft); }
.p-top-truth-icon .p-icon { width: 15px; height: 15px; }
.p-top-truth > span:last-child small, .p-top-truth > span:last-child strong { display: block; }
.p-top-truth > span:last-child small { color: var(--p-muted); font-size: .6rem; font-weight: 700; letter-spacing: .085em; text-transform: uppercase; }
.p-top-truth > span:last-child strong { margin-top: 1px; color: var(--p-text); font-size: .75rem; font-weight: 650; }
.p-status-dot { position: absolute; right: -1px; bottom: -1px; width: 7px; height: 7px; border: 2px solid var(--p-surface-2); border-radius: 50%; background: var(--p-orange); }
.p-top-truth.is-connected .p-top-truth-icon { color: var(--p-green); background: var(--p-green-soft); }
.p-top-truth.is-connected .p-status-dot { background: var(--p-green); }
.p-top-truth.is-error .p-top-truth-icon { color: var(--p-red); background: var(--p-red-soft); }
.p-top-truth.is-error .p-status-dot { background: var(--p-red); }
.p-top-actions { display: flex; justify-content: flex-end; align-items: center; gap: 11px; min-width: 0; }
.p-hera-launcher { display: inline-flex; align-items: center; gap: 7px; min-height: 36px; padding: 7px 11px; border: 1px solid color-mix(in srgb, var(--p-cyan) 34%, var(--p-border)); border-radius: 999px; color: var(--p-cyan-text); background: color-mix(in srgb, var(--p-cyan-soft) 68%, transparent); cursor: pointer; font-size: .75rem; font-weight: 680; white-space: nowrap; }
.p-hera-launcher:hover:not(:disabled), .p-hera-launcher.is-active { border-color: color-mix(in srgb, var(--p-cyan) 64%, var(--p-border)); background: var(--p-cyan-soft); box-shadow: 0 0 0 3px color-mix(in srgb, var(--p-cyan) 10%, transparent); }
.p-hera-launcher:disabled { cursor: default; opacity: .55; }
.p-hera-launcher .p-icon { width: 16px; height: 16px; }
.p-budget { padding: 0 13px 0 0; border: 0; border-right: 1px solid var(--p-border); color: inherit; background: transparent; font: inherit; white-space: nowrap; text-align: right; cursor: pointer; }
.p-budget small, .p-budget strong { display: block; }
.p-budget small { color: var(--p-muted); font-size: .61rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.p-budget strong { margin-top: 2px; font-size: .77rem; font-weight: 620; }
.p-budget:hover strong, .p-budget:focus-visible strong { color: var(--p-blue-text); }
.p-avatar { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid color-mix(in srgb, var(--p-violet) 45%, var(--p-border)); border-radius: 11px; background: linear-gradient(145deg, var(--p-violet-soft), var(--p-surface-3)); color: color-mix(in srgb, var(--p-violet) 68%, var(--p-text)); font-weight: 720; }

.p-shell-body { display: grid; grid-template-columns: 204px minmax(0, 1fr); flex: 1; min-height: 0; }
.p-shell-body.has-utility-rail { grid-template-columns: 204px minmax(0, 1fr) minmax(288px, 340px); }
.p-utility-rail { display: flex; min-width: 0; min-height: 0; flex-direction: column; overflow: hidden; border-left: 1px solid var(--p-border); background: var(--p-surface); }
.p-utility-rail[hidden] { display: none; }
.p-utility-rail > .p-context { flex: 1; border-left: 0; }
.p-utility-rail-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; padding: 8px; border-bottom: 1px solid var(--p-border); background: color-mix(in srgb, var(--p-surface-2) 88%, transparent); }
.p-utility-rail-tabs button { min-height: 34px; border: 1px solid transparent; border-radius: 9px; color: var(--p-muted); background: transparent; cursor: pointer; font-size: .72rem; font-weight: 680; }
.p-utility-rail-tabs button:hover, .p-utility-rail-tabs button.is-active { border-color: color-mix(in srgb, var(--p-cyan) 38%, var(--p-border)); color: var(--p-text); background: color-mix(in srgb, var(--p-cyan-soft) 70%, transparent); }
.p-nav { display: flex; flex-direction: column; gap: 6px; min-height: 0; padding: 20px 12px 14px; border-right: 1px solid var(--p-border); background: linear-gradient(180deg, color-mix(in srgb, var(--p-surface-2) 95%, transparent), color-mix(in srgb, var(--p-surface) 88%, transparent)); }
.p-nav-label { padding: 0 10px 7px; color: var(--p-muted); font-size: .61rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.p-nav-item { --nav-accent: var(--p-blue); --nav-accent-soft: var(--p-blue-soft); --nav-accent-text: var(--p-blue-text); position: relative; display: flex; align-items: center; gap: 10px; min-height: 40px; width: 100%; padding: 6px 9px; border: 1px solid transparent; border-radius: 8px; background: transparent; color: var(--p-muted); cursor: pointer; text-align: left; transition: color .16s ease, background .16s ease, border-color .16s ease, transform .16s ease; }
.p-nav-item[data-nav-area="mission"] { --nav-accent: var(--p-violet); --nav-accent-soft: var(--p-violet-soft); --nav-accent-text: var(--p-violet-text); }
.p-nav-item[data-nav-area="hera"] { --nav-accent: var(--p-cyan); --nav-accent-soft: var(--p-cyan-soft); --nav-accent-text: var(--p-cyan-text); }
.p-nav-item[data-nav-area="company"] { --nav-accent: var(--p-green); --nav-accent-soft: var(--p-green-soft); --nav-accent-text: var(--p-green); }
.p-nav-item[data-nav-area="command"] { --nav-accent: var(--p-amber); --nav-accent-soft: var(--p-amber-soft); --nav-accent-text: var(--p-amber-text); }
.p-nav-item[data-nav-area="control"] { --nav-accent: var(--p-orange); --nav-accent-soft: var(--p-orange-soft); --nav-accent-text: var(--p-orange-text); }
.p-nav-item:hover:not(:disabled) { border-color: color-mix(in srgb, var(--nav-accent) 44%, var(--p-border)); background: color-mix(in srgb, var(--nav-accent-soft) 72%, transparent); color: var(--p-text); transform: translateX(2px); }
.p-nav-item:disabled { cursor: not-allowed; opacity: .5; }
.p-nav-item.is-active { border-color: transparent; color: var(--p-text); background: color-mix(in srgb, var(--nav-accent) 12%, transparent); box-shadow: inset 2px 0 var(--nav-accent); }
.p-nav-icon { display: grid; flex: none; place-items: center; width: 33px; height: 33px; border-radius: 9px; color: var(--nav-accent-text); }
.p-nav-item.is-active .p-nav-icon { color: var(--nav-accent-text); background: color-mix(in srgb, var(--nav-accent) 18%, transparent); box-shadow: 0 0 0 1px color-mix(in srgb, var(--nav-accent) 24%, transparent); }
.p-app-shell[data-active-area="hera"] .p-nav {
  border-color: light-dark(#cbd7e5, #243247);
  background: linear-gradient(180deg, light-dark(#f3f7fc, #111a27), light-dark(#eaf1f8, #0f1722));
}
.p-nav-copy { min-width: 0; }
.p-nav-copy strong, .p-nav-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-nav-copy strong { color: color-mix(in srgb, var(--nav-accent-text) 72%, var(--p-text)); font-size: .84rem; font-weight: 650; }
.p-nav-copy small { margin-top: 2px; color: var(--p-muted); font-size: .65rem; }
.p-nav-spacer { flex: 1; }
.p-attention-count { margin-left: auto; min-width: 21px; padding: 2px 6px; border-radius: 999px; color: light-dark(#fff, #26160d); background: var(--p-orange); box-shadow: 0 0 0 3px color-mix(in srgb, var(--p-orange) 10%, transparent); text-align: center; font-size: .7rem; font-weight: 750; }
.p-endpoint-button { display: grid; grid-template-columns: 31px minmax(0, 1fr) 16px; align-items: center; gap: 9px; width: 100%; padding: 11px 10px; border: 1px solid var(--p-border); border-radius: 12px; background: color-mix(in srgb, var(--p-surface-3) 52%, transparent); color: var(--p-text); cursor: pointer; text-align: left; }
.p-endpoint-button:hover { border-color: color-mix(in srgb, var(--p-blue) 42%, var(--p-border)); background: var(--p-blue-soft); }
.p-endpoint-button.is-locked { cursor: default; }
.p-endpoint-button.is-locked:hover { border-color: var(--p-border); background: color-mix(in srgb, var(--p-surface-3) 52%, transparent); }
.p-endpoint-icon { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 9px; color: var(--p-blue-text); background: var(--p-blue-soft); }
.p-endpoint-copy { min-width: 0; }
.p-endpoint-copy strong, .p-endpoint-copy small { display: block; }
.p-endpoint-copy strong { font-size: .75rem; }
.p-endpoint-copy small { margin-top: 3px; overflow: hidden; color: var(--p-muted); font-size: .61rem; text-overflow: ellipsis; white-space: nowrap; }
.p-endpoint-settings { width: 14px; height: 14px; color: var(--p-muted); }
.p-main { min-width: 0; min-height: 0; overflow: auto; scrollbar-color: var(--p-border) transparent; }
.p-app-unavailable { max-width: 1040px; margin: clamp(28px, 7vh, 72px) auto; padding: clamp(24px, 4vw, 48px); border: 1px solid var(--p-border); border-radius: 18px; background: color-mix(in srgb, var(--p-surface-2) 90%, transparent); box-shadow: 0 24px 72px color-mix(in srgb, var(--p-shadow) 38%, transparent); }
.p-app-unavailable h1 { margin: 10px 0 12px; font-size: clamp(1.8rem, 4vw, 3.3rem); line-height: 1.02; }
.p-app-unavailable p { max-width: 62ch; margin: 0; color: var(--p-muted); line-height: 1.65; }
.p-foundation-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; }
.p-foundation-header > div { min-width: 0; }
.p-foundation-refresh { flex: none; }
.p-foundation-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 28px 0 0; }
.p-foundation-facts > div { min-width: 0; padding: 16px 17px; border: 1px solid var(--p-border); border-radius: 13px; background: color-mix(in srgb, var(--p-surface) 66%, transparent); }
.p-foundation-facts dt { color: var(--p-muted); font-size: .64rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.p-foundation-facts dd { margin: 7px 0 0; overflow-wrap: anywhere; font-size: .9rem; font-weight: 680; }
.p-foundation-companies { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--p-border); }
.p-foundation-section-title { display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.p-foundation-section-title h2 { margin: 7px 0 0; font-size: 1.22rem; }
.p-foundation-section-title > small { color: var(--p-muted); font-size: .68rem; }
.p-foundation-company-list { display: grid; gap: 10px; margin-top: 16px; }
.p-foundation-company { display: grid; grid-template-columns: auto minmax(180px, 1fr) minmax(210px, auto) auto; align-items: center; gap: 18px; padding: 15px 16px; border: 1px solid var(--p-border); border-radius: 14px; background: color-mix(in srgb, var(--p-surface) 74%, transparent); }
.p-foundation-monogram { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; color: #e6efff; background: linear-gradient(145deg, color-mix(in srgb, var(--p-blue) 55%, #17305a), color-mix(in srgb, var(--p-violet) 46%, #1c2540)); font-weight: 760; }
.p-foundation-company-copy { min-width: 0; }
.p-foundation-company h3 { margin: 0; font-size: .96rem; }
.p-foundation-company code { display: block; margin-top: 5px; overflow-wrap: anywhere; color: var(--p-muted); font-size: .67rem; }
.p-foundation-company-counts { display: flex; flex-wrap: wrap; gap: 6px 13px; color: var(--p-muted); font-size: .72rem; }
.p-foundation-revision { min-width: 58px; text-align: right; }
.p-foundation-revision small, .p-foundation-revision strong { display: block; }
.p-foundation-revision small { color: var(--p-muted); font-size: .58rem; font-weight: 720; letter-spacing: .08em; text-transform: uppercase; }
.p-foundation-revision strong { margin-top: 4px; font-size: 1.05rem; }
.p-app-unavailable .p-foundation-empty { margin-top: 16px; }
.p-app-unavailable .p-foundation-boundary { max-width: none; margin-top: 23px; padding: 13px 15px; border-left: 2px solid var(--p-orange); background: var(--p-surface); font-size: .78rem; line-height: 1.5; }
.p-context { min-width: 0; min-height: 0; padding: 18px 14px; overflow: auto; border-left: 1px solid var(--p-border); background: linear-gradient(180deg, color-mix(in srgb, var(--p-surface-2) 92%, transparent), var(--p-surface)); }
.p-context-heading { display: flex; align-items: center; gap: 10px; margin: 0 2px 10px; padding: 3px 3px 14px; border-bottom: 1px solid var(--p-border); }
.p-context-heading-icon { display: grid; flex: none; place-items: center; width: 34px; height: 34px; border-radius: 10px; color: var(--p-violet); background: var(--p-violet-soft); }
.p-context-heading > div > span { color: var(--p-muted); font-size: .6rem; font-weight: 750; letter-spacing: .11em; text-transform: uppercase; }
.p-context h2 { margin: 2px 0 0; font-size: .95rem; }
.p-context-group { margin-top: 8px; padding: 12px 13px; border: 1px solid color-mix(in srgb, var(--p-border) 78%, transparent); border-radius: 11px; background: color-mix(in srgb, var(--p-surface-2) 66%, transparent); }
.p-context-group > span { display: block; margin-bottom: 6px; color: var(--p-muted); font-size: .63rem; font-weight: 720; letter-spacing: .085em; text-transform: uppercase; }
.p-context-group strong { display: block; font-size: .84rem; line-height: 1.35; overflow-wrap: anywhere; }
.p-context-group p { margin: 5px 0 0; color: var(--p-muted); font-size: .75rem; line-height: 1.48; overflow-wrap: anywhere; }
.p-context-technical { margin-top: 8px; color: var(--p-muted); font-size: .72rem; }
.p-context-technical summary { cursor: pointer; color: var(--p-blue); }
.p-mobile-nav { display: none; }
.p-mobile-nav .p-nav-item > .p-icon { color: var(--nav-accent-text); }

.p-page { min-height: 100%; }
.p-command-page { display: flex; flex-direction: column; height: 100%; }
.p-page-header { position: relative; display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 28px 30px 23px; overflow: hidden; border-bottom: 1px solid var(--p-border); background: var(--p-bg); }
.p-page-header > * { position: relative; z-index: 1; }
.p-page-header > div { min-width: 0; }
.p-page-header > div:first-child { flex: 1 1 auto; }
.p-page-header h1 { margin: 7px 0 0; font-size: clamp(1.55rem, 2.2vw, 2rem); font-weight: 690; letter-spacing: -.025em; }
.p-page-header p { max-width: none; margin: 7px 0 0; color: var(--p-muted); line-height: 1.48; }
.p-crew-switcher { display: flex; flex: none; gap: 9px; padding: 11px 30px; overflow-x: auto; border-bottom: 1px solid var(--p-border); background: color-mix(in srgb, var(--p-surface-2) 72%, transparent); scrollbar-width: thin; }
.p-crew-channel { display: inline-flex; align-items: center; gap: 9px; min-width: 166px; padding: 8px 10px; border: 1px solid var(--p-border); border-radius: 11px; background: color-mix(in srgb, var(--p-surface) 86%, transparent); color: var(--p-text); box-shadow: 0 5px 14px color-mix(in srgb, var(--p-shadow) 13%, transparent); text-align: left; cursor: pointer; transition: border-color .16s ease, transform .16s ease, background .16s ease; }
.p-crew-channel:hover:not(:disabled) { border-color: color-mix(in srgb, var(--p-blue) 58%, var(--p-border)); transform: translateY(-1px); }
.p-crew-channel.is-active { border-color: color-mix(in srgb, var(--p-blue) 68%, var(--p-border)); background: linear-gradient(135deg, var(--p-blue-soft), color-mix(in srgb, var(--p-violet-soft) 32%, var(--p-blue-soft))); box-shadow: inset 3px 0 0 var(--p-blue), 0 7px 18px color-mix(in srgb, var(--p-blue) 10%, transparent); }
.p-crew-channel.is-closed { color: var(--p-muted); }
.p-crew-channel:disabled { cursor: wait; opacity: .66; }
.p-crew-avatar { display: grid; flex: none; width: 32px; height: 32px; place-items: center; border: 1px solid color-mix(in srgb, var(--p-blue) 55%, var(--p-border)); border-radius: 10px; color: var(--p-blue-text); background: linear-gradient(145deg, var(--p-blue-soft), var(--p-surface-3)); box-shadow: inset 0 1px rgba(255,255,255,.08); font-family: Georgia, serif; }
.p-crew-channel > span:nth-child(2) { display: flex; min-width: 0; flex: 1; flex-direction: column; }
.p-crew-channel strong { overflow: hidden; font-size: .86rem; text-overflow: ellipsis; white-space: nowrap; }
.p-crew-channel small { margin-top: 2px; color: var(--p-muted); font-size: .72rem; }
.p-channel-status { flex: none; width: 7px; height: 7px; border-radius: 50%; background: var(--p-green); box-shadow: 0 0 0 3px var(--p-green-soft); }
.p-channel-status.is-closed { background: var(--p-orange); box-shadow: 0 0 0 3px var(--p-orange-soft); }
.p-eyebrow { display: flex; align-items: center; gap: 7px; color: var(--p-blue-text); font-size: .7rem; font-weight: 730; letter-spacing: .095em; text-transform: uppercase; }
.p-eyebrow .p-icon { width: 16px; height: 16px; }
.p-state-badge { display: inline-flex; align-items: center; gap: 7px; max-width: 100%; min-height: 27px; padding: 4px 9px; border: 1px solid var(--p-border); border-radius: 999px; background: var(--p-surface-2); color: var(--p-muted); box-shadow: inset 0 1px rgba(255,255,255,.035); font-size: .74rem; font-weight: 650; line-height: 1.25; white-space: nowrap; }
.p-state-badge.is-blue { color: var(--p-blue-text); border-color: color-mix(in srgb, var(--p-blue) 55%, var(--p-border)); background: var(--p-blue-soft); }
.p-state-badge.is-orange { color: var(--p-orange); border-color: color-mix(in srgb, var(--p-orange) 55%, var(--p-border)); background: var(--p-orange-soft); }
.p-state-badge.is-green { color: var(--p-green); border-color: color-mix(in srgb, var(--p-green) 55%, var(--p-border)); background: var(--p-green-soft); }
.p-state-badge.is-red { color: var(--p-red); border-color: color-mix(in srgb, var(--p-red) 55%, var(--p-border)); background: var(--p-red-soft); }
.p-thinking-dot { width: 8px; height: 8px; border-radius: 50%; background: currentColor; animation: p-pulse 1.4s ease-in-out infinite; }
@keyframes p-pulse { 0%,100% { opacity: .35; transform: scale(.8); } 50% { opacity: 1; transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .p-thinking-dot, .p-spinner { animation: none !important; } }

.p-centered-state { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 330px; margin: 20px; padding: 48px 24px; border: 1px dashed var(--p-border-strong); border-radius: 16px; background: color-mix(in srgb, var(--p-surface) 62%, transparent); text-align: center; }
.p-centered-state h2 { margin: 16px 0 0; font-size: 1.18rem; }
.p-centered-state p { max-width: 52ch; margin: 8px 0 18px; color: var(--p-muted); line-height: 1.55; }
.p-centered-state small { margin-top: 14px; color: var(--p-muted); }
.p-state-symbol { display: grid; place-items: center; width: 52px; height: 52px; border: 1px solid color-mix(in srgb, var(--p-blue) 28%, var(--p-border)); border-radius: 15px; color: var(--p-blue-text); background: linear-gradient(145deg, var(--p-blue-soft), color-mix(in srgb, var(--p-violet-soft) 30%, var(--p-surface-2))); box-shadow: 0 12px 28px color-mix(in srgb, var(--p-blue) 12%, transparent); }
.p-state-symbol .p-icon { width: 24px; height: 24px; }
.p-spinner { width: 26px; height: 26px; border: 2px solid var(--p-border); border-top-color: var(--p-blue); border-radius: 50%; animation: p-spin .9s linear infinite; }
@keyframes p-spin { to { transform: rotate(360deg); } }

.p-conversation-canvas { display: flex; flex: 1; flex-direction: column; width: calc(100% - 60px); min-height: 0; margin: 24px 30px 20px; overflow: hidden; border: 1px solid color-mix(in srgb, var(--p-blue) 22%, var(--p-border-strong)); border-radius: 18px; background: color-mix(in srgb, var(--p-surface) 72%, transparent); box-shadow: 0 18px 46px color-mix(in srgb, var(--p-shadow) 30%, transparent); }
.p-conversation-canvas > .p-centered-state, .p-message-stream { flex: 1; min-height: 0; }
.p-conversation-canvas > .p-centered-state { width: 100%; min-height: 240px; margin: 0; border: 0; border-radius: 0; background: transparent; }
.p-message-stream { padding: 18px 30px; overflow: auto; scrollbar-width: thin; }
.p-message-stream > * { width: 100%; }
.p-empty-conversation { padding: 64px 20px; text-align: center; }
.p-empty-conversation h2 { margin: 0; font-size: 1.15rem; }
.p-empty-conversation p { margin: 8px 0 0; color: var(--p-muted); }
.p-message { margin-top: 10px; padding: 16px 18px; border: 1px solid color-mix(in srgb, var(--p-border) 76%, transparent); border-radius: 14px; background: color-mix(in srgb, var(--p-surface) 84%, transparent); box-shadow: 0 8px 24px color-mix(in srgb, var(--p-shadow) 13%, transparent); }
.p-message.is-member { border-color: color-mix(in srgb, var(--p-blue) 28%, var(--p-border)); border-left: 3px solid var(--p-blue); background: linear-gradient(105deg, color-mix(in srgb, var(--p-blue-soft) 66%, var(--p-surface)), var(--p-surface) 44%); }
.p-message.is-gerd { border-color: color-mix(in srgb, var(--p-violet) 22%, var(--p-border)); background: linear-gradient(105deg, color-mix(in srgb, var(--p-violet-soft) 36%, var(--p-surface)), var(--p-surface) 48%); }
.p-message.is-system { padding: 12px 14px; border-style: dashed; background: color-mix(in srgb, var(--p-surface-2) 78%, transparent); }
.p-message header { display: flex; align-items: baseline; gap: 8px; }
.p-message header strong { font-weight: 650; }
.p-message header span { color: var(--p-muted); font-size: .82rem; }
.p-message-usage { color: var(--p-muted); white-space: nowrap; }
.p-message-body { max-width: 78ch; margin-top: 10px; color: color-mix(in srgb, var(--p-text) 94%, var(--p-muted)); line-height: 1.66; overflow-wrap: anywhere; user-select: text; }
.p-message-body p, .p-message-body ul, .p-message-body ol, .p-message-body blockquote, .p-message-body pre { margin: 0 0 12px; }
.p-message-body > :last-child { margin-bottom: 0; }

.p-mission-room { min-height: 100%; }
.p-mission-content { display: grid; gap: 18px; width: min(100%, 1380px); margin: 0; padding: 24px 30px 40px; }
.p-mission-composer, .p-mission-run { padding: 22px; border: 1px solid var(--p-border); border-radius: 16px; background: var(--p-surface); box-shadow: 0 16px 42px color-mix(in srgb, var(--p-shadow) 26%, transparent); }
.p-mission-composer h2, .p-mission-run h2 { margin: 5px 0 0; font-size: 1.2rem; }
.p-mission-composer > div:first-child p { max-width: 78ch; margin: 8px 0 18px; color: var(--p-muted); line-height: 1.55; }
.p-mission-composer label { display: block; margin: 14px 0 7px; color: var(--p-muted); font-size: .82rem; font-weight: 650; }
.p-mission-composer textarea { width: 100%; min-height: 132px; resize: vertical; padding: 13px; border: 1px solid var(--p-border); border-radius: 10px; background: var(--p-bg); color: var(--p-text); line-height: 1.55; }
.p-mission-composer textarea:focus, .p-mission-composer input:focus { outline: 2px solid color-mix(in srgb, var(--p-blue) 55%, transparent); outline-offset: 1px; }
.p-mission-gates { display: flex; flex-wrap: wrap; gap: 7px; margin: 14px 0; }
.p-mission-gates span { padding: 5px 9px; border: 1px solid color-mix(in srgb, var(--p-orange) 50%, var(--p-border)); border-radius: 999px; background: var(--p-orange-soft); color: var(--p-orange); font-size: .75rem; font-weight: 650; }
.p-mission-actions { display: flex; gap: 9px; margin-top: 16px; }
.p-mission-run > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding-bottom: 16px; border-bottom: 1px solid var(--p-border); }
.p-mission-flow { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 9px; padding: 18px 0; }
.p-mission-step { display: flex; min-width: 0; gap: 9px; padding: 12px; border: 1px solid var(--p-border); border-radius: 11px; color: var(--p-muted); background: linear-gradient(145deg, var(--p-surface-2), color-mix(in srgb, var(--p-surface-3) 58%, var(--p-surface-2))); }
.p-mission-step > span { display: grid; flex: none; width: 24px; height: 24px; place-items: center; border-radius: 50%; background: var(--p-surface-3); font-size: .74rem; font-weight: 700; }
.p-mission-step > div { min-width: 0; }
.p-mission-step strong, .p-mission-step small { display: block; overflow: hidden; text-overflow: ellipsis; }
.p-mission-step strong { color: var(--p-text); font-size: .81rem; }
.p-mission-step small { margin-top: 4px; font-size: .71rem; line-height: 1.35; }
.p-mission-step.is-reached { border-color: color-mix(in srgb, var(--p-blue) 50%, var(--p-border)); background: linear-gradient(145deg, var(--p-blue-soft), color-mix(in srgb, var(--p-violet-soft) 22%, var(--p-blue-soft))); box-shadow: 0 7px 17px color-mix(in srgb, var(--p-blue) 8%, transparent); }
.p-mission-step.is-reached > span { color: var(--p-blue-text); background: color-mix(in srgb, var(--p-blue) 18%, transparent); }
.p-mission-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 0 0 18px; overflow: hidden; border: 1px solid var(--p-border); border-radius: 10px; background: var(--p-border); }
.p-mission-facts div { min-width: 0; padding: 11px; background: var(--p-surface-2); }
.p-mission-facts dt { color: var(--p-muted); font-size: .7rem; font-weight: 650; letter-spacing: .06em; text-transform: uppercase; }
.p-mission-facts dd { margin: 5px 0 0; overflow: hidden; font-family: ui-monospace, Consolas, monospace; font-size: .76rem; text-overflow: ellipsis; white-space: nowrap; }
.p-contribution-card { padding: 16px; border: 1px solid color-mix(in srgb, var(--p-green) 52%, var(--p-border)); border-radius: 11px; background: var(--p-green-soft); }
.p-contribution-card h3 { margin: 7px 0 0; }
.p-contribution-card p, .p-contribution-card small { color: var(--p-muted); }
.p-contribution-card code { display: block; margin: 12px 0; overflow-wrap: anywhere; color: var(--p-green); }
.p-contribution-card small { display: block; line-height: 1.45; }
.p-review-panel, .p-review-card { margin-top: 14px; padding: 16px; border: 1px solid var(--p-border); border-radius: 11px; background: var(--p-surface-2); }
.p-review-panel h3, .p-review-card h3 { margin: 6px 0; }
.p-review-panel p, .p-review-card p, .p-review-panel small, .p-review-card small { color: var(--p-muted); line-height: 1.5; }
.p-review-panel label { display: block; margin: 14px 0 7px; color: var(--p-muted); font-size: .82rem; font-weight: 650; }
.p-review-panel textarea { width: 100%; min-height: 92px; resize: vertical; padding: 12px; border: 1px solid var(--p-border); border-radius: 9px; background: var(--p-bg); color: var(--p-text); }
.p-review-actions { display: flex; flex-wrap: wrap; gap: 9px; margin: 12px 0; }
.p-danger-button { padding: 9px 13px; border: 1px solid color-mix(in srgb, var(--p-red) 55%, var(--p-border)); border-radius: 9px; background: var(--p-red-soft); color: var(--p-red); font-weight: 650; cursor: pointer; }
.p-danger-button:disabled { opacity: .48; cursor: not-allowed; }
.p-review-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 12px 0; overflow: hidden; border: 1px solid var(--p-border); border-radius: 9px; background: var(--p-border); }
.p-review-facts div { min-width: 0; padding: 10px; background: var(--p-surface); }
.p-review-facts dt { color: var(--p-muted); font-size: .68rem; font-weight: 650; letter-spacing: .05em; text-transform: uppercase; }
.p-review-facts dd { margin: 4px 0 0; overflow-wrap: anywhere; font-family: ui-monospace, Consolas, monospace; font-size: .72rem; }

@media (max-width: 1180px) {
  .p-mission-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .p-mission-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  .p-mission-content { padding: 14px 12px 90px; }
  .p-mission-flow, .p-mission-facts { grid-template-columns: 1fr; }
  .p-mission-actions { flex-direction: column; }
  .p-review-actions { display: grid; grid-template-columns: 1fr; }
  .p-review-facts { grid-template-columns: 1fr; }
}
.p-message-body ul, .p-message-body ol { padding-left: 1.35rem; }
.p-message-body li + li { margin-top: 3px; }
.p-message-body blockquote { padding-left: 12px; border-left: 2px solid var(--p-border); color: var(--p-muted); }
.p-message-body code { padding: 1px 5px; border-radius: 5px; background: var(--p-surface-2); font-family: Consolas, "Cascadia Mono", monospace; font-size: .9em; }
.p-message-body pre { overflow-x: auto; padding: 12px; border: 1px solid var(--p-border); border-radius: 8px; background: var(--p-surface-2); }
.p-message-body pre code { padding: 0; background: transparent; }
.p-server-attachments { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.p-file-chip { display: flex; align-items: center; gap: 9px; max-width: min(100%, 360px); min-height: 42px; padding: 7px 10px; border: 1px solid var(--p-border); border-radius: 10px; color: var(--p-text); background: var(--p-surface-2); cursor: pointer; text-align: left; }
.p-file-chip:hover { border-color: var(--p-blue); }
.p-file-chip span { min-width: 0; }
.p-file-chip strong, .p-file-chip small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-file-chip strong { font-size: .86rem; }
.p-file-chip small { margin-top: 2px; color: var(--p-muted); font-size: .75rem; }
.p-activation-row { display: flex; align-items: center; gap: 9px; padding: 18px 0 10px 18px; color: var(--p-blue-text); }

.p-composer { position: relative; z-index: 5; flex: none; width: 100%; margin: 0; overflow: hidden; border: 0; border-top: 1px solid color-mix(in srgb, var(--p-blue) 25%, var(--p-border-strong)); border-radius: 0; background: color-mix(in srgb, var(--p-surface-raised) 94%, transparent); box-shadow: 0 -14px 34px color-mix(in srgb, var(--p-shadow) 20%, transparent); }
.p-composer textarea { display: block; width: 100%; min-height: 92px; max-height: 240px; padding: 14px; resize: vertical; border: 0; outline: 0; background: transparent; color: var(--p-text); line-height: 1.45; }
.p-composer textarea:focus { box-shadow: inset 0 0 0 2px var(--p-blue); }
.p-composer > footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 10px; border-top: 1px solid var(--p-border); background: color-mix(in srgb, var(--p-surface-2) 65%, transparent); }
.p-composer-tools { display: flex; align-items: center; gap: 3px; }
.p-composer-tools small { margin-left: 5px; color: var(--p-muted); white-space: nowrap; }
.p-draft-attachments { display: flex; gap: 8px; padding: 10px 10px 0; overflow-x: auto; }
.p-draft-attachment { display: grid; grid-template-columns: 42px minmax(100px, 1fr) 28px; align-items: center; gap: 8px; flex: 0 0 min(310px, 85vw); padding: 7px; border: 1px solid var(--p-border); border-radius: 10px; background: var(--p-surface-2); }
.p-draft-attachment img, .p-file-symbol { width: 42px; height: 42px; border-radius: 7px; object-fit: cover; }
.p-file-symbol { display: grid; place-items: center; color: var(--p-muted); background: var(--p-surface-3); }
.p-draft-attachment > span:nth-child(2) { min-width: 0; }
.p-draft-attachment strong, .p-draft-attachment small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-draft-attachment strong { font-size: .82rem; }
.p-draft-attachment small { margin-top: 3px; color: var(--p-muted); font-size: .7rem; }
.p-composer-notice { padding: 8px 12px; border-top: 1px solid var(--p-border); font-size: .82rem; }
.p-composer-notice.is-error { color: var(--p-red); background: var(--p-red-soft); }
.p-composer-notice.is-attention { color: var(--p-orange); background: var(--p-surface); border-left: 2px solid var(--p-orange); }
.p-composer-notice button { padding: 0; border: 0; color: inherit; background: transparent; text-decoration: underline; cursor: pointer; }

.p-icon-button { display: inline-grid; place-items: center; width: 38px; height: 38px; padding: 0; border: 1px solid transparent; border-radius: 10px; color: var(--p-muted); background: transparent; cursor: pointer; transition: color .16s ease, background .16s ease, border-color .16s ease, transform .16s ease; }
.p-icon-button:hover:not(:disabled) { border-color: color-mix(in srgb, var(--p-blue) 24%, var(--p-border)); color: var(--p-blue-text); background: var(--p-blue-soft); transform: translateY(-1px); }
.p-icon-button:disabled { opacity: .45; cursor: not-allowed; }
.p-primary-button, .p-secondary-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; padding: 0 15px; border-radius: 10px; font-weight: 670; cursor: pointer; transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease; }
.p-primary-button { border: 0; color: #fff; background: var(--p-btn-confirm); }
.p-primary-button:hover:not(:disabled) { background: color-mix(in srgb, var(--p-btn-confirm) 88%, #fff); }
.p-primary-button:disabled { opacity: .42; box-shadow: none; cursor: not-allowed; }
.p-primary-button.is-create { background: var(--p-btn-create); }
.p-primary-button.is-create:hover:not(:disabled) { background: color-mix(in srgb, var(--p-btn-create) 88%, #fff); }
.p-primary-button.is-nav { background: var(--p-btn-go); }
.p-primary-button.is-nav:hover:not(:disabled) { background: color-mix(in srgb, var(--p-btn-go) 88%, #fff); }
.p-primary-button.is-review { background: var(--p-btn-review); color: #241a05; }
.p-primary-button.is-review:hover:not(:disabled) { background: color-mix(in srgb, var(--p-btn-review) 90%, #fff); }
.p-secondary-button.is-cancel { border-color: color-mix(in srgb, var(--p-red) 52%, var(--p-border-strong)); color: var(--p-red); background: transparent; }
.p-secondary-button.is-cancel:hover:not(:disabled) { border-color: var(--p-red); color: var(--p-red); background: var(--p-red-soft); }
.p-secondary-button.is-create { border-color: color-mix(in srgb, var(--p-green) 62%, var(--p-border)); color: var(--p-green); }
.p-secondary-button.is-create:hover:not(:disabled) { border-color: var(--p-green); background: var(--p-green-soft); }
.p-secondary-button.is-nav { border-color: color-mix(in srgb, var(--p-blue) 58%, var(--p-border)); color: var(--p-blue-text); }
.p-secondary-button.is-nav:hover:not(:disabled) { border-color: var(--p-blue); background: var(--p-blue-soft); }
.p-secondary-button.is-review { border-color: color-mix(in srgb, var(--p-amber) 58%, var(--p-border)); color: var(--p-amber-text); }
.p-secondary-button.is-review:hover:not(:disabled) { border-color: var(--p-amber); background: var(--p-amber-soft); }
.p-secondary-button { border: 1px solid var(--p-border-strong); color: var(--p-text); background: linear-gradient(145deg, var(--p-surface-raised), var(--p-surface-2)); }
.p-secondary-button:hover:not(:disabled) { border-color: color-mix(in srgb, var(--p-blue) 65%, var(--p-border)); color: var(--p-blue-text); box-shadow: 0 7px 18px color-mix(in srgb, var(--p-shadow) 24%, transparent); transform: translateY(-1px); }
.p-primary-button:focus-visible, .p-secondary-button:focus-visible, .p-icon-button:focus-visible, .p-endpoint-button:focus-visible { outline: 2px solid color-mix(in srgb, var(--p-blue) 76%, transparent); outline-offset: 2px; }
.p-nav-item:focus-visible { outline: 2px solid color-mix(in srgb, var(--nav-accent) 76%, transparent); outline-offset: 2px; }

.p-control-page { overflow-wrap: anywhere; }
.p-control-content { padding: 19px 30px 38px; }
.p-control-content > * { width: min(100%, 1480px); margin-right: auto; margin-left: 0; }
.p-tabs { display: flex; align-items: center; gap: 4px; width: max-content; max-width: 100%; padding: 4px; overflow-x: auto; border: 1px solid var(--p-border); border-radius: 12px; background: color-mix(in srgb, var(--p-surface-2) 86%, transparent); box-shadow: 0 7px 20px color-mix(in srgb, var(--p-shadow) 14%, transparent); scrollbar-width: thin; }
.p-tabs button { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 0 11px; border: 1px solid transparent; border-radius: 9px; color: var(--p-muted); background: transparent; cursor: pointer; white-space: nowrap; }
.p-tabs button > .p-icon { width: 15px; height: 15px; }
.p-tabs button:hover { color: var(--p-text); background: color-mix(in srgb, var(--p-surface-3) 62%, transparent); }
.p-tabs button.is-active { border-color: color-mix(in srgb, var(--p-blue) 28%, var(--p-border)); color: var(--p-blue-text); background: linear-gradient(145deg, var(--p-blue-soft), color-mix(in srgb, var(--p-violet-soft) 22%, var(--p-blue-soft))); box-shadow: 0 5px 13px color-mix(in srgb, var(--p-blue) 9%, transparent); }
.p-tabs button span { min-width: 19px; padding: 1px 5px; border-radius: 999px; color: light-dark(#fff, #24150c); background: var(--p-orange); font-size: .68rem; font-weight: 700; }
.p-control-section { margin-top: 24px; }
.p-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.p-section-heading h2 { margin: 5px 0 0; font-size: 1.22rem; }
.p-fact-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; overflow: hidden; border: 1px solid var(--p-border); border-radius: 13px; background: var(--p-border); box-shadow: 0 10px 28px color-mix(in srgb, var(--p-shadow) 16%, transparent); }
.p-fact-grid > div { min-width: 0; padding: 16px; background: linear-gradient(145deg, var(--p-surface), color-mix(in srgb, var(--p-surface-2) 45%, var(--p-surface))); }
.p-fact-grid span, .p-fact-grid strong, .p-fact-grid small { display: block; }
.p-fact-grid span { color: var(--p-muted); font-size: .76rem; text-transform: uppercase; letter-spacing: .06em; }
.p-fact-grid strong { margin-top: 7px; }
.p-fact-grid small { margin-top: 6px; color: var(--p-muted); line-height: 1.45; }
.p-list-section { margin-top: 22px; }
.p-list-section h3 { margin: 0 0 8px; font-size: 1rem; }
.p-control-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; margin-top: 8px; padding: 13px 14px; border: 1px solid var(--p-border); border-radius: 11px; background: color-mix(in srgb, var(--p-surface) 82%, transparent); }
.p-control-row > span:first-child { min-width: 0; }
.p-control-row strong, .p-control-row small, .p-control-row code { display: block; }
.p-control-row small { margin-top: 4px; color: var(--p-muted); line-height: 1.45; }
.p-control-row code { max-width: 100%; margin-top: 6px; color: var(--p-muted); overflow-wrap: anywhere; }
.p-rights-table { overflow: hidden; border: 1px solid var(--p-border); border-radius: 13px; background: var(--p-surface); box-shadow: 0 10px 28px color-mix(in srgb, var(--p-shadow) 14%, transparent); }
.p-rights-head, .p-rights-row { display: grid; grid-template-columns: minmax(180px, 1.45fr) minmax(90px, .65fr) auto; gap: 14px; align-items: center; padding: 13px 14px; border-bottom: 1px solid var(--p-border); }
.p-rights-row:last-child { border-bottom: 0; }
.p-rights-row:nth-child(even) { background: color-mix(in srgb, var(--p-surface-2) 46%, transparent); }
.p-rights-head { color: var(--p-muted); font-size: .78rem; }
.p-rights-row strong, .p-rights-row small { display: block; }
.p-rights-row small { margin-top: 4px; color: var(--p-muted); line-height: 1.42; }
.p-honest-empty { padding: 18px; color: var(--p-muted); border: 1px dashed var(--p-border-strong); border-radius: 11px; background: color-mix(in srgb, var(--p-surface-2) 42%, transparent); }
.p-attention-panel { margin-top: 14px; padding: 14px 15px; border: 1px solid color-mix(in srgb, var(--p-orange) 28%, var(--p-border)); border-left: 2px solid var(--p-orange); border-radius: 0 11px 11px 0; color: var(--p-orange); background: var(--p-surface); }
.p-attention-panel p { margin: 5px 0 0; line-height: 1.5; }
.p-partial-failures { margin-top: 24px; color: var(--p-muted); }
.p-partial-failures summary { cursor: pointer; }
.p-partial-failures p { margin: 8px 0; }

.p-truth-tag { display: inline-flex; align-items: center; justify-content: center; max-width: 100%; min-height: 26px; padding: 3px 9px; border: 1px solid var(--p-border); border-radius: 999px; color: var(--p-muted); background: var(--p-surface-2); box-shadow: inset 0 1px rgba(255,255,255,.035); font-size: .7rem; font-weight: 680; line-height: 1.25; text-align: center; overflow-wrap: anywhere; }
.p-truth-tag.is-available { color: var(--p-blue-text); border-color: color-mix(in srgb, var(--p-blue) 50%, var(--p-border)); background: var(--p-blue-soft); }
.p-truth-tag.is-one-shot, .p-truth-tag.is-dormant { color: var(--p-orange); border-color: color-mix(in srgb, var(--p-orange) 48%, var(--p-border)); background: var(--p-orange-soft); }
.p-truth-tag.is-attention { color: var(--p-orange); border-color: color-mix(in srgb, var(--p-orange) 48%, var(--p-border)); background: var(--p-orange-soft); }
.p-truth-tag.is-disabled, .p-truth-tag.is-unavailable, .p-truth-tag.is-unknown { color: var(--p-muted); background: var(--p-surface-3); }
.p-truth-tag.is-error, .p-truth-tag.is-permission-denied { color: var(--p-red); border-color: color-mix(in srgb, var(--p-red) 48%, var(--p-border)); background: var(--p-red-soft); }
.p-overview-heading { align-items: flex-start; }
.p-overview-heading > div { min-width: 0; }
.p-overview-heading p { max-width: 74ch; margin: 7px 0 0; color: var(--p-muted); line-height: 1.5; }
.p-overview-loading { display: flex; align-items: center; gap: 11px; margin-bottom: 13px; padding: 10px 12px; border: 1px solid var(--p-border); border-radius: 10px; color: var(--p-muted); background: var(--p-surface-2); }
.p-overview-loading .p-spinner { flex: none; width: 19px; height: 19px; }
.p-overview-gates { overflow: hidden; border: 1px solid color-mix(in srgb, var(--p-orange) 38%, var(--p-border)); border-radius: 14px; background: var(--p-surface); box-shadow: 0 12px 32px color-mix(in srgb, var(--p-shadow) 18%, transparent); }
.p-overview-gates-title { display: flex; align-items: flex-start; gap: 11px; padding: 14px 16px; color: var(--p-orange); background: var(--p-surface); }
.p-overview-gates-title .p-icon { margin-top: 1px; }
.p-overview-gates-title strong, .p-overview-gates-title span { display: block; }
.p-overview-gates-title span { margin-top: 3px; color: var(--p-text); font-size: .8rem; line-height: 1.4; }
.p-overview-gate-list { padding: 0 16px; }
.p-overview-gate-list > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(150px, auto); align-items: center; gap: 14px; padding: 11px 0; border-bottom: 1px solid var(--p-border); }
.p-overview-gate-list > div:last-child { border-bottom: 0; }
.p-overview-gate-list > div > span { min-width: 0; }
.p-overview-gate-list > div > span:last-child { display: flex; align-items: center; justify-content: flex-end; gap: 9px; text-align: right; }
.p-overview-gate-list strong, .p-overview-gate-list small { display: block; overflow-wrap: anywhere; }
.p-overview-gate-list small { margin-top: 3px; color: var(--p-muted); line-height: 1.4; }
.p-overview-gate-list > div > span:last-child small { margin-top: 0; }
.p-overview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 14px; }
.p-overview-panel { min-width: 0; padding: 17px; border: 1px solid var(--p-border); border-radius: 14px; background: var(--p-surface); box-shadow: 0 12px 32px color-mix(in srgb, var(--p-shadow) 17%, transparent); }
.p-overview-panel.is-wide { grid-column: 1 / -1; }
.p-overview-panel > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 11px; }
.p-overview-panel > header > div { min-width: 0; }
.p-overview-panel h3 { margin: 4px 0 0; font-size: 1.03rem; font-weight: 650; overflow-wrap: anywhere; }
.p-overview-kicker { color: var(--p-muted); font-size: .7rem; font-weight: 650; letter-spacing: .075em; text-transform: uppercase; }
.p-overview-summary { margin: 9px 0 12px; color: var(--p-muted); line-height: 1.48; overflow-wrap: anywhere; }
.p-overview-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1px; overflow: hidden; border: 1px solid var(--p-border); border-radius: 10px; background: var(--p-border); }
.p-overview-fact { min-width: 0; padding: 12px; background: linear-gradient(145deg, var(--p-surface-2), color-mix(in srgb, var(--p-surface-3) 36%, var(--p-surface-2))); }
.p-overview-fact > div { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.p-overview-fact > div > span:first-child { color: var(--p-muted); font-size: .73rem; font-weight: 650; letter-spacing: .03em; text-transform: uppercase; }
.p-overview-fact .p-truth-tag { flex: none; max-width: 58%; }
.p-overview-fact strong { display: block; margin-top: 8px; overflow-wrap: anywhere; }
.p-overview-fact p { margin: 5px 0 0; color: var(--p-muted); font-size: .79rem; line-height: 1.45; overflow-wrap: anywhere; }
.p-cost-facts { margin-top: 14px; }

.p-company-loop-simulation { width: min(100%, 1320px); }
.p-company-loop-hero { overflow: hidden; border: 1px solid var(--p-border); border-radius: 16px; background: var(--p-surface); box-shadow: 0 18px 48px color-mix(in srgb, var(--p-shadow) 32%, transparent); }
.p-company-loop-hero-main { display: flex; align-items: flex-start; justify-content: space-between; gap: 32px; padding: 25px 27px 22px; }
.p-company-loop-heading { min-width: 0; }
.p-company-loop-heading h2 { margin: 7px 0 0; font-size: clamp(1.45rem, 2vw, 1.85rem); letter-spacing: -.025em; }
.p-company-loop-heading > p { max-width: 72ch; margin: 8px 0 0; color: var(--p-muted); line-height: 1.55; }
.p-company-loop-boundaries { display: flex; flex-wrap: wrap; align-items: center; gap: 7px 0; margin-top: 16px; color: var(--p-orange); font-size: .73rem; font-weight: 650; }
.p-company-loop-boundaries span { display: inline-flex; align-items: center; }
.p-company-loop-boundaries span:not(:last-child)::after { width: 3px; height: 3px; margin: 0 9px; border-radius: 50%; background: color-mix(in srgb, var(--p-orange) 58%, var(--p-border)); content: ""; }
.p-company-loop-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-top: 19px; }
.p-company-loop-actions button { min-height: 42px; }
.p-company-loop-actions button:focus-visible, .p-company-loop-evidence summary:focus-visible { outline: 2px solid color-mix(in srgb, var(--p-blue) 70%, transparent); outline-offset: 3px; }
.p-company-loop-hero-status { display: flex; flex: 0 0 min(265px, 31%); align-items: flex-end; flex-direction: column; gap: 7px; min-width: 0; padding-top: 2px; text-align: right; }
.p-company-loop-hero-status strong { margin-top: 7px; font-size: 1.05rem; overflow-wrap: anywhere; }
.p-company-loop-hero-status small { max-width: 100%; color: var(--p-muted); font-size: .74rem; line-height: 1.45; overflow-wrap: anywhere; }
.p-company-loop-hero > .p-overview-loading { margin: 0 27px 20px; }
.p-company-loop-hero > .p-attention-panel { margin: 0 27px 20px; }
.p-company-loop-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; padding: 17px 27px 18px; border-top: 1px solid var(--p-border); background: color-mix(in srgb, var(--p-surface-2) 72%, transparent); }
.p-company-loop-stage { position: relative; display: grid; grid-template-columns: 25px minmax(0, 1fr); gap: 9px; min-width: 0; padding-right: 24px; color: var(--p-muted); }
.p-company-loop-stage:not(:last-child)::after { position: absolute; top: 12px; right: 7px; left: 34px; height: 1px; background: var(--p-border); content: ""; }
.p-company-loop-stage-marker { position: relative; z-index: 1; display: grid; place-items: center; width: 25px; height: 25px; border: 1px solid var(--p-border); border-radius: 50%; color: var(--p-muted); background: var(--p-surface-2); font-size: .68rem; font-weight: 750; }
.p-company-loop-stage > div { position: relative; z-index: 1; min-width: 0; padding-right: 9px; background: color-mix(in srgb, var(--p-surface-2) 92%, transparent); }
.p-company-loop-stage strong, .p-company-loop-stage small { display: block; }
.p-company-loop-stage strong { color: var(--p-text); font-size: .82rem; }
.p-company-loop-stage small { margin-top: 4px; line-height: 1.4; overflow-wrap: anywhere; }
.p-company-loop-stage.is-observed .p-company-loop-stage-marker { color: var(--p-blue-text); border-color: color-mix(in srgb, var(--p-blue) 55%, var(--p-border)); background: var(--p-blue-soft); }
.p-company-loop-stage.is-observed:not(:last-child)::after { background: color-mix(in srgb, var(--p-blue) 55%, var(--p-border)); }
.p-company-loop-stage.is-active .p-company-loop-stage-marker { color: var(--p-blue-text); border-color: var(--p-blue); box-shadow: 0 0 0 4px color-mix(in srgb, var(--p-blue) 12%, transparent); }
.p-company-loop-stage.is-open .p-company-loop-stage-marker { color: var(--p-orange); border-color: color-mix(in srgb, var(--p-orange) 58%, var(--p-border)); background: var(--p-orange-soft); }
.p-company-loop-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin-top: 14px; overflow: hidden; border: 1px solid var(--p-border); border-radius: 13px; background: var(--p-border); }
.p-company-loop-summary-item { min-width: 0; padding: 15px 16px; background: var(--p-surface); }
.p-company-loop-summary-item > span, .p-company-loop-summary-item > strong, .p-company-loop-summary-item > small { display: block; }
.p-company-loop-summary-item > span { color: var(--p-muted); font-size: .7rem; font-weight: 700; letter-spacing: .075em; text-transform: uppercase; }
.p-company-loop-summary-value { margin-top: 8px; font-size: 1rem; overflow-wrap: anywhere; }
.p-company-loop-summary-value.is-available, .p-company-loop-summary-value.is-one-shot { color: var(--p-blue-text); }
.p-company-loop-summary-value.is-error, .p-company-loop-summary-value.is-permission-denied { color: var(--p-red); }
.p-company-loop-summary-value.is-dormant { color: var(--p-orange); }
.p-company-loop-summary-item > small { margin-top: 5px; color: var(--p-muted); font-size: .72rem; line-height: 1.42; overflow-wrap: anywhere; }
.p-company-loop-detail-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); align-items: start; gap: 14px; margin-top: 14px; }
.p-company-loop-detail-panel { min-width: 0; overflow: hidden; border: 1px solid var(--p-border); border-radius: 13px; background: var(--p-surface); }
.p-company-loop-detail-panel > header { display: flex; align-items: flex-start; gap: 11px; padding: 15px 16px; border-bottom: 1px solid var(--p-border); background: color-mix(in srgb, var(--p-surface-2) 68%, transparent); }
.p-company-loop-panel-icon { display: grid; flex: none; place-items: center; width: 30px; height: 30px; border-radius: 9px; color: var(--p-blue-text); background: var(--p-blue-soft); }
.p-company-loop-detail-panel h3 { margin: 0; font-size: .98rem; }
.p-company-loop-detail-panel header p { margin: 4px 0 0; color: var(--p-muted); font-size: .77rem; line-height: 1.4; }
.p-company-loop-detail-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, auto); gap: 5px 18px; padding: 12px 16px; border-bottom: 1px solid var(--p-border); }
.p-company-loop-detail-row:last-child { border-bottom: 0; }
.p-company-loop-detail-row > span { color: var(--p-muted); font-size: .71rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.p-company-loop-detail-row > strong { text-align: right; overflow-wrap: anywhere; }
.p-company-loop-detail-row > small { grid-column: 1 / -1; color: var(--p-muted); font-size: .76rem; line-height: 1.45; overflow-wrap: anywhere; }
.p-company-loop-reconciliation { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; align-items: flex-start; gap: 13px; margin-top: 14px; padding: 16px; border: 1px solid var(--p-border); border-radius: 13px; background: var(--p-surface); }
.p-company-loop-reconciliation.is-open { border-color: color-mix(in srgb, var(--p-orange) 48%, var(--p-border)); border-left: 2px solid var(--p-orange); background: var(--p-surface); }
.p-company-loop-reconciliation.is-observed { border-color: color-mix(in srgb, var(--p-blue) 38%, var(--p-border)); background: linear-gradient(90deg, var(--p-blue-soft), var(--p-surface) 36%); }
.p-company-loop-reconciliation-icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; color: var(--p-orange); background: color-mix(in srgb, var(--p-orange-soft) 76%, var(--p-surface)); }
.p-company-loop-reconciliation.is-observed .p-company-loop-reconciliation-icon { color: var(--p-blue-text); background: var(--p-blue-soft); }
.p-company-loop-reconciliation-copy { min-width: 0; }
.p-company-loop-reconciliation h3 { margin: 5px 0 0; font-size: 1rem; overflow-wrap: anywhere; }
.p-company-loop-reconciliation p { margin: 5px 0 0; color: var(--p-muted); font-size: .8rem; line-height: 1.5; }
.p-company-loop-reconciliation-state { padding: 4px 8px; border: 1px solid color-mix(in srgb, var(--p-orange) 48%, var(--p-border)); border-radius: 999px; color: var(--p-orange); background: var(--p-orange-soft); font-size: .7rem; font-weight: 700; }
.p-company-loop-reconciliation.is-observed .p-company-loop-reconciliation-state { color: var(--p-blue-text); border-color: color-mix(in srgb, var(--p-blue) 48%, var(--p-border)); background: var(--p-blue-soft); }
.p-company-loop-reconciliation-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 13px; }
.p-company-loop-reconciliation-facts > div { min-width: 0; padding: 10px; border: 1px solid var(--p-border); border-radius: 9px; background: color-mix(in srgb, var(--p-surface) 78%, transparent); }
.p-company-loop-reconciliation-facts span, .p-company-loop-reconciliation-facts strong, .p-company-loop-reconciliation-facts small { display: block; }
.p-company-loop-reconciliation-facts span { color: var(--p-muted); font-size: .68rem; font-weight: 700; letter-spacing: .055em; text-transform: uppercase; }
.p-company-loop-reconciliation-facts strong { margin-top: 5px; overflow-wrap: anywhere; }
.p-company-loop-reconciliation-facts small { margin-top: 4px; color: var(--p-muted); font-size: .72rem; line-height: 1.42; }
.p-company-loop-evidence { margin-top: 14px; overflow: hidden; border: 1px solid var(--p-border); border-radius: 13px; background: var(--p-surface); }
.p-company-loop-evidence summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 16px; cursor: pointer; list-style-position: inside; }
.p-company-loop-evidence summary > span { display: inline-flex; align-items: center; gap: 9px; font-weight: 650; }
.p-company-loop-evidence summary > small { color: var(--p-muted); text-align: right; }
.p-company-loop-evidence-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; border-top: 1px solid var(--p-border); background: var(--p-border); }
.p-company-loop-evidence-grid > div { min-width: 0; padding: 13px 15px; background: var(--p-surface-2); }
.p-company-loop-evidence-grid span, .p-company-loop-evidence-grid strong, .p-company-loop-evidence-grid small { display: block; }
.p-company-loop-evidence-grid span { color: var(--p-muted); font-size: .68rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.p-company-loop-evidence-grid strong { margin-top: 6px; overflow-wrap: anywhere; }
.p-company-loop-evidence-grid small { margin-top: 5px; color: var(--p-muted); font-size: .74rem; line-height: 1.45; overflow-wrap: anywhere; }
.p-company-loop-simulation > .p-truth-boundary { display: flex; align-items: flex-start; gap: 9px; margin-top: 14px; padding: 13px 14px; border: 1px solid color-mix(in srgb, var(--p-orange) 34%, var(--p-border)); border-left: 2px solid var(--p-orange); border-radius: 0 10px 10px 0; background: var(--p-surface); }
.p-company-loop-simulation > .p-truth-boundary .p-icon { flex: none; margin-top: 2px; color: var(--p-orange); }

.p-modal-backdrop { position: fixed; z-index: 100; inset: 0; display: grid; place-items: center; padding: 18px; background: rgba(3, 6, 10, .72); backdrop-filter: blur(10px); }
.p-modal { width: min(540px, 100%); padding: 22px; border: 1px solid var(--p-border-strong); border-radius: 17px; background: var(--p-surface-raised); box-shadow: 0 30px 90px rgba(0, 0, 0, .52); }
.p-modal header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.p-modal h2 { margin: 5px 0 0; font-size: 1.28rem; }
.p-modal > p { margin: 14px 0; color: var(--p-muted); line-height: 1.52; }
.p-modal label { display: block; margin-bottom: 7px; font-size: .82rem; font-weight: 650; }
.p-input { width: 100%; min-height: 42px; padding: 0 12px; border: 1px solid var(--p-border-strong); border-radius: 10px; color: var(--p-text); background: color-mix(in srgb, var(--p-bg) 76%, var(--p-surface)); outline: 0; }
.p-input:focus { border-color: var(--p-blue); box-shadow: 0 0 0 3px color-mix(in srgb, var(--p-blue) 14%, transparent); }
.p-inline-error { margin-top: 8px; color: var(--p-red); font-size: .82rem; }
.p-second-endpoint-label { margin-top: 15px; }
.p-optional-label { color: var(--p-muted); font-weight: 500; }
.p-connection-status { display: grid; gap: 4px; margin-top: 16px; padding: 11px 12px; border: 1px solid var(--p-border); border-left: 2px solid var(--p-orange); border-radius: 0 10px 10px 0; background: var(--p-surface); }
.p-connection-status strong { font-size: .86rem; }
.p-connection-status span { color: var(--p-muted); font-size: .79rem; line-height: 1.45; }
.p-connection-status.is-connected { border-left-color: var(--p-green); background: color-mix(in srgb, var(--p-green) 9%, var(--p-surface)); }
.p-connection-status.is-error { border-left-color: var(--p-red); background: color-mix(in srgb, var(--p-red) 9%, var(--p-surface)); }
.p-modal-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 18px; }

.p-worker-boundary { margin: 0 0 18px; }
.p-worker-layout { display: grid; grid-template-columns: minmax(230px, 286px) minmax(0, 1fr); gap: 16px; align-items: start; }
.p-worker-roster { overflow: hidden; border: 1px solid var(--p-border); border-radius: 14px; background: var(--p-surface); box-shadow: 0 13px 34px color-mix(in srgb, var(--p-shadow) 19%, transparent); }
.p-worker-roster > header { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; padding: 15px; border-bottom: 1px solid var(--p-border); background: color-mix(in srgb, var(--p-surface-2) 74%, transparent); }
.p-worker-roster > header small { color: var(--p-muted); }
.p-worker-card { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 10px; width: 100%; padding: 13px; border: 0; border-bottom: 1px solid var(--p-border); color: var(--p-text); background: transparent; cursor: pointer; text-align: left; transition: background .16s ease, box-shadow .16s ease; }
.p-worker-card:last-child { border-bottom: 0; }
.p-worker-card:hover, .p-worker-card.is-active { background: linear-gradient(90deg, var(--p-blue-soft), color-mix(in srgb, var(--p-blue-soft) 34%, transparent)); }
.p-worker-card.is-active { box-shadow: inset 3px 0 var(--p-blue); }
.p-worker-mark { grid-row: span 2; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; color: var(--p-blue-text); background: color-mix(in srgb, var(--p-blue-soft) 70%, var(--p-surface-3)); }
.p-worker-card > span:nth-child(2) { min-width: 0; }
.p-worker-card strong, .p-worker-card small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-worker-card small { margin-top: 4px; color: var(--p-muted); font-size: .75rem; }
.p-worker-card > .p-state-badge { grid-column: 2; justify-self: start; }
.p-worker-editor { min-width: 0; overflow: hidden; border: 1px solid var(--p-border); border-radius: 14px; background: var(--p-surface); box-shadow: 0 13px 36px color-mix(in srgb, var(--p-shadow) 20%, transparent); }
.p-worker-editor-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; padding: 19px 20px; border-bottom: 1px solid var(--p-border); background: color-mix(in srgb, var(--p-surface-2) 58%, transparent); }
.p-worker-editor-header h3 { margin: 5px 0 0; font-size: 1.2rem; }
.p-worker-editor-header p { margin: 5px 0 0; color: var(--p-muted); }
.p-worker-editor-header > div:last-child { display: flex; flex-direction: column; align-items: flex-end; gap: 7px; color: var(--p-muted); }
.p-worker-success { padding: 10px 14px; color: var(--p-green); background: var(--p-green-soft); border-bottom: 1px solid color-mix(in srgb, var(--p-green) 40%, var(--p-border)); }
.p-worker-editor-section { padding: 20px; border-bottom: 1px solid var(--p-border); }
.p-worker-section-title { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 15px; }
.p-worker-section-title h4 { margin: 0; font-size: 1rem; }
.p-worker-section-title p { margin: 5px 0 0; color: var(--p-muted); font-size: .84rem; line-height: 1.45; }
.p-worker-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.p-worker-form-grid label:not(.p-toggle-field) > span { display: block; margin-bottom: 7px; color: var(--p-muted); font-size: .78rem; font-weight: 650; }
.p-worker-form-grid label:nth-last-child(-n+2) { grid-column: span 1; }
.p-lines-input { display: block; min-height: 86px; padding: 9px 11px; resize: vertical; line-height: 1.45; }
.p-toggle-field { grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 13px 14px; border: 1px solid var(--p-border); border-radius: 10px; background: linear-gradient(145deg, var(--p-surface-2), color-mix(in srgb, var(--p-blue-soft) 20%, var(--p-surface-2))); }
.p-toggle-field strong, .p-toggle-field small { display: block; }
.p-toggle-field small { margin-top: 4px; color: var(--p-muted); }
.p-toggle-field input { width: 20px; height: 20px; accent-color: var(--p-blue); }
.p-permission-list { border-top: 1px solid var(--p-border); }
.p-permission-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(160px, 220px); align-items: center; gap: 14px; padding: 11px 3px; border-bottom: 1px solid var(--p-border); }
.p-permission-row strong, .p-permission-row small { display: block; }
.p-permission-row strong { text-transform: capitalize; }
.p-permission-row small { margin-top: 3px; color: var(--p-muted); font-size: .74rem; }
.p-permission-row select { min-height: 37px; }
.p-permission-row select.is-permission-allowed { color: var(--p-green); border-color: color-mix(in srgb, var(--p-green) 55%, var(--p-border)); background: var(--p-green-soft); }
.p-permission-row select.is-permission-approval { color: var(--p-orange); border-color: color-mix(in srgb, var(--p-orange) 55%, var(--p-border)); background: var(--p-orange-soft); }
.p-permission-row select.is-permission-denied { color: var(--p-red); border-color: color-mix(in srgb, var(--p-red) 45%, var(--p-border)); background: var(--p-red-soft); }
.p-worker-evidence { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; padding: 0; background: var(--p-border); }
.p-worker-evidence > div { min-width: 0; padding: 15px; background: var(--p-surface); }
.p-worker-evidence span, .p-worker-evidence strong, .p-worker-evidence small { display: block; }
.p-worker-evidence span { color: var(--p-muted); font-size: .72rem; letter-spacing: .07em; text-transform: uppercase; }
.p-worker-evidence strong { margin-top: 6px; }
.p-worker-evidence small { margin-top: 5px; color: var(--p-muted); line-height: 1.45; }
.p-worker-audit { padding: 15px 18px; border-bottom: 1px solid var(--p-border); color: var(--p-muted); }
.p-worker-audit summary { cursor: pointer; color: var(--p-text); font-weight: 650; }
.p-worker-audit article { padding: 12px 0; border-bottom: 1px solid var(--p-border); }
.p-worker-audit article header { display: flex; justify-content: space-between; gap: 12px; color: var(--p-text); }
.p-worker-audit article p { margin: 7px 0 0; }
.p-truth-boundary { margin: 0; padding: 14px 18px; color: var(--p-muted); font-size: .78rem; line-height: 1.5; }
.p-compact-state { min-height: 220px; }

* { scrollbar-width: thin; scrollbar-color: var(--p-border-strong) transparent; }
*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-thumb { border: 3px solid transparent; border-radius: 999px; background: var(--p-border-strong); background-clip: padding-box; }
*::-webkit-scrollbar-track { background: transparent; }

@media (max-width: 1240px) and (min-width: 901px) {
  .p-shell-body { grid-template-columns: 188px minmax(0, 1fr); }
  .p-shell-body.has-utility-rail { grid-template-columns: 188px minmax(0, 1fr) minmax(260px, 300px); }
  .p-nav { padding-inline: 9px; }
  .p-context { padding-inline: 11px; }
  .p-context-group { padding-inline: 10px; }
}

@media (max-width: 900px) {
  .p-topbar { grid-template-columns: minmax(0, 1fr) auto; }
  .p-top-truth { display: none; }
  .p-shell-body { display: block; overflow: auto; }
  .p-nav { display: none; }
  .p-main { min-height: auto; overflow: visible; }
  .p-utility-rail { border-left: 0; }
  .p-utility-rail-tabs { display: none; }
  .p-context { min-height: auto; overflow: visible; border-top: 1px solid var(--p-border); border-left: 0; }
  .p-mobile-nav { position: relative; z-index: 12; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 4px; min-height: 65px; padding: 5px 7px; border-top: 1px solid var(--p-border); background: color-mix(in srgb, var(--p-surface) 94%, transparent); box-shadow: 0 -10px 28px color-mix(in srgb, var(--p-shadow) 24%, transparent); backdrop-filter: blur(18px); }
  .p-mobile-nav .p-nav-item { flex-direction: column; justify-content: center; gap: 3px; min-height: 50px; padding: 4px; text-align: center; }
  .p-mobile-nav-label { display: none; }
  .p-mobile-nav .p-nav-item:hover { transform: none; }
  .p-mobile-nav .p-nav-item.is-active { border-color: color-mix(in srgb, var(--p-blue) 22%, transparent); box-shadow: inset 0 3px var(--p-blue); }
  .p-app-shell[data-active-area="hera"] .p-shell-body { display: grid; grid-template-columns: minmax(0, 1fr); overflow: hidden; }
  .p-app-shell[data-active-area="hera"] .p-main { min-height: 0; overflow: hidden; }
  .p-message-stream { padding: 10px 24px; }
  .p-worker-layout { grid-template-columns: 1fr; }
  .p-company-loop-detail-grid { grid-template-columns: 1fr; }
  .p-company-loop-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .p-worker-roster { display: flex; overflow-x: auto; }
  .p-app-unavailable { margin-inline: 27px; }
  .p-foundation-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .p-foundation-company { grid-template-columns: auto minmax(0, 1fr) auto; }
  .p-foundation-company-counts { grid-column: 2 / -1; }
  .p-worker-roster > header { min-width: 150px; border-right: 1px solid var(--p-border); border-bottom: 0; }
  .p-worker-card { min-width: 245px; border-right: 1px solid var(--p-border); border-bottom: 0; }
}

@media (max-width: 620px) {
  .p-topbar { min-height: 62px; padding: 9px 12px; }
  .p-brand-mark { width: 36px; height: 36px; }
  .p-brand small, .p-budget { display: none; }
  .p-top-actions { gap: 7px; }
  .p-hera-launcher span { display: none; }
  .p-hera-launcher { width: 36px; padding: 7px; justify-content: center; }
  .p-app-unavailable { margin: 18px 12px 88px; padding: 21px 18px; }
  .p-foundation-header, .p-foundation-section-title { align-items: stretch; flex-direction: column; }
  .p-foundation-refresh { width: 100%; }
  .p-foundation-facts { grid-template-columns: 1fr; }
  .p-foundation-company { grid-template-columns: auto minmax(0, 1fr); gap: 12px; }
  .p-foundation-company-counts { grid-column: 1 / -1; }
  .p-foundation-revision { grid-column: 1 / -1; display: flex; align-items: baseline; justify-content: space-between; text-align: left; }
  .p-page-header { flex-direction: column; padding: 18px 16px 14px; }
  .p-page-header .p-state-badge { max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
  .p-message-stream { padding: 7px 16px; }
  .p-conversation-canvas { width: calc(100% - 24px); margin: 12px; border-radius: 14px; }
  .p-conversation-canvas > .p-centered-state { padding: 24px; }
  .p-crew-switcher { padding: 9px 16px; }
  .p-crew-channel { min-width: 144px; }
  .p-message.is-member { padding-left: 12px; }
  .p-composer { bottom: auto; }
  .p-composer textarea { min-height: 82px; }
  .p-composer > footer { align-items: flex-end; }
  .p-composer-tools small { display: none; }
  .p-control-content { padding: 15px 16px 24px; }
  .p-tabs { width: 100%; }
  .p-tabs button { flex: 0 0 auto; justify-content: center; padding-inline: 8px; }
  .p-fact-grid { grid-template-columns: 1fr; }
  .p-rights-head { display: none; }
  .p-rights-row { grid-template-columns: minmax(0, 1fr) auto; }
  .p-rights-row > span:nth-child(2) { display: none; }
  .p-context { padding: 16px; }
  .p-modal { padding: 17px; }
  .p-worker-section-title { align-items: stretch; flex-direction: column; }
  .p-worker-section-title .p-primary-button { width: 100%; }
  .p-worker-form-grid { grid-template-columns: 1fr; }
  .p-worker-form-grid label:nth-last-child(-n+2) { grid-column: auto; }
  .p-permission-row { grid-template-columns: 1fr; gap: 8px; }
  .p-worker-evidence { grid-template-columns: 1fr; }
  .p-overview-grid { grid-template-columns: 1fr; }
  .p-overview-panel.is-wide { grid-column: auto; }
  .p-overview-gate-list > div { grid-template-columns: 1fr; gap: 8px; }
  .p-overview-gate-list > div > span:last-child { align-items: flex-start; justify-content: flex-start; flex-direction: column; text-align: left; }
  .p-overview-facts { grid-template-columns: 1fr; }
  .p-overview-panel > header { flex-direction: column; }
  .p-overview-fact .p-truth-tag { max-width: 62%; }
  .p-company-loop-hero-main { flex-direction: column; gap: 18px; padding: 21px 18px 19px; }
  .p-company-loop-hero-status { flex: none; align-items: flex-start; width: 100%; text-align: left; }
  .p-company-loop-hero > .p-overview-loading, .p-company-loop-hero > .p-attention-panel { margin-inline: 18px; }
  .p-company-loop-flow { grid-template-columns: 1fr; gap: 0; padding: 15px 18px 17px; }
  .p-company-loop-stage { min-height: 58px; padding: 0 0 14px; }
  .p-company-loop-stage:last-child { min-height: 25px; padding-bottom: 0; }
  .p-company-loop-stage:not(:last-child)::after { top: 25px; bottom: 0; left: 12px; width: 1px; height: auto; }
  .p-company-loop-stage > div { padding: 2px 0 0; }
  .p-company-loop-summary { grid-template-columns: 1fr; }
  .p-company-loop-detail-row { grid-template-columns: 1fr; gap: 4px; }
  .p-company-loop-detail-row > strong { text-align: left; }
  .p-company-loop-detail-row > small { grid-column: auto; }
  .p-company-loop-reconciliation { grid-template-columns: 36px minmax(0, 1fr); }
  .p-company-loop-reconciliation-state { grid-column: 2; justify-self: start; }
  .p-company-loop-reconciliation-facts, .p-company-loop-evidence-grid { grid-template-columns: 1fr; }
  .p-company-loop-evidence summary { align-items: flex-start; flex-direction: column; }
  .p-company-loop-evidence summary > small { text-align: left; }
}

@media (max-width: 370px) {
  .p-tabs button { font-size: .77rem; padding-inline: 6px; }
}
