/* DSH P.R.T.S. // RHODES ISLAND DAILY OPERATIONS TERMINAL */
html[data-dsh-prts] {
  --prts-canvas: #080a0c;
  --prts-canvas-elevated: #0d1114;
  --prts-rail: #060809;
  --prts-panel: #11161a;
  --prts-panel-raised: #171d21;
  --prts-panel-muted: #20272c;
  --prts-ink: #edf1f2;
  --prts-muted: #98a3a9;
  --prts-dim: #68747a;
  --prts-line: #38434a;
  --prts-line-strong: #5e6a70;
  --prts-yellow: #f0c800;
  --prts-yellow-ink: #161300;
  --prts-cyan: #5ccddb;
  --prts-red: #ee625a;
  --prts-green: #8fcf79;
  --dsw-alias-label-primary-inverted: #15191c;
  --prts-host-top-inset: 0px;
  --prts-rail-width: 52px;
  --prts-nav-width: 52px;
  --prts-workspace-height: 38px;
  --prts-session-height: 36px;
  --prts-facility-gap: 7px;
  --prts-facility-height: var(--prts-workspace-height);
  --prts-spine-width: 8px;
  --prts-spine-rest: .25;
  --prts-spine-travel: 6px;
  --prts-chamfer: 3px;
  --prts-radius-control: 3px;
  --prts-radius-card: 3px;
  --prts-radius-overlay: 4px;
  --prts-body: 'Noto Sans SC', 'Microsoft YaHei UI', 'Segoe UI', sans-serif;
  --prts-display: 'Arial Narrow', 'Noto Sans SC', sans-serif;
  --prts-mono: 'Roboto Mono', 'Noto Sans Mono CJK SC', Consolas, monospace;
  --prts-ease-spring: cubic-bezier(.2, .86, .28, 1.16);
  --prts-ease-snap: cubic-bezier(.22, 1, .36, 1);
  --prts-shadow-glass-overlay: 0 18px 48px rgba(0, 0, 0, .32), inset 0 1px rgba(255, 255, 255, .06);
  --prts-glass-border: rgba(119, 140, 150, .52);
  --prts-glass-soft-surface: rgba(15, 21, 25, .82);
  --prts-glass-standard-surface: rgba(15, 21, 25, .9);
  --prts-glass-clear-surface: rgba(15, 21, 25, .72);
  --prts-glass-dense: rgba(7, 10, 12, .94);
  --prts-active-glass: var(--prts-glass-standard-surface);
  --prts-active-glass-filter: blur(18px) saturate(145%);
  --prts-chat-user-surface: #efefed;
  --prts-chat-assistant-surface: #454644;
  --prts-chat-avatar-surface: #151c20;
  --prts-avatar-ring-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='50' r='47' fill='none' stroke='%23c7cdca' stroke-width='3' pathLength='360' stroke-dasharray='98 24 96 24 98 20' transform='rotate(-80 50 50)'/%3E%3C/svg%3E");
  --prts-chat-backdrop: #0a0e11;
  --prts-chat-backdrop-edge: #0e1519;
  color-scheme: dark;
  accent-color: var(--prts-yellow);
}

html[data-dsh-prts][data-prts-scheme="dark"] {
  color-scheme: dark;
}

html[data-dsh-prts][data-prts-scheme="light"] {
  --prts-canvas: #eef1f3;
  --prts-canvas-elevated: #e5eaed;
  --prts-rail: #111518;
  --prts-panel: #f7f9fa;
  --prts-panel-raised: #e5eaed;
  --prts-panel-muted: #d5dde1;
  --prts-ink: #15191c;
  --prts-muted: #4f5c63;
  --prts-dim: #738087;
  --prts-line: #9eabb1;
  --prts-line-strong: #65727a;
  --dsw-alias-label-primary-inverted: #edf1f2;
  --prts-glass-border: rgba(62, 82, 92, .48);
  --prts-glass-soft-surface: rgba(247, 250, 251, .9);
  --prts-glass-standard-surface: rgba(244, 249, 251, .94);
  --prts-glass-clear-surface: rgba(244, 249, 251, .78);
  --prts-glass-dense: rgba(249, 251, 252, .97);
  --prts-shadow-glass-overlay: 0 18px 44px rgba(48, 63, 70, .18), inset 0 1px rgba(255, 255, 255, .86);
  --prts-chat-user-surface: #fff;
  --prts-chat-assistant-surface: #dfe3df;
  --prts-chat-avatar-surface: #e4e9ec;
  --prts-avatar-ring-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='50' r='47' fill='none' stroke='%23657069' stroke-width='3' pathLength='360' stroke-dasharray='98 24 96 24 98 20' transform='rotate(-80 50 50)'/%3E%3C/svg%3E");
  --prts-chat-backdrop: #edf1f3;
  --prts-chat-backdrop-edge: #e4ebee;
  color-scheme: light;
}

html[data-dsh-prts][data-prts-glass="soft"] {
  --prts-active-glass: var(--prts-glass-soft-surface);
  --prts-active-glass-filter: blur(18px) saturate(145%);
}

html[data-dsh-prts][data-prts-glass="standard"] {
  --prts-active-glass: var(--prts-glass-standard-surface);
  --prts-active-glass-filter: blur(22px) saturate(155%);
}

html[data-dsh-prts][data-prts-glass="clear"] {
  --prts-active-glass: var(--prts-glass-clear-surface);
  --prts-active-glass-filter: blur(28px) saturate(180%);
}

html[data-dsh-prts][data-prts-glass="off"] {
  --prts-active-glass: var(--prts-panel);
  --prts-active-glass-filter: none;
}

html[data-dsh-prts] :is(
  [data-prts-shell],
  [data-prts-shell] *,
  [data-prts-particle-layer],
  [data-prts-ambient-layer],
  [data-prts-facility-face],
  [data-composer-card],
  [data-prts-composer-fallback],
  [data-prts-conversation-control],
  [data-prts-to-bottom]
),
html[data-dsh-prts] :is(
  [data-prts-shell],
  [data-prts-shell] *,
  [data-prts-particle-layer],
  [data-prts-ambient-layer],
  [data-prts-facility-face],
  [data-composer-card],
  [data-prts-composer-fallback],
  [data-prts-conversation-control],
  [data-prts-to-bottom]
)::before,
html[data-dsh-prts] :is(
  [data-prts-shell],
  [data-prts-shell] *,
  [data-prts-particle-layer],
  [data-prts-ambient-layer],
  [data-prts-facility-face],
  [data-composer-card],
  [data-prts-composer-fallback],
  [data-prts-conversation-control],
  [data-prts-to-bottom]
)::after {
  box-sizing: border-box;
}

html[data-dsh-prts] body {
  --dsw-alias-bg-base: var(--prts-canvas);
  --dsw-alias-bg-layer-1: var(--prts-panel);
  --dsw-alias-bg-layer-2: var(--prts-panel-raised);
  --dsw-alias-bg-layer-3: var(--prts-panel-muted);
  --dsw-alias-label-primary: var(--prts-ink);
  --dsw-alias-label-secondary: var(--prts-muted);
  --dsw-alias-border-l2: var(--prts-line);
  min-height: 100dvh;
  margin: 0;
  overflow: hidden;
  background: var(--prts-canvas);
  color: var(--prts-ink);
  font-family: var(--prts-body);
}

html[data-dsh-prts] ::selection {
  background: var(--prts-yellow);
  color: var(--prts-yellow-ink);
}

html[data-dsh-prts] a {
  color: var(--prts-cyan);
  text-underline-offset: 3px;
}

/* Keep the host application's control metrics intact. Only controls owned by
   the P.R.T.S. shell and settings overlay inherit theme typography and color. */
html[data-dsh-prts] [data-prts-shell] :is(button, input, textarea, select),
html[data-dsh-prts] [data-prts-theme-settings] :is(button, input, textarea, select) {
  font: inherit;
}

html[data-dsh-prts] [data-prts-shell] button,
html[data-dsh-prts] [data-prts-theme-settings] button {
  color: inherit;
}

/* Focus decoration belongs to theme controls, not host or third-party pages. */
html[data-dsh-prts] :is([data-prts-shell], [data-prts-theme-settings], [data-prts-plugin-settings]) :focus-visible {
  outline: 2px solid var(--prts-yellow) !important;
  outline-offset: 2px !important;
}

html[data-dsh-prts] [hidden] {
  display: none !important;
}

/* RC.7 COMPATIBILITY FALLBACKS */
html[data-dsh-prts][data-prts-rail-mode="overlay"] {
  --prts-nav-width: 0px;
}

html[data-dsh-prts] [data-prts-shell] {
  position: fixed;
  z-index: 124;
  inset: var(--prts-host-top-inset) auto 0 0;
  width: var(--prts-nav-width);
  pointer-events: none;
  font-family: var(--prts-mono);
}

html[data-dsh-prts] [data-prts-shell] button,
html[data-dsh-prts] [data-prts-nav-rail] {
  pointer-events: auto;
}

html[data-dsh-prts] [data-prts-topbar] {
  display: none;
}

html[data-dsh-prts] [data-prts-nav-rail] {
  position: fixed;
  z-index: 120;
  inset: var(--prts-host-top-inset) auto 0 0;
  width: var(--prts-rail-width);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  border-right: 1px solid #30383d;
  background: var(--prts-rail);
  color: #e8edef;
  box-shadow: 4px 0 18px rgba(0, 0, 0, .18);
}

html[data-dsh-prts] [data-prts-rail-launcher] {
  display: none;
}

html[data-dsh-prts][data-prts-rail-mode="overlay"] [data-prts-nav-rail] {
  opacity: 0;
  visibility: hidden;
  transform: translate3d(-100%, 0, 0);
  transition: transform 180ms var(--prts-ease-snap), opacity 120ms ease, visibility 0s linear 180ms;
  pointer-events: none;
}

html[data-dsh-prts][data-prts-rail-mode="overlay"][data-prts-rail-open] [data-prts-nav-rail] {
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0);
  transition-delay: 0s;
  pointer-events: auto;
}

html[data-dsh-prts][data-prts-rail-mode="overlay"][data-prts-rail-open] [data-prts-rail-launcher] {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

html[data-dsh-prts][data-prts-rail-mode="overlay"] [data-prts-rail-launcher] {
  position: fixed;
  z-index: 121;
  top: 50%;
  left: 0;
  width: 12px;
  height: 96px;
  display: grid;
  place-items: center;
  padding: 0;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--prts-yellow) 40%, transparent);
  border-left: 0;
  border-radius: 0 3px 3px 0;
  opacity: .34;
  background: color-mix(in srgb, var(--prts-rail) 86%, transparent);
  color: var(--prts-yellow);
  font: 700 8px/1 var(--prts-mono);
  letter-spacing: .08em;
  transform: translateY(-50%);
  transition: width 140ms var(--prts-ease-snap), opacity 120ms ease, background-color 120ms ease;
  cursor: pointer;
}

html[data-dsh-prts][data-prts-rail-mode="overlay"] [data-prts-rail-launcher] > span {
  opacity: 0;
  writing-mode: vertical-rl;
  transition: opacity 100ms ease;
}

html[data-dsh-prts][data-prts-rail-mode="overlay"] [data-prts-rail-launcher]:is(:hover, :focus-visible) {
  width: 40px;
  opacity: 1;
  background: var(--prts-rail);
}

html[data-dsh-prts][data-prts-rail-mode="overlay"] [data-prts-rail-launcher]:is(:hover, :focus-visible) > span {
  opacity: 1;
}

@media (hover: none), (pointer: coarse) {
  html[data-dsh-prts][data-prts-rail-mode="overlay"] [data-prts-rail-launcher] {
    top: 50%; width: 24px; height: 88px; opacity: .58;
    transform: translateY(-50%); touch-action: none;
  }
  html[data-dsh-prts] [data-prts-rail-launcher] > span { opacity: 0; }
  html[data-dsh-prts] [data-prts-rail-launcher][data-prts-rail-gesture-active] { width: 40px; opacity: 1; }
  html[data-dsh-prts] [data-prts-rail-gesture-cue] {
    position: absolute; inset: calc(27px + var(--prts-rail-gesture-progress, 0px)) 10px auto auto;
    display: block; opacity: 0; font: 700 14px/8px sans-serif;
  }
  html[data-dsh-prts] [data-prts-rail-gesture-active] [data-prts-rail-gesture-cue] {
    opacity: 1; animation: prts-rail-swipe-cue 720ms ease-in-out infinite;
  }
  html[data-dsh-prts] [data-prts-rail-gesture-ready] [data-prts-rail-gesture-cue] { filter: drop-shadow(0 0 3px currentColor); }
}

@keyframes prts-rail-swipe-cue { 50% { opacity: .45; } }

html[data-dsh-prts] [data-prts-rail-brand] {
  height: 64px;
  display: grid;
  place-items: center;
  padding: 8px 5px;
  border-bottom: 1px solid #30383d;
  overflow: hidden;
}

html[data-dsh-prts] [data-prts-rail-brand] svg {
  width: 38px;
  height: 38px;
  color: #edf1f2;
}

html[data-dsh-prts] [data-prts-rail-brand] > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

html[data-dsh-prts] [data-prts-nav-rail] > button {
  position: relative;
  width: 100%;
  min-height: 52px;
  display: grid;
  place-items: center;
  gap: 2px;
  padding: 7px 2px 6px;
  border: 0;
  border-bottom: 1px solid #242b2f;
  background: transparent;
  color: #9fa9ae;
  cursor: pointer;
  clip-path: polygon(0 0, calc(100% - 3px) 0, 100% 3px, 100% calc(100% - 3px), calc(100% - 3px) 100%, 0 100%);
}

html[data-dsh-prts] [data-prts-nav-rail] > button::after {
  content: "";
  position: absolute;
  inset: 8px auto 8px 0;
  width: 2px;
  background: transparent;
}

html[data-dsh-prts] [data-prts-nav-rail] > button:is(:hover, :focus-visible),
html[data-dsh-prts] [data-prts-nav-rail] > button[aria-expanded="true"] {
  background: #151a1d;
  color: #f0f3f4;
}

html[data-dsh-prts] [data-prts-nav-rail] > button[aria-expanded="true"]::after {
  background: var(--prts-yellow);
}

html[data-dsh-prts] [data-prts-nav-rail] > button:active {
  transform: translateY(1px) scale(.98);
}

html[data-dsh-prts] [data-prts-nav-rail] b {
  font-size: 15px;
  line-height: 1;
}

html[data-dsh-prts] [data-prts-nav-rail] small {
  font-size: 8px;
  letter-spacing: .04em;
}

html[data-dsh-prts] [data-prts-nav-bottom] {
  display: grid;
  margin-top: auto;
  border-top: 1px solid #30383d;
}

html[data-dsh-prts] [data-prts-connection-indicator] {
  min-height: 40px;
  display: grid;
  place-items: center;
  gap: 3px;
  padding: 6px 2px;
  color: #8c969b;
  font-size: 7px;
  text-align: center;
}

html[data-dsh-prts] [data-prts-connection-indicator] i {
  width: 6px;
  height: 6px;
  border: 1px solid currentColor;
  background: currentColor;
  transform: rotate(45deg);
}

html[data-dsh-prts] [data-prts-connection-indicator][data-state="connected"] {
  color: var(--prts-cyan);
}

html[data-dsh-prts] [data-prts-connection-indicator][data-state="disconnected"] {
  color: var(--prts-red);
}

html[data-dsh-prts] [data-prts-scheme-toggle] svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
}

html[data-dsh-prts] [data-prts-scheme-toggle] {
  touch-action: none;
  user-select: none;
}
html[data-dsh-prts][data-prts-scheme-transition-interactive] [data-prts-scheme-toggle] {
  cursor: ew-resize;
}

html[data-dsh-prts] [data-prts-scheme-toggle][data-prts-scheme-press] {
  animation: prts-scheme-toggle-press 100ms var(--prts-ease-snap) both;
}

@keyframes prts-scheme-toggle-press {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(0) scale(.96); }
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-group(root) {
  animation: prts-scheme-view-hold var(--prts-scheme-duration, 520ms) linear both;
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-old(root),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-new(root) {
  animation: none;
  mix-blend-mode: normal;
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-old(root) {
  z-index: 1;
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-new(root) {
  z-index: 2;
  clip-path: inset(0 max(0px, calc(100vw - var(--prts-scheme-reveal-x))) 0 0);
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-group(prts-scheme-grid),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-group(prts-scheme-edge),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-group(prts-scheme-node),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-group(prts-scheme-mark) {
  animation: none;
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-group(prts-scheme-grid) {
  z-index: 3;
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-group(prts-scheme-edge) {
  z-index: 4;
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-group(prts-scheme-node),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-group(prts-scheme-mark) {
  z-index: 5;
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-old(prts-scheme-grid),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-old(prts-scheme-edge),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-old(prts-scheme-node),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-old(prts-scheme-mark) {
  opacity: 0;
  animation: none;
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-new(prts-scheme-grid),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-new(prts-scheme-edge),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-new(prts-scheme-node),
html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-new(prts-scheme-mark) {
  opacity: 1;
  animation: none;
  mix-blend-mode: normal;
}

@keyframes prts-scheme-view-hold {
  from, to { opacity: 1; }
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"] {
  --prts-scheme-grid-cell: 20px;
  --prts-scheme-grid-diagonal-cell: 40px;
  --prts-scheme-grid-axis: rgba(132, 158, 166, .14);
  --prts-scheme-grid-node: rgba(150, 180, 188, .22);
  --prts-scheme-grid-diagonal-opacity: .16;
}

html[data-dsh-prts][data-prts-scheme-transition="light"] {
  --prts-scheme-grid-axis: rgba(28, 36, 41, .12);
  --prts-scheme-grid-node: rgba(24, 31, 35, .2);
  --prts-scheme-grid-diagonal-opacity: .14;
}

html[data-dsh-prts] [data-prts-scheme-reveal] {
  box-sizing: border-box;
  position: fixed;
  z-index: 2147483647;
  inset: 0;
  width: 100vw;
  max-width: none;
  height: 100dvh;
  max-height: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
  background: transparent;
  color: #ffd400;
  --prts-scheme-grid-cell: 20px;
  --prts-scheme-grid-diagonal-cell: 40px;
  --prts-scheme-grid-axis: rgba(132, 158, 166, .08);
  --prts-scheme-grid-node: rgba(150, 180, 188, .13);
  --prts-scheme-grid-diagonal-opacity: .075;
  pointer-events: none;
}

html[data-dsh-prts] [data-prts-scheme-reveal="light"] {
  --prts-scheme-grid-axis: rgba(28, 36, 41, .065);
  --prts-scheme-grid-node: rgba(24, 31, 35, .105);
  --prts-scheme-grid-diagonal-opacity: .06;
}

html[data-dsh-prts] [data-prts-scheme-reveal-edge] {
  isolation: isolate;
  position: absolute;
  top: 0;
  left: 0;
  width: 29px;
  height: 100vh;
  background:
    linear-gradient(90deg,
      transparent 13px,
      rgba(244, 247, 247, .96) 13px 14px,
      rgba(255, 212, 0, .22) 14px 15px,
      transparent 15px);
  transform: translate3d(-14px, 0, 0);
  transform-origin: 50% 50%;
  view-transition-name: prts-scheme-edge;
  will-change: transform;
}

html[data-dsh-prts] [data-prts-scheme-reveal-grid] {
  position: absolute;
  z-index: -2;
  inset: 0 auto 0 -206px;
  display: block;
  width: 220px;
  height: 100vh;
  view-transition-name: prts-scheme-grid;
  pointer-events: none;
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-new(prts-scheme-grid) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cg fill='none' stroke='%2396b4bc' stroke-width='.55'%3E%3Cpath d='M0 0H40M0 20H40M0 40H40M0 0V40M20 0V40M40 0V40' stroke-opacity='.22'/%3E%3Cpath d='M0 0L20 20L0 40M20 0L40 20L20 40' stroke-opacity='.46'/%3E%3Cpath d='M20 0L0 20L20 40M40 0L20 20L40 40' stroke-opacity='.22'/%3E%3C/g%3E%3Cg fill='%2396b4bc' fill-opacity='.36'%3E%3Ccircle cx='0' cy='0' r='1'/%3E%3Ccircle cx='20' cy='0' r='1'/%3E%3Ccircle cx='40' cy='0' r='1'/%3E%3Ccircle cx='0' cy='20' r='1'/%3E%3Ccircle cx='20' cy='20' r='1'/%3E%3Ccircle cx='40' cy='20' r='1'/%3E%3Ccircle cx='0' cy='40' r='1'/%3E%3Ccircle cx='20' cy='40' r='1'/%3E%3Ccircle cx='40' cy='40' r='1'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: repeat;
  background-position: calc(220px - var(--prts-scheme-reveal-x)) 0;
  background-size: var(--prts-scheme-grid-diagonal-cell) var(--prts-scheme-grid-diagonal-cell);
  -webkit-mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, .12) 16%, rgba(0, 0, 0, .48) 56%, #000 100%);
  mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, .12) 16%, rgba(0, 0, 0, .48) 56%, #000 100%);
}

html[data-dsh-prts][data-prts-scheme-transition="light"]::view-transition-new(prts-scheme-grid) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cg fill='none' stroke='%231c2429' stroke-width='.55'%3E%3Cpath d='M0 0H40M0 20H40M0 40H40M0 0V40M20 0V40M40 0V40' stroke-opacity='.2'/%3E%3Cpath d='M0 0L20 20L0 40M20 0L40 20L20 40' stroke-opacity='.42'/%3E%3Cpath d='M20 0L0 20L20 40M40 0L20 20L40 40' stroke-opacity='.2'/%3E%3C/g%3E%3Cg fill='%231c2429' fill-opacity='.32'%3E%3Ccircle cx='0' cy='0' r='1'/%3E%3Ccircle cx='20' cy='0' r='1'/%3E%3Ccircle cx='40' cy='0' r='1'/%3E%3Ccircle cx='0' cy='20' r='1'/%3E%3Ccircle cx='20' cy='20' r='1'/%3E%3Ccircle cx='40' cy='20' r='1'/%3E%3Ccircle cx='0' cy='40' r='1'/%3E%3Ccircle cx='20' cy='40' r='1'/%3E%3Ccircle cx='40' cy='40' r='1'/%3E%3C/g%3E%3C/svg%3E");
}

html[data-dsh-prts] [data-prts-scheme-reveal-blend] {
  position: absolute;
  z-index: -1;
  inset: 0;
  width: 29px;
  background: linear-gradient(90deg, transparent, rgba(255, 212, 0, .025) 43%, rgba(235, 244, 245, .11) 50%, rgba(255, 212, 0, .018) 58%, transparent);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  opacity: .54;
}

html[data-dsh-prts] [data-prts-scheme-reveal="light"] [data-prts-scheme-reveal-blend] {
  background: linear-gradient(90deg, transparent, rgba(28, 36, 41, .04) 42%, rgba(255, 255, 255, .2) 50%, rgba(255, 212, 0, .018) 58%, transparent);
}

html[data-dsh-prts] [data-prts-scheme-reveal="dark"] [data-prts-scheme-reveal-blend] {
  background: linear-gradient(90deg, transparent, rgba(132, 158, 166, .035) 42%, rgba(235, 244, 245, .12) 50%, rgba(255, 212, 0, .018) 58%, transparent);
}

html[data-dsh-prts] [data-prts-scheme-reveal-edge]::before {
  content: "";
  position: absolute;
  top: 18%;
  left: 7px;
  width: 15px;
  height: 28px;
  border-top: 1px solid rgba(235, 244, 245, .58);
  border-bottom: 1px solid rgba(235, 244, 245, .58);
  background: linear-gradient(rgba(255, 212, 0, .72), rgba(255, 212, 0, .72)) 50% 50% / 100% 1px no-repeat;
}

html[data-dsh-prts] [data-prts-scheme-reveal-edge]::after {
  content: "";
  position: absolute;
  top: calc(18% + 12px);
  left: 12px;
  width: 5px;
  height: 5px;
  border: 1px solid rgba(255, 212, 0, .78);
  background: rgba(8, 12, 14, .68);
  transform: rotate(45deg);
}

html[data-dsh-prts] [data-prts-scheme-reveal-node] {
  position: absolute;
  z-index: 2;
  bottom: clamp(88px, 18vh, 176px);
  left: 14px;
  display: block;
  box-sizing: border-box;
  width: 46px;
  height: 62px;
  color: #ffd400;
  font-style: normal;
  transform: translateX(10px);
  view-transition-name: prts-scheme-node;
  transition: transform 120ms var(--prts-ease-snap);
}

html[data-dsh-prts] [data-prts-scheme-reveal-edge][data-prts-scheme-reveal-side="left"] [data-prts-scheme-reveal-node] {
  transform: translateX(calc(-100% - 10px));
}

html[data-dsh-prts] [data-prts-scheme-reveal-node]::before {
  content: "";
  position: absolute;
  top: 30px;
  left: -10px;
  width: 10px;
  border-top: 1px solid rgba(255, 212, 0, .76);
}

html[data-dsh-prts] [data-prts-scheme-reveal-edge][data-prts-scheme-reveal-side="left"] [data-prts-scheme-reveal-node]::before {
  right: -10px;
  left: auto;
}

html[data-dsh-prts] [data-prts-scheme-reveal-mark] {
  position: absolute;
  top: 20px;
  left: 20px;
  display: block;
  width: 6px;
  height: 6px;
  border-top: 1px solid currentColor;
  border-right: 1px solid currentColor;
  view-transition-name: prts-scheme-mark;
}

html[data-dsh-prts] [data-prts-scheme-reveal-meter] {
  position: absolute;
  top: 6px;
  left: 0;
  display: block;
  box-sizing: border-box;
  width: 6px;
  height: 50px;
  border: 1px solid rgba(255, 212, 0, .34);
  background: rgba(8, 12, 14, .32);
}

html[data-dsh-prts] [data-prts-scheme-reveal-meter]::after {
  content: "";
  position: absolute;
  top: -1px;
  left: 6px;
  width: 3px;
  border-top: 1px solid rgba(255, 212, 0, .64);
  box-shadow:
    0 24px rgba(255, 212, 0, .42),
    0 49px rgba(255, 212, 0, .64);
}

html[data-dsh-prts] [data-prts-scheme-reveal-meter-fill] {
  position: absolute;
  inset: 1px;
  display: block;
  background: currentColor;
  box-shadow: 0 0 5px rgba(255, 212, 0, .28);
  opacity: 0;
  transform-origin: 50% 100%;
}

html[data-dsh-prts] [data-prts-scheme-reveal-label],
html[data-dsh-prts] [data-prts-scheme-reveal-value] {
  position: absolute;
  left: 12px;
  display: block;
  color: currentColor;
  font-family: var(--prts-mono);
  font-style: normal;
  line-height: 1;
  white-space: nowrap;
}

html[data-dsh-prts] [data-prts-scheme-reveal-label] {
  top: 7px;
  font-size: 7px;
  font-weight: 600;
  letter-spacing: .16em;
  opacity: .72;
}

html[data-dsh-prts] [data-prts-scheme-reveal-value] {
  bottom: 7px;
  width: 24px;
  height: 11px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
}

html[data-dsh-prts][data-prts-scheme-transition-mode="view"]::view-transition-new(prts-scheme-node) {
  background-image: linear-gradient(#ffd400, #ffd400);
  background-position: left 1px bottom 7px;
  background-repeat: no-repeat;
  background-size: 2px var(--prts-scheme-control-meter-height, 0);
  object-fit: none;
}

html[data-dsh-prts][data-prts-scheme-transition-interactive]::view-transition-new(prts-scheme-node) {
  background-image:
    var(--prts-scheme-control-value-image),
    linear-gradient(#ffd400, #ffd400);
  background-position:
    left 12px bottom 7px,
    left 1px bottom 7px;
  background-size:
    24px 11px,
    2px var(--prts-scheme-control-meter-height, 0);
}

html[data-dsh-prts][data-prts-scheme-transition-complete]::view-transition-group(prts-scheme-grid),
html[data-dsh-prts][data-prts-scheme-transition-complete]::view-transition-group(prts-scheme-edge),
html[data-dsh-prts][data-prts-scheme-transition-complete]::view-transition-group(prts-scheme-node),
html[data-dsh-prts][data-prts-scheme-transition-complete]::view-transition-group(prts-scheme-mark) {
  animation: prts-scheme-hud-release 100ms ease-out both;
}

@keyframes prts-scheme-hud-release {
  0%, 35% { opacity: 1; }
  100% { opacity: 0; }
}

@media (max-width: 640px) {
  html[data-dsh-prts] [data-prts-scheme-reveal] {
    --prts-scheme-grid-cell: 16px;
    --prts-scheme-grid-diagonal-cell: 32px;
  }
}

html[data-dsh-prts] [data-prts-scheme-current="dark"] [data-prts-scheme-icon="light"],
html[data-dsh-prts] [data-prts-scheme-current="light"] [data-prts-scheme-icon="dark"] {
  display: none;
}

/* FIVE REGION FRAME */
html[data-dsh-prts] [data-prts-region="frame"] {
  width: calc(100vw - var(--prts-nav-width));
  height: calc(100dvh - var(--prts-host-top-inset));
  min-height: 0;
  margin-left: var(--prts-nav-width);
  display: grid !important;
  background: var(--prts-canvas);
}

html[data-dsh-prts] [data-prts-region="sessions"],
html[data-dsh-prts] [data-prts-region="operation"] {
  min-width: 0;
  min-height: 0;
}

html[data-dsh-prts] [data-prts-region="sessions"] {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  border-right: 1px solid var(--prts-line);
  background: var(--prts-panel);
  transition: opacity 180ms ease;
}

html[data-dsh-prts] [data-prts-region="operation"] {
  position: relative;
  overflow: hidden;
  background: var(--prts-canvas);
  color: var(--prts-ink);
}

html[data-dsh-prts] [data-prts-region="frame"][data-sidebar-collapsed] [data-prts-region="sessions"] :is(
  [data-slot="sidebar.workspaces"],
  [data-slot="sidebar.settings"]
) {
  opacity: 0;
  pointer-events: none;
}

html[data-dsh-prts] [data-sidebar-collapsed] :is([data-prts-owned-facility], [data-prts-owned-facility-spine], [data-prts-owned-facility-vector]) {
  visibility: hidden; content-visibility: hidden;
}

html[data-dsh-prts] [data-prts-region="sessions"] > *,
html[data-dsh-prts] [data-prts-region="sessions"] [data-slot="sidebar"] {
  height: 100%;
}

html[data-dsh-prts] [data-prts-region="sessions"] :is(
  [data-rc7-sidebar-root], [data-slot="sidebar"] > :first-child) {
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0;
  padding: 14px 10px;
  overflow: hidden auto;
  background: transparent !important;
  color: var(--prts-ink);
}

html[data-dsh-prts] [data-prts-region="sessions"] [data-slot="sidebar.workspaces"] [role="tree"] {
  overflow-x: hidden;
}

html[data-dsh-prts] [data-prts-region="sessions"] > * > [data-slot="sidebar"] > :first-child > button[aria-label*="new session" i] {
  display: none !important;
}

/* FACILITY CARD GEOMETRY */
html[data-dsh-prts] [data-prts-workspace-row],
html[data-dsh-prts] [data-prts-session-row] {
  --prts-row-shift: 0px;
  --prts-row-end-reserve: 29px;
  --prts-facility-height: var(--prts-workspace-height);
  position: relative;
  width: calc(100% - 20px);
  height: var(--prts-facility-height) !important;
  min-height: var(--prts-facility-height);
  display: flex;
  align-items: center;
  gap: 0 !important;
  margin: 0 0 var(--prts-facility-gap) 0;
  padding: 0 !important;
  overflow: visible;
  border: 0 !important;
  background: transparent !important;
  color: var(--prts-ink);
  isolation: isolate;
}

html[data-dsh-prts] [data-prts-session-row] {
  --prts-facility-height: var(--prts-session-height);
  margin-left: 8px;
}

@media (max-height: 820px) and (hover: hover) and (pointer: fine) {
  html[data-dsh-prts] {
    --prts-workspace-height: 34px;
    --prts-session-height: 32px;
    --prts-facility-gap: 5px;
  }
}

html[data-dsh-prts] [data-prts-workspace-row]::before {
  background: var(--prts-cyan) !important;
}

html[data-dsh-prts] [data-prts-workspace-row][aria-expanded="true"],
html[data-dsh-prts] [data-prts-workspace-row]:is(:hover, :focus-within, [data-prts-row-menu-open]),
html[data-dsh-prts] [data-prts-session-row]:is(:hover, :focus-within, [data-prts-row-menu-open]) {
  --prts-row-shift: var(--prts-spine-travel);
}

html[data-dsh-prts] [data-prts-workspace-row]::before,
html[data-dsh-prts] [data-prts-session-row]::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0 auto 0 0;
  width: var(--prts-spine-width);
  background: var(--prts-line-strong);
  transform: scaleX(var(--prts-spine-rest));
  transform-origin: left center;
  transition: transform 220ms var(--prts-ease-spring), background-color 160ms ease;
}

html[data-dsh-prts] [data-prts-workspace-row][aria-expanded="true"]::before,
html[data-dsh-prts] [data-prts-workspace-row]:is(:hover, :focus-within, [data-prts-row-menu-open])::before,
html[data-dsh-prts] [data-prts-session-row]:is(:hover, :focus-within, [data-prts-row-menu-open])::before {
  transform: scaleX(1);
}

html[data-dsh-prts] [data-prts-session-row]:is([data-prts-selection-target="true"], [aria-selected="true"]:not([data-prts-selection-target="false"]))::before {
  background: var(--prts-yellow);
}

html[data-dsh-prts] [data-prts-facility-face] {
  position: absolute;
  z-index: -1;
  inset: 0 0 0 5px;
  border: 1px solid var(--prts-line);
  background: var(--prts-panel-raised);
  clip-path: polygon(
    3px 0,
    calc(50% - 25px) 0, calc(50% - 20px) 3.333px, calc(50% + 20px) 3.333px, calc(50% + 25px) 0,
    calc(100% - 3px) 0, 100% 3px,
    100% calc(50% - 5px), calc(100% - .824px) calc(50% - 3px), calc(100% - .824px) calc(50% + 3px), 100% calc(50% + 5px),
    100% calc(100% - 3px), calc(100% - 3px) 100%, 3px 100%, 0 calc(100% - 3px),
    0 calc(50% + 5px), .824px calc(50% + 3px), .824px calc(50% - 3px), 0 calc(50% - 5px), 0 3px
  );
  transform: translate3d(var(--prts-row-shift), 0, 0);
  transition: transform 220ms var(--prts-ease-spring), border-color 160ms ease, background-color 160ms ease;
  pointer-events: none;
}

html[data-dsh-prts] :is([data-prts-workspace-row], [data-prts-session-row]) [data-prts-facility-face] {
  right: var(--prts-row-end-reserve);
}

html[data-dsh-prts] [data-prts-row-title],
html[data-dsh-prts] [data-prts-session-row] > span:not([data-prts-facility-face]):not([data-prts-facility-spine]):not([data-prts-row-projection]):not([data-prts-session-actions]),
html[data-dsh-prts] [data-prts-workspace-row] > span:not([data-prts-facility-face]):not([data-prts-facility-spine]):not([data-prts-row-projection]):not([data-prts-workspace-actions]) {
  position: relative;
  z-index: 3;
  min-width: 0;
  transform: translate3d(var(--prts-row-shift), 0, 0);
  transition: transform 220ms var(--prts-ease-spring), color 160ms ease;
}

html[data-dsh-prts] [data-prts-row-title] {
  flex: 1;
  overflow: hidden;
  padding: 0 10px 0 13px;
  font-size: 12px;
  font-weight: 650;
  line-height: var(--prts-facility-height);
  text-overflow: ellipsis;
  white-space: nowrap;
}

html[data-dsh-prts] [data-prts-session-row] > span:has(> [data-state]) {
  padding-left: 0 !important;
}

html[data-dsh-prts] [data-prts-session-row] [data-prts-row-title]::before {
  content: attr(data-prts-session-index);
  margin-right: 8px;
  color: var(--prts-dim);
  font-family: var(--prts-mono);
  font-size: 9px;
  letter-spacing: .08em;
}

html[data-dsh-prts] [data-prts-session-row]:is([data-prts-selection-target="true"], [aria-selected="true"]:not([data-prts-selection-target="false"])) [data-prts-row-title] {
  font-weight: 700;
}

html[data-dsh-prts] [data-prts-session-row]:is([data-prts-selection-target="true"], [aria-selected="true"]:not([data-prts-selection-target="false"])) [data-prts-row-title]::before {
  color: var(--prts-yellow);
}

html[data-dsh-prts] [data-prts-workspace-actions],
html[data-dsh-prts] [data-prts-session-actions] {
  position: absolute;
  z-index: 5;
  inset: 0 0 auto auto;
  height: var(--prts-facility-height) !important;
  align-items: stretch !important;
  gap: 1px !important;
  margin: 0 !important;
  transform: translate3d(var(--prts-row-shift), 0, 0);
}

html[data-dsh-prts] [data-prts-workspace-actions] {
  width: 57px;
}

html[data-dsh-prts] [data-prts-session-actions] {
  position: relative;
  inset: auto;
  width: auto;
  flex: 0 0 auto;
  margin-left: auto !important;
}

html[data-dsh-prts] [data-prts-session-quick-actions] {
  display: none !important;
}

html[data-dsh-prts] [data-prts-workspace-actions] > *,
html[data-dsh-prts] [data-prts-session-actions] > * {
  height: 100% !important;
}

html[data-dsh-prts] [data-prts-workspace-actions] button,
html[data-dsh-prts] [data-prts-session-actions] button {
  width: 28px !important;
  min-width: 28px !important;
  height: var(--prts-facility-height) !important;
  min-height: var(--prts-facility-height) !important;
  display: grid !important;
  place-items: center;
  padding: 0 !important;
  border: 1px solid var(--prts-line) !important;
  border-radius: 0 !important;
  background: var(--prts-panel-raised) !important;
  color: var(--prts-muted) !important;
  clip-path: polygon(3px 0, calc(100% - 3px) 0, 100% 3px, 100% calc(50% - 5px), calc(100% - .824px) calc(50% - 3px), calc(100% - .824px) calc(50% + 3px), 100% calc(50% + 5px), 100% calc(100% - 3px), calc(100% - 3px) 100%, 3px 100%, 0 calc(100% - 3px), 0 calc(50% + 5px), .824px calc(50% + 3px), .824px calc(50% - 3px), 0 calc(50% - 5px), 0 3px);
  cursor: pointer;
}

html[data-dsh-prts] [data-prts-workspace-actions] button:is(:hover, :focus-visible),
html[data-dsh-prts] [data-prts-session-actions] button:is(:hover, :focus-visible) {
  border-color: var(--prts-yellow) !important;
  color: var(--prts-yellow) !important;
}

@media (prefers-reduced-motion: no-preference) {
  html[data-dsh-prts] [data-prts-workspace-row]:is(:hover, :focus-within, [data-prts-row-menu-open]) [data-prts-workspace-actions] button,
  html[data-dsh-prts] [data-prts-session-row]:is(:hover, :focus-within, [data-prts-row-menu-open]) [data-prts-session-actions] button {
    animation: prts-facility-button-dock 520ms both;
  }

  html[data-dsh-prts] [data-prts-workspace-row]:is(:hover, :focus-within, [data-prts-row-menu-open]) [data-prts-workspace-actions] > :nth-child(1) button {
    animation-delay: 55ms;
  }

  html[data-dsh-prts] [data-prts-workspace-row]:is(:hover, :focus-within, [data-prts-row-menu-open]) [data-prts-workspace-actions] > :nth-child(2) {
    animation-delay: 125ms;
  }
}

@keyframes prts-facility-button-dock {
  0% { opacity: 0; transform: translate3d(34px, 0, 0) scaleX(.94); }
  52% { opacity: 1; transform: translate3d(-4px, 0, 0) scaleX(.96); }
  72% { transform: translate3d(3px, 0, 0) scaleX(1.035); }
  88% { transform: translate3d(-1px, 0, 0) scaleX(.99); }
  100% { opacity: 1; transform: translate3d(0, 0, 0) scaleX(1); }
}

/* OPERATION AREA */
html[data-dsh-prts] :is(
  [data-slot="main.conversation"], [data-slot="conversation"]) {
  min-width: 0;
  height: 100%;
  background: transparent;
}

/* The rc.7 conversation root owns an opaque host surface above the ambient
   siblings. Keep it transparent only for the chat theme so its backdrop remains
   behind native messages and controls. */
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is(
  [data-slot="main.conversation"], [data-slot="conversation"]) > [data-phase] {
  background: transparent !important;
}

html[data-dsh-prts] [data-slot="conversation.session.header"] {
  border-bottom: 1px solid var(--prts-line);
  background: color-mix(in srgb, var(--prts-canvas-elevated) 92%, transparent);
  font-family: var(--prts-mono);
}

html[data-dsh-prts] [data-session-code] {
  color: var(--prts-yellow);
  font-size: 11px;
  letter-spacing: .12em;
}

html[data-dsh-prts] [data-prts-conversation-control="header"] {
  margin-left: auto;
}

html[data-dsh-prts] [data-conversation-scroll] {
  position: relative;
  z-index: 2;
}

/* DSH renders transcript width handles beside the scroll surface. Its scroll
   surface needs this layer for our ambient backdrop, but must not cover the
   native handles' hit areas. Keep DSH's higher dragging layer intact. */
html[data-dsh-prts] [data-width-handle]:not([data-dragging]) {
  z-index: 3;
}

/* Local submission echoes precede the durable user node; style both on first paint. */
html[data-dsh-prts][data-prts-conversation-style="native"] [data-message-role="user"],
html[data-dsh-prts][data-prts-conversation-style="native"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) {
  position: relative;
  color: var(--prts-ink);
}

html[data-dsh-prts][data-prts-conversation-style="native"] [data-message-role="user"],
html[data-dsh-prts][data-prts-conversation-style="native"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"] {
  border: 1px solid var(--prts-line-strong) !important;
  border-left: 4px solid var(--prts-yellow) !important;
  border-radius: var(--prts-radius-card) !important;
  background: var(--prts-panel-raised) !important;
  color: var(--prts-ink) !important;
  clip-path: polygon(3px 0, calc(100% - 3px) 0, 100% 3px, 100% calc(100% - 3px), calc(100% - 3px) 100%, 0 100%, 0 3px);
  box-shadow: none !important;
}

html[data-dsh-prts][data-prts-conversation-style="native"] [data-message-role="user"] :is([data-markdown], [class*="markdown" i]),
html[data-dsh-prts][data-prts-conversation-style="native"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"] :is([data-markdown], [class*="markdown" i]) {
  background: transparent !important;
}

html[data-dsh-prts][data-prts-conversation-style="native"] [data-message-role="user"] :is(pre, table, blockquote),
html[data-dsh-prts][data-prts-conversation-style="native"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"] :is(pre, table, blockquote) {
  border: 1px solid var(--prts-line);
  background: var(--prts-glass-dense);
}

html[data-dsh-prts][data-prts-conversation-style="native"] [data-message-role="user"] :is(pre, code),
html[data-dsh-prts][data-prts-conversation-style="native"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"] :is(pre, code) {
  font-family: var(--prts-mono) !important;
}

html[data-dsh-prts][data-prts-conversation-style="native"] [data-message-role="user"] pre,
html[data-dsh-prts][data-prts-conversation-style="native"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"] pre {
  max-width: 100%;
  overflow: auto;
  padding: 14px;
  border-left: 3px solid var(--prts-cyan) !important;
  color: var(--prts-ink) !important;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is(
  :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])),
  [data-chat-flow-kind="assistant-step"]:not([data-chat-group-part="reasoning"])
) {
  position: relative;
  box-sizing: border-box;
  min-width: 0;
  overflow: visible;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) {
  padding-inline-end: 80px;
  color: var(--prts-ink);
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-chat-flow-kind="assistant-step"]:not([data-chat-group-part="reasoning"]) {
  padding-inline-start: 80px;
  color: var(--prts-ink);
}




html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-chat-flow-kind="assistant-step"]:not([data-chat-group-part="reasoning"])::before,
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering]))::after,
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="assistant"]::before,
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="user"]::after {
  position: absolute;
  z-index: 2;
  top: -5px;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  --prts-portrait-size: 60px;
  width: var(--prts-portrait-size);
  height: var(--prts-portrait-size);
  min-width: var(--prts-portrait-size);
  max-width: var(--prts-portrait-size);
  min-height: var(--prts-portrait-size);
  max-height: var(--prts-portrait-size);
  padding: 5px;
  aspect-ratio: 1;
  border: 0;
  corner-shape: round;
  border-radius: 50%;
  outline: none;
  background-color: transparent;
  background-origin: border-box, content-box, content-box;
  background-clip: border-box, content-box, content-box;
  background-position: center;
  background-size: 100% 100%, cover, auto;
  background-repeat: no-repeat;
  box-shadow: none;
  pointer-events: none;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-chat-flow-kind="assistant-step"]:not([data-chat-group-part="reasoning"])::before,
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="assistant"]::before {
  content: "";
  left: 0;

  background-image:
    var(--prts-avatar-ring-image),
    var(--prts-custom-assistant-avatar, var(--prts-assistant-avatar-image, none)),
    linear-gradient(var(--prts-chat-avatar-surface), var(--prts-chat-avatar-surface));

}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering]))::after,
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="user"]::after {
  content: var(--prts-user-avatar-label, "我");
  right: 0;

  background-image:
    var(--prts-avatar-ring-image), var(--prts-custom-user-avatar, none),
    linear-gradient(var(--prts-chat-avatar-surface), var(--prts-chat-avatar-surface));
  color: var(--prts-ink);
  font: 500 13px/1 var(--prts-mono);
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"],
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="user"] {
  position: relative;
  --prts-ink: #191c19;
  --prts-muted: #515851;
  --prts-canvas: #e0e4e0;
  --prts-cyan: #27616a;
  border: 0 !important;
  border-radius: 18px 0 18px 18px !important;
  padding: 10px 18px !important;
  background: var(--prts-chat-user-surface) !important;
  color: var(--prts-ink) !important;
  clip-path: none !important;
  box-shadow: none !important;
  overflow-wrap: anywhere;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="user"] {
  width: calc(100% - 80px);
  margin-inline-start: auto;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="user"]::after {
  right: -80px;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="assistant"] {
  position: relative;
  width: calc(100% - 80px);
  margin-inline-start: calc((100% - min(var(--dsh-chat-content-width, 748px), 100%)) / 2 + 80px);
  padding: 12px 22px !important;
  border: 0 !important;
  border-radius: 0 18px 18px 18px !important;
  background: var(--prts-chat-assistant-surface) !important;
  color: var(--prts-ink) !important;
  box-shadow: none !important;
  overflow-wrap: anywhere;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="assistant"]::before {
  left: -80px;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-chat-flow-kind="assistant-step"]:not([data-chat-group-part="reasoning"]) [class$="_body"]:has(:is([data-markdown], [data-slot*="markdown" i], .markdown-body)),
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-prts-ai-surface] {
  position: relative;
  box-sizing: border-box;
  width: fit-content;
  max-width: 100%;
  padding: 12px 22px !important;
  border: 0 !important;
  border-radius: 0 18px 18px 18px !important;
  background: var(--prts-chat-assistant-surface) !important;
  color: var(--prts-ink) !important;
  box-shadow: none !important;
  overflow-wrap: anywhere;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-prts-ai-surface] > * {
  color: inherit;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is(
  [data-prts-ai-surface],
  [data-message-role="assistant"]
) :is(p, li, h1, h2, h3, h4, h5, h6) {
  color: var(--prts-ink) !important;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is(
  [data-prts-ai-surface],
  [data-message-role="assistant"],
  [data-message-role="user"],
  :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"]
) :is([data-markdown], [class*="markdown" i]) {
  background: transparent !important;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is(
  [data-prts-ai-surface],
  [data-message-role="assistant"],
  [data-message-role="user"],
  :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"]
) :is(pre, table, blockquote) {
  border: 1px solid color-mix(in srgb, var(--prts-cyan) 24%, var(--prts-line));
  background: color-mix(in srgb, var(--prts-canvas) 88%, transparent);
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is(
  [data-prts-ai-surface],
  [data-message-role="assistant"],
  [data-message-role="user"],
  :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"]
) :is(pre, code) {
  font-family: var(--prts-mono) !important;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is(
  [data-prts-ai-surface],
  [data-message-role="assistant"],
  [data-message-role="user"],
  :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"]
) pre {
  max-width: 100%;
  overflow: auto;
  padding: 14px;
  border-left: 3px solid var(--prts-cyan) !important;
  color: var(--prts-ink) !important;
}

/* Baker code cards and tables. */
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is(
[data-prts-ai-surface], [data-message-role="assistant"], [data-message-role="user"],
:is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"]
) {
/* Clip preserves header stickiness. */
& :has(>[data-code-block-content]){
box-sizing:border-box;max-width:100%;border:1px solid var(--prts-line);border-left:3px solid var(--prts-cyan);border-radius:12px;overflow:clip;
& [data-code-block-banner]{border-radius:11px 11px 0 0;background:color-mix(in srgb,var(--prts-ink) 7%,var(--prts-canvas));border-bottom:1px solid var(--prts-line)}
&>[data-code-block-content] pre{box-sizing:border-box;width:100%;border:0!important;border-radius:0 0 11px 11px;margin:0!important}
}
& :is(th,td){padding-inline:14px!important}
& :is(.md-table-wide,[class*="_tableScroll_"]){
box-sizing:border-box;width:100%;max-width:100%;min-width:0;
margin-inline:0!important;padding:0!important;overflow:auto;
border:1px solid color-mix(in srgb,var(--prts-cyan) 24%,var(--prts-line));
border-radius:10px;corner-shape:round;
background:color-mix(in srgb,var(--prts-canvas) 88%,transparent);
& > table{border:0;background:transparent;margin:0;width:100%}
}
}

/* Group process avatars without changing reply alignment or final-answer avatars. */
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-prts-avatar-hidden]::before{content:none!important}

/* Baker quote surfaces; classic prose retains the host styling. */
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is([data-chat-flow-kind],[data-message-role],[data-prts-ai-surface],[data-submission-echo]) blockquote {
border-radius:10px;corner-shape:round;padding:8px 14px;
border-inline-start:3px solid var(--prts-cyan)!important;
& > :first-child{margin-top:0}
& > :last-child{margin-bottom:0}
}

html[data-dsh-prts] [aria-invalid="true"],
html[data-dsh-prts] [data-status="error"],
html[data-dsh-prts] [data-status="denied"] {
  border-color: var(--prts-red) !important;
  color: var(--prts-red) !important;
}

/* AMBIENT AND PARTICLE EMBLEMS */
html[data-dsh-prts][data-prts-conversation-style="native"] [data-prts-ambient-layer] {
  position: absolute;
  z-index: 0;
  inset: 0;
  overflow: hidden;
  opacity: .86;
  background:
    radial-gradient(circle at 48% 35%, color-mix(in srgb, var(--prts-cyan) 7%, transparent), transparent 32%),
    linear-gradient(115deg, transparent 0 42%, color-mix(in srgb, var(--prts-line) 18%, transparent) 42.2% 42.5%, transparent 42.7%),
    repeating-linear-gradient(0deg, transparent 0 27px, color-mix(in srgb, var(--prts-line) 12%, transparent) 27px 28px);
  pointer-events: none;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-prts-ambient-layer] {
  position: absolute;
  z-index: 0;
  inset: 0;
  overflow: hidden;
  opacity: 1;
  background:
    linear-gradient(90deg,
      color-mix(in srgb, var(--prts-chat-backdrop-edge) 58%, transparent),
      transparent 14% 86%,
      color-mix(in srgb, var(--prts-chat-backdrop-edge) 58%, transparent)),
    linear-gradient(180deg,
      color-mix(in srgb, var(--prts-chat-backdrop) 96%, var(--prts-canvas)),
      var(--prts-chat-backdrop));
  pointer-events: none;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-prts-ambient-layer]::before,
html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-prts-ambient-layer]::after {
  display: none;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"][data-prts-conversation-state="active"] [data-prts-particle-layer] {
  opacity: .04;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"][data-prts-conversation-state="active"] [data-prts-ambient-glow],
html[data-dsh-prts][data-prts-conversation-style="deck-chat"][data-prts-conversation-state="active"] [data-prts-ambient-edge] {
  display: none;
}

html[data-dsh-prts][data-prts-texture="restrained"] [data-prts-ambient-layer] {
  opacity: .56;
}

html[data-dsh-prts][data-prts-texture="off"] [data-prts-ambient-layer] {
  display: none;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"][data-prts-texture="restrained"] [data-prts-ambient-layer] {
  opacity: .82;
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"][data-prts-texture="off"] [data-prts-ambient-layer] {
  display: block;
  opacity: .72;
}

html[data-dsh-prts] [data-prts-particle-layer] {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}


html[data-dsh-prts] [data-prts-particle-layer] {
  opacity: 1;
  transition: opacity 120ms ease-out;
}

/* Resize state lives on the small visual surfaces that need it, never on the root tree. */
html[data-dsh-prts] [data-prts-particle-layer][data-prts-resizing] {
  opacity: .78;
  transition: none;
}

html[data-dsh-prts] [data-prts-particle-layer][data-prts-resize-restoring] {
  opacity: 1;
  transition: opacity 120ms ease-out;
}

html[data-dsh-prts] [data-prts-ambient-layer][data-prts-resizing] {
  opacity: .42;
  background: color-mix(in srgb, var(--prts-panel) 92%, var(--prts-canvas));
  transition: none;
}

html[data-dsh-prts] [data-prts-ambient-layer][data-prts-resizing] :is(
  [data-prts-ambient-glow],
  [data-prts-session-pickup]
) {
  animation-play-state: paused !important;
}

html[data-dsh-prts] :is(
  [data-prts-theme-settings][data-prts-resizing],
  [data-prts-settings-backdrop][data-prts-resizing]
),
html[data-dsh-prts] [data-prts-resizing] > [data-composer-card] {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transition: none !important;
}
html[data-dsh-prts] [data-prts-hero-active]::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}

html[data-dsh-prts] {
  --prts-hero-mark-base: clamp(380px, 46%, 720px);
  --prts-hero-mark-size: min(var(--prts-hero-mark-base), 42dvh);
}

/* COMPOSER AND CONTROLS */
html[data-dsh-prts] [data-prts-hero-active] [data-composer-seat],
html[data-dsh-prts] [data-prts-hero-active] [data-slot="conversation.composer"] {
  position: relative;
  z-index: 5;
}

html[data-dsh-prts] [data-composer-card],
html[data-dsh-prts] [data-prts-composer-fallback] {
  position: relative;
  border: 1px solid var(--prts-line-strong) !important;
  border-bottom: 3px solid var(--prts-yellow) !important;
  border-radius: var(--prts-radius-card) !important;
  background: var(--prts-active-glass) !important;
  clip-path: polygon(3px 0, calc(50% - 42px) 0, calc(50% - 37px) 5px, calc(50% + 37px) 5px, calc(50% + 42px) 0, calc(100% - 3px) 0, 100% 3px, 100% calc(100% - 3px), calc(100% - 3px) 100%, 3px 100%, 0 calc(100% - 3px), 0 3px);
  box-shadow: 0 14px 34px rgba(0, 0, 0, .18);
  backdrop-filter: var(--prts-active-glass-filter);
  -webkit-backdrop-filter: var(--prts-active-glass-filter);
}

html[data-dsh-prts] [data-composer-card] :is(textarea, [data-composer-input]),
html[data-dsh-prts] [data-prts-composer-fallback] :is(textarea, [data-composer-input]) {
  border: 0 !important;
  background: transparent !important;
  color: var(--prts-ink) !important;
  caret-color: var(--prts-yellow);
}

html[data-dsh-prts] [data-composer-card] button:not([data-slot="conversation.input.attachments"] *):not([data-prts-glass-menu] *):not([data-prts-floating-glass] *):not([role="menu"] *):not([role="listbox"] *),
html[data-dsh-prts] [data-prts-conversation-control] {
  border: 1px solid var(--prts-line) !important;
  border-radius: var(--prts-radius-control) !important;
  background: var(--prts-panel-raised) !important;
  color: var(--prts-ink) !important;
  clip-path: polygon(3px 0, calc(100% - 3px) 0, 100% 3px, 100% calc(100% - 3px), calc(100% - 3px) 100%, 3px 100%, 0 calc(100% - 3px), 0 3px);
}


html[data-dsh-prts] [data-composer-card] button:not([data-slot="conversation.input.attachments"] *):not([data-prts-glass-menu] *):not([data-prts-floating-glass] *):not([role="menu"] *):not([role="listbox"] *):is(:hover, :focus-visible),
html[data-dsh-prts] [data-prts-conversation-control]:is(:hover, :focus-visible) {
  border-color: var(--prts-yellow) !important;
}

html[data-dsh-prts] [data-composer-card] button[aria-label*="send" i],
html[data-dsh-prts] [data-composer-card] button[type="submit"] {
  background: var(--prts-yellow) !important;
  color: var(--prts-yellow-ink) !important;
}

html[data-dsh-prts] [data-composer-card] button:not([data-slot="conversation.input.attachments"] *):not([data-prts-glass-menu] *):not([data-prts-floating-glass] *):not([role="menu"] *):not([role="listbox"] *):active,
html[data-dsh-prts] [data-prts-conversation-control]:active {
  transform: translateY(1px) scale(.98);
}

html[data-dsh-prts] [data-produced-files-row] > button[type="button"],
html[data-dsh-prts] [data-prts-to-bottom] {
  min-height: 36px;
  border: 1px solid var(--prts-line) !important;
  background: var(--prts-active-glass) !important;
  color: var(--prts-ink) !important;
  clip-path: polygon(3px 0, calc(100% - 3px) 0, 100% 3px, 100% calc(100% - 3px), calc(100% - 3px) 100%, 3px 100%, 0 calc(100% - 3px), 0 3px);
}

/* FLOATING MATERIALS */
html[data-dsh-prts] [data-prts-glass-control="model"],
html[data-dsh-prts] [data-prts-glass-control="permission"],
html[data-dsh-prts] [data-prts-glass-control="preset"] {
  border: 1px solid var(--prts-line) !important;
  border-radius: var(--prts-radius-control) !important;
  background: var(--prts-active-glass) !important;
  color: var(--prts-ink) !important;
}

html[data-dsh-prts] [data-menu-material][class*="_7KE1Ra_menu"],
html[data-dsh-prts] [data-prts-glass-menu],
html[data-dsh-prts] [data-prts-floating-glass="menu"],
html[data-dsh-prts] [data-prts-floating-glass="listbox"],
html[data-dsh-prts] [data-prts-floating-glass="popover"] {
  border: 1px solid var(--prts-glass-border) !important;
  border-radius: var(--prts-radius-overlay) !important;
  background: var(--prts-active-glass) !important;
  color: var(--prts-ink) !important;
  box-shadow: var(--prts-shadow-glass-overlay) !important;
  backdrop-filter: var(--prts-active-glass-filter);
  -webkit-backdrop-filter: var(--prts-active-glass-filter);
}

html[data-dsh-prts] [data-prts-floating-glass="dialog"] {
  border: 1px solid var(--prts-glass-border) !important;
  border-radius: var(--prts-radius-overlay) !important;
  background: var(--prts-panel) !important;
  color: var(--prts-ink) !important;
  box-shadow: var(--prts-shadow-glass-overlay) !important;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

html[data-dsh-prts] [data-menu-material][class*="_7KE1Ra_menu"] :is([role="menuitem"], [role="menuitemradio"], [role="menuitemcheckbox"]),
html[data-dsh-prts] [data-prts-floating-item] {
  min-height: 38px;
  border-radius: var(--prts-radius-control) !important;
  color: var(--prts-ink) !important;
}

html[data-dsh-prts] [data-prts-floating-item]:is(:hover, [data-highlighted]) {
  background: var(--prts-panel-muted) !important;
}

html[data-dsh-prts] [data-prts-floating-input] {
  min-height: 44px;
  border: 1px solid var(--prts-line) !important;
  background: var(--prts-panel) !important;
  color: var(--prts-ink) !important;
}

html[data-dsh-prts] :is(
  [data-prts-floating-glass="menu"],
  [data-prts-floating-glass="listbox"],
  [data-prts-floating-glass="popover"]
) [data-prts-floating-danger] {
  color: var(--prts-red) !important;
}

html[data-dsh-prts] [data-prts-floating-scrim] {
  background: rgba(3, 5, 6, .62) !important;
}

/* SETTINGS → PLUGINS / P.R.T.S. */
html[data-dsh-prts-settings] .prts-plugin-settings {
  width: 100%;
  display: grid;
  gap: 16px;
  container: prts-plugin-settings / inline-size;
  color: inherit;
  font: inherit;
}

html[data-dsh-prts-settings] .prts-plugin-settings__header {
  display: grid;
  gap: 5px;
  padding-bottom: 14px;
  border-bottom: 1px solid color-mix(in srgb, currentColor 18%, transparent);
}

html[data-dsh-prts-settings] .prts-plugin-settings__header h3,
html[data-dsh-prts-settings] .prts-plugin-settings__header p {
  margin: 0;
}

html[data-dsh-prts-settings] .prts-plugin-settings__header h3 {
  font-size: 18px;
  font-weight: 650;
}

html[data-dsh-prts-settings] .prts-plugin-settings__header p,
html[data-dsh-prts-settings] .prts-plugin-settings__copy small {
  color: color-mix(in srgb, currentColor 62%, transparent);
  font-size: 12px;
  line-height: 1.5;
}

html[data-dsh-prts-settings] .prts-plugin-settings__safe {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid color-mix(in srgb, #df5750 42%, transparent);
  border-radius: 8px;
  background: color-mix(in srgb, #df5750 8%, transparent);
  color: inherit;
  font-size: 12px;
}

html[data-dsh-prts-settings] .prts-plugin-settings__list {
  overflow: hidden;
  border: 1px solid color-mix(in srgb, currentColor 16%, transparent);
  border-radius: 10px;
}

html[data-dsh-prts-settings] .prts-plugin-settings__row {
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 12px 14px;
}

html[data-dsh-prts-settings] .prts-plugin-settings__row + .prts-plugin-settings__row {
  border-top: 1px solid color-mix(in srgb, currentColor 12%, transparent);
}

html[data-dsh-prts-settings] .prts-plugin-settings__copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

html[data-dsh-prts-settings] .prts-plugin-settings__copy strong {
  font-size: 13px;
  font-weight: 600;
}

html[data-dsh-prts-settings] :is(.prts-plugin-settings button[role='switch'], [data-prts-setting-switch]) {
  position: relative;
  width: 42px;
  height: 24px;
  flex: 0 0 auto;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: color-mix(in srgb, currentColor 18%, transparent);
  color: inherit;
  cursor: pointer;
}

html[data-dsh-prts-settings] :is(.prts-plugin-settings button[role='switch'], [data-prts-setting-switch]) > span {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: currentColor;
  transition: transform 120ms ease;
}

html[data-dsh-prts-settings] :is(.prts-plugin-settings button[role='switch'], [data-prts-setting-switch]).is-active {
  background: var(--color-primary, #d9b800);
  color: #111;
}

html[data-dsh-prts-settings] :is(.prts-plugin-settings button[role='switch'], [data-prts-setting-switch]).is-active > span {
  transform: translateX(18px);
}

html[data-dsh-prts-settings] :is(.prts-plugin-settings button[role='switch'], [data-prts-setting-switch]):disabled {
  cursor: not-allowed;
  opacity: .45;
}

@media (prefers-reduced-motion: reduce) {
  html[data-dsh-prts-settings] :is(.prts-plugin-settings button[role='switch'], [data-prts-setting-switch]) > span {
    transition: none;
  }
}

@container prts-plugin-settings (max-width: 22rem) {
  html[data-dsh-prts-settings] .prts-plugin-settings__row {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  html[data-dsh-prts-settings] :is(.prts-plugin-settings button[role='switch'], [data-prts-setting-switch]) {
    align-self: flex-end;
  }
}



@media (max-width: 640px) {
  html[data-dsh-prts] {
    --prts-nav-width: 52px;
  }

  html[data-dsh-prts] [data-slot="conversation.session.header"] {
    padding-inline: 12px;
  }

  html[data-dsh-prts-settings] .prts-settings {
    padding: 12px;
  }
}

@media (max-width: 760px) {
  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) {
    padding-inline: 8px 74px;
  }

  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-chat-flow-kind="assistant-step"]:not([data-chat-group-part="reasoning"]) {
    padding-inline: 0 8px;
    padding-inline-start: 74px;
  }

  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-chat-flow-kind="assistant-step"]:not([data-chat-group-part="reasoning"])::before,
  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="assistant"]::before {
    left: 8px;
    --prts-portrait-size: 52px;
    border-radius: 50%;
  }

  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering]))::after,
  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="user"]::after {
    right: 8px;
    --prts-portrait-size: 52px;
    border-radius: 50%;
    font-size: 11px;
  }

  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"],
  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="user"] {
    padding: 9px 15px !important;
    border-radius: 16px 0 16px 16px !important;
  }

  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-chat-flow-kind="assistant-step"]:not([data-chat-group-part="reasoning"]) [class$="_body"]:has(:is([data-markdown], [data-slot*="markdown" i], .markdown-body)),
  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-prts-ai-surface],
  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="assistant"] {
    padding: 10px 16px !important;
    border-radius: 0 16px 16px 16px !important;
  }

  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="user"] {
    width: calc(100% - 66px);
  }

  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="user"]::after {
    right: -66px;
  }

  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="assistant"] {
    width: calc(100% - 66px);
    margin-inline-start: 66px;
  }

  html[data-dsh-prts][data-prts-conversation-style="deck-chat"] [data-message-role="assistant"]::before {
    left: -66px;
  }

}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  html[data-dsh-prts] [data-prts-floating-glass],
  html[data-dsh-prts] [data-composer-card],
  html[data-dsh-prts] [data-prts-glass-menu] {
    background: var(--prts-panel) !important;
  }
}

@media (hover: hover) and (pointer: fine) {
  html[data-dsh-prts] [data-prts-nav-rail] > button:hover b {
    transform: translateY(-1px);
  }
}

@media (prefers-reduced-transparency: reduce) {
  html[data-dsh-prts] {
    --prts-active-glass: var(--prts-panel);
    --prts-active-glass-filter: none;
  }
}

@media (prefers-contrast: more) {
  html[data-dsh-prts] {
    --prts-line: currentColor;
    --prts-line-strong: currentColor;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-dsh-prts] :is(
  [data-prts-shell],
  [data-prts-shell] *,
  [data-prts-particle-layer],
  [data-prts-ambient-layer],
  [data-prts-facility-face],
  [data-composer-card],
  [data-prts-composer-fallback],
  [data-prts-conversation-control],
  [data-prts-to-bottom]
),
  html[data-dsh-prts] :is(
  [data-prts-shell],
  [data-prts-shell] *,
  [data-prts-particle-layer],
  [data-prts-ambient-layer],
  [data-prts-facility-face],
  [data-composer-card],
  [data-prts-composer-fallback],
  [data-prts-conversation-control],
  [data-prts-to-bottom]
)::before,
  html[data-dsh-prts] :is(
  [data-prts-shell],
  [data-prts-shell] *,
  [data-prts-particle-layer],
  [data-prts-ambient-layer],
  [data-prts-facility-face],
  [data-composer-card],
  [data-prts-composer-fallback],
  [data-prts-conversation-control],
  [data-prts-to-bottom]
)::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

html[data-dsh-prts][data-prts-conversation-style="deck-chat"] {
  & :is([data-prts-ai-surface], [data-message-role="assistant"]) { --prts-bubble-surface: var(--prts-chat-assistant-surface); }
  & [data-prts-ai-surface]::before,
  & [data-message-role="assistant"]::after,
  & :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"]::before,
  & [data-message-role="user"]::before {
    content: ""; position: absolute; top: 0; left: -10px; width: 10px; height: 18px; pointer-events: none;
    background: var(--prts-bubble-surface, var(--prts-chat-user-surface));
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 18'%3E%3Cpath d='M0 0H10V18Q10 6 0 0Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  }
  & :is([data-chat-flow-kind="user"], [data-submission-echo]:not([data-pending-steering])) [class$="_bubble"]::before,
  & [data-message-role="user"]::before { left: auto; right: -10px; transform: scaleX(-1); }
}

/* The upstream component replaces only the composer's two background plates. */
html[data-dsh-prts] :is([data-composer-card], [data-prts-composer-fallback])[data-prts-composer-glass-active]::before,
html[data-dsh-prts] :is([data-composer-card], [data-prts-composer-fallback])[data-prts-composer-glass-active]::after {
  content: none;
}
html[data-dsh-prts] :is([data-composer-card], [data-prts-composer-fallback]) > [data-prts-composer-glass-surface] {
  position: absolute !important;
  inset: -16px;
  z-index: 0 !important;
  pointer-events: none;
}

/* The host's sticky dock fades to opaque after 36px; let the glass see the chat. */
html[data-dsh-prts] [data-composer-seat]:has([data-prts-composer-glass-active]) {
  background: transparent !important;
}


/* Optional popup material changes neither popup geometry nor its border/shadow. */
html[data-dsh-prts][data-prts-composer-enhanced] {
  --prts-composer-menu-tint: rgba(25, 32, 38, .85);
  --prts-composer-menu-filter: blur(16px) saturate(1.15);
}
html[data-dsh-prts][data-prts-composer-enhanced][data-prts-scheme="light"] {
  --prts-composer-menu-tint: rgba(244, 249, 251, .85);
}
html[data-dsh-prts][data-prts-composer-enhanced] :is(
  [data-prts-glass-menu],
  [data-menu-material][class*="_7KE1Ra_menu"]
) {
  background: var(--prts-composer-menu-tint) !important;
  backdrop-filter: var(--prts-composer-menu-filter) !important;
  -webkit-backdrop-filter: var(--prts-composer-menu-filter) !important;
}
/* Reuse the host material plate when present; do not stack two blur filters. */
html[data-dsh-prts][data-prts-composer-enhanced] :is(
  [data-prts-glass-menu],
  [data-menu-material][class*="_7KE1Ra_menu"]
):has(> [aria-hidden="true"][class*="_material_"]) {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html[data-dsh-prts][data-prts-composer-enhanced] :is(
  [data-prts-glass-menu],
  [data-menu-material][class*="_7KE1Ra_menu"]
) > [aria-hidden="true"][class*="_material_"] {
  background: var(--prts-composer-menu-tint) !important;
  backdrop-filter: var(--prts-composer-menu-filter) !important;
  -webkit-backdrop-filter: var(--prts-composer-menu-filter) !important;
}
html[data-dsh-prts][data-prts-composer-enhanced] [data-prts-glass-menu] [data-prts-glass-menu]:not([data-menu-material]) {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
}

/* The live CSS outline owns geometry; asynchronously decoded artwork only refracts. */
html[data-dsh-prts] [data-prts-composer-glass-active] > [data-prts-composer-glass-surface] > .glass-surface {
  mask: none !important;
  -webkit-mask: none !important;
  opacity: 1 !important;
  clip-path: polygon(19px 16px, calc(50% - 42px) 16px, calc(50% - 37px) 21px, calc(50% + 37px) 21px, calc(50% + 42px) 16px, calc(100% - 19px) 16px, calc(100% - 16px) 19px, calc(100% - 16px) calc(100% - 19px), calc(100% - 19px) calc(100% - 16px), 19px calc(100% - 16px), 16px calc(100% - 19px), 16px 19px);
}
html[data-dsh-prts] [data-prts-composer-glass-active] :is(.glass-surface__line, .glass-surface__glow) {
  display: none;
}
html[data-dsh-prts] :is([data-composer-card], [data-prts-composer-fallback])[data-prts-composer-glass-active]::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: var(--prts-line-strong);
  clip-path: polygon(evenodd,
    3px 0, calc(50% - 42px) 0, calc(50% - 37px) 5px, calc(50% + 37px) 5px, calc(50% + 42px) 0, calc(100% - 3px) 0, 100% 3px, 100% calc(100% - 3px), calc(100% - 3px) 100%, 3px 100%, 0 calc(100% - 3px), 0 3px, 3px 0,
    3px 1px, 1px 3px, 1px calc(100% - 3px), 3px calc(100% - 1px), calc(100% - 3px) calc(100% - 1px), calc(100% - 1px) calc(100% - 3px), calc(100% - 1px) 3px, calc(100% - 3px) 1px, calc(50% + 42px) 1px, calc(50% + 37px) 6px, calc(50% - 37px) 6px, calc(50% - 42px) 1px, 3px 1px);
}

/* A restrained tint/sheen keeps the material legible over a blank backdrop too. */
html[data-dsh-prts] [data-prts-composer-glass-active] > [data-prts-composer-glass-surface] > .glass-surface {
  background: linear-gradient(135deg, rgba(255, 255, 255, .055), transparent 65%), rgba(31, 40, 47, .5);
}
html[data-dsh-prts][data-prts-scheme="light"] [data-prts-composer-glass-active] > [data-prts-composer-glass-surface] > .glass-surface {
  background: linear-gradient(135deg, rgba(255, 255, 255, .2), transparent 65%), rgba(244, 249, 251, .5);
}
