/* Original V116 actual DOM style blocks, HTMLParser extraction; SHA256 f5e682a7b4a704bac0886d5d0eee1850a224d41e865c1de0dd66a01868ef1788 */
/* unnamed */
:root {
  color-scheme: light dark;
  background-color: var(
    --background,
    var(--color-background-primary, light-dark(rgb(255 255 255), rgb(24 24 24)))
  ) !important;

  /* Agent-facing contract; keep in sync with SKILL.md. */
  --background: var(
    --color-background-primary,
    light-dark(rgb(255 255 255), rgb(24 24 24))
  );
  --foreground: var(
    --color-text-primary,
    light-dark(rgb(26 28 31), rgb(255 255 255))
  );
  --card: color-mix(in oklab, var(--foreground) 5%, var(--background));
  --card-foreground: var(
    --color-text-primary,
    light-dark(rgb(26 28 31), rgb(255 255 255))
  );
  --popover: var(
    --color-background-secondary,
    light-dark(rgb(255 255 255), rgb(45 45 45))
  );
  --popover-foreground: var(
    --color-text-primary,
    light-dark(rgb(26 28 31), rgb(255 255 255))
  );
  --primary: var(
    --color-text-info,
    light-dark(rgb(51 156 255), rgb(131 195 255))
  );
  --primary-foreground: var(
    --color-text-inverse,
    light-dark(rgb(255 255 255), rgb(13 13 13))
  );
  --secondary: var(
    --color-background-secondary,
    light-dark(rgb(255 255 255 / 96%), rgb(54 54 54 / 96%))
  );
  --secondary-foreground: var(
    --color-text-primary,
    light-dark(rgb(26 28 31), rgb(255 255 255))
  );
  --muted: color-mix(in srgb, var(--foreground) 10%, transparent);
  --muted-foreground: var(
    --color-text-secondary,
    light-dark(rgb(26 28 31 / 49.4%), rgb(255 255 255 / 49.8%))
  );
  --accent: var(
    --color-background-info,
    light-dark(rgb(229 242 255), rgb(13 39 63))
  );
  --accent-foreground: var(
    --color-text-info,
    light-dark(rgb(51 156 255), rgb(131 195 255))
  );
  --destructive: var(
    --color-text-warning,
    light-dark(rgb(226 85 7), rgb(255 133 73))
  );
  --border: var(
    --color-border-secondary,
    light-dark(rgb(26 28 31 / 8%), rgb(255 255 255 / 8.2%))
  );
  --input: var(
    --color-border-primary,
    light-dark(
      rgb(26 28 31 / 11.8%),
      color-mix(in oklab, rgb(0 0 0) 10%, transparent)
    )
  );
  --ring: var(
    --color-ring-primary,
    light-dark(rgb(51 156 255), rgb(131 195 255 / 76%))
  );
  --font-size-base: var(--font-text-md-size, 14px);
  --blue: light-dark(rgb(51 156 255), rgb(51 156 255));
  --orange: light-dark(rgb(226 85 7), rgb(251 106 34));
  --green: light-dark(rgb(0 162 64), rgb(64 201 119));
  --red: light-dark(rgb(224 46 42), rgb(255 103 100));
  --purple: light-dark(rgb(146 79 247), rgb(173 123 249));
  --yellow: light-dark(rgb(255 195 0), rgb(255 210 64));
  --viz-series-1: var(--primary);
  --viz-series-2: light-dark(rgb(243 136 59), rgb(245 154 86));
  --viz-series-3: light-dark(rgb(93 201 119), rgb(116 213 139));
  --viz-series-4: light-dark(rgb(235 119 177), rgb(240 143 192));
  --viz-series-5: light-dark(rgb(155 121 236), rgb(170 145 239));
  --viz-series-6: light-dark(rgb(58 185 177), rgb(90 203 194));

  /* Internal implementation variables; not part of the agent contract. */
  --font-sans: -apple-system, system-ui, "Segoe UI", sans-serif;
  --font-mono:
    ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono",
    monospace;
  --font-size-normal: max(11px, var(--font-size-base));
  --font-size-tooltip: calc(var(--font-size-base) - 1px);
  --font-size-small: max(11px, calc(var(--font-size-base) - 2px));
  --font-size-h1: calc(var(--font-size-normal) * 1.7142857143);
  --font-size-h2: calc(var(--font-size-normal) * 1.4285714286);
  --font-size-h3: calc(var(--font-size-normal) * 1.2857142857);
  --font-weight-normal: 430;
  --font-weight-medium: 500;
  --icon-size: 16px;
  --line-height-normal: calc(var(--font-size-normal) * 1.5);
  --line-height-tooltip: calc(var(--font-size-tooltip) * 1.4285714286);
  --line-height-small: calc(var(--font-size-small) + 4px);
  --corner-shape: round;
  --radius: var(--border-radius-lg, 10px);
  --radius-sm: calc(var(--radius) * 0.6);
  --radius-md: calc(var(--radius) * 0.8);
  --radius-lg: var(--radius);
  --radius-2xl: calc(var(--radius) * 1.6);
  --radius-full: 9999px;
  --shadow-sm: 0 1px 2px -1px rgb(0 0 0 / 8%);
  --checkmark-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 17'%3E%3Cpath d='M12.8961 3.64101C13.1297 3.41418 13.4984 3.37523 13.7779 3.56581C14.0571 3.75635 14.1554 4.11331 14.0299 4.41347L13.9615 4.53847L7.71151 13.7045C7.59411 13.8767 7.4063 13.9877 7.19881 14.0072C6.99136 14.0267 6.78564 13.9533 6.63826 13.806L2.88826 10.056L2.79842 9.9457C2.6192 9.67407 2.64927 9.30496 2.88826 9.06581C3.12738 8.82669 3.49647 8.79676 3.76815 8.97597L3.8785 9.06581L7.03084 12.2182L12.8053 3.74941L12.8961 3.64101Z'/%3E%3C/svg%3E");

  /* Legacy aliases; not part of the current agent contract. */
  --viz-bg: transparent;
  --viz-panel: var(--card);
  --viz-border: var(--border);
  --viz-text: var(--foreground);
  --viz-muted: var(--muted-foreground);
  --viz-accent: var(--primary);
  --viz-accent-text: var(--primary-foreground);
  --viz-accent-bg: var(--accent);
  --viz-font-size: var(--font-size-base);
  --viz-warning: var(--destructive);
}

:root[data-theme="light"] {
  color-scheme: light;
}

:root[data-theme="dark"] {
  color-scheme: dark;
}

* {
  box-sizing: border-box;
}

html > body {
  /* Preserve MCP aliases for older inline renderers without creating :root cycles. */
  --color-background-primary: var(
    --background,
    light-dark(rgb(255 255 255), rgb(24 24 24))
  );
  --color-text-primary: var(
    --foreground,
    light-dark(rgb(26 28 31), rgb(255 255 255))
  );
  --color-border-secondary: var(
    --border,
    light-dark(rgb(26 28 31 / 8%), rgb(255 255 255 / 8.2%))
  );

  margin: 0;
  padding: var(--visualize-paint-gutter, 0px);
  color: var(--foreground);
  background: transparent !important;
  font-family: var(--font-sans) !important;
  font-size: var(--font-size-normal);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-normal);
}

.cursor-interaction {
  cursor: var(--cursor-interaction, pointer);
}

a {
  color: color-mix(in srgb, var(--viz-accent) 80%, var(--viz-text) 20%);
  cursor: var(--cursor-interaction, pointer);
  font-weight: var(--font-weight-medium, 500);
  text-decoration: none;
  text-underline-offset: 2px;
}

a:is(:hover, :focus-visible) {
  text-decoration-line: underline;
  text-decoration-style: dashed;
  text-decoration-thickness: 0.5px;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin-block: 0;
}

h1 {
  font-size: var(--font-size-h1);
  font-weight: var(--font-weight-medium);
  line-height: 1.25;
}

h2 {
  font-size: var(--font-size-h2);
  font-weight: var(--font-weight-medium);
  line-height: 1.25;
}

h3,
h4,
h5,
h6 {
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-medium);
  line-height: 1.3;
}

b,
strong,
th {
  font-weight: var(--font-weight-medium);
}

code:not(pre code) {
  display: inline;
  padding: 1px 6px;
  border-radius: var(--radius-sm);
  corner-shape: var(--corner-shape);
  background: var(--muted);
  font-family: var(--font-mono);
  font-size: 0.92em;
  overflow-wrap: anywhere;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  word-break: break-word;
}

.table-responsive {
  width: 100%;
  overflow-x: auto;
  scrollbar-width: thin;
}

.table {
  width: 100%;
  border-collapse: collapse;
  color: var(--foreground);
  font: inherit;
  text-align: start;
}

.table :is(th, td) {
  padding-block: 10px;
  padding-inline: 0 24px;
  overflow-wrap: anywhere;
  border-bottom: 1px solid var(--border);
  text-align: start;
  vertical-align: top;
}

.table-responsive > .table :is(th, td) {
  overflow-wrap: break-word;
}

.table :is(th, td):last-child {
  padding-inline-end: 0;
}

.table :is(caption, thead th) {
  font-weight: 600;
}

.table thead th {
  padding-block: 8px;
  border-bottom-color: color-mix(in srgb, var(--foreground) 16%, transparent);
}

.table tbody tr:last-child :is(th, td) {
  border-bottom: 0;
}

.table.table-sm :is(th, td) {
  padding-block: 6px;
}

.table.table-sm :is(th, td):not(:last-child) {
  padding-inline-end: 16px;
}

.table :is(.text-end, [align="right"]) {
  text-align: end;
  font-variant-numeric: tabular-nums;
}

.table :is(.text-center, [align="center"]) {
  text-align: center;
}

.table .text-nowrap {
  white-space: nowrap;
}

#widget {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  padding: 0;
  background: transparent !important;
}

.card {
  min-width: 0;
  padding: 12px;
  overflow: hidden;
  overflow-wrap: break-word;
  border-radius: var(--radius-2xl);
  corner-shape: var(--corner-shape);
  color: var(--card-foreground);
  background: var(--card);
}

.widget {
  min-width: 0;
  overflow: hidden;
  border: 0;
  border-radius: var(--radius-lg);
  corner-shape: var(--corner-shape);
  box-shadow: 0 0 0 0.5px var(--border-strong, var(--border));
  color: var(--foreground);
  background: var(--background);
}

#widget > :not(.card, .widget, .progress) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.tooltip {
  position: fixed;
  z-index: 50;
  top: 0;
  left: 0;
  width: max-content;
  max-width: min(
    20rem,
    var(--tooltip-available-width, calc(100vw - 10px)),
    calc(100vw - 10px)
  );
  max-height: min(
    var(--tooltip-available-height, calc(100vh - 10px)),
    calc(100vh - 10px)
  );
  padding: 4px 8px;
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  corner-shape: var(--corner-shape);
  color: var(--popover-foreground);
  background: var(--popover);
  box-shadow: none;
  font-size: var(--font-size-tooltip);
  line-height: var(--line-height-tooltip);
  overflow-wrap: break-word;
  white-space: normal;
  pointer-events: none;
  user-select: none;
}

.viz-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(max(180px, 24%), 1fr));
  gap: 10px;
}

.viz-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.viz-stat-value {
  font-size: var(--font-size-h2);
  font-weight: var(--font-weight-medium);
  line-height: 1.25;
}

.viz-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

hr {
  width: 100%;
  height: 1px;
  margin-block: 6px;
  border: 0;
  background: var(--border);
}

.nav {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 4px;
}

.progress {
  display: flex;
  height: 8px;
  margin-block: calc((var(--line-height-normal, 1.5em) - 8px) / 2);
  overflow: hidden;
  border: 0;
  border-radius: var(--radius-full);
  background: var(--muted);
}

.progress-bar:only-child {
  border-radius: var(--radius-full);
}

.progress-bar {
  height: 100%;
  flex-shrink: 0;
  border: 0;
  background: var(--viz-series-1);
}

.viz-badge {
  padding: 3px 8px;
  border-radius: var(--radius-full);
  color: var(--accent-foreground);
  background: var(--accent);
  font-weight: var(--font-weight-medium);
}

small,
.text-small,
.viz-badge {
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
}

.text-muted {
  color: var(--muted-foreground);
}

.tabular-nums {
  font-variant-numeric: tabular-nums;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.viz-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.viz-controls > .form-label {
  display: grid;
  min-width: min(100%, 260px);
  flex: 1 1 280px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: baseline;
  gap: 2px 12px;
  margin-bottom: 0;
}

.viz-controls > .form-label > :is(.form-control, .form-range, .form-select) {
  grid-column: 1 / -1;
}

.btn,
.nav-link,
.form-check-input,
.form-control,
.form-range,
.form-select {
  font: inherit;
}

.btn,
.nav-link {
  appearance: button;
  display: inline-flex;
  inline-size: fit-content;
  max-inline-size: 100%;
  min-height: 28px;
  align-items: center;
  justify-content: center;
  gap: 4px;
  margin: 0;
  padding: 0 8px;
  -webkit-app-region: no-drag;
  border: 1px solid var(--input);
  border-radius: var(--radius-lg);
  corner-shape: var(--corner-shape);
  color: var(--secondary-foreground);
  background: var(--secondary);
  cursor: var(--cursor-interaction, pointer);
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  user-select: none;
  -webkit-font-smoothing: antialiased;
}

.btn:is(.btn-block, .viz-tile) {
  inline-size: 100%;
}

.btn.viz-tile {
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

a.btn {
  cursor: var(--cursor-interaction, pointer);
  text-decoration: none;
}

.btn:not(:disabled):hover,
.nav-link:not(:disabled):not([aria-disabled="true"]):hover {
  background: color-mix(in srgb, var(--foreground) 6%, var(--secondary));
}

.btn-primary {
  border-color: transparent;
  color: var(--primary-foreground);
  background: var(--foreground);
  background-clip: padding-box;
}

.btn-primary .text-muted {
  color: color-mix(in srgb, var(--primary-foreground) 50%, transparent);
}

.btn-primary:not(:disabled):hover {
  background: color-mix(in srgb, var(--foreground) 80%, transparent);
  background-clip: padding-box;
}

.btn-ghost {
  border-color: transparent;
  color: var(--muted-foreground);
  background: transparent;
}

.btn-ghost:not(:disabled):hover {
  color: var(--foreground);
  background: color-mix(in srgb, var(--foreground) 6%, var(--secondary));
}

.nav-pills .nav-link {
  min-width: 0;
  border-color: transparent;
  color: var(--muted-foreground);
  background: transparent;
}

.nav-justified .nav-link {
  flex: 1 1 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

.nav-pills .nav-link.active {
  color: var(--foreground);
  background: var(--muted);
}

/* Shared preview chrome; product styles stay inside each variant. */
.viz-dotted-background {
  background-image: radial-gradient(
    circle,
    color-mix(in srgb, var(--foreground) 14%, transparent) 0.8px,
    transparent 0.8px
  );
  background-position: center;
  background-size: 16px 16px;
}

.viz-carousel {
  position: relative;
  min-width: 0;
}

.viz-carousel:has(> .viz-carousel-controls) {
  min-height: calc(60px + var(--viz-carousel-picker-height, 0px));
  padding-bottom: 60px;
}

.viz-carousel > [data-variant][hidden] {
  display: none !important;
}

.viz-carousel > [data-variant] {
  isolation: isolate;
}

.viz-carousel-controls {
  --viz-carousel-hover: light-dark(
    color-mix(in srgb, var(--foreground) 5.4%, transparent),
    color-mix(in srgb, var(--foreground) 7.8%, transparent)
  );
  position: absolute;
  z-index: 2;
  bottom: 8px;
  left: 50%;
  display: flex;
  width: max-content;
  /* Leave room for the host's design-controls launcher at the trailing edge. */
  max-width: calc(100% - 96px);
  align-items: center;
  gap: 0;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 16px;
  color: var(--foreground);
  background: var(--background);
  font-family: var(--font-sans);
  /* Match the settings dropdown chrome independently of the content font size. */
  font-size: 13px;
  font-weight: var(--font-weight-normal);
  line-height: 18px;
  transform: translateX(-50%);
  user-select: none;
}

/* Keep authored mockup button styles out of the shared carousel chrome. */
.viz-carousel-controls button,
.viz-carousel-picker > summary {
  display: flex !important;
  height: auto !important;
  min-height: 30px;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px;
  padding: 0 6px !important;
  -webkit-app-region: no-drag;
  border: 0 !important;
  border-radius: 14px !important;
  color: inherit !important;
  background: transparent !important;
  font: inherit !important;
  -webkit-tap-highlight-color: transparent;
}

.viz-carousel-controls > button,
.viz-carousel-picker > summary {
  position: relative;
  isolation: isolate;
}

.viz-carousel-controls > button {
  --icon-size: 16px;
  width: 30px !important;
  padding: 0 !important;
}

.viz-carousel-picker > summary {
  padding-inline: 12px !important;
}

.viz-carousel-controls .viz-carousel-caret {
  width: 14px;
  height: 14px;
  flex: none;
  margin: 0;
  color: inherit;
  transform: rotate(180deg);
}

.viz-carousel-controls > button > svg,
.viz-carousel-controls .viz-carousel-caret,
.viz-carousel-count {
  opacity: 0.5;
}

.viz-carousel-controls > button::before,
.viz-carousel-picker > summary::before {
  position: absolute;
  z-index: -1;
  inset: 3px;
  border-radius: 12px;
  content: "";
  pointer-events: none;
}

.viz-carousel-controls > button:hover::before,
.viz-carousel-picker > summary:hover::before {
  background: var(--viz-carousel-hover);
}

.viz-carousel-controls > button,
.viz-carousel-controls [data-lucide],
.viz-carousel-controls .lucide {
  flex-shrink: 0;
}

.viz-carousel-picker {
  min-width: 0;
}

.viz-carousel-picker > summary {
  min-width: 0;
  list-style: none;
}

.viz-carousel-picker > summary::-webkit-details-marker {
  display: none;
}

.viz-carousel-count {
  flex-shrink: 0;
  white-space: nowrap;
}

.viz-carousel-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.viz-carousel-options {
  position: absolute;
  right: 0;
  bottom: calc(100% + 4px);
  left: 0;
  display: flex;
  max-height: 240px;
  flex-direction: column;
  gap: 2px;
  overflow: auto;
  padding: 4px;
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  background: var(--background);
  box-shadow: 0 4px 12px light-dark(rgb(0 0 0 / 6%), rgb(0 0 0 / 25%));
}

.viz-carousel-options > button {
  border-radius: max(0px, calc(var(--radius-lg) - 5px)) !important;
  width: 100% !important;
  min-height: 28px;
  justify-content: flex-start !important;
  padding: 4px 8px !important;
  font-size: var(--font-size-small) !important;
  text-align: start;
  white-space: normal;
  overflow-wrap: anywhere;
}

.viz-carousel-options > [aria-current="true"],
.viz-carousel-options > button:hover {
  background: var(--viz-carousel-hover) !important;
}

.btn:disabled,
.nav-link:disabled,
.nav-link[aria-disabled="true"] {
  cursor: not-allowed;
  opacity: 0.4;
}

[data-lucide] {
  stroke-width: 1.6;
}

.form-label {
  display: block;
  margin-bottom: 6px;
  color: var(--foreground);
}

.form-control {
  display: block;
  width: 100%;
  min-height: 28px;
  padding: 0 8px;
  outline: none;
  border: 1px solid var(--input);
  border-radius: var(--radius-lg);
  corner-shape: var(--corner-shape);
  color: var(--foreground);
  background: var(--secondary);
}

.form-control::placeholder {
  color: var(--muted-foreground);
}

.form-control[type="file"] {
  padding: 0;
  overflow: hidden;
  cursor: var(--cursor-interaction, pointer);
}

.form-control[type="file"]::file-selector-button {
  min-height: 26px;
  margin-right: 8px;
  padding: 0 8px;
  border: 0;
  border-right: 1px solid var(--input);
  color: var(--secondary-foreground);
  background: var(--secondary);
  cursor: inherit;
  font: inherit;
}

.form-control[type="file"]:not(:disabled):hover::file-selector-button {
  background: color-mix(in srgb, var(--foreground) 6%, var(--secondary));
}

.form-control-color[type="color"] {
  width: 40px;
  height: 28px;
  padding: 3px;
  cursor: var(--cursor-interaction, pointer);
}

.form-control-color[type="color"]::-webkit-color-swatch-wrapper {
  padding: 0;
}

.form-control-color[type="color"]::-webkit-color-swatch {
  border: 0;
  border-radius: calc(var(--radius-lg) - 4px);
  corner-shape: var(--corner-shape);
}

textarea.form-control {
  height: auto;
  min-height: 72px;
  padding: 8px 10px;
  resize: vertical;
}

.form-control:focus-visible {
  border-color: var(--ring);
  box-shadow: inset 0 0 0 1px var(--ring);
}

.form-control:disabled,
.form-select:disabled {
  cursor: not-allowed;
  opacity: 0.4;
}

.form-select {
  appearance: none;
  display: block;
  width: 100%;
  min-height: 28px;
  margin: 0;
  padding: 0 32px 0 8px;
  outline: none;
  border: 1px solid var(--input);
  border-radius: var(--radius-lg);
  corner-shape: var(--corner-shape);
  color: var(--foreground);
  background-color: var(--secondary);
  background-image:
    linear-gradient(45deg, transparent 50%, var(--muted-foreground) 50%),
    linear-gradient(135deg, var(--muted-foreground) 50%, transparent 50%);
  background-position:
    calc(100% - 14px) 50%,
    calc(100% - 10px) 50%;
  background-repeat: no-repeat;
  background-size: 4px 4px;
  cursor: var(--cursor-interaction, default);
}

.form-select:not(:disabled):hover {
  background-color: color-mix(in srgb, var(--foreground) 6%, var(--secondary));
}

.form-select:focus-visible {
  border-color: var(--ring);
  box-shadow: inset 0 0 0 1px var(--ring);
}

.form-check {
  display: flex;
  min-height: 20px;
  align-items: center;
  gap: 6px;
}

.form-check-input {
  appearance: none;
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
  margin: 0;
  border: 1px solid var(--input);
  color: var(--primary-foreground);
  background-color: transparent;
  cursor: var(--cursor-interaction, default);
  transition:
    background-color 150ms,
    border-color 150ms,
    box-shadow 150ms;
}

.form-check:not(.form-switch) .form-check-input[type="checkbox"] {
  border-color: var(--input);
  border-radius: var(--radius-sm);
  corner-shape: var(--corner-shape);
  background-color: var(--secondary);
  box-shadow: var(--shadow-sm);
}

.form-check:not(.form-switch)
  .form-check-input:not(:disabled):not(:checked):hover {
  background-color: var(--card);
}

.form-check:not(.form-switch) .form-check-input[type="checkbox"]:checked {
  border-color: var(--primary);
  background-color: var(--primary);
}

.form-check:not(.form-switch)
  .form-check-input[type="checkbox"]:checked::before {
  display: block;
  width: 100%;
  height: 100%;
  background: var(--primary-foreground);
  content: "";
  mask: var(--checkmark-image) center / 12px 12px no-repeat;
}

.form-check-input[type="radio"] {
  width: 14px;
  height: 14px;
  border-radius: var(--radius-full);
}

.form-check-input[type="radio"]:checked {
  border: 2px solid var(--primary);
  background:
    radial-gradient(circle, var(--primary-foreground) 0 2.5px, transparent 3px),
    var(--primary);
}

.form-check:not(.form-switch) .form-check-input:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}

.form-check:not(.form-switch) .form-check-input:disabled {
  cursor: not-allowed;
  pointer-events: none;
}

.form-check:not(.form-switch) .form-check-input:disabled + .form-check-label {
  cursor: not-allowed;
}

.form-switch .form-check-input:disabled,
.form-switch .form-check-input:disabled + .form-check-label {
  cursor: not-allowed;
  opacity: 0.6;
}

.form-check-label {
  color: var(--foreground);
  cursor: var(--cursor-interaction, default);
}

.form-switch .form-check-input {
  position: relative;
  width: 32px;
  height: 20px;
  border: 0;
  border-radius: var(--radius-full);
  background: var(--muted);
  box-shadow: none;
  transition: background-color 200ms cubic-bezier(0, 0, 0.2, 1);
}

.form-switch .form-check-input::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 16px;
  height: 16px;
  box-sizing: border-box;
  border: 1px solid light-dark(var(--primary-foreground), var(--foreground));
  border-radius: var(--radius-full);
  background: light-dark(var(--primary-foreground), var(--foreground));
  box-shadow: var(--shadow-sm);
  content: "";
  transform: translate(2px, -50%);
  transition: transform 200ms cubic-bezier(0, 0, 0.2, 1);
}

.form-switch .form-check-input:checked {
  background: var(--primary);
}

.form-switch .form-check-input:checked::before {
  transform: translate(14px, -50%);
}

.form-switch .form-check-input:focus-visible {
  box-shadow: 0 0 0 2px var(--ring);
}

.form-range {
  appearance: none;
  display: block;
  width: 100%;
  height: 28px;
  flex: 1;
  margin: 0;
  padding: 0;
  outline: none;
  border: 0;
  accent-color: var(--primary);
  background: linear-gradient(
      color-mix(in srgb, var(--foreground) 7%, transparent),
      color-mix(in srgb, var(--foreground) 7%, transparent)
    )
    center / 100% 2px no-repeat;
}

.form-range::-webkit-slider-runnable-track {
  height: 28px;
  background: transparent;
}

.form-range::-webkit-slider-thumb {
  appearance: none;
  width: 20px;
  height: 20px;
  margin-top: 4px;
  border: 1px solid var(--border);
  border-radius: var(--radius-full);
  background: light-dark(var(--primary-foreground), var(--foreground));
}

.form-range:focus-visible::-webkit-slider-thumb {
  border-color: var(--ring);
  box-shadow: inset 0 0 0 1px var(--ring);
}

.form-range::-moz-range-track {
  height: 28px;
  background: transparent;
}

.form-range::-moz-range-thumb {
  width: 20px;
  height: 20px;
  border: 1px solid var(--border);
  border-radius: var(--radius-full);
  background: light-dark(var(--primary-foreground), var(--foreground));
}

.form-range:focus-visible::-moz-range-thumb {
  border-color: var(--ring);
  box-shadow: inset 0 0 0 1px var(--ring);
}

.form-range:disabled {
  cursor: not-allowed;
  opacity: 0.4;
}

.btn:not(.btn-primary, .viz-tile):is(
  [aria-pressed="true"],
  [aria-selected="true"],
  .is-selected
) {
  border-color: var(--primary);
  color: var(--primary-foreground);
  background: var(--primary);
}

.btn.viz-tile:is([aria-pressed="true"], [aria-selected="true"], .is-selected) {
  border-color: var(--primary);
  box-shadow: inset 0 0 0 1px var(--primary);
}

.btn:focus-visible,
.nav-link:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}

.viz-carousel-controls :is(button, summary):focus-visible {
  outline: 2px solid var(--ring) !important;
  outline-offset: 2px !important;
}

@media (pointer: coarse) {
  .viz-carousel:has(> .viz-carousel-controls) {
    min-height: calc(76px + var(--viz-carousel-picker-height, 0px));
    padding-bottom: 76px;
  }

  .btn,
  .nav-link,
  .viz-carousel-controls button,
  .viz-carousel-picker > summary,
  .form-control,
  .form-select {
    min-width: 44px;
    min-height: 44px;
  }

  /* Keep small-screen WebKit from zooming when a text field receives focus. */
  .form-control,
  .form-select {
    font-size: max(16px, var(--font-size-normal));
  }

  .form-control[type="file"]::file-selector-button {
    min-width: 44px;
    min-height: 44px;
  }

  .form-control-color[type="color"] {
    width: 44px;
    height: 44px;
  }

  .form-control:is(
    [type="date"],
    [type="datetime-local"],
    [type="month"],
    [type="time"],
    [type="week"]
  ) {
    min-width: 0;
    max-width: 100%;
    padding-block: 8px;
  }

  .form-check {
    min-height: 44px;
    padding-inline: 15px;
  }

  .form-check-input {
    position: relative;
  }

  .form-check-input::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 44px;
    height: 44px;
    content: "";
    transform: translate(-50%, -50%);
  }

  .form-check-label {
    display: inline-flex;
    min-width: 44px;
    min-height: 44px;
    align-items: center;
  }

  .form-range {
    height: 44px;
    touch-action: pan-y;
  }

  .form-range::-webkit-slider-runnable-track {
    height: 44px;
  }

  .form-range::-moz-range-track {
    height: 44px;
  }

  .form-range::-webkit-slider-thumb {
    margin-top: 12px;
  }
}

svg {
  display: block;
  max-width: 100%;
  height: auto;
}

#widget > svg {
  width: 100%;
}

/* Model-authored chart rules can otherwise stretch icons after these styles load. */
svg.lucide {
  display: block;
  width: var(--icon-size) !important;
  height: var(--icon-size) !important;
  flex: none;
  margin: 0 !important;
  stroke-width: 1.6;
}

.text-warning,
.text-destructive {
  color: var(--destructive);
}

html>body{padding:0}
.pd-account{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:12px;background:#fff4d7;border:1px solid #e7d3a1;border-radius:10px;margin-bottom:22px;font-size:12px}.pd-account select{padding:6px;max-width:230px}.pd-dashboard-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.pd-dashboard-stats>div{background:#f2f6f3;padding:18px;border-radius:12px}.pd-dashboard-stats b{display:block;font-size:26px;margin-top:8px}.pd-project-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pd-project-card{padding:22px}.pd-card-title{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.pd-card-progress{display:flex;gap:14px;align-items:center;margin-top:20px}.pd-card-progress b{font-size:28px}.pd-project-card progress{width:100%;height:12px;accent-color:#26705b}.pd-card-cash{display:flex;gap:22px;padding-top:16px;border-top:1px solid #e5e7eb;margin-top:16px;flex-wrap:wrap}.pd-card-cash b{display:block;font-size:18px}.pd-cover{width:125px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:8px;border:1px dashed #b7c4bb;border-radius:9px;padding:8px;font-size:12px}.pd-cover img{width:108px;height:90px;object-fit:contain;border-radius:6px}.pd-cover-small{width:58px;height:58px;padding:3px;justify-content:center}.pd-cover-small img{width:52px;height:52px;object-fit:cover}.pd-detail-head{gap:18px;flex-wrap:wrap}.pd-vehicle-summary{margin:20px 0;padding:15px;background:#f7f9f7}.pd-vehicle-summary p{overflow-wrap:anywhere}@media(max-width:900px){.pd-project-cards{grid-template-columns:1fr}.pd-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.pd-dashboard-stats b{font-size:21px}.pd-project-card{padding:15px}}
.pd-cost-item{padding:16px 0;border-bottom:1px solid #dce5df}.pd-cost-line{display:grid;grid-template-columns:1.2fr .55fr 1fr .8fr .9fr .8fr auto;gap:10px;align-items:end}.pd-cost-line label{display:grid;gap:6px;font-size:13px}.pd-cost-line input{min-width:0;width:100%;box-sizing:border-box}.pd-cost-line strong{display:block}.pd-cost-totals{display:flex;gap:30px;flex-wrap:wrap;background:#eef5f0;padding:16px;margin:12px 0}.pd-cost-totals strong{display:block;font-size:22px}.pd-legacy-quotes{margin:18px 0}.pd-cost-item details{margin:12px 0}@media(max-width:1000px){.pd-cost-line{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:550px){.pd-cost-line{grid-template-columns:repeat(2,minmax(0,1fr))}}.pd-cost-fixed{display:grid;grid-template-columns:1.1fr 1fr 1fr .65fr 1.15fr .8fr .7fr .8fr 1fr;gap:10px;align-items:start}.pd-cost-fixed label{display:grid;gap:5px;font-size:12px}.pd-cost-fixed input{min-width:0;width:100%;box-sizing:border-box}.pd-cost-stacked{display:grid;gap:9px}.pd-cost-fixed strong{display:block;margin-top:10px}.pd-cost-fixed label input[type=number]{min-height:34px}@media(max-width:1200px){.pd-cost-fixed{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:550px){.pd-cost-fixed{grid-template-columns:repeat(2,minmax(0,1fr))}}.pd-cost-main-scroll{overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:9px}.pd-cost-main-scroll .pd-cost-fixed{min-width:1150px;grid-template-columns:1.1fr 1fr 1fr .65fr 1.15fr .8fr .7fr .8fr 1fr}.pd-assessment-panel{border:1px solid #dce5df;border-radius:8px;margin:12px 0;background:#fafcfb}.pd-assessment-panel>summary{padding:12px 16px;cursor:pointer;font-weight:600}.pd-assessment-panel-body{padding:0 16px 14px}.pd-cost-main-scroll .pd-cost-fixed{min-width:1050px;grid-template-columns:120px 110px 160px 62px 165px 85px 78px 83px minmax(110px,1fr);gap:8px}.pd-cost-price-group{display:flex;align-items:start;gap:7px;flex-wrap:wrap}.pd-cost-price-group>label:first-child{width:96px}.pd-cost-price-group>label.pd-material-inline{display:flex;align-items:center;gap:5px;width:155px;white-space:nowrap}.pd-material-inline input{width:92px!important}.pd-cost-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin:10px 0}.pd-cost-toolbar>span{margin-right:auto}.pd-cost-remove{color:#9b4139!important;background:transparent!important}.pd-bom-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px}.pd-bom-preview{margin:14px 0;padding:16px;border:1px solid #91b6a0;border-radius:8px;background:#f4f9f6}.pd-cost-price-group input[type=number]{width:96px!important}.pd-cost-main-scroll .pd-cost-fixed{min-width:1010px;grid-template-columns:100px 100px 80px 82px 48px 85px 82px 75px 55px 48px minmax(85px,1fr);gap:7px;align-items:start}.pd-cost-fixed>label{min-width:0;white-space:nowrap}.pd-cost-fixed>label input{padding:5px 4px;font-size:12px;width:100%;min-width:0}.pd-cost-fixed input[type=number]{min-height:30px}.pd-cost-fixed>div>strong{font-size:14px}.pd-bom-actions-right{justify-content:flex-end;width:100%;box-sizing:border-box}.pd-bom-actions-right>button{margin-left:4px;flex-shrink:0}.pd-cost-main-scroll .pd-cost-fixed{min-width:900px;grid-template-columns:100px 100px 64px 68px 48px 85px 68px 75px 55px 48px minmax(85px,1fr);column-gap:5px}.pd-cost-fixed input[data-cost-field="price"],.pd-cost-fixed input[data-cost-field="productMaterial"],.pd-cost-fixed input[data-cost-field="moldMaterial"]{font-size:12px;transition:font-size .08s ease}.pd-cost-fixed>label{font-size:11px}#pd-control .pd-editor .pd-cost-fixed>label{font-size:11px;gap:4px}#pd-control .pd-editor .pd-cost-fixed>label input:not([type="checkbox"]){padding:5px 4px;font-size:12px;min-width:0;width:100%;box-sizing:border-box}.pd-cost-sheet-scroll{overflow-x:auto;overscroll-behavior-x:contain}.pd-cost-sheet{min-width:1096px}.pd-cost-sheet .pd-cost-fixed,.pd-cost-column-head{display:grid;grid-template-columns:26px 95px 180px 90px 64px 68px 48px 85px 68px 75px 55px 48px 90px;column-gap:5px;min-width:1062px;align-items:center}.pd-cost-column-head{padding:8px 0;background:#f0f5f2;border-bottom:1px solid #dce5df;font-size:11px;color:#536359;white-space:nowrap}.pd-cost-sheet .pd-cost-item{padding:7px 0}.pd-cost-row-tools{display:flex;gap:2px;align-items:center}#pd-control .pd-cost-icon{font:inherit;font-size:19px;border:0;background:transparent;color:var(--pd-accent);width:22px;min-width:22px;padding:0;min-height:28px;cursor:pointer;border-radius:4px}#pd-control .pd-cost-icon:hover{background:var(--pd-active)}#pd-control .pd-cost-compare-toggle{font-size:11px;padding:6px 5px;white-space:nowrap;min-width:0}#pd-control .pd-cost-line-total strong{margin:0;font-size:13px}.pd-cost-hidden-summary{display:none}.pd-cost-comparison-body{padding:10px 12px;background:#f7faf8;border-radius:6px}.pd-cost-sheet .pd-cost-fixed>label{margin:0}.pd-cost-sheet details{margin:8px 0 0}.pd-cost-sheet details:not([open]){margin:0}.pd-cost-name-head{display:flex;align-items:center;gap:5px}.pd-cost-name-head .pd-cost-icon{font-size:18px!important}.pd-cost-empty{padding:12px 50px}.pd-cost-delete-dialog{position:fixed;margin:0;left:50%;top:20px;transform:translateX(-50%);width:390px;max-width:calc(100vw - 32px);box-sizing:border-box;border:1px solid #c5d1c8;border-radius:12px;padding:20px;background:#fff;color:#213c2c;box-shadow:0 12px 40px #0003;z-index:2147483647}.pd-cost-delete-dialog{max-height:calc(100vh - 24px);overflow:auto}.pd-cost-delete-dialog::backdrop{background:#172a204d}.pd-cost-delete-dialog h3{margin:0 0 12px}.pd-cost-delete-dialog p{white-space:normal;overflow-wrap:anywhere}.pd-cost-delete-dialog .pd-form-actions{justify-content:flex-end;margin-top:18px}.pd-major-heading{font-size:20px!important;margin:0 0 16px!important;color:#234d3c}.pd-item-number{font-size:11px;color:#6b7f72;font-weight:500;white-space:nowrap;margin-right:4px}.pd-cost-row-tools .pd-item-number{font-size:10px;min-width:34px;margin:0}.pd-cost-row-tools{gap:3px}
/* Center entered values only; parameter labels and action controls retain layout. */
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td{vertical-align:middle}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td input:not([type=checkbox]):not([type=file]),#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td textarea{text-align:center}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-source{text-align:center}
#pd-control [data-ai-vehicle-source] .pd-control-button{min-height:22px;padding:2px 6px;margin:0 0 0 4px;font-size:11px;line-height:16px}
#pd-control [data-ai-restore-vehicle][hidden]{display:none!important}
/* Direct SKU white-background product image upload. */
#pd-control .pd-ai-white-upload{display:block;width:100%;min-height:190px;padding:12px 10px;margin:0 0 8px;background:#fafcfd;border:1px dashed #b8cbd6;border-radius:7px;text-align:center;color:#3b6177;cursor:pointer;white-space:normal}
#pd-control .pd-ai-white-upload:hover:not(:disabled){border-color:#28739c;background:#f2f8fc}
#pd-control .pd-ai-white-upload:focus-visible{outline:3px solid #4b91c0;outline-offset:2px}
#pd-control .pd-ai-white-upload:disabled{cursor:default;opacity:.65}
#pd-control .pd-ai-white-upload .pd-ai-appearance{min-height:122px;margin-bottom:8px}
#pd-control .pd-ai-white-upload .pd-ai-appearance:empty{border:0;background:transparent;min-height:112px}
#pd-control .pd-ai-white-upload .pd-ai-appearance:empty:before{content:'＋';font-size:32px;color:#8daaba;font-weight:300}
#pd-control .pd-ai-white-upload-label{display:block;font-size:13px;font-weight:600}
#pd-control .pd-ai-white-upload>small{display:block;margin-top:5px;font-size:10px;color:#8293a0}


/* Individual SKU selling point boxes */
#pd-control .pd-ai-point-editor{width:100%;max-width:640px;margin:0 auto;text-align:center}
#pd-control .pd-ai-point-row{display:grid;grid-template-columns:18px minmax(0,1fr) 30px;align-items:center;gap:5px;margin-bottom:7px}
#pd-control .pd-ai-point-number{font-size:11px;color:#7b8794}
#pd-control .pd-ai-parameter-brief .pd-ai-point-row textarea{width:100%;min-height:54px;resize:vertical;text-align:center}
#pd-control .pd-ai-point-actions{display:flex;flex-direction:column;align-items:center;gap:4px;align-self:start}
#pd-control .pd-ai-point-actions .pd-ai-point-remove,#pd-control .pd-ai-point-actions .pd-ai-point-add{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:28px;height:28px;min-width:28px;min-height:28px;margin:0;padding:0;font-size:18px;line-height:1}
#pd-control .pd-ai-point-confirm{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;padding:8px;background:#fff5e8;border-radius:6px;font-size:12px}
#pd-control .pd-ai-point-editor [data-ai-point-error]{display:block;margin:5px 0;font-size:11px}
#pd-control .pd-ai-point-editor [data-ai-point-error][hidden]{display:none}

/* Editable output requirements: fold only presentation, retain successful form controls. */
#pd-control .pd-ai-output-editor{width:100%;max-width:1080px;margin:0 auto;text-align:left}
#pd-control .pd-ai-output-editor>summary{cursor:pointer;color:#335c70;font-size:12px;line-height:1.6;padding:5px 0;overflow-wrap:anywhere}
#pd-control .pd-ai-output-editor>summary:focus-visible{outline:2px solid #1685cc;outline-offset:3px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td .pd-ai-output-editor textarea{text-align:left;min-height:250px;max-height:560px;resize:vertical;line-height:1.6;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}
#pd-control .pd-ai-output-editor [data-ai-output-confirm]{margin-top:8px;padding:8px;background:#fff4dc;border:1px solid #e6c982;border-radius:6px;font-size:12px}
#pd-control .pd-ai-output-editor [data-ai-output-confirm][hidden]{display:none}
#pd-control .pd-ai-output-editor .pd-control-button{margin:5px 4px 0 0}
/* Editable output requirement grid: scoped to the nested editor only. */
#pd-control .pd-ai-output-editor{min-width:0;max-width:1180px}
#pd-control .pd-ai-output-editor .pd-ai-output-scroll{width:100%;max-width:100%;overflow-x:auto;border:1px solid #dbe4eb;border-radius:7px;margin:8px 0}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-output-editor .pd-ai-output-grid{table-layout:fixed;width:100%;min-width:880px;margin:0;border-collapse:collapse;background:#fff}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-output-editor .pd-ai-output-grid th,#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-output-editor .pd-ai-output-grid td{position:static;width:auto;min-width:0;max-width:none;padding:5px;vertical-align:top;text-align:left;border:1px solid #e2e8ee;background:#fff;white-space:normal}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-output-editor .pd-ai-output-grid th{background:#eaf0f5;color:#385261;font-size:11px;font-weight:600}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td .pd-ai-output-editor .pd-ai-output-grid textarea{box-sizing:border-box;width:100%;min-width:0;min-height:38px;height:48px;max-height:160px;padding:5px 6px;font-size:12px;line-height:1.45;text-align:left;resize:vertical;border:1px solid #d7e0e7;border-radius:4px;white-space:pre-wrap;overflow-wrap:anywhere}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td .pd-ai-output-editor .pd-ai-output-grid textarea:focus{outline:2px solid #1685cc;outline-offset:1px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-output-editor .pd-ai-output-grid textarea[aria-invalid="true"]{border-color:#b42e30;background:#fff5f5}
#pd-control .pd-ai-output-editor .pd-ai-output-grid .pd-control-button{font-size:11px;padding:4px 5px;margin:3px 0;min-width:0;white-space:nowrap}
#pd-control .pd-ai-output-editor .pd-ai-output-notes{display:block;margin-top:8px;font-size:12px;text-align:left}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td .pd-ai-output-editor textarea[data-ai-output-notes]{min-height:54px;height:62px;max-height:180px;font-size:12px;line-height:1.5;padding:7px;box-sizing:border-box}
#pd-control .pd-ai-output-editor [data-ai-output-count]{font-size:11px;margin:5px 0}
#pd-control .pd-ai-output-editor [data-ai-output-cell-error]{display:block;font-size:10px;line-height:1.3;margin-top:3px}
#pd-control .pd-ai-output-editor [hidden]{display:none!important}
@media(max-width:760px){#pd-control .pd-ai-output-editor .pd-ai-output-scroll{max-width:calc(100vw - 100px)}#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-output-editor .pd-ai-output-grid{min-width:880px}}

#pd-control .pd-ai-reference-editor{width:100%;min-width:260px;max-width:1000px;margin:auto;text-align:left}
#pd-control .pd-ai-reference-toolbar{display:flex;justify-content:space-between;align-items:start;gap:8px;margin-bottom:5px}
#pd-control .pd-ai-reference-toolbar>.pd-control-button{margin:0;font-size:11px;padding:4px 7px;white-space:nowrap}
#pd-control .pd-ai-reference-help{font-size:11px;max-width:320px;text-align:right;color:#637482}
#pd-control .pd-ai-reference-help summary{cursor:pointer;white-space:nowrap}
#pd-control .pd-ai-reference-help p,#pd-control .pd-ai-reference-help small{text-align:left;line-height:1.6;margin:5px 0;display:block}
#pd-control .pd-ai-reference-scroll{width:100%;overflow-x:auto}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-reference-grid{width:100%;min-width:260px;table-layout:fixed;border-collapse:collapse;margin:0;background:#fff}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-reference-grid th,#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-reference-grid td{position:static;width:50%;min-width:0;max-width:none;padding:5px;text-align:left;vertical-align:top;border:1px solid #dfe6ec;white-space:normal;background:#fff}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-reference-grid th{background:#eef3f7;font-size:11px;font-weight:600;color:#385261}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td .pd-ai-reference-editor textarea{box-sizing:border-box;width:100%;min-width:0;height:58px;min-height:44px;max-height:180px;padding:6px;text-align:left;font-size:12px;line-height:1.5;resize:vertical;overflow-wrap:anywhere;white-space:pre-wrap}
#pd-control .pd-ai-reference-remove{display:block;margin:3px 0 0 auto;font-size:10px;padding:2px 5px}
#pd-control .pd-ai-reference-editor [data-ai-reference-confirm]{padding:7px;margin-top:5px;border:1px solid #e6c982;border-radius:5px;background:#fff4dc;font-size:12px}
#pd-control .pd-ai-reference-editor [hidden]{display:none!important}

.pd-erp-shared-numbers{display:flex;gap:8px}.pd-erp-shared-numbers>label{flex:1;min-width:0;font-size:11px;color:var(--muted)}.pd-erp-shared-numbers input{width:100%;box-sizing:border-box}.pd-erp-inline-source{margin-top:7px;font-size:11px}.pd-erp-inline-source summary{cursor:pointer;color:var(--muted)}.pd-erp-inline-source small,.pd-erp-matrix-row td>small,.pd-erp-shared-numbers+small{display:block;margin-top:5px}.pd-erp-matrix-row output{font-variant-numeric:tabular-nums;font-weight:600}.pd-erp-matrix-row th>small{display:block}

/* Full project-material subsections share the existing saved fold convention. */
#pd-control .pd-material-section-fold{margin:16px 0;border:1px solid #dce5df;border-radius:8px;background:#fff;min-width:0}
#pd-control .pd-material-section-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;padding:13px 16px;user-select:none}
#pd-control .pd-material-section-fold>summary::-webkit-details-marker{display:none}
#pd-control .pd-material-section-fold>summary>h3{margin:0;font-size:16px;color:#234d3c}
#pd-control .pd-material-fold-hint{font-size:12px;color:#60766a;flex-shrink:0}
#pd-control .pd-material-fold-hint:before{content:'展开 ▾'}
#pd-control .pd-material-section-fold[open]>summary>.pd-material-fold-hint:before{content:'收起 ▴'}
#pd-control .pd-material-section-fold[open]>summary{border-bottom:1px solid #dce5df}
#pd-control .pd-material-section-body{padding:0 16px 16px;min-width:0}
#pd-control .pd-material-section-body>.pd-ai-brief{margin:14px 0 0}
#pd-control .pd-material-section-body>.pd-photo-section{margin:14px 0 0;padding-top:0;border-top:0}
#pd-control .pd-material-section-body>.pd-file-upload{margin-top:14px}
@media(max-width:760px){#pd-control .pd-material-section-fold>summary{padding:12px}#pd-control .pd-material-section-body{padding:0 10px 12px}}

#pd-control .pd-nav button[hidden]{display:none}
/* SKU material matrix */
.pd-photo-matrix-scroll{overflow:auto;border:1px solid #d9e1e9;border-radius:8px;margin:12px 0}.pd-photo-matrix{border-collapse:separate;border-spacing:0;min-width:100%;table-layout:fixed}.pd-photo-matrix th,.pd-photo-matrix td{border-right:1px solid #e0e6eb;border-bottom:1px solid #e0e6eb;padding:12px;vertical-align:top;min-width:240px;width:280px}.pd-photo-matrix thead th{background:#edf3f7;text-align:center;position:sticky;top:0;z-index:2}.pd-photo-matrix th:first-child{min-width:155px;width:180px;position:sticky;left:0;background:#f6f8fa;z-index:1}.pd-photo-matrix thead th:first-child{z-index:3}.pd-photo-matrix th small{display:block;font-weight:400;margin-top:4px}.pd-photo-matrix th>.pd-control-button{display:block;margin-top:8px}.pd-photo-matrix-cell{display:flex;flex-direction:column;gap:9px;max-width:600px;margin:auto}.pd-photo-matrix-cell input,.pd-photo-matrix-cell select,.pd-photo-matrix-cell textarea,.pd-photo-row-details textarea{max-width:100%;box-sizing:border-box}.pd-photo-matrix-cell textarea,.pd-photo-row-details textarea{width:100%}.pd-photo-matrix-cell details{font-size:12px;font-weight:400}.pd-photo-row-details{font-size:12px;font-weight:400;margin-top:12px}.pd-photo-row-details label{display:block;margin:7px 0}.pd-photo-matrix .pd-photo-count{display:flex;gap:8px;flex-wrap:wrap}.pd-photo-matrix .pd-photo-actions{display:flex;gap:6px;flex-wrap:wrap}.pd-photo-matrix .pd-photo-file{overflow-wrap:anywhere}.pd-photo-matrix .pd-photo-hidden-file{display:none}

/* Compact combined project and vehicle assessment */
#pd-control .pd-assessment-intro .pd-intro-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px;margin:0}
#pd-control .pd-editor .pd-assessment-intro .pd-intro-grid>label{min-width:0;display:grid;align-content:start;gap:4px;font-size:12px}
#pd-control .pd-editor .pd-assessment-intro input,#pd-control .pd-editor .pd-assessment-intro select{box-sizing:border-box;min-width:0;width:100%;min-height:34px;padding:6px 8px;font-size:13px}
#pd-control .pd-assessment-intro .pd-intro-help{margin-top:10px;font-size:12px;color:#64748b}
#pd-control .pd-assessment-intro .pd-intro-help>summary{cursor:pointer;width:fit-content}
#pd-control .pd-assessment-intro .pd-intro-help p{margin:6px 0;line-height:1.5}
#pd-control .pd-intro-status{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin:0 0 12px}
#pd-control .pd-intro-facts>div{min-width:0}
#pd-control .pd-intro-facts dt{color:#64748b;font-size:12px;line-height:1.4}
#pd-control .pd-intro-facts dd{margin:3px 0 0;font-size:13px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
#pd-control .pd-assessment-intro .pd-intro-note{margin:10px 0 0}
@media(max-width:1000px){#pd-control .pd-assessment-intro .pd-intro-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){#pd-control .pd-assessment-intro .pd-intro-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:460px){#pd-control .pd-assessment-intro .pd-intro-grid{grid-template-columns:minmax(0,1fr)}}

/* v75: compact native D category picker; editor appears only when requested. */
.pd-ai-sku-table [data-erp-row="D"] td{text-align:center;vertical-align:middle}
.pd-ai-sku-table [data-erp-row="D"] select[data-erp-category]{text-align:center;text-align-last:center}
.pd-ai-sku-table [data-erp-row="D"] select[data-erp-category] option{text-align:start}
.pd-erp-category-editor[hidden]{display:none!important}
.pd-erp-category-editor{max-width:360px;margin:8px auto 0;padding:8px;border:1px solid #cbd5e1;border-radius:8px;background:#f8fafc;text-align:center}
.pd-erp-category-editor>div{display:flex;justify-content:center;gap:6px;margin-top:6px}
.pd-erp-category-editor small{display:block;margin-top:6px}

/* V77: paired reference fields are rows in the SKU matrix, never nested tables. */
.pd-ai-reference-text-row td{min-width:0;vertical-align:top!important}
#pd-control .pd-ai-reference-editor,#pd-control .pd-ai-reference-description{min-width:0!important;width:100%;max-width:100%;margin:0}
.pd-ai-reference-line{display:flex;align-items:flex-start;gap:3px;min-width:0;width:100%;margin:0 0 4px}
.pd-ai-reference-line:last-child{margin-bottom:0}
.pd-ai-reference-line .pd-ai-reference-number{flex:0 0 auto;color:#758595;font-size:10px;line-height:30px;min-width:10px;text-align:center}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td .pd-ai-reference-line textarea[data-ai-reference-cell]{display:block;flex:1 1 0;width:0!important;min-width:0!important;max-width:100%;box-sizing:border-box;min-height:30px!important;height:30px;padding:5px 6px!important;line-height:18px!important;max-height:none!important;resize:none!important;overflow:hidden!important;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
#pd-control .pd-ai-reference-line .pd-control-button{flex:0 0 23px;width:23px;min-width:23px;height:28px;margin:0;padding:0!important;line-height:26px}
.pd-ai-reference-editor>[data-ai-reference-confirm]{font-size:12px;white-space:normal}

/* Compact working overview: slate typography, blue selection, meaningful status color. */
#pd-control .pd-overview-heading{align-items:center;margin-bottom:16px;gap:12px}#pd-control .pd-overview-heading h2{margin:0}#pd-control .pd-overview-heading .pd-form-actions{margin:0;gap:8px;flex-wrap:wrap}#pd-control .pd-overview-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 14px}#pd-control .pd-overview-filters label{min-width:0}#pd-control .pd-overview-search{flex:1 1 260px}#pd-control .pd-overview-filters input,#pd-control .pd-overview-filters select{box-sizing:border-box;max-width:100%;height:38px;padding:7px 10px;border:1px solid #d6dde5;background:#fff;border-radius:7px;color:#253347;font:inherit;font-size:14px}#pd-control .pd-overview-search input{width:100%}#pd-control .pd-overview-filters select{width:145px}#pd-control .pd-overview-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#pd-control .pd-overview-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}#pd-control .pd-overview-stat{min-width:0;text-align:left;border:1px solid #dce3eb;border-radius:9px;padding:12px 14px;background:#fff;color:#536277;cursor:pointer;font:inherit}#pd-control .pd-overview-stat>span{font-size:14px}#pd-control .pd-overview-stat b{display:block;font-size:26px;line-height:1.2;color:#24364d;margin-top:5px}#pd-control .pd-overview-stat small{font-size:12px;font-weight:400;margin-left:6px;color:#63748a}#pd-control .pd-overview-stat[aria-pressed=true]{border-color:#3273cb;background:#eff6ff;box-shadow:inset 0 3px #3273cb}#pd-control .pd-overview-stat:hover{border-color:#3273cb}#pd-control .pd-overview-stat:focus-visible,#pd-control .pd-overview-task:focus-visible{outline:3px solid #87b4ef;outline-offset:2px}#pd-control .pd-overview-attention{padding:14px 16px;margin-bottom:20px;border-color:#dde4ec;box-shadow:none}#pd-control .pd-overview-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px}#pd-control .pd-overview-section-head h3{font-size:16px;color:#26394f;margin:0}#pd-control .pd-overview-section-head h3 span{font-size:13px;background:#edf1f6;border-radius:12px;padding:2px 8px;margin-left:6px}#pd-control .pd-overview-section-head>span{font-size:12px;color:#6b7789}#pd-control .pd-overview-task{display:grid;grid-template-columns:94px minmax(0,1fr) 72px 120px;gap:12px;align-items:center;width:100%;padding:9px 0;border:0;border-top:1px solid #edf0f4;background:transparent;color:#26394f;text-align:left;font:inherit;font-size:14px;cursor:pointer}#pd-control .pd-overview-task:hover{background:#f7faff}#pd-control .pd-overview-task-main{min-width:0;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}#pd-control .pd-overview-task-main b{font-weight:600;overflow-wrap:anywhere}#pd-control .pd-overview-task-main>span{color:#64748b;font-size:13px;overflow-wrap:anywhere}#pd-control .pd-overview-task-owner{font-size:13px;overflow-wrap:anywhere;color:#64748b}#pd-control .pd-overview-task-due{text-align:right;font-size:14px}#pd-control .pd-overview-task-due small{display:block;color:#738196;font-size:12px;margin-top:2px}#pd-control .pd-overview-task-rest>summary{font-size:13px;padding:8px 0 0;color:#326bc0;cursor:pointer}#pd-control .pd-overview-empty{padding:14px 0;color:#69788b;font-size:14px;margin:0;grid-column:1/-1}#pd-control .pd-overview-empty button{margin-left:12px}#pd-control .pd-overview-cards{gap:12px}#pd-control .pd-overview-card{padding:16px;border:1px solid #dce3eb;border-radius:10px;box-shadow:none;min-width:0;align-self:start}#pd-control .pd-overview-card-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}#pd-control .pd-overview-card-title{min-width:0;flex:1 1 120px}#pd-control .pd-overview-card-title .pd-project-link{text-align:left;font-size:16px;line-height:1.4;overflow-wrap:anywhere}#pd-control .pd-overview-card-title .pd-sub{font-size:12px;margin-top:4px;color:#6b7789}#pd-control .pd-overview-card .pd-cover-small{width:48px;height:48px;border:1px solid #e1e7ed;border-radius:8px;background:#f7f9fc}#pd-control .pd-overview-card .pd-cover-small img{width:40px;height:40px;object-fit:contain}#pd-control .pd-overview-progress{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#6a788a;margin:12px 0 4px}#pd-control .pd-overview-progress b{font-size:18px;color:#2f586a}#pd-control .pd-overview-card progress{height:7px;display:block;margin:0 0 12px;accent-color:#3b82a3;border:0;border-radius:5px;overflow:hidden}#pd-control .pd-overview-stage{display:flex;align-items:baseline;gap:10px;font-size:14px;line-height:1.6}#pd-control .pd-overview-stage>span{flex-shrink:0;color:#6b7789}#pd-control .pd-overview-stage>b{font-weight:500;overflow-wrap:anywhere;min-width:0}#pd-control .pd-overview-date{display:flex;justify-content:space-between;gap:8px;font-size:14px;color:#64748b;margin-top:5px}#pd-control .pd-overview-date>b{font-weight:500;color:#354b60}#pd-control .pd-overview-date .pd-overview-alert{color:#b63c35}#pd-control .pd-overview-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #edf0f4;margin-top:12px;padding-top:10px;flex-wrap:wrap}#pd-control .pd-overview-cash{display:flex;gap:10px;align-items:baseline;font-size:13px;color:#64748b;flex-wrap:wrap}#pd-control .pd-overview-cash b{font-size:17px;color:#26394f;overflow-wrap:anywhere}#pd-control .pd-overview-signals{display:flex;gap:4px;flex-wrap:wrap}#pd-control .pd-overview-card-actions{display:flex;gap:8px;align-items:start;margin-top:10px}#pd-control .pd-overview-card-actions>.pd-control-button{padding:5px 10px;min-height:32px;font-size:13px}#pd-control .pd-overview-more{margin-left:auto;min-width:0;text-align:right;font-size:13px}#pd-control .pd-overview-more summary{padding:7px 4px;cursor:pointer;color:#62738b}#pd-control .pd-overview-more>div{display:flex;gap:6px;flex-direction:column;align-items:flex-end;padding:8px 0;font-size:12px;color:#69788b;overflow-wrap:anywhere}#pd-control .pd-overview-money-note{font-size:12px;color:#a53e34;margin-top:6px}#pd-control .pd-overview-help{font-size:12px;color:#788393;margin:12px 0 0;text-align:right}#pd-control .pd-overview-help summary{cursor:pointer}#pd-control .pd-overview-help p{text-align:left;line-height:1.6}#pd-control .pd-overview-jump-target{outline:2px solid #80ace5;outline-offset:3px}@media(min-width:1450px){#pd-control .pd-overview-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){#pd-control .pd-overview-stats{grid-template-columns:repeat(3,minmax(0,1fr))}#pd-control .pd-overview-task{grid-template-columns:88px minmax(0,1fr) 105px;gap:8px}#pd-control .pd-overview-task-owner{display:none}}@media(max-width:540px){#pd-control .pd-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}#pd-control .pd-overview-task{grid-template-columns:78px minmax(0,1fr);gap:6px}#pd-control .pd-overview-task-due{grid-column:2;text-align:left}#pd-control .pd-overview-task-due small{display:inline;margin-left:8px}#pd-control .pd-overview-card{padding:13px}#pd-control .pd-overview-filters label:not(.pd-overview-search){flex:1}#pd-control .pd-overview-filters select{width:100%}#pd-control .pd-overview-heading .pd-form-actions{gap:6px}}


#pd-control .pd-mold-count-box label{display:grid;gap:7px;font-size:14px}#pd-control .pd-mold-count-box input{box-sizing:border-box;width:140px;max-width:100%;height:36px;border:1px solid #b7cbbb;border-radius:6px;background:white;color:#243b31;padding:6px 9px;font:inherit;font-size:17px}#pd-control .pd-mold-count-box [data-mold-save-state]{display:block;max-width:220px}#pd-control [data-mold-summary]{align-items:flex-start;gap:20px 28px}#pd-control [data-mold-error]{display:block;max-width:250px}#pd-control tr[data-erp-row="I"],#pd-control tr[data-erp-row="K"],#pd-control tr[data-erp-row="L"],#pd-control tr[data-erp-row="P"],#pd-control tr[data-erp-row="AA"],#pd-control tr[data-erp-row="AI"]{display:none!important}

#pd-control .pd-erp-matrix-row output[data-erp-output]{box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-height:32px;width:100%;padding:6px 8px;border:1px solid #d7e1e7;border-radius:5px;background:#f7f9fb;color:#24384b;font-size:14px;font-weight:500;line-height:20px;text-align:center;overflow-wrap:anywhere}#pd-control .pd-erp-matrix-row td{vertical-align:middle}#pd-control .pd-erp-matrix-row[data-erp-row="N"] output{background:#f0f5fa}
#pd-control .pd-photo-compact-matrix{width:100%;min-width:100%;table-layout:fixed}#pd-control .pd-photo-compact-matrix[data-photo-compact-columns=false]{min-width:calc(150px + var(--pd-photo-columns)*140px)}#pd-control .pd-photo-compact-matrix .pd-photo-category-column{width:150px}#pd-control .pd-photo-compact-matrix th,#pd-control .pd-photo-compact-matrix td{min-width:0;width:auto;padding:10px;vertical-align:middle;overflow-wrap:anywhere}#pd-control .pd-photo-compact-matrix th:first-child{width:150px;min-width:0}#pd-control .pd-photo-compact-matrix .pd-photo-compact-td{position:relative;padding-bottom:28px}#pd-control .pd-photo-compact-matrix .pd-photo-matrix-cell{min-height:68px;gap:7px;justify-content:center;align-items:center}#pd-control .pd-photo-thumbnails:empty{display:none}#pd-control .pd-photo-thumbnails{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;min-width:0;width:100%}#pd-control .pd-photo-thumbnails figure{min-width:0;flex:0 1 100px;max-width:120px;margin:0}#pd-control .pd-photo-thumbnails img{max-width:100%;width:100%;height:82px;object-fit:contain}#pd-control .pd-photo-thumbnails figcaption{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}#pd-control .pd-photo-plus{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px dashed #adc6d3;border-radius:7px;background:#f8fbfd;color:#517b90;font-size:28px;line-height:1;cursor:pointer}#pd-control .pd-photo-plus:hover,#pd-control .pd-photo-plus[aria-expanded=true]{background:#edf5fa;border-color:#5487a4}#pd-control .pd-photo-help-corner{position:absolute;right:5px;bottom:4px;line-height:1}#pd-control .pd-photo-help-trigger{border:0;background:transparent;color:#7990a2;font-size:17px;padding:3px 5px;cursor:help}#pd-control .pd-photo-help-trigger:focus-visible,#pd-control .pd-photo-plus:focus-visible{outline:2px solid #579ac7;outline-offset:2px}#pd-control .pd-photo-popup-panel{position:fixed;inset:auto;margin:0;box-sizing:border-box;width:330px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);overflow:auto;padding:14px;border:1px solid #cbd9e3;border-radius:9px;background:#fff;color:#283e50;box-shadow:0 10px 30px #17364d26;font-size:14px;line-height:1.5;z-index:2147483600;text-align:left;font-weight:400;pointer-events:auto}#pd-control .pd-photo-popup-panel[hidden]{display:none!important}#pd-control .pd-photo-popup-panel::backdrop{background:transparent;pointer-events:none}#pd-control .pd-photo-popup-title{display:block;font-weight:600;margin:0 0 10px}#pd-control .pd-photo-popup-panel label{display:block;margin:7px 0}#pd-control .pd-photo-popup-panel select,#pd-control .pd-photo-popup-panel textarea{width:100%;min-width:0;max-width:100%;box-sizing:border-box;padding:6px 8px;border:1px solid #d4dfe6;border-radius:5px;background:#fff;color:#283e50;font:inherit}#pd-control .pd-photo-popup-panel textarea{min-height:36px;resize:vertical}#pd-control .pd-photo-popup-panel .pd-photo-row-details{margin:0;font-size:14px}#pd-control .pd-photo-popup-panel .pd-photo-cell-details{margin-top:10px;font-size:13px}#pd-control .pd-photo-popup-panel .pd-photo-cell-details summary{cursor:pointer;margin-bottom:8px}#pd-control .pd-photo-popup-panel .pd-photo-actions{display:flex;gap:8px;margin:10px 0;flex-wrap:wrap}#pd-control .pd-photo-popup-panel .pd-photo-count{font-size:12px;color:#65798a;display:flex;gap:7px}#pd-control .pd-photo-popup-panel .pd-photo-file{margin:8px 0;padding-top:6px;border-top:1px solid #edf1f4;font-size:13px;overflow-wrap:anywhere}#pd-control .pd-photo-popup-panel .pd-photo-file small{display:block;color:#758596}#pd-control .pd-photo-section-help{margin-left:auto;position:relative;min-width:26px;height:26px}#pd-control .pd-photo-video-chips{display:flex;gap:4px;flex-wrap:wrap;max-width:100%}#pd-control .pd-photo-video-chips span{max-width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:1px solid #d6e2e9;border-radius:5px;padding:4px 6px;font-size:12px;color:#48677d;background:#f3f7fa}@media(max-width:700px){#pd-control .pd-photo-compact-matrix .pd-photo-category-column,#pd-control .pd-photo-compact-matrix th:first-child{width:110px}#pd-control .pd-photo-compact-matrix th,#pd-control .pd-photo-compact-matrix td{padding-left:6px;padding-right:6px}#pd-control .pd-photo-plus{width:36px;height:36px;font-size:25px}}


#pd-control .pd-ai-parameter-table input::placeholder,#pd-control .pd-ai-parameter-table textarea::placeholder{color:#8999a8;opacity:1}

/* Compact ERP remarks: auto-grow without a manual resize handle. */
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table textarea[data-erp-compact-note]{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:32px;min-height:32px;max-height:none;padding:6px 8px;line-height:18px;resize:none;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}

#pd-control .pd-ai-parameter-brief .pd-sales-name-heading{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap;font-size:12px;line-height:18px}
#pd-control .pd-ai-parameter-brief .pd-sales-name-heading small{display:inline;margin:0;font-size:10px;line-height:16px;font-weight:400;color:#728390;white-space:nowrap}
#pd-control .pd-ai-parameter-brief .pd-sales-name-actions{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:3px}
#pd-control .pd-ai-parameter-brief .pd-sales-name-actions .pd-usage-badges{margin:0}
#pd-control .pd-ai-parameter-brief .pd-sales-name-actions .pd-ai-row-toggle{padding:1px 6px;min-height:22px;line-height:18px;border:1px solid #d8e3e9;border-radius:5px;background:#f8fbfd}

/* Compact help: explicit helper components only; errors and real data remain visible. */
#pd-control .pd-compact-help{display:flex;justify-content:flex-end;align-items:center;min-height:20px;margin:2px 0;clear:both}
#pd-control .pd-compact-help .pd-photo-help-corner{position:relative;inset:auto;margin:0}
#pd-control .pd-compact-help .pd-photo-help-trigger,#pd-control .pd-ai-corner-help>.pd-ai-help-trigger{width:20px;height:20px;min-height:20px;padding:0;border:0;border-radius:50%;background:transparent;color:#718078;font-size:14px;line-height:20px;text-align:center}
#pd-control .pd-compact-help .pd-photo-help-trigger:hover,#pd-control .pd-ai-corner-help>.pd-ai-help-trigger:hover{background:#edf4ef;color:#244c38}
#pd-control .pd-compact-help .pd-photo-popup-panel p{margin:0 0 6px;font-size:12px;line-height:1.6}
#pd-control .pd-compact-help .pd-flow-legend{display:grid;margin:0;gap:5px}
#pd-control .pd-mold-count-box label{gap:0;color:inherit;font-size:14px;font-weight:400}
#pd-control .pd-mold-count-box input{width:140px;height:32px;min-height:32px;padding:0 7px;font-family:inherit;font-size:22px;font-weight:700;line-height:30px;color:inherit;border-color:#d6e4da;border-radius:5px}
#pd-control .pd-mold-count-box input::placeholder{font-size:14px;font-weight:400}

/* Keep the actual SKU table grid; remove redundant outer product-detail frame. */
#pd-control .pd-material-section-body>.pd-ai-brief.pd-ai-parameter-brief{border:0;border-radius:0;box-shadow:none;background:transparent;padding:0;margin-top:10px}

#pd-control .pd-cost-summary-table th,#pd-control .pd-cost-summary-table td{text-align:center;vertical-align:middle}
#pd-control .pd-cost-summary-table .pd-small{text-align:inherit}
/* V106: date-accurate display-only workflow timeline. */
#pd-control .pd-timeline-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:8px 0}
#pd-control .pd-timeline-toolbar [aria-pressed="true"]{background:#deebe2;border-color:#63846d;color:#234e34;font-weight:700}
#pd-control .pd-timeline-map .pd-graph-drawing{min-width:0;max-width:100%}
#pd-control .pd-timeline-scroll{position:relative;max-width:100%;max-height:72vh;overflow:auto;border:1px solid #d4dfd6;border-radius:8px;background:#fafcf9;overscroll-behavior:contain}
#pd-control .pd-timeline-canvas{position:relative;isolation:isolate;min-width:100%}
#pd-control .pd-timeline-column{position:absolute;top:0;border-left:1px solid #d6e1d8;background:rgba(224,235,223,.14);pointer-events:none}
#pd-control .pd-timeline-column:nth-of-type(4n+1){background:rgba(239,245,236,.48)}
#pd-control .pd-timeline-header{position:absolute;top:0;padding:8px 12px;box-sizing:border-box;overflow:hidden;background:#edf3e9;border-bottom:1px solid #cfddce;z-index:5;display:flex;flex-direction:column;gap:3px;align-items:flex-start}
#pd-control .pd-timeline-header>b{font-size:13px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pd-control .pd-timeline-header .pd-flow-part-summary{width:100%;padding:0;min-height:0;font-size:11px}
#pd-control .pd-timeline-header .pd-flow-part-due{display:flex;gap:8px;align-items:center}
#pd-control .pd-timeline-header .pd-control-button{font-size:11px;padding:2px 5px;min-height:23px}
#pd-control .pd-timeline-gridline{position:absolute;border-top:1px solid #dce5dd;pointer-events:none}
#pd-control .pd-timeline-axis{position:sticky;left:0;z-index:8;background:#f6f8f2;border-right:1px solid #c6d3c7;pointer-events:none}
#pd-control .pd-timeline-axis>b{display:block;padding:12px 8px;font-size:12px}
#pd-control .pd-timeline-axis time,#pd-control .pd-timeline-axis>span{position:absolute;left:7px;font-size:11px;color:#526657;white-space:nowrap;transform:translateY(-6px);font-variant-numeric:tabular-nums}
#pd-control .pd-timeline-node{position:absolute;z-index:3;box-sizing:border-box;padding-left:6px}
#pd-control .pd-timeline-node .pd-flow-card{position:relative!important;inset:auto!important;box-sizing:border-box;width:100%!important;height:88px!important;min-height:88px!important;max-height:88px!important;padding:6px 7px!important;display:flex!important;flex-direction:column;align-items:flex-start;gap:1px;background:var(--pd-node-bg)!important;border:1px solid var(--pd-node-border)!important;border-radius:7px;overflow:hidden;text-align:left}
#pd-control .pd-timeline-node .pd-flow-card-name{font-size:12px;line-height:17px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:0}
#pd-control .pd-timeline-node .pd-flow-current-flag{position:absolute;right:3px;top:3px;font-size:9px}
#pd-control .pd-timeline-node [data-current-process="true"] .pd-flow-card-name{max-width:calc(100% - 25px)}
#pd-control .pd-timeline-start{font-size:10px;line-height:14px;color:#617264}
#pd-control .pd-timeline-node .pd-flow-card-date{display:flex;gap:8px;line-height:16px;font-size:11px}
#pd-control .pd-timeline-node .pd-flow-remaining{font-size:11px;line-height:15px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pd-control .pd-timeline-node small{font-size:9px;line-height:11px;color:#925249}
#pd-control .pd-timeline-duration{position:absolute;left:0;top:0;width:4px;box-sizing:border-box;border:1px solid var(--pd-node-border);background:var(--pd-node-border);border-radius:2px;pointer-events:none;min-height:0}
#pd-control .pd-timeline-duration:after{content:"";position:absolute;bottom:-1px;left:-2px;width:7px;border-top:2px solid var(--pd-node-border)}
#pd-control .pd-timeline-actions{display:flex;gap:4px;margin-top:3px;white-space:nowrap}
#pd-control .pd-timeline-actions .pd-control-button{font-size:10px;line-height:16px;padding:1px 4px;min-height:20px}
#pd-control .pd-timeline-dependencies{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:visible}
#pd-control .pd-timeline-today{position:absolute;border-top:2px solid #c77834;z-index:4;pointer-events:none}
#pd-control .pd-timeline-today>span{position:absolute;right:4px;bottom:1px;background:#fff5e8;color:#9e531b;font-size:10px;padding:1px 4px}
#pd-control .pd-timeline-unscheduled{position:absolute;border-top:2px dashed #bcc9bf;padding:10px 8px;font-size:12px;font-weight:600;box-sizing:border-box}
#pd-control .pd-timeline-scale{font-size:11px;line-height:1.6;margin:4px 0 8px}

#pd-control .pd-timeline-milestone{height:0!important;border:0!important;background:none!important}

.pd-vehicle-picker{display:flex;align-items:center;gap:6px}.pd-vehicle-picker select{min-width:0;flex:1}.pd-vehicle-filter{display:block;padding:8px;border:1px solid #cbd5e1;border-radius:8px;margin-top:6px;background:#fff}.pd-vehicle-filter[hidden]{display:none}.pd-vehicle-filter-tools{display:flex;gap:4px;align-items:center}.pd-vehicle-filter-tools input{min-width:0;flex:1}.pd-vehicle-results{display:flex;flex-direction:column;gap:4px;max-height:210px;overflow:auto;margin-top:6px}.pd-vehicle-result{display:flex;align-items:center;gap:6px}.pd-vehicle-result>[data-vehicle-choose]{flex:1;text-align:left;overflow-wrap:anywhere}.pd-vehicle-remove-confirm{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:12px}.pd-vehicle-filter .pd-control-button{padding:4px 7px;min-height:28px;font-size:12px}

#pd-control .pd-editor .pd-cost-spec-editor textarea{width:100%;min-width:0;min-height:38px;padding:5px 6px;font-size:12px;line-height:1.4;box-sizing:border-box;resize:vertical;white-space:pre-wrap}.pd-cost-spec-cell{min-width:150px;max-width:300px;white-space:pre-wrap;overflow-wrap:anywhere}
#pd-control .pd-cost-summary-table{min-width:1080px}#pd-control .pd-bom-preview .pd-comparison-table{min-width:900px}#pd-control .pd-cost-spec-head{width:180px}

/* pd-comparison-viewport-fix */

#pd-control .pd-cost-comparison-body{position:sticky;left:0;width:var(--pd-cost-viewport-width,100%);max-width:100%;box-sizing:border-box;min-width:0}
#pd-control .pd-cost-comparison-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;color:#22313d}
#pd-control .pd-cost-comparison-toolbar>b{font-size:13px;overflow-wrap:anywhere;min-width:0}
#pd-control .pd-cost-comparison-toolbar>button{flex-shrink:0}
#pd-control .pd-cost-quote-table th{color:#22313d}
#pd-control .pd-cost-quote-table tr>th:first-child{position:sticky;left:0;z-index:2;width:120px;box-sizing:border-box}

/* pd-assessment-audit-styles */
/* Assessment changes remain visible with safe wrapping in both audit surfaces. */
#pd-control .pd-audit.pd-approval-history > .pd-assessment-change-card{grid-column:1/-1}
#pd-control .pd-assessment-changes{margin-top:12px;border-top:1px solid #dbe5df;padding-top:10px}
#pd-control .pd-assessment-changes>summary{font-weight:600;cursor:pointer}
#pd-control .pd-assessment-change-list{display:grid;gap:10px;margin-top:10px}
#pd-control .pd-assessment-change{padding:10px 12px;border:1px solid #dde5e0;border-radius:7px;background:#fff;min-width:0;overflow-wrap:anywhere}
#pd-control .pd-assessment-change-values{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:7px}
#pd-control .pd-assessment-change-values>div{min-width:0}
#pd-control .pd-assessment-change-values span{font-size:11px;color:var(--pd-muted)}
#pd-control .pd-assessment-change-values p{margin:3px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}
#pd-control .pd-assessment-change-values>div:last-child{border-left:2px solid #dbe5df;padding-left:12px}
@media(max-width:640px){#pd-control .pd-assessment-change-values{grid-template-columns:minmax(0,1fr);gap:8px}#pd-control .pd-assessment-change-values>div:last-child{border-left:0;border-top:1px solid #dbe5df;padding-left:0;padding-top:7px}}

/* pd-compact-audit-styles */
#pd-control .pd-compact-audit{margin-top:12px;font-size:12px;color:#263b31}
#pd-control .pd-compact-audit-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:6px}
#pd-control .pd-compact-audit-heading h3{font-size:13px;margin:0}
#pd-control .pd-compact-audit-heading>span{font-size:11px;color:#536359}
#pd-control .pd-compact-audit-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
#pd-control .pd-compact-audit-group{min-width:0;border:1px solid #dce5df;border-radius:6px;background:#fafcfb;margin:0 0 8px;overflow:hidden}
#pd-control .pd-compact-audit-group h4{display:flex;gap:6px;margin:0;padding:5px 8px;background:#f0f5f2;font-size:12px;line-height:1.4}
#pd-control .pd-compact-audit-group h4>span{font-weight:400;color:#536359}
#pd-control .pd-compact-audit-list{list-style:none;margin:0;padding:0;max-height:220px;overflow:auto;overscroll-behavior:contain}
#pd-control .pd-compact-audit-entry{display:block;margin:0;padding:6px 8px;border:0;border-bottom:1px solid #e2e9e4;border-radius:0;background:transparent;min-height:0;line-height:1.5;overflow-wrap:anywhere}
#pd-control .pd-compact-audit-entry:last-child{border-bottom:0}
#pd-control .pd-compact-audit-meta{display:flex;align-items:baseline;gap:4px 8px;flex-wrap:wrap}
#pd-control .pd-compact-audit-meta .pd-audit-time{font-size:11px;white-space:normal;color:#536359}
#pd-control .pd-compact-audit-comment,#pd-control .pd-compact-audit-missing{margin:2px 0 0;font-size:11px;line-height:1.45;color:#536359;white-space:pre-wrap}
#pd-control .pd-compact-audit-missing{color:#74501d}
#pd-control .pd-compact-audit-empty{padding:6px 8px;color:#536359;list-style:none}
#pd-control .pd-compact-change-list{list-style:none;margin:4px 0 0;padding:0}
#pd-control .pd-compact-change-list>li{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(0,1fr) 16px minmax(0,1fr);gap:4px 8px;padding:4px 0;border-top:1px dashed #dce5df;align-items:start;line-height:1.5}
#pd-control .pd-compact-change-list>li>*{min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}
#pd-control .pd-compact-change-list small{font-size:11px;color:#536359}
#pd-control .pd-compact-change-after{color:#24513b}
#pd-control .pd-compact-change-arrow{text-align:center;color:#536359}
@media(max-width:640px){#pd-control .pd-compact-change-list>li{grid-template-columns:minmax(0,1fr)}#pd-control .pd-compact-change-arrow{display:none}}

/* pd-cost-workflow-parts */
/* V37: Cost-derived accessory headings are display-only group anchors. */
#pd-control .pd-node-part-field{grid-column:1/-1}
#pd-control .pd-node-part-field .pd-small{font-weight:400;line-height:1.45}
#pd-control .pd-flow-part-header{position:absolute;width:248px;height:106px;box-sizing:border-box;z-index:2;padding:8px 12px;border:1px solid #afc6b7;border-radius:10px;background:#f3f8f4;display:flex;flex-direction:column;align-items:center;gap:3px;color:#294a36}
#pd-control .pd-flow-part-header>b{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;font-size:14px;line-height:20px}
#pd-control .pd-flow-part-kicker{font-size:10px;line-height:13px;color:#5a7163}
#pd-control .pd-flow-part-header .pd-small{font-size:11px;line-height:15px}
#pd-control .pd-flow-part-header .pd-control-button{padding:3px 10px;min-height:23px;font-size:11px;line-height:16px;margin:0}
#pd-control .pd-flow-part-header[data-part-kind=orphan]{background:#f7f5ed;border-color:#cec4a3}
#pd-control .pd-flow-part-header[data-part-kind=legacy]{background:#f5f6fa;border-color:#c3cbd7}
#pd-control .pd-flow-part-header[data-part-kind=common]{background:#f7f8f7;border-color:#cbd4ce}

/* pd-submission-changes */
/* Submission-scoped assessment evidence; keep the compact two-column history. */
#pd-control .pd-submission-diff{margin:4px 0 0;min-width:0}
#pd-control .pd-submission-diff>summary{cursor:pointer;color:#24513b;font-size:11px;line-height:1.5;font-weight:600}
#pd-control .pd-submission-change-batches{list-style:none;margin:4px 0 0;padding:0 0 0 5px;border-left:2px solid #cadacf}
#pd-control .pd-submission-change-batches>.pd-compact-audit-entry{padding:4px 6px}
#pd-control .pd-change-disposition{font-size:10px;color:#657368}
#pd-control .pd-current-submission{margin:10px 0 12px;padding:8px;background:#fff;border:1px solid #c8dace;border-radius:6px;min-width:0}
#pd-control .pd-current-submission h4{font-size:12px;margin:0 0 4px}
#pd-control .pd-current-submission .pd-submission-change-batches{max-height:360px;overflow:auto;overscroll-behavior:contain}

/* pd-node-context-simplification */

#pd-control .pd-node-part-context{grid-column:1/-1;display:flex;align-items:baseline;gap:8px;padding:6px 8px;background:#eef5f0;border-radius:5px;color:#294a36;min-width:0}
#pd-control .pd-node-part-context>span{font-size:11px;color:#536359;flex-shrink:0}
#pd-control .pd-node-part-context>b{font-size:13px;overflow-wrap:anywhere}

/* pd-tighter-change-summary */

#pd-control [data-compact-assessment-history] [data-history-group="approvedChanges"] h4{padding:3px 7px;font-size:11px}
#pd-control [data-compact-assessment-history] [data-history-group="approvedChanges"] .pd-compact-audit-entry{padding:4px 7px;font-size:11px;line-height:1.35}
#pd-control [data-compact-assessment-history] [data-history-group="approvedChanges"] .pd-compact-audit-meta{gap:2px 6px}
#pd-control [data-compact-assessment-history] [data-history-group="approvedChanges"] .pd-compact-change-list{margin-top:2px}
#pd-control [data-compact-assessment-history] [data-history-group="approvedChanges"] .pd-compact-change-list>li{display:flex;flex-wrap:wrap;gap:2px 8px;padding:3px 0;line-height:1.4}
#pd-control [data-compact-assessment-history] [data-history-group="approvedChanges"] .pd-compact-change-list>li>*{max-width:100%;flex:0 1 auto}
#pd-control [data-compact-assessment-history] [data-history-group="approvedChanges"] .pd-compact-change-list>li>b{font-size:11px;font-weight:600}

/* pd-compact-workflow-tree */
/* V41: Compact workflow geometry is shared with workflowGraphModel via canvas variables. */
#pd-control .pd-freeform-map .pd-freeform-root{width:var(--pd-flow-root-width,240px);height:var(--pd-flow-root-height,80px);min-height:0;padding:6px 10px;gap:3px;border-radius:9px}
#pd-control .pd-freeform-map .pd-freeform-root>b{font-size:13px;line-height:18px}
#pd-control .pd-freeform-map .pd-freeform-root>.pd-small{font-size:11px;line-height:15px}
#pd-control .pd-freeform-map .pd-freeform-root .pd-control-button{min-height:24px;padding:3px 8px;font-size:11px;line-height:16px;margin:0}
#pd-control .pd-freeform-map .pd-flow-part-header{width:var(--pd-flow-card-width,200px);height:var(--pd-flow-group-height,82px);padding:6px 10px;gap:3px;border-radius:8px}
#pd-control .pd-freeform-map .pd-flow-part-header>b{font-size:13px;line-height:19px}
#pd-control .pd-freeform-map .pd-flow-part-kicker{font-size:10px;line-height:12px}
#pd-control .pd-flow-part-footer{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:24px}
#pd-control .pd-freeform-map .pd-flow-part-footer>.pd-small{font-size:11px;line-height:16px;white-space:nowrap}
#pd-control .pd-freeform-map .pd-flow-part-footer>.pd-control-button{min-height:24px;padding:3px 8px;line-height:16px;font-size:11px;margin:0}
#pd-control .pd-freeform-map .pd-freeform-node{width:var(--pd-flow-card-width,200px);height:var(--pd-flow-node-height,126px)}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card{width:var(--pd-flow-card-width,200px);height:var(--pd-flow-card-height,92px);padding:8px 10px;gap:4px;border-radius:8px;justify-content:flex-start}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card[data-has-part=true]{padding:8px 10px;gap:4px}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card-name{font-size:13px;line-height:18px;min-height:18px;box-sizing:border-box}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card[data-current-process=true] .pd-flow-card-name{padding-right:36px}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-due-date{display:flex;align-items:baseline;gap:7px;line-height:23px;min-height:23px;color:#304e3b}
#pd-control .pd-flow-due-date>span{font-size:10px;font-weight:400;flex-shrink:0}
#pd-control .pd-flow-due-date>b{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.25px;overflow:hidden;text-overflow:ellipsis}
#pd-control .pd-flow-compact-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;min-width:0;line-height:16px}
#pd-control .pd-flow-duration{flex-shrink:0;font-size:11px;line-height:16px;color:#3d5947;font-variant-numeric:tabular-nums}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-compact-meta .pd-flow-card-state{font-size:10px;line-height:16px;width:auto;min-width:0;text-align:right;color:#506054}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-current-flag{top:8px;right:8px;font-size:9px;line-height:15px;padding:0 4px}
#pd-control .pd-freeform-map .pd-freeform-node .pd-freeform-actions{top:calc(var(--pd-flow-card-height,92px) + 6px);gap:6px}
#pd-control .pd-freeform-map .pd-freeform-actions .pd-control-button{min-height:24px;padding:3px 8px;font-size:11px;line-height:16px;margin:0;border-radius:5px}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card[data-overdue-days]:not([data-overdue-days="0"]),#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card[data-overdue-days]:not([data-overdue-days="0"]) .pd-flow-due-date,#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card[data-overdue-days]:not([data-overdue-days="0"]) .pd-flow-duration,#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card[data-overdue-days]:not([data-overdue-days="0"]) .pd-flow-card-state{color:#3b1915}

/* pd-one-screen-workflow */
/* V42: <=6 nodes use the drawing's measured width; no transform scaling or form replacement. */
#pd-control .pd-freeform-map.pd-flow-fit-map{--pd-flow-fit-columns:3;position:relative;min-width:0;margin:12px 0 14px;padding:8px 10px;border-radius:9px}
#pd-control .pd-flow-fit-map .pd-flow-fit-heading{display:flex;align-items:center;gap:8px;min-width:0;min-height:20px;margin:0 0 4px}
#pd-control .pd-flow-fit-map .pd-flow-fit-heading>h3{font-size:14px;line-height:20px;white-space:nowrap;margin:0}
#pd-control .pd-flow-fit-map .pd-flow-fit-heading>.pd-small{font-size:11px;line-height:16px;white-space:nowrap;margin:0}
#pd-control .pd-flow-fit-map .pd-flow-fit-help{margin-left:auto;flex:none;position:relative;font-size:11px;line-height:18px;color:#52665a}
#pd-control .pd-flow-fit-map .pd-flow-fit-help>summary{cursor:pointer;white-space:nowrap}
#pd-control .pd-flow-fit-map .pd-flow-fit-help>div{position:absolute;z-index:12;right:0;top:24px;width:min(340px,70vw);box-sizing:border-box;padding:10px 12px;background:#fff;border:1px solid #b6cbbb;border-radius:8px;box-shadow:0 6px 24px #23432f24;font-size:12px;line-height:1.6}
#pd-control .pd-flow-fit-map .pd-flow-fit-help p{margin:0 0 6px}
#pd-control .pd-flow-fit-map .pd-flow-fit-help p:last-child{margin-bottom:0}
#pd-control .pd-flow-fit-map .pd-flow-fit-status{display:flex;align-items:center;gap:10px;min-width:0;height:20px;margin:0 0 4px;padding:0 6px;border-left:3px solid #43825a;border-radius:3px;background:#eaf4ed;color:#234932;font-size:11px;line-height:20px}
#pd-control .pd-flow-fit-map .pd-flow-fit-status>b{display:block;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}
#pd-control .pd-flow-fit-map .pd-flow-fit-status>span{white-space:nowrap;flex:none}
#pd-control .pd-flow-fit-map .pd-flow-fit-legend{font-size:10px;color:#52665a}
#pd-control .pd-flow-fit-map .pd-graph-workspace,#pd-control .pd-flow-fit-map .pd-graph-workspace.pd-graph-with-panel{position:relative;display:block;min-width:0}
#pd-control .pd-flow-fit-map .pd-graph-drawing{min-width:0;width:100%}
#pd-control .pd-flow-fit-map .pd-flow-fit-root{display:flex;align-items:center;gap:10px;min-width:0;height:30px;margin:0 0 4px;padding:0 8px;box-sizing:border-box;border:1px solid #b6ccb9;border-radius:6px;background:#edf5ef}
#pd-control .pd-flow-fit-map .pd-flow-fit-root>b{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px}
#pd-control .pd-flow-fit-map .pd-flow-fit-root>span{flex:none;white-space:nowrap;font-size:11px;color:#52665a}
#pd-control .pd-flow-fit-map .pd-flow-fit-root>.pd-control-button{flex:none;min-height:22px;margin:0;padding:2px 7px;font-size:11px;line-height:16px}
#pd-control .pd-flow-fit-map .pd-flow-fit-parts{display:grid;grid-template-columns:repeat(var(--pd-flow-fit-columns),minmax(0,1fr));gap:4px;max-height:60px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;min-width:0;margin:0 0 4px;padding:0;scrollbar-width:thin}
#pd-control .pd-flow-fit-map .pd-flow-fit-part{display:flex;align-items:center;gap:5px;min-width:0;height:28px;box-sizing:border-box;padding:2px 5px;border:1px solid #c8d8cc;border-radius:5px;background:#f1f7f2;font-size:10px;line-height:16px}
#pd-control .pd-flow-fit-map .pd-flow-fit-part>b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600}
#pd-control .pd-flow-fit-map .pd-flow-fit-part>span{flex:none;white-space:nowrap;color:#52665a}
#pd-control .pd-flow-fit-map .pd-flow-fit-part>.pd-control-button{flex:none;min-height:21px;min-width:0;padding:1px 4px;margin:0;font-size:10px;line-height:17px;border-radius:4px;white-space:nowrap}
#pd-control .pd-flow-fit-map .pd-flow-fit-part[data-part-kind=orphan]{background:#f7f5ed;border-color:#cec4a3}
#pd-control .pd-flow-fit-map .pd-flow-fit-part[data-part-kind=legacy]{background:#f5f6fa;border-color:#c3cbd7}
#pd-control .pd-flow-fit-map .pd-flow-scroll{width:100%;max-width:100%;box-sizing:border-box;max-height:none;overflow:hidden;overscroll-behavior:auto;border-radius:6px}
#pd-control .pd-flow-fit-map .pd-flow-canvas{min-width:0;max-width:100%;box-sizing:border-box}
#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node{width:var(--pd-flow-card-width,182px);height:var(--pd-flow-node-height,118px)}
#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-card,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-card[data-has-part=true]{width:var(--pd-flow-card-width,182px);height:var(--pd-flow-card-height,92px);box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-start;gap:2px;padding:5px 7px;border-radius:7px;overflow:hidden}
#pd-control .pd-flow-fit-map .pd-flow-fit-context{display:block;flex:none;min-height:12px;width:100%;font-size:10px;line-height:12px;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}
#pd-control .pd-flow-fit-map .pd-flow-card[data-current-process=true] .pd-flow-fit-context{padding-right:32px}
#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-card-name,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-card[data-current-process=true] .pd-flow-card-name{flex:none;min-height:18px;padding-right:0;font-size:13px;line-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pd-control .pd-flow-fit-map .pd-flow-fit-position{display:inline-block;margin-right:5px;min-width:14px;height:14px;box-sizing:border-box;border-radius:3px;background:#ffffffa8;border:1px solid #64837438;color:#506054;font-size:9px;line-height:12px;text-align:center;vertical-align:1px;font-weight:600}
#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-due-date{flex:none;display:flex;align-items:baseline;gap:5px;min-height:22px;line-height:22px;color:inherit}
#pd-control .pd-flow-fit-map .pd-flow-due-date>span{font-size:10px;line-height:16px}
#pd-control .pd-flow-fit-map .pd-flow-due-date>b{font-size:16px;line-height:22px;letter-spacing:-.25px;white-space:nowrap;font-variant-numeric:tabular-nums}
#pd-control .pd-flow-fit-map .pd-flow-compact-meta{flex:none;gap:4px;min-width:0;min-height:16px;line-height:16px}
#pd-control .pd-flow-fit-map .pd-flow-duration{font-size:11px;line-height:16px;color:inherit}
#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-compact-meta .pd-flow-card-state{min-width:0;width:auto;font-size:10px;line-height:16px;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-current-flag{top:5px;right:5px;font-size:9px;line-height:14px;padding:0 4px}
#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-freeform-actions{top:calc(var(--pd-flow-card-height,92px) + 4px);gap:5px;min-width:0}
#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-actions .pd-control-button{min-height:22px;padding:2px 7px;font-size:11px;line-height:16px;margin:0;border-radius:4px}
#pd-control .pd-flow-fit-map [data-flow-hint]{margin:4px 0 0;font-size:11px;line-height:16px;min-height:16px}
#pd-control .pd-flow-fit-map .pd-freeform-empty{margin:0;padding:12px 8px;font-size:12px;line-height:1.6}
#pd-control .pd-flow-fit-map .pd-graph-panel{position:absolute;z-index:10;top:0;right:0;width:min(390px,100%);max-width:100%;max-height:min(560px,calc(100dvh - 120px));overflow:auto;overscroll-behavior:contain;padding:12px;border-color:#749980;box-shadow:0 8px 36px #203d3340;background:#fff}
#pd-control .pd-flow-fit-map .pd-graph-panel>.pd-section-title{position:sticky;z-index:2;top:-12px;margin:-12px -12px 8px;padding:10px 12px;background:#f2f7f3;border-bottom:1px solid #d1dfd5}
#pd-control .pd-flow-fit-map .pd-graph-panel>.pd-section-title h3{font-size:14px}
@media(max-width:600px){#pd-control .pd-freeform-map.pd-flow-fit-map{padding:8px}#pd-control .pd-flow-fit-map .pd-flow-fit-legend{display:none}#pd-control .pd-flow-fit-map .pd-flow-fit-heading{gap:6px;flex-wrap:wrap}#pd-control .pd-flow-fit-map .pd-flow-fit-heading>h3{font-size:13px}#pd-control .pd-flow-fit-map .pd-flow-fit-heading>.pd-small{font-size:10px}#pd-control .pd-flow-fit-map .pd-flow-fit-root{gap:6px}#pd-control .pd-flow-fit-map .pd-flow-fit-root>span{font-size:10px}}

#pd-control .pd-flow-fit-map .pd-flow-fit-warnings{position:relative;flex:none;min-width:0;font-size:11px;line-height:20px;color:#9a4338}
#pd-control .pd-flow-fit-map .pd-flow-fit-warnings>summary{white-space:nowrap;cursor:pointer;font-weight:600}
#pd-control .pd-flow-fit-map .pd-flow-fit-warnings>div{position:absolute;z-index:12;right:0;top:24px;width:min(400px,80vw);box-sizing:border-box;max-height:230px;overflow:auto;padding:8px 10px;border:1px solid #d2a79d;border-radius:7px;background:#fff9f7;box-shadow:0 6px 24px #43231e24}
#pd-control .pd-flow-fit-map .pd-flow-fit-warnings .pd-error{margin:0 0 6px;font-size:12px;line-height:1.5;white-space:normal}
#pd-control .pd-flow-fit-map .pd-flow-fit-warnings .pd-error:last-child{margin-bottom:0}

/* pd-manual-payment-totals */
/* Payment rows: headers carry the labels; inputs retain accessible names. */
#pd-control .pd-payment-edit-row input,#pd-control .pd-payment-edit-row select,#pd-control .pd-payment-edit-row textarea{box-sizing:border-box;width:100%;min-width:0;padding:7px 8px;border:1px solid #c7d4cf;border-radius:5px;font:inherit;line-height:1.35;background:#fff;color:inherit}
#pd-control .pd-payment-edit-row input[type=number]{min-width:94px;font-variant-numeric:tabular-nums}
#pd-control .pd-payment-edit-row input[type=date]{min-width:0}
#pd-control .pd-payment-edit-row th,#pd-control .pd-payment-edit-row td{padding-top:12px;padding-bottom:12px;vertical-align:top}
#pd-control .pd-payment-edit-row textarea+textarea{margin-top:6px}
#pd-control .pd-payment-row-actions{display:flex;gap:5px;margin-top:8px}
#pd-control .pd-payment-row-actions .pd-control-button{padding:4px 8px;min-height:28px}
#pd-control .pd-payment-edit-row [data-payment-error]:empty{display:none}
#pd-control .pd-payment-summary{line-height:1.7}
#pd-control .pd-payment-help{margin:0 0 9px}
#pd-control .pd-payment-audit{margin-top:10px}

/* pd-parameter-matrix-style */
/* V43: reference-inspired parameter comparison; project data and export schema unchanged. */
#pd-control .pd-ai-brief.pd-ai-parameter-brief{padding:16px;background:#fff}
#pd-control .pd-ai-parameter-brief .pd-ai-matrix-note{margin:8px 0 12px;line-height:1.6}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table{min-width:calc(146px + var(--pd-ai-column-count,1) * 228px);width:100%;table-layout:fixed}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table caption{padding:8px 12px;background:#edf2f5;border-bottom:1px solid #cdd7de;text-align:left;color:#425966;font-size:12px;font-weight:600}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table col.pd-ai-field-column{width:146px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table col.pd-ai-variant-column{width:auto}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table th,#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td{padding:7px 10px;min-width:228px;width:auto;border-color:#d6dfe5;vertical-align:middle}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table tr>th:first-child{width:146px;min-width:146px;max-width:146px;background:#e9eef1;color:#344b58;font-size:12px;line-height:1.45}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table thead th{background:#e5ecf0;vertical-align:top}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table th small{display:block;margin-top:3px;font-size:10px;font-weight:400;color:#617582}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-shared-row td{min-width:0;text-align:center;background:#fff}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-fact{min-height:22px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-source-row td{background:#fafcfd}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table input:not([type=checkbox]),#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table textarea{margin:0;padding:6px 8px;border-color:#e0e6eb;border-radius:4px;font-size:12px;min-height:32px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-common-row input{text-align:center}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table textarea{min-height:48px}
#pd-control .pd-ai-parameter-brief .pd-ai-fit-facts{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 22px;min-height:25px;font-size:12px}
#pd-control .pd-ai-parameter-brief .pd-ai-fit-facts span{display:flex;align-items:center;gap:8px;min-width:105px}
#pd-control .pd-ai-parameter-brief .pd-ai-fit-facts small{color:#6b7c87;font-size:11px}
#pd-control .pd-ai-parameter-brief .pd-ai-fit-facts b{font-weight:500;white-space:pre-wrap;overflow-wrap:anywhere}
#pd-control .pd-ai-parameter-brief .pd-ai-appearance-row td{vertical-align:top;background:#fff}
#pd-control .pd-ai-parameter-brief .pd-ai-appearance{min-height:144px;display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;margin-bottom:8px}
#pd-control .pd-ai-parameter-brief .pd-ai-appearance:empty{background:#f8fafb;border:1px dashed #e1e7eb;border-radius:5px}
#pd-control .pd-ai-parameter-brief .pd-ai-appearance figure,#pd-control .pd-ai-parameter-brief .pd-ai-shared-appearance figure{margin:0;min-width:0;flex:1 1 100px;max-width:260px;text-align:center}
#pd-control .pd-ai-parameter-brief .pd-ai-appearance img,#pd-control .pd-ai-parameter-brief .pd-ai-shared-appearance img{display:block;width:100%;height:125px;object-fit:contain;background:#fff;border-radius:4px}
#pd-control .pd-ai-parameter-brief .pd-ai-appearance figcaption,#pd-control .pd-ai-parameter-brief .pd-ai-shared-appearance figcaption{margin-top:4px;font-size:10px;line-height:1.4;color:#647785;overflow-wrap:anywhere}
#pd-control .pd-ai-parameter-brief .pd-ai-photo-pending{display:flex;align-items:center;justify-content:center;min-height:116px;font-size:11px;line-height:1.5;color:#667987;background:#f6f8fa}
#pd-control .pd-ai-parameter-brief .pd-ai-matrix-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:5px 20px}
#pd-control .pd-ai-parameter-brief .pd-ai-matrix-foot>p{flex:1 1 470px;line-height:1.55;margin:2px 0 9px}
#pd-control .pd-ai-parameter-brief .pd-ai-secondary{display:grid;grid-template-columns:1fr;gap:8px;margin-top:13px}
#pd-control .pd-ai-parameter-brief .pd-ai-secondary>details{padding:10px 12px;border:1px solid #dce4e9;border-radius:6px;background:#fafcfd}
#pd-control .pd-ai-parameter-brief .pd-ai-secondary>details>summary{cursor:pointer;font-size:13px;font-weight:600;color:#355364}
#pd-control .pd-ai-parameter-brief .pd-ai-secondary>details>summary span{padding-left:7px;font-size:11px;font-weight:400;color:#6a7c87}
#pd-control .pd-ai-parameter-brief .pd-ai-secondary>details[open]>summary{margin-bottom:10px}
#pd-control .pd-ai-parameter-brief .pd-ai-secondary .pd-ai-output textarea{min-height:90px}
#pd-control .pd-ai-parameter-brief .pd-ai-shared-appearance{display:flex;flex-wrap:wrap;gap:12px;margin:8px 0}
#pd-control .pd-ai-parameter-brief .pd-ai-shared-appearance:empty{display:none}
@media(max-width:640px){#pd-control .pd-ai-brief.pd-ai-parameter-brief{padding:10px}#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table col.pd-ai-field-column{width:112px}#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table tr>th:first-child{width:112px;min-width:112px;max-width:112px}#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table{min-width:calc(112px + var(--pd-ai-column-count,1) * 212px)}#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td,#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table th{min-width:212px;padding:7px}#pd-control .pd-ai-parameter-brief .pd-ai-fit-facts{justify-content:flex-start;gap:6px 12px}#pd-control .pd-ai-parameter-brief .pd-ai-secondary>details>summary span{display:block;padding:4px 0 0}#pd-control .pd-ai-parameter-brief .pd-ai-matrix-foot{display:block}}

/* pd-countdown-workflow-cards */
/* V44: smaller due-date cards; full ISO dates and duration remain in node details. */
#pd-control .pd-freeform-map .pd-freeform-node,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node{width:var(--pd-flow-card-width,168px);height:var(--pd-flow-node-height,106px)}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card,#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card[data-has-part=true],#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-card,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-card[data-has-part=true]{width:var(--pd-flow-card-width,168px);height:var(--pd-flow-card-height,80px);box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-start;gap:1px;padding:4px 6px;border-radius:6px;overflow:hidden}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card-name,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-card-name,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-card[data-current-process=true] .pd-flow-card-name{flex:none;min-height:17px;font-size:13px;line-height:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pd-control .pd-flow-fit-map .pd-flow-fit-context{min-height:11px;font-size:10px;line-height:11px}
#pd-control .pd-flow-fit-map .pd-flow-fit-position{margin-right:4px;min-width:13px;height:13px;font-size:9px;line-height:11px;vertical-align:1px}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-due-date,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-due-date{flex:none;display:flex;align-items:baseline;gap:5px;min-height:20px;line-height:20px;color:inherit}
#pd-control .pd-freeform-map .pd-flow-due-date>b,#pd-control .pd-flow-fit-map .pd-flow-due-date>b{font-size:16px;line-height:20px;white-space:nowrap;font-variant-numeric:tabular-nums}
#pd-control .pd-freeform-map .pd-flow-compact-meta,#pd-control .pd-flow-fit-map .pd-flow-compact-meta{flex:none;gap:4px;min-width:0;min-height:15px;line-height:15px}
#pd-control .pd-freeform-map .pd-flow-remaining{flex-shrink:0;font-size:11px;line-height:15px;color:inherit;white-space:nowrap;font-variant-numeric:tabular-nums}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-compact-meta .pd-flow-card-state,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-compact-meta .pd-flow-card-state{min-width:0;width:auto;font-size:10px;line-height:15px;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-current-flag,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-current-flag{top:4px;right:4px;font-size:9px;line-height:13px;padding:0 4px}
#pd-control .pd-freeform-map .pd-freeform-node .pd-freeform-actions,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-freeform-actions{top:calc(var(--pd-flow-card-height,80px) + 4px);gap:5px;min-width:0}
#pd-control .pd-freeform-map .pd-freeform-actions .pd-control-button,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-actions .pd-control-button{min-height:22px;padding:2px 7px;font-size:11px;line-height:16px;margin:0;border-radius:4px}
#pd-control .pd-freeform-map .pd-flow-part-header{width:var(--pd-flow-card-width,168px)}

/* pd-accessory-plan-summary */

/* Display-only accessory countdowns, separate from real process-card geometry. */
#pd-control .pd-freeform-map .pd-flow-part-header{width:var(--pd-flow-group-width,128px);height:var(--pd-flow-group-height,112px);padding:6px 7px;gap:2px;border-radius:7px}
#pd-control .pd-freeform-map .pd-flow-part-header>b{font-size:13px;line-height:18px;min-height:18px;flex:none}
#pd-control .pd-freeform-map .pd-flow-part-summary{display:flex;flex-direction:column;gap:0;min-width:0;width:100%;color:#52665a;font-size:10px;line-height:15px;flex:none;text-align:center}
#pd-control .pd-freeform-map .pd-flow-part-count{display:block;min-width:0;white-space:nowrap}
#pd-control .pd-freeform-map .pd-flow-part-summary b{font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;color:#35543f}
#pd-control .pd-freeform-map .pd-flow-part-due{display:flex;align-items:baseline;justify-content:center;gap:4px;min-width:0;white-space:nowrap}
#pd-control .pd-freeform-map .pd-flow-part-due>b{font-size:12px;line-height:15px}
#pd-control .pd-freeform-map .pd-flow-part-remaining{display:block;min-width:0;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;color:#35543f}
#pd-control .pd-freeform-map .pd-flow-part-footer{display:flex;align-items:center;justify-content:center;gap:0;min-height:24px;width:100%;margin-top:auto;flex:none}
#pd-control .pd-freeform-map .pd-flow-part-footer>.pd-control-button{min-height:24px;min-width:0;padding:3px 8px;line-height:16px;font-size:11px;margin:0;white-space:nowrap}
#pd-control .pd-freeform-map .pd-flow-part-retained{font-size:10px;line-height:16px;color:#776a47;white-space:nowrap}
/* Bounded accessory strip keeps six real process nodes visible without horizontal scrolling. */
#pd-control .pd-flow-fit-map .pd-flow-fit-parts{justify-items:center;align-items:start;max-height:104px;gap:4px;overflow-x:hidden;overflow-y:auto}
#pd-control .pd-flow-fit-map .pd-flow-fit-part{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;width:min(100%,128px);min-width:0;height:98px;padding:4px 6px}
#pd-control .pd-flow-fit-map .pd-flow-fit-part>b{flex:none;width:100%;min-width:0;min-height:16px;text-align:center;font-size:11px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pd-control .pd-flow-fit-map .pd-flow-fit-part .pd-flow-part-summary{gap:0;font-size:10px;line-height:14px}
#pd-control .pd-flow-fit-map .pd-flow-fit-part .pd-flow-part-due>b{font-size:11px;line-height:14px}
#pd-control .pd-flow-fit-map .pd-flow-fit-part .pd-flow-part-footer{min-height:21px}
#pd-control .pd-flow-fit-map .pd-flow-fit-part .pd-flow-part-footer>.pd-control-button{min-height:21px;padding:1px 6px;line-height:17px;font-size:10px;border-radius:4px}
#pd-control .pd-flow-fit-map .pd-flow-fit-parts:focus-visible{outline:2px solid #568c68;outline-offset:2px}


/* pd-matched-workflow-cards */

/* Same visible 128 x 80 card and 106px action wrapper for accessory and process nodes. */
#pd-control .pd-freeform-map .pd-flow-part-header[data-part-kind],#pd-control .pd-freeform-map .pd-flow-fit-part[data-part-kind]{width:var(--pd-flow-card-width,128px);height:var(--pd-flow-node-height,106px);min-width:0;box-sizing:border-box;display:block;padding:0;border:0;border-radius:0;background:transparent;overflow:visible}
#pd-control .pd-flow-fit-map .pd-flow-fit-part{position:relative}
#pd-control .pd-freeform-map .pd-flow-part-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;box-sizing:border-box;width:100%;height:var(--pd-flow-card-height,80px);min-width:0;padding:4px 6px;gap:1px;border:1px solid #afc6b7;border-radius:6px;background:#f3f8f4;color:#294a36;overflow:hidden}
#pd-control .pd-freeform-map [data-part-kind=orphan]>.pd-flow-part-card{background:#f7f5ed;border-color:#cec4a3}
#pd-control .pd-freeform-map [data-part-kind=legacy]>.pd-flow-part-card{background:#f5f6fa;border-color:#c3cbd7}
#pd-control .pd-freeform-map [data-part-kind=common]>.pd-flow-part-card{background:#f7f8f7;border-color:#cbd4ce}
#pd-control .pd-freeform-map .pd-flow-part-card>b{display:block;flex:none;box-sizing:border-box;min-width:0;width:100%;min-height:17px;font-size:13px;line-height:17px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pd-control .pd-freeform-map .pd-flow-part-card .pd-flow-part-summary{gap:0;font-size:11px;line-height:15px}
#pd-control .pd-freeform-map .pd-flow-part-card .pd-flow-part-count{font-size:10px;line-height:11px}
#pd-control .pd-freeform-map .pd-flow-part-card .pd-flow-part-due{height:20px;line-height:20px;gap:5px}
#pd-control .pd-freeform-map .pd-flow-part-card .pd-flow-part-due>span{font-size:10px;line-height:15px}
#pd-control .pd-freeform-map .pd-flow-part-card .pd-flow-part-due>b{font-size:16px;line-height:20px;white-space:nowrap;font-variant-numeric:tabular-nums}
#pd-control .pd-freeform-map .pd-flow-part-card .pd-flow-part-remaining{font-size:10px;line-height:15px}
#pd-control .pd-freeform-map .pd-flow-part-footer{position:absolute;top:calc(var(--pd-flow-card-height,80px) + 4px);left:0;right:0;height:22px;min-height:22px;margin:0;display:flex;align-items:center;justify-content:center;gap:0;box-sizing:border-box}
#pd-control .pd-freeform-map .pd-flow-part-footer>.pd-control-button{min-height:22px;height:22px;box-sizing:border-box;padding:2px 7px;line-height:16px;font-size:11px;margin:0;border-radius:4px}
#pd-control .pd-freeform-map .pd-flow-part-retained{font-size:10px;line-height:16px}
/* Match compact SVG column centers; grow all part rows, including empty saved costs, in normal page flow. */
#pd-control .pd-flow-fit-map .pd-flow-fit-parts{grid-template-columns:repeat(var(--pd-flow-fit-columns),minmax(0,var(--pd-flow-card-width,128px)));justify-content:center;justify-items:center;align-items:start;column-gap:var(--pd-flow-column-gap,24px);row-gap:6px;height:auto;max-height:none;overflow:visible;margin-bottom:2px;padding:0;scrollbar-gutter:auto}
/* Keep existing process typography, current badges and status colors. */
#pd-control .pd-freeform-map .pd-freeform-node,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node{width:var(--pd-flow-card-width,128px);height:var(--pd-flow-node-height,106px)}
#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card,#pd-control .pd-freeform-map .pd-freeform-node .pd-flow-card[data-has-part=true],#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-card,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-node .pd-flow-card[data-has-part=true]{width:var(--pd-flow-card-width,128px);height:var(--pd-flow-card-height,80px)}
#pd-control .pd-freeform-map .pd-freeform-actions .pd-control-button,#pd-control .pd-freeform-map.pd-flow-fit-map .pd-freeform-actions .pd-control-button{height:22px;box-sizing:border-box;padding:2px 6px}


/* pd-payment-autosave */
/* Plan edits keep one compact table line. Extra text opens within the form. */
#pd-control .pd-payment-edit-row>td,#pd-control .pd-payment-edit-row>th{position:relative;padding:7px 8px;vertical-align:middle;height:46px}
#pd-control .pd-payment-edit-name{display:flex;align-items:center;gap:4px;min-width:0;white-space:nowrap}
#pd-control .pd-payment-edit-name input{flex:1;min-width:55px;width:0}
#pd-control .pd-payment-edit-name .pd-control-button{padding:4px 6px;flex:none;min-height:28px}
#pd-control .pd-payment-autosave-status{display:inline-block;font-size:11px;line-height:1.3;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:54px;color:#53657b;vertical-align:middle}
#pd-control .pd-payment-autosave-status[data-tone="saved"]{color:#386951}
#pd-control .pd-payment-autosave-status[data-tone="draft"],#pd-control .pd-payment-draft-label{color:#7b662e;font-size:11px}
#pd-control .pd-payment-autosave-status[data-tone="error"],#pd-control .pd-payment-field-hint{color:#a33838}
#pd-control .pd-payment-field-hint{display:none;position:absolute;left:4px;top:calc(100% - 2px);z-index:7;min-width:160px;max-width:240px;white-space:normal;font-size:11px;line-height:1.4;padding:6px 8px;background:#fff8f5;border:1px solid #dbaf99;border-radius:5px;box-shadow:0 3px 8px #0001}
#pd-control .pd-payment-edit-row>td:focus-within>.pd-payment-field-hint:not([hidden]),#pd-control .pd-payment-edit-row>th:focus-within>.pd-payment-field-hint:not([hidden]){display:block}
#pd-control .pd-payment-field-hint[hidden],#pd-control [data-retry-payment-autosave][hidden],#pd-control [data-resolve-payment-draft][hidden]{display:none}
#pd-control .pd-payment-inline-form [aria-invalid="true"]{border-color:#c28668}
#pd-control .pd-payment-pending-row{background:#fffcf3}
#pd-control .pd-payment-edit-row [data-payment-error]:empty{display:none}
#pd-control .pd-payment-inline-notes{margin:0;min-width:100px;position:relative;white-space:nowrap}
#pd-control .pd-payment-inline-notes>summary{cursor:pointer;font-size:12px;line-height:28px}
#pd-control .pd-payment-notes-popover{position:fixed;left:12px;top:80px;z-index:80;display:grid;gap:10px;width:300px;max-width:75vw;padding:12px;background:white;border:1px solid #b9cec6;border-radius:8px;box-shadow:0 7px 22px #173d2f26;white-space:normal;max-height:calc(100vh - 24px);overflow:auto}
#pd-control .pd-payment-notes-popover label{display:grid;gap:5px;position:relative;font-size:12px;color:#34594b}
#pd-control .pd-payment-notes-popover textarea{width:100%;min-height:70px;max-height:180px;resize:vertical}
#pd-control .pd-payment-notes-popover .pd-small{white-space:normal;font-size:11px}

#pd-control .pd-payment-help-fold{margin:5px 0 9px;font-size:11px;color:#66776e}
#pd-control .pd-payment-help-fold>summary{display:list-item;cursor:pointer;line-height:18px}
#pd-control .pd-payment-help-fold .pd-payment-help{margin:6px 0}

#pd-control .pd-payment-pending-name{display:inline-block;max-width:88px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}

#pd-control .pd-payment-draft-confirm{position:fixed;z-index:90;left:16px;top:100px;width:320px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:14px;border:1px solid #becfc5;border-radius:8px;background:white;box-shadow:0 8px 28px #0003;white-space:normal;font-size:12px;line-height:1.6;font-weight:400}
#pd-control .pd-payment-draft-confirm[hidden]{display:none}
#pd-control .pd-payment-draft-confirm p{margin:0 0 10px}
#pd-control .pd-payment-draft-confirm>div{display:flex;justify-content:flex-end;gap:8px}
#pd-control .pd-payment-edit-name .pd-payment-discard{padding:3px 5px;font-size:17px;line-height:1;color:#875049}

#pd-control [data-discard-payment-draft][hidden]{display:none}

/* pd-payment-compact-records */
/* v45: payment rows stay one line; detail text appears only when opened. */
#pd-control .pd-payment-table{min-width:1270px;table-layout:fixed}
#pd-control .pd-payment-table th:nth-child(1){width:220px}
#pd-control .pd-payment-table th:nth-child(2),#pd-control .pd-payment-table th:nth-child(3),#pd-control .pd-payment-table th:nth-child(4){width:115px}
#pd-control .pd-payment-table th:nth-child(5){width:120px}
#pd-control .pd-payment-table th:nth-child(6){width:140px}
#pd-control .pd-payment-table th:nth-child(7){width:145px}
#pd-control .pd-payment-table th:nth-child(8){width:135px}
#pd-control .pd-payment-table th:nth-child(9){width:160px}
#pd-control .pd-payment-table th:nth-child(10){width:180px}
#pd-control .pd-payment-table>tbody>tr>th,#pd-control .pd-payment-table>tbody>tr>td{padding:8px 10px;height:42px;vertical-align:middle;white-space:nowrap}
#pd-control .pd-payment-table .pd-control-button{display:inline-flex;margin:0;padding:4px 7px;line-height:1.4;white-space:nowrap;flex:none}
#pd-control .pd-payment-plan-head{display:inline-flex;max-width:calc(100% - 43px);vertical-align:middle;align-items:center;gap:6px}
#pd-control .pd-payment-plan-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
#pd-control .pd-payment-plan-head+.pd-control-button{margin-left:5px}
#pd-control .pd-payment-cell-line{display:flex;align-items:center;gap:6px;white-space:nowrap}
#pd-control .pd-payment-detail-link{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;border:0;background:transparent;padding:2px 0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:#afc7bb;text-underline-offset:3px}
#pd-control .pd-payment-detail-link:focus-visible{outline:2px solid #45785f;outline-offset:3px}
#pd-control .pd-payment-singleline{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
#pd-control .pd-payment-pending{font-size:11px;color:#975b21}
#pd-control .pd-payment-table .pd-status{margin:0 0 0 5px;padding:2px 4px;font-size:10px;white-space:nowrap}
#pd-control .pd-payment-table td>.pd-sub.pd-error{display:inline;margin:0 0 0 4px;font-size:10px}
#pd-control .pd-payment-details-dialog{width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 48px);box-sizing:border-box;overflow:auto;border:1px solid #b6cabe;border-radius:12px;padding:22px;background:#fff;color:#23382b;box-shadow:0 18px 65px #0004}
#pd-control .pd-payment-details-dialog::backdrop{background:#122d2355}
#pd-control .pd-payment-details-dialog h3{margin:0 0 16px;font-size:18px}
#pd-control .pd-payment-details-dialog h4{font-size:14px;margin:20px 0 9px}
#pd-control .pd-payment-details-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin:0}
#pd-control .pd-payment-details-summary>div{min-width:0}
#pd-control .pd-payment-details-summary dt{font-size:11px;color:#607469}
#pd-control .pd-payment-details-summary dd{margin:4px 0 0;overflow-wrap:anywhere;font-size:13px}
#pd-control .pd-payment-detail-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7}
#pd-control .pd-payment-details-dialog .pd-payment-record{border-top:1px solid #e1e9e3;padding:12px 0;display:block}
#pd-control .pd-payment-details-dialog .pd-payment-record p{margin:6px 0}
#pd-control .pd-payment-registration{margin-top:14px}
#pd-control .pd-payment-registration fieldset{margin:0;padding:0;border:0;min-width:0}
#pd-control .pd-payment-registration-picker{display:block;margin-top:12px;font-size:13px}
#pd-control .pd-payment-registration-picker input{display:block;margin-top:7px;max-width:100%}
#pd-control .pd-payment-table .pd-payment-delete-confirm{position:absolute;white-space:normal;z-index:20;width:280px;box-shadow:0 8px 25px #0002}
@media(max-width:640px){#pd-control .pd-payment-details-summary{grid-template-columns:1fr}#pd-control .pd-payment-details-dialog{padding:16px}}

#pd-control .pd-payment-table .pd-payment-draft-label{display:inline-block;max-width:84px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0 5px;vertical-align:middle}
#pd-control .pd-payment-pending-row>td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* pd-independent-sku-style */
/* V46: independent SKU parameter cells with explicit equal-only row merging. */
#pd-control .pd-ai-parameter-brief .pd-ai-project-meta{display:flex;flex-wrap:wrap;gap:4px 18px;padding:8px 10px;background:#f5f8fa;border:1px solid #e2e8ed;border-radius:5px;margin:0 0 10px;color:#4b6270}
#pd-control .pd-ai-parameter-brief .pd-ai-project-meta span{color:#738692;font-size:11px}
#pd-control .pd-ai-parameter-brief .pd-ai-sku-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
#pd-control .pd-ai-parameter-brief .pd-ai-sku-head>span:first-child{font-weight:700;font-size:14px}
#pd-control .pd-ai-parameter-brief .pd-ai-sku-head>span:last-child{display:flex;gap:4px;flex-wrap:wrap}
#pd-control .pd-ai-parameter-brief .pd-ai-sku-head .pd-control-button{padding:4px 7px;min-height:28px;font-size:11px;white-space:nowrap}
#pd-control .pd-ai-parameter-brief .pd-ai-sku-head .pd-ai-add-sku{color:#176183;border-color:#9fbfce;background:#f6fcff}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table{min-width:calc(200px + var(--pd-ai-column-count,1) * 228px)}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table col.pd-ai-field-column{width:200px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table tr>th:first-child{width:200px;min-width:200px;max-width:200px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-label{display:inline-flex;align-items:center;gap:8px;max-width:100%;vertical-align:middle}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-label>span{white-space:nowrap}
#pd-control .pd-ai-parameter-brief .pd-ai-row-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;white-space:nowrap;margin:0;padding:2px 8px;min-height:24px;font-size:10px;background:#f8fbfd;color:#4c6c7d}
@media(max-width:640px){#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table{min-width:calc(200px + var(--pd-ai-column-count,1) * 212px)}}
#pd-control .pd-ai-parameter-brief .pd-ai-row-toggle:disabled{opacity:.45}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-source{display:block;margin:4px 0 0;font-size:10px;line-height:1.35;color:#7a8d99}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-parameter-row td{vertical-align:top;background:#fff}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-merged-row td{text-align:center;background:#f8fbfd}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-merged-row input:not([type=hidden]),#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-merged-row textarea{text-align:center}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table [type=hidden]{display:none}
#pd-control .pd-ai-parameter-brief .pd-ai-matrix-foot>span{margin:2px 0 9px}

/* pd-history-disclosure-styles */
/* Compact historical panel only; active review evidence is intentionally unaffected. */
#pd-control .pd-history-fold[data-compact-assessment-history]{border:1px solid #dce5df;border-radius:8px;font-size:13px;background:#fff}
#pd-control .pd-history-fold[data-compact-assessment-history]>.pd-history-summary{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;cursor:pointer;padding:12px;list-style:none}
#pd-control .pd-history-fold[data-compact-assessment-history] summary::-webkit-details-marker{display:none}
#pd-control .pd-history-fold[data-compact-assessment-history]>.pd-history-summary h3{margin:0;font-size:14px;line-height:1.5}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-counts{font-size:12px;color:#536359;overflow-wrap:anywhere}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-fold-hint{margin-left:auto;font-size:12px;color:#536359}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-fold-hint:after{content:'展开 ▾'}
#pd-control .pd-history-fold[data-compact-assessment-history][open] .pd-history-fold-hint:after{content:'收起 ▴'}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-body{padding:0 12px 4px}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-context{margin:0 0 10px;font-size:12px;color:#65736b}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-audit-columns{align-items:start;gap:10px}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-audit-group h4{padding:7px 10px;font-size:13px;font-weight:600}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-audit-list{max-height:none;overflow:visible}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-audit-entry{padding:9px 10px;font-size:13px}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-audit-meta{gap:3px 8px;line-height:1.6;min-width:0}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-audit-meta>*{min-width:0;overflow-wrap:anywhere}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-audit-time{font-size:12px}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-record>summary{display:flex;align-items:baseline;gap:7px;list-style:none;cursor:pointer;font-weight:400;color:inherit}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-record>summary:before{content:'▸';flex:0 0 10px;color:#65736b}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-record[open]>summary:before{content:'▾'}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-record-hint{font-size:12px;color:#65736b}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-record-body{padding-top:7px;min-width:0}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-audit-comment,#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-audit-missing,#pd-control .pd-history-fold[data-compact-assessment-history] .pd-change-disposition{font-size:12px;line-height:1.6;margin:0 0 5px;overflow-wrap:anywhere}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-change-list>li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px 12px;padding:9px 0;align-items:start}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-change-list>li>b{grid-column:1/-1;font-size:13px;font-weight:600}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-change-list small{display:block;font-size:12px;margin-bottom:3px}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-change-before,#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-change-after{padding:8px;border-radius:5px;background:#f1f4f2;font-size:13px;line-height:1.6;max-height:none}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-change-after{background:#edf5ef}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-change-arrow{display:none}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-secondary{margin:0 0 8px;color:#65736b}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-secondary>summary{font-size:12px;cursor:pointer;padding:7px 2px}
#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-secondary>.pd-compact-audit-group{margin-top:5px}
@media(max-width:760px){#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-audit-columns{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){#pd-control .pd-history-fold[data-compact-assessment-history] .pd-compact-change-list>li{grid-template-columns:minmax(0,1fr)}#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-counts{flex-basis:100%;order:3}#pd-control .pd-history-fold[data-compact-assessment-history] .pd-history-body{padding:0 8px 4px}}

/* pd-v77-compact-selling-points */

#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table [data-ai-parameter-row="sellingPoints"] textarea[data-ai-point]{display:block;width:100%;box-sizing:border-box;height:32px;min-height:32px;max-height:none;padding:6px 8px;font-size:12px;line-height:18px;resize:none;overflow:hidden;overflow-wrap:anywhere;text-align:left}

/* pd-v78-reference-images */

.pd-ai-reference-images{display:flex;flex-direction:column;gap:8px;min-width:0}
.pd-ai-reference-image-card{border:1px solid #dbe5ed;border-radius:8px;padding:7px;background:#fff;min-width:0}
.pd-ai-reference-image-preview{margin:0}.pd-ai-reference-image-preview figure{width:100%;margin:0}.pd-ai-reference-image-preview img{max-height:140px;object-fit:contain}.pd-ai-reference-image-preview figcaption{overflow-wrap:anywhere}
.pd-ai-reference-image-actions,.pd-ai-reference-image-upload{display:flex;flex-wrap:wrap;align-items:end;gap:6px}.pd-ai-reference-image-actions label,.pd-ai-reference-image-upload>label{display:flex;flex-direction:column;gap:3px;font-size:11px;min-width:0;flex:1 1 105px}.pd-ai-reference-image-actions select,.pd-ai-reference-image-upload select{width:100%;max-width:100%;min-width:0}.pd-ai-reference-image-upload>small,.pd-ai-reference-image-picker{flex:1 1 100%;min-width:0}.pd-ai-reference-image-picker summary{font-size:11px;cursor:pointer;margin:4px 0}.pd-ai-reference-image-picker>button{margin-top:5px}.pd-ai-reference-image-row>th small{font-weight:400;line-height:1.5}
.pd-ai-sku-table[data-ai-compact-columns="true"] .pd-ai-reference-image-actions select,.pd-ai-sku-table[data-ai-compact-columns="true"] .pd-ai-reference-image-upload select{width:100%;min-width:0}

/* pd-v78-attachment-folders */

#pd-control .pd-folder-browser{display:grid;grid-template-columns:185px minmax(0,1fr);gap:16px;align-items:start}
#pd-control .pd-folder-sidebar{border:1px solid var(--pd-border);border-radius:8px;padding:8px;background:var(--pd-surface)}
#pd-control .pd-folder-tree{display:flex;flex-direction:column;gap:2px}#pd-control .pd-folder-link{display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;background:transparent;color:var(--pd-text);text-align:left;padding:7px;border-radius:5px;font:inherit;cursor:pointer}#pd-control .pd-folder-link[aria-pressed="true"]{background:var(--pd-soft,#eef2ff);box-shadow:inset 3px 0 #607dea;font-weight:600}#pd-control .pd-folder-link small{opacity:.65}#pd-control .pd-folder-child{padding-left:21px;font-size:12px}#pd-control .pd-folder-link span{overflow-wrap:anywhere}
#pd-control .pd-folder-content{min-width:0}#pd-control .pd-folder-content h4{margin:0}#pd-control .pd-folder-content .pd-file-upload{margin-top:8px;gap:8px}#pd-control .pd-folder-content .pd-file-item{align-items:flex-start;flex-wrap:wrap;gap:8px}#pd-control .pd-folder-content .pd-file-item>div:first-child{min-width:150px;flex:1;overflow-wrap:anywhere}#pd-control .pd-folder-content .pd-file-item .pd-form-actions{gap:5px;flex-wrap:wrap}#pd-control .pd-folder-content .pd-file-item select{max-width:165px}#pd-control .pd-file-type-details{font-size:12px;padding:7px 0}#pd-control .pd-file-type-details label{display:flex;gap:4px;margin-top:6px}#pd-control .pd-folder-manage{border-top:1px solid var(--pd-border);margin-top:8px;padding-top:8px;font-size:12px}#pd-control .pd-folder-manage label{display:flex;flex-direction:column;gap:3px;margin-top:8px}#pd-control .pd-folder-manage input{font:inherit;border:1px solid var(--pd-border);border-radius:5px;padding:6px;width:100%;box-sizing:border-box;background:var(--pd-surface);color:var(--pd-text)}#pd-control .pd-folder-manage .pd-form-actions{flex-wrap:wrap;margin-top:8px;gap:4px}#pd-control .pd-folder-mobile{display:none}
@media(max-width:700px){#pd-control .pd-folder-browser{grid-template-columns:1fr;gap:8px}#pd-control .pd-folder-tree{display:none}#pd-control .pd-folder-mobile{display:flex;align-items:center;gap:8px}#pd-control .pd-folder-mobile select{min-width:0;flex:1}#pd-control .pd-folder-sidebar{padding:8px}#pd-control .pd-folder-manage{margin-top:6px;padding-top:6px}#pd-control .pd-folder-content .pd-file-item{display:block}#pd-control .pd-folder-content .pd-file-item>.pd-form-actions{margin-top:8px}}

/* pd-v79-reference-groups */

#pd-control .pd-ai-reference-groups{min-width:0;max-width:100%;text-align:left}
#pd-control .pd-ai-reference-group{position:relative;display:flex;gap:5px;border:1px solid #dbe4eb;border-radius:6px;background:#fff;padding:6px;margin:0 0 7px;min-width:0;align-items:flex-start;flex-wrap:wrap}
#pd-control .pd-ai-reference-group:last-of-type{margin-bottom:0}
#pd-control .pd-ai-reference-group-body{display:flex;flex-direction:column;gap:5px;flex:1 1 0;min-width:0}
#pd-control .pd-ai-reference-group-actions{display:flex;flex-direction:column;gap:4px;flex:0 0 23px}
#pd-control .pd-ai-reference-group-actions .pd-control-button{width:23px;min-width:23px;padding:0!important;height:26px;line-height:24px;margin:0}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td textarea[data-ai-reference-group-field]{display:block;width:100%!important;box-sizing:border-box;min-width:0!important;min-height:30px!important;height:30px;max-height:none!important;padding:5px 6px!important;line-height:18px!important;resize:none!important;overflow:hidden!important;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;text-align:left}
#pd-control .pd-ai-reference-group-image{position:relative;display:flex;align-items:center;gap:5px;flex-wrap:wrap;min-width:0}
#pd-control .pd-ai-reference-group-image>.pd-control-button{font-size:11px;padding:4px 7px;margin:0;white-space:normal}
#pd-control .pd-ai-reference-group-image>select{flex:1 1 86px;min-width:0!important;width:auto!important;max-width:100%;font-size:11px;padding:4px;height:auto}
#pd-control .pd-ai-reference-group-existing{font-size:10px;flex:1 1 100%;min-width:0}
#pd-control .pd-ai-reference-group-existing select{max-width:100%;min-width:0!important;width:100%}
#pd-control .pd-ai-reference-group-existing summary{cursor:pointer}
#pd-control .pd-ai-parameter-brief .pd-ai-reference-group-preview{flex:1 1 100%;min-height:0;margin:0}
#pd-control .pd-ai-parameter-brief .pd-ai-reference-group-preview img{height:100px;max-height:100px}
#pd-control .pd-ai-reference-group-confirm{flex:1 1 100%;padding:6px;background:#fff5dd;font-size:11px;line-height:1.5;min-width:0}
#pd-control .pd-ai-reference-groups-row td{vertical-align:top!important}

/* pd-v81-reference-image-actions */

/* Keep the native disclosure in the image action row; its picker gets its own full-width row. */
#pd-control .pd-ai-reference-group-existing{display:contents}
#pd-control .pd-ai-reference-group-existing::details-content{display:contents}
#pd-control .pd-ai-reference-group-existing>summary{flex:0 1 auto;min-width:0;max-width:100%;font-size:10px;line-height:18px;white-space:nowrap;cursor:pointer;list-style:none}
#pd-control .pd-ai-reference-group-existing>summary::-webkit-details-marker{display:none}
#pd-control .pd-ai-reference-group-existing>summary::before{content:'▸';display:inline-block;width:8px}
#pd-control .pd-ai-reference-group-existing[open]>summary::before{content:'▾'}
#pd-control .pd-ai-reference-group-existing>summary:focus-visible{outline:2px solid #2563eb;outline-offset:2px;border-radius:2px}
#pd-control .pd-ai-reference-group-existing-picker{display:flex;flex:1 1 100%;align-items:center;gap:4px;min-width:0;max-width:100%;flex-wrap:wrap}
#pd-control .pd-ai-reference-group-existing:not([open])>.pd-ai-reference-group-existing-picker{display:none}
#pd-control .pd-ai-reference-group-existing-picker>select{flex:1 1 60px;width:0!important;max-width:100%;min-width:0!important;font-size:11px;padding:4px;height:auto;box-sizing:border-box}
#pd-control .pd-ai-reference-group-existing-picker>.pd-control-button{flex:0 0 auto;font-size:11px;padding:4px 7px;margin:0}
#pd-control .pd-ai-reference-group-image>[data-ai-reference-group-upload]{flex:0 0 auto;padding:4px 5px;white-space:nowrap}

/* pd-product-detail-help */

#pd-control .pd-ai-help-footer{display:flex;justify-content:flex-end;margin-top:8px;min-width:0}
#pd-control .pd-ai-detail-help{max-width:100%;min-width:0;color:var(--pd-text,#334155)}
#pd-control .pd-ai-detail-help>summary{box-sizing:border-box;width:max-content;max-width:100%;margin-left:auto;padding:7px 12px;border:1px solid var(--pd-border,#cbd5e1);border-radius:6px;background:var(--pd-surface,#fff);color:inherit;font-size:13px;line-height:1.4;font-weight:600;cursor:pointer;list-style:revert}
#pd-control .pd-ai-detail-help>summary:focus-visible{outline:2px solid #2563eb;outline-offset:3px}
#pd-control .pd-ai-detail-help-body{margin-top:8px;padding:10px 12px;border:1px solid var(--pd-border,#cbd5e1);border-radius:6px;text-align:left;overflow-wrap:anywhere;background:var(--pd-surface,#fff)}
#pd-control .pd-ai-detail-help-body .pd-ai-matrix-foot{display:block}
#pd-control .pd-ai-detail-help-body p{line-height:1.6;margin:0 0 8px}
#pd-control .pd-ai-detail-help-body>p:last-child{margin-bottom:0}
#pd-control .pd-ai-detail-help-body .pd-ai-matrix-foot>span{display:block;margin-bottom:8px}

/* pd-v82-corner-help */

/* 4.1 compact table-corner help; the panel remains outside the scroll clipping context. */
#pd-control .pd-ai-matrix{overflow:visible}
#pd-control .pd-ai-corner-help{position:relative;display:flex;justify-content:flex-end;width:100%;box-sizing:border-box;min-height:28px;padding-top:2px;z-index:3;pointer-events:none}
#pd-control .pd-ai-help-trigger{pointer-events:auto;display:block;margin:0;padding:3px 8px;min-height:26px;border:1px solid var(--pd-border,#cbd5e1);border-radius:0 0 5px 5px;background:var(--pd-surface,#fff);color:var(--pd-muted,#64748b);font:inherit;font-size:12px;line-height:18px;cursor:help}
#pd-control .pd-ai-help-trigger:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
#pd-control .pd-ai-corner-help-panel{pointer-events:auto;position:absolute;right:0;bottom:calc(100% - 2px);box-sizing:border-box;width:min(520px,calc(100vw - 48px));max-width:100%;max-height:min(420px,70vh);margin:0;padding:12px 14px;overflow:auto;overscroll-behavior:contain;border:1px solid var(--pd-border,#cbd5e1);border-radius:7px;background:var(--pd-surface,#fff);box-shadow:0 8px 24px #0f172a26;color:var(--pd-text,#334155);font-size:12px;line-height:1.6;z-index:5}
#pd-control .pd-ai-corner-help-panel[hidden]{display:none!important}

/* pd-v83-attachment-sku */

#pd-control .pd-file-source-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}#pd-control .pd-file-source-link,#pd-control .pd-file-source-label{font:inherit;font-size:11px;background:transparent;border:0;color:var(--pd-muted,#64748b);padding:2px 0;text-align:left;overflow-wrap:anywhere}#pd-control .pd-file-source-link{cursor:pointer;text-decoration:underline;text-underline-offset:3px}#pd-control .pd-file-source-highlight{animation:pd-source-highlight 2s ease-out}@keyframes pd-source-highlight{from{box-shadow:inset 0 0 0 3px #607dea;background:#eef2ff}to{box-shadow:inset 0 0 0 0 transparent}}
#pd-control .pd-file-sku-filters{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}#pd-control .pd-file-sku-filters button{padding:5px 9px;font-size:12px;max-width:100%;overflow-wrap:anywhere}#pd-control .pd-file-sku-filters button[aria-pressed="true"]{background:var(--pd-soft,#eef2ff);border-color:#607dea;box-shadow:inset 0 -2px #607dea}
#pd-control .pd-file-sku-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}#pd-control .pd-file-sku-tag{font-size:11px;line-height:1.5;padding:2px 6px;border-radius:4px;background:var(--pd-soft,#eef2ff);border:1px solid var(--pd-border);overflow-wrap:anywhere}#pd-control .pd-file-sku-unassigned,#pd-control .pd-file-sku-retired{opacity:.65;background:transparent}
#pd-control .pd-file-sku-picker{font-size:12px;max-width:100%;position:relative;align-self:start;padding:6px;border:1px solid var(--pd-border);border-radius:5px;background:var(--pd-surface)}#pd-control .pd-file-sku-picker summary{cursor:pointer;overflow-wrap:anywhere;max-width:260px}#pd-control .pd-file-sku-picker[open]{min-width:180px}#pd-control .pd-file-sku-choices{display:flex;flex-wrap:wrap;gap:5px 10px;max-width:420px;margin-top:8px}#pd-control .pd-file-sku-choices label{display:flex;flex-direction:row;align-items:center;gap:5px;font-weight:400;max-width:100%;overflow-wrap:anywhere}#pd-control .pd-file-sku-choices input{width:auto;padding:0;margin:0}#pd-control .pd-file-sku-picker .pd-small{display:block;margin-top:7px;max-width:360px}
@media(max-width:700px){#pd-control .pd-file-sku-filters{gap:4px}#pd-control .pd-file-sku-picker summary{max-width:240px}#pd-control .pd-file-sku-picker[open]{width:100%;box-sizing:border-box}#pd-control .pd-file-sku-choices{max-width:none}}

/* pd-market-reference-styles */
#pd-control .pd-market-price-grid{align-items:start}#pd-control .pd-market-references{display:grid;gap:6px;min-width:0;font-size:13px}#pd-control .pd-market-reference-row{display:flex;align-items:flex-start;gap:6px;margin-bottom:6px}#pd-control .pd-market-reference-row textarea{flex:1;min-width:0;width:100%;box-sizing:border-box;resize:vertical;min-height:36px;padding:7px 8px;font:inherit}#pd-control .pd-market-reference-row button{padding:5px 9px;min-height:36px;flex-shrink:0}#pd-control .pd-market-references .pd-small:empty{display:none}
/* unnamed */

    #pd-control { color-scheme:light; color-scheme:only light; --pd-bg:#f5f6f8; --pd-surface:#ffffff; --pd-text:#202b3c; --pd-muted:#626d7c; --pd-border:#e3e7ed; --pd-accent:#244d42; --pd-active:#e4eee9; --pd-red:#ad432e; --pd-red-bg:#fff0e9; --pd-amber:#8a641c; --pd-amber-bg:#fcf4dd; --pd-blue:#375d90; --pd-blue-bg:#ebf1f9; --pd-space:22px; color:var(--pd-text); background:var(--pd-bg); font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; border:1px solid var(--pd-border); border-radius:16px; overflow:hidden; }
    #pd-control * { box-sizing:border-box; }
    #pd-control button { font:inherit; color:inherit; }
    #pd-control h2,#pd-control h3,#pd-control p { margin:0; }
    #pd-control h2 { font-size:23px; font-weight:500; letter-spacing:-.5px; }
    #pd-control h3 { font-size:15px; font-weight:500; }
    #pd-control .pd-chrome { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:18px 22px; background:var(--pd-surface); border-bottom:1px solid var(--pd-border); }
    #pd-control .pd-brand { display:flex; gap:10px; align-items:center; font-weight:500; }
    #pd-control .pd-mark { width:28px; height:28px; display:grid; place-items:center; border-radius:7px; background:var(--pd-active); color:var(--pd-accent); }
    #pd-control .pd-small { font-size:12px; color:var(--pd-muted); }
    #pd-control .pd-example { font-size:12px; color:var(--pd-muted); text-align:right; }
    #pd-control .pd-shell { display:grid; grid-template-columns:155px minmax(0,1fr); }
    #pd-control .pd-sidebar { padding:20px 10px; background:var(--pd-surface); border-right:1px solid var(--pd-border); }
    #pd-control .pd-nav { display:flex; flex-direction:column; gap:6px; }
    #pd-control .pd-nav button { display:flex; align-items:center; gap:9px; text-align:left; border:0; border-radius:8px; padding:12px 10px; background:transparent; color:var(--pd-muted); }
    #pd-control .pd-nav button[aria-pressed="true"] { color:var(--pd-accent); background:var(--pd-active); font-weight:500; }
    #pd-control .pd-nav button:hover { background:var(--pd-bg); }
    #pd-control .pd-nav button[aria-pressed="true"]:hover { background:var(--pd-active); }
    #pd-control .pd-nav i { width:16px; height:16px; }
    #pd-control .pd-nav-note { margin:36px 10px 0; color:var(--pd-muted); font-size:12px; }
    #pd-control .pd-main { padding:var(--pd-space); min-width:0; }
    #pd-control .pd-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:18px; }
    #pd-control .pd-heading p { margin-top:4px; color:var(--pd-muted); font-size:12px; }
    #pd-control .pd-count { color:var(--pd-muted); font-size:12px; white-space:nowrap; padding-top:8px; }
    #pd-control .pd-surface { background:var(--pd-surface); border:1px solid var(--pd-border); border-radius:11px; overflow:hidden; }
    #pd-control .pd-project-head,#pd-control .pd-project-row { display:grid; grid-template-columns:minmax(138px,1.35fr) minmax(112px,1fr) minmax(135px,1.35fr) minmax(115px,1fr); gap:12px; align-items:start; padding:15px 18px; }
    #pd-control .pd-project-head { font-size:12px; background:var(--pd-bg); color:var(--pd-muted); padding-top:10px; padding-bottom:10px; }
    #pd-control .pd-project-row + .pd-project-row { border-top:1px solid var(--pd-border); }
    #pd-control .pd-project-row > div { min-width:0; }
    #pd-control .pd-project-link { text-align:left; padding:0; background:transparent; border:0; color:var(--pd-accent); font-weight:500; }
    #pd-control .pd-project-link:hover { text-decoration:underline; text-underline-offset:3px; }
    #pd-control .pd-sub { display:block; color:var(--pd-muted); font-size:12px; margin-top:4px; }
    #pd-control .pd-status { display:inline-block; border-radius:5px; font-size:12px; padding:2px 6px; color:var(--pd-muted); background:var(--pd-bg); margin-top:6px; }
    #pd-control .pd-status[data-tone="red"] { color:var(--pd-red); background:var(--pd-red-bg); }
    #pd-control .pd-status[data-tone="amber"] { color:var(--pd-amber); background:var(--pd-amber-bg); }
    #pd-control .pd-status[data-tone="green"] { color:var(--pd-accent); background:var(--pd-active); }
    #pd-control .pd-status[data-tone="blue"] { color:var(--pd-blue); background:var(--pd-blue-bg); }
    #pd-control .pd-money { font-variant-numeric:tabular-nums; white-space:nowrap; }
    #pd-control .pd-mobile-label { display:none; }
    #pd-control .pd-footnote { margin-top:13px; font-size:12px; color:var(--pd-muted); }
    #pd-control .pd-back { border:0; background:transparent; padding:0; color:var(--pd-accent); margin-bottom:13px; }
    #pd-control .pd-back:hover { text-decoration:underline; }
    #pd-control .pd-detail-head { display:flex; gap:12px; justify-content:space-between; flex-wrap:wrap; margin-bottom:18px; }
    #pd-control .pd-detail-head .pd-status { margin:0; align-self:flex-start; }
    #pd-control .pd-section { padding:18px; }
    #pd-control .pd-section + .pd-section { border-top:1px solid var(--pd-border); }
    #pd-control .pd-section-title { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:14px; }
    #pd-control .pd-next { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; margin:0 0 18px; padding:14px 16px; border-left:3px solid var(--pd-accent); background:var(--pd-active); border-radius:0 7px 7px 0; }
    #pd-control .pd-next .pd-small { color:var(--pd-accent); }
    #pd-control .pd-next p { margin-top:3px; }
    #pd-control .pd-next-date { text-align:right; flex-shrink:0; }
    #pd-control .pd-timeline { list-style:none; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:6px; margin:0; padding:0; }
    #pd-control .pd-timeline li { position:relative; padding-top:23px; font-size:12px; }
    #pd-control .pd-timeline li::before { content:""; position:absolute; top:5px; left:0; right:-6px; height:2px; background:var(--pd-border); }
    #pd-control .pd-timeline li:last-child::before { right:calc(100% - 10px); }
    #pd-control .pd-timeline li::after { content:""; position:absolute; left:0; top:1px; width:10px; height:10px; border-radius:50%; background:var(--pd-border); }
    #pd-control .pd-timeline li[data-state="done"]::after { background:var(--pd-accent); }
    #pd-control .pd-timeline li[data-state="current"]::after { background:var(--pd-amber); }
    #pd-control .pd-timeline li[data-state="blocked"]::after { background:var(--pd-red); }
    #pd-control .pd-plan { display:flex; gap:10px 22px; flex-wrap:wrap; margin-top:18px; padding-top:12px; border-top:1px solid var(--pd-border); font-size:12px; color:var(--pd-muted); }
    #pd-control .pd-payment-summary { font-size:12px; color:var(--pd-muted); }
    #pd-control .pd-payment-head,#pd-control .pd-payment-row { display:grid; grid-template-columns:minmax(105px,.8fr) minmax(130px,1.3fr) minmax(105px,1fr) minmax(90px,.8fr); gap:14px; padding:12px 0; }
    #pd-control .pd-payment-head { padding-top:0; font-size:12px; color:var(--pd-muted); }
    #pd-control .pd-payment-row { border-top:1px solid var(--pd-border); }
    #pd-control .pd-audit { list-style:none; margin:0; padding:0; display:grid; gap:12px; }
    #pd-control .pd-audit li { display:grid; grid-template-columns:75px 1fr; gap:12px; font-size:12px; }
    #pd-control .pd-audit-time { color:var(--pd-muted); }
    #pd-control .pd-ledger-item { padding:18px; }
    #pd-control .pd-ledger-item + .pd-ledger-item { border-top:1px solid var(--pd-border); }
    #pd-control .pd-ledger-top { display:flex; justify-content:space-between; align-items:baseline; gap:10px; flex-wrap:wrap; margin-bottom:14px; }
    #pd-control .pd-issue { display:grid; grid-template-columns:minmax(130px,1fr) minmax(170px,1.6fr) minmax(120px,1fr); gap:16px; padding:18px; }
    #pd-control .pd-issue + .pd-issue { border-top:1px solid var(--pd-border); }
    #pd-control .pd-issue h3 { margin-bottom:4px; }
    #pd-control .pd-issue-label { font-size:12px; color:var(--pd-muted); margin-bottom:4px; }
    #pd-control .pd-empty { padding:18px; color:var(--pd-muted); font-size:12px; }
    #pd-control .pd-control-button { background:var(--pd-surface); border:1px solid var(--pd-border); border-radius:6px; padding:6px 10px; color:var(--pd-accent); }
    #pd-control .pd-control-button[data-emphasis] { background:var(--pd-active); border-color:var(--pd-active); }
    #pd-control .pd-node-list { display:grid; gap:0; }
    #pd-control .pd-node { padding:13px 0; border-top:1px solid var(--pd-border); }
    #pd-control .pd-node-top { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
    #pd-control .pd-node-name { font-weight:500; overflow-wrap:anywhere; }
    #pd-control .pd-node-actions { display:flex; flex-wrap:wrap; gap:6px; flex-shrink:0; }
    #pd-control .pd-node-meta { display:flex; flex-wrap:wrap; gap:4px 18px; font-size:12px; color:var(--pd-muted); margin:5px 0; }
    #pd-control .pd-node details { font-size:12px; margin-top:7px; }
    #pd-control .pd-node summary { color:var(--pd-accent); }
    #pd-control .pd-node details p { margin:6px 0; }
    #pd-control .pd-editor { background:var(--pd-bg); border-radius:8px; padding:16px; margin:12px 0 16px; }
    #pd-control .pd-editor-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:12px; }
    #pd-control .pd-editor label { display:grid; gap:5px; font-size:12px; color:var(--pd-muted); min-width:0; }
    #pd-control .pd-editor input:not([type="checkbox"]),#pd-control .pd-editor select { width:100%; min-width:0; padding:8px; color:var(--pd-text); background:var(--pd-surface); border:1px solid var(--pd-border); border-radius:5px; font:inherit; font-size:14px; }
    #pd-control .pd-editor input:disabled,#pd-control .pd-editor select:disabled { opacity:.7; }
    #pd-control .pd-deps { display:flex; flex-wrap:wrap; gap:8px 14px; margin:14px 0; padding:10px; border:1px solid var(--pd-border); border-radius:5px; }
    #pd-control .pd-deps legend { color:var(--pd-muted); font-size:12px; padding:0 4px; }
    #pd-control .pd-deps label { display:flex; gap:5px; align-items:center; }
    #pd-control .pd-form-actions { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
    #pd-control .pd-error { color:var(--pd-red); margin:8px 0; font-size:12px; }
    #pd-control .pd-notice { display:flex; gap:10px; flex-wrap:wrap; align-items:center; background:var(--pd-active); padding:10px 12px; border-radius:6px; margin-bottom:14px; font-size:12px; }
    @media (max-width:610px) { #pd-control .pd-editor-grid { grid-template-columns:1fr; } #pd-control .pd-node-top { flex-wrap:wrap; } #pd-control .pd-editor input:not([type="checkbox"]),#pd-control .pd-editor select { font-size:16px; } }
    #pd-control [hidden] { display:none !important; }
    @media (max-width:820px) { #pd-control .pd-shell { grid-template-columns:1fr; } #pd-control .pd-sidebar { border-right:0; border-bottom:1px solid var(--pd-border); padding:9px 14px; } #pd-control .pd-nav { flex-direction:row; flex-wrap:wrap; gap:4px; } #pd-control .pd-nav-note { display:none; } #pd-control .pd-nav button { padding:9px 12px; } }
    @media (max-width:610px) { #pd-control .pd-chrome { padding:15px; align-items:flex-start; } #pd-control .pd-example { max-width:112px; } #pd-control .pd-main { padding:15px; } #pd-control h2 { font-size:21px; } #pd-control .pd-heading { margin-bottom:14px; } #pd-control .pd-project-head,#pd-control .pd-payment-head { display:none; } #pd-control .pd-project-row { grid-template-columns:1fr 1fr; gap:14px; padding:16px; } #pd-control .pd-mobile-label { display:block; color:var(--pd-muted); font-size:12px; margin-bottom:3px; } #pd-control .pd-project-row .pd-project-name { grid-column:1/-1; } #pd-control .pd-project-row .pd-project-cash { grid-column:1/-1; } #pd-control .pd-payment-row { grid-template-columns:1fr 1fr; gap:14px; } #pd-control .pd-payment-row > div:first-child { grid-column:1/-1; } #pd-control .pd-timeline { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 8px; } #pd-control .pd-timeline li:nth-child(3)::before { right:calc(100% - 10px); } #pd-control .pd-issue { grid-template-columns:1fr; gap:12px; } #pd-control .pd-next { gap:12px; padding:12px; } #pd-control .pd-section { padding:16px; } #pd-control .pd-section-title { align-items:flex-start; flex-direction:column; gap:4px; } #pd-control .pd-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); } #pd-control .pd-nav button { padding:9px 6px; justify-content:center; font-size:12px; gap:4px; } #pd-control .pd-nav button i { display:none; } #pd-control .pd-sidebar { padding:8px; } }
    #pd-control .pd-progress {display:grid;gap:5px;margin:8px 0 12px;font-size:13px;color:var(--pd-muted)}
    #pd-control progress {width:100%;max-width:240px;height:7px;accent-color:var(--pd-accent)}
    #pd-control .pd-editor label {font-size:14px}
    #pd-control .pd-heading {flex-wrap:wrap}

    #pd-control button:disabled {opacity:.45;cursor:not-allowed;}
    #pd-control .pd-eval-title {margin:20px 0 10px;}
    #pd-control .pd-full-label {display:grid;gap:6px;margin:14px 0;font-size:14px;}
    #pd-control textarea {font:inherit;font-size:14px;width:100%;resize:vertical;color:var(--pd-text);background:var(--pd-surface);border:1px solid var(--pd-border);border-radius:6px;padding:9px;}
    #pd-control .pd-quote-row {margin:12px 0;padding:14px;border:1px solid var(--pd-border);border-radius:8px;}
    #pd-control .pd-eval-facts {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0;}
    #pd-control .pd-eval-facts strong {display:block;font-size:18px;margin:4px 0;}
    #pd-control .pd-compare {display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:12px 0 20px;}
    #pd-control .pd-compare article {border:1px solid var(--pd-border);padding:12px;border-radius:7px;}
    #pd-control .pd-wrap {white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0;}
    #pd-control .pd-demo-review {padding:15px;margin:18px 0;background:var(--pd-blue-bg);border-radius:8px;}
    #pd-control .pd-gate {padding:12px;background:var(--pd-amber-bg);color:var(--pd-amber);border-radius:6px;margin:12px 0;}
    #pd-control .pd-node-actions {flex-shrink:1;}
    @media(max-width:610px){#pd-control .pd-eval-facts{grid-template-columns:1fr;}#pd-control .pd-compare{grid-template-columns:1fr;}}
    #pd-control .pd-trash-row {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--pd-border);}
    #pd-control .pd-delete-project {display:block;margin-top:8px;font-size:12px;color:var(--pd-red);}
    #pd-control .pd-score-model {margin:20px 0;padding:16px;border:1px solid var(--pd-border);border-radius:10px;}
    #pd-control .pd-score-grid {display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:14px;}
    #pd-control .pd-score-dimension {padding:14px;background:var(--pd-surface);border:1px solid var(--pd-border);border-radius:8px;}
    #pd-control .pd-score-dimension select {font:inherit;width:100%;padding:8px;color:var(--pd-text);background:var(--pd-bg);border:1px solid var(--pd-border);border-radius:5px;}
    #pd-control .pd-score-dimension details {font-size:13px;margin-top:8px;}
    #pd-control .pd-score-dimension ul {padding-left:18px;}
    #pd-control .pd-score-dimension li {margin-bottom:7px;}
    #pd-control .pd-score-result {display:flex;flex-wrap:wrap;align-items:center;gap:20px;padding:14px;margin-top:14px;background:var(--pd-active);border-radius:8px;}
    #pd-control .pd-score-result strong {display:block;font-size:26px;}
    #pd-control .pd-score-breakdown {display:grid;gap:8px;margin:12px 0;}
    #pd-control .pd-score-breakdown>div {display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;border-bottom:1px solid var(--pd-border);padding:8px 0;}
    #pd-control .pd-score-breakdown p {flex-basis:100%;}
    @media(max-width:610px){#pd-control .pd-score-grid {grid-template-columns:1fr;}}
    #pd-control .pd-approval-row {display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--pd-border);}
    #pd-control .pd-demo-review {border:2px solid var(--pd-accent);}
    @media(max-width:610px){#pd-control .pd-approval-row{align-items:flex-start;flex-direction:column;}}

    #pd-control .pd-table-scroll {width:100%;max-width:100%;min-width:0;overflow-x:auto;margin:14px 0;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border:1px solid var(--pd-border);border-radius:8px;}
    #pd-control .pd-table-scroll:focus-visible {outline:2px solid var(--pd-accent);outline-offset:3px;}
    #pd-control .pd-comparison-table {width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;background:var(--pd-surface);font-size:14px;}
    #pd-control .pd-score-table {min-width:850px;}
    #pd-control .pd-field-col {width:105px;}
    #pd-control .pd-comparison-table caption {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
    #pd-control .pd-comparison-table th,#pd-control .pd-comparison-table td {padding:12px 10px;text-align:left;vertical-align:top;border-right:1px solid var(--pd-border);border-bottom:1px solid var(--pd-border);overflow-wrap:anywhere;}
    #pd-control .pd-comparison-table th:last-child,#pd-control .pd-comparison-table td:last-child {border-right:0;}
    #pd-control .pd-comparison-table tr:last-child td,#pd-control .pd-comparison-table tr:last-child th {border-bottom:0;}
    #pd-control .pd-comparison-table thead th {background:var(--pd-active);font-weight:600;}
    #pd-control .pd-comparison-table tbody th {background:var(--pd-bg);font-weight:500;}
    #pd-control .pd-comparison-table tr>th:first-child {position:sticky;left:0;z-index:1;}
    #pd-control .pd-comparison-table input,#pd-control .pd-comparison-table select,#pd-control .pd-comparison-table textarea {width:100%;min-width:0;margin:0;font-size:14px;}
    #pd-control .pd-comparison-table textarea {resize:vertical;}
    #pd-control .pd-column-guide {margin:0;padding-left:16px;font-size:13px;line-height:1.65;}
    #pd-control .pd-column-guide li {margin-bottom:9px;}
    #pd-control .pd-supplier-table thead button {display:block;margin-top:8px;font-size:12px;}
    #pd-control .pd-scroll-hint {margin:4px 0 12px;}
    @media(max-width:610px){#pd-control .pd-comparison-table input,#pd-control .pd-comparison-table select,#pd-control .pd-comparison-table textarea{font-size:16px;}}
    @media(max-width:610px){#pd-control .pd-comparison-table tr>th:first-child{position:static;}#pd-control .pd-main,#pd-control .pd-section,#pd-control .pd-editor{padding:10px;}#pd-control .pd-score-model{padding:8px;}}

    #pd-control .pd-lowest-cell {background:var(--pd-active)!important;box-shadow:inset 0 0 0 2px var(--pd-accent);font-weight:700;}
    #pd-control .pd-lowest-cell input {font-weight:700;background:var(--pd-active);}
    #pd-control .pd-lowest-label {display:block;font-size:12px;font-weight:700;color:var(--pd-accent);margin-top:5px;}
    #pd-control .pd-tracking {background:var(--pd-bg);padding:12px;border-radius:7px;margin-top:12px;font-size:14px;}
    #pd-control .pd-tracking summary {font-weight:600;cursor:pointer;}
    #pd-control .pd-tracking-list {padding-left:18px;margin:14px 0 0;}
    #pd-control .pd-tracking-list li {margin:10px 0;padding:8px 0;border-top:1px solid var(--pd-border);}
    #pd-control .pd-completion-form {padding:14px;margin:12px 0;background:var(--pd-active);border:1px solid var(--pd-accent);border-radius:7px;}
    #pd-control .pd-completion-form label,#pd-control .pd-tracking label {display:grid;gap:6px;}
    #pd-control .pd-completion-form input,#pd-control .pd-tracking input {font:inherit;padding:7px;color:var(--pd-text);background:var(--pd-surface);border:1px solid var(--pd-border);border-radius:5px;}
    #pd-control .pd-independent {display:flex!important;align-items:center;gap:6px;margin:10px 0;}

    #pd-control .pd-component-tabs {display:flex;flex-wrap:wrap;gap:8px;margin:12px 0;}
    #pd-control .pd-component-tabs [aria-selected="true"] {background:var(--pd-active);border-color:var(--pd-accent);font-weight:700;}
    #pd-control .pd-evaluation-fold>summary {cursor:pointer;padding:8px 0;}
    #pd-control .pd-evaluation-fold>summary span {margin-left:14px;}
    #pd-control .pd-evaluation-fold[open]>summary {margin-bottom:16px;border-bottom:1px solid var(--pd-border);}
    #pd-control .pd-installment {padding:16px 0;border-top:1px solid var(--pd-border);margin-top:12px;}
    #pd-control .pd-payment-facts {display:flex;flex-wrap:wrap;gap:10px 20px;margin-bottom:10px;}
    #pd-control .pd-payment-record {padding:12px;margin-top:8px;background:var(--pd-bg);border-radius:6px;}
    #pd-control .pd-voided {opacity:.65;}

    #pd-control .pd-file-upload {display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:16px 0;}
    #pd-control .pd-file-upload label,#pd-control .pd-file-item label {display:grid;gap:5px;font-size:14px;}
    #pd-control .pd-file-upload input,#pd-control .pd-file-upload select,#pd-control #project-files select {font:inherit;padding:7px;background:var(--pd-surface);color:var(--pd-text);border:1px solid var(--pd-border);border-radius:5px;max-width:100%;}
    #pd-control .pd-file-item {display:flex;align-items:start;justify-content:space-between;gap:14px;padding:14px 0;border-top:1px solid var(--pd-border);}
    #pd-control .pd-file-item>div {min-width:0;overflow-wrap:anywhere;}
    #pd-control .pd-file-message {padding:10px;margin:10px 0;background:var(--pd-active);border-radius:6px;overflow-wrap:anywhere;}
    #pd-control .pd-file-preview {padding:12px;border:1px solid var(--pd-border);border-radius:8px;margin:12px 0;}
    #pd-control .pd-file-preview img {display:block;max-width:100%;max-height:500px;margin:auto;object-fit:contain;}
    @media(max-width:700px){#pd-control .pd-file-item {flex-direction:column;}}
    @media (pointer:coarse) { #pd-control button { min-height:44px; } }
  
/* V19: compact project identity and distinct major sections */
#pd-control .pd-detail-head.pd-project-hero{display:grid;grid-template-columns:148px minmax(0,1fr);gap:22px;align-items:start;justify-content:initial;padding:22px;background:#fff;border:1px solid #dce5df;border-radius:14px;margin-bottom:18px}
#pd-control .pd-project-heading{min-width:0}
#pd-control .pd-project-title-row{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:7px}
#pd-control .pd-project-title-row h2{margin:0;overflow-wrap:anywhere;font-size:26px;line-height:1.35}
#pd-control .pd-project-title-row .pd-status{flex-shrink:0;align-self:center}
#pd-control .pd-project-owner{margin-top:10px}
#pd-control .pd-project-owner p{margin:4px 0}
#pd-control .pd-project-hero .pd-form-actions{margin:12px 0;gap:8px}
#pd-control .pd-project-hero .pd-control-button{font-size:12px;padding:7px 11px}
#pd-control .pd-project-hero .pd-cover{box-sizing:border-box;width:148px;padding:8px;gap:7px;border:1px solid #dce5df;background:#f6f8f7;border-radius:11px;text-align:center}
#pd-control .pd-project-hero .pd-cover img{width:130px;height:112px;object-fit:contain;background:white;border-radius:7px}
#pd-control .pd-project-hero .pd-cover>span:first-child{display:grid;place-items:center;width:130px;height:112px;background:#edf2ef;border-radius:7px;color:#718078}
#pd-control .pd-project-hero .pd-cover .pd-small{font-size:10px;line-height:1.4;white-space:nowrap}
#pd-control .pd-project-hero .pd-cover .pd-control-button{box-sizing:border-box;width:100%;text-align:center}
#pd-control .pd-project-actions{justify-content:flex-end;padding:16px 0 0;margin-top:18px;border-top:1px solid #dce5df}
#pd-control .pd-surface.pd-project-sections{background:transparent;border:0;box-shadow:none;overflow:visible}
#pd-control .pd-project-sections>.pd-section{background:#fff;border:1px solid #d5e0d9;border-top:4px solid #426b5a;border-radius:12px;padding:24px;margin:0 0 26px;box-shadow:0 2px 6px rgba(31,55,44,.035)}
#pd-control .pd-project-sections .pd-major-heading{color:#234c3b;font-size:21px;line-height:1.4;margin:0 0 20px;padding-bottom:13px;border-bottom:1px solid #dce5df}
#pd-control .pd-project-sections .pd-section-title:has(>.pd-major-heading){align-items:center;flex-wrap:wrap;gap:10px;border-bottom:1px solid #dce5df;margin-bottom:20px;padding-bottom:13px}
#pd-control .pd-project-sections .pd-section-title>.pd-major-heading{border:0;padding:0;margin:0}
@media(max-width:600px){#pd-control .pd-detail-head.pd-project-hero{grid-template-columns:110px minmax(0,1fr);gap:14px;padding:15px}#pd-control .pd-project-hero .pd-cover{width:110px;padding:6px}#pd-control .pd-project-hero .pd-cover img,#pd-control .pd-project-hero .pd-cover>span:first-child{width:96px;height:96px}#pd-control .pd-project-hero .pd-cover .pd-small{white-space:normal}#pd-control .pd-project-title-row{flex-wrap:wrap;gap:8px}#pd-control .pd-project-title-row h2{font-size:21px}#pd-control .pd-project-sections>.pd-section{padding:16px;margin-bottom:22px}}
@media(max-width:380px){#pd-control .pd-detail-head.pd-project-hero{grid-template-columns:1fr}#pd-control .pd-project-hero .pd-cover{width:110px}}

#pd-control .pd-major-fold>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;padding:0;user-select:none}
/* Saved-data summaries are visible only while each major chapter is collapsed. */
#pd-control .pd-major-fold>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px 24px}
#pd-control .pd-major-fold>summary .pd-major-heading{white-space:nowrap}
#pd-control .pd-major-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 22px;min-width:0;font-size:12px;line-height:1.6;color:#6b7c72}
#pd-control .pd-major-summary-item{display:inline-flex;align-items:baseline;gap:6px;min-width:0;max-width:100%;overflow-wrap:anywhere}
#pd-control .pd-major-summary-item b{font-weight:600;color:#314f3d;font-variant-numeric:tabular-nums}
#pd-control .pd-major-summary-alert b{color:#ab443d}
#pd-control .pd-major-fold[open]>summary .pd-major-summary{display:flex}
#pd-control .pd-major-fold>summary>.pd-major-fold-hint{grid-column:3}
@media(max-width:760px){
 #pd-control .pd-major-fold>summary{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}
 #pd-control .pd-major-fold>summary .pd-major-heading{white-space:normal;grid-column:1;grid-row:1}
 #pd-control .pd-major-fold>summary>.pd-major-fold-hint{grid-column:2;grid-row:1}
 #pd-control .pd-major-summary{grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:5px 16px}
}

#pd-control .pd-major-fold>summary::-webkit-details-marker{display:none}
#pd-control .pd-major-fold>summary .pd-major-heading{margin:0;padding:0;border:0}
#pd-control .pd-major-fold-hint{font-size:12px;color:#60766a;flex-shrink:0}
#pd-control .pd-major-fold-hint:before{content:'展开 ▾'}
#pd-control .pd-major-fold[open]>.pd-major-fold-hint:before,#pd-control .pd-major-fold[open]>summary>.pd-major-fold-hint:before{content:'收起 ▴'}
#pd-control .pd-major-fold[open]>summary{padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid #dce5df}
#pd-control .pd-major-body>.pd-section-title:empty{display:none}

#pd-control .pd-submission-dialog{width:min(580px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 24px));overflow:auto}
#pd-control .pd-submission-issues{padding-left:24px;margin:18px 0}
#pd-control .pd-submission-issues li{padding:10px 0;border-bottom:1px solid #e1e7e3}
#pd-control .pd-submission-issues li>span{display:inline-block;max-width:calc(100% - 90px);vertical-align:middle;overflow-wrap:anywhere}
#pd-control .pd-submission-issues button{float:right;padding:5px 10px;font-size:12px;margin-left:10px}
#pd-control .pd-needs-attention{outline:2px solid #b87920;outline-offset:2px}

#pd-control .pd-workflow-map{margin:20px 0 24px;padding:18px;background:#f8faf9;border:1px solid #dce5df;border-radius:12px}
#pd-control .pd-workflow-map h3{margin:0;font-size:16px}
#pd-control .pd-flow-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;margin:14px 0;color:#66776e}
#pd-control .pd-flow-scroll{overflow:auto;max-height:610px;border:1px solid #dce5df;border-radius:8px;background:#fff;overscroll-behavior:contain}
#pd-control .pd-flow-canvas{position:relative;min-width:100%}
#pd-control .pd-flow-lane{position:absolute;top:0;background:linear-gradient(90deg,#f5f8f6 0%,#f5f8f6 97%,#fff 97%);box-sizing:border-box;border-right:1px solid #e3ebe6}
#pd-control .pd-flow-lane-title{padding:16px 18px;color:#294d3d;font-size:13px;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
#pd-control .pd-flow-lane-title small{font-weight:400;font-size:11px;display:block;color:#6e7e74;margin-top:4px}
#pd-control .pd-flow-empty{position:absolute;top:100px;left:18px;color:#839087;font-size:12px}
#pd-control .pd-flow-lines{position:absolute;left:0;top:0;pointer-events:none;overflow:visible}
#pd-control .pd-flow-card{position:absolute;width:232px;height:108px;box-sizing:border-box;border:1px solid #cad7ce;border-left:4px solid #9caea1;border-radius:9px;background:#fff;text-align:left;padding:12px;display:flex;flex-direction:column;gap:6px;box-shadow:0 2px 4px #213f2c08;cursor:pointer;color:#24392f}
#pd-control .pd-flow-card:hover:not(:disabled),#pd-control .pd-flow-card:focus-visible{outline:2px solid #648b73;outline-offset:2px}
#pd-control .pd-flow-card:disabled{cursor:default;opacity:1}
#pd-control .pd-flow-card-name{font-size:13px;font-weight:650;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%}
#pd-control .pd-flow-card-state,#pd-control .pd-flow-card-date{font-size:11px;line-height:1.5;color:#6c7d72}
#pd-control .pd-flow-card.pd-flow-doing{border-left-color:#4778af;background:#f6faff}
#pd-control .pd-flow-card.pd-flow-done{border-left-color:#4c8b67;background:#f0f8f3}
#pd-control .pd-flow-card.pd-flow-blocked{border-left-color:#bc6754;background:#fff6f2}
#pd-control .pd-flow-card.pd-flow-independent{border-style:dashed}
#pd-control .pd-flow-legend .pd-flow-doing{color:#4778af}#pd-control .pd-flow-legend .pd-flow-done{color:#4c8b67}#pd-control .pd-flow-legend .pd-flow-blocked{color:#bc6754}
#pd-control .pd-flow-template{padding:18px;border:1px dashed #adc3b4;border-radius:10px;background:#fff}
#pd-control .pd-template-branches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:18px}
#pd-control .pd-template-branches>div{display:flex;align-items:center;flex-direction:column;gap:8px;font-size:12px;color:#45604f}
#pd-control .pd-template-branches span{display:block;width:100%;box-sizing:border-box;max-width:210px;border:1px solid #c9d9ce;border-radius:7px;background:#f5f9f6;text-align:center;padding:12px}
#pd-control .pd-template-independent span{border-style:dashed}
#pd-control .pd-template-merge{text-align:center;font-size:12px;color:#648374;margin:16px 0 10px;width:66%}
#pd-control .pd-template-final{width:66%;box-sizing:border-box;text-align:center;padding:13px;border:1px solid #8eaf9a;background:#eaf3ed;border-radius:7px;font-size:13px}
@media(max-width:600px){#pd-control .pd-workflow-map{padding:12px}#pd-control .pd-template-branches{gap:8px}#pd-control .pd-flow-template{padding:10px}#pd-control .pd-template-branches span{padding:9px 4px}}

#pd-control .pd-graph-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}
#pd-control .pd-graph-workspace.pd-graph-with-panel{grid-template-columns:minmax(0,1fr) minmax(320px,390px)}
#pd-control .pd-graph-drawing{min-width:0}
#pd-control .pd-graph-panel{min-width:0;max-height:670px;overflow:auto;border:1px solid #9bb8a6;border-radius:10px;background:#fff;padding:16px;box-sizing:border-box}
#pd-control .pd-graph-panel .pd-editor{margin:10px 0;padding:12px}
#pd-control .pd-graph-panel .pd-editor-grid{grid-template-columns:minmax(0,1fr)}
#pd-control .pd-graph-panel .pd-deps{max-height:190px;overflow:auto}
#pd-control .pd-graph-panel .pd-node{padding:0;border:0;box-shadow:none}
#pd-control .pd-graph-panel .pd-node-top{display:block}
#pd-control .pd-graph-panel .pd-node-actions{justify-content:flex-start;flex-wrap:wrap;margin-top:12px}
#pd-control .pd-graph-panel .pd-control-button{font-size:12px;padding:6px 9px}
#pd-control .pd-graph-panel .pd-notice{font-size:12px;padding:10px;overflow-wrap:anywhere}
#pd-control .pd-graph-lane-add{margin-top:9px;font-size:11px;padding:5px 9px}
#pd-control .pd-graph-empty-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
#pd-control .pd-flow-card{gap:3px}
#pd-control .pd-flow-card-tracking{font-size:10px;color:#77877d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}
#pd-control .pd-flow-card[aria-pressed=true]{outline:2px solid #427a59;outline-offset:2px}
#pd-control .pd-flow-empty{top:138px}
#pd-control .pd-legacy-node-list{margin-top:18px;border-top:1px solid #dde7df;padding-top:14px}
#pd-control .pd-legacy-node-list>summary{font-size:13px;color:#557060;cursor:pointer}
@media(max-width:960px){#pd-control .pd-graph-workspace.pd-graph-with-panel{grid-template-columns:minmax(0,1fr)}#pd-control .pd-graph-panel{max-height:none}}
#pd-control .pd-payment-table-scroll{width:100%;overflow-x:auto;margin-top:14px;border:1px solid var(--pd-line,#dce2e5);border-radius:10px;-webkit-overflow-scrolling:touch}
#pd-control .pd-payment-table{width:100%;min-width:1440px;border-collapse:collapse;table-layout:fixed;font-size:13px;line-height:1.55}
#pd-control .pd-payment-table th,#pd-control .pd-payment-table td{padding:13px 12px;vertical-align:top;text-align:left;border-bottom:1px solid var(--pd-line,#dce2e5);border-right:1px solid var(--pd-line,#dce2e5);overflow-wrap:anywhere}
#pd-control .pd-payment-table thead th{background:var(--pd-soft,#f4f7f6);font-weight:700;white-space:nowrap}
#pd-control .pd-payment-table tr>*:last-child{border-right:0}
#pd-control .pd-payment-table tbody tr:last-child>*{border-bottom:0}
#pd-control .pd-payment-table th:nth-child(1){width:170px}
#pd-control .pd-payment-table th:nth-child(2),#pd-control .pd-payment-table th:nth-child(3),#pd-control .pd-payment-table th:nth-child(4){width:125px}
#pd-control .pd-payment-table th:nth-child(5){width:135px}
#pd-control .pd-payment-table th:nth-child(6){width:225px}
#pd-control .pd-payment-table th:nth-child(7){width:225px}
#pd-control .pd-payment-table th:nth-child(8){width:180px}
#pd-control .pd-payment-table th:nth-child(9){width:205px}
#pd-control .pd-payment-table .pd-sub{display:block;margin-top:6px;font-weight:400}
#pd-control .pd-payment-table .pd-control-button{margin-top:7px;padding:5px 8px;font-size:12px;white-space:normal}
#pd-control .pd-payment-table .pd-status{display:inline-block;margin-top:6px}
#pd-control .pd-payment-records{margin-top:10px}
#pd-control .pd-payment-records summary{cursor:pointer}
#pd-control .pd-payment-records .pd-payment-record{display:block;padding:10px 0}
#pd-control .pd-payment-file-picker{display:block;margin-top:10px;font-size:12px}
#pd-control .pd-payment-file-picker input{display:block;width:100%;max-width:200px;margin-top:5px;font-size:11px}
#pd-control .pd-payment-file-link{display:block;max-width:100%;padding:0;margin:0 0 6px;border:0;background:none;color:var(--pd-accent,#246b58);text-align:left;text-decoration:underline;font:inherit;overflow-wrap:anywhere;cursor:pointer}
#pd-control .pd-payment-plan-name{display:block;font-weight:700}
/* AI product-image brief, scoped to the existing project app. */
#pd-control .pd-ai-brief{margin:18px 0 24px;padding:18px;border:1px solid #d9e2e8;border-radius:12px;background:#fbfcfd;color:#22313d}
#pd-control .pd-ai-brief h3{margin:0;font-size:18px}
#pd-control .pd-ai-auto{padding:13px 15px;margin:12px 0 16px;background:#f0f5f8;border-radius:9px;font-size:13px}
#pd-control .pd-ai-auto dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;margin:10px 0}
#pd-control .pd-ai-auto dl>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px;align-items:start}
#pd-control .pd-ai-auto dt{color:#667684}
#pd-control .pd-ai-auto dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
#pd-control .pd-ai-groups{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
#pd-control .pd-ai-groups fieldset{min-width:0;margin:0;padding:13px;border:1px solid #dde5eb;border-radius:9px;background:#fff}
#pd-control .pd-ai-groups legend{padding:0 5px;font-weight:600;font-size:14px}
#pd-control .pd-ai-groups legend span{font-size:12px;font-weight:400;color:#71808d}
#pd-control .pd-ai-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
#pd-control .pd-ai-brief label{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:12px;color:#536372}
#pd-control .pd-ai-brief input:not([type=checkbox]),#pd-control .pd-ai-brief textarea,#pd-control .pd-ai-brief select{box-sizing:border-box;width:100%;min-width:0;padding:8px 9px;font:inherit;font-size:13px;line-height:1.5;color:#20313d;background:#fff;border:1px solid #cdd8e0;border-radius:6px}
#pd-control .pd-ai-brief textarea{resize:vertical;min-height:65px}
#pd-control .pd-ai-brief :is(input,select,textarea):focus-visible{outline:2px solid #4687b1;outline-offset:1px}
#pd-control .pd-ai-brief :is(input,select,textarea):disabled{background:#f4f6f8;color:#64727e}
#pd-control .pd-ai-groups .pd-ai-materials{grid-column:1/-1}
#pd-control .pd-ai-ref-list{max-height:260px;overflow:auto}
#pd-control .pd-ai-ref-row{display:grid;grid-template-columns:minmax(0,1fr) 195px;align-items:center;gap:15px;padding:8px 0;border-bottom:1px solid #edf0f2}
#pd-control .pd-ai-ref-row>label:first-child{display:flex;flex-direction:row;align-items:center;gap:9px;font-size:13px;color:#293c4a}
#pd-control .pd-ai-ref-row input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;accent-color:#397496}
#pd-control .pd-ai-ref-row span{min-width:0;overflow-wrap:anywhere}
#pd-control .pd-ai-ref-row small{display:block;margin-top:3px;color:#71808d;font-size:11px}
#pd-control .pd-ai-ref-row .pd-ai-role-label{display:grid;grid-template-columns:28px 1fr;align-items:center}
#pd-control .pd-ai-status:empty{display:none}
#pd-control .pd-ai-status{margin:12px 0;font-size:13px}
#pd-control .pd-ai-preview{margin-top:16px;padding-top:14px;border-top:1px solid #dde5eb}
#pd-control .pd-ai-preview textarea{font-size:12px;line-height:1.6;background:#fff}
@media(max-width:760px){#pd-control .pd-ai-brief{padding:12px}#pd-control .pd-ai-groups,#pd-control .pd-ai-auto dl{grid-template-columns:1fr}#pd-control .pd-ai-ref-row{grid-template-columns:1fr;gap:6px}#pd-control .pd-ai-ref-row .pd-ai-role-label{max-width:230px;margin-left:25px}}
@media(max-width:420px){#pd-control .pd-ai-grid{grid-template-columns:1fr}#pd-control .pd-ai-auto dl>div{grid-template-columns:75px minmax(0,1fr)}}
#pd-control .pd-freeform-map .pd-flow-canvas{background:radial-gradient(#d7e1d9 .7px,transparent .7px);background-size:14px 14px}
#pd-control .pd-freeform-root{position:absolute;width:300px;min-height:88px;box-sizing:border-box;background:#edf5ef;border:1px solid #b6ccb9;border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:5px;padding:8px 14px;z-index:2}
#pd-control .pd-freeform-root>b{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}
#pd-control .pd-freeform-root .pd-control-button{font-size:11px;padding:4px 10px;min-height:24px}
#pd-control .pd-freeform-node{position:absolute;width:248px;height:178px}
#pd-control .pd-freeform-node .pd-flow-card{position:absolute;left:0;top:0;width:248px;height:138px;gap:4px;padding:10px 12px;overflow:hidden}
#pd-control .pd-freeform-node .pd-flow-card-state,#pd-control .pd-freeform-node .pd-flow-card-date,#pd-control .pd-freeform-node .pd-flow-card-tracking{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}
#pd-control .pd-freeform-actions{position:absolute;top:145px;left:0;right:0;display:flex;gap:8px;justify-content:center}
#pd-control .pd-freeform-actions .pd-control-button{padding:5px 10px;min-height:28px;font-size:11px;background:#fff}
#pd-control .pd-freeform-empty{padding:10px 0}
#pd-control .pd-freeform-map [data-root-anchor-field][hidden]{display:none!important}
#pd-control .pd-freeform-map .pd-flow-card[aria-pressed="true"]{outline:2px solid #567e62;outline-offset:2px}

#pd-control .pd-deps .pd-dep-guide{margin:0 0 10px;line-height:1.5}
#pd-control .pd-deps .pd-dep-group{display:block;margin:0 0 10px;border:1px solid #d8e3dc;border-radius:7px;overflow:hidden;background:#fff}
#pd-control .pd-dep-group-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:#edf4ef;font-size:12px;color:#365a46}
#pd-control .pd-dep-group-heading b{overflow-wrap:anywhere}
#pd-control .pd-dep-group-heading>span{flex-shrink:0;color:#78877d;font-size:11px}
#pd-control .pd-dep-group-options{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:4px 9px}
#pd-control .pd-deps .pd-dep-group-options label{display:flex;align-items:flex-start;gap:8px;margin:0;padding:8px 0;font-size:12px;line-height:1.5;min-width:0}
#pd-control .pd-dep-group-options input{flex-shrink:0;margin-top:3px}
#pd-control .pd-dep-group-options span{overflow-wrap:anywhere}
#pd-control .pd-graph-panel .pd-deps{max-height:300px}

/* Keep the workspace's light surfaces and text coherent even when the host is dark. */
#pd-control .pd-account{color:var(--pd-text)}
#pd-control .pd-account select,#pd-control .pd-account option{color:var(--pd-text);background:var(--pd-surface);border:1px solid var(--pd-border);border-radius:5px}
#pd-control input,#pd-control select,#pd-control textarea{color-scheme:light;color-scheme:only light;accent-color:var(--pd-accent)}
#pd-control input::placeholder,#pd-control textarea::placeholder{color:#667085;opacity:1}
#pd-control .pd-editor input:disabled,#pd-control .pd-editor select:disabled{opacity:1;color:var(--pd-muted);-webkit-text-fill-color:var(--pd-muted);background:#f0f3f1}
#pd-control .pd-flow-card-state,#pd-control .pd-flow-card-date,#pd-control .pd-flow-card-tracking,#pd-control .pd-flow-lane-title small,#pd-control .pd-dep-group-heading>span{color:#52665a}
#pd-control .pd-flow-empty{color:#586c60}
#pd-control dialog{color:var(--pd-text);background:var(--pd-surface)}

#pd-control .pd-flow-current-summary{padding:11px 13px;margin:12px 0;border-left:4px solid #43825a;border-radius:6px;background:#eaf4ed;color:#234932;overflow-wrap:anywhere}
#pd-control .pd-flow-current-summary b,#pd-control .pd-flow-current-summary span{display:block;font-size:12px;line-height:1.6}
#pd-control .pd-flow-current-summary span{margin-top:4px;color:#52665a}
#pd-control .pd-freeform-map .pd-flow-card{background:var(--pd-node-bg,#edf8ef);border-color:var(--pd-node-border,#adcbb7);color:#24392f}
#pd-control .pd-freeform-map .pd-flow-card[data-current-process=true]{box-shadow:0 0 0 2px #426b50}
#pd-control .pd-freeform-map .pd-flow-card[data-current-process=true] .pd-flow-card-name{padding-right:38px;box-sizing:border-box}
#pd-control .pd-flow-current-flag{position:absolute;top:8px;right:8px;background:#28543a;color:#fff;font-size:10px;padding:1px 5px;border-radius:4px;line-height:1.5}
#pd-control .pd-flow-current-flag[hidden]{display:none!important}
#pd-control .pd-freeform-map .pd-flow-card[data-overdue-days]:not([data-overdue-days="0"]),#pd-control .pd-freeform-map .pd-flow-card[data-overdue-days]:not([data-overdue-days="0"]) .pd-flow-card-state,#pd-control .pd-freeform-map .pd-flow-card[data-overdue-days]:not([data-overdue-days="0"]) .pd-flow-card-date,#pd-control .pd-freeform-map .pd-flow-card[data-overdue-days]:not([data-overdue-days="0"]) .pd-flow-card-tracking{color:#3b1915}
#pd-control .pd-flow-legend .pd-timing-normal{color:#456b50}#pd-control .pd-flow-legend .pd-timing-complete{color:#235e37}#pd-control .pd-flow-legend .pd-timing-overdue{color:#9b352c}

#pd-control .pd-freeform-map .pd-flow-card.pd-flow-done .pd-flow-card-state,#pd-control .pd-freeform-map .pd-flow-card.pd-flow-done .pd-flow-card-date,#pd-control .pd-freeform-map .pd-flow-card.pd-flow-done .pd-flow-card-tracking{color:#3f5948}
/* Inline payment rows: fields retain the existing nine-column alignment. */
#pd-control .pd-payment-inline-form{margin:0;padding:0;border:0;background:transparent}
#pd-control .pd-payment-project-head{display:flex;align-items:center;gap:9px}
#pd-control .pd-payment-add{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;padding:0;border:1px solid #adc4b4;border-radius:5px;background:#fff;color:#28583b;font-family:inherit;font-size:19px;font-weight:700;line-height:1;cursor:pointer}
#pd-control .pd-payment-add:disabled{opacity:.45;cursor:default}
#pd-control .pd-payment-add:focus-visible{outline:2px solid #427a59;outline-offset:2px}
#pd-control .pd-payment-edit-row>th,#pd-control .pd-payment-edit-row>td{background:#f0f7f1}
#pd-control .pd-payment-edit-status{display:block;margin-bottom:7px;color:#3d6549;font-size:11px;font-weight:600}
#pd-control .pd-payment-cell-label{display:block;margin:0 0 10px;font-size:11px;font-weight:400;color:#566b5c}
#pd-control .pd-payment-cell-label:last-child{margin-bottom:0}
#pd-control .pd-payment-cell-label input,#pd-control .pd-payment-cell-label select,#pd-control .pd-payment-cell-label textarea{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:5px 0 0;padding:8px 7px;border:1px solid #b8c9bd;border-radius:5px;background:#fff;color:#23382b;font-family:inherit;font-size:12px;font-weight:400;line-height:1.45}
#pd-control .pd-payment-cell-label input[type=date]{padding-left:3px;padding-right:3px;font-size:11px}
#pd-control .pd-payment-cell-label textarea{resize:vertical;min-height:62px}
#pd-control .pd-payment-cell-label :is(input,select,textarea):focus{outline:2px solid #6a9478;outline-offset:1px;border-color:#6a9478}
#pd-control .pd-payment-row-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}
#pd-control .pd-payment-row-actions .pd-control-button{margin-top:0}
#pd-control .pd-payment-edit-row [data-payment-error]{margin:8px 0 0;font-size:11px;line-height:1.5;font-weight:400}
#pd-control [data-payment-draft-excess][hidden]{display:none}

#pd-control .pd-payment-plan-head{display:flex;align-items:flex-start;gap:9px}
#pd-control .pd-payment-plan-head .pd-payment-plan-name{min-width:0;flex:1}
#pd-control .pd-payment-remove{display:inline-flex;align-items:center;justify-content:center;flex:none;width:25px;height:25px;padding:0;border:1px solid #d3b7b0;border-radius:5px;background:#fff;color:#843e34;font-family:inherit;font-size:19px;font-weight:700;line-height:1;cursor:pointer}
#pd-control .pd-payment-remove:disabled{opacity:.45;cursor:default}
#pd-control .pd-payment-remove:focus-visible{outline:2px solid #8e5148;outline-offset:2px}
#pd-control .pd-payment-delete-confirm{padding:9px;margin:9px 0;border:1px solid #dfc4bc;border-radius:6px;background:#fff8f5;font-size:12px;font-weight:400;line-height:1.5;color:#70443b}
#pd-control .pd-payment-delete-confirm p{margin:0}
#pd-control .pd-payment-delete-confirm .pd-control-button{margin-right:5px}
#pd-control .pd-payment-undo{margin-top:10px;padding:10px 12px;background:#f2f7f3;border:1px solid #c5d7c9;border-radius:6px;font-size:12px;color:#395b43}
#pd-control .pd-payment-undo .pd-control-button{margin-left:8px}
#pd-control .pd-payment-undo .pd-error{display:block;margin-top:6px}

#pd-control .pd-audit.pd-approval-history{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0;list-style:none}
#pd-control .pd-audit.pd-approval-history>li{display:block;margin:0;padding:14px 16px;border:1px solid #dbe5df;border-radius:9px;background:#f8fbf9;min-width:0;overflow-wrap:anywhere}
#pd-control .pd-approval-history .pd-audit-time{display:block;margin-bottom:7px;font-size:12px;color:#626d7c}
#pd-control .pd-freeform-map .pd-flow-card[data-has-part=true]{gap:2px;padding-top:8px;padding-bottom:8px}
#pd-control .pd-flow-part-label{display:block;width:100%;font-size:11px;line-height:1.2;font-weight:700;color:#355c43;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}
#pd-control .pd-flow-card[data-current-process=true] .pd-flow-part-label{padding-right:38px}
#pd-control .pd-freeform-map .pd-flow-card[data-has-part=true] .pd-flow-card-name{padding-right:0}
#pd-control .pd-freeform-map .pd-flow-card[data-overdue-days]:not([data-overdue-days="0"]) .pd-flow-part-label{color:#3b1915}
@media(max-width:640px){#pd-control .pd-audit.pd-approval-history{grid-template-columns:minmax(0,1fr)}}
/* V32: supplier-style SKU columns; scoped to the existing light AI brief surface. */
#pd-control .pd-ai-groups .pd-ai-variants{grid-column:1/-1}
#pd-control .pd-ai-sku-scroll{max-width:100%;overflow:auto;margin:8px 0 10px;overscroll-behavior-inline:contain;border:1px solid #d8e2e9;border-radius:7px}
#pd-control .pd-ai-sku-table{width:max-content;min-width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;background:#fff;color:#22313d}
#pd-control .pd-ai-sku-table th,#pd-control .pd-ai-sku-table td{box-sizing:border-box;min-width:246px;width:246px;padding:9px 10px;vertical-align:top;border-right:1px solid #e0e7ed;border-bottom:1px solid #e0e7ed;text-align:left}
#pd-control .pd-ai-sku-table tr>th:first-child{position:sticky;left:0;z-index:1;min-width:126px;width:126px;max-width:126px;background:#f0f5f8;color:#405663;font-size:12px;font-weight:600}
#pd-control .pd-ai-sku-table thead th{background:#f4f7fa;color:#22313d;font-size:13px}
#pd-control .pd-ai-sku-table thead th:first-child{z-index:2}
#pd-control .pd-ai-sku-table tr:last-child>*{border-bottom:0}
#pd-control .pd-ai-sku-table tr>*:last-child{border-right:0}
#pd-control .pd-ai-sku-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
#pd-control .pd-ai-sku-head>span:last-child{display:flex;gap:4px}
#pd-control .pd-ai-sku-head .pd-control-button,#pd-control .pd-ai-sku-confirm .pd-control-button{font-size:11px;padding:4px 7px;min-height:28px}
#pd-control .pd-ai-sku-table input:not([type=checkbox]),#pd-control .pd-ai-sku-table textarea{padding:7px 8px;font-size:12px;line-height:1.5}
#pd-control .pd-ai-sku-table textarea{min-height:58px}
#pd-control .pd-ai-sku-table :is(input,textarea)::placeholder{color:#667085;opacity:1;font-size:11px}
#pd-control .pd-ai-sku-pictures>summary{cursor:pointer;display:flex;justify-content:space-between;gap:6px;align-items:center;color:#31586b;font-size:12px}
#pd-control .pd-ai-sku-pictures>summary span:last-child{font-size:10px;color:#566b78;font-weight:400}
#pd-control .pd-ai-sku-pictures .pd-ai-ref-list{max-height:240px;margin-top:7px}
#pd-control .pd-ai-sku-pictures .pd-ai-ref-row{grid-template-columns:minmax(0,1fr);gap:5px;padding:7px 0}
#pd-control .pd-ai-sku-pictures .pd-ai-ref-row>label:first-child{align-items:flex-start;font-size:11px}
#pd-control .pd-ai-sku-pictures .pd-ai-ref-row .pd-ai-role-label{margin-left:25px;font-size:11px}
#pd-control .pd-ai-sku-pictures select{font-size:11px;padding:4px 6px}
#pd-control .pd-ai-sku-confirm{margin-top:8px;padding:8px;background:#fff5ec;border:1px solid #edd1b4;border-radius:6px;font-size:11px;font-weight:400;line-height:1.5;color:#764b23}
#pd-control .pd-ai-sku-confirm>div{display:flex;gap:6px;margin-top:6px}
#pd-control .pd-ai-add-sku{margin-right:10px}
@media(max-width:640px){#pd-control .pd-ai-sku-table th,#pd-control .pd-ai-sku-table td{min-width:220px;width:220px;padding:8px}#pd-control .pd-ai-sku-table tr>th:first-child{min-width:106px;width:106px;max-width:106px}#pd-control .pd-ai-add-sku+.pd-small{display:block;margin-top:8px}}
/* Permanent payment spreadsheet; append after all existing app styles. */
#pd-control .pd-payment-direct-scroll{position:relative;max-width:100%;overflow:auto;scrollbar-gutter:auto}
#pd-control .pd-payment-table.pd-payment-direct-table{width:100%;min-width:var(--pd-payment-grid-min,800px);table-layout:fixed;font-size:12px;line-height:1.35}
#pd-control .pd-payment-direct-table th:nth-child(n){width:auto;min-width:0}
#pd-control .pd-payment-direct-table .pd-payment-col-1{width:13.75%}
#pd-control .pd-payment-direct-table .pd-payment-col-2,#pd-control .pd-payment-direct-table .pd-payment-col-3,#pd-control .pd-payment-direct-table .pd-payment-col-4{width:9.5%}
#pd-control .pd-payment-direct-table .pd-payment-col-5{width:7.25%}
#pd-control .pd-payment-direct-table .pd-payment-col-6{width:12.5%}
#pd-control .pd-payment-direct-table .pd-payment-col-7{width:10%}
#pd-control .pd-payment-direct-table .pd-payment-col-8{width:5.75%}
#pd-control .pd-payment-direct-table .pd-payment-col-9{width:9.5%}
#pd-control .pd-payment-direct-table .pd-payment-col-10{width:12.75%}
#pd-control .pd-payment-direct-table thead th{padding:8px 4px;white-space:normal;overflow-wrap:normal;line-height:1.4;height:38px;vertical-align:middle;font-size:11px}
#pd-control .pd-payment-direct-table>tbody>tr>th,#pd-control .pd-payment-direct-table>tbody>tr>td{box-sizing:border-box;padding:5px 3px;vertical-align:middle;height:48px;white-space:nowrap;overflow:visible}
#pd-control .pd-payment-grid-row input,#pd-control .pd-payment-grid-row select,#pd-control .pd-payment-grid-row textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:5px 2px;border:1px solid transparent;border-radius:3px;background:#f8fbf9;font:inherit;line-height:1.4;outline:none}
#pd-control .pd-payment-grid-row input:hover,#pd-control .pd-payment-grid-row select:hover{border-color:#bfd2c6;background:#fff}
#pd-control .pd-payment-grid-row input:focus,#pd-control .pd-payment-grid-row select:focus,#pd-control .pd-payment-grid-row textarea:focus{border-color:#538b69;background:#fff;box-shadow:0 0 0 1px #538b6922}
#pd-control .pd-payment-grid-row input[type=number]{min-width:0;appearance:textfield;font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:-.3px;padding-left:0;padding-right:0}
#pd-control .pd-payment-grid-row input[type=number]::-webkit-inner-spin-button,#pd-control .pd-payment-grid-row input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}
#pd-control .pd-payment-grid-row input[type=date]{min-width:0;font-size:11px;letter-spacing:-.4px;padding-left:0;padding-right:0}
#pd-control .pd-payment-grid-row input[type=date]::-webkit-calendar-picker-indicator{margin:0;padding:0;width:11px;opacity:.55}
#pd-control .pd-payment-grid-row select{font-size:11px;padding-left:1px;padding-right:0;text-overflow:ellipsis}
#pd-control .pd-payment-grid-row input:not([type=number]):not([type=date]){text-overflow:ellipsis}
#pd-control .pd-payment-grid-name{display:flex;align-items:center;gap:2px;min-width:0}
#pd-control .pd-payment-grid-name input{flex:1;width:0;min-width:0;font-weight:600}
#pd-control .pd-payment-direct-table .pd-payment-remove,#pd-control .pd-payment-direct-table .pd-payment-add,#pd-control .pd-payment-direct-table .pd-payment-register{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:none;width:18px;height:20px;min-width:18px;margin:0;padding:0;border:1px solid #bfd3c7;border-radius:3px;background:#fff;color:#286447;font-size:15px;line-height:1;cursor:pointer}
#pd-control .pd-payment-direct-table .pd-payment-remove{width:16px;min-width:16px;height:18px;border-color:#dec6bc;color:#975f49;font-size:14px}
#pd-control .pd-payment-new-mark{width:16px;flex:none;font-size:14px;color:#55816a;text-align:center}
#pd-control .pd-payment-grid-feedback{display:flex;align-items:center;flex-wrap:wrap;gap:2px;min-height:13px;padding-left:18px;line-height:1.15}
#pd-control .pd-payment-grid-feedback [data-payment-autosave-status]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;color:#70887b;line-height:1.15}
#pd-control .pd-payment-grid-feedback [data-payment-autosave-status][data-tone=error]{color:#a24f39}
#pd-control .pd-payment-grid-feedback [data-payment-autosave-status][data-tone=draft]{color:#936529}
#pd-control .pd-payment-direct-table .pd-payment-grid-feedback .pd-control-button{padding:0 3px;min-height:15px;margin:0;font-size:10px;line-height:1.3;white-space:nowrap}
#pd-control .pd-payment-direct-table [hidden]{display:none!important}
#pd-control .pd-payment-direct-table .pd-payment-cell-line{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0;line-height:1.2}
#pd-control .pd-payment-direct-table .pd-payment-register{width:15px;height:14px;min-width:15px;font-size:12px}
#pd-control .pd-payment-direct-table .pd-payment-grid-money,#pd-control .pd-payment-direct-table [data-payment-draft-remaining],#pd-control .pd-payment-direct-table td:nth-child(7) .pd-payment-detail-link{font-size:12px;letter-spacing:-.3px;font-variant-numeric:tabular-nums;overflow:visible;text-overflow:clip;max-width:none;white-space:nowrap}
#pd-control .pd-payment-direct-table .pd-money{font-size:12px;letter-spacing:-.3px;font-variant-numeric:tabular-nums}
#pd-control .pd-payment-direct-table .pd-payment-detail-link{font-size:11px;padding:2px 0;line-height:1.3}
#pd-control .pd-payment-direct-table .pd-payment-pending{font-size:9px;line-height:1.1}
#pd-control .pd-payment-direct-table .pd-payment-inline-notes{margin:0}
#pd-control .pd-payment-direct-table .pd-payment-inline-notes>summary{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;list-style:none;cursor:pointer;color:#638171;font-size:9px;line-height:1.3;padding:1px 2px}
#pd-control .pd-payment-direct-table .pd-payment-inline-notes>summary::-webkit-details-marker{display:none}
#pd-control .pd-payment-direct-table .pd-payment-note-preview{display:block;max-height:120px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;color:#243b2d}
#pd-control .pd-payment-direct-table .pd-payment-notes-popover{font-size:12px}
#pd-control .pd-payment-direct-table .pd-payment-field-hint{white-space:normal;z-index:100;min-width:160px;max-width:220px}
#pd-control .pd-payment-direct-table [aria-invalid=true]{border-color:#c28668}
#pd-control .pd-payment-direct-table [data-payment-draft-excess]{display:block;margin:0;font-size:9px;white-space:normal}
#pd-control .pd-payment-scroll-hint{display:none;font-size:10px;color:#75887d;margin-top:4px}
@media(max-width:960px){#pd-control .pd-payment-scroll-hint{display:block}}


/* pd-selling-points-left */

#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table [data-ai-parameter-row="sellingPoints"] td,
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table [data-ai-parameter-row="sellingPoints"] .pd-ai-point-editor,
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table [data-ai-parameter-row="sellingPoints"] td textarea,
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table [data-ai-parameter-row="sellingPoints"] .pd-ai-parameter-source{text-align:left}
#pd-control .pd-ai-installation-row>td{vertical-align:top;padding:12px;text-align:left}
#pd-control .pd-ai-parameter-table [data-ai-installation-content][hidden]{display:none}
#pd-control .pd-ai-parameter-table .pd-ai-installation-heading th{padding:0;text-align:left}
#pd-control .pd-ai-parameter-table .pd-ai-installation-disclosure{display:block;width:100%;border:0;border-radius:0;background:transparent;text-align:left;padding:10px 12px;font-weight:600}
#pd-control .pd-ai-steps{display:flex;flex-direction:column;gap:9px;min-width:210px;text-align:left}
#pd-control .pd-ai-step{border:1px solid #dbe4ea;background:#fbfcfd;border-radius:7px;overflow:hidden}
#pd-control .pd-ai-step>summary{cursor:pointer;padding:10px;font-size:12px;font-weight:600;line-height:1.5;text-align:left}
#pd-control .pd-ai-step>summary>span{display:block;font-weight:400;font-size:11px;color:#758491;margin-top:3px;overflow-wrap:anywhere}
#pd-control .pd-ai-step-body{padding:0 10px 10px;text-align:left}
#pd-control .pd-ai-step[open]>summary>[data-ai-step-summary],#pd-control .pd-ai-step>summary>[data-ai-step-summary][hidden]{display:none}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table textarea[data-ai-compact-material]{display:block;width:100%;box-sizing:border-box;height:32px;min-height:32px;max-height:none;padding:6px 8px;font-size:12px;line-height:18px;resize:none;overflow:hidden;overflow-wrap:anywhere}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table td .pd-ai-step textarea[data-ai-step-description]{display:block;width:100%;box-sizing:border-box;text-align:left;margin:0 0 8px;height:32px;min-height:32px;max-height:none;padding:6px 8px;font-size:12px;line-height:18px;resize:none;overflow:hidden;overflow-wrap:anywhere}
#pd-control .pd-ai-step-image{position:relative;width:100%;max-width:260px;margin:0 auto 8px}
#pd-control .pd-ai-step-image:has(.pd-ai-appearance:empty):not(:has(.pd-ai-step-image-remove)):not(:has(.pd-error)){display:none}
#pd-control .pd-ai-step-image .pd-ai-appearance{margin-bottom:0}
#pd-control .pd-ai-step-image .pd-error{padding:26px 5px 5px;margin:0}
#pd-control .pd-ai-step-image .pd-ai-step-image-remove{position:absolute;top:4px;right:4px;display:flex;align-items:center;justify-content:center;width:26px;height:26px;min-height:26px;padding:0;border:1px solid #d5dfe6;border-radius:50%;background:#fff;color:#536573;font-size:20px;line-height:1;box-shadow:0 1px 4px #18354d1f;z-index:1}
#pd-control .pd-ai-step-image .pd-ai-step-image-remove:hover{background:#fff3f1;color:#b43b2e;border-color:#ebc9c3}
#pd-control .pd-ai-step-image .pd-ai-step-image-remove:focus-visible{outline:2px solid #197ca8;outline-offset:2px}
#pd-control .pd-ai-step .pd-ai-appearance{min-height:0;max-height:210px;margin-bottom:8px}
#pd-control .pd-ai-step .pd-ai-appearance:empty{display:none}
#pd-control .pd-ai-step .pd-ai-appearance img{max-height:160px;object-fit:contain}
#pd-control .pd-ai-step-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
#pd-control .pd-ai-step-confirm{display:block;padding:8px;margin-top:6px;color:#8d4c17;background:#fff7ed;font-size:11px;line-height:1.6;text-align:left}
#pd-control .pd-ai-step-confirm button{margin-left:5px}
#pd-control .pd-ai-steps>.pd-small{margin:0;font-size:10px;line-height:1.6}
/* V57 compact shooting-material checklist */
#pd-control .pd-photo-section{margin:22px 0 26px;padding-top:6px;border-top:1px solid #dbe5eb}
#pd-control .pd-photo-scroll{overflow-x:auto;border:1px solid #d9e3ea;border-radius:10px;background:#fff}
#pd-control .pd-photo-table{width:100%;min-width:1080px;border-collapse:collapse;font-size:12px;table-layout:fixed}
#pd-control .pd-photo-table th,#pd-control .pd-photo-table td{padding:9px 8px;border-bottom:1px solid #e4ebef;vertical-align:top;text-align:left}
#pd-control .pd-photo-table thead{background:#eff5f8;color:#27475a}
#pd-control .pd-photo-table th:nth-child(1){width:7%}#pd-control .pd-photo-table th:nth-child(2){width:22%}#pd-control .pd-photo-table th:nth-child(3){width:17%}#pd-control .pd-photo-table th:nth-child(4){width:27%}#pd-control .pd-photo-table th:nth-child(5){width:12%}#pd-control .pd-photo-table th:nth-child(6){width:15%}
#pd-control .pd-photo-table textarea,#pd-control .pd-photo-table select,#pd-control .pd-photo-table input:not([type=checkbox]):not([type=file]){width:100%;min-width:0;box-sizing:border-box;margin:3px 0;padding:6px;border:1px solid #ccd9e2;border-radius:5px;font:inherit;background:#fff;color:inherit}
#pd-control .pd-photo-table textarea{resize:vertical;min-height:50px}
#pd-control .pd-photo-table summary{cursor:pointer;color:#526777;font-size:11px;margin:5px 0}
#pd-control .pd-photo-table .pd-control-button{font-size:11px;padding:5px 8px;margin:4px 0}
#pd-control .pd-photo-target{display:flex;align-items:center;gap:4px;margin:6px 0;overflow-wrap:anywhere}
#pd-control .pd-photo-file{margin:7px 0;overflow-wrap:anywhere;border-bottom:1px dashed #e4ebef;padding-bottom:5px}
#pd-control .pd-photo-file small{display:block;color:#6e8290;margin:3px 0}
#pd-control .pd-photo-upload{display:block;font-size:11px;color:#486475;margin-top:5px}
#pd-control .pd-photo-upload input{display:block;max-width:100%;font-size:10px;margin-top:3px}
#pd-control .pd-photo-thumbnails{display:flex;gap:5px;margin:5px 0}
#pd-control .pd-photo-thumbnails figure{margin:0;width:76px;min-width:0}
#pd-control .pd-photo-thumbnails img{width:76px;height:62px;object-fit:contain;background:#f5f7f8;border:1px solid #e1e8ed;border-radius:4px}
#pd-control .pd-photo-thumbnails figcaption{max-width:76px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
#pd-control .pd-photo-thumbnails .pd-ai-photo-pending{font-size:10px;min-height:40px}
#pd-control .pd-photo-table :disabled{opacity:.7;cursor:not-allowed}

/* Compact shooting rows: all categories use the same material/action/status columns. */
#pd-control .pd-photo-list{border:1px solid #d9e3ea;border-radius:10px;background:#fff;overflow:hidden}
#pd-control .pd-photo-row{display:grid;grid-template-columns:76px minmax(150px,1fr) minmax(205px,260px) 105px;gap:8px 16px;padding:13px 14px;border-bottom:1px solid #e4ebef;align-items:start;font-size:12px}
#pd-control .pd-photo-row:last-child{border-bottom:0}
#pd-control .pd-photo-category{display:grid;gap:5px;padding-top:3px}#pd-control .pd-photo-category small{color:#788c9b;font-size:10px}#pd-control .pd-photo-category strong{font-size:13px}
#pd-control .pd-photo-material,#pd-control .pd-photo-tools,#pd-control .pd-photo-state{min-width:0}
#pd-control .pd-photo-count{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:30px}#pd-control .pd-photo-count span,#pd-control .pd-photo-scope{color:#708492;font-size:11px}#pd-control .pd-photo-scope{display:flex;align-items:center;min-height:32px}
#pd-control .pd-photo-row select,#pd-control .pd-photo-row textarea,#pd-control .pd-photo-row input:not([type=checkbox]):not([type=file]){box-sizing:border-box;width:100%;min-width:0;padding:6px 8px;border:1px solid #ccd9e2;border-radius:6px;font:inherit;background:#fff;color:inherit;margin:0;min-height:32px}
#pd-control .pd-photo-row textarea{resize:vertical;min-height:58px}
#pd-control .pd-photo-actions{display:grid;grid-template-columns:68px 1fr;gap:6px;margin-top:7px}
#pd-control .pd-photo-row .pd-control-button{font-size:11px;padding:6px 9px;margin:0;min-height:32px;white-space:nowrap}
#pd-control .pd-photo-hidden-file{display:none!important}#pd-control .pd-photo-row [hidden]{display:none!important}
#pd-control .pd-photo-existing-panel{display:grid;gap:6px;margin-top:8px;padding:8px;background:#f4f7fa;border-radius:6px}
#pd-control .pd-photo-prompt{color:#946017;font-size:11px;line-height:1.5;margin:7px 0 0}
#pd-control .pd-photo-details{grid-column:2/-1;min-width:0}#pd-control .pd-photo-details summary{font-size:11px;color:#607787;cursor:pointer;width:fit-content;padding:2px 0}
#pd-control .pd-photo-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}#pd-control .pd-photo-detail-grid label{display:grid;gap:5px;color:#526777}
#pd-control .pd-photo-targets{display:flex;gap:8px 15px;align-items:center;flex-wrap:wrap;margin:10px 0}
#pd-control .pd-photo-sources{padding-top:8px;border-top:1px solid #e4ebef}
#pd-control .pd-photo-thumbnails{display:flex;flex-wrap:nowrap;overflow:hidden;gap:5px;margin:4px 0 0;max-height:57px}
#pd-control .pd-photo-thumbnails figure{width:52px;flex:0 0 52px;margin:0}#pd-control .pd-photo-thumbnails img{width:50px;height:38px;object-fit:contain}#pd-control .pd-photo-thumbnails figcaption{max-width:52px;font-size:9px}#pd-control .pd-photo-thumbnails .pd-ai-photo-pending{min-height:0;font-size:10px}
#pd-control .pd-photo-row :disabled{opacity:.65;cursor:not-allowed}
@media(max-width:800px){#pd-control .pd-photo-row{grid-template-columns:65px minmax(0,1fr) 100px;gap:8px 10px}#pd-control .pd-photo-tools{grid-column:2;grid-row:2}#pd-control .pd-photo-state{grid-column:3;grid-row:1}#pd-control .pd-photo-details{grid-column:2/-1}#pd-control .pd-photo-detail-grid{grid-template-columns:1fr}}
@media(max-width:450px){#pd-control .pd-photo-row{grid-template-columns:52px minmax(0,1fr);padding:10px;gap:8px}#pd-control .pd-photo-state{grid-column:1;grid-row:2}#pd-control .pd-photo-state select{font-size:10px;padding:5px 1px}#pd-control .pd-photo-tools{grid-column:2;grid-row:2}#pd-control .pd-photo-details{grid-column:1/-1}}

.pd-usage-badges{display:flex!important;gap:8px;font-size:10px;font-weight:400;margin-top:4px;color:#64748b}.pd-usage-badges span{display:inline-flex;align-items:center;gap:4px}.pd-usage-badges i{display:inline-block;width:6px;height:6px;border-radius:50%}.pd-erp-section{margin:14px 0;border:1px solid #dbe4ef;border-radius:10px;padding:10px 12px}.pd-erp-section>summary,.pd-erp-sku>summary{cursor:pointer;font-weight:600}.pd-erp-section summary small{font-weight:400;color:#64748b}.pd-erp-sku{padding:10px 0;border-top:1px solid #e2e8f0}.pd-erp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:12px 0}.pd-erp-grid label{display:flex;flex-direction:column;font-size:12px;gap:3px}.pd-erp-grid input,.pd-erp-map select{width:100%;border:1px solid #dbe4ef;border-radius:6px;padding:7px;background:#fff;color:inherit;min-width:0}.pd-erp-grid label>small{font-size:10px;color:#64748b}.pd-erp-map{display:flex;align-items:center;gap:12px;justify-content:space-between;font-size:12px;margin:8px 0}.pd-erp-map select{max-width:360px}.pd-erp-section .pd-small{line-height:1.6}

/* pd-v75-compact-sku-columns */

/* Natural-height header: wrap actions and confirmations, never clip them. */
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table>thead,
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table>thead>tr,
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table>thead>tr>th{height:auto;min-height:0}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table>thead>tr>th{padding:6px 7px;vertical-align:middle}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table>thead .pd-ai-sku-head{height:auto;min-height:0;gap:4px;min-width:0;max-width:100%;align-items:center}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table>thead .pd-ai-sku-head>span{min-width:0;max-width:100%}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table>thead .pd-ai-sku-confirm>div{flex-wrap:wrap}
/* Up to five columns share the available width; narrow screens retain scrolling. */
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"]{width:100%;min-width:calc(140px + var(--pd-ai-column-count,1) * 140px);table-layout:fixed}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"]>colgroup>col.pd-ai-field-column{width:140px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"]>thead>tr>th,
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"]>tbody>tr>th,
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"]>tbody>tr>td{width:auto;min-width:0;max-width:none;padding-left:7px;padding-right:7px;overflow-wrap:anywhere}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"]>thead>tr>th:first-child,
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"]>tbody>tr>th:first-child{width:140px;min-width:0;max-width:none}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] .pd-ai-parameter-label{flex-wrap:wrap;gap:4px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] .pd-ai-parameter-label>span{white-space:normal}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] :is(.pd-ai-steps,.pd-ai-reference-editor,.pd-ai-point-editor,.pd-ai-output-editor){min-width:0;max-width:100%;box-sizing:border-box}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] .pd-ai-reference-grid{min-width:0}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] .pd-ai-reference-help summary{white-space:normal}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] .pd-ai-sku-pictures>summary{flex-wrap:wrap;gap:3px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] .pd-ai-ref-row>label:first-child>span{min-width:0;overflow-wrap:anywhere}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] .pd-ai-white-upload{box-sizing:border-box;min-width:0;max-width:100%;padding-left:7px;padding-right:7px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] .pd-ai-output-scroll{box-sizing:border-box;max-width:100%}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] .pd-erp-shared-numbers{flex-wrap:wrap;gap:5px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns="true"] .pd-erp-shared-numbers>label{flex:1 1 60px}

/* pd-v90-aligned-merge-buttons */

#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-parameter-label,#pd-control .pd-photo-compact-matrix .pd-photo-category-label{display:flex;width:100%;max-width:100%;box-sizing:border-box;align-items:flex-start;flex-wrap:nowrap;gap:4px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-parameter-label>span,#pd-control .pd-photo-compact-matrix .pd-photo-category-label>span{flex:1 1 auto;min-width:0;white-space:normal;overflow-wrap:anywhere}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table .pd-ai-row-toggle,#pd-control .pd-photo-compact-matrix [data-photo-toggle]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;margin:0 0 0 auto;padding:1px 6px;min-height:22px;line-height:18px;font-size:10px;white-space:nowrap;border:1px solid #d8e3e9;border-radius:5px;background:#f8fbfd;color:#4c6c7d}
#pd-control .pd-ai-parameter-brief .pd-sales-name-actions{width:100%;box-sizing:border-box}

/* pd-v92-photo-flow */

#pd-control .pd-photo-compact-matrix .pd-photo-compact-td{padding:7px 8px 20px;vertical-align:top}
#pd-control .pd-photo-compact-matrix .pd-photo-matrix-cell{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;align-content:flex-start;gap:6px;min-height:34px;max-width:none;width:100%;margin:0}
#pd-control .pd-photo-compact-matrix .pd-photo-add-menu{flex:0 0 34px;align-self:flex-start}
#pd-control .pd-photo-compact-matrix .pd-photo-plus{width:34px;height:34px;font-size:24px;border-radius:5px}
#pd-control .pd-photo-compact-matrix .pd-photo-thumbnails{display:contents}
#pd-control .pd-photo-compact-matrix .pd-photo-thumbnails:empty{display:none}
#pd-control .pd-photo-compact-matrix .pd-photo-image-tile{position:relative;flex:0 0 66px;width:66px;min-width:0;max-width:66px;margin:0}
#pd-control .pd-photo-compact-matrix .pd-photo-preview-button{display:block;box-sizing:border-box;width:66px;height:56px;padding:2px;margin:0;border:1px solid #dce5eb;border-radius:4px;background:#fff;cursor:zoom-in;overflow:hidden}
#pd-control .pd-photo-compact-matrix .pd-photo-preview-button img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain}
#pd-control .pd-photo-compact-matrix .pd-photo-image-tile figcaption{width:66px;max-width:66px;margin-top:2px;font-size:10px;line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pd-control .pd-photo-compact-matrix .pd-photo-image-remove{position:absolute;right:-3px;top:-3px;display:flex;align-items:center;justify-content:center;width:19px;height:19px;min-height:0;margin:0;padding:0;border:1px solid #d6dde4;border-radius:50%;background:#fff;color:#984d4d;font-size:15px;line-height:1;cursor:pointer;z-index:1}
#pd-control .pd-photo-compact-matrix .pd-photo-image-remove:hover{background:#fff0f0;border-color:#c88c8c}
#pd-control .pd-photo-lightbox{box-sizing:border-box;width:min(92vw,1100px);max-width:92vw;max-height:90vh;padding:12px;border:1px solid #d2dde5;border-radius:10px;background:#fff;color:#243c4c}
#pd-control .pd-photo-lightbox::backdrop{background:#152534aa}
#pd-control .pd-photo-lightbox[open]{position:fixed;inset:0;margin:auto;z-index:2147483640}
#pd-control .pd-photo-lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
#pd-control .pd-photo-lightbox-head span{min-width:0;overflow-wrap:anywhere;font-size:13px}
#pd-control .pd-photo-lightbox-head button{flex:0 0 30px;width:30px;height:30px;padding:0;border:1px solid #dce4e9;border-radius:5px;background:#f8fafb;font-size:23px;cursor:pointer}
#pd-control .pd-photo-lightbox>img{display:block;width:100%;height:auto;max-height:calc(90vh - 76px);object-fit:contain}

/* pd-v94-compact-dimensions */

#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns] .pd-ai-parameter-label{flex-wrap:nowrap}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns] tr:is([data-ai-parameter-row="dimensions"],[data-ai-parameter-row="weight"])>th,
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns] tr:is([data-ai-parameter-row="dimensions"],[data-ai-parameter-row="weight"])>td{padding-top:4px;padding-bottom:4px;vertical-align:top}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns] tr:is([data-ai-parameter-row="dimensions"],[data-ai-parameter-row="weight"]) .pd-ai-parameter-label{font-size:11px;line-height:16px;align-items:flex-start}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns] tr:is([data-ai-parameter-row="dimensions"],[data-ai-parameter-row="weight"]) .pd-usage-badges{margin-top:2px;line-height:13px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns] .pd-erp-shared-numbers{flex-wrap:nowrap;gap:4px;max-width:360px;margin:0 auto;align-items:flex-start}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns] .pd-erp-shared-numbers>label{display:block;flex:1 1 0;min-width:0;margin:0;font-size:10px;line-height:14px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns] .pd-erp-shared-numbers input{height:28px;min-height:28px;padding:3px 4px;margin:1px 0 0;font-size:12px}
#pd-control .pd-ai-parameter-brief .pd-ai-parameter-table[data-ai-compact-columns] [data-ai-parameter-row="weight"] .pd-erp-shared-numbers{max-width:120px}

/* pd-v95-sku-confirmation */

#pd-control .pd-ai-parameter-brief .pd-ai-sku-confirm[data-sku-confirm-popover]{position:fixed;inset:auto;box-sizing:border-box;margin:0;padding:12px;overflow:auto;background:#fffaf3;border:1px solid #deb681;border-radius:8px;box-shadow:0 8px 28px #213a542b;z-index:2147483630;color:#614323;font-size:13px;line-height:1.5;text-align:left;white-space:normal}
#pd-control .pd-ai-parameter-brief .pd-ai-sku-confirm[data-sku-confirm-popover]>div{display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:8px;margin-top:10px}
#pd-control .pd-ai-parameter-brief .pd-ai-sku-confirm[data-sku-confirm-popover] button{font-size:12px;padding:5px 10px;min-height:30px}

/* pd-v98-inline-confirm-save-state */

#pd-control .pd-ai-parameter-brief .pd-ai-sku-confirm[data-sku-confirm-popover]{display:block!important;position:static!important;inset:auto!important;width:100%;max-width:100%;max-height:none;margin:8px 0 0;padding:8px;box-sizing:border-box;box-shadow:none;overflow:visible;background:#fff5e9;border:1px solid #ddb984;line-height:1.5}
#pd-control .pd-ai-parameter-brief .pd-ai-sku-confirm[data-sku-confirm-popover]>div{justify-content:flex-start;flex-wrap:wrap;gap:5px;margin-top:6px}
#pd-control .pd-ai-save-summary{margin-left:auto;margin-right:8px;padding:2px 6px;border:0;border-radius:4px;background:#edf6f0;color:#397351;font-size:11px;line-height:20px;white-space:nowrap;cursor:pointer}
#pd-control .pd-ai-save-summary.pd-save-failed{background:#fff0ee;color:#b03c31}

/* pd-v98-amortization-fold */

#pd-control .pd-ai-parameter-table .pd-erp-amortization-label{padding:0;margin:0;border:0;background:transparent;font:inherit}
#pd-control .pd-ai-parameter-table .pd-erp-amortization-label>summary{padding:0;margin:0;cursor:pointer;line-height:18px;font:inherit;color:inherit}
#pd-control .pd-ai-parameter-table tr[data-erp-amortization-source]>th{background:#f4f7f9}

/* pd-v99-formula-corners */

#pd-control .pd-ai-parameter-table .pd-erp-formula-cell{position:relative;display:block;min-width:0}
#pd-control .pd-ai-parameter-table .pd-erp-formula-cell>output{box-sizing:border-box;padding-right:19px}
#pd-control .pd-ai-parameter-table .pd-erp-formula-hint{position:absolute;right:3px;bottom:3px;display:inline-block;font-size:12px;font-weight:400;line-height:14px;color:#8194a2;cursor:help;outline-offset:2px}
#pd-control .pd-ai-parameter-table .pd-erp-formula-tooltip{display:none;position:absolute;right:0;bottom:calc(100% + 5px);box-sizing:border-box;width:230px;max-width:75vw;padding:9px 11px;border:1px solid #d5e0e8;border-radius:6px;background:#fff;color:#344a5d;font-size:12px;line-height:1.6;text-align:left;white-space:normal;box-shadow:0 5px 16px #19344b24;z-index:30;pointer-events:none}
#pd-control .pd-ai-parameter-table .pd-erp-formula-hint:hover>.pd-erp-formula-tooltip,#pd-control .pd-ai-parameter-table .pd-erp-formula-hint:focus>.pd-erp-formula-tooltip{display:block}

/* pd-v100-fixed-component-lanes */

#pd-control .pd-flow-lane-map .pd-flow-scroll{width:100%;min-width:0;max-height:none;overflow-x:hidden;overflow-y:visible}
#pd-control .pd-flow-lane-map .pd-flow-canvas{max-width:100%;min-width:0}
#pd-control .pd-flow-lane-map .pd-flow-lane-region{position:absolute;box-sizing:border-box;border:1px solid #e0e9e3;border-radius:8px;background:#f8fbf9;z-index:0;pointer-events:none}
#pd-control .pd-flow-lane-map .pd-flow-lines{z-index:1}
#pd-control .pd-flow-lane-map .pd-freeform-node,#pd-control .pd-flow-lane-map .pd-flow-part-header,#pd-control .pd-flow-lane-map .pd-freeform-root{z-index:2}

/* pd-v108-inline-confirm */
/* V108: confirmation occupies the original SKU action slot; no overlay geometry. */
#pd-control .pd-ai-parameter-brief .pd-ai-sku-head > .pd-ai-sku-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:4px; min-width:0; }
#pd-control .pd-ai-parameter-brief .pd-ai-sku-remove-slot { display:inline-flex; align-items:center; justify-content:flex-end; gap:4px; flex:0 0 118px; width:118px; min-height:28px; white-space:nowrap; }
#pd-control .pd-ai-parameter-brief .pd-ai-sku-remove-slot > .pd-control-button { flex:0 0 auto; margin:0; padding:4px 6px; }
#pd-control .pd-ai-parameter-brief .pd-ai-sku-remove-slot > [data-ai-confirm-remove-variant] { color:#b42318; border-color:#f0aaa5; background:#fff1ef; }
#pd-control .pd-ai-parameter-brief .pd-ai-sku-actions > .pd-ai-add-sku { flex:0 0 auto; margin:0; }
#pd-control .pd-ai-parameter-brief .pd-ai-sku-head ~ [data-sku-busy-note] { display:block; white-space:normal; font-weight:400; }
