/* DayPilot UI · v3 resource family · release 3.0.1.
 * Explicit dpu-* components and opt-in foundations. No page-wide reset or demo JS.
 * Source of truth: daypilot-style. Compatible 3.x updates use /v3/; breaking changes require a new major.
 */
:where(.dpu-root) {
  color-scheme: light;
  --dpu-ink: #20313f;
  --dpu-text: #435461;
  --dpu-muted: #64737f;
  --dpu-blue: #096ba8;
  --dpu-blue-hover: #075685;
  --dpu-navy: #0e2c42;
  --dpu-soft-blue: #edf5fa;
  --dpu-line: #dce2e7;
  --dpu-control-line: #8394a1;
  --dpu-wash: #f6f8fa;
  --dpu-focus: #187bb8;
  --dpu-success: #287549;
  --dpu-danger: #af3c36;
  --dpu-radius: 6px;
  --dpu-mono:
    ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
  font:
    15px/1.55 -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    Arial,
    sans-serif;
  font-synthesis: none;
  color: var(--dpu-text);
}
:where(
  .dpu-control,
  .dpu-choice,
  .dpu-btn,
  .dpu-input,
  .dpu-switch,
  .dpu-tab,
  .dpu-field input,
  .dpu-field select,
  .dpu-field textarea,
  .dpu-property-row input,
  .dpu-property-row select,
  .dpu-check-label input,
  .dpu-segmented input,
  .dpu-option-card input,
  .dpu-action-menu button,
  .dpu-queue button,
  .dpu-task-panel input[type="file"]
) {
  box-sizing: border-box;
  font: inherit;
}
:where(
  .dpu-clickable,
  .dpu-btn,
  .dpu-switch,
  .dpu-tab,
  .dpu-action-menu button,
  .dpu-queue button,
  .dpu-disclosure > summary
) {
  cursor: pointer;
}
:where(.dpu-link) {
  color: var(--dpu-blue);
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
:where(.dpu-link):hover {
  color: var(--dpu-blue-hover);
}
:where(.dpu-h1, .dpu-h2, .dpu-h3, .dpu-h4) {
  margin: 0;
  color: var(--dpu-ink);
  line-height: 1.25;
}
:where(.dpu-h1) {
  font-size: clamp(30px, 3vw, 40px);
  font-weight: 600;
  letter-spacing: -0.035em;
}
:where(.dpu-h2) {
  font-size: 26px;
  font-weight: 600;
  letter-spacing: -0.025em;
}
:where(.dpu-h3) {
  font-size: 17px;
  font-weight: 600;
  letter-spacing: -0.012em;
}
:where(.dpu-h4) {
  font-size: 15px;
  font-weight: 600;
}
:where(.dpu-p) {
  margin: 0 0 16px;
}
:where(.dpu-code, .dpu-pre, .dpu-kbd) {
  font-family: var(--dpu-mono);
}
:where(.dpu-code) {
  font-size: 0.88em;
}
:where(.dpu-code):not(pre code) {
  padding: 2px 5px;
  border-radius: 3px;
  background: #f0f3f5;
  color: #31526b;
}
.dpu-hidden[hidden] {
  box-sizing: border-box;
  display: none !important;
}
:where(
  .dpu-focus,
  .dpu-choice,
  .dpu-btn,
  .dpu-input,
  .dpu-switch,
  .dpu-tab,
  .dpu-link,
  .dpu-tag,
  .dpu-action-tile,
  .dpu-result-title,
  .dpu-field input,
  .dpu-field select,
  .dpu-field textarea,
  .dpu-property-row input,
  .dpu-property-row select,
  .dpu-check-label input,
  .dpu-segmented input,
  .dpu-option-card input,
  .dpu-action-menu button,
  .dpu-queue button,
  .dpu-task-panel input[type="file"],
  .dpu-disclosure > summary,
  .dpu-content-nav a,
  .dpu-app-nav > a,
  .dpu-pagination a
):focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: 3px;
}
:where(
  .dpu-field input,
  .dpu-field select,
  .dpu-field textarea,
  .dpu-input,
  .dpu-property-row input,
  .dpu-property-row select
):focus-visible {
  outline-offset: -1px;
}
.dpu-icon {
  box-sizing: border-box;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  display: inline-block;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.75;
  stroke-linecap: round;
  stroke-linejoin: round;
  vertical-align: middle;
}
.dpu-sr-only {
  box-sizing: border-box;
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.dpu-intro {
  box-sizing: border-box;
  display: flex;
  gap: 36px;
  align-items: center;
  border: 1px solid #153e58;
  background:
    radial-gradient(ellipse at top right, #1a4b66, transparent 65%), #0e2d44;
  color: #c1d4e0;
  border-radius: 9px;
  padding: 30px 32px;
}
.dpu-intro h1 {
  box-sizing: border-box;
  color: #fff;
  margin: 5px 0 10px;
}
.dpu-intro p {
  box-sizing: border-box;
  max-width: 570px;
  font-size: 14px;
  line-height: 1.7;
  margin-bottom: 0;
}
.dpu-eyebrow {
  box-sizing: border-box;
  font-size: 10px;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  font-weight: 600;
}
.dpu-intro .dpu-eyebrow {
  box-sizing: border-box;
  color: #89c4e0;
}
.dpu-intro-inset {
  box-sizing: border-box;
  background: #092133;
  border: 1px solid #2c4e63;
  border-radius: 6px;
  flex: 0 0 175px;
  padding: 17px 20px;
}
.dpu-intro-inset > span {
  box-sizing: border-box;
  color: #9db7c7;
  font: 10px var(--dpu-mono);
  letter-spacing: 0.08em;
}
.dpu-intro-inset > strong {
  box-sizing: border-box;
  color: #fff;
  font-weight: 500;
  font-size: 22px;
  display: block;
  margin: 3px 0 14px;
}
.dpu-intro-inset dl {
  box-sizing: border-box;
  border-top: 1px solid #29475b;
  margin: 0;
  padding-top: 10px;
}
.dpu-intro-inset dl > div {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  padding: 2px 0;
}
.dpu-intro-inset dt {
  box-sizing: border-box;
  color: #9db7c7;
}
.dpu-intro-inset dd {
  box-sizing: border-box;
  margin: 0;
  color: #d7e6ee;
}
.dpu-row {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.dpu-spread {
  box-sizing: border-box;
  justify-content: space-between;
}
.dpu-stack {
  box-sizing: border-box;
  display: grid;
  gap: 16px;
}
.dpu-small-label {
  box-sizing: border-box;
  color: var(--dpu-muted);
  display: block;
  font-size: 12px;
  margin-bottom: 10px;
}
.dpu-hint {
  box-sizing: border-box;
  color: var(--dpu-muted);
  font-size: 12px;
  margin: 6px 0 0;
}
.dpu-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 38px;
  padding: 7px 14px;
  border: 1px solid #bbc7cf;
  border-radius: var(--dpu-radius);
  background: #fff;
  color: #355267;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
  transition:
    background 0.14s,
    border-color 0.14s;
  white-space: nowrap;
}
.dpu-btn:hover:not(:disabled, [aria-disabled="true"]) {
  color: #20415a;
  background: #f3f7fa;
  border-color: #90a8b8;
}
.dpu-btn:active:not(:disabled, [aria-disabled="true"]) {
  background: #e9f0f5;
}
.dpu-btn.dpu-primary {
  box-sizing: border-box;
  background: var(--dpu-blue);
  border-color: var(--dpu-blue);
  color: #fff;
  box-shadow: 0 1px 1px #082d4710;
}
.dpu-btn.dpu-primary:hover:not(:disabled, [aria-disabled="true"]) {
  color: #fff;
  background: var(--dpu-blue-hover);
  border-color: var(--dpu-blue-hover);
}
.dpu-btn.dpu-quiet {
  box-sizing: border-box;
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  color: #42627a;
}
.dpu-btn.dpu-quiet:hover:not(:disabled, [aria-disabled="true"]) {
  background: #eef4f8;
  color: #075e94;
}
.dpu-btn.dpu-danger {
  box-sizing: border-box;
  color: var(--dpu-danger);
  border-color: #debcb9;
  background: #fff;
}
.dpu-btn.dpu-danger:hover:not(:disabled, [aria-disabled="true"]) {
  background: #fdf2f1;
}
.dpu-btn.dpu-danger-solid {
  box-sizing: border-box;
  color: #fff;
  background: var(--dpu-danger);
  border-color: var(--dpu-danger);
}
.dpu-btn.dpu-compact {
  box-sizing: border-box;
  min-height: 32px;
  font-size: 13px;
  padding: 4px 11px;
}
.dpu-btn.dpu-icon-only {
  box-sizing: border-box;
  width: 38px;
  padding: 7px;
}
.dpu-btn:disabled,
.dpu-btn[aria-disabled="true"] {
  color: #75838e;
  background: #eff2f4;
  border-color: #dce2e7;
  box-shadow: none;
  cursor: default;
}
.dpu-btn[aria-busy="true"] {
  box-sizing: border-box;
  color: #fff;
  background: #317ba8;
  border-color: #317ba8;
}
.dpu-spinner {
  box-sizing: border-box;
  animation: dpu-spin 1s linear infinite;
}
@keyframes dpu-spin {
  to {
    transform: rotate(360deg);
  }
}
.dpu-text-link {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.dpu-text-link .dpu-icon {
  box-sizing: border-box;
  width: 15px;
  height: 15px;
  flex-basis: 15px;
}
.dpu-toolbar-group {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 3px;
  background: #fff;
  border: 1px solid var(--dpu-line);
  border-radius: 6px;
}
.dpu-toolbar-group > span[aria-hidden] {
  box-sizing: border-box;
  width: 1px;
  height: 18px;
  background: var(--dpu-line);
  margin: 0 4px;
}
.dpu-tooltip-wrap {
  box-sizing: border-box;
  position: relative;
  display: inline-flex;
}
.dpu-tooltip {
  box-sizing: border-box;
  pointer-events: none;
  opacity: 0;
  position: absolute;
  left: 50%;
  bottom: calc(100% + 8px);
  transform: translateX(-50%);
  padding: 4px 8px;
  border-radius: 4px;
  background: #213d51;
  color: #fff;
  font-size: 11px;
  white-space: nowrap;
  transition: opacity 0.1s;
}
.dpu-tooltip-wrap:hover .dpu-tooltip,
.dpu-tooltip-wrap:focus-within .dpu-tooltip {
  opacity: 1;
  pointer-events: auto;
}
.dpu-tooltip::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 8px;
}
.dpu-tooltip-wrap[data-dismissed] .dpu-tooltip {
  box-sizing: border-box;
  opacity: 0;
  pointer-events: none;
}
.dpu-field {
  box-sizing: border-box;
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
}
.dpu-field > label,
.dpu-field > span,
.dpu-fieldset > legend {
  box-sizing: border-box;
  color: #354b5c;
  font-size: 13px;
  font-weight: 500;
}
.dpu-field input,
.dpu-field select,
.dpu-field textarea,
.dpu-input {
  box-sizing: border-box;
  width: 100%;
  border: 1px solid var(--dpu-control-line);
  border-radius: var(--dpu-radius);
  background: #fff;
  color: var(--dpu-ink);
  padding: 8px 11px;
  min-height: 40px;
  font-size: 14px;
}
.dpu-field textarea {
  box-sizing: border-box;
  resize: vertical;
}
.dpu-field .dpu-hint {
  box-sizing: border-box;
  margin: 0;
}
.dpu-error-text {
  box-sizing: border-box;
  color: var(--dpu-danger);
  font-size: 12px;
  margin: 0;
}
.dpu-select-wrap {
  box-sizing: border-box;
  position: relative;
}
.dpu-select-wrap select {
  box-sizing: border-box;
  appearance: none;
  padding-right: 36px;
}
.dpu-select-wrap > .dpu-icon {
  box-sizing: border-box;
  pointer-events: none;
  position: absolute;
  top: 50%;
  right: 11px;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
}
:where(.dpu-fieldset) {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
}
:where(.dpu-legend) {
  padding: 0;
  margin-bottom: 12px;
}
.dpu-check-label {
  box-sizing: border-box;
  display: flex;
  align-items: flex-start;
  gap: 9px;
  font-size: 14px;
  min-height: 32px;
  cursor: pointer;
}
:where(.dpu-choice) {
  accent-color: var(--dpu-blue);
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin: 3px 0 0;
  cursor: pointer;
}
.dpu-check-label small {
  box-sizing: border-box;
  color: var(--dpu-muted);
  display: block;
  font-size: 12px;
}
.dpu-segmented {
  box-sizing: border-box;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 3px;
  padding: 3px;
  border: 1px solid #d1dce4;
  border-radius: 7px;
  background: #f3f6f8;
}
.dpu-segmented label {
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
}
.dpu-segmented input {
  box-sizing: border-box;
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.dpu-segmented span {
  box-sizing: border-box;
  display: block;
  border: 1px solid transparent;
  border-radius: 4px;
  padding: 6px 15px;
  color: #536b7c;
  font-size: 13px;
}
.dpu-segmented input:checked + span {
  color: #155e90;
  background: #fff;
  border-color: #c8d8e4;
  box-shadow: 0 1px 2px #0d3b5510;
  font-weight: 600;
}
.dpu-segmented input:focus-visible + span {
  outline: 2px solid var(--dpu-focus);
  outline-offset: 2px;
}
.dpu-switch {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 32px;
  background: none;
  padding: 0;
  border: 0;
  color: var(--dpu-text);
  font-size: 14px;
}
.dpu-switch-track {
  box-sizing: border-box;
  width: 34px;
  height: 20px;
  display: inline-block;
  border-radius: 20px;
  background: #7a8c99;
  position: relative;
  transition: background 0.15s;
}
.dpu-switch-track::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #fff;
  transition: transform 0.15s;
}
.dpu-switch[aria-checked="true"] .dpu-switch-track {
  box-sizing: border-box;
  background: var(--dpu-blue);
}
.dpu-switch[aria-checked="true"] .dpu-switch-track::after {
  transform: translateX(14px);
}
.dpu-switch-state {
  box-sizing: border-box;
  color: var(--dpu-muted);
  font-size: 12px;
  min-width: 18px;
}
.dpu-renewal-options {
  box-sizing: border-box;
  display: grid;
  gap: 10px;
}
.dpu-option-card {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: start;
  gap: 13px;
  border: 1px solid #cbd6de;
  border-radius: 7px;
  padding: 17px 20px;
  cursor: pointer;
  position: relative;
  background: #fff;
  transition:
    border-color 0.14s,
    background 0.14s;
}
.dpu-option-card:hover {
  border-color: #819fb3;
}
.dpu-option-card:has(input:checked) {
  background: #f4f9fc;
  border-color: #558fb5;
}
.dpu-option-card:has(input:checked)::before {
  content: "";
  position: absolute;
  inset: 14px auto 14px -1px;
  width: 3px;
  background: #1478b2;
  border-radius: 0 2px 2px 0;
}
.dpu-option-card input {
  box-sizing: border-box;
  margin-top: 4px;
}
.dpu-option-card strong {
  box-sizing: border-box;
  color: #263f51;
  display: block;
  font-size: 14px;
  font-weight: 600;
}
.dpu-option-card small {
  box-sizing: border-box;
  display: block;
  color: var(--dpu-muted);
  font-size: 12px;
  margin-top: 3px;
}
.dpu-option-card > span:last-child {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.dpu-option-card:has(input:disabled) {
  background: #f7f8f9;
  cursor: default;
}
.dpu-option-card:has(input:disabled) strong {
  color: #788692;
}
.dpu-edition {
  box-sizing: border-box;
  font-size: 11px;
  font-weight: 600;
  border: 1px solid;
  border-radius: 4px;
  line-height: 18px;
  padding: 0 7px;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  vertical-align: middle;
  letter-spacing: 0.015em;
}
.dpu-edition.dpu-lite {
  box-sizing: border-box;
  color: #785710;
  background: #fff5d9;
  border-color: #e5cf94;
}
.dpu-edition.dpu-pro {
  box-sizing: border-box;
  color: #275d8a;
  background: #edf4fd;
  border-color: #bfd2e4;
}
.dpu-badge {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  padding: 2px 8px;
  border-radius: 20px;
  background: #f0f3f5;
  color: #5c6e7b;
  white-space: nowrap;
}
.dpu-badge .dpu-icon {
  box-sizing: border-box;
  width: 13px;
  height: 13px;
  flex-basis: 13px;
}
.dpu-badge.dpu-success {
  box-sizing: border-box;
  background: #eef6f0;
  color: #287247;
}
.dpu-badge.dpu-warning {
  box-sizing: border-box;
  background: #fff5e4;
  color: #84601f;
}
.dpu-badge.dpu-info {
  box-sizing: border-box;
  background: #eaf4fb;
  color: #29678d;
}
.dpu-tag {
  box-sizing: border-box;
  border: 1px solid #d7e0e6;
  background: #f7f9fa;
  color: #5b7080;
  border-radius: 20px;
  padding: 3px 9px;
  font-size: 12px;
  text-decoration: none;
}
.dpu-tag:hover {
  border-color: #a9c2d4;
  background: #eef5fa;
}
.dpu-tile-grid {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.dpu-action-tile {
  box-sizing: border-box;
  border: 1px solid #cdd7df;
  border-radius: 7px;
  text-decoration: none;
  overflow: hidden;
  background: #fff;
  transition:
    border-color 0.15s,
    box-shadow 0.15s;
  display: block;
}
.dpu-action-tile:hover {
  border-color: #6496b7;
  box-shadow: 0 3px 12px #2446620c;
}
.dpu-tile-caption {
  box-sizing: border-box;
  border-top: 1px solid #e2e8ec;
  padding: 14px 16px;
}
.dpu-tile-caption > strong {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #2c485d;
  font-weight: 600;
  font-size: 14px;
  gap: 7px;
  margin-bottom: 9px;
}
.dpu-tile-caption .dpu-icon {
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  flex-basis: 14px;
  color: #6d8fa5;
}
.dpu-tile-caption > div {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 5px;
}
.dpu-tile-caption small {
  box-sizing: border-box;
  margin-left: auto;
  font-size: 10px;
  color: var(--dpu-muted);
}
.dpu-info-panel {
  box-sizing: border-box;
  border: 1px solid #d7e0e7;
  border-radius: 7px;
  padding: 22px;
  background: #fff;
}
.dpu-info-panel h4 {
  box-sizing: border-box;
  margin: 0 0 7px;
}
.dpu-info-panel p {
  box-sizing: border-box;
  font-size: 13px;
  color: #637887;
  margin-bottom: 16px;
}
.dpu-definition-list {
  box-sizing: border-box;
  margin: 0;
}
.dpu-definition-list > div {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  border-bottom: 1px solid #edf0f3;
  gap: 12px;
  padding: 9px 0;
  font-size: 13px;
}
.dpu-definition-list > div:last-child {
  border: 0;
}
.dpu-definition-list dt {
  box-sizing: border-box;
  color: var(--dpu-muted);
}
.dpu-definition-list dd {
  box-sizing: border-box;
  margin: 0;
  color: #334d60;
}
.dpu-disclosure {
  box-sizing: border-box;
  border-bottom: 1px solid var(--dpu-line);
}
.dpu-disclosure:first-child {
  border-top: 1px solid var(--dpu-line);
}
.dpu-disclosure > summary {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 13px 0;
  min-height: 48px;
  list-style: none;
  color: #3c5669;
  font-size: 14px;
  font-weight: 500;
}
.dpu-disclosure summary::-webkit-details-marker {
  display: none;
}
.dpu-chevron {
  box-sizing: border-box;
  width: 16px;
  height: 16px;
  flex-basis: 16px;
  transform-box: view-box;
  transform-origin: 50% 50%;
  transition: transform 0.16s ease;
  color: #608198;
}
.dpu-disclosure[open] > summary > .dpu-chevron {
  box-sizing: border-box;
  transform: rotate(90deg);
}
.dpu-disclosure > div {
  box-sizing: border-box;
  padding: 0 16px 17px 27px;
  font-size: 13px;
  color: #617787;
}
.dpu-disclosure > div > :last-child {
  margin-bottom: 0;
}
.dpu-disclosure .dpu-summary-meta {
  box-sizing: border-box;
  margin-left: auto;
  color: var(--dpu-muted);
  font-size: 11px;
  font-weight: 400;
}
.dpu-tabs {
  box-sizing: border-box;
  display: flex;
  gap: 26px;
  border-bottom: 1px solid var(--dpu-line);
  overflow-x: auto;
  padding: 3px 3px 0;
}
.dpu-tab {
  box-sizing: border-box;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: #647481;
  font-size: 13px;
  padding: 9px 0 12px;
  white-space: nowrap;
  text-decoration: none;
}
.dpu-tab[aria-selected="true"],
.dpu-tab[aria-current] {
  box-sizing: border-box;
  border-bottom-color: var(--dpu-blue);
  color: var(--dpu-blue);
  font-weight: 600;
}
.dpu-tab span {
  box-sizing: border-box;
  margin-left: 5px;
  color: var(--dpu-muted);
  font-size: 10px;
  font-weight: 400;
  font-variant-numeric: tabular-nums;
}
.dpu-tab-panel {
  box-sizing: border-box;
  padding: 24px 0 0;
  min-height: 125px;
  font-size: 13px;
}
.dpu-result-title {
  box-sizing: border-box;
  font-size: 17px;
  font-weight: 500;
  display: inline-block;
  margin-bottom: 5px;
  text-decoration: none;
}
.dpu-result-path {
  box-sizing: border-box;
  display: block;
  font-size: 11px;
  color: var(--dpu-muted);
  margin-bottom: 8px;
}
.dpu-result {
  box-sizing: border-box;
  border-bottom: 1px solid #e1e7eb;
  padding: 18px 0;
}
.dpu-result:last-child {
  border: 0;
  padding-bottom: 0;
}
.dpu-result p {
  box-sizing: border-box;
  color: #586c7b;
  font-size: 13px;
  margin-bottom: 8px;
}
.dpu-result .dpu-row {
  box-sizing: border-box;
  gap: 7px;
}
.dpu-result-meta {
  box-sizing: border-box;
  color: var(--dpu-muted);
  font-size: 11px;
}
.dpu-content-nav,
.dpu-app-nav {
  box-sizing: border-box;
  width: min(100%, 290px);
  border: 1px solid var(--dpu-line);
  border-radius: 6px;
  padding: 14px 12px;
  font-size: 13px;
}
.dpu-content-nav > p,
.dpu-app-nav > p {
  box-sizing: border-box;
  color: var(--dpu-muted);
  font-size: 11px;
  margin: 0 8px 10px;
}
.dpu-content-nav > a,
.dpu-content-nav details a,
.dpu-content-nav summary,
.dpu-app-nav > a {
  box-sizing: border-box;
  color: #4b6477;
  text-decoration: none;
  display: flex;
  gap: 10px;
  align-items: center;
  min-height: 36px;
  padding: 6px 10px;
  border-radius: 4px;
}
.dpu-content-nav .dpu-disclosure {
  box-sizing: border-box;
  border: 0;
}
.dpu-content-nav .dpu-disclosure summary {
  box-sizing: border-box;
  font-size: 13px;
  padding-left: 10px;
}
.dpu-content-nav .dpu-disclosure > div {
  box-sizing: border-box;
  padding: 0 0 0 17px;
  border-left: 1px solid #dfe6eb;
  margin-left: 18px;
}
.dpu-content-nav a:hover,
.dpu-app-nav a:hover {
  background: #f3f7fa;
  color: #096ba8;
}
.dpu-content-nav a[aria-current] {
  box-sizing: border-box;
  color: #0869a2;
  background: #f0f6fa;
  box-shadow: inset 2px 0 #237fad;
  font-weight: 500;
}
.dpu-app-nav {
  box-sizing: border-box;
  background: #f7f9fb;
}
.dpu-app-nav .dpu-icon {
  box-sizing: border-box;
  color: #6c879b;
  width: 17px;
  height: 17px;
  flex-basis: 17px;
}
.dpu-app-nav > a {
  box-sizing: border-box;
  margin-bottom: 3px;
}
.dpu-app-nav > a[aria-current] {
  box-sizing: border-box;
  background: #e2edf5;
  color: #225e88;
  font-weight: 600;
}
.dpu-app-nav a > span {
  box-sizing: border-box;
  margin-left: auto;
  font: 11px var(--dpu-mono);
  color: var(--dpu-muted);
}
.dpu-app-nav hr {
  box-sizing: border-box;
  border: 0;
  border-top: 1px solid var(--dpu-line);
  margin: 12px 6px;
}
.dpu-breadcrumbs {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  margin-bottom: 25px;
}
.dpu-breadcrumbs .dpu-icon {
  box-sizing: border-box;
  width: 12px;
  height: 12px;
  flex-basis: 12px;
  color: #95a4af;
}
.dpu-breadcrumbs a {
  box-sizing: border-box;
  text-decoration: none;
}
.dpu-breadcrumbs span {
  box-sizing: border-box;
  color: var(--dpu-muted);
}
.dpu-pagination {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 4px;
}
.dpu-pagination a {
  box-sizing: border-box;
  color: #536c7d;
  border: 1px solid transparent;
  padding: 6px;
  min-width: 34px;
  min-height: 34px;
  border-radius: 4px;
  text-align: center;
  text-decoration: none;
  font-size: 12px;
}
.dpu-pagination a[aria-current] {
  box-sizing: border-box;
  background: #edf5fa;
  color: #0c689b;
  border-color: #d5e4ee;
}
.dpu-pagination a:hover {
  background: #f1f5f8;
}
.dpu-notice {
  box-sizing: border-box;
  display: flex;
  gap: 12px;
  border: 1px solid #d1e2ee;
  border-radius: 6px;
  background: #f3f8fc;
  padding: 14px 16px;
  font-size: 13px;
}
.dpu-notice > .dpu-icon {
  box-sizing: border-box;
  color: #3d7ba5;
  margin-top: 2px;
}
.dpu-notice strong {
  box-sizing: border-box;
  color: #345970;
  font-weight: 600;
}
.dpu-notice p {
  box-sizing: border-box;
  color: var(--dpu-muted);
  margin: 3px 0 0;
  font-size: 12px;
}
.dpu-notice.dpu-warning {
  box-sizing: border-box;
  background: #fffbf1;
  border-color: #e7daba;
}
.dpu-notice.dpu-warning > .dpu-icon,
.dpu-notice.dpu-warning strong {
  box-sizing: border-box;
  color: #87631d;
}
.dpu-notice.dpu-error {
  box-sizing: border-box;
  background: #fff7f6;
  border-color: #eaccc9;
}
.dpu-notice.dpu-error > .dpu-icon,
.dpu-notice.dpu-error strong {
  box-sizing: border-box;
  color: #a4433c;
}
.dpu-inline-status {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #377450;
  font-size: 12px;
}
.dpu-inline-status .dpu-icon {
  box-sizing: border-box;
  width: 15px;
  height: 15px;
  flex-basis: 15px;
}
.dpu-command {
  box-sizing: border-box;
  display: flex;
  border: 1px solid #cbd8e1;
  border-radius: 6px;
  background: #f7f9fb;
  padding: 5px;
  gap: 8px;
  align-items: center;
}
.dpu-command .dpu-command-value {
  box-sizing: border-box;
  flex: 1;
  width: 100%;
  min-width: 0;
  padding: 8px 10px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: #355773;
  font: 12px/1.6 var(--dpu-mono);
  resize: vertical;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.dpu-command-value:focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: -1px;
}
.dpu-command .dpu-btn {
  box-sizing: border-box;
  font-size: 12px;
  min-height: 32px;
}
.dpu-number {
  box-sizing: border-box;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.dpu-state-box {
  box-sizing: border-box;
  padding: 26px 18px;
  background: #f9fbfc;
  border: 1px dashed #cbd7e0;
  border-radius: 6px;
  text-align: center;
  min-height: 185px;
}
.dpu-state-box > .dpu-icon {
  box-sizing: border-box;
  color: #7694a8;
  width: 25px;
  height: 25px;
  margin-bottom: 10px;
}
.dpu-state-box h4 {
  box-sizing: border-box;
  font-size: 15px;
  font-weight: 500;
}
.dpu-state-box p {
  box-sizing: border-box;
  color: var(--dpu-muted);
  font-size: 12px;
  margin: 6px 0 15px;
}
.dpu-menu-anchor {
  box-sizing: border-box;
  position: relative;
  display: inline-block;
}
.dpu-action-menu {
  box-sizing: border-box;
  position: absolute;
  z-index: 3;
  top: calc(100% + 7px);
  left: 0;
  width: 200px;
  padding: 5px;
  background: #fff;
  border: 1px solid #cdd8e0;
  border-radius: 7px;
  box-shadow: 0 8px 26px #143e571a;
}
.dpu-action-menu button {
  box-sizing: border-box;
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 8px 10px;
  width: 100%;
  text-align: left;
  border: 0;
  background: #fff;
  color: #4a6477;
  border-radius: 4px;
  font-size: 13px;
}
.dpu-action-menu button:hover {
  background: #eef5fa;
}
.dpu-action-menu hr {
  box-sizing: border-box;
  border: 0;
  border-top: 1px solid var(--dpu-line);
  margin: 5px;
}
.dpu-action-menu button.dpu-danger {
  box-sizing: border-box;
  color: var(--dpu-danger);
}
.dpu-type-normal h4 {
  box-sizing: border-box;
  font-size: 25px;
  font-weight: 600;
  margin: 5px 0 10px;
  letter-spacing: -0.025em;
}
.dpu-type-normal p {
  box-sizing: border-box;
  color: var(--dpu-muted);
  font-size: 13px;
}
.dpu-type-normal > small {
  box-sizing: border-box;
  color: var(--dpu-muted);
  font-size: 11px;
}
.dpu-type-expressive {
  box-sizing: border-box;
  border-left: 3px solid #629ec2;
  padding-left: 22px;
}
.dpu-type-expressive > small {
  box-sizing: border-box;
  font: 10px var(--dpu-mono);
  color: var(--dpu-muted);
  letter-spacing: 0.06em;
}
.dpu-type-expressive h4 {
  box-sizing: border-box;
  font-size: 31px;
  letter-spacing: -0.035em;
  font-weight: 700;
  margin: 5px 0 9px;
}
.dpu-type-expressive p {
  box-sizing: border-box;
  font-size: 13px;
  color: var(--dpu-muted);
}
.dpu-task-panel {
  box-sizing: border-box;
  width: min(100%, 580px);
  margin: auto;
  border: 1px solid #ccdae4;
  border-radius: 8px;
  background: #fff;
  overflow: clip;
  box-shadow: 0 2px 6px #234a6406;
}
.dpu-task-cap {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  background: #f2f7fb;
  padding: 11px 24px;
  border-bottom: 1px solid #dce6ee;
  color: var(--dpu-muted);
  font-size: 11px;
}
.dpu-task-cap > span {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 7px;
}
.dpu-task-panel > div:last-child {
  padding: 24px;
}
.dpu-task-panel h4 {
  box-sizing: border-box;
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 7px;
  letter-spacing: -0.02em;
}
.dpu-task-panel p {
  box-sizing: border-box;
  font-size: 13px;
  color: var(--dpu-muted);
}
.dpu-task-panel input[type="file"] {
  box-sizing: border-box;
  width: 100%;
  font-size: 12px;
  color: var(--dpu-muted);
}
.dpu-task-panel input::file-selector-button {
  background: #fff;
  border: 1px solid #b6c7d4;
  border-radius: 5px;
  padding: 7px 10px;
  color: #426b89;
  margin-right: 10px;
  font: inherit;
  cursor: pointer;
}
.dpu-task-panel .dpu-row {
  box-sizing: border-box;
  margin-top: 20px;
}
.dpu-queue {
  box-sizing: border-box;
  background: #102e44;
  color: #dce7ef;
  --dpu-icon-surface: #102e44;
}
.dpu-queue header {
  box-sizing: border-box;
  padding: 19px 20px 17px;
  border-bottom: 1px solid #2c475d;
}
.dpu-queue header small {
  box-sizing: border-box;
  font: 9px var(--dpu-mono);
  color: #8badc4;
  letter-spacing: 0.09em;
}
.dpu-queue h4 {
  box-sizing: border-box;
  font-size: 17px;
  color: #e3edf4;
  font-weight: 500;
  margin: 4px 0 0;
}
.dpu-queue button {
  box-sizing: border-box;
  border: 0;
  border-bottom: 1px solid #29465b;
  color: #dbe6ee;
  background: transparent;
  width: 100%;
  text-align: left;
  padding: 15px 20px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 3px 8px;
  font-size: 13px;
}
.dpu-queue button[aria-pressed="true"] {
  box-sizing: border-box;
  background: #1b415d;
  box-shadow: inset 3px 0 #70b7dc;
}
.dpu-queue button:hover {
  background: #214862;
}
.dpu-queue button small {
  box-sizing: border-box;
  grid-column: 1;
  color: #a0b6c7;
  font-size: 11px;
}
.dpu-queue button .dpu-icon {
  box-sizing: border-box;
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  color: #81afc9;
  width: 15px;
  height: 15px;
}
.dpu-queue button:focus-visible {
  outline-color: #83c6ea;
  outline-offset: -4px;
}
.dpu-queue-detail {
  box-sizing: border-box;
  padding: 26px;
  background: #fff;
  min-width: 0;
}
.dpu-queue-detail h4 {
  box-sizing: border-box;
  font-size: 22px;
  margin: 13px 0 8px;
  letter-spacing: -0.02em;
}
.dpu-queue-detail p {
  box-sizing: border-box;
  font-size: 13px;
  color: var(--dpu-muted);
}
.dpu-queue-detail .dpu-btn {
  box-sizing: border-box;
  margin-top: 14px;
}
.dpu-property-rail {
  box-sizing: border-box;
  padding: 0 14px 12px;
  background: #fafbfc;
  border-right: 1px solid #e0e7ec;
}
.dpu-property-rail .dpu-disclosure {
  box-sizing: border-box;
  border-top: 0;
}
.dpu-property-rail .dpu-disclosure summary {
  box-sizing: border-box;
  min-height: 39px;
  padding-block: 9px;
  font-size: 12px;
}
.dpu-property-rail .dpu-disclosure > div {
  box-sizing: border-box;
  padding: 0 0 13px;
}
.dpu-property-row {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 85px 1fr;
  gap: 8px;
  align-items: center;
  font-size: 12px;
  color: var(--dpu-muted);
  margin: 7px 0;
}
.dpu-property-row input,
.dpu-property-row select {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
  height: 30px;
  border: 1px solid #aebfc9;
  border-radius: 4px;
  background: #fff;
  font-size: 12px;
  padding: 3px 6px;
}
.dpu-property-row input[type="color"] {
  box-sizing: border-box;
  padding: 3px;
}
.dpu-license-grid {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.dpu-license {
  box-sizing: border-box;
  padding: 22px 18px;
  border: 1px solid #d3dde4;
  border-radius: 7px;
  display: flex;
  flex-direction: column;
}
.dpu-license.dpu-featured {
  box-sizing: border-box;
  border-color: #8eb3cd;
  background: #fbfdff;
}
.dpu-license h4 {
  box-sizing: border-box;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 4px;
}
.dpu-license > p {
  box-sizing: border-box;
  color: var(--dpu-muted);
  font-size: 12px;
  margin: 0 0 16px;
}
.dpu-license > strong {
  box-sizing: border-box;
  color: #274a64;
  font-size: 27px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  margin-bottom: 14px;
}
.dpu-license dl {
  box-sizing: border-box;
  margin: 0 0 20px;
  font-size: 12px;
}
.dpu-license dl > div {
  box-sizing: border-box;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  border-bottom: 1px solid #e6edf2;
  padding: 8px 0;
}
.dpu-license dt {
  box-sizing: border-box;
  color: var(--dpu-muted);
}
.dpu-license dd {
  box-sizing: border-box;
  color: #345773;
  margin: 0;
  text-align: right;
}
.dpu-license .dpu-btn {
  box-sizing: border-box;
  margin-top: auto;
  width: 100%;
  font-size: 12px;
}
.dpu-dialog {
  box-sizing: border-box;
  width: min(520px, calc(100% - 32px));
  padding: 0;
  border: 1px solid #becdd8;
  border-radius: 10px;
  color: var(--dpu-text);
  box-shadow: 0 20px 80px #072b4c30;
}
.dpu-dialog::backdrop {
  background: #0e253b50;
}
.dpu-dialog header {
  box-sizing: border-box;
  padding: 22px 24px 0;
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 12px;
}
.dpu-dialog h2 {
  box-sizing: border-box;
  font-size: 23px;
  margin: 6px 0 0;
}
.dpu-dialog header > div > span {
  box-sizing: border-box;
  color: var(--dpu-muted);
}
.dpu-dialog-body {
  box-sizing: border-box;
  padding: 18px 24px 24px;
}
.dpu-dialog-body p {
  box-sizing: border-box;
  font-size: 14px;
}
.dpu-dialog footer {
  box-sizing: border-box;
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  padding: 16px 24px;
  border-top: 1px solid var(--dpu-line);
  background: #f8fafc;
}
.dpu-toast {
  box-sizing: border-box;
  position: fixed;
  bottom: 22px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 10px;
  z-index: 90;
  padding: 12px 17px;
  color: #ecf5fb;
  background: #17394f;
  border: 1px solid #355c76;
  border-radius: 7px;
  box-shadow: 0 6px 22px #0c304725;
  font-size: 13px;
  max-width: calc(100vw - 32px);
}
.dpu-toast .dpu-icon {
  box-sizing: border-box;
  color: #9dc5de;
}
@media (max-width: 1150px) {
  .dpu-intro {
    box-sizing: border-box;
    padding: 26px;
    gap: 20px;
  }
  .dpu-intro-inset {
    box-sizing: border-box;
    flex-basis: 148px;
    padding: 15px;
  }
  .dpu-tile-grid {
    box-sizing: border-box;
    gap: 10px;
  }
  .dpu-tile-caption {
    box-sizing: border-box;
    padding: 12px;
  }
  .dpu-tile-caption small {
    box-sizing: border-box;
    display: none;
  }
  .dpu-license-grid {
    box-sizing: border-box;
    gap: 10px;
  }
  .dpu-license {
    box-sizing: border-box;
    padding: 18px 13px;
  }
}
@media (max-width: 600px) {
  .dpu-intro {
    box-sizing: border-box;
    display: block;
    padding: 25px 22px;
  }
  .dpu-intro-inset {
    box-sizing: border-box;
    display: none;
  }
  .dpu-intro h1 {
    box-sizing: border-box;
    font-size: 31px;
  }
  :where(.dpu-h2) {
    font-size: 23px;
  }
  .dpu-tile-grid,
  .dpu-license-grid {
    box-sizing: border-box;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
  .dpu-option-card {
    box-sizing: border-box;
    padding: 15px 12px;
    gap: 10px;
  }
  .dpu-option-card > span:last-child strong {
    font-size: 13px;
  }
  .dpu-option-card small {
    box-sizing: border-box;
    font-size: 11px;
  }
  .dpu-command {
    box-sizing: border-box;
    flex-wrap: wrap;
  }
  .dpu-command .dpu-btn {
    box-sizing: border-box;
    margin-left: auto;
  }
  .dpu-tabs {
    box-sizing: border-box;
    gap: 20px;
  }
  .dpu-queue-detail {
    box-sizing: border-box;
    padding: 22px;
  }
  .dpu-property-rail {
    box-sizing: border-box;
    border-right: 0;
    border-bottom: 1px solid var(--dpu-line);
  }
  .dpu-property-row {
    box-sizing: border-box;
    grid-template-columns: 1fr 1fr;
  }
  .dpu-task-panel > div:last-child {
    padding: 20px;
  }
  .dpu-task-cap {
    box-sizing: border-box;
    padding: 11px 20px;
  }
  .dpu-dialog footer {
    box-sizing: border-box;
    flex-wrap: wrap;
    padding: 14px 18px;
  }
}
@media (prefers-reduced-motion: reduce) {
  :where(
    .dpu-spinner,
    .dpu-btn,
    .dpu-tooltip,
    .dpu-switch-track,
    .dpu-switch-track::after,
    .dpu-option-card,
    .dpu-action-tile,
    .dpu-chevron
  ) {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}

/* Complete-site shell; original brand artwork and shared container geometry. */
.dpu-site {
  --dpu-site-width: 1100px;
  --dpu-site-gutter: 5px;
  --dpu-brand-artwork: url("data:image/png;base64,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");
  margin: 0;
  background: #fff;
}
.dpu-site.dpu-reading-site {
  --dpu-site-width: 870px;
}
.dpu-site.dpu-fluid-site {
  --dpu-site-width: none;
  --dpu-site-gutter: 16px;
}
.dpu-container {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--dpu-site-width, 1100px);
  margin-inline: auto;
  padding-inline: var(--dpu-site-gutter, 16px);
}
.dpu-site-header,
.dpu-site-footer {
  background: var(--dpu-brand-artwork, #052940);
  color: #fff;
}
.dpu-site-header {
  box-shadow: 0 5px 10px -5px #0009;
}
.dpu-site-header > .dpu-container,
.dpu-site-subnav > .dpu-container {
  display: flex;
  align-items: center;
  gap: 30px;
  min-height: 40px;
}
.dpu-site-header a,
.dpu-site-footer a {
  color: #fff;
  text-decoration: none;
}
.dpu-site-header a:hover,
.dpu-site-footer a:hover {
  text-decoration: underline;
}
.dpu-site-header nav,
.dpu-site-subnav nav {
  display: flex;
  align-items: center;
  gap: 30px;
  flex-wrap: wrap;
}
.dpu-site-header nav a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  font-size: 14px;
}
.dpu-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 40px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  flex: none;
}
.dpu-brand img,
.dpu-brand svg {
  display: block;
  width: 20px;
  height: 20px;
}
.dpu-site-header .dpu-search,
.dpu-site-subnav .dpu-search,
.dpu-site-header .dpsh {
  width: clamp(224px, 28vw, 368px);
  margin-inline-start: auto;
  flex-shrink: 0;
}
.dpu-site-subnav {
  background: #fff;
  border-bottom: 1px solid #ccc;
  box-shadow: 0 5px 10px -5px #0003;
}
.dpu-site-subnav a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  font-size: 14px;
  color: #666;
  text-decoration: none;
}
.dpu-site-subnav a:hover {
  color: var(--dpu-blue);
}
.dpu-site-subnav .dpu-site-home {
  font-weight: 700;
  color: var(--dpu-ink);
}
.dpu-site-subnav a[aria-current="page"] {
  text-decoration: underline;
  text-underline-offset: 5px;
}
.dpu-site-title {
  background: #f0f0f0;
  border-bottom: 1px solid #ccc;
  padding-block: 20px;
}
.dpu-site-main {
  margin-block: 32px 48px;
  min-width: 0;
}
.dpu-site-columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 40px;
}
.dpu-site-columns > * {
  min-width: 0;
}
.dpu-site-columns.dpu-nav-first {
  grid-template-columns: 220px minmax(0, 1fr);
}
.dpu-site-footer {
  margin-top: 40px;
  min-height: 200px;
}
.dpu-site-footer > .dpu-container {
  padding-block: 20px 40px;
  font-size: 11px;
}
.dpu-footer-columns {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}
.dpu-site-footer h2 {
  margin: 1em 0;
  color: #fff;
  font-size: 13px;
  line-height: 1.4;
}
.dpu-site-footer ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
.dpu-site-footer li {
  margin: 0;
}
.dpu-site-footer li a {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
}
.dpu-site-header :where(a, button, input):focus-visible,
.dpu-site-footer a:focus-visible {
  outline: 2px solid #8fd0ff;
  outline-offset: -2px;
}
.dpu-site-subnav a:focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: -2px;
}
.dpu-page-title {
  margin: 0 0 24px;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -0.025em;
  color: var(--dpu-ink);
  overflow-wrap: anywhere;
}
.dpu-section-title {
  margin: 28px 0 14px;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--dpu-ink);
}
.dpu-skip-link {
  position: fixed;
  z-index: 5000;
  top: 8px;
  left: 8px;
  padding: 8px 16px;
  background: #fff;
  color: #096ba8;
  transform: translateY(-200%);
}
.dpu-skip-link:focus {
  transform: none;
  outline: 2px solid #187bb8;
  outline-offset: 2px;
}

/* Search: one trailing-action structure, with light and dark variants. */
.dpu-search {
  --dpu-search-bg: #fff;
  --dpu-search-text: #20313f;
  --dpu-search-border: #8394a1;
  --dpu-search-placeholder: #64737f;
  --dpu-search-hover: #f3f7fa;
  --dpu-search-focus: #187bb8;
  position: relative;
  min-width: 0;
  width: 100%;
  max-width: 650px;
  color: var(--dpu-search-text);
  margin: 0;
}
.dpu-search.dpu-on-dark {
  --dpu-search-bg: #ffffff1f;
  --dpu-search-text: #fff;
  --dpu-search-border: #ffffff66;
  --dpu-search-placeholder: #ffffffc2;
  --dpu-search-hover: #ffffff29;
  --dpu-search-focus: #8fd0ff;
}
.dpu-search-box {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  min-height: 34px;
  border: 1px solid var(--dpu-search-border);
  border-radius: 999px;
  background: var(--dpu-search-bg);
}
.dpu-search-box:has(.dpu-search-input:focus-visible) {
  outline: 2px solid var(--dpu-search-focus);
  outline-offset: -1px;
}
.dpu-search-input {
  box-sizing: border-box;
  flex: 1;
  width: 100%;
  min-width: 0;
  height: 32px;
  margin: 0;
  padding: 6px 4px 6px 14px;
  border: 0;
  border-radius: 999px 0 0 999px;
  background: transparent;
  color: inherit;
  font:
    14px/20px -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    Arial,
    sans-serif;
  appearance: none;
}
.dpu-search-input:focus-visible {
  outline: none;
  box-shadow: none;
}
.dpu-search-input::placeholder {
  color: var(--dpu-search-placeholder);
  opacity: 1;
}
.dpu-search-input::-webkit-search-cancel-button {
  appearance: none;
}
.dpu-search-submit,
.dpu-search-clear {
  display: inline-grid;
  place-items: center;
  box-sizing: border-box;
  flex: 0 0 42px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
.dpu-search-clear {
  flex-basis: 28px;
  height: 28px;
}
.dpu-search-clear[hidden] {
  display: none;
}
.dpu-search-submit:hover,
.dpu-search-clear:hover {
  background: var(--dpu-search-hover);
}
.dpu-search-submit:focus-visible,
.dpu-search-clear:focus-visible {
  outline: 2px solid var(--dpu-search-focus);
  outline-offset: -2px;
}
.dpu-search-preview {
  box-sizing: border-box;
  position: absolute;
  z-index: 100;
  inset-inline-end: 0;
  top: calc(100% + 7px);
  width: min(576px, calc(100vw - 32px));
  max-width: 100%;
  max-height: 65vh;
  overflow-y: auto;
  padding: 6px;
  border: 1px solid var(--dpu-line);
  border-radius: 8px;
  background: #fff;
  color: var(--dpu-ink);
  box-shadow: 0 12px 30px #0a182d26;
}
.dpu-search-preview[hidden] {
  display: none;
}
.dpu-search-result {
  display: block;
  padding: 9px 10px;
  border-inline-start: 3px solid transparent;
  border-radius: 4px;
  font-size: 14px;
  color: var(--dpu-ink);
  text-decoration: none;
}
.dpu-search-result small {
  display: block;
  color: var(--dpu-muted);
  font-size: 12px;
}
.dpu-search-result:hover,
.dpu-search-result[aria-selected="true"] {
  background: var(--dpu-soft-blue);
  border-inline-start-color: var(--dpu-blue);
}
.dpu-search-result:focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: -2px;
}

/* Complete field states, independent of whether a label wrapper is available. */
.dpu-input:hover,
.dpu-field :where(input, select, textarea):hover {
  border-color: #778f9f;
}
.dpu-input:focus,
.dpu-field :where(input, select, textarea):focus {
  box-shadow: none;
}
.dpu-input[readonly],
.dpu-field :where(input, textarea)[readonly] {
  background: var(--dpu-wash);
  border-style: dashed;
}
.dpu-input[aria-invalid="true"],
.dpu-field :where(input, select, textarea)[aria-invalid="true"] {
  border-color: var(--dpu-danger);
}
.dpu-input:disabled,
.dpu-field :where(input, select, textarea):disabled {
  background: #eff2f4;
  color: #697986;
  border-color: #d3dce2;
  cursor: default;
}
.dpu-input.dpu-compact,
.dpu-field.dpu-compact :where(input, select, textarea) {
  min-height: 34px;
  font-size: 13px;
  padding: 5px 9px;
}
.dpu-input.dpu-property {
  min-height: 30px;
  font-size: 12px;
  padding: 3px 6px;
  border-radius: 4px;
}
.dpu-input:is(textarea) {
  resize: vertical;
}
.dpu-btn.dpu-compact.dpu-icon-only {
  width: 32px;
  height: 32px;
  min-height: 32px;
  padding: 5px;
}
.dpu-btn[aria-pressed="true"]:not(:disabled, [aria-disabled="true"]) {
  background: var(--dpu-soft-blue);
  border-color: #91b7cf;
  color: var(--dpu-blue);
}
.dpu-btn.dpu-wrap {
  max-width: 100%;
  white-space: normal;
  text-align: center;
}
.dpu-input-group {
  display: flex;
  align-items: stretch;
  min-width: 0;
}
.dpu-input-group > .dpu-input {
  flex: 1;
  min-width: 0;
  width: 100%;
  border-radius: 0;
  margin: 0;
  align-self: stretch;
}
.dpu-input-group > :first-child {
  border-start-start-radius: 6px;
  border-end-start-radius: 6px;
}
.dpu-input-group > :last-child {
  border-start-end-radius: 6px;
  border-end-end-radius: 6px;
}
.dpu-input-addon {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  padding: 8px 11px;
  background: var(--dpu-wash);
  border: 1px solid var(--dpu-control-line);
  font-size: 14px;
  color: var(--dpu-muted);
  white-space: nowrap;
}
.dpu-input-addon:first-child {
  border-inline-end: 0;
}
.dpu-input-addon:last-child {
  border-inline-start: 0;
}

.dpu-input-group > .dpu-input-addon {
  align-self: stretch;
}
.dpu-check-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 32px;
  font-size: 14px;
  line-height: 1.5;
  cursor: pointer;
}
.dpu-check-row > .dpu-choice {
  margin: 0;
  align-self: center;
}
.dpu-check-row.dpu-multiline {
  align-items: flex-start;
}
.dpu-check-row.dpu-multiline > .dpu-choice {
  align-self: flex-start;
  margin-top: calc((1.5em - 16px) / 2);
  font-size: inherit;
}
.dpu-check-row small {
  display: block;
  color: var(--dpu-muted);
  font-size: 12px;
}
.dpu-error-summary {
  padding: 16px 20px;
  border: 1px solid #eaccc9;
  border-inline-start: 3px solid var(--dpu-danger);
  border-radius: 6px;
  background: #fff7f6;
}
.dpu-error-summary h2 {
  margin: 0 0 8px;
  font-size: 15px;
  color: var(--dpu-danger);
}
.dpu-error-summary ul {
  margin: 0;
  padding-inline-start: 20px;
}
.dpu-error-summary:focus {
  outline: 2px solid var(--dpu-focus);
  outline-offset: 3px;
}

/* Native prose opt-in; dpu-no-prose is the explicit embedded-widget escape. */
.dpu-prose {
  min-width: 0;
  font-size: 15px;
  line-height: 1.6;
  color: var(--dpu-text);
  overflow-wrap: anywhere;
}
.dpu-prose
  :where(p, ul, ol, dl, figure, blockquote):not(
    :where(.dpu-no-prose, .dpu-no-prose *)
  ) {
  margin: 0 0 16px;
}
.dpu-prose :where(h1, h2, h3, h4):not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  color: var(--dpu-ink);
  line-height: 1.25;
  font-weight: 600;
}
.dpu-prose h1:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  font-size: 26px;
  margin: 0 0 24px;
}
.dpu-prose h2:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  font-size: 22px;
  margin: 32px 0 14px;
}
.dpu-prose h3:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  font-size: 17px;
  margin: 26px 0 12px;
}
.dpu-prose h4:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  font-size: 15px;
  margin: 22px 0 10px;
}
.dpu-prose :where(ul, ol):not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  padding-inline-start: 24px;
  list-style-position: outside;
}
.dpu-prose ul:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  list-style-type: disc;
}
.dpu-prose ol:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  list-style-type: decimal;
}
.dpu-prose li:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  padding: 0;
  text-indent: 0;
  margin-block: 6px;
}
.dpu-prose li :where(ul, ol):not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  margin-block: 8px;
}
.dpu-prose li > p:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  margin-block: 6px;
}
.dpu-prose a:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  color: var(--dpu-blue);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.dpu-prose a:hover:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  color: var(--dpu-blue-hover);
}
.dpu-prose a:focus-visible:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  outline: 2px solid var(--dpu-focus);
  outline-offset: 3px;
}
.dpu-prose blockquote:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  padding: 12px 16px;
  border-inline-start: 3px solid #b8c8d3;
  background: var(--dpu-wash);
}
.dpu-prose
  blockquote
  > :last-child:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  margin-bottom: 0;
}
.dpu-prose :where(img, video):not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  display: block;
  max-width: 100%;
  height: auto;
  margin-inline: 0;
}
.dpu-prose figcaption:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  margin-top: 8px;
  font-size: 12px;
  color: var(--dpu-muted);
}
.dpu-prose hr:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  border: 0;
  border-top: 1px solid var(--dpu-line);
  margin-block: 28px;
}
.dpu-prose code:not(:where(pre *, .dpu-no-prose, .dpu-no-prose *)),
.dpu-code.dpu-inline-code {
  padding: 0.2em 0.4em;
  border-radius: 5px;
  color: #333;
  background: #e6e6e6;
  font: 600 0.88em var(--dpu-mono);
  box-decoration-break: clone;
  overflow-wrap: anywhere;
}
.dpu-pre,
.dpu-prose pre:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  box-sizing: border-box;
  max-width: 100%;
  margin: 16px 0;
  padding: 13px;
  border: 1px solid #444;
  border-radius: 6px;
  background: #333;
  color: #fff;
  font: 13px/1.42 var(--dpu-mono);
  tab-size: 2;
  white-space: pre;
  overflow: auto;
  overflow-wrap: normal;
  color-scheme: dark;
}
.dpu-pre code,
.dpu-prose pre code:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  display: inline;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  white-space: inherit;
}
.dpu-pre.dpu-wrap,
.dpu-prose pre.dpu-wrap:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.dpu-pre:focus-visible,
.dpu-prose pre:focus-visible:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  outline: 2px solid #83c6ea;
  outline-offset: -3px;
}
.dpu-kbd,
.dpu-prose kbd:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
  display: inline-block;
  padding: 1px 5px;
  border: 1px solid #b9c5ce;
  border-bottom-width: 2px;
  border-radius: 4px;
  background: #f6f8fa;
  color: #435461;
  font: 12px/1.5 var(--dpu-mono);
}
.dpu-code-block {
  min-width: 0;
}
.dpu-code-caption {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 6px;
  font-size: 12px;
  color: var(--dpu-muted);
}
.dpu-code-block .dpu-pre {
  margin-top: 0;
}
/* Agate-derived palette from the live Docs/Code references. Comments and
 * numbers are lightened for AA contrast on #333; syntax parsing stays local. */
.dpu-pre .dpu-token-keyword {
  color: #fcc28c;
}
.dpu-pre .dpu-token-string {
  color: #a2fca2;
}
.dpu-pre .dpu-token-comment {
  color: #aaa;
}
.dpu-pre .dpu-token-number {
  color: #f19b9b;
}
.dpu-pre .dpu-token-title {
  color: #ffffaa;
}
.dpu-pre .dpu-token-tag {
  color: #62c8f3;
}
.dpu-pre .dpu-token-attribute {
  color: #7bd694;
}
.dpu-pre .dpu-token-variable {
  color: #ade5fc;
}

/* Tables: one base, explicit dense and purchase variants. */
.dpu-table {
  box-sizing: border-box;
  width: 100%;
  border-collapse: collapse;
  text-align: start;
  font-size: 15px;
  line-height: 1.55;
}
.dpu-table caption {
  text-align: start;
  color: var(--dpu-muted);
  font-size: 13px;
  margin-bottom: 8px;
}
.dpu-table :where(th, td) {
  padding: 12px 14px;
  border: 1px solid var(--dpu-line);
  text-align: start;
  vertical-align: top;
  color: var(--dpu-text);
}
.dpu-table th {
  font-weight: 600;
  background: var(--dpu-wash);
  color: var(--dpu-ink);
}
.dpu-table .dpu-number {
  text-align: end;
  white-space: nowrap;
}
.dpu-table.dpu-dense {
  font-size: 13px;
}
.dpu-table.dpu-dense :where(th, td) {
  padding: 8px 10px;
}
.dpu-table.dpu-dense th {
  font-size: 12px;
}
.dpu-table.dpu-purchase {
  font-size: 14px;
  border: 1px solid #bdcbd5;
}
.dpu-table.dpu-purchase :where(th, td) {
  padding: 16px;
  border-inline: 0;
}
.dpu-table.dpu-purchase th {
  font-size: inherit;
}
.dpu-table.dpu-purchase tbody th {
  font-weight: 500;
  background: #fff;
}
.dpu-table.dpu-purchase tbody strong {
  font-weight: 600;
  color: var(--dpu-ink);
}
.dpu-table.dpu-purchase tfoot :where(th, td) {
  font-weight: 600;
  background: var(--dpu-wash);
  border-top: 1px solid #bdcbd5;
}
.dpu-table-scroll {
  max-width: 100%;
  overflow-x: auto;
  padding: 3px;
  margin: -3px;
}
.dpu-table-scroll:focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: -1px;
}
.dpu-facts {
  margin: 0;
}
.dpu-facts > div {
  display: grid;
  grid-template-columns: minmax(100px, 150px) minmax(0, 1fr);
  gap: 16px;
  padding-block: 8px;
}
.dpu-facts dt {
  color: var(--dpu-muted);
  font-size: 13px;
}
.dpu-facts dd {
  margin: 0;
  overflow-wrap: anywhere;
}
.dpu-metadata {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
  color: var(--dpu-muted);
  font-size: 12px;
}
.dpu-sort-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 0;
  padding: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
  min-height: 24px;
}
.dpu-sort-button:focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: 2px;
}

/* Token entry is not a navigational tag or a status badge. */
.dpu-token-field {
  position: relative;
  min-width: 0;
}
.dpu-token-control {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
  min-height: 40px;
  padding: 4px 7px;
  border: 1px solid var(--dpu-control-line);
  border-radius: 6px;
  background: #fff;
}
.dpu-token-control:has(.dpu-token-input:focus-visible) {
  outline: 2px solid var(--dpu-focus);
  outline-offset: -1px;
}
.dpu-token-control:has([aria-invalid="true"]) {
  border-color: var(--dpu-danger);
}
.dpu-token {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  gap: 2px;
  padding-inline: 8px 2px;
  border: 1px solid var(--dpu-line);
  border-radius: 999px;
  background: var(--dpu-wash);
  font-size: 13px;
  overflow-wrap: anywhere;
}
.dpu-token-remove {
  display: inline-grid;
  place-items: center;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: var(--dpu-muted);
  background: transparent;
  cursor: pointer;
}
.dpu-token-remove .dpu-icon {
  width: 14px;
  height: 14px;
}
.dpu-token-remove:hover {
  color: var(--dpu-blue);
  background: var(--dpu-soft-blue);
}
.dpu-token-remove:focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: -1px;
}
.dpu-token-input {
  box-sizing: border-box;
  flex: 1 1 120px;
  min-width: 80px;
  max-width: 100%;
  height: 30px;
  padding: 3px 2px;
  border: 0;
  background: transparent;
  color: var(--dpu-ink);
  font: inherit;
  font-size: 14px;
}
.dpu-token-input:focus-visible {
  outline: none;
  box-shadow: none;
}
.dpu-suggestions {
  box-sizing: border-box;
  position: absolute;
  z-index: 100;
  inset-inline: 0;
  top: calc(100% + 4px);
  max-height: 220px;
  overflow-y: auto;
  margin: 0;
  padding: 4px;
  list-style: none;
  background: #fff;
  border: 1px solid var(--dpu-control-line);
  border-radius: 6px;
  box-shadow: 0 8px 24px #0002;
}
.dpu-suggestions[hidden] {
  display: none;
}
.dpu-suggestions > li {
  padding: 8px 10px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 14px;
  list-style: none;
}
.dpu-suggestions > li:hover,
.dpu-suggestions > li[aria-selected="true"] {
  background: var(--dpu-soft-blue);
  color: var(--dpu-blue);
}

/* Editor frame only: no vendor commands, document schema or preview skin. */
.dpu-editor {
  min-width: 0;
  border: 1px solid var(--dpu-control-line);
  border-radius: 6px;
  background: #fff;
}
.dpu-editor-toolbar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2px;
  padding: 5px;
  border-bottom: 1px solid var(--dpu-line);
  border-radius: 6px 6px 0 0;
  background: var(--dpu-wash);
}
.dpu-editor-toolbar .dpu-btn:focus-visible {
  outline-offset: -2px;
}
.dpu-toolbar-divider {
  align-self: center;
  width: 1px;
  height: 20px;
  margin-inline: 5px;
  background: var(--dpu-line);
}
.dpu-editor-surface {
  box-sizing: border-box;
  min-height: 180px;
  padding: 12px;
  border-radius: 0 0 6px 6px;
}
.dpu-editor-surface:focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: -1px;
}
.dpu-editor-surface[aria-invalid="true"] {
  outline: 2px solid var(--dpu-danger);
  outline-offset: -1px;
}
.dpu-editor-surface[aria-invalid="true"]:focus-visible {
  outline-color: var(--dpu-focus);
}
.dpu-color-field {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.dpu-color-field input[type="color"] {
  box-sizing: border-box;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  padding: 3px;
  border: 1px solid var(--dpu-control-line);
  border-radius: 4px;
  background: #fff;
}
.dpu-color-field .dpu-input {
  min-width: 0;
}
.dpu-color-field input:focus-visible,
.dpu-range:focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: 2px;
}
.dpu-range {
  box-sizing: border-box;
  width: 100%;
  min-height: 32px;
  accent-color: var(--dpu-blue);
}
.dpu-asset-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
  gap: 8px;
}
.dpu-asset-cell {
  display: grid;
  justify-items: center;
  gap: 10px;
  padding: 14px 8px;
  border: 1px solid var(--dpu-line);
  border-radius: 6px;
  background: #fff;
  color: var(--dpu-ink);
  font: inherit;
  font-size: 12px;
  cursor: pointer;
  overflow-wrap: anywhere;
}
.dpu-asset-cell:hover {
  background: var(--dpu-wash);
}
.dpu-asset-cell[aria-pressed="true"] {
  background: var(--dpu-soft-blue);
  border-color: var(--dpu-blue);
}
.dpu-asset-cell:focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: 2px;
}

/* Native selection, transferable files and transfer progress stay distinct. */
.dpu-file-input {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  font: inherit;
  font-size: 14px;
}
.dpu-file-input::file-selector-button {
  margin-inline-end: 10px;
  border: 1px solid #bbc7cf;
  border-radius: 6px;
  padding: 8px 12px;
  background: #fff;
  color: var(--dpu-ink);
  font: inherit;
  cursor: pointer;
}
.dpu-file-input:focus-visible {
  outline: 2px solid var(--dpu-focus);
  outline-offset: 2px;
}
.dpu-dropzone {
  padding: 20px;
  border: 1px dashed var(--dpu-control-line);
  border-radius: 6px;
  background: #fff;
}
.dpu-dropzone[data-dragging="true"] {
  background: var(--dpu-soft-blue);
  border-color: var(--dpu-blue);
}
.dpu-dropzone[aria-disabled="true"] {
  background: var(--dpu-wash);
  color: var(--dpu-muted);
}
.dpu-attachments {
  display: grid;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.dpu-attachment {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--dpu-line);
  border-radius: 6px;
  min-width: 0;
}
.dpu-attachment-preview {
  display: grid;
  place-items: center;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  background: var(--dpu-wash);
  border-radius: 4px;
  color: var(--dpu-muted);
}
.dpu-attachment-preview img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.dpu-attachment-detail {
  min-width: 0;
  flex: 1;
}
.dpu-attachment-name {
  display: block;
  font-size: 14px;
  overflow-wrap: anywhere;
}
.dpu-attachment-meta {
  display: block;
  margin-top: 3px;
  font-size: 12px;
  color: var(--dpu-muted);
}
.dpu-attachments.dpu-thumbnail-grid {
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}
.dpu-thumbnail-grid .dpu-attachment {
  flex-direction: column;
  align-items: stretch;
  text-align: center;
}
.dpu-thumbnail-grid .dpu-attachment-preview {
  width: 100%;
  height: 96px;
  flex-basis: 96px;
}
.dpu-progress {
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 8px;
  overflow: hidden;
  border: 0;
  border-radius: 6px;
  background: var(--dpu-line);
  accent-color: var(--dpu-blue);
  appearance: none;
}
.dpu-progress::-webkit-progress-bar {
  background: var(--dpu-line);
  border-radius: 6px;
}
.dpu-progress::-webkit-progress-value {
  background: var(--dpu-blue);
  border-radius: 6px;
}
.dpu-progress::-moz-progress-bar {
  background: var(--dpu-blue);
  border-radius: 6px;
}
.dpu-progress:not([value]) {
  background: repeating-linear-gradient(
    110deg,
    var(--dpu-line) 0 16px,
    #a7c8df 16px 32px
  );
}
.dpu-progress:not([value])::-webkit-progress-bar {
  background: transparent;
}
.dpu-progress:not([value])::-moz-progress-bar {
  background: transparent;
}

@media (max-width: 1120px) {
  .dpu-site {
    --dpu-site-gutter: 16px;
  }
}
@media (max-width: 900px) {
  .dpu-site-columns,
  .dpu-site-columns.dpu-nav-first {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
}
@media (max-width: 720px) {
  .dpu-site-header > .dpu-container,
  .dpu-site-subnav > .dpu-container {
    flex-wrap: wrap;
    gap: 0 24px;
    padding-block: 0 6px;
  }
  .dpu-site-header .dpu-search,
  .dpu-site-subnav .dpu-search,
  .dpu-site-header .dpsh {
    width: 100%;
    flex-basis: 100%;
    margin-inline: 0;
  }
  .dpu-site-header nav,
  .dpu-site-subnav nav {
    gap: 0 24px;
  }
  .dpu-site-subnav nav {
    width: 100%;
  }
  .dpu-footer-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dpu-page-title {
    font-size: 24px;
  }
}
@media (max-width: 600px) {
  .dpu-command .dpu-command-value {
    flex-basis: 100%;
  }
  .dpu-facts > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 3px;
  }
  .dpu-table.dpu-purchase :where(th, td) {
    padding: 12px;
  }
}
@media (max-width: 400px) {
  .dpu-footer-columns {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (forced-colors: active) {
  .dpu-search-box,
  .dpu-token-control,
  .dpu-dropzone,
  .dpu-pre {
    border-color: CanvasText;
  }
  .dpu-search {
    --dpu-search-text: CanvasText;
    --dpu-search-bg: Canvas;
    --dpu-search-border: CanvasText;
    --dpu-search-placeholder: GrayText;
    --dpu-search-focus: Highlight;
  }
  .dpu-progress {
    appearance: auto;
  }
  .dpu-btn[aria-pressed="true"],
  .dpu-asset-cell[aria-pressed="true"] {
    border-color: Highlight;
    outline: 1px solid Highlight;
  }
}

/* Search-provider adapter: dpsh is an explicitly supported external markup
 * contract, active only beneath dpu-site. Provider behavior remains unchanged.
 * Source/provenance and supported exceptions: docs/ref/shell.md. */
.dpu-site .dpsh {
  --dpsh-inline-size: clamp(14rem, 28vw, 23rem);
  --dpsh-accent: #1686d9;
  --dpsh-focus: #8fd0ff;
  --dpsh-control-background: rgba(255, 255, 255, 0.12);
  --dpsh-control-text: #ffffff;
  --dpsh-control-border: rgba(255, 255, 255, 0.4);
  --dpsh-control-hover-background: rgba(255, 255, 255, 0.17);
  --dpsh-control-hover-border: rgba(255, 255, 255, 0.62);
  --dpsh-control-placeholder: rgba(255, 255, 255, 0.76);
  --dpsh-control-action-hover: rgba(255, 255, 255, 0.16);
  --dpsh-panel-background: #ffffff;
  --dpsh-panel-text: #172033;
  --dpsh-panel-muted: #667085;
  --dpsh-panel-action: #0874bd;
  --dpsh-panel-focus: #075c99;
  --dpsh-panel-border: #d8dee9;
  --dpsh-panel-active-background: #eaf4fc;
  --dpsh-panel-shadow: 0 18px 45px rgba(10, 24, 45, 0.24);
  --dpsh-z-index: 3000;
  --dpsh-cancel-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 3l10 10M13 3L3 13' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'/%3E%3C/svg%3E");

  position: relative;
  display: block;
  inline-size: var(--dpsh-inline-size);
  max-inline-size: calc(100vw - 1rem);
  color: var(--dpsh-control-text);
  font-family:
    -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
    Arial, sans-serif;
  font-size: 16px;
  line-height: 1.35;
  text-align: start;
}
.dpu-site .dpsh,
.dpu-site .dpsh * {
  box-sizing: border-box;
}
.dpu-site .dpsh .dpsh__form {
  display: block;
  margin: 0;
  padding: 0;
}
.dpu-site .dpsh__control {
  display: flex;
  align-items: stretch;
  min-block-size: 34px;
  overflow: hidden;
  border: 1px solid var(--dpsh-control-border);
  border-radius: 999px;
  background: var(--dpsh-control-background);
  color: var(--dpsh-control-text);
  transition:
    border-color 120ms ease,
    background-color 120ms ease,
    box-shadow 120ms ease;
}
@supports (backdrop-filter: blur(8px)) {
  .dpu-site .dpsh__control {
    backdrop-filter: blur(8px);
  }
}
.dpu-site .dpsh__control:hover {
  border-color: var(--dpsh-control-hover-border);
  background: var(--dpsh-control-hover-background);
}
.dpu-site .dpsh__control:focus-within {
  border-color: var(--dpsh-control-border);
  box-shadow: none;
}
.dpu-site .dpsh .dpsh__input {
  min-inline-size: 0;
  inline-size: 100%;
  block-size: 32px;
  margin: 0;
  padding: 6px 4px 6px 14px;
  border: 0;
  border-radius: 999px 0 0 999px;
  outline: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: 14px;
  line-height: 20px;
  appearance: none;
}
.dpu-site .dpsh .dpsh__input::-webkit-search-cancel-button {
  inline-size: 18px;
  block-size: 18px;
  margin: 0 3px 0 2px;
  background-color: currentColor;
  -webkit-mask: var(--dpsh-cancel-icon) center / 14px 14px no-repeat;
  mask: var(--dpsh-cancel-icon) center / 14px 14px no-repeat;
  opacity: 1;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}
.dpu-site .dpsh .dpsh__input::placeholder {
  color: var(--dpsh-control-placeholder);
  opacity: 1;
}
.dpu-site .dpsh .dpsh__submit {
  display: inline-flex;
  flex: 0 0 42px;
  align-items: center;
  justify-content: center;
  min-inline-size: 42px;
  min-block-size: 32px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0 999px 999px 0;
  outline: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  font: inherit;
  appearance: none;
  transition:
    background-color 120ms ease,
    transform 120ms ease;
}
.dpu-site .dpsh .dpsh__submit:hover,
.dpu-site .dpsh .dpsh__submit:focus-visible {
  background: var(--dpsh-control-action-hover);
}
.dpu-site .dpsh .dpsh__submit:focus-visible {
  outline: 2px solid var(--dpsh-focus);
  outline-offset: -2px;
  box-shadow: none;
}
.dpu-site .dpsh .dpsh__submit:active {
  transform: scale(0.94);
}
.dpu-site .dpsh__submit svg {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  inline-size: 18px;
  block-size: 18px;
  stroke-width: 1.75;
}
.dpu-site .dpsh .dpsh__preview {
  position: absolute;
  z-index: var(--dpsh-z-index);
  inset-block-start: calc(100% + 7px);
  inset-inline-end: 0;
  inline-size: min(36rem, calc(100vw - 2rem));
  min-inline-size: min(100%, calc(100vw - 2rem));
  max-inline-size: calc(100vw - 2rem);
  max-block-size: min(calc(100vh - 4rem), 40rem);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  margin: 0;
  padding: 6px;
  border: 1px solid var(--dpsh-panel-border);
  border-radius: 12px;
  background: var(--dpsh-panel-background);
  box-shadow: var(--dpsh-panel-shadow);
  color: var(--dpsh-panel-text);
  text-align: start;
  scrollbar-gutter: stable;
}
.dpu-site .dpsh .dpsh__preview[hidden] {
  display: none !important;
}
.dpu-site .dpsh__group + .dpsh__group,
.dpu-site .dpsh__group + .dpsh__option--full,
.dpu-site .dpsh__option:not(.dpsh__option--full) + .dpsh__option--full,
.dpu-site .dpsh__empty + .dpsh__option--full {
  margin-block-start: 5px;
  padding-block-start: 5px;
  border-block-start: 1px solid var(--dpsh-panel-border);
}
.dpu-site .dpsh__heading {
  padding: 5px 10px 4px;
  color: var(--dpsh-panel-muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.055em;
  line-height: 1.2;
  text-transform: uppercase;
}
.dpu-site .dpsh .dpsh__option,
.dpu-site .dpsh .dpsh__option:link,
.dpu-site .dpsh .dpsh__option:visited {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-content: center;
  min-block-size: 44px;
  margin: 0;
  padding: 7px 10px;
  border: 0;
  border-inline-start: 3px solid transparent;
  border-radius: 8px;
  outline: 0;
  background: transparent;
  color: var(--dpsh-panel-text);
  font: inherit;
  line-height: 1.25;
  text-decoration: none;
  cursor: pointer;
}
.dpu-site .dpsh .dpsh__option:hover,
.dpu-site .dpsh .dpsh__option[aria-selected="true"] {
  border-inline-start-color: var(--dpsh-panel-focus);
  background: var(--dpsh-panel-active-background);
  background: color-mix(in srgb, var(--dpsh-accent) 12%, transparent);
  color: var(--dpsh-panel-text);
}
.dpu-site .dpsh .dpsh__option:focus-visible {
  box-shadow: inset 0 0 0 2px var(--dpsh-panel-focus);
}
.dpu-site .dpsh__title {
  min-inline-size: 0;
  overflow: hidden;
  font-size: 14px;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dpu-site .dpsh__option--api .dpsh__title {
  font-family:
    ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
    "Courier New", monospace;
  font-size: 13px;
}
.dpu-site .dpsh__option--release .dpsh__context {
  color: var(--dpsh-panel-action);
  font-weight: 600;
}
.dpu-site .dpsh__context {
  min-inline-size: 0;
  overflow: hidden;
  margin-block-start: 2px;
  color: var(--dpsh-panel-muted);
  font-size: 12px;
  font-weight: 400;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dpu-site .dpsh .dpsh__option:hover .dpsh__context,
.dpu-site .dpsh .dpsh__option[aria-selected="true"] .dpsh__context {
  color: var(--dpsh-panel-focus);
}
.dpu-site .dpsh .dpsh__option.dpsh__option--query {
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: center;
  column-gap: 7px;
  min-block-size: 36px;
  padding-block: 4px;
}
.dpu-site .dpsh__query-icon {
  position: relative;
  display: block;
  align-self: center;
  justify-self: center;
  inline-size: 14px;
  block-size: 14px;
  color: var(--dpsh-panel-muted);
  border: 0;
  border-radius: 0;
  background: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5' fill='none' stroke='black' stroke-width='1.75'/%3E%3Cpath d='m15.5 15.5 4.5 4.5' stroke='black' stroke-width='1.75'/%3E%3C/svg%3E")
    center / contain no-repeat;
}
.dpu-site .dpsh .dpsh__option--full,
.dpu-site .dpsh .dpsh__option--full:link,
.dpu-site .dpsh .dpsh__option--full:visited {
  color: var(--dpsh-panel-action);
  font-size: 13px;
  font-weight: 650;
}
.dpu-site .dpsh .dpsh__option--full:hover,
.dpu-site .dpsh .dpsh__option--full[aria-selected="true"] {
  color: var(--dpsh-panel-focus);
}
.dpu-site .dpsh__empty {
  padding: 10px;
  color: var(--dpsh-panel-muted);
  font-size: 13px;
  line-height: 1.4;
}
.dpu-site .dpsh__guidance {
  display: grid;
  row-gap: 2px;
  min-block-size: 52px;
  padding: 9px 11px;
  border-radius: 8px;
  cursor: default;
}
.dpu-site .dpsh__guidance-title {
  color: var(--dpsh-panel-text);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
}
.dpu-site .dpsh__guidance-detail {
  color: var(--dpsh-panel-muted);
  font-size: 12px;
  line-height: 1.35;
}
.dpu-site .dpsh__visually-hidden {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  overflow: hidden !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}
@media (pointer: coarse) {
  .dpu-site .dpsh .dpsh__option.dpsh__option--query {
    min-block-size: 44px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .dpu-site .dpsh__control,
  .dpu-site .dpsh .dpsh__submit {
    transition: none;
  }
}
@media (forced-colors: active) {
  .dpu-site .dpsh__control,
  .dpu-site .dpsh .dpsh__preview {
    border: 1px solid CanvasText;
    background: Canvas;
    color: CanvasText;
    box-shadow: none;
    forced-color-adjust: auto;
  }
  .dpu-site .dpsh .dpsh__input,
  .dpu-site .dpsh .dpsh__submit {
    color: CanvasText;
  }
  .dpu-site .dpsh .dpsh__input::-webkit-search-cancel-button {
    background-color: CanvasText;
    forced-color-adjust: none;
  }
  .dpu-site .dpsh .dpsh__input::placeholder,
  .dpu-site .dpsh__heading,
  .dpu-site .dpsh__context,
  .dpu-site .dpsh__empty,
  .dpu-site .dpsh__guidance-detail {
    color: GrayText;
  }
  .dpu-site .dpsh .dpsh__option:hover,
  .dpu-site .dpsh .dpsh__option[aria-selected="true"] {
    border-inline-start-color: HighlightText;
    background: Highlight;
    color: HighlightText;
  }
  .dpu-site .dpsh .dpsh__option:hover .dpsh__context,
  .dpu-site .dpsh .dpsh__option[aria-selected="true"] .dpsh__context {
    color: HighlightText;
  }
  .dpu-site .dpsh .dpsh__option:focus-visible,
  .dpu-site .dpsh .dpsh__submit:focus-visible,
  .dpu-site .dpsh__control:focus-within {
    outline: 2px solid Highlight;
    outline-offset: 2px;
    box-shadow: none;
  }
}

.dpu-site .dpsh__control:has(.dpsh__input:focus-visible) {
  outline: 2px solid var(--dpsh-focus);
  outline-offset: -1px;
}

@media (max-width: 720px) {
  .dpu-site .dpsh {
    max-inline-size: 100%;
  }
  .dpu-site .dpsh .dpsh__preview {
    inset-inline: 0;
    inline-size: 100%;
    min-inline-size: 100%;
    max-inline-size: 100%;
    max-block-size: 65vh;
  }
}

/* Specialized objects: adapters may retain host .article-summary/table.features
 * markup. Neither object requires dpu-table or ordinary-record anatomy. */
.dpu-overview {
  width: 100%;
  border: 1px solid var(--dpu-line);
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 7px;
  overflow: hidden;
  font-size: 15px;
}
.dpu-overview caption,
.dpu-availability caption {
  margin-bottom: 8px;
  text-align: start;
  font-size: 13px;
  color: var(--dpu-muted);
}
.dpu-overview :where(th, td) {
  padding: 14px 16px;
  border: 0;
  text-align: start;
  vertical-align: middle;
}
.dpu-overview th {
  width: 170px;
  font-weight: 600;
  background: var(--dpu-wash);
  color: var(--dpu-text);
}
.dpu-overview tr + tr :where(th, td) {
  border-top: 1px solid var(--dpu-line);
}
.dpu-availability {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
.dpu-availability :where(th, td) {
  border: 1px solid var(--dpu-line);
  padding: 9px 12px;
  text-align: center;
}
.dpu-availability th {
  background: var(--dpu-wash);
  color: var(--dpu-ink);
  font-weight: 500;
}
.dpu-availability tbody th {
  text-align: start;
}
.dpu-availability .dpu-icon {
  vertical-align: middle;
  color: var(--dpu-blue);
}
.dpu-token-control:has(.dpu-token-input:disabled) {
  background: #eff2f4;
  border-color: #d3dce2;
}
.dpu-token-input:disabled {
  color: #697986;
  cursor: default;
}
.dpu-token-remove:disabled {
  color: #697986;
  background: transparent;
  cursor: default;
}
.dpu-token-control:has(.dpu-token-input[readonly]) {
  background: var(--dpu-wash);
  border-style: dashed;
}
@media (max-width: 600px) {
  .dpu-overview,
  .dpu-overview tbody,
  .dpu-overview tr,
  .dpu-overview th,
  .dpu-overview td {
    display: block;
    width: auto;
  }
  .dpu-overview tr {
    padding-block: 8px;
  }
  .dpu-overview th {
    padding-block: 6px;
    background: transparent;
  }
  .dpu-overview td {
    padding-block: 0 8px;
  }
  .dpu-overview tr + tr :where(th, td) {
    border: 0;
  }
  .dpu-overview tr + tr {
    border-top: 1px solid var(--dpu-line);
  }
}
@media (forced-colors: active) {
  .dpu-search,
  .dpu-search.dpu-on-dark {
    --dpu-search-bg: Canvas;
    --dpu-search-border: ButtonText;
    --dpu-search-focus: Highlight;
    --dpu-search-hover: Canvas;
    --dpu-search-placeholder: GrayText;
    color: CanvasText;
  }
  .dpu-pre,
  .dpu-prose pre:not(:where(.dpu-no-prose, .dpu-no-prose *)) {
    border-color: CanvasText;
  }
}
