/* Aurbliq surface grammar: Base surface → main surface → Plates, Panels, Slides.
   Geometry is independent of palette and content. */
/* Scroll state belongs to the card and its immediate surface, not every table,
   diagram and control inside it. Keep per-frame inheritance local. */
@property --slide-recede { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --slide-opacity { syntax: '<number>'; inherits: false; initial-value: 1; }
html.aurbliq {
  --surface-gutter: clamp(12px, 2vw, 32px);
  --surface-radius: var(--a-radius);
  --surface-stack-rim: 16px;
  --surface-nav-gap: 8px;
  --surface-recession: .035;
  --surface-slide-space: clamp(32px, 4svh, 64px);
  --surface-footer-fade: clamp(64px, 6svh, 80px);
  --a-nav-inset: 0px;
  --a-nav-gutter: clamp(16px, 2vw, 32px);
  --a-nav-block-padding: 8px;
  --a-nav-more-width: 64px;
}
html.aurbliq body,
html.aurbliq .base-surface { background: var(--a-base, var(--a-linen)); }
.plate { width: 100%; }
.plate--round { border-radius: var(--surface-radius); }
.plate--square { border-radius: 0; }
.panel { border-radius: var(--surface-radius); }
.plate--round-top { border-start-start-radius: var(--surface-radius); border-start-end-radius: var(--surface-radius); }
.plate--round-bottom { border-end-start-radius: var(--surface-radius); border-end-end-radius: var(--surface-radius); }
.slide { border-radius: var(--surface-radius); }
html.aurbliq .base-surface__footer { --footer-paper: var(--a-base); }
/* One full-width header rail, part of the base rather than a floating capsule. */
html.aurbliq [data-aurbliq-shell] > .p-header,
html.aurbliq [data-cinematic-shell] > .k-nav[data-cinematic-nav] {
  --a-nav-inset: 0px;
  position: fixed; inset: 0 0 auto; width: 100%; min-height: 0; margin: 0; padding: 0;
  transform: none; border: 0; border-radius: 0; box-shadow: none;
  background: var(--a-paper); color: var(--a-ink); backdrop-filter: none;
  z-index: 80; --a-focus: var(--a-ink);
}
html.aurbliq [data-aurbliq-shell] > .p-header[data-scrolled='true'] { background: var(--a-base); box-shadow: none; backdrop-filter: none; }
/* 36px controls are centered in a 52px bar, flush to the viewport top.
   Logo and final action share the same viewport gutter on every page family. */
html.aurbliq [data-aurbliq-shell] > .p-header .p-header-inner {
  width: 100%; min-height: 52px; padding: var(--a-nav-block-padding) var(--a-nav-gutter);
}
html.aurbliq [data-aurbliq-shell] > .p-header .p-header-inner .a-button {
  min-height: 36px; height: 36px; padding: 6px 14px; gap: 8px;
  font-size: 14px; line-height: 1.4;
}
html.aurbliq [data-aurbliq-shell] > .p-header .p-header-inner .a-button .k-icon {
  width: 16px; height: 16px;
}
html.aurbliq [data-aurbliq-shell] > .p-header .p-menu-button {
  flex-basis: 36px; width: 36px; height: 36px; padding: 8px;
}
html.aurbliq [data-aurbliq-shell] > .p-header .p-menu-button[data-menu-more] {
  flex-basis: var(--a-nav-more-width); width: var(--a-nav-more-width); border-radius: 6px;
}
html.aurbliq [data-aurbliq-shell] > .p-header .p-menu-button > .k-icon {
  width: 20px; height: 20px;
}
html.aurbliq [data-aurbliq-shell] > .p-header :is(.p-nav-link, .p-nav-group summary) {
  min-height: 36px;
}
html.aurbliq [data-aurbliq-shell] > .p-header .p-nav-item[data-current='true']::after,
html.aurbliq [data-aurbliq-shell] > .p-header .a-nav-priority > .p-nav-link[aria-current='page']::after {
  inset-inline: -3px;
  bottom: calc(-1 * var(--a-nav-block-padding));
}
html.aurbliq.p-site .main-surface::before { display: none; }
/* Tinted introductions own their navigation clearance, so their background
   starts at the viewport edge beneath the transparent resting header. Content
   keeps its existing position; the expanded no-JavaScript header stays in flow. */
html.aurbliq.p-site.js [data-aurbliq-shell] > .main-surface:has(> :is(.a-narrative-opening, .a-capability-opening)) {
  padding-top: 0;
}
html.aurbliq.p-site.js .main-surface > :is(.a-narrative-opening, .a-capability-opening) {
  padding-top: var(--a-opening-clearance);
}
html.aurbliq.p-site.js [data-aurbliq-shell]:has(> .main-surface > :is(.a-narrative-opening, .a-capability-opening)) > .p-header:not([data-scrolled='true']) {
  background: transparent;
}
/* In cinematic pages the slides and header are siblings in the base's stacking
   context. No transformed ancestor may trap the fixed navigation. */
html.aurbliq [data-cinematic-shell] > .main-surface { z-index: auto; background: transparent; box-shadow: none; }
html.aurbliq [data-cinematic-shell] > .p-header:is([data-surface-raised], :focus-within),
html.aurbliq [data-cinematic-shell] > .p-header:has(.p-navigation.is-open, .p-nav-group[open]) { z-index: 80; }
html.aurbliq .slide-stack { position: static; }
html.aurbliq .slide-stack > .k-stack-card { z-index: calc(10 + var(--stack-order, 1)); margin-inline: var(--surface-gutter); margin-bottom: 0; }
html.aurbliq .slide-stack > .k-stack-card > .slide {
  --slide-recede: inherit; --slide-opacity: inherit;
  border-radius: var(--surface-radius); transform-origin: center bottom;
  transform: scale(calc(1 - var(--surface-recession) * var(--slide-recede, 0)));
  opacity: var(--slide-opacity, 1); box-shadow: var(--a-reveal-shadow);
}
/* Fit by removing excess chapter whitespace, never by shrinking text or hiding
   content. Short slides show all four corners; tall slides retain native reading. */
html.aurbliq [data-cinematic-shell] .slide-stack > .k-stack-card:not(.k-stack-card--hero) > .slide {
  padding-bottom: 0;
}
html.aurbliq [data-cinematic-shell] .slide-stack > .k-stack-card:not(.k-stack-card--hero) > .slide > .k-pad {
  padding-block: var(--surface-slide-space);
}
/* Home's invitation keeps the reference's own height/padding instead of the
   generic Slide stage. Its current typography, controls and eyebrow gap stay. */
html.aurbliq [data-stack-home] .slide-stack > .k-stack-card.k-stack-card--download > .slide > .k-home-download {
  min-height: var(--a-download-min-height);
  padding-block: var(--a-download-pad-start) var(--a-download-pad-end);
  justify-content: space-between;
}
html.aurbliq .slide-stack > .k-stack-card + .k-stack-card { margin-top: var(--surface-stack-rim); }
html.aurbliq .slide-stack > .k-stack-card--hero { margin-inline: 0; }
html.aurbliq .slide-stack > .k-stack-card--hero > .slide {
  /* The film's reveal is clipped to the Slide rail; its successor then recedes
     that complete rounded shape with the same bottom-origin scale as any Slide. */
  border-radius: 0; box-shadow: none;
  clip-path: inset(var(--hero-cut, 0px) calc(var(--surface-gutter) * var(--hero-reveal, 0)) 0 round calc(var(--surface-radius) * var(--hero-reveal, 0)));
}
html.aurbliq .slide-stack > .k-stack-card--hero + .k-stack-card { margin-top: var(--surface-stack-rim); }
/* One native home link supplies the film mark and the header brand. Its hit
   area follows the same transform. Keyboard or open-menu use exposes the
   readable bar immediately, including before the hero has left the viewport. */
html.aurbliq [data-cinematic-shell] > .p-header .p-brand {
  min-height: 36px; align-items: center;
  transform: var(--a-hero-brand-transform, none);
}
html.aurbliq.js [data-cinematic-shell] > .p-header[data-hero-resting] {
  background: transparent; pointer-events: none;
}
html.aurbliq.js [data-cinematic-shell] > .p-header[data-hero-resting] .p-brand { pointer-events: auto; }
html.aurbliq.js [data-cinematic-shell] > .p-header[data-hero-resting]:not(:focus-within):not(:has(.p-navigation.is-open, .p-nav-group[open])) .p-header-inner > :not(.p-brand) {
  opacity: 0; pointer-events: none;
}
html.aurbliq [data-cinematic-shell] > .p-header:is(:focus-within, :has(.p-navigation.is-open, .p-nav-group[open])) .p-brand {
  transform: none;
}
html.aurbliq [data-cinematic-shell] > .p-header:is(:focus-within, :has(.p-navigation.is-open, .p-nav-group[open])) {
  pointer-events: auto;
}
/* Closing slides keep their own rounded edge. The main's cap must not introduce
   a colored strip across the exposed base gutters. Home's following Plate keeps
   its own continuous rounded footer edge. */
html.aurbliq [data-cinematic-shell] > .main-surface:has(> .slide-stack:last-child)::after { display: none; }
html.aurbliq [data-cinematic-shell] .k-home-after { position: relative; z-index: 2; margin-top: var(--surface-stack-rim); border-radius: var(--surface-radius); }
html.aurbliq [data-cinematic-shell] .main-surface::after { z-index: 2; }
@media (max-width: 760px) {
  html.aurbliq { --surface-recession: .018; --surface-stack-rim: 12px; }
}
@media (max-width: 560px) {
  html.aurbliq [data-aurbliq-shell] > .p-header .p-header-inner .a-button {
    padding-inline: 12px; font-size: 13px;
  }
  html.aurbliq [data-aurbliq-shell] > .p-header .p-header-inner :is(.a-header-download, .k-roaming-download) {
    width: 36px; min-width: 36px; padding: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  html.aurbliq .slide-stack > .k-stack-card > .slide { transform: none; opacity: 1; }
  html.aurbliq .slide-stack > .k-stack-card--hero > .slide { clip-path: none; }
  html.aurbliq [data-cinematic-shell] > .p-header { z-index: 80; }
  html.aurbliq [data-cinematic-shell] > .p-header .p-brand { transform: none; }
}
@media print {
  html.aurbliq [data-aurbliq-shell] > .p-header { display: none; }
  html.aurbliq .slide-stack > .k-stack-card > .slide { clip-path: none; transform: none; box-shadow: none; }
}
html.aurbliq [data-cinematic-shell] > .k-nav[data-cinematic-nav]:is([data-surface-raised], :focus-within),
html.aurbliq [data-cinematic-shell] > .k-nav[data-cinematic-nav]:has(.p-navigation.is-open, .p-nav-group[open]) { z-index: 80; }
/* A returning hero dismisses open disclosures before the rail settles behind
   the film. Keep the approved Base transparent throughout that brief fade. */
html.aurbliq [data-cinematic-shell] > .p-header .p-header-inner {
  transition: opacity var(--a-nav-duration) var(--a-ease), background-color var(--a-nav-duration) var(--a-ease);
}
html.aurbliq [data-cinematic-shell] > .p-header[data-nav-retiring] {
  z-index: 80;
}
html.aurbliq [data-cinematic-shell] > .p-header[data-nav-retiring] .p-header-inner > :not(.p-brand) {
  opacity: 0; pointer-events: none;
  transition: opacity var(--a-nav-duration) var(--a-ease);
}
@media (prefers-reduced-motion: reduce) {
  html.aurbliq [data-cinematic-shell] > .k-nav[data-cinematic-nav] { z-index: 80; }
  html.aurbliq [data-cinematic-shell] > .p-header .p-header-inner { transition: none; }
}

html.aurbliq [data-cinematic-shell] .slide-stack > .k-stack-card--hero { background: transparent; }
html.aurbliq [data-cinematic-shell] > .k-nav[data-cinematic-nav][data-scrolled='true'] { background: var(--a-base); box-shadow: none; backdrop-filter: none; }
html.aurbliq.js:not(.dark) [data-cinematic-shell] > .p-header[data-hero-resting] .p-brand img { filter: brightness(0) invert(calc(1 - var(--hero-reveal, 0))); }
html.aurbliq:not(.dark) [data-cinematic-shell] > .p-header:is(:focus-within, :has(.p-navigation.is-open, .p-nav-group[open])) .p-brand img { filter: none; }
html.aurbliq.dark [data-cinematic-shell] > .p-header .p-brand img { filter: brightness(0) invert(1); }
/* The main's ground masks the fixed footer film until the terminal edge reaches
   it; exposed slide gutters show the base color, never a premature footer. */
html.aurbliq [data-cinematic-shell] > .main-surface::before {
  content: ''; position: absolute; inset: 0; z-index: 1;
  background: var(--a-base); pointer-events: none;
}
/* Only the ground beneath the sections fades into the footer. The section
   fills, rounded Slides and Home's rounded terminal Plate stay opaque. */
html.aurbliq [data-cinematic-shell] > .main-surface--footer-fade::before {
  background: linear-gradient(to bottom, var(--a-base) calc(100% - var(--surface-footer-fade)), transparent);
}

@media (min-height: 760px) and (prefers-reduced-motion: no-preference) {
  /* A short Slide owns the available stage. Its successor therefore covers the
     complete outgoing surface, including the lower gutter, without crop math. */
  html.aurbliq .slide-stack > .k-stack-card:not(.k-stack-card--hero) > .slide {
    min-height: calc(100svh - var(--surface-slide-top, 86px) - 24px);
  }
  html.aurbliq .slide-stack > .k-stack-card:not(.k-stack-card--hero) > .slide > section:only-child {
    min-height: inherit;
  }
  html.aurbliq .slide-stack[data-stack-ready] > .k-stack-card { position: sticky; top: var(--stack-top, 16px); }
  /* The card reserves the full reading distance. Its surface is a real rounded
     viewport: page scrolling advances its contents without moving its corners. */
  html.aurbliq .slide-stack[data-stack-ready] > .k-stack-card:not(.k-stack-card--hero) {
    height: var(--slide-content-height, auto);
  }
  html.aurbliq .slide-stack[data-stack-ready] > .k-stack-card:not(.k-stack-card--hero) > .slide {
    position: sticky; top: var(--surface-slide-top);
    height: calc(100svh - var(--surface-slide-top, 86px) - 24px);
    overflow: hidden; overflow-anchor: none; scroll-behavior: auto;
  }
  /* Only the terminal frame shortens when the whole stack exits to the footer.
     It has no successor recession, so this cut has no scale-dependent geometry. */
  html.aurbliq .slide-stack[data-stack-ready] > .k-stack-card:last-child > .slide {
    clip-path: inset(var(--slide-exit-cut, 0px) 0 0 round var(--surface-radius));
  }
  /* Content-sized Slides and the closing invitation reserve a reading window
     only when their content exceeds the available viewport. */
  html.aurbliq .slide-stack > .k-stack-card:not(.k-stack-card--hero) > .slide.slide--content,
  html.aurbliq [data-stack-home] .slide-stack > .k-stack-card.k-stack-card--download > .slide {
    min-height: 0; height: auto;
    max-height: calc(100svh - var(--surface-slide-top, 68px) - 24px);
  }
  html.aurbliq .slide-stack > .k-stack-card > .slide.slide--content > section:only-child { min-height: 0; }
}
@media (min-height: 760px) and (max-width: 760px) and (prefers-reduced-motion: no-preference) {
  html.aurbliq [data-stack-home] .slide-stack > .k-stack-card--download > .slide > .k-home-download {
    --a-download-meta-gap: 60px;
  }
}
/* Native focus scrolling must clear the fixed rail, including footer controls. */
html.aurbliq .base-surface__footer :is(a, button, input) { scroll-margin-block: calc(var(--aurbliq-nav-bottom, 80px) + 16px); }

html.aurbliq .slide-stack[data-stack-ready] .k-showcase-controls { top: 0; }
html.aurbliq .slide-stack[data-stack-ready] .k-chapters-intro { top: 24px; }

html.aurbliq [data-cinematic-shell] > .p-header[data-scrolled='true'] { background: transparent; }
html.aurbliq [data-cinematic-shell] > .k-nav[data-cinematic-nav][data-scrolled='true'] { background: transparent; }

/* Overlay navigation paints one full-width translucent surface. Its material
   layer fades separately so returning hero menus can retire without a flash. */
html.aurbliq [data-aurbliq-shell] > .p-header[data-scrolled='true'] { background: transparent; }
html.aurbliq [data-aurbliq-shell] > .p-header {
  --a-nav-tint: var(--a-nav-section-surface, var(--a-sand));
  --a-nav-glass: color-mix(in srgb, var(--a-paper) 76%, var(--a-nav-tint));
  --a-nav-glass-edge: var(--a-nav-section-line, var(--a-line));
}
html.aurbliq [data-aurbliq-shell] > .p-header .p-header-inner {
  border-radius: 0; background: transparent; box-shadow: none; backdrop-filter: none;
  transition: opacity var(--a-nav-duration) var(--a-ease), background-color var(--a-nav-duration) var(--a-ease);
}
html.aurbliq [data-aurbliq-shell] > .p-header::before {
  content: ''; display: block; position: absolute; inset: 0; z-index: -1;
  border-radius: 0; mask: none; pointer-events: none; opacity: 0;
  background-color: color-mix(in srgb, var(--a-nav-glass) 88%, transparent);
  background-image: var(--a-material);
  border-bottom: 1px solid color-mix(in srgb, var(--a-nav-glass-edge) 65%, transparent);
  box-shadow: 0 3px 10px -6px rgb(var(--a-nav-shadow-rgb) / 12%);
  backdrop-filter: blur(16px) saturate(1.8);
  transition: opacity var(--a-nav-duration) var(--a-ease), background-color var(--a-nav-duration) var(--a-ease), border-color var(--a-nav-duration) var(--a-ease);
}
html.aurbliq [data-aurbliq-shell]:not(:has(.slide-stack[data-stack-ready])) > .p-header[data-scrolled='true']::before,
html.aurbliq [data-cinematic-shell] > .p-header[data-scrolled='true'][data-stack-flow]::before,
html.aurbliq [data-cinematic-shell] > .p-header[data-hero-resting]:is(:focus-within, :has(.p-navigation.is-open, .p-nav-group[open]))::before {
  opacity: 1;
}
html.aurbliq [data-cinematic-shell] > .p-header[data-nav-retiring]::before {
  opacity: 0;
}
html.aurbliq.js [data-cinematic-shell] > .p-header[data-hero-resting]:not(:focus-within):not(:has(.p-navigation.is-open, .p-nav-group[open]))::before {
  opacity: 0;
}
@media (prefers-reduced-motion: reduce) {
  html.aurbliq [data-aurbliq-shell] > .p-header::before,
  html.aurbliq [data-aurbliq-shell] > .p-header .p-header-inner,
  html.aurbliq [data-cinematic-shell] > .p-header[data-nav-retiring] .p-header-inner > :not(.p-brand) { transition: none; }
}

/* Polished chapter material is paint only: no added layout border, overlay,
   filter or scroll work. Highlights stay beneath text and opaque diagrams. */
html.aurbliq { --surface-polish-light: 8%; --surface-polish-shade: 4%; }
html.aurbliq.dark { --surface-polish-light: 5%; --surface-polish-shade: 5%; }
/* Bright cobalt has less contrast headroom for quiet text than dark paper. */
html.aurbliq.dark :is(.k-stack-card--download > .slide, .k-stack-card--download > .slide > .k-download) {
  --surface-polish-light: 2%;
}
html.aurbliq[data-aurbliq-palette] [data-aurbliq-shell] :is(
  .slide:not(.slide--hero),
  .slide:not(.slide--hero) > section:not(.e-pitch),
  [data-color-chapter],
  .p-prose blockquote, .p-prose pre, .p-document-help,
  .k-home-after > .k-faq,
  .k-home-after > .k-home-explore
) {
  --surface-polish-tint: var(--surface-frame-tint, var(--a-line));
  --surface-polish-shine: color-mix(in srgb, var(--surface-polish-tint) 25%, white);
  --surface-polish-shadow: color-mix(in srgb, var(--surface-polish-tint) 55%, black);
  --surface-polish-edge: color-mix(in srgb, var(--surface-polish-tint) 42%, transparent);
  --surface-polish-depth: 0 10px 24px -20px color-mix(in srgb, var(--surface-polish-shadow) 36%, transparent);
  background-image:
    radial-gradient(ellipse 85% 60% at 12% 0%, color-mix(in srgb, var(--surface-polish-shine) var(--surface-polish-light), transparent), transparent 72%),
    linear-gradient(180deg, transparent 55%, color-mix(in srgb, var(--surface-polish-shadow) var(--surface-polish-shade), transparent) 84%, transparent 100%);
  background-size: 100% 100%; background-position: top left; background-repeat: no-repeat;
}
/* These Home chapters already have transparent children and one painted frame.
   Keep a single material layer rather than adding a second highlight/shade. */
html.aurbliq[data-aurbliq-palette] [data-cinematic-shell][data-stack-home] .slide.k-stack-surface > :is(.k-product-window, .k-benchmark, .k-workspace-control) {
  background-image: none;
}
/* Product contains two chapters inside one frame. Let its frame own the face
   instead of restarting the material at their internal section boundary. */
html.aurbliq[data-aurbliq-palette] [data-cinematic-shell][data-stack-home]:not([data-demo-stack]) .slide.k-stack-surface > :is(.k-session, .k-showcase) {
  background-color: transparent; background-image: none;
}
/* Home's satin finish belongs to the face, independently of its unchanged
   elevation. A broad reflection crosses a softly shaded opposite corner;
   both mix the opaque chapter color, without texture or a moving overlay. */
html.aurbliq [data-stack-home]:not([data-demo-stack]) {
  --surface-satin-reflection: 24%;
  --surface-satin-glance: 9%;
  --surface-satin-shade: 26%;
}
html.aurbliq.dark [data-stack-home]:not([data-demo-stack]) {
  --surface-satin-reflection: 6%;
  --surface-satin-glance: 2%;
  --surface-satin-shade: 36%;
}
html.aurbliq [data-stack-home]:not([data-demo-stack]) .k-stack-card--product {
  --surface-satin-shade: 12%;
}
/* Keep the darkest corner above AA for each chapter's existing quiet ink. */
html.aurbliq:not(.dark) [data-stack-home]:not([data-demo-stack]) .k-stack-card--evidence {
  --surface-satin-shade: 14%;
}
html.aurbliq:not(.dark) [data-stack-home]:not([data-demo-stack]) .k-stack-card--control {
  --surface-satin-shade: 16%;
}
/* Cobalt's pale supporting copy limits the light reflection, especially Dark. */
html.aurbliq [data-stack-home]:not([data-demo-stack]) .k-stack-card--download {
  --surface-satin-reflection: 4%;
  --surface-satin-glance: 1.5%;
}
html.aurbliq.dark [data-stack-home]:not([data-demo-stack]) .k-stack-card--download {
  --surface-satin-reflection: 1.2%;
  --surface-satin-glance: .4%;
}
@media screen and (forced-colors: none) {
html.aurbliq[data-aurbliq-palette] [data-cinematic-shell][data-stack-home]:not([data-demo-stack]) :is(
  .slide:not(.slide--hero),
  .k-stack-card--download > .slide > .k-home-download
) {
  --surface-satin-light-color: color-mix(in srgb, var(--chapter-ground) 18%, white);
  --surface-satin-shade-color: color-mix(in srgb, var(--chapter-ground) 45%, black);
  background-image:
    linear-gradient(125deg, transparent 12%, color-mix(in srgb, var(--surface-satin-light-color) var(--surface-satin-glance), transparent) 36%, transparent 60%),
    radial-gradient(ellipse 100% 85% at 0% 0%, color-mix(in srgb, var(--surface-satin-light-color) var(--surface-satin-reflection), transparent), transparent 75%),
    radial-gradient(ellipse 90% 110% at 100% 100%, color-mix(in srgb, var(--surface-satin-shade-color) var(--surface-satin-shade), transparent), transparent 80%);
}
}
/* Enterprise's compound frames take their rim/depth from their colored chapter.
   The child still derives its own sheen from its local palette. */
html.aurbliq [data-stack-enterprise] .slide:has(> .e-workflows) { --surface-frame-tint: var(--a-chapter-gold-line, var(--a-line)); }
html.aurbliq [data-stack-enterprise] .slide:has(> :is(.e-architecture, .e-controls)) { --surface-frame-tint: var(--a-chapter-plum-line, var(--a-line)); }
html.aurbliq [data-stack-enterprise] .slide:has(> .e-specialists) { --surface-frame-tint: var(--a-chapter-apricot-line, var(--a-line)); }
html.aurbliq [data-stack-enterprise] .slide:has(> .k-faq) { --surface-frame-tint: var(--a-chapter-green-line, var(--a-line)); }
html.aurbliq [data-stack-enterprise] .slide:has(> .k-download) { --surface-frame-tint: var(--a-download-line); }
html.aurbliq .slide:not(.slide--hero) > section { --surface-frame-tint: initial; }

/* An inward perimeter follows the live rounded viewport, including while its
   contents scroll. It adds no pixels to width, height or stacking thresholds. */
html.aurbliq .slide-stack > .k-stack-card:not(.k-stack-card--hero) > .slide {
  outline: 1px solid var(--surface-polish-edge); outline-offset: -1px;
  box-shadow: var(--surface-polish-depth), var(--a-reveal-shadow);
}
html.aurbliq :is([data-color-chapter]:not(.plate), .p-prose blockquote, .p-prose pre, .p-document-help) {
  outline: 1px solid var(--surface-polish-edge); outline-offset: -1px;
  box-shadow: var(--surface-polish-depth);
}
/* Filled link Panels keep a visible response without reverting to faint paper. */
html.aurbliq [data-aurbliq-shell] :is(.p-download-option, .a-directory-overview)[data-color-chapter='blue']:focus-visible {
  outline: 2px solid var(--a-focus); outline-offset: 4px;
}
@media (hover: hover) {
  html.aurbliq [data-aurbliq-shell] :is(.p-download-option, .a-directory-overview)[data-color-chapter='blue']:hover {
    background-color: color-mix(in srgb, var(--chapter-ground) 90%, var(--a-accent));
    outline-color: var(--a-accent);
  }
}
html.aurbliq [data-aurbliq-shell] :is(.p-download-option, .a-directory-overview)[data-color-chapter='blue']:active {
  background-color: color-mix(in srgb, var(--chapter-ground) 85%, var(--a-accent));
}
/* Full-bleed Plates have horizontal edges, without viewport-side rules. */
html.aurbliq :is(.plate[data-color-chapter], .k-home-after > .k-faq, .k-home-after > .k-home-explore) {
  box-shadow: inset 0 1px 0 var(--surface-polish-edge), inset 0 -1px 0 var(--surface-polish-edge), var(--surface-polish-depth);
}
/* The terminal Plate owns its whole material and rounded edge. Fold the former
   cap height into its padding: a separately shadowed cap casts onto the Plate
   above and creates a band even when their base fills match. */
html.aurbliq [data-stack-home] .k-home-after > .k-home-explore {
  padding-bottom: calc(var(--home-explore-bottom-space) + var(--surface-radius));
  border-radius: 0 0 var(--surface-radius) var(--surface-radius);
  box-shadow: inset 0 1px 0 var(--surface-polish-edge), inset 0 -1px 0 var(--surface-polish-edge), var(--a-reveal-shadow);
}
html.aurbliq [data-stack-home]:not([data-demo-stack]) > .main-surface::after {
  display: none;
}
@media print, (forced-colors: active) {
  html.aurbliq[data-aurbliq-palette] [data-aurbliq-shell] :is(.slide:not(.slide--hero), .slide:not(.slide--hero) > section, [data-color-chapter], .p-prose blockquote, .p-prose pre, .p-document-help, .k-home-after > .k-faq, .k-home-after > .k-home-explore) {
    background-image: none; outline: none; box-shadow: none;
  }
}
