/* XPScerpto Public Brand System R13 — official marks + theme-responsive Ion Teal. */
body.public-site{
  --xps-public-brand-accent:#36d6c6;
  --xps-public-brand-accent-strong:#79f1e6;
  --xps-public-brand-accent-soft:color-mix(in srgb,var(--xps-public-brand-accent) 16%,var(--xps-color-surface));
  --xps-public-brand-on-accent:#03110f;
  --xps-public-brand-glow:rgb(54 214 198 / .22);
  --xps-color-accent:var(--xps-public-brand-accent);
  --xps-color-accent-strong:var(--xps-public-brand-accent-strong);
  --xps-color-accent-soft:var(--xps-public-brand-accent-soft);
  --xps-color-link:var(--xps-public-brand-accent-strong);
  --xps-color-on-accent:var(--xps-public-brand-on-accent);
}
html[data-theme="light"] body.public-site{
  --xps-public-brand-accent:#007a70;
  --xps-public-brand-accent-strong:#005f58;
  --xps-public-brand-accent-soft:color-mix(in srgb,var(--xps-public-brand-accent) 10%,var(--xps-color-surface));
  --xps-public-brand-on-accent:#fff;
  --xps-public-brand-glow:rgb(0 122 112 / .15);
  --xps-color-link:#006c64;
}

/* The canonical mark bytes remain white/black; the brand color belongs to the system around them. */
body.public-site :is(.xps-r10-official-mark,.xps-r12-official-mark){
  filter:drop-shadow(0 0 14px var(--xps-public-brand-glow));
}

/* Project R10 and Homepage R12 now inherit the same semantic palette. */
body.public-site .xps-r10{
  --r10-bg:var(--xps-color-canvas-deep);
  --r10-bg-2:var(--xps-color-canvas-subtle);
  --r10-panel:color-mix(in srgb,var(--xps-color-surface) 88%,transparent);
  --r10-panel-2:color-mix(in srgb,var(--xps-color-surface-raised) 92%,transparent);
  --r10-line:color-mix(in srgb,var(--xps-color-border) 46%,transparent);
  --r10-line-strong:color-mix(in srgb,var(--xps-public-brand-accent) 46%,var(--xps-color-border));
  --r10-text:var(--xps-color-text);
  --r10-muted:var(--xps-color-text-muted);
  --r10-dim:var(--xps-color-text-subtle);
  --r10-cyan:var(--xps-public-brand-accent);
  --r10-blue:var(--xps-public-brand-accent);
  --r10-teal:var(--xps-public-brand-accent-strong);
  color:var(--xps-color-text);
  background:var(--xps-color-canvas-deep);
}
body.public-site .xps-r12{
  --bg:var(--xps-color-canvas-deep);
  --bg2:var(--xps-color-canvas-subtle);
  --panel:color-mix(in srgb,var(--xps-color-surface) 90%,transparent);
  --line:color-mix(in srgb,var(--xps-color-border) 44%,transparent);
  --line2:color-mix(in srgb,var(--xps-public-brand-accent) 48%,var(--xps-color-border));
  --text:var(--xps-color-text);
  --muted:var(--xps-color-text-muted);
  --dim:var(--xps-color-text-subtle);
  --cyan:var(--xps-public-brand-accent);
  --teal:var(--xps-public-brand-accent-strong);
  color:var(--xps-color-text);
  background:var(--xps-color-canvas-deep);
}

/* Primary controls use one accessible hue family with mode-specific luminance. */
body.public-site :is(.xps-r10-action--primary,.xps-r12-btn--primary){
  border-color:var(--xps-public-brand-accent);
  background:linear-gradient(125deg,var(--xps-public-brand-accent),var(--xps-public-brand-accent-strong));
  color:var(--xps-public-brand-on-accent)!important;
  box-shadow:0 16px 44px var(--xps-public-brand-glow);
}
body.public-site :is(.xps-r10-action,.xps-r12-btn):focus-visible{
  outline:3px solid color-mix(in srgb,var(--xps-public-brand-accent) 60%,transparent);
  outline-offset:3px;
}

/* Light-mode projection for the R10 product surfaces.  These selectors deliberately
   override the former dark-only literals without altering domain content. */
html[data-theme="light"] body.public-site .xps-r10{
  background:var(--xps-color-canvas);
  color:var(--xps-color-text);
}
html[data-theme="light"] body.public-site .xps-r10 :is(h1,h2,h3,strong,b,code,dd){color:var(--xps-color-text)}
html[data-theme="light"] body.public-site .xps-r10 :is(p,small,dt,time){color:var(--xps-color-text-muted)}
html[data-theme="light"] body.public-site .xps-r10 :is(.xps-r10-kicker,.xps-r10-model-label b,.xps-r10-plane>i,.xps-r10-capability-index,.xps-r10-unit-list li>span){color:var(--xps-public-brand-accent)}
html[data-theme="light"] body.public-site .xps-r10-hero,
html[data-theme="light"] body.public-site .xps-r10-product-hero{
  background:
    radial-gradient(circle at 72% 38%,color-mix(in srgb,var(--xps-public-brand-accent) 10%,transparent),transparent 34%),
    linear-gradient(180deg,var(--xps-color-canvas),var(--xps-color-canvas-subtle));
  border-color:var(--r10-line);
}
html[data-theme="light"] body.public-site :is(
  .xps-r10-workspace,.xps-r10-workspace-bar,.xps-r10-workspace-nav,.xps-r10-workspace-main,
  .xps-r10-request-panel,.xps-r10-evidence-panel,.xps-r10-request-field,.xps-r10-fabric-canvas,
  .xps-r10-plane,.xps-r10-capability,.xps-r10-assurance-console,.xps-r10-detail,
  .xps-r10-ledger-body,.xps-r10-ledger-row,.xps-r10-ledger-empty,.xps-r10-product-visual,
  .xps-r10-public-boundary,.xps-r10-truth-note){
  background:var(--xps-color-surface);
  border-color:var(--r10-line);
  box-shadow:none;
}
html[data-theme="light"] body.public-site :is(
  .xps-r10-fabric,.xps-r10-planes,.xps-r10-capabilities,.xps-r10-assurance,
  .xps-r10-product-body,.xps-r10-ledger,.xps-r10-closing){
  background:var(--xps-color-canvas-subtle);
  border-color:var(--r10-line);
}
html[data-theme="light"] body.public-site .xps-r10-workspace-nav>a{color:var(--xps-color-text-muted)!important}
html[data-theme="light"] body.public-site .xps-r10-workspace-nav>a.active{
  color:var(--xps-public-brand-accent)!important;
  background:var(--xps-public-brand-accent-soft);
  border-color:color-mix(in srgb,var(--xps-public-brand-accent) 34%,var(--xps-color-border));
}
html[data-theme="light"] body.public-site :is(.xps-r10-action,.xps-r10-request-field,.xps-r10-runtime-boundary){
  background:var(--xps-color-surface);
  border-color:var(--xps-color-border);
  color:var(--xps-color-text)!important;
}
html[data-theme="light"] body.public-site .xps-r10-action--primary{color:var(--xps-public-brand-on-accent)!important}

/* Light-mode projection for the R12 homepage product materialization. */
html[data-theme="light"] body.public-site .xps-r12{
  background:var(--xps-color-canvas);
  color:var(--xps-color-text);
}
html[data-theme="light"] body.public-site .xps-r12 :is(h1,h2,h3,strong,b,code,dd){color:var(--xps-color-text)}
html[data-theme="light"] body.public-site .xps-r12 :is(p,small,dt){color:var(--xps-color-text-muted)}
html[data-theme="light"] body.public-site .xps-r12 :is(.xps-r12-kicker,.xps-r12-head>p,.xps-r12-head>div>p,.xps-r12-product-label b){color:var(--xps-public-brand-accent)}
html[data-theme="light"] body.public-site .xps-r12-hero{
  background:
    radial-gradient(circle at 76% 38%,color-mix(in srgb,var(--xps-public-brand-accent) 10%,transparent),transparent 32%),
    linear-gradient(180deg,var(--xps-color-canvas),var(--xps-color-canvas-subtle));
  border-color:var(--line);
}
html[data-theme="light"] body.public-site :is(
  .xps-r12-console,.xps-r12-console-top,.xps-r12-rail,.xps-r12-console-main,
  .xps-r12-identity-strip,.xps-r12-run-card,.xps-r12-proof-card,.xps-r12-module,
  .xps-r12-continuum ol,.xps-r12-assurance-box){
  background:var(--xps-color-surface);
  border-color:var(--line);
  box-shadow:none;
}
html[data-theme="light"] body.public-site :is(
  .xps-r12-continuum,.xps-r12-caps,.xps-r12-planes,.xps-r12-assurance,.xps-r12-closing){
  background:var(--xps-color-canvas-subtle);
  border-color:var(--line);
}
html[data-theme="light"] body.public-site .xps-r12-btn{
  background:var(--xps-color-surface);
  border-color:var(--xps-color-border);
  color:var(--xps-color-text)!important;
}
html[data-theme="light"] body.public-site .xps-r12-btn--primary{color:var(--xps-public-brand-on-accent)!important}

@media (prefers-reduced-motion:reduce){
  body.public-site :is(.xps-r10-official-mark,.xps-r12-official-mark){filter:none}
}

/* Light-mode primary controls must retain the brand accent after generic control projection. */
html[data-theme="light"] body.public-site :is(.xps-r10-action--primary,.xps-r12-btn--primary){
  border-color:var(--xps-public-brand-accent);
  background:linear-gradient(125deg,var(--xps-public-brand-accent),var(--xps-public-brand-accent-strong));
  color:var(--xps-public-brand-on-accent)!important;
  box-shadow:0 14px 34px var(--xps-public-brand-glow);
}
