/* id8 participant pages. Four switchable looks (body.ps-A..D) on Englobe's
   palette (englobecorp.com custom properties). Every page reads the --p-*
   variables; the board has a layout per look (.bA..bD). Mockup:
   docs/ui/2026-10-11-board-style-options.html */
:root {
  --eg-ink:#323e48; --eg-ink2:#5d656c; --eg-mute:#9ea1a1; --eg-line:#cfd2d4; --eg-mist:#ebeced;
  --eg-green:#0b8072; --eg-green6:#75b7a7; --eg-green5:#8bc9ba; --eg-green2:#d1e9e3;
  --eg-yellow:#ffd040; --eg-yellow9:#f1c12e; --eg-yellow5:#fff1c4;
  --eg-red:#ea554e; --eg-red5:#efa693; --eg-red2:#ffcdc0;
  --mono:"JetBrains Mono",ui-monospace,monospace;
  --p-ink:var(--eg-ink); --p-soft:var(--eg-ink2); --p-faint:var(--eg-mute);
  --p-paper:#f6f7f7; --p-card:#fff; --p-rule:var(--eg-mist);
  --p-accent:var(--eg-green); --p-accent-soft:var(--eg-green2);
  --p-warn:#9a5b00; --p-warn-soft:var(--eg-yellow5);
  --p-radius:20px; --p-shadow:0 6px 24px rgba(50,62,72,.07);
  --p-nav:#fff; --p-nav-ink:var(--eg-ink);
}
body.ps-B { --p-paper:#fbfaf6; --p-radius:24px; --p-shadow:5px 5px 0 var(--eg-ink); }
body.ps-C { --p-ink:#e8eef1; --p-soft:#b8c5cc; --p-faint:#8a9ba6; --p-paper:#1d252c; --p-card:#26313a;
  --p-rule:#33414c; --p-accent:#8bc9ba; --p-accent-soft:#24413d; --p-warn:#ffd040; --p-warn-soft:#3d3520;
  --p-radius:16px; --p-shadow:none; --p-nav:#232d35; --p-nav-ink:#e8eef1; }
body.ps-D { --p-paper:#eef1f2; --p-radius:14px; }

body { background:var(--p-paper); color:var(--p-ink); font-family:Figtree,"Segoe UI",system-ui,sans-serif; }
a { color:var(--p-accent); }
.p-wrap { max-width:1240px; margin:0 auto; padding:0 22px; }
.p-nav { background:var(--p-nav); border-bottom:1px solid var(--p-rule); position:sticky; top:0; z-index:40; }
.p-nav-row { display:flex; align-items:center; gap:18px; min-height:58px; flex-wrap:wrap; }
.p-brand { font-weight:800; font-size:1.2rem; color:var(--p-nav-ink); text-decoration:none; }
.p-brand span { color:var(--p-accent); }
body.ps-A .p-brand span, body.ps-D .p-brand span { color:var(--eg-green); }
body.ps-C .p-brand span { color:var(--eg-yellow); }
.p-links { display:flex; gap:15px; flex-wrap:wrap; flex:1; }
.p-links a { color:var(--p-soft); text-decoration:none; padding:4px 0; font-weight:600; font-size:.93rem; }
.p-links a.on, .p-links a:hover { color:var(--p-nav-ink); box-shadow:inset 0 -2px 0 var(--eg-yellow); }
.p-me { display:flex; align-items:center; gap:10px; color:var(--p-soft); font-size:.9rem; }
.p-signout { color:var(--p-soft) !important; }
.p-look { display:flex; background:var(--p-paper); border:1px solid var(--p-rule); border-radius:999px; padding:3px; }
.p-look button { border:0; background:transparent; color:var(--p-soft); font:700 12px Figtree; width:26px; height:24px; border-radius:999px; }
.p-look button.on { background:var(--eg-yellow); color:#1f272e; }
.p-main { padding-top:26px; padding-bottom:44px; }
.p-foot { color:var(--p-faint); font-size:.8rem; padding-bottom:30px; padding-top:10px; }

/* generic components used by every page */
.p-card { background:var(--p-card); border:1px solid var(--p-rule); border-radius:var(--p-radius); padding:18px 20px; box-shadow:var(--p-shadow); }
body.ps-B .p-card { border:2px solid var(--eg-ink); }
.p-card + .p-card { margin-top:12px; }
.p-hero h1 { font-size:2rem; font-weight:800; }
.p-lede { color:var(--p-soft); font-size:1.05rem; max-width:660px; }
.p-pill { display:inline-flex; align-items:center; gap:5px; font-size:.75rem; padding:3px 10px; border-radius:999px;
  background:var(--p-accent-soft); color:var(--p-accent); font-weight:700; }
.p-pill.f-matched { background:var(--eg-yellow5); color:#8a6a00; }
.p-pill.f-screened_out, .p-pill.f-governance_blocked, .p-pill.f-parked { background:var(--eg-red2); color:#a2362f; }
.p-pill.f-piloted, .p-pill.f-resolved_existing { background:#dfe9f7; color:#1b4f99; }
.p-pill.f-proposed { background:var(--eg-mist); color:var(--eg-ink); }
.p-idea a { color:var(--p-ink); text-decoration:none; font-weight:700; font-size:1.05rem; }
.p-idea a:hover { color:var(--p-accent); }
.p-meta { color:var(--p-faint); font-size:.84rem; }
.p-reason { color:var(--p-soft); font-size:.88rem; }
.p-btn { background:var(--eg-ink); border-color:var(--eg-ink); color:#fff; border-radius:999px; font-weight:700; padding-left:18px; padding-right:18px; }
.p-btn:hover { background:#1f272e; color:#fff; }
body.ps-C .p-btn { background:var(--eg-yellow); border-color:var(--eg-yellow); color:#1f272e; }
body.ps-D .p-btn { background:var(--eg-green); border-color:var(--eg-green); }
.p-chat { height:420px; overflow-y:auto; background:var(--p-paper); border-radius:12px; padding:12px; }
.p-msg { max-width:82%; padding:9px 13px; border-radius:14px; margin:6px 0; white-space:pre-wrap; }
.p-msg.ai { background:var(--p-card); border:1px solid var(--p-rule); }
.p-msg.me { background:var(--eg-green); color:#fff; margin-left:auto; }
.p-match { border-left:3px solid var(--eg-green); padding:6px 10px; margin:6px 0; background:var(--p-accent-soft); border-radius:6px; }
.p-review dt { color:var(--p-soft); font-weight:700; font-size:.85rem; margin-top:10px; }
.p-review dd { margin:0; white-space:pre-wrap; }
.p-history { white-space:pre-wrap; color:var(--p-soft); font-size:.9rem; }
.p-code { font-family:var(--mono); background:var(--p-paper); padding:8px 10px; border-radius:8px; word-break:break-all; }
.p-bar { height:8px; background:var(--eg-green); border-radius:4px; }
.p-note { background:var(--p-warn-soft); color:var(--p-warn); padding:10px 14px; border-radius:10px; }
.form-control, .form-select { border-radius:12px; }

/* ---------- shared widget atoms ---------- */
.w-spark polygon { opacity:.13; }
.w-avs { display:flex; align-items:center; }
.w-av { width:26px; height:26px; border-radius:50%; display:grid; place-items:center; font:700 10px Figtree; color:#fff;
  border:2px solid var(--p-card); margin-left:-8px; }
.w-av:first-child { margin-left:0; }
.w-avs .more { font:600 11.5px Figtree; color:var(--p-soft); margin-left:7px; }
.w-belt { display:inline-flex; align-items:center; gap:5px; font:600 11.5px Figtree; color:var(--p-soft); }
.w-belt i { width:18px; height:6px; border-radius:3px; display:inline-block; }
.w-steps { display:flex; gap:3px; }
.w-steps span { flex:1; height:5px; border-radius:3px; background:var(--p-rule); }
.w-lock { display:inline-flex; align-items:center; gap:4px; font:700 11.5px Figtree; color:var(--eg-red); }
.w-fate { display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:4px 11px; font:700 12px Figtree; }
.w-fate.f-proposed { background:var(--eg-mist); color:var(--eg-ink); }
.w-fate.f-matched { background:var(--eg-yellow5); color:#8a6a00; }
.w-fate.f-piloting { background:var(--eg-green2); color:var(--eg-green); }
.w-fate.f-piloted, .w-fate.f-resolved_existing { background:#dfe9f7; color:#1b4f99; }
.w-fate.f-parked, .w-fate.f-screened_out, .w-fate.f-governance_blocked { background:var(--eg-red2); color:#a2362f; }
.w-mono { display:grid; place-items:center; font-weight:800; flex:none; }
.w-empty { padding:40px; text-align:center; color:var(--p-soft); }

/* ================= A — Englobe corporate ================= */
.bA .hero { background:var(--eg-green2); padding:46px 5vw 38px; position:relative; overflow:hidden; border-radius:0 0 28px 28px; }
.bA .hero:after { content:""; position:absolute; right:-90px; top:-90px; width:330px; height:330px; border-radius:50%; background:var(--eg-yellow); }
.bA .hero:before { content:""; position:absolute; right:160px; bottom:-130px; width:230px; height:230px; border-radius:50%; background:var(--eg-green5); }
.bA .hero h1 { position:relative; z-index:1; font-size:clamp(30px,4vw,52px); line-height:1.03; margin:0 0 12px; font-weight:800; max-width:760px; color:var(--eg-ink); }
.bA .hero h1 em { font-style:normal; color:var(--eg-green); }
.bA .hero p { position:relative; z-index:1; max-width:580px; color:var(--eg-ink2); font-size:17px; margin:0 0 22px; }
.bA .cta { position:relative; z-index:1; display:flex; gap:10px; flex-wrap:wrap; }
.bA .pill { border-radius:60px; padding:12px 22px; font:700 15px Figtree; border:2px solid var(--eg-ink); background:var(--eg-ink); color:#fff; text-decoration:none; }
.bA .pill.ghost { background:transparent; color:var(--eg-ink); }
.bA .stats { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin:-24px 3vw 0; position:relative; z-index:2; }
.bA .stat { background:#fff; border-radius:20px; box-shadow:0 0 40px rgba(0,0,0,.12); padding:18px 20px; }
.bA .stat .n { font-size:38px; font-weight:800; line-height:1; color:var(--eg-ink); }
.bA .stat .n small { font-size:18px; color:var(--eg-green); }
.bA .stat .l { color:var(--eg-ink2); font-size:14px; margin-top:6px; }
.bA .bar { display:flex; gap:8px; flex-wrap:wrap; padding:28px 0 6px; align-items:center; }
.bA .chip { border-radius:60px; border:1.5px solid var(--eg-line); padding:7px 14px; font:600 13px Figtree; background:#fff; color:var(--eg-ink); text-decoration:none; }
.bA .chip.on { background:var(--eg-ink); border-color:var(--eg-ink); color:#fff; }
.bA .search { flex:1; min-width:220px; border-radius:60px; border:1.5px solid var(--eg-line); padding:10px 18px; font:500 15px Figtree; }
.bA .grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(330px,1fr)); gap:20px; padding:18px 0 20px; }
.bA .card { border-radius:20px; background:#fff; border:1px solid var(--eg-mist); box-shadow:0 6px 24px rgba(50,62,72,.07);
  padding:20px; display:flex; flex-direction:column; gap:12px; position:relative; transition:transform .15s,box-shadow .15s; color:var(--eg-ink); text-decoration:none; }
.bA .card:hover { transform:translateY(-3px); box-shadow:0 0 40px rgba(0,0,0,.15); }
.bA .top { display:flex; gap:12px; align-items:flex-start; }
.bA .w-mono { width:46px; height:46px; border-radius:50%; font-size:17px; }
.bA .t { font-weight:800; font-size:18px; line-height:1.2; }
.bA .sub { font-size:12.5px; color:var(--eg-ink2); margin-top:3px; }
.bA .w-spark { margin-left:auto; flex:none; }
.bA .desc { font-size:14.5px; line-height:1.45; color:#46525c; }
.bA .reason { font-size:12.5px; color:var(--eg-ink2); border-left:3px solid var(--eg-yellow); padding-left:9px; }
.bA .meta { display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--eg-mist); padding-top:11px; }
.bA .nums { display:flex; gap:14px; font:600 12.5px Figtree; color:var(--eg-ink2); }
.bA .nums b { color:var(--eg-ink); font-family:var(--mono); }
.bA .ribbon { position:absolute; top:16px; right:-6px; background:var(--eg-yellow); font:800 11px Figtree; padding:4px 12px; border-radius:4px 0 0 4px; letter-spacing:.04em; }
.bA .demand { display:flex; align-items:center; gap:8px; font:600 12px Figtree; color:var(--eg-ink2); }
.bA .demand .m { flex:1; height:6px; border-radius:3px; background:var(--eg-mist); overflow:hidden; }
.bA .demand .m i { display:block; height:100%; background:linear-gradient(90deg,var(--eg-green5),var(--eg-green)); }
.bA .parent { font:600 12px Figtree; color:var(--eg-green); }

/* ================= B — pastel tiles ================= */
.bB header { padding:28px 0 6px; display:flex; align-items:flex-end; gap:24px; flex-wrap:wrap; }
.bB h1 { font-family:Fraunces,serif; font-weight:800; font-size:clamp(34px,5vw,64px); line-height:.95; margin:0; letter-spacing:-.02em; }
.bB h1 span { background:var(--eg-yellow); padding:0 .12em; border-radius:12px; }
.bB header p { max-width:380px; color:var(--eg-ink2); margin:0 0 6px; }
.bB .tabs { display:flex; gap:6px; padding:16px 0; flex-wrap:wrap; align-items:center; }
.bB .tab { border-radius:14px; padding:9px 15px; font:700 14px Figtree; background:#fff; border:1.5px solid var(--eg-ink); color:var(--eg-ink); text-decoration:none; }
.bB .tab.on { background:var(--eg-ink); color:#fff; }
.bB .tab .c { font-family:var(--mono); font-size:12px; opacity:.65; margin-left:6px; }
.bB .search { border-radius:14px; border:1.5px solid var(--eg-ink); padding:8px 14px; font:500 14px Figtree; margin-left:auto; min-width:220px; }
.bB .masonry { columns:3 320px; column-gap:18px; }
.bB .card { display:block; break-inside:avoid; margin:0 0 18px; border-radius:26px; padding:20px 20px 16px; border:2px solid var(--eg-ink);
  box-shadow:6px 6px 0 var(--eg-ink); color:var(--eg-ink); text-decoration:none; transition:transform .12s; }
.bB .card:hover { transform:translate(-2px,-2px); box-shadow:8px 8px 0 var(--eg-ink); }
.bB .kicker { display:flex; justify-content:space-between; align-items:center; font:800 11px Figtree; letter-spacing:.08em; text-transform:uppercase; gap:8px; }
.bB .t { font-family:Fraunces,serif; font-size:24px; font-weight:800; line-height:1.08; margin:10px 0 8px; }
.bB .desc { font-size:15px; line-height:1.45; }
.bB .stamp { display:inline-block; border:2px solid currentColor; border-radius:10px; padding:3px 9px; font:800 11px Figtree; letter-spacing:.06em; text-transform:uppercase; transform:rotate(-2deg); white-space:nowrap; }
.bB .rw { display:flex; justify-content:space-between; align-items:center; margin-top:14px; gap:10px; }
.bB .big { font:800 30px Fraunces,serif; line-height:1; }
.bB .big small { display:block; font:600 11px Figtree; opacity:.7; margin-top:2px; }
.bB .quote { margin-top:12px; background:rgba(255,255,255,.6); border-radius:16px; padding:10px 12px; font-size:13.5px; }
.bB .quote b { display:block; font-size:12px; margin-bottom:2px; }
.bB .t-proposed { background:var(--eg-mist); } .bB .t-matched { background:var(--eg-yellow5); }
.bB .t-piloting { background:var(--eg-green2); } .bB .t-piloted, .bB .t-resolved_existing { background:#dfe9f7; }
.bB .t-parked, .bB .t-screened_out, .bB .t-governance_blocked { background:var(--eg-red2); }

/* ================= C — insight dashboard ================= */
.bC { display:grid; grid-template-columns:230px 1fr; gap:24px; }
.bC aside { background:#232d35; border:1px solid #2e3a44; border-radius:16px; padding:18px 14px; align-self:start; position:sticky; top:76px; }
.bC .facet { margin-top:6px; margin-bottom:16px; font:700 11px Figtree; letter-spacing:.1em; color:#7e8f99; text-transform:uppercase; }
.bC .facet a { display:flex; justify-content:space-between; text-transform:none; letter-spacing:0; font:500 13px Figtree; color:#c8d3d9; padding:5px 4px; text-decoration:none; border-radius:8px; }
.bC .facet a.on, .bC .facet a:hover { background:#2f3c47; color:#fff; }
.bC .facet a i { width:9px; height:9px; border-radius:50%; display:inline-block; margin-right:8px; }
.bC .search { width:100%; border-radius:10px; border:1px solid #3a4955; background:#1d252c; color:#e8eef1; padding:8px 12px; font:500 13px Figtree; margin-bottom:14px; }
.bC .kpis { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.bC .kpi { background:#26313a; border:1px solid #33414c; border-radius:16px; padding:14px 16px; display:flex; justify-content:space-between; align-items:flex-end; gap:8px; }
.bC .kpi .n { font:700 30px var(--mono); line-height:1; color:#fff; }
.bC .kpi .l { color:#93a3ad; font-size:12.5px; margin-top:6px; }
.bC .funnel { display:flex; gap:4px; margin:16px 0 20px; height:34px; }
.bC .funnel a { border-radius:8px; display:flex; align-items:center; padding:0 10px; font:700 12px Figtree; color:#1d252c; white-space:nowrap; overflow:hidden; text-decoration:none; min-width:0; }
.bC .grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:14px; }
.bC .card { background:#26313a; border:1px solid #33414c; border-radius:16px; padding:16px 16px 14px 20px; display:flex; flex-direction:column; gap:11px;
  position:relative; overflow:hidden; color:#e8eef1; text-decoration:none; }
.bC .card:before { content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--c); }
.bC .card:hover { border-color:#4a5b68; }
.bC .h { display:flex; gap:10px; align-items:flex-start; }
.bC .w-mono { width:38px; height:38px; border-radius:11px; font-size:15px; color:#1d252c; }
.bC .t { font-weight:700; font-size:16px; line-height:1.25; }
.bC .sub { font:500 11.5px var(--mono); color:#8a9ba6; margin-top:3px; }
.bC .desc { font-size:13.5px; line-height:1.45; color:#b8c5cc; }
.bC .badges { display:flex; gap:6px; flex-wrap:wrap; }
.bC .bdg { border-radius:6px; padding:3px 8px; font:700 10.5px Figtree; letter-spacing:.04em; text-transform:uppercase; background:#33414c; color:#cbd6dc; }
.bC .foot { display:grid; grid-template-columns:1fr auto; gap:10px; align-items:center; border-top:1px dashed #3a4955; padding-top:10px; }
.bC .mini { display:flex; gap:12px; font:600 11.5px var(--mono); color:#93a3ad; margin-top:6px; }
.bC .mini b { color:#fff; }
.bC .w-av { border-color:#26313a; }

/* ================= D — pipeline board ================= */
.bD .head { display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:18px; }
.bD h1 { margin:0; font-size:28px; font-weight:800; }
.bD .sla-note { font:600 13px Figtree; color:var(--eg-ink2); }
.bD .search { border-radius:60px; border:1px solid var(--eg-line); padding:8px 16px; font:500 14px Figtree; min-width:220px; }
.bD .add { margin-left:auto; border-radius:60px; background:var(--eg-green); color:#fff; padding:11px 20px; font:700 14px Figtree; text-decoration:none; }
.bD .cols { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(250px,1fr); gap:14px; overflow-x:auto; padding-bottom:6px; align-items:start; }
.bD .tools { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:-6px 0 16px; }
.bD .tools .search { flex:1 1 260px; }
.bD .tools select { border-radius:60px; border:1px solid var(--eg-line); padding:7px 12px; font:600 13px Figtree; background:#fff; color:var(--eg-ink); }
.bD .flags { display:flex; gap:6px; flex-wrap:wrap; }
.bD .fchip { border-radius:60px; border:1px solid var(--eg-line); background:#fff; padding:6px 12px; font:700 12px Figtree; color:var(--eg-ink2); }
.bD .fchip.on { background:var(--eg-ink); border-color:var(--eg-ink); color:#fff; }
.bD .sort { display:flex; align-items:center; gap:6px; font:700 12px Figtree; color:var(--eg-ink2); margin:0; }
.bD .shown { font:600 12px var(--mono); color:var(--eg-mute); }
.bD .lnk { border:0; background:none; padding:2px 4px; font:700 12px Figtree; color:var(--eg-green); }
.bD .lnk:disabled { color:var(--eg-line); }
.bD .pill-s { border:0; border-radius:60px; background:var(--eg-green); color:#fff; padding:5px 14px; font:700 12px Figtree; margin-left:auto; }
.bD .colh .ctl { display:flex; align-items:center; gap:6px; }
.bD .colh .ed { border:0; background:none; color:var(--eg-ink2); font-size:14px; padding:0 2px; line-height:1; }
.bD .colh .ed:hover { color:var(--eg-ink); }
.bD .rule { font:600 11px var(--mono); color:var(--eg-mute); padding:0 8px 8px; margin-top:-6px; }
.bD .bedit { background:#fff; border-radius:12px; padding:10px; margin-bottom:10px; display:flex; flex-direction:column; gap:8px; }
.bD .bedit label { display:flex; flex-direction:column; gap:3px; font:700 11px Figtree; color:var(--eg-ink2); margin:0; }
.bD .bedit input:not([type=color]), .bD .bedit select { border:1px solid var(--eg-line); border-radius:8px; padding:5px 8px; font:500 13px Figtree; }
.bD .bedit input[type=color] { width:44px; height:28px; border:1px solid var(--eg-line); border-radius:6px; padding:1px; }
.bD .bedit .brow { display:flex; align-items:center; gap:6px; }
.bD .drop-hint { border:2px dashed #cdd3d6; border-radius:12px; padding:18px 8px; text-align:center; font:600 12px Figtree; color:var(--eg-mute); }
.bD .col.over { outline:2px dashed var(--eg-green); outline-offset:-4px; }
.bD .add-col { min-height:80px; border:2px dashed #cdd3d6; background:transparent; font:700 13px Figtree; color:var(--eg-ink2); }
.bD .add-col:hover { border-color:var(--eg-green); color:var(--eg-green); }
.bD .card { cursor:pointer; }
.bD .card.dragging { opacity:.45; }
.bD .card a.t { color:var(--eg-ink); text-decoration:none; min-width:0; }
.bD .card .mv { flex:0 0 auto; max-width:26px; border:1px solid transparent; border-radius:6px; background:transparent; color:var(--eg-mute); font:600 11px Figtree; padding:1px 2px; cursor:pointer; }
.bD .card .mv:hover, .bD .card .mv:focus { max-width:140px; border-color:var(--eg-line); color:var(--eg-ink); }
.bD .card .rw:first-child { align-items:flex-start; gap:8px; }
.bD .col { background:#e3e7e9; border-radius:18px; padding:10px; min-height:420px; }
.bD .colh { display:flex; justify-content:space-between; align-items:center; padding:6px 8px 10px; font:800 13px Figtree; letter-spacing:.03em; text-transform:uppercase; }
.bD .colh .n { font-family:var(--mono); background:#fff; border-radius:60px; padding:2px 9px; font-size:12px; }
.bD .colh i { width:10px; height:10px; border-radius:50%; display:inline-block; margin-right:7px; }
.bD .card { display:flex; flex-direction:column; gap:9px; background:#fff; border-radius:14px; padding:13px; margin-bottom:10px;
  box-shadow:0 2px 0 rgba(50,62,72,.08); color:var(--eg-ink); text-decoration:none; }
.bD .card:hover { box-shadow:0 6px 18px rgba(50,62,72,.14); }
.bD .t { font-weight:700; font-size:14.5px; line-height:1.25; }
.bD .tags { display:flex; gap:5px; flex-wrap:wrap; }
.bD .tag { border-radius:6px; padding:2px 7px; font:700 10.5px Figtree; background:var(--eg-mist); color:var(--eg-ink2); }
.bD .rw { display:flex; justify-content:space-between; align-items:center; }
.bD .age { font:600 11px var(--mono); color:var(--eg-mute); }
.bD .age.late { color:var(--eg-red); }
.bD .sla { height:4px; border-radius:2px; background:var(--eg-mist); overflow:hidden; }
.bD .sla i { display:block; height:100%; }
.bD .why { font-size:12px; color:var(--eg-ink2); font-style:italic; }

@media (max-width:900px) {
  .bA .stats, .bC .kpis { grid-template-columns:repeat(2,1fr); }
  .bC { grid-template-columns:1fr; } .bC aside { position:static; }
}
body.ps-D .p-main.p-wrap { max-width:1640px; }

/* ---------- lifecycle widgets (phase 7) ---------- */
.w-status { display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:4px 11px; font:700 12px Figtree; }
.w-status.st-explore { background:var(--eg-mist); color:var(--eg-ink); }
.w-status.st-prove { background:var(--eg-yellow5); color:#8a6a00; }
.w-status.st-build { background:var(--eg-green2); color:var(--eg-green); }
.w-status.st-run { background:#dfe9f7; color:#1b4f99; }
.w-status.st-settled, .w-status.st-resolved_existing { background:#e3f1ec; color:#226b56; }
.w-status.st-merged { background:#ece6f7; color:#5b3f99; }
.w-status.st-parked, .w-status.st-archived { background:var(--eg-red2); color:#a2362f; }
.bC .bdg.w-status, .bD .tag.w-status { border-radius:6px; padding:2px 8px; font-size:10.5px; }
.w-tier { display:inline-flex; font:700 11px Figtree; padding:3px 9px; border-radius:999px; border:1.5px dashed var(--eg-line); color:var(--p-soft); }
.w-flag { display:inline-flex; font:700 11px Figtree; padding:2px 8px; border-radius:6px; margin-right:6px; }
.w-flag.warn { background:var(--eg-yellow5); color:#8a6a00; }
.w-flag.seat { background:var(--eg-green2); color:var(--eg-green); }
.w-phases { display:flex; gap:8px; }
.w-phases .ph { flex:1; min-width:0; }
.w-phases .segs { display:flex; gap:2px; }
.w-phases .segs span { flex:1; height:6px; border-radius:3px; background:var(--p-rule); }
.w-phases small { display:block; font:600 10.5px Figtree; color:var(--p-faint); margin-top:3px; letter-spacing:.02em; }
.w-phases .ph.cur small { color:var(--p-ink); }
.bB .t-explore { background:var(--eg-mist); } .bB .t-prove { background:var(--eg-yellow5); }
.bB .t-build { background:var(--eg-green2); } .bB .t-run { background:#dfe9f7; }
.bB .t-settled, .bB .t-resolved_existing { background:#e3f1ec; } .bB .t-merged { background:#ece6f7; }
.bB .t-parked, .bB .t-archived { background:var(--eg-red2); }

/* idea page: the full ladder */
.lc-ladder { display:flex; flex-direction:column; gap:0; }
.lc-rung { display:grid; grid-template-columns:34px 1fr; gap:12px; position:relative; padding-bottom:14px; }
.lc-rung:before { content:""; position:absolute; left:16px; top:30px; bottom:0; width:2px; background:var(--p-rule); }
.lc-rung:last-child:before { display:none; }
.lc-dot { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; font:700 12px var(--mono);
  background:var(--p-rule); color:var(--p-soft); z-index:1; }
.lc-rung.done .lc-dot { background:var(--eg-green); color:#fff; }
.lc-rung.current .lc-dot { background:var(--eg-yellow); color:#1f272e; box-shadow:0 0 0 4px var(--eg-yellow5); }
.lc-rung.beyond { opacity:.45; }
.lc-rung h4 { font-size:1rem; font-weight:800; margin:6px 0 2px; }
.lc-rung .ph-label { font:700 10.5px Figtree; letter-spacing:.08em; text-transform:uppercase; color:var(--p-faint); }
.lc-pr { display:flex; align-items:center; gap:8px; font-size:.9rem; padding:4px 0; flex-wrap:wrap; }
.lc-pr .ic { width:20px; text-align:center; }
.lc-pr.met { color:var(--p-soft); } .lc-pr.met .t { text-decoration:line-through; text-decoration-color:var(--p-faint); }
.lc-pr.warned .t { color:#8a6a00; font-weight:700; }
.lc-pr.na { opacity:.5; }
.lc-pr .btn { padding:1px 8px; font-size:.75rem; }
.lc-guidance { font-size:.84rem; color:var(--p-soft); border-left:3px solid var(--eg-yellow); padding:4px 10px; margin:4px 0 6px 28px; }
.lc-side { position:sticky; top:76px; }
.lc-team .w-av { margin-left:0; margin-right:4px; }
.lc-hist { font-size:.85rem; }
.lc-hist div { padding:4px 0; border-bottom:1px dashed var(--p-rule); }
.lc-guide-chat { max-height:360px; overflow-y:auto; }
.lc-kv { display:grid; grid-template-columns:auto 1fr; gap:3px 10px; font-size:.88rem; }
.lc-kv dt { color:var(--p-faint); font-weight:600; }

/* Guidance Corpus (2026-10-13) */
.gc-card:hover { border-color:var(--eg-green); }
.p-pill.gc-confirmed { background:var(--eg-green2); color:var(--p-accent); }
.p-pill.gc-draft { background:var(--eg-yellow5); color:#8a6a00; }
.gc-body { max-width:760px; line-height:1.6; }
.gc-body h3 { font-size:1.15rem; font-weight:800; margin-top:1.6rem; }
.gc-body h4 { font-size:1rem; font-weight:800; margin-top:1.2rem; }
.gc-body blockquote { background:var(--p-warn-soft); color:var(--p-warn); border-radius:10px; padding:10px 14px; font-size:.92rem; }
.gc-body li { margin-bottom:6px; }
.gc-body table { font-size:.9rem; }

/* parallel concern rows (plan Q4.1) */
.lr-signals { display:flex; flex-wrap:wrap; gap:6px 14px; align-items:center; }
.lr-sig b { text-transform:capitalize; }
.lr-cell { border-left:3px solid var(--eg-line); padding:4px 0 4px 10px; margin:6px 0; }
.lr-cell.met { border-left-color:var(--eg-green); }
.lr-cell.partial { border-left-color:#e0a800; }
.lr-cell.waived { border-left-color:var(--eg-mute); }
.lr-cell.warned { background:rgba(234,85,69,.06); }
.lr-answer { white-space:pre-wrap; }
.lr-matrix { border-collapse:collapse; font-size:12px; }
.lr-matrix th, .lr-matrix td { padding:3px 6px; text-align:center; border-bottom:1px solid var(--eg-line); }
.lr-matrix tbody th { text-align:left; white-space:nowrap; }
.lr-matrix td.sh { opacity:.3; }
.lr-matrix td.cur { background:rgba(0,137,79,.08); }
.lr-matrix td.st-met { color:var(--eg-green); }
.lr-matrix td.st-partial { color:#c79100; }
.segs span.fade { opacity:.3; }  /* past the natural end: faded, not hidden */

/* Profile + project pages: layout 5 (docs/ui/2026-10-20-profile-project-layouts.html) */
.pp{max-width:760px;margin:0 auto 40px}
.pp-kick{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--p-accent)}
.pp h1{font-family:Fraunces,Georgia,serif;font-size:44px;line-height:1.08;margin:8px 0 18px;font-weight:800}
.pp-who{display:flex;gap:18px;align-items:flex-start;background:var(--p-card);border-radius:var(--p-radius);box-shadow:var(--p-shadow);padding:18px 20px;border:1px solid var(--p-rule)}
.pp-pic{width:96px;height:96px;border-radius:50%;flex:none;display:grid;place-items:center;color:#fff;font:800 34px Figtree,sans-serif;letter-spacing:.02em}
.pp-role{font-size:17px;font-weight:700}
.pp-meta{color:var(--p-soft);font-size:14.5px}
.pp-badges{margin-top:12px;display:flex;flex-wrap:wrap;gap:7px}
.pp-badge{display:inline-flex;align-items:center;gap:7px;padding:5px 11px 5px 5px;border-radius:999px;background:var(--p-paper);border:1px solid var(--p-rule);font-size:12.5px;font-weight:700;color:var(--p-ink)}
.pp-badge i{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:12px;color:#1f272e}
.pp blockquote{font-family:Fraunces,Georgia,serif;font-size:25px;line-height:1.42;border-left:4px solid var(--eg-yellow);margin:30px 0;padding:4px 0 4px 22px;white-space:pre-wrap}
.pp-lbl{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:var(--p-faint);margin:26px 0 9px}
.pp-chip{display:inline-block;padding:4px 11px;border-radius:999px;background:var(--p-accent-soft);color:var(--p-ink);font-size:13px;font-weight:600;margin:0 5px 6px 0;text-decoration:none}
.pp-chip.i{background:var(--p-rule);color:var(--p-soft)}
.pp-proj{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.pp-proj a{display:block;background:var(--p-card);border:1px solid var(--p-rule);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--p-ink)}
.pp-proj .ph{height:92px;display:flex;align-items:flex-end;padding:8px 12px;color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.pp-proj .tx{padding:10px 12px}
.pp-proj b{display:block;font-size:14.5px;line-height:1.3}
.pp-proj span{font-size:12.5px;color:var(--p-soft)}
.pp-idea{padding:10px 0;border-top:1px solid var(--p-rule);font-size:15px}
.pp-idea:first-of-type{border-top:0}
.pp-idea small{display:block;font-size:11.5px;font-weight:800;color:var(--p-accent);text-transform:uppercase;letter-spacing:.05em}
.pp-people{display:flex;flex-wrap:wrap;gap:10px}
.pp-people a{display:flex;gap:9px;align-items:center;text-decoration:none;color:var(--p-ink);background:var(--p-card);border:1px solid var(--p-rule);border-radius:999px;padding:4px 14px 4px 4px;font-weight:600;font-size:14px}
.pp-people i{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:#fff;font:800 12px Figtree,sans-serif;font-style:normal}
.pp-reach{background:var(--p-card);border:1px solid var(--p-rule);border-radius:14px;padding:12px 16px;font-size:14.5px}
@media(max-width:640px){.pp h1{font-size:32px}.pp blockquote{font-size:20px}.pp-pic{width:72px;height:72px;font-size:26px}}
.pp-hero{height:200px;border-radius:var(--p-radius);display:flex;align-items:flex-end;padding:16px 20px;color:#fff;font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:13px;margin:22px 0 6px}
.pp-lede{font-size:19px;line-height:1.6;color:var(--p-soft);margin:0 0 16px;white-space:pre-wrap}
.pp-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;border-top:2px solid var(--p-ink);border-bottom:1px solid var(--p-rule);padding:14px 0;margin:22px 0}
.pp-facts b{display:block;font-size:15px}
.pp-facts span{font-size:11.5px;color:var(--p-faint);text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.pp-body{font-size:16px;line-height:1.65;white-space:pre-wrap}
.pp-team{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.pp-team > div{display:flex;gap:10px;align-items:center;background:var(--p-card);border:1px solid var(--p-rule);border-radius:14px;padding:10px 12px}
.pp-team i{width:40px;height:40px;border-radius:50%;flex:none;display:grid;place-items:center;color:#fff;font:800 14px Figtree,sans-serif;font-style:normal}
.pp-team .r{font-size:12.5px;color:var(--p-soft)}
@media(max-width:640px){.pp-facts{grid-template-columns:1fr 1fr}.pp-lede{font-size:17px}}
