/* Power Factor control material: one frame, 12 px radius, restrained Liquid Glass
   (8 px blur, 110% saturation) with a solid fallback. Reading groups stay opaque.
   Screen only. Calculation, document and printed-report behaviour is unchanged. */
@media screen {
  body.page-pf {
    --pfg-surface: #fff;
    --pfg-tint: rgba(255,255,255,.88);
    --pfg-highlight: rgba(255,255,255,.98);
    --pfg-edge: #8996a8;
    --pfg-shadow: 0 2px 6px rgba(30,45,70,.06);
    --pfg-group: #f6f7fa;
    --pfg-group-edge: #e1e5ed;
    --pfg-selected: #dcecff;
    --pfg-selected-ink: #0055a4;
  }
  html[data-theme="night"] body.page-pf {
    --pfg-surface: #2b2e39;
    --pfg-tint: rgba(43,46,57,.94);
    --pfg-highlight: rgba(62,66,82,.9);
    --pfg-edge: #7d879c;
    --pfg-shadow: 0 2px 6px rgba(0,0,0,.16);
    --pfg-group: #22242e;
    --pfg-group-edge: #414654;
    --pfg-selected: #354f70;
    --pfg-selected-ink: #d1e8ff;
  }
  #pf-inputs > .vd-card {
    background: var(--pfg-group) !important;
    border-color: var(--pfg-group-edge) !important;
    border-radius: 18px !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  #pf-inputs :is(.field, .seg, .stepper) {
    background: var(--pfg-surface) !important;
    border: 1px solid var(--pfg-edge) !important;
    border-radius: 12px !important;
    box-shadow: var(--pfg-shadow) !important;
  }
  @supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    #pf-inputs :is(.field, .seg, .stepper) {
      background: linear-gradient(160deg,var(--pfg-highlight),var(--pfg-tint)) !important;
      backdrop-filter: blur(8px) saturate(110%);
      -webkit-backdrop-filter: blur(8px) saturate(110%);
    }
  }
  #pf-inputs .field > input,
  #pf-inputs :is(.seg, .stepper) > button {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
  }
  #pf-inputs .field > input { border-radius: 0 !important; }
  #pf-inputs :is(.seg, .stepper) > button { border-radius: 9px !important; }
  #pf-inputs .seg > button.active {
    background: var(--pfg-selected) !important;
    color: var(--pfg-selected-ink) !important;
  }
  #pf-inputs .step-btn:hover { background: var(--pfg-group) !important; }
  #pf-inputs :is(.field, .seg, .stepper):has(:focus-visible) {
    outline: 2px solid var(--pf-accent, #0060b9) !important;
    outline-offset: 3px;
  }
  @media (prefers-reduced-transparency:reduce), (prefers-contrast:more) {
    #pf-inputs :is(.field, .seg, .stepper) {
      background: var(--pfg-surface) !important;
      backdrop-filter: none;
      -webkit-backdrop-filter: none;
      box-shadow: none !important;
    }
  }
  @media (forced-colors:active) {
    /* Invalid fields and groups keep a non-colour frame: the forced frame above replaces the red border. */
    body.page-pf :is(.field:has([aria-invalid="true"]), select[aria-invalid="true"], [data-invalid="true"]) { outline: 2px solid Mark !important; outline-offset: 1px; }
    #pf-inputs :is(.field, .seg, .stepper) {
      background: Canvas !important; border-color: ButtonText !important;
      box-shadow: none !important; backdrop-filter: none; -webkit-backdrop-filter: none;
    }
    #pf-inputs .seg > button.active { background: Highlight !important; color: HighlightText !important; forced-color-adjust: none; }
    #pf-inputs :is(.field, .seg, .stepper):has(:focus-visible) { outline-color: Highlight !important; }
  }

  /* Results and document controls share the control material. */
  #pf-analysis .vd-tab,
  #pf-document .add-btn,
  .page-pf .vd .pf-document-button,
  .page-pf .vd .vd-pdf-btn,
  .page-pf .pf-review-input,
  body.page-pf #amp-workspace button {
    border-radius: 12px !important;
    min-height: 44px;
    background: var(--pfg-surface) !important;
    border: 1px solid var(--pfg-edge) !important;
    box-shadow: var(--pfg-shadow) !important;
  }
  @supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
    #pf-analysis .vd-tab,
    #pf-document .add-btn,
    .page-pf .vd .pf-document-button,
    .page-pf .vd .vd-pdf-btn,
    .page-pf .pf-review-input,
    body.page-pf #amp-workspace button {
      background: linear-gradient(160deg,var(--pfg-highlight),var(--pfg-tint)) !important;
      backdrop-filter: blur(8px) saturate(110%);
      -webkit-backdrop-filter: blur(8px) saturate(110%);
    }
  }
  #pf-analysis .vd-tab.active {
    background: var(--pfg-selected) !important;
    color: var(--pfg-selected-ink) !important;
    border-color: var(--pfg-edge) !important;
  }
  /* Save is the blue-filled primary in the header and the Document section; Print
     stays the secondary glass control (Maximum Demand reference). */
  body.page-pf #pf-document #pf-document-save {
    background: var(--pf-accent, #0060b9) !important;
    color: var(--pf-on-accent, #fff) !important;
    border-color: var(--pf-accent, #0060b9) !important;
    backdrop-filter: none; -webkit-backdrop-filter: none;
  }
  body.page-pf #pf-document #pf-document-save:hover:not(:disabled) { background: var(--pf-accent-hover, #004f99) !important; border-color: var(--pf-accent-hover, #004f99) !important; }
  body.page-pf :is(#amp-workspace-dialog, dialog.amp-workspace-dialog) {
    --aw-bg: var(--pfg-surface);
    --aw-soft: var(--pfg-group);
    --aw-line: var(--pfg-edge);
  }
  @media (prefers-reduced-transparency:reduce), (prefers-contrast:more) {
    #pf-analysis .vd-tab, #pf-document .add-btn, .page-pf .vd .pf-document-button, .page-pf .vd .vd-pdf-btn, .page-pf .pf-review-input, body.page-pf #amp-workspace button {
      background: var(--pfg-surface) !important;
      backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: none !important;
    }
    #pf-analysis .vd-tab.active { background: var(--pfg-selected) !important; }
  }
  @media (forced-colors:active) {
    #pf-analysis .vd-tab, #pf-document .add-btn, .page-pf .vd .pf-document-button, .page-pf .vd .vd-pdf-btn, .page-pf .pf-review-input, body.page-pf #amp-workspace button {
      background: Canvas !important; border-color: CanvasText !important;
      box-shadow: none !important; backdrop-filter: none; -webkit-backdrop-filter: none;
    }
    #pf-analysis .vd-tab.active { background: Highlight !important; color: HighlightText !important; forced-color-adjust: none; }
  }
}
