/* AI-Regel documentation presentation, transcribed from the designer reference.
 * Source: AI-Regel-implementation-test.html, 2026-09-09.
 * SHA-256: 60abca3a8ef9848833565d2f3dc004f90d84a67494c904e20f680e3b0ebdbe19
 * Canonical shared REGEL theme. Historical workbench path retained for designer continuity.
 * Selectors support both the public theme boundary and existing workbench specimens.
 * This stylesheet does not establish shared component approval or interaction behavior.
 */

:is(.gap-request-form, .prototype-login-form)[data-regel-theme] {
  --brand-chevron-icon: url("./regel-brand-chevron-icon.svg");
  color-scheme: light;
  --bg: #f5f6f7;
  --bg-subtle: #ebecee;
  --surface: #fdfdfd;
  --side-bg: var(--surface);
  --element: var(--bg-subtle);
  --element-2: var(--bg-subtle);
  --border: #d6d9dd;
  --border-subtle: var(--border);
  --border-strong: #979ca7;
  --nav-active: var(--bg-subtle);
  --nav-active-hover: var(--bg-subtle);
  --focus: #0f7ac7;
  --source-highlight-accent: #ff6900;
  --source-highlight-fill: color-mix(in oklab, var(--source-highlight-accent) 20%, transparent);
  --source-highlight-inline-radius: var(--radius-sm);
  --source-highlight-text-radius: 4.8px;
  --focus-shadow: none;
  --text: #0b1830;
  --numbered-navigation-metadata-text: var(--text-2);
  --numbered-navigation-hover-bg: var(--element-2);
  --numbered-navigation-hover-border: var(--border-strong);
  --text-hover-overlay: rgba(26, 44, 78, 0.05);
  --text-pressed-overlay: rgba(26, 44, 78, 0.1);
  --text-disabled: #c2c5cb;
  --text-2: #4b5a77;
  --text-3: #6d7483;
  --menu-item-text: var(--text-2);
  --menu-item-hover-text: var(--text);
  --menu-item-selected-text: var(--text);
  --menu-item-disabled-text: var(--text-disabled);
  --inverse: #fdfdfd;
  --link: #0f7ac7;
  --link-hover: #1164a6;
  --blue: #0f7ac7;
  --blue-hover: #1164a6;
  --blue-soft: #edf6fd;
  --interactive-active: #114f86;
  --info-bg: #eff6ff;
  --info-border: #bedbff;
  --info-text: #1447e6;
  --status-proposed-border: #99d3f4;
  --button-action-bg: #0f7ac7;
  --button-action-hover-bg: #1164a6;
  --button-action-fg: #ffffff;
  --button-solid-hover-bg: var(--text);
  --button-solid-pressed-bg: var(--text);
  --button-solid-hover-overlay: rgba(255, 255, 255, 0.15);
  --button-secondary-hover-overlay: rgba(26, 44, 78, 0.05);
  --button-secondary-pressed-overlay: rgba(26, 44, 78, 0.1);
  --button-branded-primary-hover-bg: var(--button-solid-hover-bg);
  --button-branded-outline-border: var(--border-strong);
  --control-active-filter: brightness(0.96);
  --component-disabled-opacity: 0.55;
  --component-muted-opacity: 0.4;
  --input-focus-ring: 0 0 0 2px rgba(39, 164, 236, 0.15);
  --dialog-backdrop-bg: rgba(10, 10, 10, 0.42);
  --dialog-panel-motion-offset: var(--space-2);
  --toast-shadow: var(--shadow-md);
  --green-bg: #f1fcf4;
  --green-border: #bbf4d2;
  --green-text: #1b9a54;
  --orange-bg: #fff7ed;
  --orange-border: #ffd6a7;
  --orange-text: #ca3500;
  --component-criterion-warning-icon: #f0b100;
  --red-bg: #fef2f3;
  --red-border: #fccace;
  --red-text: #cf2d3b;
  --avatar-background-red: var(--avatar-identity-0);
  --avatar-background-orange: var(--avatar-identity-3);
  --avatar-background-yellow: var(--avatar-identity-5);
  --avatar-background-green: var(--avatar-identity-1);
  --avatar-background-blue: var(--avatar-identity-2);
  --avatar-background-purple: var(--avatar-identity-4);
  --avatar-background-pink: var(--avatar-identity-6);
  --avatar-foreground: var(--avatar-identity-foreground);
  --avatar-foreground-on-deep: var(--avatar-identity-foreground);
  --avatar-foreground-on-bright: var(--avatar-identity-foreground);
  --avatar-size-small: 18px;
  --avatar-size-default: var(--space-8);
  --avatar-size-large: var(--space-12);
  --avatar-size: var(--avatar-size-default);
  --avatar-font-size-small: var(--type-indicator-size);
  --avatar-font-size-default: var(--type-label-sm-size);
  --avatar-font-size-large: var(--type-body-md-size);
  --avatar-font-size: var(--avatar-font-size-default);
  --group-avatar-size: var(--space-4);
  --group-avatar-radius: var(--radius-sm);
  --group-avatar-font-size: var(--type-indicator-size);
  --avatar-list-overlap: var(--space-1);
  --avatar-list-stroke: 1px solid var(--surface);
  --avatar-overflow-background: var(--avatar-neutral-background);
  --avatar-overflow-foreground: var(--avatar-neutral-foreground);
  --component-neutral-notice-radius: 16px;
  --component-selection-dialog-radius: 16px;
  --component-workspace-menu-width: 320px;
  --component-workspace-logo-radius: var(--radius-sm);
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 12px;
  --radius-full: 9999px;
  --button-radius: var(--radius-md);
  --button-height-sm: 32px;
  --button-height-md: 36px;
  --button-height-lg: 40px;
  --button-height-xl: 48px;
  --button-icon-size: 16px;
  --button-branded-sm-height: var(--button-height-sm);
  --button-padding-sm: var(--space-3);
  --button-padding-md: var(--space-4);
  --button-padding-lg: var(--space-6);
  --button-padding-xl: var(--button-padding-lg);
  --choice-chip-padding-md: var(--space-4);
  --choice-chip-padding-lg: var(--space-6);
  --component-input-height-default: 36px;
  --component-input-height-large: 40px;
  --component-input-padding-x: var(--space-4);
  --field-control-height: var(--component-input-height-default);
  --floating-field-height: var(--component-input-height-default);
  --field-control-padding-x: var(--component-input-padding-x);
  --icon-size-default: 16px;
  --shadow-sm: none;
  --shadow-md: none;
  --shadow-card-resting: 0 1px 3px rgba(0, 0, 0, 0.08);
  --shadow-card-raised: var(--shadow-card-resting);
  --shadow-card-passive: 0 1px 3px rgba(0, 0, 0, 0.08);
  --shadow-card-interactive: var(--shadow-card-resting);
  --shadow-card-hover: var(--shadow-card-interactive);
  --shadow-card: var(--shadow-card-resting);
  --motion-fast: 120ms;
  --motion-normal: 180ms;
  --motion-slow: 180ms;
  --motion-hover: var(--motion-slow);
  --motion-ease: ease;
  --dropdown-motion-offset: var(--space-2);
  --doc-card-padding: var(--space-5);
  --doc-card-radius: var(--radius-xl);
  --doc-card-border: var(--border);
  --card-register-metadata: var(--text-3);
  --card-register-secondary: var(--text-2);
  --status-muted-text: var(--text-2);
  --doc-card-bg: var(--surface);
  --doc-card-shadow: var(--shadow-card);
  --card-passive-border: rgba(214, 217, 221, 0.55);
  --card-interactive-border: rgba(214, 217, 221, 0.75);
  --card-static-border: var(--card-passive-border);
  --card-static-shadow: var(--shadow-card-passive);
  --card-action-border: var(--card-interactive-border);
  --card-action-shadow: var(--shadow-card-interactive);
  --card-action-hover-shadow: var(--card-action-shadow);
  --card-selectable-border: var(--card-interactive-border);
  --card-selectable-shadow: var(--shadow-card-interactive);
  --card-selectable-hover-shadow: var(--card-selectable-shadow);
  --example-card-padding: var(--space-6);
  --example-card-radius: var(--radius-xl);
  --component-card-padding: var(--space-6);
  --component-card-radius: var(--radius-lg);
  --lab-control-width: 300px;
  --lab-gap: var(--space-5);
  --lab-control-gap: var(--space-4);
  --lab-stage-min-height: 260px;
  --lab-stage-padding: var(--space-8);
  --type-display-lg-size: 60px;
  --type-display-md-size: 48px;
  --type-display-sm-size: 36px;
  --type-heading-lg-size: 30px;
  --type-heading-md-size: 24px;
  --type-heading-sm-size: 20px;
  --type-heading-xs-size: 18px;
  --type-body-lg-size: 16px;
  --type-body-md-size: 14px;
  --type-body-sm-size: 12px;
  --type-label-lg-size: 14px;
  --type-label-md-size: 12px;
  --type-label-sm-size: 11px;
  --type-caption-size: 12px;
  --type-code-size: 12px;
  --type-subtitle-size: 16px;
  --type-subtitle-line: 22px;
  --type-subtitle-weight: 500;
  --type-overline-size: 12px;
  --type-overline-line: 16px;
  --type-overline-weight: 500;
  --page-title-size: var(--type-display-md-size);
  --page-title-line: var(--type-display-md-line);
  --page-title-weight: 700;
  --type-display-lg-line: 69px;
  --type-display-md-line: 55.2px;
  --type-display-sm-line: 41.4px;
  --type-heading-lg-line: 34.5px;
  --type-heading-md-line: 31.2px;
  --type-heading-sm-line: 26px;
  --type-heading-xs-line: 23.4px;
  --type-body-lg-line: 26.4px;
  --type-body-md-line: 21px;
  --type-body-sm-line: 18px;
  --type-label-lg-line: 21px;
  --type-label-md-line: 15.6px;
  --type-label-sm-line: 16.5px;
  --type-caption-line: 16px;
  --type-code-line: 19.8px;
  --type-sample-color: var(--text);
  --type-detail-color: var(--text-3);
  --type-display-lg-tracking: -1.8px;
  --type-display-md-tracking: -1.44px;
  --type-display-sm-tracking: -0.72px;
  --type-heading-lg-tracking: -0.6px;
  --type-heading-md-tracking: -0.24px;
  --type-heading-sm-tracking: -0.2px;
  --type-heading-xs-tracking: 0px;
  --type-body-lg-tracking: 0px;
  --type-body-md-tracking: 0px;
  --type-body-sm-tracking: 0.12px;
  --type-label-lg-tracking: 0px;
  --type-label-md-tracking: 0px;
  --type-label-sm-tracking: 0.12px;
  --type-caption-tracking: 0.2px;
  --type-subtitle-tracking: 0px;
  --type-overline-tracking: 0.2px;
  --type-code-tracking: 0px;
  --type-display-weight: 700;
  --type-table-header-weight: 700;
  --type-heading-weight: 500;
  --type-body-weight: 400;
  --type-label-weight: 500;
  --type-caption-weight: 400;
  --type-code-weight: 400;
  --type-page-body-size: var(--type-body-md-size);
  --type-page-body-line: var(--type-body-md-line);
  --type-page-lead-size: var(--type-subtitle-size);
  --type-page-lead-line: var(--type-subtitle-line);
  --type-nav-label-size: var(--type-body-sm-size);
  --type-nav-label-line: var(--type-body-sm-line);
  --type-control-label-size: var(--type-label-md-size);
  --type-control-label-line: var(--type-label-md-line);
  --type-table-body-size: var(--type-body-md-size);
  --type-table-body-line: var(--type-body-md-line);
  --type-table-heading-size: var(--type-caption-size);
  --type-table-heading-line: var(--type-caption-line);
  --type-badge-size: var(--type-overline-size);
  --type-badge-line: var(--type-overline-line);
  --type-badge-weight: var(--type-overline-weight);
  --type-badge-tracking: var(--type-overline-tracking);
  --type-indicator-size: 10px;
  --badge-dot-size: 8px;
  --badge-dot-gap: var(--space-1);
  --type-button-sm-size: var(--type-body-sm-size);
  --type-button-sm-line: var(--type-body-sm-line);
  --type-button-md-size: var(--type-body-md-size);
  --type-button-md-line: var(--type-body-md-line);
  --type-button-lg-size: var(--type-body-lg-size);
  --type-button-lg-line: var(--type-body-lg-line);
  --type-button-weight: var(--type-label-weight);
  --type-segmented-control-size: var(--type-label-md-size);
  --type-segmented-control-line: var(--type-body-sm-line);
  --type-field-label-size: var(--type-label-md-size);
  --type-field-label-line: var(--type-label-md-line);
  --type-field-value-size: var(--type-body-md-size);
  --type-field-value-line: var(--type-body-md-line);
  --type-brand-lockup-size: var(--type-body-md-size);
  --type-brand-lockup-line: var(--type-caption-line);
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --sidebar-shadcn-width: 240px;
  --sidebar-shadcn-compact-width: 64px;
  --sidebar-compact-width: var(--sidebar-shadcn-compact-width);
  --sidebar-shadcn-header-height: 64px;
  --sidebar-shadcn-item-height: 40px;
  --sidebar-shadcn-section-label-height: 32px;
  --sidebar-shadcn-item-padding-inline: var(--space-4);
  --sidebar-shadcn-item-gap: var(--space-2);
  --sidebar-shadcn-icon-size: var(--icon-size-default);
  --sidebar-shadcn-selected-indicator-width: 2px;
  --sidebar-shadcn-selected-bg: var(--blue-soft);
  --sidebar-shadcn-selected-border: var(--interactive-active);
  --sidebar-shadcn-divider: var(--divider-top-default);
  --left: var(--sidebar-shadcn-width);
  --sidebar-default-width: var(--sidebar-shadcn-width);
  --sidebar-min-width: 208px;
  --sidebar-max-width: 332px;
  --component-side-nav-rail-width: 68px;
  --sidebar-resize-divider-width: 1px;
  --layout-left: var(--left);
  --sidebar-drawer-shadow: var(--top-nav-shadow);
  --right: 236px;
  --content: var(--layout-content-max-width);
  --top-nav-height: 56px;
  /* Shell chrome stays above in-page sticky layers such as table headers; overlays use 50. */
  --top-nav-z-index: 3;
  --top-nav-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), 0 4px 16px rgba(0, 0, 0, 0.055);
  --content-gutter-left: var(--space-16);
  --content-gutter-right: var(--space-16);
  --app-shell-grid-inset-mobile: var(--space-4);
  --content-padding-top-mobile: var(--space-6);
  --content-padding-inline-mobile: var(--app-shell-grid-inset-mobile);
  --content-padding-bottom-mobile: var(--space-8);
  --top-nav-padding-inline-mobile: var(--app-shell-grid-inset-mobile);
  --nav-category-gap: var(--space-4);
  --nav-logo-lockup-gap: var(--space-4);
  --nav-logo-lockup-margin-bottom: var(--nav-category-gap);
  --nav-control-section-gap: var(--space-4);
  --nav-section-group-gap: var(--nav-category-gap);
  --nav-collapsed-section-gap: var(--space-2);
  --nav-search-height: 40px;
  --nav-item-height: 34px;
  --nav-item-radius: var(--radius-lg);
  --nav-search-padding-x: 16px;
  --nav-search-gap: 8px;
  --nav-search-icon-size: 16px;
  --nav-search-label-size: var(--type-nav-label-size);
  --nav-search-label-line: var(--type-nav-label-line);
  --nav-search-label-weight: var(--type-label-weight);
  --nav-search-shortcut-size: var(--type-caption-size);
  --nav-search-shortcut-line: var(--type-caption-line);
  --nav-scroll-thumb: color-mix(in srgb, var(--text) 18%, transparent);
  --nav-scroll-thumb-hover: color-mix(in srgb, var(--text) 28%, transparent);
  --palette-search-height: 54px;
  --palette-results-max-height: 260px;
  --search-dialog-z: 30;
  --search-dialog-width: min(720px, calc(100vw - (var(--space-6) * 2)));
  --search-dialog-max-height: calc(100vh - (var(--space-6) * 2));
  --search-dialog-offset-top: var(--space-16);
  --search-dialog-enter-y: calc(var(--space-2) * -1);
  --search-dialog-close-size: var(--space-8);
  --search-dialog-results-max-height: 416px;
  --space-0-5: 2px;

  /* Generated semantic aliases for existing component and composition geometry. */
  --component-accordion-panel-accordion-body-padding: 0 var(--space-4) var(--space-4)
    calc(var(--space-6) + 36px);
  --component-accordion-panel-summary-min-height: 56px;
  --component-badge-action-height: 14px;
  --component-badge-avatar-height: 16px;
  --component-badge-badge-count-min-width: 24px;
  --component-badge-demo-label-min-width: 132px;
  --component-badge-min-height: 24px;
  --component-branded-accordion-panel-summary-min-height: 64px;
  --component-branded-badge-badge-count-min-width: 20px;
  --component-branded-badge-min-height: 20px;
  --component-branded-segmented-control-item-border-radius: 8px;
  --component-branded-segmented-control-item-min-height: 32px;
  --component-branded-segmented-control-item-min-width: 88px;
  --component-branded-segmented-control-spec-border-radius: 12px;
  --component-branded-segmented-control-spec-min-height: 40px;
  --component-branded-segmented-control-spec-size-large-segmented-control-item-min-height: 40px;
  --component-branded-segmented-control-spec-size-large-segmented-control-item-min-width: 104px;
  --component-branded-segmented-control-spec-size-large-min-height: 48px;
  --component-branded-segmented-control-spec-size-small-segmented-control-item-min-height: 28px;
  --component-branded-segmented-control-spec-size-small-segmented-control-item-min-width: 72px;
  --component-branded-segmented-control-spec-size-small-min-height: 36px;
  --component-branded-segmented-control-thumb-border-radius: var(
    --component-branded-segmented-control-item-border-radius
  );
  --component-branded-content-padding: calc(var(--top-nav-height) + var(--space-8)) 0 120px;
  --component-branded-dropdown-item-border-radius: 10px;
  --component-branded-dropdown-stage-min-height: 380px;
  --component-branded-input-stage-min-height: 280px;
  --component-branded-nav-count-badge-min-height: 20px;
  --component-branded-nav-count-badge-min-width: 20px;
  --component-branded-nav-link-border-radius: var(--nav-item-radius);
  --component-branded-nav-link-min-height: 36px;
  --component-branded-right-toc-padding: var(--space-8) var(--space-5) 44px;
  --component-branded-search-dialog-close-border-radius: var(--radius-lg);
  --component-branded-tab-trigger-min-height: 44px;
  --component-segmented-control-item-min-height: 30px;
  --component-segmented-control-item-min-width: 72px;
  --component-segmented-control-item-padding-inline: var(--space-4);
  --component-segmented-control-spec-gap: var(--space-0-5);
  --component-segmented-control-spec-min-height: 36px;
  --component-segmented-control-spec-min-width: min(100%, 260px);
  --component-segmented-control-spec-padding: var(--space-0-5);
  --component-segmented-control-spec-size-large-segmented-control-item-min-height: 38px;
  --component-segmented-control-spec-size-large-segmented-control-item-min-width: 96px;
  --component-segmented-control-spec-size-large-segmented-control-item-padding-inline: var(
    --space-5
  );
  --component-segmented-control-spec-size-large-min-height: 44px;
  --component-segmented-control-spec-size-small-segmented-control-item-min-height: 26px;
  --component-segmented-control-spec-size-small-segmented-control-item-min-width: 64px;
  --component-segmented-control-spec-size-small-segmented-control-item-padding-inline: var(
    --space-3
  );
  --component-segmented-control-spec-size-small-min-height: 32px;
  --component-button-matrix-table-td-first-child-min-width: 120px;
  --component-button-matrix-table-td-min-width: 120px;
  --component-button-spec-button-icon-height: var(--button-icon-size);
  --component-button-spec-learn-more-height: 21px;
  --component-button-spec-learn-more-min-height: 21px;
  --component-card-icon-height: 40px;
  --component-code-padding: 2px 5px;
  --component-colour-swatch-height: 28px;
  --component-colour-token-min-height: 44px;
  --component-decision-audit-summary-after-height: 8px;
  --component-decision-note-min-height: 72px;
  --component-decision-option-marker-height: 16px;
  --component-decision-preview-min-height: 144px;
  --component-decision-preview-control-height: 32px;
  --component-decision-preview-row-height: 24px;
  --component-decision-preview-avatar-size: 32px;
  --component-dialog-demo-min-height: 360px;
  --component-dialog-demo-stage-min-height: 360px;
  --component-dropdown-caret-height: 16px;
  --component-dropdown-trigger-content-gap: var(--space-2);
  --component-dropdown-trigger-gap: var(--space-3);
  --component-metadata-trigger-radius: 8px;
  --component-metadata-identity-size: 16px;
  --component-dropdown-item-check-height: var(--icon-size-default);
  --component-dropdown-item-min-height: 34px;
  --component-empty-panel-min-height: 180px;
  --component-empty-lockup-max-width: 28rem;
  --component-grid-cell-min-height: 52px;
  --component-icon-intent-row-min-height: 40px;
  --component-icon-sample-height: var(--icon-size-default);
  --component-input-spec-description-height: 16px;
  --component-input-spec-label-row-height: 16px;
  --component-kind-chip-padding: 2px var(--space-2);
  --component-lab-click-count-min-height: 20px;
  --component-nav-action-chevron-height: 14px;
  --component-nav-chevron-height: 14px;
  --component-nav-count-badge-min-height: 20px;
  --component-nav-count-badge-min-width: 20px;
  --component-nav-link-min-height: 34px;
  --component-side-nav-item-min-height: 36px;
  --component-side-nav-item-row-gap: 2px;
  --component-nav-readiness-marker-height: 16px;
  --component-side-nav-padding-x: var(--space-4);
  --component-topbar-leading-gap: var(--space-6);
  --component-topbar-padding-inline-start: var(--space-6);
  --component-topbar-padding-inline: var(--space-6);
  --component-action-item-media-radius: 8px;
  --component-action-item-quiet-media-size: 36px;
  --component-action-item-quiet-metadata-width: 12rem;
  --component-action-item-context-foreground: var(--text-3);
  --component-action-item-changes-background: #ffedd5;
  --component-action-item-changes-foreground: #9a3412;
  --component-action-item-column-foreground: var(--text-3);
  --component-choice-chip-text-foreground: var(--text-3);
  --component-account-profile-description-foreground: var(--text-3);
  --component-dropdown-section-foreground: var(--text-3);
  --component-breadcrumb-ancestor-foreground: var(--text-3);
  --component-topbar-breadcrumb-gap: var(--space-2);
  --component-object-detail-main-min-width: 620px;
  --component-object-detail-main-max-width: var(--layout-workflow-content-max-width);
  --component-object-detail-lockup-min-width: 320px;
  --component-object-detail-compact-header-width: 420px;
  --component-object-detail-gutter: var(--layout-workflow-gutter);
  --component-detail-rail-width: 345px;
  --component-detail-rail-edge: var(--space-6);
  --component-detail-rail-padding: var(--space-6);
  --component-detail-panel-shadow: var(--shadow-md);
  --component-floating-sheet-header-shadow: var(--top-nav-shadow);
  --component-form-dialog-header-shadow: var(--top-nav-shadow);
  --component-form-dialog-footer-shadow:
    0 -1px 2px rgba(0, 0, 0, 0.05), 0 -4px 16px rgba(0, 0, 0, 0.055);
  --component-object-subtle-foreground: var(--text-3);
  --component-item-description-tertiary-foreground: var(--text-3);
  --component-notification-inbox-meta-foreground: var(--text-3);
  --component-progress-rail-height: 8px;
  --component-progress-height: 8px;
  --component-progress-radius: var(--radius-full);
  --component-progress-track: var(--element);
  --component-progress-success-indicator: var(--green-text);
  --component-completion-moment-min-height: 184px;
  --component-completion-icon-size: 32px;
  --component-completion-check-stroke-width: 2px;
  --component-completion-timed-close-fill: var(--text-pressed-overlay);
  --component-completion-copy-max-width: 560px;
  --component-decision-completion-placeholder-height: var(--component-completion-moment-min-height);
  --component-decision-completion-offset-y: 0px;
  --motion-completion-offset: var(--space-2);
  --motion-completion-step-delay: 120ms;
  --motion-completion-check-duration: 600ms;
  --motion-completion-close-duration: 3000ms;
  --component-prototype-detail-row-min-height: 44px;
  --component-prototype-toolbar-input-spec-control-min-width: min(320px, 100%);
  --component-queue-group-summary-after-height: 8px;
  --component-sheet-close-height: 32px;
  --component-sheet-close-svg-height: 16px;
  --component-shell-preview-logo-min-height: 48px;
  --component-shell-preview-action-min-height: 40px;
  --component-shell-preview-mark-size: 24px;
  --component-shell-preview-chevron-size: 16px;
  --component-shell-preview-min-height: 560px;
  --component-shell-preview-nav-side-nav-demo-min-height: 560px;
  --component-shell-preview-resize-divider-width: var(--sidebar-resize-divider-width);
  --component-skeleton-line-height: 16px;
  --component-source-avatar-height: var(--component-badge-avatar-height);
  --component-source-badge-badge-caret-height: 14px;
  --component-source-badge-badge-caret-img-height: 14px;
  --component-source-badge-min-height: 22px;
  --component-source-badge-min-width: 22px;
  --component-source-badge-padding: 2px var(--space-2);
  --component-source-badge-subtle-colour-share: 35%;
  --component-source-badge-user-padding-left: 2px;
  --component-source-textarea-min-height: 96px;
  --component-semantic-theme-sample-min-height: 56px;
  --type-shell-preview-mark-size: 8px;
  --type-shell-preview-avatar-size: 9px;
  --component-spinner-height: 36px;
  --component-switch-spec-height: 24px;
  --component-switch-spec-padding: var(--space-0-5);
  --component-switch-spec-span-height: 18px;
  --component-switch-compact-height: 18.4px;
  --component-switch-compact-thumb-size: 16px;
  --component-tab-trigger-min-height: 40px;
  --component-table-add-action-table-add-chevron-height: 14px;
  --component-table-avatar-height: 24px;
  --component-table-preview-table-min-width: 700px;
  --component-table-row-check-size: 14px;
  --component-table-description-max-width: 320px;
  --component-table-preview-viewport-max-height: 360px;
  --component-table-sticky-group-background: var(--surface-subtle);
  --component-table-sticky-group-offset: 41px;
  --component-table-sticky-group-shadow: 0 1px 0 var(--border);
  --component-table-sticky-group-z-index: 1;
  --component-table-sticky-header-z-index: 2;
  --component-tabs-indicator-height: 2px;
  --component-theme-chip-min-height: 32px;
  --component-theme-option-before-height: 18px;
  --component-theme-option-min-height: 34px;
  --component-toast-stage-min-height: 220px;
  --component-tree-row-min-height: 44px;
  --divider-bottom-default: 1px solid var(--border);
  --divider-bottom-subtle: 1px solid var(--border-subtle);
  /* Proposed/Open: a softer edge that remains distinct from shaded topic bands. */
  --register-topic-divider: color-mix(in srgb, var(--border) 60%, var(--element));
  --divider-left-default: 1px solid var(--border);
  --divider-right-default: 1px solid var(--border);
  --divider-top-default: 1px solid var(--border);
  --divider-top-subtle: 1px solid var(--border-subtle);
  --focus-inset-ring: inset 0 0 0 2px var(--focus);
  --focus-outline: 2px solid var(--focus);
  --focus-outline-offset: var(--space-0-5);
  /* Proposed single focus indicator. Selection and ordinary pointer focus do not use it. */
  --focus-indicator-color: color-mix(in srgb, var(--blue) 72%, transparent);
  --focus-indicator-width: 3px;
  --focus-indicator-shadow: 0 0 var(--space-0-5) var(--focus-indicator-width)
    var(--focus-indicator-color);
  --focus-indicator-inset-shadow: inset 0 0 var(--space-0-5) var(--focus-indicator-width)
    var(--focus-indicator-color);
  --focus-indicator-outline: 2px solid transparent;
  --focus-indicator-offset: var(--space-0-5);
  --geometry-button-spec-button-icon-flex: 0 0 var(--button-icon-size);
  --geometry-card-icon-flex: 0 0 40px;
  --geometry-decision-option-marker-box-shadow: inset 0 0 0 3px var(--surface);
  --geometry-dropdown-caret-flex: 0 0 16px;
  --geometry-dropdown-item-check-flex: 0 0 var(--icon-size-default);
  --geometry-nav-action-chevron-flex: 0 0 14px;
  --geometry-nav-chevron-flex: 0 0 14px;
  --geometry-nav-readiness-marker-flex: 0 0 16px;
  --geometry-prototype-toolbar-input-spec-control-flex: 1 1 240px;
  --layout-accordion-panel-summary-before-width: 4px;
  --layout-badge-action-margin-right: -4px;
  --layout-badge-action-width: 14px;
  --layout-badge-avatar-width: 16px;
  --layout-badge-spectrum-row-grid-template-columns: 140px repeat(3, minmax(0, 1fr));
  --layout-branded-segmented-control-spec-size-small-segmented-control-thumb-inset-block: 4px;
  --layout-branded-segmented-control-thumb-inset-block: 4px;
  --layout-branded-input-spec-width: 300px;
  --layout-branded-status-row-margin: var(--space-2) 0 36px;
  --layout-segmented-control-spec-size-small-segmented-control-thumb-inset-block: 2px;
  --layout-segmented-control-thumb-inset-block: 2px;
  --layout-button-spec-button-icon-width: var(--button-icon-size);
  --layout-button-spec-lab-button-click-pulse-transform: translateY(1px);
  --layout-card-icon-width: 40px;
  --layout-choice-card-input-margin-top: 3px;
  --layout-choice-chip-active-transform: translateY(1px);
  --layout-colour-semantic-grid-grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  --layout-colour-swatch-width: 44px;
  --layout-colour-swatch-width-variant-a0a356: 36px;
  --layout-colour-token-grid-template-columns: 44px minmax(0, 1fr) auto;
  --layout-colour-token-grid-template-columns-variant-504379: 36px minmax(0, 1fr);
  --layout-component-index-list-grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  --layout-data-scrolled-top-nav-clip-path: inset(0 0 -24px 0);
  --layout-data-sidebar-drawer-sidebar-resize-handle-left: calc(
    min(var(--left), calc(100vw - var(--space-12))) -
    3px
  );
  --layout-decision-audit-summary-after-width: 8px;
  --layout-decision-option-grid-template-columns: 20px minmax(0, 1fr) auto;
  --layout-decision-option-marker-width: 16px;
  --layout-decision-preview-sidebar-width: 28%;
  --layout-decision-preview-panel-width: 36%;
  --layout-decision-preview-scene-width: 640px;
  --layout-dialog-panel-width: min(100%, 420px);
  --layout-dialog-wide-panel-width: min(100%, 672px);
  --layout-form-dialog-panel-width: min(100%, 640px);
  --layout-large-dialog-panel-width: min(100%, 800px);
  --layout-document-dialog-panel-width: min(100%, 1120px);
  --layout-dropdown-caret-width: 16px;
  --layout-dropdown-demo-width: min(100%, 340px);
  --layout-dropdown-item-check-width: var(--icon-size-default);
  --layout-dropdown-item-grid-template-columns: 18px minmax(0, 1fr) auto;
  --layout-dropdown-menu-min-width: 160px;
  --layout-dropdown-menu-width: min(320px, 100%);
  --layout-empty-grid-grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  --layout-field-max-width: 420px;
  --layout-grid-demo-page-frame-grid-template-columns: 220px minmax(0, 1fr) 180px;
  --layout-grid-demo-product-frame-grid-template-columns: minmax(0, 1fr) 320px;
  --layout-icon-intent-row-grid-template-columns: 24px minmax(140px, 1fr) minmax(120px, 0.8fr)
    minmax(150px, 0.9fr) minmax(180px, 1.2fr);
  --layout-icon-intent-row-grid-template-columns-variant-b770a4: 24px minmax(0, 1fr);
  --layout-icon-rule-grid-grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  --layout-icon-sample-width: var(--icon-size-default);
  --layout-input-gap-warning-max-width: 320px;
  --layout-input-preview-description-width: 320px;
  --layout-input-preview-floating-width: 320px;
  --layout-input-spec-width: 320px;
  --layout-lab-dropdown-dropdown-item-grid-template-columns: 18px minmax(0, 1fr);
  --layout-lab-dropdown-dropdown-menu-max-height: 260px;
  --layout-lead-max-width: 680px;
  --layout-left-nav-webkit-scrollbar-width: 6px;
  --layout-nav-action-chevron-width: 14px;
  --layout-nav-chevron-width: 14px;
  --layout-nav-readiness-marker-width: 16px;
  --layout-nav-system-item-grid-template-columns: 180px minmax(0, 1fr) max-content;
  --layout-page-theme-switch-max-width: 360px;
  --layout-prototype-side-panel-width: min(420px, 100%);
  --layout-queue-group-summary-after-width: 8px;
  --layout-sheet-close-svg-width: 16px;
  --layout-sheet-close-width: 32px;
  --layout-sheet-panel-width: min(372px, 100%);
  --layout-shell-preview-grid-template-columns: minmax(224px, var(--left)) minmax(0, 1fr);
  --layout-shell-preview-grid-template-columns-variant-bec85a: minmax(200px, 260px) minmax(0, 1fr);
  --layout-shell-preview-grid-template-rows: 56px minmax(0, 1fr);
  --layout-shell-preview-nav-min-width: 224px;
  --layout-shell-preview-nav-responsive-min-width: 200px;
  --layout-shell-preview-nav-responsive-max-width: 260px;
  --layout-semantic-theme-comparison-grid-template-columns: minmax(148px, 0.7fr)
    repeat(2, minmax(0, 1fr));
  --layout-semantic-theme-sample-grid-template-columns: 36px minmax(0, 1fr);
  --layout-semantic-token-table-min-width: 640px;
  --layout-sidebar-resize-handle-before-left: 3px;
  --layout-sidebar-resize-handle-before-width: var(--sidebar-resize-divider-width);
  --layout-sidebar-resize-handle-left: calc(var(--layout-left) - 3px);
  --layout-sidebar-resize-handle-width: 6px;
  --layout-source-avatar-width: var(--layout-badge-avatar-width);
  --layout-source-badge-badge-caret-img-width: 14px;
  --layout-source-badge-badge-caret-width: 14px;
  --layout-source-badge-number-width: 22px;
  --layout-source-fields-grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  --layout-spinner-width: 36px;
  --layout-switch-spec-span-width: 18px;
  --layout-switch-spec-width: 44px;
  --layout-switch-specaria-checked-span-transform: translateX(20px);
  --layout-switch-compact-width: 32px;
  --layout-switch-compact-checked-transform: translateX(14px);
  --layout-table-add-action-table-add-chevron-width: 14px;
  --layout-table-avatar-width: 24px;
  --layout-table-toolbar-grid-template-columns: minmax(220px, 1fr) max-content max-content
    max-content;
  --layout-tabs-indicator-bottom: -1px;
  --layout-theme-option-before-width: 18px;
  --layout-theme-option-grid-template-columns: 18px minmax(0, 1fr);
  --layout-theme-swatch-row-grid-template-columns: 88px minmax(0, 1fr);
  --layout-toast-feedback-width: 320px;
  --layout-toast-sample-max-width: min(520px, calc(100% - 48px));
  --layout-toc-link-margin: 1px 0;
  --layout-type-row-grid-template-columns: 148px minmax(0, 1fr);
  --layout-type-row-grid-template-columns-variant-730826: 120px minmax(0, 1fr);
  --layout-type-section-row-grid-template-columns: 148px minmax(0, 1fr);
  --layout-type-section-row-grid-template-columns-variant-730826: 120px minmax(0, 1fr);
  --link-underline-offset: 3px;
  --stroke-badge-spectrum-panel-border: 1px dashed var(--border);
  --stroke-badge-stage-border: 1px dashed var(--border);
  --stroke-colour-semantic-card-border: 1px solid var(--card-static-border);
  --stroke-decision-audit-summary-after-border-bottom: 1.5px solid currentColor;
  --stroke-decision-audit-summary-after-border-right: 1.5px solid currentColor;
  --stroke-decision-option-focus-visible-outline-offset: -2px;
  --stroke-decision-option-marker-border: 1px solid var(--border-strong);
  --stroke-default: 1px solid var(--border);
  --stroke-doc-card-border: 1px solid var(--card-static-border);
  --stroke-example-border: 1px solid var(--doc-card-border);
  --stroke-icon-rule-card-border: 1px solid var(--card-static-border);
  --stroke-left-nav-webkit-scrollbar-thumb-border: 2px solid transparent;
  --stroke-palette-box-border: 1px solid var(--card-static-border);
  --stroke-prototype-preview-border: 1px solid var(--card-static-border);
  --stroke-queue-group-summary-after-border-bottom: 1.5px solid currentColor;
  --stroke-queue-group-summary-after-border-right: 1.5px solid currentColor;
  --stroke-spinner-border: 2px solid var(--border);
  --stroke-table-sort-mark-border-bottom: 7px solid currentColor;
  --stroke-table-sort-mark-border-left: 5px solid transparent;
  --stroke-table-sort-mark-border-right: 5px solid transparent;
  --stroke-transparent: 1px solid transparent;
  --font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;
  --type-button-sm-tracking: 0px;
  --type-button-md-tracking: 0px;
  --type-button-lg-tracking: 0px;
  --font-heading: "Inter Tight", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
    sans-serif;
}

:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-theme="dark"],
html[data-site-theme="dark"] :is(.gap-request-form, .prototype-login-form)[data-regel-theme]:not([data-theme]) {
  color-scheme: dark;
  /* Proposed/Open: NEO-1277. Retain geometry while separating Details from the page. */
  --component-detail-panel-shadow: 0 0 0 1px var(--border);
  --bg: #07101f;
  --bg-subtle: #111c2e;
  --surface: #0b1424;
  --border: #273247;
  --border-strong: #586173;
  --focus: #58b5f6;
  --source-highlight-accent: #fb923c;
  --text: #f5f6f7;
  --text-hover-overlay: rgba(245, 246, 247, 0.08);
  --text-pressed-overlay: rgba(245, 246, 247, 0.14);
  --text-disabled: #646c7b;
  --text-2: #c2c9d6;
  --text-3: #8e98aa;
  --inverse: #07101f;
  --link: #58b5f6;
  --link-hover: #8ccdfa;
  --blue: #58b5f6;
  --blue-hover: #8ccdfa;
  --blue-soft: #0d243a;
  --info-bg: var(--blue-soft);
  --info-border: var(--status-proposed-border);
  --info-text: var(--text);
  --status-proposed-border: var(--blue);
  --button-action-bg: #0f7ac7;
  --button-action-hover-bg: #1164a6;
  --button-action-fg: #ffffff;
  --button-secondary-hover-overlay: var(--text-hover-overlay);
  --button-secondary-pressed-overlay: var(--text-pressed-overlay);
  --green-bg: #092616;
  --green-border: #1f6d42;
  --green-text: #66d693;
  --orange-bg: #2d1a08;
  --orange-border: #8a5415;
  --orange-text: #f3b55d;
  --component-action-item-changes-background: #3b2619;
  --component-action-item-changes-foreground: #fdba74;
  --red-bg: #2b1015;
  --red-border: #8b2b36;
  --red-text: #f27e8b;
  --avatar-background-red: var(--avatar-identity-0);
  --avatar-background-orange: var(--avatar-identity-3);
  --avatar-background-yellow: var(--avatar-identity-5);
  --avatar-background-green: var(--avatar-identity-1);
  --avatar-background-blue: var(--avatar-identity-2);
  --avatar-background-purple: var(--avatar-identity-4);
  --avatar-background-pink: var(--avatar-identity-6);
  --avatar-foreground: var(--avatar-identity-foreground);
  --avatar-foreground-on-deep: var(--avatar-identity-foreground);
  --avatar-foreground-on-bright: var(--avatar-identity-foreground);
  --avatar-list-stroke: 1px solid var(--surface);
  --avatar-overflow-background: var(--avatar-neutral-background);
  --avatar-overflow-foreground: var(--avatar-neutral-foreground);
  --shadow-card-resting: none;
  --shadow-card-raised: var(--shadow-card-resting);
  --shadow-card-passive: none;
  --card-passive-border: rgba(39, 50, 71, 0.6);
  --card-interactive-border: rgba(39, 50, 71, 0.82);
}

:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] {
  --bg: #ffffff;
  --bg-subtle: #f5f5f5;
  --surface: #ffffff;
  --side-bg: #fafafa;
  --element: #f5f5f5;
  --element-2: #eeeeee;
  --border: #e5e5e5;
  --card-register-metadata: #a1a1a1;
  --card-register-secondary: #737373;
  --status-muted-text: #737373;
  --border-subtle: #f5f5f5;
  --card-passive-border: var(--border-subtle);
  --card-interactive-border: #eeeeee;
  --border-strong: #a1a1a1;
  --nav-active: #e8e8e8;
  --nav-active-hover: #dedede;
  --focus: #171717;
  --focus-shadow: 0 0 0 3px rgba(23, 23, 23, 0.08);
  --text: #171717;
  --numbered-navigation-metadata-text: #a1a1a1;
  --numbered-navigation-hover-bg: #fafafa;
  --numbered-navigation-hover-border: #d4d4d4;
  --text-hover-overlay: rgba(23, 23, 23, 0.06);
  --text-pressed-overlay: rgba(23, 23, 23, 0.1);
  --text-disabled: #a1a1a1;
  --text-2: #666666;
  --text-3: #a1a1a1;
  /* Supporting roles follow the canonical tertiary text value. */
  --component-action-item-context-foreground: var(--text-3);
  --component-action-item-column-foreground: var(--text-3);
  --component-choice-chip-text-foreground: var(--text-3);
  --component-account-profile-description-foreground: var(--text-3);
  --component-dropdown-section-foreground: var(--text-3);
  --component-breadcrumb-ancestor-foreground: var(--text-3);
  --component-object-subtle-foreground: var(--text-3);
  --component-item-description-tertiary-foreground: var(--text-3);
  --component-notification-inbox-meta-foreground: var(--text-3);
  --inverse: #ffffff;
  --link: #2f5beb;
  --link-hover: #2449c4;
  --blue: #2f5beb;
  --blue-hover: #2449c4;
  --blue-soft: rgba(47, 91, 235, 0.08);
  --info-bg: var(--blue-soft);
  --info-border: var(--status-proposed-border);
  --info-text: var(--blue);
  --status-proposed-border: rgba(47, 91, 235, 0.22);
  --button-action-bg: #2f5beb;
  --button-action-hover-bg: #2449c4;
  --button-action-fg: #ffffff;
  --button-solid-hover-bg: #404040;
  --button-solid-pressed-bg: #262626;
  --button-branded-primary-hover-bg: var(--button-solid-hover-bg);
  --button-branded-outline-border: #d4d4d4;
  --dialog-backdrop-bg: rgba(10, 10, 10, 0.42);
  --toast-shadow: 0 16px 44px rgba(31, 29, 24, 0.22);
  --green-bg: rgba(0, 201, 80, 0.16);
  --green-border: rgba(0, 201, 80, 0.24);
  --green-text: #006d2c;
  --orange-bg: rgba(240, 177, 0, 0.2);
  --orange-border: rgba(240, 177, 0, 0.32);
  --orange-text: #8a4b00;
  --red-bg: rgba(251, 44, 54, 0.16);
  --red-border: rgba(251, 44, 54, 0.28);
  --red-text: #c10007;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --button-radius: var(--radius-full);
  --button-height-sm: 32px;
  --button-height-md: 36px;
  --button-height-lg: 40px;
  --button-height-xl: 48px;
  --button-padding-sm: var(--space-4);
  --button-padding-md: var(--space-5);
  --button-padding-lg: var(--space-6);
  --button-padding-xl: var(--space-8);
  --choice-chip-padding-md: var(--space-6);
  --choice-chip-padding-lg: var(--space-8);
  --page-title-size: 32px;
  --page-title-line: 38px;
  --page-title-weight: 600;
  --type-display-lg-size: 64px;
  --type-display-lg-line: 64px;
  --type-display-md-size: 48px;
  --type-display-md-line: 50px;
  --type-display-sm-size: 40px;
  --type-display-sm-line: 44px;
  --type-heading-lg-size: 32px;
  --type-heading-lg-line: 38px;
  --type-heading-md-size: 24px;
  --type-heading-md-line: 30px;
  --type-heading-sm-size: 20px;
  --type-heading-sm-line: 24px;
  --type-heading-xs-size: 16px;
  --type-heading-xs-line: 22px;
  --type-body-lg-size: 16px;
  --type-body-lg-line: 24px;
  --type-body-md-size: 14px;
  --type-body-md-line: 22px;
  --type-body-sm-size: 12px;
  --type-body-sm-line: 18px;
  --type-label-lg-size: 16px;
  --type-label-lg-line: 24px;
  --type-label-md-size: 14px;
  --type-label-md-line: 22px;
  --type-label-sm-size: 12px;
  --type-label-sm-line: 18px;
  --type-caption-size: 12px;
  --type-caption-line: 16px;
  --type-code-line: 20px;
  --type-sample-color: #141619;
  --type-detail-color: #747474;
  --type-display-lg-tracking: -1px;
  --type-display-md-tracking: -0.5px;
  --type-display-sm-tracking: -0.3px;
  --type-heading-lg-tracking: -0.3px;
  --type-heading-md-tracking: -0.2px;
  --type-heading-sm-tracking: -0.1px;
  --type-heading-xs-tracking: 0px;
  --type-body-lg-tracking: 0px;
  --type-body-md-tracking: 0px;
  --type-body-sm-tracking: 0.12px;
  --type-label-lg-tracking: 0px;
  --type-label-md-tracking: 0px;
  --type-label-sm-tracking: 0.12px;
  --type-caption-tracking: 0.2px;
  --type-subtitle-tracking: 0px;
  --type-overline-tracking: 0.2px;
  --type-code-tracking: 0px;
  --type-subtitle-size: 20px;
  --type-subtitle-line: 28px;
  --type-subtitle-weight: 400;
  --type-overline-size: 12px;
  --type-overline-line: 16px;
  --type-overline-weight: 500;
  --type-display-weight: 500;
  --type-table-header-weight: 600;
  --type-heading-weight: 600;
  --type-label-weight: 500;
  --type-caption-weight: 400;
  --type-button-sm-size: var(--type-body-sm-size);
  --type-button-sm-line: 16px;
  --type-button-md-size: var(--type-body-md-size);
  --type-button-md-line: 20px;
  --type-button-lg-size: var(--type-body-lg-size);
  --type-button-lg-line: 22px;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04), 0 2px 8px rgba(0, 0, 0, 0.03);
  --shadow-md: 0 1px 2px rgba(0, 0, 0, 0.05), 0 4px 16px rgba(0, 0, 0, 0.055);
  --shadow-card-resting: 0 1px 3px rgba(0, 0, 0, 0.08);
  --shadow-card-raised: var(--shadow-card-resting);
  --shadow-card-passive: 0 1px 3px rgba(0, 0, 0, 0.08);
  --shadow-card-interactive: var(--shadow-card-resting);
  --shadow-card-hover: var(--shadow-card-interactive);
  --shadow-card: var(--shadow-card-resting);
  --motion-fast: 180ms;
  --motion-normal: 450ms;
  --motion-slow: 600ms;
  --motion-hover: var(--motion-slow);
  --motion-ease: cubic-bezier(0.2, 0.8, 0.2, 1);
  --doc-card-padding: var(--space-6);
  --doc-card-radius: var(--radius-xl);
  --doc-card-border: var(--border);
  --doc-card-bg: var(--surface);
  --doc-card-shadow: var(--shadow-card);
  --example-card-padding: var(--space-6);
  --example-card-radius: var(--radius-xl);
  --component-card-padding: var(--space-6);
  --component-card-radius: var(--radius-lg);
  --lab-control-width: 300px;
  --lab-gap: var(--space-5);
  --lab-control-gap: var(--space-4);
  --lab-stage-min-height: 280px;
  --lab-stage-padding: var(--space-8);
  --left: 248px;
  --content-gutter-left: 56px;
  --content-gutter-right: 56px;
  --nav-category-gap: var(--space-4);
  --nav-logo-lockup-margin-bottom: var(--nav-category-gap);
  --nav-control-section-gap: var(--space-2);
  --nav-item-height: 36px;
  --nav-item-radius: 8px;
  --avatar-size-small: var(--space-4);
  --avatar-size-default: var(--space-6);
  --avatar-size-large: var(--space-8);
  --type-button-sm-tracking: var(--type-label-sm-tracking);
  --type-button-md-tracking: var(--type-label-md-tracking);
  --type-button-lg-tracking: var(--type-label-lg-tracking);
}

:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"][data-theme="dark"],
html[data-site-theme="dark"] :is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]:not([data-theme]) {
  --bg: #0a0a0a;
  --bg-subtle: #171717;
  --surface: #121212;
  --side-bg: #111111;
  --element: #171717;
  --element-2: #202020;
  --border: #2a2a2a;
  --component-progress-track: var(--border);
  --card-register-metadata: var(--text-3);
  --card-register-secondary: var(--text-2);
  --status-muted-text: var(--text-2);
  --border-subtle: #202020;
  --card-passive-border: var(--border-subtle);
  --card-interactive-border: var(--border);
  --border-strong: #737373;
  --nav-active: #242424;
  --nav-active-hover: #303030;
  --focus: #ffffff;
  --focus-shadow: 0 0 0 3px rgba(250, 250, 250, 0.14);
  --text: #fafafa;
  --numbered-navigation-metadata-text: var(--text-2);
  --numbered-navigation-hover-bg: var(--element-2);
  --numbered-navigation-hover-border: var(--border-strong);
  --text-hover-overlay: rgba(250, 250, 250, 0.08);
  --text-pressed-overlay: rgba(250, 250, 250, 0.14);
  --text-disabled: #737373;
  --text-2: #d4d4d4;
  --text-3: #a1a1a1;
  --component-item-description-tertiary-foreground: var(--text-3);
  --component-notification-inbox-meta-foreground: var(--text-3);
  --component-object-subtle-foreground: var(--text-3);
  --component-action-item-context-foreground: var(--text-3);
  --component-action-item-column-foreground: var(--text-3);
  --component-choice-chip-text-foreground: var(--text-3);
  --component-account-profile-description-foreground: var(--text-3);
  --component-dropdown-section-foreground: var(--text-3);
  --component-breadcrumb-ancestor-foreground: var(--text-3);
  --type-sample-color: var(--text);
  --type-detail-color: var(--text-3);
  --inverse: #0a0a0a;
  --link: #65b5ed;
  --link-hover: #8acdf5;
  --blue: #65b5ed;
  --blue-hover: #8acdf5;
  --blue-soft: #10283d;
  --info-bg: var(--blue-soft);
  --info-border: #3b6e91;
  --info-text: #9bd8f8;
  --status-proposed-border: var(--info-border);
  --button-solid-hover-bg: #e5e5e5;
  --button-solid-pressed-bg: #d4d4d4;
  --button-branded-primary-hover-bg: var(--button-solid-hover-bg);
  --button-branded-outline-border: var(--border-strong);
  --dialog-backdrop-bg: rgba(0, 0, 0, 0.56);
  --toast-shadow: var(--shadow-md);
  --green-bg: rgba(0, 201, 80, 0.18);
  --green-border: #1f6d42;
  --green-text: #66d693;
  --orange-bg: rgba(240, 177, 0, 0.18);
  --orange-border: #8a5415;
  --orange-text: #f3b55d;
  --red-bg: rgba(251, 44, 54, 0.18);
  --red-border: #8b2b36;
  --red-text: #f27e8b;
  --shadow-sm: none;
  --shadow-md: none;
  --shadow-card-resting: none;
  --shadow-card-raised: var(--shadow-card-resting);
  --shadow-card-passive: none;
  --shadow-card-interactive: var(--shadow-card-resting);
  --shadow-card-hover: var(--shadow-card-interactive);
  --shadow-card: var(--shadow-card-resting);
}

/* A dark preview must not inherit elevation from a light host application. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand][data-theme="dark"],
html[data-site-theme="dark"] :is(.gap-request-form, .prototype-login-form)[data-regel-theme]:not([data-theme]) {
  --shadow-xs: none;
  --shadow-sm: none;
  --shadow-md: none;
  --shadow-lg: none;
  --shadow-xl: none;
  --top-nav-shadow: none;
  --component-form-dialog-footer-shadow: none;
}

/* AI-Regel Button presentation, source AI-Regel-implementation-test.html (2026-09-09).
 * SHA-256: 60abca3a8ef9848833565d2f3dc004f90d84a67494c904e20f680e3b0ebdbe19
 * Applied only through the canonical Button owner's explicit regel options.
 */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
:is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec {
  font-family: var(--font);
  letter-spacing: 0;
  flex-shrink: 0;
}

/* Button hierarchy names must not inherit an unrelated utility outline. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] [data-regel-owner="Button"].button-spec {
  outline: 0;
}

:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec {
  gap: var(--space-2);
  font-size: var(--type-button-md-size);
  line-height: var(--type-button-md-line);
  font-weight: var(--type-button-weight);
  letter-spacing: var(--type-button-md-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.primary.state-hover {
  background: var(--button-branded-primary-hover-bg);
  opacity: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.secondary {
  color: var(--text);
  background: var(--element);
  border-color: transparent;
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-hover {
  color: var(--text);
  background: var(--element-2);
  border-color: transparent;
  background-image: none;
  opacity: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-pressed {
  color: var(--text);
  background: var(--element);
  background-image: none;
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.tertiary.state-hover {
  color: var(--text);
  background: var(--element-2);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec {
  padding-block: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-1);
  border: var(--stroke-transparent);
  border-radius: var(--button-radius);
  color: var(--inverse);
  background: var(--text);
  font-size: var(--type-button-md-size);
  font-weight: var(--type-button-weight);
  line-height: var(--type-button-md-line);
  white-space: nowrap;
  cursor: default;
  letter-spacing: var(--type-button-md-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.action {
  color: var(--button-action-fg);
  background: var(--button-action-bg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.size-small {
  height: var(--button-height-sm);
  padding-inline: var(--button-padding-sm);
  font-size: var(--type-button-sm-size);
  line-height: var(--type-button-sm-line);
  letter-spacing: var(--type-button-sm-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.size-default {
  height: var(--button-height-md);
  padding-inline: var(--button-padding-md);
  font-size: var(--type-button-md-size);
  line-height: var(--type-button-md-line);
  letter-spacing: var(--type-button-md-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.size-large {
  height: var(--button-height-lg);
  padding-inline: var(--button-padding-lg);
  font-size: var(--type-button-lg-size);
  line-height: var(--type-button-lg-line);
  letter-spacing: var(--type-button-lg-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] [data-regel-owner="ChoiceChip"].button-spec.size-default {
  padding-inline: var(--choice-chip-padding-md);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] [data-regel-owner="ChoiceChip"].button-spec.size-large {
  padding-inline: var(--choice-chip-padding-lg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] [data-regel-owner="Button"].button-spec.size-xl {
  height: var(--button-height-xl);
  padding-inline: var(--button-padding-xl);
  font-size: var(--type-button-lg-size);
  line-height: var(--type-button-lg-line);
  letter-spacing: var(--type-button-lg-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.with-left {
  padding-left: var(--space-3);
  padding-right: var(--space-4);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.with-right {
  padding-left: var(--space-4);
  padding-right: var(--space-3);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.with-both {
  padding-inline: var(--space-3);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.icon-only {
  width: var(--button-height-md);
  min-width: var(--button-height-md);
  padding: 0;
  aspect-ratio: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.icon-only.size-small {
  width: var(--button-height-sm);
  min-width: var(--button-height-sm);
  height: var(--button-height-sm);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.icon-only.size-large {
  width: var(--button-height-lg);
  min-width: var(--button-height-lg);
  height: var(--button-height-lg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.shape-pill {
  border-radius: var(--radius-full);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"].button-spec.icon-only.size-xl {
  width: var(--button-height-xl);
  min-width: var(--button-height-xl);
  height: var(--button-height-xl);
  padding: 0;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.primary.state-hover {
  background-image:
    linear-gradient(
      90deg,
      var(--button-solid-hover-overlay) 0%,
      var(--button-solid-hover-overlay) 100%
    ),
    linear-gradient(90deg, var(--text) 0%, var(--text) 100%);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.primary.state-pressed {
  background: var(--text);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.primary.state-disabled {
  color: var(--inverse);
  background: var(--text-disabled);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.action.state-hover {
  background: var(--button-action-hover-bg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.action.state-pressed {
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.action.state-disabled {
  color: var(--inverse);
  background: var(--text-disabled);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.secondary {
  color: var(--text);
  background: var(--surface);
  border-color: var(--border);
  box-shadow: var(--shadow-sm);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-hover {
  background-image:
    linear-gradient(
      90deg,
      var(--button-secondary-hover-overlay) 0%,
      var(--button-secondary-hover-overlay) 100%
    ),
    linear-gradient(90deg, var(--surface) 0%, var(--surface) 100%);
  box-shadow: var(--shadow-sm);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-pressed {
  background-image:
    linear-gradient(
      90deg,
      var(--button-secondary-pressed-overlay) 0%,
      var(--button-secondary-pressed-overlay) 100%
    ),
    linear-gradient(90deg, var(--surface) 0%, var(--surface) 100%);
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-disabled {
  color: var(--text-disabled);
  background: var(--surface);
  border-color: var(--border);
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.regel-button-outline {
  color: var(--text-2);
  background: transparent;
  border-color: var(--border);
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.regel-button-outline.state-hover {
  color: var(--text);
  background: var(--bg-subtle);
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.regel-button-outline.state-pressed {
  color: var(--text);
  background: var(--element);
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.regel-button-outline.state-disabled {
  color: var(--text-disabled);
  background: transparent;
  border-color: var(--border);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.tertiary {
  color: var(--text);
  background: transparent;
  border-color: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.tertiary.state-hover {
  background: var(--text-hover-overlay);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.tertiary.state-pressed {
  background: var(--text-pressed-overlay);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.tertiary.state-disabled {
  color: var(--text-disabled);
  background: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.link,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.learn-more {
  min-height: var(--component-button-spec-learn-more-min-height);
  height: var(--component-button-spec-learn-more-height);
  padding: 0 var(--space-1);
  border: 0;
  border-radius: 0;
  color: var(--link);
  background: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.link.state-hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.learn-more.state-hover {
  color: var(--link-hover);
  text-decoration: underline;
  text-underline-offset: var(--link-underline-offset);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.primary:hover {
  background-image:
    linear-gradient(
      90deg,
      var(--button-solid-hover-overlay) 0%,
      var(--button-solid-hover-overlay) 100%
    ),
    linear-gradient(90deg, var(--text) 0%, var(--text) 100%);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.action:hover {
  background: var(--button-action-hover-bg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.secondary:hover {
  background-image:
    linear-gradient(
      90deg,
      var(--button-secondary-hover-overlay) 0%,
      var(--button-secondary-hover-overlay) 100%
    ),
    linear-gradient(90deg, var(--surface) 0%, var(--surface) 100%);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.secondary:active {
  background-image:
    linear-gradient(
      90deg,
      var(--button-secondary-pressed-overlay) 0%,
      var(--button-secondary-pressed-overlay) 100%
    ),
    linear-gradient(90deg, var(--surface) 0%, var(--surface) 100%);
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.tertiary:hover {
  background: var(--text-hover-overlay);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.tertiary:active {
  background: var(--text-pressed-overlay);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.regel-button-outline:hover {
  color: var(--text);
  background: var(--bg-subtle);
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.regel-button-outline:active {
  background: var(--element);
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.link:hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.learn-more:hover {
  color: var(--link-hover);
  text-decoration: underline;
  text-underline-offset: var(--link-underline-offset);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.force-hover.action {
  background: var(--button-action-hover-bg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-pressed.action {
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.force-hover.primary,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-pressed.primary {
  background-image:
    linear-gradient(
      90deg,
      var(--button-solid-hover-overlay) 0%,
      var(--button-solid-hover-overlay) 100%
    ),
    linear-gradient(90deg, var(--text) 0%, var(--text) 100%);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-hover.secondary {
  background-image:
    linear-gradient(
      90deg,
      var(--button-secondary-hover-overlay) 0%,
      var(--button-secondary-hover-overlay) 100%
    ),
    linear-gradient(90deg, var(--surface) 0%, var(--surface) 100%);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-pressed.secondary {
  background-image:
    linear-gradient(
      90deg,
      var(--button-secondary-pressed-overlay) 0%,
      var(--button-secondary-pressed-overlay) 100%
    ),
    linear-gradient(90deg, var(--surface) 0%, var(--surface) 100%);
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-hover.tertiary {
  background: var(--text-hover-overlay);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-pressed.tertiary {
  background: var(--text-pressed-overlay);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-hover.regel-button-outline {
  color: var(--text);
  background: var(--bg-subtle);
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-pressed.regel-button-outline {
  color: var(--text);
  background: var(--element);
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.force-hover.link,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.force-pressed.link,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-hover.learn-more,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-pressed.learn-more {
  color: var(--link-hover);
  text-decoration: underline;
  text-underline-offset: var(--link-underline-offset);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.force-disabled {
  color: var(--text-disabled);
  background: var(--surface);
  border-color: var(--border);
  box-shadow: none;
  pointer-events: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.primary.force-disabled {
  color: var(--inverse);
  background: var(--text-disabled);
  border-color: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.action.force-disabled,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.force-disabled {
  color: var(--text-3);
  background: var(--element-2);
  border-color: transparent;
  opacity: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.tertiary.force-disabled,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.link.force-disabled,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.learn-more.force-disabled {
  color: var(--text-disabled);
  background: transparent;
  border: 0;
  opacity: var(--component-muted-opacity);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.learn-more.state-disabled {
  color: var(--text-disabled);
  background: transparent;
  border: 0;
  opacity: var(--component-muted-opacity);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.lab-button {
  cursor: pointer;
  transition:
    transform 120ms ease,
    background-color var(--motion-hover) var(--motion-ease),
    border-color var(--motion-hover) var(--motion-ease),
    color var(--motion-hover) var(--motion-ease),
    box-shadow var(--motion-slow) var(--motion-ease),
    opacity 120ms ease;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.lab-button:active,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.click-pulse {
  transform: var(--layout-button-spec-lab-button-click-pulse-transform);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.force-hover.primary,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.primary:hover {
  background: var(--button-branded-primary-hover-bg);
  opacity: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-pressed.primary {
  background: var(--button-solid-pressed-bg);
  filter: none;
  opacity: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.action.force-hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.action.state-hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.action:hover {
  background: var(--button-action-hover-bg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.action.force-pressed {
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.action.state-pressed,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-pressed,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.regel-button-outline.state-pressed,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.tertiary.state-pressed {
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.primary.state-pressed {
  background: var(--button-solid-pressed-bg);
  filter: none;
  opacity: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-hover.secondary,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-pressed.secondary,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.secondary:hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.secondary:active {
  background-image: none;
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.secondary:hover {
  color: var(--text);
  background: var(--element-2);
  border-color: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.secondary:active {
  background: var(--element);
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.secondary,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-pressed {
  border-color: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-hover.regel-button-outline,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.regel-button-outline.state-hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.regel-button-outline:hover {
  color: var(--text);
  background: var(--element);
  border-color: var(--button-branded-outline-border);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-pressed.regel-button-outline,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.regel-button-outline.state-pressed,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.regel-button-outline:active {
  color: var(--text);
  background: var(--element);
  border-color: var(--button-branded-outline-border);
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-hover.tertiary,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.tertiary.state-hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.tertiary:hover {
  color: var(--text);
  background: var(--element-2);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-pressed.tertiary,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.tertiary.state-pressed,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.tertiary:active {
  color: var(--text);
  background: var(--element-2);
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.action.state-disabled,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.primary.state-disabled,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-disabled {
  color: var(--text-3);
  background: var(--element-2);
  border-color: transparent;
  opacity: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.tertiary.state-disabled,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.learn-more.state-disabled {
  color: var(--text-3);
  background: transparent;
  border-color: transparent;
  opacity: 0.4;
}
/* Match token inheritance without outranking selected-state rules or explicit light. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"][data-theme="dark"]
:is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.secondary:not(
  .state-disabled
),
:where(html[data-site-theme="dark"])
  [data-regel-theme][data-brand="branded"]:not([data-theme])
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.secondary:not(
    .state-disabled
  ) {
  background: var(--element-2);
  border-color: var(--border);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"][data-theme="dark"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"][data-theme="dark"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-hover.secondary,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"][data-theme="dark"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.secondary:hover,
:where(html[data-site-theme="dark"])
  [data-regel-theme][data-brand="branded"]:not([data-theme])
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.secondary.state-hover,
:where(html[data-site-theme="dark"])
  [data-regel-theme][data-brand="branded"]:not([data-theme])
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.force-hover.secondary,
:where(html[data-site-theme="dark"])
  [data-regel-theme][data-brand="branded"]:not([data-theme])
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.secondary:hover {
  background: var(--nav-active-hover);
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.lab-button:active,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.lab-button.click-pulse {
  transform: none;
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec
  .button-icon {
  width: var(--layout-button-spec-button-icon-width);
  height: var(--component-button-spec-button-icon-height);
  flex: var(--geometry-button-spec-button-icon-flex);
  display: block;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button-spec > .regel-button-icon,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button-spec > svg,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"]
  > :is(.regel-button-icon, svg, .button-icon, .ti, [class^="ri-"], [class*=" ri-"]) {
  width: var(--layout-button-spec-button-icon-width);
  height: var(--component-button-spec-button-icon-height);
  flex: var(--geometry-button-spec-button-icon-flex);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: var(--button-icon-size);
  line-height: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-button-icon > svg {
  width: 100%;
  height: 100%;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.action
  .button-icon,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec.primary
  .button-icon {
  filter: brightness(0) invert(1);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    [data-regel-owner="Button"],
    [data-regel-owner="ChoiceChip"]
  ).button-spec.primary.state-disabled
  .button-icon {
  opacity: 1;
}
/* Keep the shared control keyboard-operable in the reference's visual language. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
:is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec:focus-visible {
  outline: var(--focus-outline);
  outline-offset: var(--focus-outline-offset);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec:disabled,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec[data-disabled] {
  pointer-events: none;
  cursor: not-allowed;
}
@media (prefers-reduced-motion: reduce) {
  :is(.gap-request-form, .prototype-login-form)[data-regel-theme]
    :is([data-regel-owner="Button"], [data-regel-owner="ChoiceChip"]).button-spec {
    transition-duration: 0.01ms;
    animation-duration: 0.01ms;
  }
}

/* Proposed positive command; standard Button geometry and focus remain shared. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] [data-regel-owner="Button"].success {
  color: var(--green-text);
  background: var(--green-bg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"].success:is(:hover, .state-hover):not(:disabled, [data-disabled]) {
  background: var(--green-border);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"].success:is(:active, .state-pressed):not(:disabled, [data-disabled]) {
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"].success:is(:disabled, [data-disabled], .state-disabled) {
  opacity: var(--component-disabled-opacity);
}

/* Source field, segmented control and lab dropdown presentation. */

:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .lab-dropdown {
  position: relative;
  width: 100%;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .lab-dropdown .dropdown-trigger {
  min-height: var(--button-height-md);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .lab-dropdown .dropdown-menu {
  width: 100%;
  max-height: var(--layout-lab-dropdown-dropdown-menu-max-height);
  overflow-y: auto;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .lab-dropdown .dropdown-item {
  grid-template-columns: var(--layout-lab-dropdown-dropdown-item-grid-template-columns);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .lab-dropdown.is-open .dropdown-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
  transition:
    opacity var(--motion-normal) var(--motion-ease),
    transform var(--motion-normal) var(--motion-ease),
    visibility 0s;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .segmented-control-spec {
  position: relative;
  display: inline-grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(max-content, 1fr);
  gap: var(--component-segmented-control-spec-gap);
  min-height: var(--component-segmented-control-spec-min-height);
  min-width: var(--component-segmented-control-spec-min-width);
  padding: var(--component-segmented-control-spec-padding);
  border: var(--stroke-default);
  border-radius: var(--radius-lg);
  background: var(--bg-subtle);
  overflow: hidden;
  isolation: isolate;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .theme-control .segmented-control-spec,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .page-theme-switch .segmented-control-spec {
  width: 100%;
  min-width: 0;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .segmented-control-thumb {
  position: absolute;
  inset-block: var(--layout-segmented-control-thumb-inset-block);
  left: 0;
  z-index: 0;
  width: 0;
  border-radius: var(--radius-md);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  pointer-events: none;
  transition:
    transform var(--motion-slow) var(--motion-ease),
    width var(--motion-slow) var(--motion-ease),
    background-color var(--motion-hover) var(--motion-ease),
    box-shadow var(--motion-hover) var(--motion-ease);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .segmented-control-item {
  position: relative;
  z-index: 1;
  min-width: var(--component-segmented-control-item-min-width);
  min-height: var(--component-segmented-control-item-min-height);
  padding: 0 var(--component-segmented-control-item-padding-inline);
  border: 0;
  border-radius: var(--radius-md);
  color: var(--text-2);
  background: transparent;
  font-size: var(--type-segmented-control-size);
  line-height: var(--type-segmented-control-line);
  font-weight: var(--type-label-weight);
  white-space: nowrap;
  cursor: pointer;
  transition:
    color var(--motion-hover) var(--motion-ease),
    background-color var(--motion-hover) var(--motion-ease),
    opacity var(--motion-normal) var(--motion-ease);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .segmented-control-item:hover {
  color: var(--text);
  background: var(--text-hover-overlay);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .segmented-control-item:focus-visible {
  outline: var(--focus-outline);
  outline-offset: var(--focus-outline-offset);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .segmented-control-item[aria-pressed="true"],
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .segmented-control-item[aria-pressed="true"]:hover {
  color: var(--text);
  background: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .segmented-control-spec.state-hover
  .segmented-control-item[aria-pressed="true"] {
  color: var(--text);
  background: var(--text-hover-overlay);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .segmented-control-spec.state-pressed
  .segmented-control-thumb {
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .segmented-control-spec.state-disabled {
  opacity: var(--component-disabled-opacity);
  pointer-events: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .segmented-control-spec.size-small {
  min-height: var(--component-segmented-control-spec-size-small-min-height);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .segmented-control-spec.size-small
  .segmented-control-thumb {
  inset-block: var(--layout-segmented-control-spec-size-small-segmented-control-thumb-inset-block);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .segmented-control-spec.size-small
  .segmented-control-item {
  min-height: var(--component-segmented-control-spec-size-small-segmented-control-item-min-height);
  min-width: var(--component-segmented-control-spec-size-small-segmented-control-item-min-width);
  padding-inline: var(
    --component-segmented-control-spec-size-small-segmented-control-item-padding-inline
  );
  font-size: var(--type-segmented-control-size);
  line-height: var(--type-segmented-control-line);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .segmented-control-spec.size-large {
  min-height: var(--component-segmented-control-spec-size-large-min-height);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .segmented-control-spec.size-large
  .segmented-control-item {
  min-height: var(--component-segmented-control-spec-size-large-segmented-control-item-min-height);
  min-width: var(--component-segmented-control-spec-size-large-segmented-control-item-min-width);
  padding-inline: var(
    --component-segmented-control-spec-size-large-segmented-control-item-padding-inline
  );
  font-size: var(--type-button-md-size);
  line-height: var(--type-button-md-line);
  letter-spacing: var(--type-button-md-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .segmented-control-spec {
  gap: var(--space-1);
  min-height: var(--component-branded-segmented-control-spec-min-height);
  padding: var(--space-1);
  border: 0;
  border-radius: var(--component-branded-segmented-control-spec-border-radius);
  background: var(--element);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .segmented-control-thumb {
  inset-block: var(--layout-branded-segmented-control-thumb-inset-block);
  border-radius: var(--component-branded-segmented-control-thumb-border-radius);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .segmented-control-item {
  min-height: var(--component-branded-segmented-control-item-min-height);
  min-width: var(--component-branded-segmented-control-item-min-width);
  padding-inline: var(--component-segmented-control-item-padding-inline);
  border-radius: var(--component-branded-segmented-control-item-border-radius);
  color: var(--text-3);
  font-size: var(--type-segmented-control-size);
  line-height: var(--type-segmented-control-line);
  font-weight: var(--type-button-weight);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .segmented-control-item:hover {
  color: var(--text);
  background: var(--element-2);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .segmented-control-item[aria-pressed="true"],
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .segmented-control-item[aria-pressed="true"]:hover {
  color: var(--text);
  background: transparent;
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .segmented-control-spec.state-hover
  .segmented-control-item[aria-pressed="true"] {
  background: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .segmented-control-spec.state-pressed
  .segmented-control-thumb {
  filter: var(--control-active-filter);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .segmented-control-spec.size-small {
  min-height: var(--component-branded-segmented-control-spec-size-small-min-height);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .segmented-control-spec.size-small
  .segmented-control-thumb {
  inset-block: var(
    --layout-branded-segmented-control-spec-size-small-segmented-control-thumb-inset-block
  );
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .segmented-control-spec.size-small
  .segmented-control-item {
  min-height: var(
    --component-branded-segmented-control-spec-size-small-segmented-control-item-min-height
  );
  min-width: var(
    --component-branded-segmented-control-spec-size-small-segmented-control-item-min-width
  );
  padding-inline: var(
    --component-segmented-control-spec-size-small-segmented-control-item-padding-inline
  );
  font-size: var(--type-segmented-control-size);
  line-height: var(--type-segmented-control-line);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .segmented-control-spec.size-large {
  min-height: var(--component-branded-segmented-control-spec-size-large-min-height);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .segmented-control-spec.size-large
  .segmented-control-item {
  min-height: var(
    --component-branded-segmented-control-spec-size-large-segmented-control-item-min-height
  );
  min-width: var(
    --component-branded-segmented-control-spec-size-large-segmented-control-item-min-width
  );
  padding-inline: var(
    --component-segmented-control-spec-size-large-segmented-control-item-padding-inline
  );
  font-size: var(--type-button-lg-size);
  line-height: var(--type-button-lg-line);
  letter-spacing: var(--type-button-lg-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-control .segmented-control-spec {
  width: 100%;
  min-width: 0;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec {
  width: var(--layout-input-spec-width);
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  align-items: flex-start;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-label-row {
  width: 100%;
  height: var(--component-input-spec-label-row-height);
  display: flex;
  gap: var(--space-1);
  align-items: flex-start;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-label-row,
[data-regel-theme] [data-slot="field-label"] {
  color: var(--text);
  font-size: var(--type-field-label-size);
  line-height: var(--type-field-label-line);
  font-weight: var(--type-label-weight);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-label {
  flex: 0 1 auto;
  min-width: 0;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-required {
  color: var(--red-text);
  white-space: nowrap;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-description {
  width: 100%;
  height: var(--component-input-spec-description-height);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-description,
[data-regel-theme] [data-slot="field-description"] {
  color: var(--text-2);
  font-size: var(--type-field-label-size);
  line-height: var(--type-field-label-line);
  font-weight: var(--type-body-weight);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-control {
  width: 100%;
  height: var(--field-control-height);
  display: flex;
  align-items: center;
  padding: 0 var(--field-control-padding-x);
  border: var(--stroke-default);
  border-radius: var(--radius-md);
  color: var(--text-3);
  background: var(--surface);
  overflow: hidden;
  font-size: var(--type-field-value-size);
  line-height: var(--type-field-value-line);
  font-weight: var(--type-body-weight);
  white-space: nowrap;
  text-overflow: ellipsis;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .input-spec-control.input-spec-native[data-control-size="large"] {
  height: var(--component-input-height-large);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-control.input-spec-native {
  display: block;
  outline: 0;
  font-family: inherit;
  color: var(--text);
  transition:
    border-color var(--motion-hover) var(--motion-ease),
    box-shadow var(--motion-hover) var(--motion-ease);
}
/* Keep the native file button vertically centered in the shared 36px control. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-control.input-spec-native[type="file"] {
  padding-block: 7px;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-control.input-spec-native::placeholder {
  color: var(--text-3);
  opacity: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-control.input-spec-native:hover {
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-control.input-spec-native:focus {
  border-color: var(--border-strong);
  box-shadow: var(--input-focus-ring);
}
@media (prefers-reduced-motion: reduce) {
  :is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-control.input-spec-native {
    transition: none;
  }
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .search-input .input-spec-control {
  padding-left: calc(var(--space-8) + var(--space-2));
  padding-right: calc(var(--space-8) + var(--space-2));
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec.state-hover .input-spec-control,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec.state-active .input-spec-control {
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec.state-active .input-spec-control {
  box-shadow: var(--input-focus-ring);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec.state-filled .input-spec-control {
  color: var(--text);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec.state-disabled .input-spec-control {
  color: var(--text-disabled);
  background: var(--bg-subtle);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec.state-disabled {
  pointer-events: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-input {
  width: 100%;
  min-width: 0;
  border: var(--stroke-default);
  border-radius: var(--radius-md);
  color: var(--text);
  background: var(--surface);
  font-family: inherit;
  font-size: var(--type-field-value-size);
  line-height: var(--type-field-value-line);
  outline: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-input {
  height: var(--field-control-height);
  padding: 0 var(--field-control-padding-x);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-input:focus {
  border-color: var(--focus);
  box-shadow: var(--input-focus-ring);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating {
  position: relative;
  display: block;
  width: 100%;
  height: var(--floating-field-height);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] [data-regel-owner="Input"] {
  --field-control-height: var(--component-input-height-default);
  --floating-field-height: var(--component-input-height-default);
  --field-control-padding-x: var(--component-input-padding-x);
  --type-field-value-size: var(--type-body-md-size);
  --type-field-value-line: var(--type-body-md-line);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] [data-regel-owner="Input"] {
  padding: 0 var(--field-control-padding-x);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating .source-input {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  border-color: transparent;
  background: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating .source-input:focus {
  border-color: transparent;
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating-outline {
  position: absolute;
  /* A fieldset paints its top border through the legend's vertical centre. */
  inset: calc(var(--type-field-label-line) / -2) 0 0;
  min-width: 0;
  margin: 0;
  padding: 0 calc(var(--field-control-padding-x) - 1px);
  border: var(--stroke-default);
  border-radius: var(--radius-md);
  pointer-events: none;
  transition: border-color var(--motion-hover) var(--motion-ease);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating-outline legend {
  width: auto;
  max-width: 0;
  height: var(--type-field-label-line);
  padding: 0;
  color: transparent;
  visibility: hidden;
  font-size: var(--type-field-label-size);
  line-height: var(--type-field-label-line);
  font-weight: var(--type-body-weight);
  white-space: nowrap;
  transition: max-width var(--motion-normal) var(--motion-ease);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating-outline legend span {
  display: inline-block;
  padding: 0 var(--space-1);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating-outline legend * {
  color: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating-outline legend strong {
  font-weight: var(--type-label-weight);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating-label {
  position: absolute;
  z-index: 2;
  left: calc(var(--field-control-padding-x) + 1px);
  top: 50%;
  transform: translateY(-50%);
  padding: 0;
  color: var(--text-3);
  font-size: var(--type-field-value-size);
  line-height: var(--type-field-value-line);
  font-weight: var(--type-body-weight);
  pointer-events: none;
  transition:
    top var(--motion-normal) var(--motion-ease),
    transform var(--motion-normal) var(--motion-ease),
    font-size var(--motion-normal) var(--motion-ease),
    line-height var(--motion-normal) var(--motion-ease),
    color var(--motion-hover) var(--motion-ease);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .source-floating
  .source-input:focus
  ~ .source-floating-label,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .source-floating
  .source-input:not(:placeholder-shown)
  ~ .source-floating-label {
  top: 0;
  transform: translateY(-50%);
  left: var(--field-control-padding-x);
  padding: 0 var(--space-1);
  font-size: var(--type-field-label-size);
  line-height: var(--type-field-label-line);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .source-floating
  .source-input:focus
  ~ .source-floating-outline,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .source-floating
  .source-input:not(:placeholder-shown)
  ~ .source-floating-outline {
  border-color: var(--focus);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .source-floating
  .source-input:focus
  ~ .source-floating-outline {
  border: var(--focus-outline);
  padding-inline: calc(var(--field-control-padding-x) - 2px);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .source-floating
  .source-input:focus
  ~ .source-floating-outline
  legend,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .source-floating
  .source-input:not(:placeholder-shown)
  ~ .source-floating-outline
  legend {
  max-width: 100%;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-preview-floating {
  width: var(--layout-input-preview-floating-width);
  max-width: 100%;
}
@media (prefers-reduced-motion: reduce) {
  :is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating-label,
  :is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating-outline,
  :is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating-outline legend {
    transition: none;
  }
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating .input-floating-required {
  color: var(--red-text);
  font-weight: var(--type-label-weight);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-floating .source-input:disabled {
  color: var(--text-disabled);
  background: var(--element-2);
  cursor: not-allowed;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .source-floating
  .source-input:disabled
  ~ .source-floating-label {
  color: var(--text-disabled);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-preview-description {
  width: var(--layout-input-preview-description-width);
  margin-top: var(--space-2);
  color: var(--text-2);
  font-size: var(--type-field-label-size);
  line-height: var(--type-field-label-line);
  font-weight: var(--type-body-weight);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .input-spec-control,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .source-input {
  height: var(--field-control-height);
  border-color: var(--border);
  border-radius: var(--radius-md);
  color: var(--text);
  background: var(--surface);
  font-size: var(--type-field-value-size);
  line-height: var(--type-field-value-line);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .input-spec {
  width: var(--layout-branded-input-spec-width);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .input-spec-label-row {
  color: var(--text);
  font-size: var(--type-field-label-size);
  line-height: var(--type-field-label-line);
  font-weight: var(--type-label-weight);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .input-spec-description {
  color: var(--text-2);
  font-size: var(--type-field-label-size);
  line-height: var(--type-field-label-line);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .input-spec-control.input-spec-native:hover:not(:focus) {
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .input-spec.state-hover
  .input-spec-control {
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .input-spec.state-active
  .input-spec-control,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .input-spec-control.input-spec-native:focus,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .source-input:focus {
  border-color: var(--focus);
  box-shadow: var(--focus-shadow);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .input-spec.state-disabled
  .input-spec-control {
  color: var(--text-disabled);
  background: var(--element-2);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .source-floating {
  height: var(--floating-field-height);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .source-floating .source-input {
  height: 100%;
  border-color: transparent;
  background: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .source-floating
  .source-input:focus {
  border-color: transparent;
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .source-floating-outline {
  border-color: var(--border);
  border-radius: var(--radius-md);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .source-floating
  .source-input:focus
  ~ .source-floating-outline,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .source-floating
  .source-input:not(:placeholder-shown)
  ~ .source-floating-outline {
  border-color: var(--focus);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .source-floating
  .source-input:focus
  ~ .source-floating-outline {
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .source-floating-label {
  color: var(--text-3);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand] .input-spec-native[aria-invalid="true"] {
  border-color: var(--red-text);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand] .input-spec-native:disabled {
  color: var(--text-disabled);
  background: var(--element-2);
  cursor: not-allowed;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand] .source-floating .source-input:disabled {
  color: var(--text-disabled);
  background: var(--element-2);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand]
  .source-floating
  .source-input[aria-invalid="true"]
  ~ .source-floating-outline {
  border-color: var(--red-text);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-demo.align-right {
  justify-items: end;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-label {
  color: var(--text-3);
  font-size: var(--type-caption-size);
  line-height: var(--type-caption-line);
  font-weight: var(--type-caption-weight);
  letter-spacing: var(--type-caption-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger {
  min-width: 0;
  min-height: var(--button-height-md);
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--component-dropdown-trigger-gap);
  padding: 0 var(--space-3);
  border: var(--stroke-default);
  border-radius: var(--radius-md);
  color: var(--text);
  background: var(--surface);
  font-family: var(--font);
  font-size: var(--type-button-md-size);
  line-height: var(--type-button-md-line);
  font-weight: var(--type-button-weight);
  cursor: pointer;
  transition:
    background-color var(--motion-hover) var(--motion-ease),
    border-color var(--motion-hover) var(--motion-ease),
    box-shadow var(--motion-hover) var(--motion-ease);
  letter-spacing: var(--type-button-md-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger:hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger[aria-expanded="true"] {
  border-color: var(--border-strong);
  background: var(--side-bg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger:focus-visible {
  outline: 0;
  border-color: var(--focus);
  box-shadow: var(--input-focus-ring);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger.size-small {
  min-height: var(--button-height-sm);
  padding-inline: var(--space-3);
  font-size: var(--type-button-sm-size);
  line-height: var(--type-button-sm-line);
  letter-spacing: var(--type-button-sm-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger.size-large {
  min-height: var(--button-height-lg);
  padding-inline: var(--space-4);
  font-size: var(--type-button-lg-size);
  line-height: var(--type-button-lg-line);
  letter-spacing: var(--type-button-lg-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger.fit-content {
  width: auto;
  max-width: 100%;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-tag-picker {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: var(--space-2);
  min-width: 0;
  max-width: 100%;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-tag-picker > .source-badge {
  max-width: 100%;
  min-width: 0;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-tag-picker[data-presentation="stacked"] {
  flex-direction: column;
  align-items: flex-end;
  width: 100%;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-tag-picker-add {
  cursor: pointer;
  transition: background-color var(--motion-hover) var(--motion-ease);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-tag-picker-add > svg {
  width: var(--button-icon-size);
  height: var(--button-icon-size);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-tag-picker-add:is(:hover, :focus-visible) {
  background: var(--bg-subtle);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-tag-picker-add:disabled {
  color: var(--text-disabled);
  cursor: not-allowed;
}
@media (prefers-reduced-motion: reduce) {
  :is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-tag-picker-add {
    transition: none;
  }
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .source-badge-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-tag-picker-empty {
  color: var(--text-tertiary);
  font-size: var(--type-label-sm-size);
  line-height: var(--type-label-sm-line);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-picker-feedback {
  padding: var(--space-2);
  color: var(--text-secondary);
  font-size: var(--type-body-sm-size);
  line-height: var(--type-body-sm-line);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-avatar-picker {
  min-width: 0;
  max-width: 100%;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .regel-avatar-picker[data-avatar-size="small"]
  .dropdown-trigger-main
  > svg:first-child {
  width: var(--avatar-size-small);
  height: var(--avatar-size-small);
  flex: 0 0 var(--avatar-size-small);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger[disabled] {
  color: var(--text-disabled);
  background: var(--bg-subtle);
  cursor: not-allowed;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger-main {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: var(--component-dropdown-trigger-content-gap);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger-main > span:last-child {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: left;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger > [data-slot="select-value"] {
  display: block;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger-icon,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item-icon,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item-check,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-item:is([aria-disabled="true"], [data-disabled])
  .dropdown-item-check {
  color: var(--menu-item-disabled-text);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item-chevron {
  width: var(--layout-dropdown-item-check-width);
  height: var(--component-dropdown-item-check-height);
  flex: var(--geometry-dropdown-item-check-flex);
  display: inline-grid;
  place-items: center;
  color: currentColor;
  font-size: var(--icon-size-default);
  line-height: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger-icon {
  width: var(--button-icon-size);
  height: var(--button-icon-size);
  flex: 0 0 var(--button-icon-size);
  font-size: var(--button-icon-size);
  color: var(--text-2);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-caret {
  display: block;
  pointer-events: none;
  width: var(--layout-dropdown-caret-width);
  height: var(--component-dropdown-caret-height);
  flex: var(--geometry-dropdown-caret-flex);
  background: currentColor;
  mask: var(--brand-chevron-icon) center / contain no-repeat;
  -webkit-mask: var(--brand-chevron-icon) center / contain no-repeat;
  transition: transform var(--motion-normal) var(--motion-ease);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-trigger[aria-expanded="true"] .dropdown-caret {
  transform: rotate(180deg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-menu {
  max-width: var(--available-width);
  max-height: var(--available-height);
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
  z-index: 5;
  width: var(--layout-dropdown-menu-width);
  grid-template-columns: minmax(0, 1fr);
  overscroll-behavior: contain;
  display: grid;
  gap: var(--space-1);
  padding: var(--space-2);
  border: var(--stroke-default);
  border-radius: var(--radius-lg);
  background: var(--surface);
  box-shadow: var(--shadow-md);
  transform-origin: top left;
  will-change: opacity, transform;
  transition:
    opacity var(--motion-normal) var(--motion-ease),
    transform var(--motion-normal) var(--motion-ease),
    visibility 0s linear var(--motion-normal);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-select-menu {
  max-height: var(--available-height);
  min-width: min(var(--anchor-width), var(--available-width));
  overflow-x: hidden;
  overflow-y: auto;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-select-item {
  display: flex;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-select-item[data-highlighted] {
  background: var(--element);
  color: var(--menu-item-hover-text);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-select-item[data-disabled] {
  color: var(--menu-item-disabled-text);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-demo.align-right .dropdown-menu {
  right: 0;
  left: auto;
  transform-origin: top right;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-demo.is-open .dropdown-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
  transition:
    opacity var(--motion-normal) var(--motion-ease),
    transform var(--motion-normal) var(--motion-ease),
    visibility 0s;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-demo.is-closing .dropdown-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: none;
  transition: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-section-label {
  padding: var(--space-2) var(--space-2) var(--space-1);
  color: var(--component-dropdown-section-foreground);
  font-size: var(--type-label-sm-size);
  line-height: var(--type-label-sm-line);
  font-weight: var(--type-label-weight);
  letter-spacing: var(--type-label-sm-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item {
  min-height: var(--component-dropdown-item-min-height);
  width: 100%;
  display: grid;
  grid-template-columns: var(--layout-dropdown-item-grid-template-columns);
  gap: var(--space-2);
  align-items: center;
  padding: var(--space-2);
  border: 0;
  border-radius: var(--radius-md);
  color: var(--menu-item-text);
  background: transparent;
  font-family: var(--font);
  font-size: var(--type-label-md-size);
  line-height: var(--type-label-md-line);
  font-weight: var(--type-label-weight);
  letter-spacing: var(--type-label-md-tracking);
  text-align: left;
  cursor: pointer;
  transition:
    color var(--motion-hover) var(--motion-ease),
    background-color var(--motion-hover) var(--motion-ease);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-item:hover:not([aria-disabled="true"]):not([data-disabled]),
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-item.is-active:not([aria-disabled="true"]):not([data-disabled]) {
  color: var(--menu-item-hover-text);
  background: var(--element);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item.is-selected {
  color: var(--menu-item-selected-text);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-item:focus-visible:not([aria-disabled="true"]):not([data-disabled]) {
  outline: 0;
  color: var(--menu-item-hover-text);
  box-shadow: var(--focus-inset-ring);
  background: var(--element);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item[aria-disabled="true"] {
  color: var(--menu-item-disabled-text);
  cursor: not-allowed;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item.is-destructive {
  color: var(--red-text);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item-check {
  color: var(--text);
  visibility: hidden;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-item:is([aria-disabled="true"], [data-disabled])
  .dropdown-item-check {
  color: var(--menu-item-disabled-text);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item-chevron {
  color: var(--text-3);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item.is-selected .dropdown-item-check {
  visibility: visible;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item-label {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  color: inherit;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item-meta {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--text-3);
  font-size: var(--type-caption-size);
  line-height: var(--type-caption-line);
  font-weight: var(--type-caption-weight);
  letter-spacing: var(--type-caption-tracking);
  white-space: normal;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-note {
  margin: var(--space-3) 0 0;
  color: var(--text-3);
  font-size: var(--type-caption-size);
  line-height: var(--type-caption-line);
  font-weight: var(--type-caption-weight);
  letter-spacing: var(--type-caption-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-control-grid {
  display: grid;
  gap: var(--lab-control-gap);
  align-content: start;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .dropdown-stage {
  min-height: var(--component-branded-dropdown-stage-min-height);
  padding: var(--lab-stage-padding);
  border-color: var(--border-subtle);
  border-radius: var(--radius-lg);
  background: var(--side-bg);
  box-shadow: var(--shadow-sm);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .dropdown-trigger {
  min-height: var(--button-height-md);
  border-radius: var(--radius-md);
  border-color: var(--border);
  background: var(--surface);
  font-size: var(--type-button-md-size);
  line-height: var(--type-button-md-line);
  letter-spacing: var(--type-button-md-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .dropdown-trigger.size-small {
  min-height: var(--button-height-sm);
  padding-inline: var(--space-3);
  font-size: var(--type-button-sm-size);
  line-height: var(--type-button-sm-line);
  letter-spacing: var(--type-button-sm-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .dropdown-trigger.size-large {
  min-height: var(--button-height-lg);
  padding-inline: var(--space-4);
  font-size: var(--type-button-lg-size);
  line-height: var(--type-button-lg-line);
  letter-spacing: var(--type-button-lg-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .dropdown-trigger:hover,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"]
  .dropdown-trigger[aria-expanded="true"] {
  border-color: var(--border-strong);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .dropdown-trigger:focus-visible {
  border-color: var(--focus);
  box-shadow: var(--focus-shadow);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .dropdown-menu {
  border-color: var(--border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .dropdown-item {
  border-radius: var(--component-branded-dropdown-item-border-radius);
}
/* Base UI owns menu positioning and selection; retain the source panel visuals. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
.dropdown-menu:is([data-slot="dropdown-menu-content"], [data-slot="dropdown-menu-sub-content"]) {
  position: relative;
  top: auto;
  left: auto;
  width: var(--anchor-width);
  min-width: 0;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: none;
  box-shadow: var(--shadow-md);
  outline: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :is(
    .dropdown-menu[data-slot="dropdown-menu-content"],
    .regel-select-menu[data-slot="select-content"]
  ) {
  --regel-dropdown-offset-x: 0px;
  --regel-dropdown-offset-y: calc(var(--space-1) * -1);
  transition:
    opacity var(--motion-fast) var(--motion-ease),
    transform var(--motion-fast) var(--motion-ease);

  &[data-side="top"] {
    --regel-dropdown-offset-y: var(--space-1);
  }

  &:is([data-side="left"], [data-side="inline-start"]) {
    --regel-dropdown-offset-x: var(--space-1);
    --regel-dropdown-offset-y: 0px;
  }

  &:is([data-side="right"], [data-side="inline-end"]) {
    --regel-dropdown-offset-x: calc(var(--space-1) * -1);
    --regel-dropdown-offset-y: 0px;
  }

  &:not([data-instant]):is([data-starting-style], [data-ending-style]) {
    opacity: 0;
    transform: translate(var(--regel-dropdown-offset-x), var(--regel-dropdown-offset-y));
    pointer-events: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  :is(.gap-request-form, .prototype-login-form)[data-regel-theme]
    :is(
      .dropdown-menu[data-slot="dropdown-menu-content"],
      .regel-select-menu[data-slot="select-content"]
    ) {
    transition: none;

    &:not([data-instant]):is([data-starting-style], [data-ending-style]) {
      opacity: 1;
      transform: none;
    }
  }
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-menu[data-slot="dropdown-menu-content"][data-menu-width="content"] {
  width: max-content;
  min-width: min(
    var(--available-width),
    max(var(--anchor-width), var(--layout-dropdown-menu-min-width))
  );
  max-width: min(var(--available-width), var(--layout-dropdown-menu-width));
  max-height: var(--available-height);
  overflow-x: hidden;
  overflow-y: auto;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-menu[data-slot="dropdown-menu-content"][data-presentation="avatar-picker"] {
  min-width: min(240px, var(--available-width));
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item-identity {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item-avatar {
  width: var(--avatar-size-small);
  height: var(--avatar-size-small);
  flex: 0 0 var(--avatar-size-small);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .dropdown-item-identity > span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-menu[data-slot="dropdown-menu-content"]
  .dropdown-item {
  display: flex;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-menu[data-slot="dropdown-menu-content"]
  .dropdown-item-label {
  flex: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-menu[data-slot="dropdown-menu-content"]
  .dropdown-item-meta {
  flex: none;
}
/* Grid children and nested menu groups must shrink before identity text truncates. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-menu
  :is(
    [data-slot="dropdown-menu-group"],
    [data-slot="dropdown-menu-radio-group"],
    [data-slot="select-group"],
    [data-slot="select-item"],
    .dropdown-item
  ) {
  min-width: 0;
  max-width: 100%;
}

:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .dropdown-item[data-highlighted]:not([aria-disabled="true"]):not([data-disabled]) {
  color: var(--menu-item-hover-text);
  background: var(--element);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .input-spec-control:disabled {
  cursor: not-allowed;
}

:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .source-badge
  [data-regel-owner="Button"].badge-action.button-spec {
  width: var(--layout-source-badge-badge-caret-width);
  height: var(--component-source-badge-badge-caret-height);
  border-radius: var(--radius-full);
  background: transparent;
  color: currentColor;
  cursor: pointer;
  min-width: 0;
  min-height: 0;
  padding: 0;
  border: 0;
}

:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .source-badge
  [data-regel-owner="Button"].badge-action.button-spec:is(:hover, :focus-visible) {
  background: var(--text-hover-overlay);
}

/* Exact source utility button presentation, separate from button-spec. */

:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button {
  transition:
    background-color var(--motion-hover) var(--motion-ease),
    border-color var(--motion-hover) var(--motion-ease),
    color var(--motion-hover) var(--motion-ease),
    box-shadow var(--motion-slow) var(--motion-ease);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .queue-controls .button {
  margin-left: auto;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .queue-controls .button,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .decision-actions .button {
  min-height: var(--button-height-sm);
  padding: 0 var(--button-padding-sm);
  font-size: var(--type-button-sm-size);
  line-height: var(--type-button-sm-line);
  letter-spacing: var(--type-button-sm-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :where(#page, .decision-help-panel)
  a[href]:not(
    :where(
      nav a,
      .button,
      .button-spec,
      .regel-summary-card,
      .nav-link,
      .component-index-list a,
      .toc-link
    )
  ) {
  color: var(--link);
  text-decoration: underline;
  text-underline-offset: var(--link-underline-offset);
  overflow-wrap: anywhere;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :where(#page, .decision-help-panel)
  a[href]:not(
    :where(
      nav a,
      .button,
      .button-spec,
      .regel-summary-card,
      .nav-link,
      .component-index-list a,
      .toc-link
    )
  ):hover {
  color: var(--link-hover);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  :where(#page, .decision-help-panel)
  a[href]:not(
    :where(
      nav a,
      .button,
      .button-spec,
      .regel-summary-card,
      .nav-link,
      .component-index-list a,
      .toc-link
    )
  ):focus-visible {
  color: var(--link-hover);
  outline: var(--focus-outline);
  outline-offset: var(--focus-outline-offset);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button {
  min-height: var(--button-height-md);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-1);
  padding: 0 var(--button-padding-md);
  border: var(--stroke-transparent);
  border-radius: var(--button-radius);
  color: var(--inverse);
  background: var(--text);
  font-size: var(--type-button-md-size);
  font-weight: var(--type-button-weight);
  line-height: var(--type-button-md-line);
  white-space: nowrap;
  letter-spacing: var(--type-button-md-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button:hover {
  background-image:
    linear-gradient(
      90deg,
      var(--button-solid-hover-overlay) 0%,
      var(--button-solid-hover-overlay) 100%
    ),
    linear-gradient(90deg, var(--text) 0%, var(--text) 100%);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button:focus-visible {
  outline: var(--focus-outline);
  outline-offset: var(--focus-outline-offset);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button.secondary {
  color: var(--text);
  background: var(--surface);
  border-color: var(--border);
  box-shadow: var(--shadow-sm);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button.secondary:hover {
  background-image:
    linear-gradient(
      90deg,
      var(--button-secondary-hover-overlay) 0%,
      var(--button-secondary-hover-overlay) 100%
    ),
    linear-gradient(90deg, var(--surface) 0%, var(--surface) 100%);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button.tertiary {
  color: var(--text);
  background: transparent;
  border-color: transparent;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button.tertiary:hover {
  background: var(--text-hover-overlay);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button[disabled] {
  color: var(--inverse);
  background: var(--text-disabled);
  border-color: transparent;
  cursor: not-allowed;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button[disabled]:hover {
  background-image: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button.size-small {
  min-height: var(--button-height-sm);
  padding-inline: var(--button-padding-sm);
  font-size: var(--type-button-sm-size);
  line-height: var(--type-button-sm-line);
  letter-spacing: var(--type-button-sm-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button.size-large {
  min-height: var(--button-height-lg);
  padding-inline: var(--button-padding-lg);
  font-size: var(--type-button-lg-size);
  line-height: var(--type-button-lg-line);
  letter-spacing: var(--type-button-lg-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .button.size-xl {
  min-height: var(--button-height-xl);
  padding-inline: var(--button-padding-xl);
  font-size: var(--type-button-lg-size);
  line-height: var(--type-button-lg-line);
  letter-spacing: var(--type-button-lg-tracking);
}

/* Optical inset follows button size and applies only to icon-and-text actions. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] [data-regel-owner="Button"]:is(.button-spec, .button) {
  --button-current-padding: var(--button-padding-md);
  --button-current-height: var(--button-height-md);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"]:is(.button-spec, .button).size-small {
  --button-current-padding: var(--button-padding-sm);
  --button-current-height: var(--button-height-sm);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"]:is(.button-spec, .button):is(.size-large, .size-xl) {
  --button-current-padding: var(--button-padding-lg);
  --button-current-height: var(--button-height-lg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"]:is(.button-spec, .button).size-xl {
  --button-current-padding: var(--button-padding-xl);
  --button-current-height: var(--button-height-xl);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"]:is(.button-spec, .button):not(.icon-only, .learn-more, .link):is(
    .with-left,
    .with-right,
    .with-both,
    :has(> [data-icon="inline-start"]),
    :has(> [data-icon="inline-end"])
  ) {
  padding-inline: var(--button-current-padding);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"]:is(.button-spec, .button):not(.icon-only, .learn-more, .link):is(
    .with-left,
    .with-both,
    :has(> [data-icon="inline-start"])
  ) {
  padding-inline-start: calc(var(--button-current-padding) - var(--space-1));
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"]:is(.button-spec, .button):not(.icon-only, .learn-more, .link):is(
    .with-right,
    .with-both,
    :has(> [data-icon="inline-end"])
  ) {
  padding-inline-end: calc(var(--button-current-padding) - var(--space-1));
}

/* Match the count's block clearance, excluding the Button's 1px border. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
[data-regel-owner="Button"].button-spec.with-left[data-filter-count]:not(
  .icon-only,
  .learn-more,
  .link
) {
  padding-inline-end: calc(
    (var(--button-current-height) - var(--component-source-badge-min-height)) /
    2 -
    1px
  );
}

:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .button {
  gap: var(--space-2);
  font-size: var(--type-button-md-size);
  line-height: var(--type-button-md-line);
  font-weight: var(--type-button-weight);
  letter-spacing: var(--type-button-md-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .button:hover {
  background: var(--button-branded-primary-hover-bg);
  opacity: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .button.secondary {
  color: var(--text);
  background: var(--element);
  border-color: transparent;
  box-shadow: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .button.secondary:hover {
  color: var(--text);
  background: var(--element-2);
  border-color: transparent;
  background-image: none;
  opacity: 1;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"] .button.tertiary:hover {
  color: var(--text);
  background: var(--element-2);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"][data-theme="dark"]
  .button.secondary:not([disabled]) {
  background: var(--element-2);
  border-color: var(--border);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme][data-brand="branded"][data-theme="dark"]
  .button.secondary:not([disabled]):hover {
  background: var(--nav-active-hover);
  border-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .search-input-clear.button {
  position: absolute;
  right: var(--space-1);
  width: var(--button-height-sm);
  min-height: var(--button-height-sm);
  padding: 0;
  border-radius: var(--radius-md);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .table-toolbar .button {
  min-height: var(--button-height-md);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .table-selection-actions .button {
  min-height: var(--space-8);
  padding: 0 var(--space-3);
  font-size: var(--type-caption-size);
  line-height: var(--type-caption-line);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .table-filter-icon {
  width: var(--button-height-md);
  padding: 0;
  justify-content: center;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .table-add-action svg,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .table-filter-icon svg {
  width: var(--space-4);
  height: var(--space-4);
  stroke: currentColor;
  flex: 0 0 auto;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .table-add-action .table-add-chevron {
  width: var(--layout-table-add-action-table-add-chevron-width);
  height: var(--component-table-add-action-table-add-chevron-height);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .prototype-pagination .button {
  min-width: var(--button-height-sm);
}
@media (max-width: 760px) {
  :is(.gap-request-form, .prototype-login-form)[data-regel-theme] .table-add-action {
    grid-column: auto;
    justify-self: end;
  }
}

/* Lab menus reserve the source check column before the full option label. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  section[aria-labelledby="metadata-selection-review"]
  dl
  .dropdown-trigger {
  height: var(--button-height-sm);
  min-height: var(--button-height-sm);
  padding: 0 var(--space-3);
  border-radius: var(--component-metadata-trigger-radius);
  font-size: var(--type-button-sm-size);
  line-height: var(--type-button-sm-line);
  letter-spacing: var(--type-button-sm-tracking);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  section[aria-labelledby="metadata-selection-review"]
  dl
  .dropdown-trigger-main
  > svg,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  section[aria-labelledby="metadata-selection-review"]
  dl
  .dropdown-trigger-main
  > .ai-avatar {
  width: var(--component-metadata-identity-size);
  height: var(--component-metadata-identity-size);
  flex-shrink: 0;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .lab-dropdown
  .dropdown-menu:is([data-slot="dropdown-menu-content"], [data-slot="dropdown-menu-sub-content"]) {
  width: max-content;
  min-width: var(--anchor-width);
  max-width: calc(100vw - 32px);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .lab-dropdown .dropdown-item-label {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

/* Proposed constrained-label option; ordinary fixed-height controls remain unchanged. */
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] [data-regel-owner="Button"].button-spec[data-wrap-label] {
  max-width: 100%;
  height: auto;
  min-height: var(--button-height-md);
  white-space: normal;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"].button-spec.size-small[data-wrap-label] {
  min-height: var(--button-height-sm);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"].button-spec.size-large[data-wrap-label] {
  min-height: var(--button-height-lg);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  [data-regel-owner="Button"].button-spec.size-xl[data-wrap-label] {
  min-height: var(--button-height-xl);
}

/* Optional text-aligned navigation retains the complete canonical link Button. */
[data-regel-theme]
[data-regel-owner="Button"].button-spec:is(.link, .learn-more)[data-link-inset="none"] {
  padding-inline: 0;
}

:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload {
  --component-evidence-upload-min-height: 112px;
  --component-evidence-upload-icon-surface: 44px;
  --component-evidence-upload-icon-size: 20px;
  --component-evidence-upload-stroke-width: 1px;
  --component-evidence-upload-attention-duration: 500ms;
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: var(--component-evidence-upload-min-height);
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid transparent;
  border-radius: var(--radius-lg);
  background: var(--side-bg);
  color: var(--text);
  cursor: pointer;
  text-align: left;
  transition:
    background-color var(--motion-hover) var(--motion-ease),
    border-color var(--motion-hover) var(--motion-ease);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload:not([data-disabled]):hover {
  --component-evidence-upload-stroke-color: var(--border-strong);
  background: var(--element);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload-border {
  position: absolute;
  inset: calc(0px - var(--component-evidence-upload-stroke-width));
  width: calc(100% + var(--component-evidence-upload-stroke-width) * 2);
  height: calc(100% + var(--component-evidence-upload-stroke-width) * 2);
  overflow: visible;
  pointer-events: none;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload-border rect {
  x: 1px;
  y: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  rx: calc(var(--radius-lg) - 1px);
  fill: none;
  stroke: var(--component-evidence-upload-stroke-color, var(--border));
  stroke-width: var(--component-evidence-upload-stroke-width);
  stroke-dasharray: 4 6;
  stroke-linecap: round;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload[data-disabled] {
  cursor: not-allowed;
  color: var(--text-3);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload-icon {
  display: grid;
  flex: 0 0 var(--component-evidence-upload-icon-surface);
  height: var(--component-evidence-upload-icon-surface);
  place-items: center;
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  background: var(--surface);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload-icon svg {
  width: var(--component-evidence-upload-icon-size);
  height: var(--component-evidence-upload-icon-size);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload-copy {
  display: grid;
  min-width: 0;
  gap: var(--space-1);
  overflow-wrap: anywhere;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload-title {
  font-size: var(--type-label-lg-size);
  line-height: var(--type-label-lg-line);
  font-weight: var(--type-label-weight);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload-description {
  color: var(--text-2);
  font-size: var(--type-body-md-size);
  line-height: var(--type-body-md-line);
  font-weight: var(--type-body-weight);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload-description > span {
  color: var(--link);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .regel-evidence-upload[data-disabled]
  .regel-evidence-upload-description,
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .regel-evidence-upload[data-disabled]
  .regel-evidence-upload-description
  > span {
  color: inherit;
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload[data-presentation="centered"] {
  --component-evidence-upload-min-height: 148px;
  justify-content: center;
  text-align: center;
  --component-evidence-upload-stroke-color: var(--border-strong);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .regel-evidence-upload[data-presentation="centered"]
  .regel-evidence-upload-copy {
  justify-items: center;
  gap: var(--space-3);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload[data-empty]:not([data-disabled]),
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .regel-evidence-upload[data-dragging="true"]:not([data-disabled]) {
  --component-evidence-upload-stroke-color: var(--blue);
  background: var(--blue-soft);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .regel-evidence-upload[data-empty]:not([data-disabled]):hover {
  --component-evidence-upload-stroke-color: var(--blue-hover);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme]
  .regel-evidence-upload[data-presentation="centered"]
  .regel-evidence-upload-title {
  color: var(--text-primary);
  font-size: var(--type-label-lg-size);
  line-height: var(--type-label-lg-line);
  font-weight: var(--type-label-weight);
}
:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload-attention {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: var(--blue);
  opacity: 0;
  animation: regel-evidence-upload-attention var(--component-evidence-upload-attention-duration)
    var(--motion-ease);
}
@keyframes regel-evidence-upload-attention {
  0%,
  100% {
    opacity: 0;
  }
  30% {
    opacity: 0.16;
  }
}
[data-regel-theme] .regel-evidence-attachments {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}
[data-regel-theme] .regel-evidence-attachment {
  --component-evidence-attachment-radius: 8px;
  min-width: 0;
  max-width: 100%;
  color: var(--text-2);
  font-size: var(--type-body-sm-size);
  line-height: var(--type-body-sm-line);
}
[data-regel-theme] .regel-evidence-attachment-actions {
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  min-height: var(--button-height-sm);
  border: 1px solid var(--border);
  border-radius: var(--component-evidence-attachment-radius);
  background: transparent;
  gap: 0;
}
[data-regel-theme]
  .regel-evidence-attachment
  .regel-evidence-attachment-actions
  > .regel-evidence-attachment-trigger {
  display: inline-flex;
  align-items: center;
  flex: 0 1 auto;
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  height: auto;
  min-height: calc(var(--button-height-sm) - 2px);
  border: 0;
  border-radius: calc(var(--component-evidence-attachment-radius) - 1px);
  background: transparent;
  color: var(--text-2);
  padding: var(--space-1) var(--space-2);
  font-size: var(--type-label-sm-size);
  line-height: var(--type-label-sm-line);
  font-weight: var(--type-label-weight);
  text-align: start;
  white-space: normal;
}
[data-regel-theme]
  .regel-evidence-attachment
  .regel-evidence-attachment-actions
  > .button-spec.regel-evidence-attachment-action {
  box-sizing: border-box;
  flex: none;
  width: calc(var(--button-height-sm) - 2px);
  height: calc(var(--button-height-sm) - 2px);
  border-radius: calc(var(--component-evidence-attachment-radius) - 1px);
}
[data-regel-theme] .regel-evidence-attachment-name {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  min-width: 0;
  padding-inline-end: var(--space-1);
}
[data-regel-theme] .regel-evidence-attachment-label {
  min-width: 0;
  overflow-wrap: anywhere;
}
[data-regel-theme] .regel-evidence-attachment-name .regel-evidence-file-icon {
  flex: none;
  width: var(--button-icon-size);
  height: var(--button-icon-size);
  object-fit: contain;
}
[data-regel-theme] .regel-evidence-attachment > p {
  color: var(--error-text);
  margin-block-start: var(--space-1);
}
@media (prefers-reduced-motion: reduce) {
  :is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload-attention {
    animation: none;
  }
  :is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-evidence-upload {
    transition: none;
  }
}

:is(.gap-request-form, .prototype-login-form)[data-regel-theme] .regel-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}