:root {
    --pgn-palette-ice: #fafbfc;
    --pgn-palette-cloud: #fbfcfd;
    --pgn-palette-mist: #eef3f7;
    --pgn-palette-white: #ffffff;
    --pgn-palette-line: #d6e1ee;
    --pgn-palette-line-strong: #c6d3e0;
    --pgn-palette-ink: #17202a;
    --pgn-palette-slate: #607080;
    --pgn-shellbar-meta-color: #5f6b76;
    --pgn-palette-blue: #5d8f9e;
    --pgn-palette-blue-rgb: 93, 143, 158;
    --pgn-palette-blue-deep: #4b707c;
    --pgn-palette-cyan: #8fbec8;
    --pgn-palette-cyan-rgb: 143, 190, 200;
    --pgn-palette-violet: #64748b;
    --pgn-palette-violet-rgb: 100, 116, 139;
    --pgn-palette-warning: #8a5a12;
    --pgn-palette-warning-soft: #fff5db;
    --pgn-palette-danger: #b42318;
    --pgn-palette-danger-soft: #fef3f2;
    --pgn-palette-success: #18794e;
    --pgn-palette-success-soft: #e8f7ee;
    --floe-state-neutral-bg: #eef2f6;
    --floe-state-neutral-border: rgba(100, 116, 139, 0.18);
    --floe-state-neutral-text: #607080;
    --floe-state-info-bg: #eef6f7;
    --floe-state-info-border: rgba(93, 143, 158, 0.22);
    --floe-state-info-text: #4b707c;
    --floe-state-success-bg: var(--pgn-palette-success-soft);
    --floe-state-success-border: rgba(24, 121, 78, 0.2);
    --floe-state-success-text: var(--pgn-palette-success);
    --floe-state-warning-bg: var(--pgn-palette-warning-soft);
    --floe-state-warning-border: rgba(138, 90, 18, 0.22);
    --floe-state-warning-text: var(--pgn-palette-warning);
    --floe-state-danger-bg: var(--pgn-palette-danger-soft);
    --floe-state-danger-border: rgba(180, 35, 24, 0.2);
    --floe-state-danger-text: var(--pgn-palette-danger);
    --floe-local-placeholder-bg: #f3f6f8;
    --floe-local-placeholder-border: rgba(100, 116, 139, 0.22);
    --floe-local-placeholder-border-strong: rgba(100, 116, 139, 0.32);
    --floe-local-placeholder-text: #607080;
    --floe-local-placeholder-strong: #415161;
    --bg: var(--pgn-palette-ice);
    --bg-soft: var(--pgn-palette-cloud);
    --panel: rgba(255, 255, 255, 0.9);
    --panel-strong: var(--pgn-palette-white);
    --panel-border: var(--pgn-palette-line);
    --text: var(--pgn-palette-ink);
    --muted: var(--pgn-palette-slate);
    --accent: var(--pgn-palette-blue);
    --accent-rgb: var(--pgn-palette-blue-rgb);
    --accent-dark: var(--pgn-palette-blue-deep);
    --accent-secondary: var(--pgn-palette-cyan);
    --accent-secondary-rgb: var(--pgn-palette-cyan-rgb);
    --accent-soft: #e7f0fb;
    --accent-aux: var(--pgn-palette-violet);
    --accent-aux-rgb: var(--pgn-palette-violet-rgb);
    --warning: var(--pgn-palette-warning);
    --warning-soft: var(--pgn-palette-warning-soft);
    --danger: var(--pgn-palette-danger);
    --danger-soft: var(--pgn-palette-danger-soft);
    --success: var(--pgn-palette-success);
    --success-soft: var(--pgn-palette-success-soft);
    --state-neutral-bg: var(--floe-state-neutral-bg);
    --state-neutral-border: var(--floe-state-neutral-border);
    --state-neutral-text: var(--floe-state-neutral-text);
    --state-info-bg: var(--floe-state-info-bg);
    --state-info-border: var(--floe-state-info-border);
    --state-info-text: var(--floe-state-info-text);
    --state-success-bg: var(--floe-state-success-bg);
    --state-success-border: var(--floe-state-success-border);
    --state-success-text: var(--floe-state-success-text);
    --state-warning-bg: var(--floe-state-warning-bg);
    --state-warning-border: var(--floe-state-warning-border);
    --state-warning-text: var(--floe-state-warning-text);
    --state-danger-bg: var(--floe-state-danger-bg);
    --state-danger-border: var(--floe-state-danger-border);
    --state-danger-text: var(--floe-state-danger-text);
    --page-background: var(--bg);
    --shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
    --shadow-soft: 0 12px 30px rgba(15, 23, 42, 0.06);
    --radius-xl: 22px;
    --radius-lg: 18px;
    --radius-md: 14px;
    --radius-sm: 12px;
    --floe-shell-width-small: 1120px;
    --floe-shell-width-medium: 1380px;
    --floe-shell-width-large: 1540px;
    --floe-shell-width-ai: 1000px;
    --floe-shell-width-fine: var(--floe-shell-width-small);
    --floe-shell-width-thick: var(--floe-shell-width-large);
    --shell-width: var(--floe-shell-width-medium);
    --floe-shell-inline-gutter: 24px;
    --floe-shell-frame-width: min(var(--shell-width), calc(100% - var(--floe-shell-inline-gutter)));
    --pgn-shellbar-inner-width: min(var(--floe-shell-frame-width), 94vw);
    --page-footer-gap: 10px;
    --floe-operational-text-color: #53687b;
    --floe-operational-font-size: 0.8rem;
    --floe-operational-font-weight: 380;
    --floe-operational-letter-spacing: 0.08em;
    --floe-operational-line-height: 1.2;
    --floe-input-height: 44px;
    --floe-input-radius: 8px;
    --floe-input-padding-x: 12px;
    --floe-input-border-color: #cfdbe6;
    --floe-input-bg: #ffffff;
    --floe-input-text-color: #607080;
    --floe-input-font-size: 0.8rem;
    --floe-input-font-weight: 400;
    --floe-input-letter-spacing: 0;
    --floe-input-line-height: 1.35;
    --floe-input-label-gap: 8px;
    --floe-input-label-indent: 12px;
    --floe-input-width-xs: 96px;
    --floe-input-width-compact: 124px;
    --floe-input-width-sm: 148px;
    --floe-input-width-date: 176px;
    --floe-input-width-md: 240px;
    --floe-input-width-lg: 360px;
    --floe-upload-field-min-width: 260px;
    --floe-upload-field-width: var(--floe-input-width-lg);
    --floe-input-left-label-width: 136px;
    --floe-input-left-label-min-width: 116px;
    --floe-card-header-label-color: #607080;
    --floe-card-header-label-font-size: 0.68rem;
    --floe-card-header-label-font-weight: 400;
    --floe-card-header-label-letter-spacing: 0.14em;
    --floe-card-header-label-line-height: 1.2;
    --floe-card-title-color: #4f6275;
    --floe-card-title-font-size: 0.76rem;
    --floe-card-title-font-weight: 600;
    --floe-card-title-letter-spacing: 0.06em;
    --floe-card-title-line-height: 1.12;
    --floe-card-padding: 18px;
    --floe-card-padding-mobile: 12px;
    --floe-pill-radius: 6px;
    --floe-pill-min-height: 24px;
    --floe-pill-padding-x: 8px;
    --floe-pill-font-size: 0.68rem;
    --floe-pill-font-weight: 520;
    --floe-pill-letter-spacing: 0.08em;
    --floe-pill-bg: var(--state-neutral-bg);
    --floe-pill-border: var(--state-neutral-border);
    --floe-pill-color: var(--state-neutral-text);
    --floe-meta-pill-bg: rgba(255, 255, 255, 0.86);
    --floe-meta-pill-border: rgba(115, 135, 150, 0.18);
    --floe-meta-pill-color: #607080;
    --floe-meta-pill-height: 24px;
    --floe-meta-pill-padding-x: 9px;
    --floe-filter-action-height: 36px;
    --floe-filter-action-min-width: 116px;
    --floe-filter-action-padding-x: 14px;
    --floe-filter-action-font-size: 0.72rem;
    --floe-filter-action-font-weight: 520;
    --floe-filter-action-letter-spacing: 0.12em;
    --floe-filter-card-bg: #ffffff;
    --floe-filter-card-border: #d5e1ec;
    --floe-filter-card-panel-bg: #fbfdff;
    --floe-filter-card-panel-border: #dbe4ee;
    --floe-filter-card-panel-radius: 8px;
    --floe-filter-card-panel-padding: 14px;
    --floe-filter-card-panel-gap: 12px;
    --floe-filter-card-action-height: 32px;
    --floe-filter-card-action-min-width: 92px;
    --floe-filter-card-action-padding-x: 11px;
    --floe-filter-card-action-font-size: 0.66rem;
    --floe-filter-card-action-font-weight: 520;
    --floe-filter-card-action-letter-spacing: 0.1em;
    --floe-pagination-bg: #f8fafc;
    --floe-pagination-border: #e3eaf2;
    --floe-pagination-control-bg: #ffffff;
    --floe-pagination-control-border: #dbe4ee;
    --floe-pagination-text: #607080;
    --floe-pagination-strong-text: #33475b;
    --floe-pagination-muted-text: #8a99a8;
    --floe-pagination-inline-inset: 0px;
    --floe-pagination-surface-gap: 0px;
    --floe-pagination-join-overlap: -1px;
    --floe-pagination-padding-y: 2px;
    --floe-pagination-padding-x: 8px;
    --floe-pagination-radius: 8px;
    --floe-pagination-control-size: 20px;
    --floe-pagination-chip-height: 20px;
    --floe-pagination-font-size: 0.62rem;
    --floe-pagination-font-weight: 560;
    --floe-pagination-letter-spacing: 0.07em;
    --floe-surface-information: #ffffff;
    --floe-surface-toolbar: #f3f7fa;
    --pgn-shellbar-height: 47.5px;
    --pgn-shellbar-background: #ffffff;
    --pgn-shellbar-control-background: #ffffff;
    --pgn-shellbar-border: rgba(148, 163, 184, 0.08);
    --pgn-shellbar-logo-width: 144px;
    --pgn-shellbar-logo-height: 30px;
    --pgn-shellbar-control-size: 32px;
    --pgn-shellbar-control-icon-size: 14px;
    --pgn-shellbar-flag-size: 16px;
    --pgn-appbar-background: #fbfcfd;
    --pgn-menu-bar-background: #fcfdfe;
    --pgn-appbar-border: transparent;
}

/* Floe canonical card header contract.
   The first visible text in the upper-left of every app card uses one grammar,
   even when local markup calls the header by a different component name. */
:where(.page-shell, .floe-app-frame, .antarctica-shell) :where(
    .card-header,
    .floe-dashboard-surface__header,
    .floe-query-filter-panel__header,
    .floe-filter-panel__header,
    .floe-queue-header,
    .chinstrap-card-header,
    .glacier-panel__header,
    .glacier-history-section__header,
    .humboldt-ops-band__header,
    .raft-validation-card__header,
    .raft-query-header,
    .raft-pending-ingest__header,
    .raft-review-group-panel__header,
    .raft-auto-results-card__header,
    .raft-auto-history-card__header,
    .raft-cleanup-results-card__header,
    .raft-cleanup-validation-csv-panel__header
) {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-width: 0 !important;
    margin: 0 0 12px !important;
}

:where(.page-shell, .floe-app-frame, .antarctica-shell) :where(.floe-card-header--titleless) {
    justify-content: flex-end !important;
}

:where(.page-shell, .floe-app-frame, .antarctica-shell) :where(.floe-card-header--titleless) > :where(
    a,
    button,
    .button,
    [role="button"],
    [class$="__utility"],
    [class$="-utility"]
) {
    margin-left: auto !important;
}

:where(.page-shell, .floe-app-frame, .antarctica-shell) :where(
    .card-header,
    .floe-dashboard-surface__header,
    .floe-query-filter-panel__header,
    .floe-filter-panel__header,
    .floe-queue-header,
    .chinstrap-card-header,
    .glacier-panel__header,
    .glacier-history-section__header,
    .humboldt-ops-band__header,
    .raft-validation-card__header,
    .raft-query-header,
    .raft-pending-ingest__header,
    .raft-review-group-panel__header,
    .raft-auto-results-card__header,
    .raft-auto-history-card__header,
    .raft-cleanup-results-card__header,
    .raft-cleanup-validation-csv-panel__header
) > :where(div, [class$="__copy"], [class$="__body"], [class$="__main"]) {
    display: grid !important;
    gap: 4px !important;
    min-width: 0 !important;
}

:where(.page-shell, .floe-app-frame, .antarctica-shell) :where(
    .card-header,
    .floe-dashboard-surface__header,
    .floe-query-filter-panel__header,
    .floe-filter-panel__header,
    .floe-queue-header,
    .chinstrap-card-header,
    .glacier-panel__header,
    .glacier-history-section__header,
    .humboldt-ops-band__header,
    .raft-validation-card__header,
    .raft-query-header,
    .raft-pending-ingest__header,
    .raft-review-group-panel__header,
    .raft-auto-results-card__header,
    .raft-auto-history-card__header,
    .raft-cleanup-results-card__header,
    .raft-cleanup-validation-csv-panel__header
) :where(.eyebrow, h1:first-child, h2:first-child, h3:first-child, h4:first-child) {
    margin: 0 !important;
    color: var(--floe-card-title-color) !important;
    font-size: var(--floe-card-title-font-size) !important;
    font-weight: var(--floe-card-title-font-weight) !important;
    letter-spacing: var(--floe-card-title-letter-spacing) !important;
    line-height: var(--floe-card-title-line-height) !important;
    text-transform: uppercase !important;
}
* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    scrollbar-gutter: stable;
}

.floe-shell-scope--small,
.floe-shell-scope--fine,
.page-shell--small,
.page-shell--fine {
    --shell-width: var(--floe-shell-width-small);
}

.floe-shell-scope--medium,
.page-shell--medium {
    --shell-width: var(--floe-shell-width-medium);
}

.floe-shell-scope--large,
.floe-shell-scope--thick,
.page-shell--large,
.page-shell--thick {
    --shell-width: var(--floe-shell-width-large);
}

.floe-shell-scope--ai,
.page-shell--ai {
    --shell-width: var(--floe-shell-width-ai);
    --page-background: var(--floe-color-bg-page);
}

body {
    margin: 0;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-size: 14px;
    line-height: 1.5;
    color: var(--text);
    background: var(--page-background);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

.pgn-shellbar {
    position: relative;
    z-index: 40;
    flex: 0 0 auto;
    height: var(--pgn-shellbar-height);
    min-height: var(--pgn-shellbar-height);
    border-bottom: 1px solid var(--pgn-shellbar-border);
    background: var(--pgn-shellbar-background);
    box-shadow: 0 4px 10px -10px rgba(15, 23, 42, 0.22);
    overflow: hidden;
}

.pgn-shellbar__inner {
    width: var(--pgn-shellbar-inner-width);
    max-width: var(--shell-width);
    height: var(--pgn-shellbar-height);
    min-height: var(--pgn-shellbar-height);
    margin: 0 auto;
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    padding: 0;
    box-sizing: border-box;
}

.pgn-shellbar__left,
.pgn-shellbar__center,
.pgn-shellbar__right,
.pgn-shellbar__nav {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: nowrap;
}

.pgn-shellbar__left {
    min-width: 0;
    justify-content: flex-start;
    justify-self: start;
}

.pgn-shellbar__center {
    position: static;
    min-width: 0;
    display: inline-flex;
    width: auto;
    max-width: min(100%, 420px);
    justify-content: center;
    align-items: center;
    overflow: hidden;
    justify-self: center;
    pointer-events: none;
}

.pgn-shellbar__brand {
    min-width: 0;
    max-width: 100%;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: var(--pgn-shellbar-height);
    font-size: 1.2rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #000000;
}

.pgn-shellbar__brand span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pgn-shellbar__brand-logo {
    width: var(--pgn-shellbar-logo-width);
    height: var(--pgn-shellbar-logo-height);
    max-width: var(--pgn-shellbar-logo-width);
    object-fit: contain;
    flex: 0 0 auto;
    filter: none;
    image-rendering: auto;
}

.pgn-shellbar__nav {
    flex: 1 1 auto;
    gap: 2px;
    min-width: 0;
}

.pgn-shellbar__link {
    display: inline-flex;
    align-items: center;
    min-height: var(--pgn-shellbar-height);
    padding: 0 12px;
    position: relative;
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1;
}

.pgn-shellbar__link::after {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 0;
    height: 2px;
    border-radius: 999px;
    background: transparent;
}

.pgn-shellbar__link:hover {
    color: var(--pgn-palette-blue-deep);
}

.pgn-shellbar__link--active {
    color: var(--pgn-palette-blue-deep);
}

.pgn-shellbar__link--active::after {
    background: linear-gradient(90deg, var(--pgn-palette-blue) 0%, var(--pgn-palette-cyan) 100%);
}

.pgn-shellbar__debug {
    font-size: 0.7rem;
    color: var(--muted);
    white-space: nowrap;
}

.pgn-shellbar__right {
    min-width: 0;
    align-items: center;
    flex-wrap: nowrap;
    justify-content: flex-end;
    gap: 8px;
    justify-self: end;
}

.pgn-shellbar__utilities {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    max-width: 100%;
}

.pgn-shellbar__utility-strip {
    min-width: 0;
    min-height: var(--pgn-shellbar-control-size);
    display: inline-flex;
    align-items: stretch;
    border: 1px solid rgba(var(--pgn-palette-blue-rgb), 0.14);
    border-radius: 8px;
    background: var(--pgn-shellbar-control-background);
    overflow: hidden;
    max-width: 100%;
}

.pgn-shellbar__service {
    min-width: 0;
    max-width: min(360px, 100%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 8px;
    border-radius: 8px;
    color: var(--pgn-shellbar-meta-color);
    text-align: center;
    pointer-events: auto;
    outline: none;
}

a.pgn-shellbar__service:focus-visible {
    background: rgba(var(--accent-rgb), 0.07);
    box-shadow: inset 0 0 0 1px rgba(var(--accent-rgb), 0.14);
    color: var(--accent-dark);
}

a.pgn-shellbar__service:focus-visible .pgn-shellbar__service-app-name {
    color: var(--accent-dark);
}

.pgn-shellbar__service-meta {
    min-width: 0;
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 0.98rem;
    white-space: nowrap;
}

.pgn-shellbar__service-app-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--accent);
    font-size: 0.94rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1;
    text-transform: uppercase;
}

.pgn-shellbar__service-subtitle {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    min-height: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: rgba(95, 107, 118, 0.92);
    font-size: 0.72rem;
    font-weight: 560;
    letter-spacing: 0.16em;
    line-height: 1;
    text-transform: uppercase;
}

.pgn-shellbar__debug {
    max-width: 140px;
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    padding: 0 10px;
    border: 1px solid rgba(var(--pgn-palette-blue-rgb), 0.1);
    border-radius: var(--floe-pill-radius);
    background: rgba(var(--pgn-palette-blue-rgb), 0.045);
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
}

.pgn-shellbar__clock {
    min-width: 0;
    min-height: var(--pgn-shellbar-control-size);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    padding: 0 10px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--pgn-palette-ink);
    white-space: nowrap;
    font-variant-numeric: lining-nums tabular-nums;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    box-shadow: none;
}

.pgn-shellbar__clock-item {
    min-height: 100%;
    display: inline-flex;
    align-items: center;
    align-self: center;
    gap: 5px;
    color: rgba(23, 35, 50, 0.9);
    font-size: 9px;
    font-weight: 450;
    letter-spacing: 1px;
    line-height: 1;
    white-space: nowrap;
}

.pgn-shellbar__clock-time {
    min-height: 24px;
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 3px;
    align-self: center;
    color: #14202b;
    font-family: inherit;
    font-size: 11px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0;
    font-variant-numeric: lining-nums tabular-nums;
    font-feature-settings: "lnum" 1, "tnum" 1;
    text-rendering: optimizeLegibility;
}

.pgn-shellbar__clock-row {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    white-space: nowrap;
}

.pgn-shellbar__clock-row {
    gap: 3px;
}

.pgn-shellbar__clock-digits {
    display: inline-flex;
    align-items: center;
    color: #17202a;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1;
}

.pgn-shellbar__clock-meridiem {
    display: inline-flex;
    align-items: center;
    color: rgba(19, 32, 43, 0.68);
    font-size: 7px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1;
    text-transform: uppercase;
}

.pgn-shellbar__clock-flag {
    align-self: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--pgn-shellbar-flag-size);
    height: var(--pgn-shellbar-flag-size);
    flex: 0 0 var(--pgn-shellbar-flag-size);
    overflow: hidden;
    line-height: 1;
    border-radius: 999px;
}

.pgn-shellbar__clock-flag-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    image-rendering: auto;
}

.pgn-shellbar__clock-divider {
    width: 1px;
    height: var(--pgn-shellbar-flag-size);
    align-self: center;
    background: rgba(var(--pgn-palette-blue-rgb), 0.18);
}

.pgn-shellbar__logout {
    position: relative;
    width: var(--pgn-shellbar-control-size);
    height: var(--pgn-shellbar-control-size);
    min-width: var(--pgn-shellbar-control-size);
    min-height: var(--pgn-shellbar-control-size);
    flex: 0 0 var(--pgn-shellbar-control-size);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border-radius: 8px;
    border: 1px solid rgba(var(--pgn-palette-blue-rgb), 0.14);
    background: var(--pgn-shellbar-control-background);
    color: var(--pgn-shellbar-meta-color);
    font-size: 0;
    line-height: 1;
    box-shadow: none;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.pgn-shellbar__logout span {
    position: absolute;
    width: var(--pgn-shellbar-control-icon-size);
    height: var(--pgn-shellbar-control-icon-size);
    display: block;
    background: currentColor;
    font-size: 0;
    line-height: 0;
    mask: url("assets/logout-icon-mask.png") center / contain no-repeat;
    -webkit-mask: url("assets/logout-icon-mask.png") center / contain no-repeat;
}

.pgn-shellbar__logout:hover {
    background: rgba(var(--pgn-palette-blue-rgb), 0.06);
    border-color: rgba(var(--pgn-palette-blue-rgb), 0.22);
    color: var(--accent-dark);
}

.pgn-shellbar__debug::-webkit-scrollbar {
    display: none;
}

@media (max-width: 920px) {
    .pgn-shellbar__inner {
        width: var(--pgn-shellbar-inner-width);
        grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr) auto;
        gap: 8px;
        padding: 0;
        align-items: center;
    }

    .pgn-shellbar__center {
        position: static;
        top: auto;
        bottom: auto;
        left: auto;
        z-index: auto;
        width: auto;
        max-width: 100%;
        justify-content: center;
        transform: none;
        pointer-events: auto;
    }

    .pgn-shellbar__brand {
        min-height: var(--pgn-shellbar-height);
        gap: 8px;
    }

    .pgn-shellbar__brand-logo {
        width: var(--pgn-shellbar-logo-width);
        height: var(--pgn-shellbar-logo-height);
        max-width: var(--pgn-shellbar-logo-width);
    }

    .pgn-shellbar__link {
        min-height: 34px;
    }

    .pgn-shellbar__left,
    .pgn-shellbar__center,
    .pgn-shellbar__right {
        width: auto;
    }

    .pgn-shellbar__right {
        justify-content: flex-end;
        flex-wrap: nowrap;
    }

    .pgn-shellbar__utilities {
        flex-wrap: nowrap;
        justify-content: flex-end;
    }

    .pgn-shellbar__utility-strip {
        max-width: 100%;
    }

    .pgn-shellbar__service {
        max-width: 100%;
    }

    .pgn-shellbar__clock {
        padding-inline: 10px;
    }
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    max-width: 100%;
}

button,
input,
select,
textarea {
    font: inherit;
    color: inherit;
}

code {
    padding: 0.1rem 0.35rem;
    border-radius: 8px;
    background: #f5f7fa;
    border: 1px solid #e3e8ef;
    font-size: 0.88em;
}

.page-shell {
    width: var(--floe-shell-frame-width);
    max-width: var(--shell-width);
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    margin: 0 auto;
    background: transparent;
    box-sizing: border-box;
}

.pgn-shellbar + .page-shell {
    margin-top: 0;
}

.page-stack {
    flex: 1 1 auto;
    min-height: 0;
    display: grid;
    gap: 12px;
    align-content: start;
    padding-bottom: var(--page-footer-gap);
}

.page-shell > .page-stack:first-child {
    padding-top: 12px;
}

.page-shell--compact {
    --shell-width: var(--floe-shell-width-small);
}

.page-header {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 12px;
    overflow: visible;
    margin-bottom: 14px;
    padding: 10px 18px;
    border: 1px solid transparent;
    border-top: none;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.page-header::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    pointer-events: none;
    border-bottom: 0;
    background: var(--pgn-appbar-background);
    box-shadow:
        0 -7px 14px -14px rgba(15, 23, 42, 0.28),
        0 7px 14px -14px rgba(15, 23, 42, 0.28);
}

.page-header > * {
    position: relative;
    z-index: 1;
}

.page-header__brand {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex: 1 1 auto;
    min-width: 0;
    text-align: center;
}

.page-header__logo {
    display: block;
    width: auto;
    height: 40px;
    flex: 0 0 auto;
}

.page-header h1,
.card-header h2,
.notice-card h1,
.page-toolbar__title h2 {
    margin: 0;
}

.page-header h1 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.72rem;
    flex-wrap: wrap;
    font-size: clamp(1.22rem, 2.6vw, 1.52rem);
    line-height: 1.04;
    letter-spacing: -0.035em;
}

.page-header__app-name {
    color: var(--accent);
    font-size: 0.62em;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-shadow: 0 1px 2px rgba(15, 23, 42, 0.1);
    text-transform: uppercase;
    vertical-align: baseline;
}

.page-header__divider {
    display: none;
    align-self: center;
    width: 0.72rem;
    height: 1em;
    margin: 0;
    background: transparent;
    color: transparent;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: 0;
    transform: none;
}

.page-header__subtitle {
    display: inline-flex;
    align-items: center;
    min-height: auto;
    max-width: 100%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--pgn-shellbar-meta-color);
    font-size: 0.46em;
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1;
    text-transform: uppercase;
}

.eyebrow {
    margin: 0;
    color: var(--floe-card-header-label-color);
    font-size: var(--floe-card-header-label-font-size);
    font-weight: var(--floe-card-header-label-font-weight);
    letter-spacing: var(--floe-card-header-label-letter-spacing);
    line-height: var(--floe-card-header-label-line-height);
    text-transform: uppercase;
}

.page-header .eyebrow {
    display: none;
}

.floe-app-frame.floe-app-frame--with-menu {
    gap: 0;
    row-gap: 0;
}

.floe-app-frame.floe-app-frame--with-menu > .page-header {
    margin-bottom: 0;
}

.floe-app-frame.floe-app-frame--with-menu > .page-header + .floe-app-menu-bar-wrap,
.floe-app-frame.floe-app-frame--with-menu > .floe-app-menu-bar-wrap {
    margin-top: 0;
}

.floe-app-frame.floe-app-frame--with-menu > .floe-app-menu-bar-wrap + *,
.floe-app-menu-bar-wrap + .page-stack {
    margin-top: 16px;
}

.app-grid {
    display: grid;
    gap: 12px;
    align-items: start;
}

.column-stack {
    display: grid;
    gap: 12px;
    align-content: start;
}

.banner,
.column-card,
.notice-card {
    background: var(--panel);
    border: 1px solid var(--panel-border);
    border-radius: 20px;
    box-shadow: var(--shadow-soft);
    backdrop-filter: blur(14px);
}

.column-card,
.notice-card {
    padding: var(--floe-card-padding);
}

.notice-card {
    padding: 20px;
}

.notice-card p {
    margin: 8px 0 0;
    color: var(--muted);
}

.banner {
    padding: 12px 14px;
    margin-bottom: 12px;
    font-size: 0.88rem;
    line-height: 1.55;
    color: var(--muted);
}

.page-footer {
    margin-top: auto;
    padding: 8px 18px 7px;
    border-top: 0;
}

.page-footer__note {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    flex-wrap: wrap;
    width: 100%;
    margin: 0;
    text-align: center;
    color: var(--muted);
    font-size: 0.66rem;
    font-weight: 500;
    letter-spacing: 0.14em;
    line-height: 1.2;
    text-transform: uppercase;
}

.page-footer__copyright {
    font-weight: 380;
    opacity: 0.72;
    white-space: nowrap;
}

.pgn-shellbar__clock-date,
.pgn-shellbar__clock-zone {
    display: none;
}

.page-footer__version {
    color: inherit;
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
    font-weight: 500;
    letter-spacing: inherit;
    opacity: 0.78;
    white-space: nowrap;
}

.page-footer__version-environment {
    color: #3aa7a3;
    font-weight: 620;
}

.banner strong {
    color: var(--text);
}

.banner a,
.link {
    color: var(--accent-dark);
    font-weight: 700;
}

.banner--warning {
    background: var(--warning-soft);
    border-color: #f0cf93;
    color: var(--warning);
}

.banner--local-placeholder {
    background: var(--floe-local-placeholder-bg);
    border-color: var(--floe-local-placeholder-border-strong);
    color: var(--floe-local-placeholder-text);
    box-shadow: none;
}

.banner--local-placeholder strong,
.banner--local-placeholder code {
    color: var(--floe-local-placeholder-strong);
}

.banner--warning strong,
.banner--success strong,
.banner--error strong {
    color: inherit;
}

.banner--success {
    background: var(--success-soft);
    border-color: #b8e2c8;
    color: var(--success);
}

.banner--error {
    background: var(--danger-soft);
    border-color: #f1c4c0;
    color: var(--danger);
}

.banner--plain {
    padding: 0 2px;
    background: transparent;
    border: none;
    box-shadow: none;
}

.page-shell--flat {
    --panel: #ffffff;
    --panel-strong: #ffffff;
    --panel-border: rgba(15, 23, 42, 0.12);
    --page-background: var(--floe-color-bg-page);
    --shadow: none;
    --shadow-soft: none;
    --pgn-appbar-background: #fbfcfd;
    --pgn-appbar-border: transparent;
    --pgn-shellbar-background: #ffffff;
    --pgn-shellbar-border: var(--panel-border);
}

.page-shell--flat .page-header::before {
    background: var(--pgn-appbar-background);
    box-shadow: none;
}

.page-shell--flat .page-header {
    margin-bottom: 12px;
}

.page-shell--flat > .page-stack:first-child {
    padding-top: 18px;
}

.page-shell--flat > .page-header + .page-stack {
    padding-top: 10px;
}

.page-shell--flat .floe-app-frame.floe-app-frame--with-menu > .page-header {
    margin-bottom: 0;
}

.page-shell--flat .page-header h1,
.page-shell--flat .card-header h2 {
    letter-spacing: 0;
}

.page-shell--flat .page-header h1 {
    gap: 0.98rem;
    align-items: baseline;
}

.page-shell--flat .page-header__app-name {
    color: var(--accent);
    font-size: 0.62em;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-shadow: none;
    text-transform: uppercase;
}

.page-shell--flat .page-header__subtitle {
    min-height: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: rgba(19, 32, 43, 0.58);
    font-size: 0.46em;
    font-weight: 650;
    letter-spacing: 0.16em;
    line-height: 1;
    text-transform: uppercase;
}

.page-shell--flat .page-stack {
    gap: 12px;
    padding-bottom: 28px;
}

.page-shell--flat .banner:not(.banner--plain):not(.banner--warning):not(.banner--success):not(.banner--error),
.page-shell--flat .column-card,
.page-shell--flat .notice-card,
.page-shell--flat .floe-dashboard-bar,
.page-shell--flat .floe-dashboard-surface,
.page-shell--flat .floe-dashboard-placeholder-card,
.page-shell--flat .floe-metric-card,
.page-shell--flat .floe-kpi-tile,
.page-shell--flat .floe-helper-card,
.page-shell--flat .floe-summary-card,
.page-shell--flat .floe-dashboard-table-wrap,
.page-shell--flat .table-wrap,
.page-shell--flat .floe-progress-panel,
.page-shell--flat .progress-panel,
.page-shell--flat .floe-result-card,
.page-shell--flat .result-card,
.page-shell--flat .floe-accent-callout,
.page-shell--flat .best-box {
    border-radius: 8px;
    background: #ffffff;
    box-shadow: none;
    backdrop-filter: none;
}

.page-shell--flat .floe-dashboard-surface--soft,
.page-shell--flat .floe-dashboard-placeholder-card,
.page-shell--flat .floe-metric-card--neutral,
.page-shell--flat .floe-accent-callout,
.page-shell--flat .best-box,
.page-shell--flat .floe-progress-panel,
.page-shell--flat .progress-panel {
    background: #f8fafc;
}

.page-shell--flat input[type="text"],
.page-shell--flat input[type="search"],
.page-shell--flat input[type="number"],
.page-shell--flat input[type="email"],
.page-shell--flat input[type="password"],
.page-shell--flat input[type="date"],
.page-shell--flat textarea,
.page-shell--flat select,
.page-shell--flat .field input,
.page-shell--flat .field select,
.page-shell--flat .field textarea,
.page-shell--flat .floe-field-group input,
.page-shell--flat .floe-field-group select,
.page-shell--flat .floe-field-group textarea,
.page-shell--flat .fieldGroup input,
.page-shell--flat .fieldGroup select,
.page-shell--flat .fieldGroup textarea {
    border-radius: 8px;
    background: #ffffff;
    box-shadow: none;
}

.page-shell--flat .button {
    border-radius: 8px;
    box-shadow: none;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.page-shell--flat .button:hover {
    transform: none;
}

.page-shell--flat .button--primary {
    border-color: var(--accent);
    background: var(--accent);
    color: #ffffff;
    box-shadow: none;
}

.page-shell--flat .button--primary:hover,
.page-shell--flat .button--primary:focus-visible {
    border-color: var(--accent-dark);
    background: var(--accent-dark);
}

.page-shell--flat .button--ghost {
    border-color: var(--panel-border);
    background: #ffffff;
    color: var(--muted);
}

.page-shell--flat .button--ghost:hover,
.page-shell--flat .button--ghost:focus-visible {
    border-color: rgba(var(--accent-rgb), 0.28);
    background: #f8fafc;
    color: var(--accent);
}

/* Floe canonical action aliases for app-local syntaxes. */
.page-shell--flat .humboldt-app .button,
.raft-shell .button,
.raft-shell .dropdownFooter button,
.raft-shell .raft-auto-row-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: var(--floe-filter-action-height);
    min-width: var(--floe-filter-action-min-width);
    padding: 0 var(--floe-filter-action-padding-x);
    border: 1px solid rgba(115, 135, 150, 0.28);
    border-radius: 8px;
    background: #ffffff;
    color: #506476;
    box-shadow: none;
    cursor: pointer;
    font-family: inherit;
    font-size: var(--floe-filter-action-font-size);
    font-weight: var(--floe-filter-action-font-weight);
    letter-spacing: var(--floe-filter-action-letter-spacing);
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    transform: none;
}

.page-shell--flat .humboldt-app .button:hover,
.page-shell--flat .humboldt-app .button:focus-visible,
.raft-shell .button:hover,
.raft-shell .button:focus-visible,
.raft-shell .dropdownFooter button:hover,
.raft-shell .dropdownFooter button:focus-visible,
.raft-shell .raft-auto-row-action:hover,
.raft-shell .raft-auto-row-action:focus-visible {
    border-color: rgba(var(--accent-rgb), 0.42);
    background: #f5f9fb;
    color: var(--accent-dark);
    box-shadow: none;
    outline: none;
    transform: none;
}

.page-shell--flat .humboldt-app .button:focus-visible,
.raft-shell .button:focus-visible,
.raft-shell .dropdownFooter button:focus-visible,
.raft-shell .raft-auto-row-action:focus-visible {
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}

.page-shell--flat .humboldt-app .button:disabled,
.page-shell--flat .humboldt-app .button.is-disabled,
.raft-shell .button:disabled,
.raft-shell .button.is-disabled,
.raft-shell .dropdownFooter button:disabled,
.raft-shell .raft-auto-row-action:disabled {
    opacity: 0.52;
    cursor: not-allowed;
    transform: none;
}

.page-shell--flat .humboldt-app .button--primary,
.raft-shell .button--primary,
.raft-shell :where(
    .floe-filter-actions,
    .floe-query-filter-actions,
    .raft-export-filter-form__actions,
    .raft-actions--filters-row,
    .raft-cleanup-distribution-filter-actions,
    .raft-dashboard-search-actions,
    .raft-validation-filter-actions
) > .button:first-child,
.raft-shell .raft-auto-row-action--match {
    border-color: var(--accent);
    background: var(--accent);
    color: #ffffff;
}

.page-shell--flat .humboldt-app .button--primary:hover,
.page-shell--flat .humboldt-app .button--primary:focus-visible,
.raft-shell .button--primary:hover,
.raft-shell .button--primary:focus-visible,
.raft-shell :where(
    .floe-filter-actions,
    .floe-query-filter-actions,
    .raft-export-filter-form__actions,
    .raft-actions--filters-row,
    .raft-cleanup-distribution-filter-actions,
    .raft-dashboard-search-actions,
    .raft-validation-filter-actions
) > .button:first-child:hover,
.raft-shell :where(
    .floe-filter-actions,
    .floe-query-filter-actions,
    .raft-export-filter-form__actions,
    .raft-actions--filters-row,
    .raft-cleanup-distribution-filter-actions,
    .raft-dashboard-search-actions,
    .raft-validation-filter-actions
) > .button:first-child:focus-visible,
.raft-shell .raft-auto-row-action--match:hover,
.raft-shell .raft-auto-row-action--match:focus-visible {
    border-color: var(--accent-dark);
    background: var(--accent-dark);
    color: #ffffff;
}

.page-shell--flat .humboldt-app .button--ghost,
.raft-shell .button--ghost,
.raft-shell .button--subtle,
.raft-shell .raft-auto-row-action--unmatch {
    border-color: rgba(115, 135, 150, 0.24);
    background: #ffffff;
    color: #506476;
}

.raft-shell .button--danger {
    border-color: var(--danger);
    background: var(--danger);
    color: #ffffff;
}

.raft-shell .button--danger:hover,
.raft-shell .button--danger:focus-visible {
    border-color: #98251d;
    background: #98251d;
    color: #ffffff;
}

.raft-shell .button--ghost.raft-button--danger,
.raft-shell .raft-button--danger {
    border-color: rgba(185, 47, 36, 0.24);
    background: #fff7f6;
    color: #9a2f26;
}

.raft-shell .button--ghost.raft-button--danger:hover,
.raft-shell .button--ghost.raft-button--danger:focus-visible,
.raft-shell .raft-button--danger:hover,
.raft-shell .raft-button--danger:focus-visible {
    border-color: rgba(185, 47, 36, 0.34);
    background: #ffe9e6;
    color: #84251e;
}

.raft-shell .button--ghost.raft-button--warning,
.raft-shell .raft-button--warning {
    border-color: rgba(178, 122, 0, 0.24);
    background: #fffaf0;
    color: #7a5200;
}

.raft-shell :where(.floe-form-grid, .formGrid) > .button {
    width: auto;
    justify-self: start;
}

:where(
    .glacier-filter-actions,
    .humboldt-audit-filters-form .floe-query-filter-actions,
    .raft-shell .floe-filter-actions,
    .raft-shell .floe-query-filter-actions,
    .raft-shell .raft-export-filter-form__actions,
    .raft-shell .raft-actions--filters-row,
    .raft-shell .raft-cleanup-distribution-filter-actions,
    .raft-shell .raft-dashboard-search-actions,
    .raft-shell .raft-validation-filter-actions
) {
    gap: 8px;
}

.glacier-filter-actions .glacier-filter-button,
.humboldt-audit-filters-form .floe-query-filter-actions .button,
.raft-shell :where(
    .floe-filter-actions,
    .floe-query-filter-actions,
    .raft-export-filter-form__actions,
    .raft-actions--filters-row,
    .raft-cleanup-distribution-filter-actions,
    .raft-dashboard-search-actions,
    .raft-validation-filter-actions
) .button {
    min-height: var(--floe-filter-action-height);
    min-width: var(--floe-filter-action-min-width);
    padding-inline: var(--floe-filter-action-padding-x);
    font-size: var(--floe-filter-action-font-size);
    font-weight: var(--floe-filter-action-font-weight);
    letter-spacing: var(--floe-filter-action-letter-spacing);
    line-height: 1;
    text-transform: uppercase;
}

.glacier-filter-actions .glacier-filter-button--apply {
    border-color: var(--accent);
    background: var(--accent);
    color: #ffffff;
}

.glacier-filter-actions .glacier-filter-button--apply:hover,
.glacier-filter-actions .glacier-filter-button--apply:focus-visible {
    border-color: var(--accent-dark);
    background: var(--accent-dark);
    color: #ffffff;
}

.glacier-filter-actions .glacier-filter-button--clear {
    border-color: var(--panel-border);
    background: #ffffff;
    color: var(--muted);
}

.page-shell--flat .floe-dashboard-choice-button--active,
.page-shell--flat .floe-dashboard-choice-button[aria-checked="true"],
.page-shell--flat .floe-dashboard-tab--active {
    background: rgba(var(--accent-rgb), 0.1);
    box-shadow: none;
}

.page-shell--flat .floe-shell-bar-wrap::before,
.page-shell--flat-nav .floe-shell-bar-wrap::before {
    border-top-color: rgba(148, 163, 184, 0.04);
    border-bottom-color: rgba(148, 163, 184, 0.16);
    background: var(--pgn-menu-bar-background);
    box-shadow: inset 0 5px 9px -12px rgba(15, 23, 42, 0.1);
}

.page-shell--flat .floe-shell-bar,
.page-shell--flat-nav .floe-shell-bar {
    min-height: 56px;
    padding: 8px 0;
}

.page-shell--flat .floe-nav-group + .floe-nav-group,
.page-shell--flat-nav .floe-nav-group + .floe-nav-group {
    padding-left: 10px;
}

.page-shell--flat .floe-nav-strip--hierarchical,
.page-shell--flat-nav .floe-nav-strip--hierarchical {
    gap: 4px;
    border-radius: 0;
}

.page-shell--flat .floe-nav-link,
.page-shell--flat .floe-menu-button,
.page-shell--flat-nav .floe-nav-link,
.page-shell--flat-nav .floe-menu-button {
    min-height: 36px;
    padding-inline: 14px;
    border-color: rgba(148, 163, 184, 0.16);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.68);
    color: #53687b;
    box-shadow: none;
}

.page-shell--flat .floe-nav-link:hover,
.page-shell--flat .floe-nav-link:focus-visible,
.page-shell--flat .floe-menu-button:hover,
.page-shell--flat .floe-menu-button:focus-visible,
.page-shell--flat-nav .floe-nav-link:hover,
.page-shell--flat-nav .floe-nav-link:focus-visible,
.page-shell--flat-nav .floe-menu-button:hover,
.page-shell--flat-nav .floe-menu-button:focus-visible {
    border-color: rgba(var(--accent-rgb), 0.2);
    background: #ffffff;
    color: var(--accent-dark);
    transform: none;
}

.page-shell--flat .floe-nav-link--active,
.page-shell--flat .floe-nav-group--tools .floe-nav-link--active,
.page-shell--flat .floe-menu-button--active,
.page-shell--flat .floe-nav-menu-item[data-floe-nav-open="true"] .floe-menu-button,
.page-shell--flat-nav .floe-nav-link--active,
.page-shell--flat-nav .floe-nav-group--tools .floe-nav-link--active,
.page-shell--flat-nav .floe-menu-button--active,
.page-shell--flat-nav .floe-nav-menu-item[data-floe-nav-open="true"] .floe-menu-button {
    border-color: rgba(var(--accent-rgb), 0.24);
    background: #ffffff;
    color: var(--accent-dark);
    box-shadow: inset 0 -2px 0 rgba(var(--accent-rgb), 0.5);
}

.page-shell--flat .floe-nav-group--tools .floe-nav-link,
.page-shell--flat-nav .floe-nav-group--tools .floe-nav-link {
    background: rgba(255, 255, 255, 0.68);
}

.page-shell--flat .status-pill,
.page-shell--flat .floe-status-chip,
.page-shell--flat .humboldt-pill,
.page-shell--flat .floe-status-filter-pill,
.page-shell--flat .raft-query-status-pill,
.page-shell--flat .tern-panel__badge,
.page-shell--flat .tern-ready-total,
.page-shell--flat .tern-status-pill,
.page-shell--flat .tern-status-badge,
.page-shell--flat .tern-chip,
.page-shell--flat .tern-catalog-chip,
.page-shell--flat .tern-packing-rate,
.page-shell--flat .glacier-selection-meter,
.page-shell--flat .glacier-difference-pill,
.page-shell--flat .humboldt-column-pill {
    border-radius: 6px;
    box-shadow: none;
    backdrop-filter: none;
}

.page-shell--flat .empty-state--boxed,
.page-shell--flat .floe-status-filter-group,
.page-shell--flat .raft-query-status-group {
    border-radius: 8px;
    background: var(--floe-local-placeholder-bg);
}

.flash-stack {
    display: grid;
    gap: 8px;
}

.flash-stack strong {
    font-size: 0.9rem;
}

.flash-list {
    margin: 0;
    padding-left: 18px;
    display: grid;
    gap: 4px;
}

.floe-flash-stack,
.humboldt-flash-stack {
    display: grid;
    gap: 12px;
}

.floe-flash,
.humboldt-flash {
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid transparent;
    font-weight: 700;
}

.floe-flash--success,
.humboldt-flash--success {
    border-color: rgba(24, 121, 78, 0.2);
    background: var(--success-soft);
    color: var(--success);
}

.floe-flash--error,
.humboldt-flash--error {
    border-color: rgba(180, 35, 24, 0.18);
    background: var(--danger-soft);
    color: var(--danger);
}

.floe-flash--info,
.humboldt-flash--info {
    border-color: rgba(var(--accent-rgb), 0.16);
    background: rgba(var(--accent-rgb), 0.08);
    color: var(--accent-dark);
}

.floe-shell-bar-wrap {
    position: sticky;
    top: 0;
    z-index: 35;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: 0;
    box-sizing: border-box;
}

.floe-shell-bar-wrap::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    border-top: 1px solid rgba(15, 23, 42, 0.04);
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
    background: var(--pgn-menu-bar-background);
    box-shadow: none;
    pointer-events: none;
}

.floe-shell-bar {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    min-height: 60px;
    padding: 10px 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    box-sizing: border-box;
}

.floe-app-menu-bar {
    position: relative;
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    min-height: 52px;
    padding: 8px 0;
}

.page-shell--flat .floe-app-menu-bar,
.page-shell--flat-nav .floe-app-menu-bar {
    min-height: 48px;
    padding: 7px 0;
}

.floe-app-menu-bar--with-current-page {
    min-height: 68px;
    padding: 6px 0 27px;
}

.page-shell--flat .floe-app-menu-bar--with-current-page,
.page-shell--flat-nav .floe-app-menu-bar--with-current-page {
    min-height: 64px;
    padding: 5px 0 26px;
}

.page-shell--flat .floe-app-menu-bar .floe-menu-button,
.page-shell--flat-nav .floe-app-menu-bar .floe-menu-button {
    min-height: 29px;
    padding-inline: 11px;
}

.page-shell--flat .floe-app-menu-bar .floe-nav-menu-item--split .floe-menu-button--split-toggle,
.page-shell--flat-nav .floe-app-menu-bar .floe-nav-menu-item--split .floe-menu-button--split-toggle {
    flex: 0 0 29px;
    width: 29px;
    min-width: 29px;
    padding: 0 8px;
}

.floe-app-menu-bar > .floe-nav-strip--hierarchical {
    grid-column: 1;
    justify-self: center;
    width: min(100%, max-content);
    max-width: 100%;
    justify-content: center;
    flex-wrap: wrap;
    overflow: visible;
}

.floe-app-menu-bar .floe-nav-group--hierarchical {
    max-width: 100%;
    justify-content: center;
    flex-wrap: wrap;
}

.floe-app-back-row {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    display: flex;
    justify-content: flex-end;
    box-sizing: border-box;
}

.floe-app-menu-bar-wrap + .floe-app-back-row {
    margin-top: 12px;
}

.floe-app-back-row + .page-stack {
    margin-top: 16px;
}

.floe-app-page-path {
    justify-self: center;
    width: fit-content;
    inline-size: fit-content;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    min-height: 28px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3px 8px;
    border: 1px solid rgba(148, 163, 184, 0.28);
    border-radius: 7px;
    background: #ffffff;
    box-shadow: none;
    text-align: center;
}

.floe-app-page-path__list {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 0;
    align-items: center;
    justify-content: center;
    width: max-content;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.floe-app-page-path__segment {
    display: inline-flex;
    align-items: center;
    min-width: 0;
}

.floe-app-page-path__label {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    color: #607080;
    font-size: 0.62rem;
    font-weight: 560;
    letter-spacing: 0.12em;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}

.floe-app-page-path__segment + .floe-app-page-path__segment::before {
    content: "|";
    margin: 0 6px;
    color: #b3c1cc;
    font-weight: 500;
}

.floe-app-page-path__segment--current .floe-app-page-path__label {
    padding: 3px 8px;
    border: 1px solid rgba(71, 85, 105, 0.24);
    border-radius: 5px;
    background: rgba(241, 245, 249, 0.98);
    color: #334155;
    font-weight: 760;
    box-shadow: none;
}

.floe-app-page-path--sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    border: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

.floe-app-page-path--sr-only + * {
    margin-top: 16px;
}

.floe-reference-toggle--carousel,
.floe-md-mode-toggle,
.brain-mode-toggle {
    justify-self: center;
    margin-right: auto;
    margin-left: auto;
}

.floe-app-back-bubble,
.floe-app-menu-back-bubble {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 16px;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 8px;
    background: #ffffff;
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 650;
    letter-spacing: 0.08em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.floe-app-back-bubble:hover,
.floe-app-back-bubble:focus-visible,
.floe-app-menu-back-bubble:hover,
.floe-app-menu-back-bubble:focus-visible {
    border-color: rgba(15, 23, 42, 0.1);
    background: #fafbfc;
    color: var(--accent-dark);
    outline: none;
}

.floe-nav-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    justify-content: space-between;
    overflow: visible;
}

.floe-nav-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.floe-nav-group--tools {
    margin-left: auto;
}

.floe-nav-group + .floe-nav-group {
    padding-left: 12px;
    border-left: 1px solid rgba(var(--accent-rgb), 0.12);
}

.floe-nav-group-label {
    flex: 0 0 auto;
    margin-right: 2px;
    color: var(--muted);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    line-height: 1;
}

.floe-nav-link {
    flex: 0 0 auto;
    min-width: 0;
    padding-inline: 18px;
    white-space: nowrap;
    justify-content: center;
    letter-spacing: 0.04em;
}

.floe-nav-link--active {
    border-color: rgba(15, 23, 42, 0.1);
    background: #f4f6f8;
    color: #334155;
}

.floe-nav-group--tools .floe-nav-link {
    border-color: rgba(var(--accent-rgb), 0.14);
    background: rgba(var(--accent-rgb), 0.05);
}

.floe-nav-group--tools .floe-nav-link:hover {
    border-color: rgba(var(--accent-rgb), 0.2);
    background: rgba(var(--accent-rgb), 0.08);
}

.floe-nav-group--tools .floe-nav-link--active {
    border-color: rgba(15, 23, 42, 0.1);
    background: #f4f6f8;
    color: #334155;
}

.floe-nav-strip--hierarchical {
    grid-column: 1;
    justify-self: center;
    display: inline-flex;
    justify-content: center;
    gap: 6px;
    flex-wrap: wrap;
    width: min(100%, max-content);
    max-width: 100%;
    padding: 0;
    border-radius: 8px;
    background: transparent;
    overflow: visible;
}

.floe-nav-group--hierarchical {
    gap: 6px;
    max-width: 100%;
    justify-content: center;
    flex-wrap: wrap;
}

.floe-nav-menu-item {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0;
    flex: 0 0 auto;
    min-width: 0;
    max-width: 100%;
}

.floe-nav-current-page-label {
    position: absolute;
    top: calc(100% + 5px);
    left: 50%;
    z-index: 0;
    width: max-content;
    max-width: min(190px, calc(100vw - 32px));
    min-height: 16px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 2px 8px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 5px;
    background: rgba(248, 250, 252, 0.9);
    color: #53687b;
    font-size: 0.52rem;
    font-weight: 520;
    letter-spacing: 0.12em;
    line-height: 1;
    text-align: center;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: none;
    opacity: 0.9;
    pointer-events: none;
    transform: translateX(-50%);
    transition: opacity 120ms ease, visibility 120ms ease;
}

.floe-nav-menu-item[data-floe-nav-open="true"] .floe-nav-current-page-label {
    visibility: hidden;
    opacity: 0;
}

.floe-menu-button {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 0;
    min-height: 32px;
    padding: 0 16px;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.94);
    color: var(--muted);
    cursor: pointer;
    font-family: inherit;
    font-size: 0.576rem;
    font-weight: 650;
    letter-spacing: 0.08em;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: none;
}

.floe-menu-button:hover,
.floe-menu-button:focus-visible {
    border-color: rgba(15, 23, 42, 0.1);
    background: #fafbfc;
    color: var(--accent-dark);
    outline: none;
}

.floe-menu-button--active,
.floe-nav-menu-item[data-floe-nav-open="true"] .floe-menu-button {
    border-color: rgba(15, 23, 42, 0.1);
    background: #f4f6f8;
    color: #334155;
}

.floe-menu-button--disabled {
    pointer-events: none;
    border-color: #ead8b4;
    background: #fff8e8;
    color: #8a6b2e;
    opacity: 0.74;
}

.floe-nav-menu-item--has-children {
    gap: 0;
}

.floe-nav-menu-item--split {
    isolation: isolate;
    flex: 0 1 auto;
}

.floe-nav-menu-item--has-children .floe-nav-link--hierarchical {
    padding-right: 14px;
}

.floe-nav-menu-item--split .floe-menu-button--split-link {
    flex: 0 1 auto;
    min-width: 0;
    border-right-color: transparent;
    border-right-width: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    padding-right: 11px;
}

.floe-nav-menu-item--split .floe-menu-button--split-toggle {
    flex: 0 0 29px;
    min-width: 29px;
    width: 29px;
    padding: 0 8px;
    border-left-color: transparent;
    border-left-width: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    margin-left: 0;
}

.floe-nav-menu-item--split .floe-menu-button--split-link:hover,
.floe-nav-menu-item--split .floe-menu-button--split-link:focus-visible,
.floe-nav-menu-item--split .floe-menu-button--split-toggle:hover,
.floe-nav-menu-item--split .floe-menu-button--split-toggle:focus-visible {
    z-index: 1;
}

.floe-nav-menu-item--split .floe-menu-button--split-link,
.floe-nav-menu-item--split .floe-menu-button--split-link:hover,
.floe-nav-menu-item--split .floe-menu-button--split-link:focus-visible,
.floe-nav-menu-item--split[data-floe-nav-open="true"] .floe-menu-button--split-link {
    border-right-color: transparent;
}

.floe-nav-menu-item--split .floe-menu-button--split-toggle,
.floe-nav-menu-item--split .floe-menu-button--split-toggle:hover,
.floe-nav-menu-item--split .floe-menu-button--split-toggle:focus-visible,
.floe-nav-menu-item--split[data-floe-nav-open="true"] .floe-menu-button--split-toggle {
    border-left-color: transparent;
}

.floe-nav-menu-item--split:hover .floe-menu-button,
.floe-nav-menu-item--split:focus-within .floe-menu-button {
    border-color: rgba(15, 23, 42, 0.1);
    background: #fafbfc;
}

.floe-nav-menu-item--split:hover .floe-menu-button--split-link,
.floe-nav-menu-item--split:focus-within .floe-menu-button--split-link,
.floe-nav-menu-item--split[data-floe-nav-open="true"] .floe-menu-button--split-link {
    border-right-color: transparent;
}

.floe-nav-menu-item--split:hover .floe-menu-button--split-toggle,
.floe-nav-menu-item--split:focus-within .floe-menu-button--split-toggle,
.floe-nav-menu-item--split[data-floe-nav-open="true"] .floe-menu-button--split-toggle {
    border-left-color: transparent;
}

.floe-nav-link--disabled {
    pointer-events: none;
}

.floe-nav-menu-toggle {
    width: auto;
    padding: 0 14px 0 16px;
    flex: 0 0 auto;
}

.floe-nav-menu-item--has-children .floe-nav-menu-toggle {
    margin-left: 0;
}

.floe-nav-menu-toggle__chevron {
    display: inline-block;
    width: 5px;
    height: 5px;
    border-right: 1.3px solid currentColor;
    border-bottom: 1.3px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    transition: transform 160ms ease;
}

.floe-nav-menu-item[data-floe-nav-open="true"] .floe-nav-menu-toggle__chevron {
    transform: rotate(225deg) translateY(-1px);
}

.floe-nav-submenu {
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    z-index: 45;
    width: max-content;
    min-width: 168px;
    max-width: min(360px, calc(100vw - 32px));
    display: grid;
    gap: 2px;
    padding: 5px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 18px 38px rgba(15, 23, 42, 0.11);
    transform: translateX(-50%);
    backdrop-filter: none;
}

.floe-nav-submenu[hidden] {
    display: none;
}

.floe-nav-submenu__group {
    position: relative;
    display: grid;
    gap: 6px;
    min-width: 0;
}

.floe-nav-submenu__group + .floe-nav-submenu__group {
    margin-top: 2px;
    padding-top: 10px;
}

.floe-nav-submenu__group + .floe-nav-submenu__group::before {
    content: "";
    position: absolute;
    top: 0;
    left: 10px;
    right: 10px;
    height: 1px;
    background: rgba(148, 163, 184, 0.3);
}

.floe-nav-submenu__group-title {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 10px;
    color: #8190a3;
    font-size: 0.55rem;
    font-weight: 400;
    letter-spacing: 0.14em;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}

.floe-menu-submenu-button {
    appearance: none;
    display: inline-flex;
    align-items: center;
    width: 100%;
    min-width: 0;
    justify-content: flex-start;
    min-height: 30px;
    padding: 0 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--muted);
    cursor: pointer;
    font-family: inherit;
    font-size: 0.64rem;
    font-weight: 650;
    letter-spacing: 0.08em;
    line-height: 1;
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    overflow-wrap: normal;
    word-break: normal;
    box-shadow: none;
    text-decoration: none;
    text-transform: uppercase;
}

.floe-menu-submenu-button:hover,
.floe-menu-submenu-button:focus-visible {
    background: rgba(var(--accent-rgb), 0.08);
    color: var(--accent-dark);
    outline: none;
}

.floe-menu-submenu-button--active {
    border-color: rgba(15, 23, 42, 0.1);
    background: #f4f6f8;
    color: #334155;
}

.floe-menu-submenu-button--disabled {
    pointer-events: none;
    background: #fff8e8;
    color: #8a6b2e;
    opacity: 0.74;
}

.card-header {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: start;
    margin-bottom: 12px;
}

.card-header > div {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.card-header h2 {
    font-size: var(--floe-card-title-font-size);
    font-weight: var(--floe-card-title-font-weight);
    letter-spacing: var(--floe-card-title-letter-spacing);
    line-height: var(--floe-card-title-line-height);
}

.card-header__side {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
    min-width: 0;
}

.subsection-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin: 10px 0 8px;
}

.subsection-header h3 {
    margin: 0;
    font-size: 0.96rem;
}

.mini-stats {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.mini-stats span {
    padding: 6px 10px;
    border-radius: var(--floe-pill-radius);
    background: rgba(19, 32, 43, 0.04);
    border: 1px solid var(--panel-border);
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 700;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}

.floe-dashboard-empty-state {
    border-style: dashed;
    border-color: var(--floe-local-placeholder-border);
    background: var(--floe-local-placeholder-bg);
    color: var(--floe-local-placeholder-text);
    box-shadow: none;
}

.floe-dashboard-placeholder-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.floe-dashboard-placeholder-card {
    display: grid;
    gap: 14px;
    align-content: start;
    min-height: 220px;
    border-style: dashed;
    border-color: var(--floe-local-placeholder-border);
    background: var(--floe-local-placeholder-bg);
    color: var(--floe-local-placeholder-text);
}

.floe-dashboard-placeholder-card__head {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    justify-content: space-between;
}

.floe-dashboard-placeholder-card__head h3 {
    margin: 2px 0 0;
    color: var(--floe-local-placeholder-strong);
    font-size: 1.02rem;
    line-height: 1.1;
    letter-spacing: 0;
}

.floe-dashboard-placeholder-card p {
    margin: 0;
}

.floe-dashboard-placeholder-card__viz {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    align-items: end;
    min-height: 92px;
    margin-top: auto;
}

.floe-dashboard-placeholder-card__viz span {
    display: block;
    min-height: 36px;
    border: 1px dashed var(--floe-local-placeholder-border);
    border-radius: 8px 8px 4px 4px;
    background: rgba(100, 116, 139, 0.08);
}

.floe-dashboard-placeholder-card__viz span:nth-child(1) {
    height: 42px;
}

.floe-dashboard-placeholder-card__viz span:nth-child(2) {
    height: 74px;
}

.floe-dashboard-placeholder-card__viz span:nth-child(3) {
    height: 58px;
}

.floe-dashboard-tab-shell {
    display: grid;
    gap: 8px;
}

.floe-dashboard-bar {
    display: grid;
    gap: 12px;
    padding: 14px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 18px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(var(--accent-rgb), 0.05) 100%);
    box-shadow: var(--shadow-soft);
}

.floe-dashboard-bar--tabs {
    border-color: rgba(var(--accent-rgb), 0.18);
    background: rgba(var(--accent-rgb), 0.12);
    box-shadow:
        0 16px 30px rgba(15, 23, 42, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.66);
}

.floe-dashboard-bar__meta {
    min-width: 0;
}

.floe-dashboard-meta-row {
    display: flex;
    justify-content: flex-end;
}

.floe-dashboard-meta-badge {
    max-width: min(100%, 380px);
    justify-content: flex-end;
    text-align: right;
}

.floe-dashboard-content {
    display: grid;
    gap: 12px;
    min-width: 0;
}

.floe-dashboard-section {
    display: grid;
    gap: 12px;
}

.floe-dashboard-search-form,
.floe-dashboard-results {
    display: grid;
    gap: 10px;
}

.floe-dashboard-search-grid {
    display: grid;
    gap: 10px 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.floe-dashboard-search-form .field {
    display: grid;
    gap: 4px;
    margin: 0;
}

.floe-dashboard-search-form .field span {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.floe-dashboard-search-form .field select {
    width: 100%;
    min-height: 34px;
    padding-inline: 10px;
    background: rgba(255, 255, 255, 0.94);
    font-size: 0.8rem;
}

.floe-dashboard-search-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 4px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.floe-dashboard-search-actions .button,
.floe-dashboard-search-grid > .button {
    min-height: var(--floe-filter-action-height);
    min-width: var(--floe-filter-action-min-width);
    padding-inline: var(--floe-filter-action-padding-x);
    border-radius: 8px;
    font-size: var(--floe-filter-action-font-size);
    font-weight: var(--floe-filter-action-font-weight);
    letter-spacing: var(--floe-filter-action-letter-spacing);
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}

.floe-dashboard-search-actions .button:not(.button--ghost):not(.button--danger):not(.button--clear),
.floe-dashboard-search-grid > .button:not(.button--ghost):not(.button--danger):not(.button--clear) {
    border-color: var(--accent);
    background: var(--accent);
    color: #ffffff;
}

.floe-dashboard-search-actions .button:not(.button--ghost):not(.button--danger):not(.button--clear):hover,
.floe-dashboard-search-actions .button:not(.button--ghost):not(.button--danger):not(.button--clear):focus-visible,
.floe-dashboard-search-grid > .button:not(.button--ghost):not(.button--danger):not(.button--clear):hover,
.floe-dashboard-search-grid > .button:not(.button--ghost):not(.button--danger):not(.button--clear):focus-visible {
    border-color: var(--accent-dark);
    background: var(--accent-dark);
    color: #ffffff;
}

.floe-dashboard-results .row-meta {
    margin: 0;
}

.page-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    padding: 12px 14px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 8px;
    background: var(--floe-surface-toolbar);
}

.page-toolbar__title h2,
.page-toolbar__title p {
    margin: 0;
}

.floe-card-intro,
.antarctica-card__intro {
    display: grid;
    gap: 4px;
    margin-bottom: 14px;
}

.floe-helper-card,
.helper-card {
    padding: 10px 12px;
    border: 1px solid #d9e7ec;
    border-radius: 14px;
    background: rgba(248, 251, 252, 0.9);
    color: var(--muted);
    line-height: 1.45;
    font-size: 0.8rem;
}

.floe-helper-card strong,
.helper-card strong {
    display: block;
    margin-bottom: 4px;
    color: var(--text);
}

.floe-helper-card p,
.helper-card p {
    margin: 4px 0 0;
}

.floe-helper-card__head,
.helper-card__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.floe-helper-card--danger,
.helper-card--danger {
    background: var(--danger-soft);
    border-color: #f1c4c0;
    color: #7a271a;
}

.floe-helper-card--info,
.helper-card--info {
    background: #f7fafc;
    border-color: #dce5ec;
    color: #4c6072;
}

.floe-helper-card--info strong,
.helper-card--info strong {
    color: #435667;
}

.page-shell--flat .floe-helper-card--info,
.page-shell--flat .helper-card--info {
    background: #f7fafc;
    border-color: #dce5ec;
}

.floe-dashboard-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.floe-dashboard-tab {
    position: relative;
    flex: 1 1 220px;
    min-height: 40px;
    border-radius: 16px;
    border-color: rgba(var(--accent-rgb), 0.08);
    background: rgba(255, 255, 255, 0.82);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.56);
    justify-content: center;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    transition:
        transform 160ms ease,
        background 160ms ease,
        border-color 160ms ease,
        box-shadow 160ms ease,
        color 160ms ease;
}

.floe-dashboard-tab:hover {
    border-color: rgba(var(--accent-rgb), 0.18);
    background: rgba(255, 255, 255, 0.96);
    color: var(--accent-dark);
}

.floe-dashboard-tab::after {
    content: "";
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--accent) 0%, var(--accent-secondary) 100%);
    opacity: 0;
    transform: scaleX(0.5);
    transition: opacity 160ms ease, transform 160ms ease;
}

.floe-dashboard-tab__label {
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.floe-dashboard-tab--active {
    border-color: rgba(var(--accent-rgb), 0.3);
    background:
        linear-gradient(135deg, rgba(var(--accent-rgb), 0.2) 0%, rgba(var(--accent-secondary-rgb), 0.16) 100%);
    color: var(--accent-dark);
    box-shadow:
        0 14px 26px rgba(var(--accent-rgb), 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.56);
}

.floe-dashboard-tab--active::after {
    opacity: 1;
    transform: scaleX(1);
}

.floe-stack,
.raft-stack {
    display: grid;
    gap: 10px;
}

.floe-kpi-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
}

.floe-kpi-grid--lead {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.floe-kpi-grid--results {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.floe-stack--tight,
.raft-stack--tight {
    gap: 6px;
}

.floe-kpi-tile {
    min-height: 64px;
    padding: 8px 10px;
    border-radius: 8px;
    border: 1px solid rgba(var(--accent-rgb), 0.14);
    background: var(--floe-surface-toolbar);
}

.floe-kpi-tile__label {
    display: block;
    color: var(--floe-card-header-label-color);
    font-size: var(--floe-card-header-label-font-size);
    font-weight: var(--floe-card-header-label-font-weight);
    letter-spacing: var(--floe-card-header-label-letter-spacing);
    line-height: var(--floe-card-header-label-line-height);
    text-transform: uppercase;
}

.floe-kpi-tile__value {
    display: block;
    margin-top: 2px;
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--text);
    letter-spacing: -0.04em;
}

.floe-kpi-tile--result {
    min-height: 104px;
    display: grid;
    align-content: start;
    padding: 12px 14px;
    min-width: 0;
}

.floe-kpi-tile--result .floe-kpi-tile__label {
    font-size: 0.72rem;
}

.floe-kpi-tile--result .floe-kpi-tile__value {
    margin-top: 6px;
    font-size: clamp(1.35rem, 1.9vw, 1.95rem);
}

.floe-dashboard-panel-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.floe-dashboard-panel-grid--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.floe-dashboard-panel-grid--single {
    grid-template-columns: minmax(0, 1fr);
}

.floe-dashboard-panel-grid > * {
    min-width: 0;
}

.floe-dashboard-surface {
    display: grid;
    gap: 12px;
    align-content: start;
    padding: 14px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 20px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(var(--accent-rgb), 0.04) 100%);
    box-shadow: var(--shadow-soft);
}

.floe-dashboard-surface--soft {
    border-color: rgba(148, 163, 184, 0.22);
    background: rgba(248, 250, 252, 0.92);
}

.floe-dashboard-surface--compact {
    padding: 10px 14px;
    gap: 10px;
}

.floe-dashboard-surface__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.floe-dashboard-surface__header h2,
.floe-dashboard-surface__header h3 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.08;
    letter-spacing: -0.03em;
}

.floe-dashboard-surface__copy {
    margin: 4px 0 0;
    color: var(--muted);
    font-size: 0.82rem;
    line-height: 1.4;
}

.floe-dashboard-choice-bar {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
    min-width: 0;
}

.floe-dashboard-choice-bar__label {
    margin: 0;
    flex: 0 0 auto;
}

.floe-dashboard-choice-group {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    min-width: 0;
}

.floe-dashboard-choice-button {
    min-width: 0;
    min-height: 34px;
    padding-inline: 14px;
    justify-content: center;
}

.floe-dashboard-choice-button--active {
    border-color: rgba(var(--accent-rgb), 0.2);
    background: rgba(var(--accent-rgb), 0.12);
    color: var(--accent-dark);
}

.floe-dashboard-choice-button--disabled:disabled,
.floe-dashboard-choice-button--disabled[aria-disabled="true"] {
    opacity: 0.65;
    cursor: not-allowed;
}

.floe-metric-card-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.floe-metric-card-grid--single {
    grid-template-columns: minmax(0, 1fr);
}

.floe-metric-card {
    display: grid;
    gap: 10px;
    min-width: 0;
    min-height: 160px;
    padding: 14px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 8px;
    background: var(--floe-surface-toolbar);
}

.floe-metric-card--warm {
    border-color: rgba(245, 158, 11, 0.18);
    background: rgba(255, 251, 235, 0.94);
}

.floe-metric-card--danger {
    border-color: rgba(239, 68, 68, 0.18);
    background: rgba(254, 242, 242, 0.94);
}

.floe-metric-card--success {
    border-color: rgba(34, 197, 94, 0.18);
    background: rgba(240, 253, 244, 0.94);
}

.floe-metric-card--neutral {
    border-color: rgba(148, 163, 184, 0.2);
    background: rgba(248, 250, 252, 0.96);
}

.floe-metric-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.floe-metric-card__label-row {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.floe-metric-card__label {
    display: block;
    color: var(--floe-card-header-label-color);
    font-size: var(--floe-card-header-label-font-size);
    font-weight: var(--floe-card-header-label-font-weight);
    letter-spacing: var(--floe-card-header-label-letter-spacing);
    line-height: var(--floe-card-header-label-line-height);
    text-transform: uppercase;
}

.floe-metric-card__value {
    display: block;
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 800;
    line-height: 0.95;
    letter-spacing: -0.05em;
    color: var(--text);
}

.floe-metric-card__meta,
.floe-metric-card__note {
    margin: 0;
    color: var(--muted);
    font-size: 0.78rem;
    line-height: 1.35;
}

.floe-metric-card__submetrics {
    display: grid;
    gap: 8px;
    margin-top: auto;
}

.floe-metric-card__submetric {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    padding-top: 8px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.floe-metric-card__submetric-label {
    color: var(--muted);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.floe-metric-card__submetric-value {
    color: var(--text);
    font-size: 0.95rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.02em;
}

.floe-info-anchor {
    position: relative;
    display: inline-flex;
}

.floe-info-trigger {
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid rgba(148, 163, 184, 0.28);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    color: rgba(148, 163, 184, 0.92);
    font-size: 0.65rem;
    font-weight: 800;
    line-height: 1;
    cursor: help;
    transition: border-color 140ms ease, color 140ms ease, background 140ms ease;
}

.floe-info-trigger:hover,
.floe-info-trigger:focus-visible,
.floe-info-trigger[data-floe-info-open="true"] {
    border-color: rgba(var(--accent-rgb), 0.22);
    background: rgba(255, 255, 255, 0.96);
    color: var(--accent-dark);
}

.floe-info-trigger:focus-visible {
    outline: 2px solid rgba(var(--accent-rgb), 0.24);
    outline-offset: 2px;
}

.floe-info-content[hidden] {
    display: none;
}

.floe-info-popover {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1305;
    width: min(280px, calc(100vw - 24px));
    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid rgba(15, 23, 42, 0.1);
    background: rgba(15, 23, 42, 0.98);
    color: #fff;
    box-shadow: 0 18px 34px rgba(15, 23, 42, 0.24);
    pointer-events: none;
    opacity: 0;
    transform: translateY(4px);
    transition: opacity 140ms ease, transform 140ms ease;
}

.floe-info-popover[data-floe-info-visible="true"] {
    pointer-events: auto;
    opacity: 1;
    transform: translateY(0);
}

.floe-info-popover__body {
    display: grid;
    gap: 6px;
}

.floe-info-popover__body strong {
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.floe-info-popover__body p {
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 0.74rem;
    line-height: 1.35;
}

.floe-stage-board {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.floe-stage-column {
    display: grid;
    gap: 10px;
    min-width: 0;
    padding: 14px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.88);
}

.floe-stage-column__header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
}

.floe-stage-column__title {
    margin: 0;
    font-size: 0.84rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text);
}

.floe-stage-column__count {
    color: var(--muted);
    font-size: 0.78rem;
    font-weight: 700;
}

.floe-stage-list {
    display: grid;
    gap: 8px;
}

.floe-stage-item {
    display: grid;
    gap: 8px;
    min-width: 0;
    padding: 12px;
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.88);
}

.floe-stage-item--tone-1 {
    border-color: rgba(239, 68, 68, 0.18);
    background: rgba(254, 242, 242, 0.96);
}

.floe-stage-item--tone-2 {
    border-color: rgba(249, 115, 22, 0.18);
    background: rgba(255, 247, 237, 0.96);
}

.floe-stage-item--tone-3 {
    border-color: rgba(245, 158, 11, 0.18);
    background: rgba(255, 251, 235, 0.96);
}

.floe-stage-item--tone-4 {
    border-color: rgba(132, 204, 22, 0.18);
    background: rgba(247, 254, 231, 0.96);
}

.floe-stage-item--tone-5 {
    border-color: rgba(56, 189, 248, 0.18);
    background: rgba(240, 249, 255, 0.96);
}

.floe-stage-item--tone-6 {
    border-color: rgba(99, 102, 241, 0.18);
    background: rgba(238, 242, 255, 0.96);
}

.floe-stage-item--tone-7 {
    border-color: rgba(34, 197, 94, 0.18);
    background: rgba(240, 253, 244, 0.96);
}

.floe-stage-item--tone-8 {
    border-color: rgba(22, 163, 74, 0.22);
    background: rgba(220, 252, 231, 0.98);
}

.floe-stage-item--neutral {
    border-color: rgba(148, 163, 184, 0.22);
    background: rgba(248, 250, 252, 0.96);
}

.floe-stage-item__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
}

.floe-stage-item__label-row {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.floe-stage-item__label {
    color: var(--muted);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 1.2;
    text-transform: uppercase;
}

.floe-stage-item__value {
    display: block;
    color: var(--text);
    font-size: 1.5rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.04em;
}

.floe-stage-item__note {
    margin: 0;
    color: var(--muted);
    font-size: 0.74rem;
    line-height: 1.3;
}

.floe-dashboard-map-placeholder {
    display: grid;
    place-items: center;
    min-height: 100%;
    padding: 16px;
    border: 1px dashed var(--floe-local-placeholder-border);
    border-radius: 8px;
    background: var(--floe-local-placeholder-bg);
}

.floe-dashboard-map-placeholder__label {
    color: var(--floe-local-placeholder-text);
    font-size: 0.78rem;
    font-weight: 500;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.floe-us-state-heatmap {
    display: grid;
    gap: 14px;
    min-height: 100%;
}

.floe-us-state-heatmap--empty {
    min-height: 100%;
}

.floe-us-state-heatmap__canvas {
    padding: 14px;
    border: 1px solid rgba(var(--accent-rgb), 0.14);
    border-radius: 18px;
    background:
        radial-gradient(circle at top left, rgba(var(--accent-rgb), 0.12), transparent 28%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.92));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

.floe-us-state-heatmap__svg {
    display: block;
    width: 100%;
    height: auto;
}

.floe-us-state-heatmap__nation {
    fill: rgba(255, 255, 255, 0.62);
    stroke: rgba(148, 163, 184, 0.14);
    stroke-width: 6;
    stroke-linejoin: round;
}

.floe-us-state-heatmap__state,
.floe-us-state-heatmap__legend-swatch {
    fill: rgba(226, 232, 240, 0.92);
    stroke: rgba(148, 163, 184, 0.55);
}

.floe-us-state-heatmap__state {
    stroke-width: 1.35;
    stroke-linejoin: round;
    transition: fill 160ms ease, stroke 160ms ease, stroke-width 160ms ease;
    cursor: help;
}

.floe-us-state-heatmap__state:hover,
.floe-us-state-heatmap__state:focus-visible,
.floe-us-state-heatmap__state[data-floe-info-open="true"] {
    stroke: rgba(var(--accent-rgb), 0.72);
    stroke-width: 2;
    outline: none;
}

.floe-us-state-heatmap__state--level-0,
.floe-us-state-heatmap__legend-swatch--level-0 {
    fill: #ffffff;
    stroke: rgba(148, 163, 184, 0.55);
}

.floe-us-state-heatmap__state--level-1,
.floe-us-state-heatmap__legend-swatch--level-1 {
    fill: rgba(var(--accent-rgb), 0.18);
    stroke: rgba(var(--accent-rgb), 0.22);
}

.floe-us-state-heatmap__state--level-2,
.floe-us-state-heatmap__legend-swatch--level-2 {
    fill: rgba(var(--accent-rgb), 0.34);
    stroke: rgba(var(--accent-rgb), 0.4);
}

.floe-us-state-heatmap__state--level-3,
.floe-us-state-heatmap__legend-swatch--level-3 {
    fill: rgba(var(--accent-rgb), 0.54);
    stroke: rgba(var(--accent-rgb), 0.62);
}

.floe-us-state-heatmap__state--level-4,
.floe-us-state-heatmap__legend-swatch--level-4 {
    fill: rgba(var(--accent-rgb), 0.82);
    stroke: rgba(var(--accent-rgb), 0.9);
}

.floe-info-popover__body .floe-us-state-heatmap__tooltip-label {
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 0.74rem;
    font-weight: 600;
    line-height: 1.35;
}

.floe-info-popover__body .floe-us-state-heatmap__tooltip-value {
    font-size: 0.98rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.1;
    text-transform: none;
}

.floe-us-state-heatmap__note {
    margin: 0;
    justify-self: start;
    padding: 8px 12px;
    border: 1px solid rgba(var(--accent-rgb), 0.14);
    border-radius: var(--floe-pill-radius);
    background: rgba(var(--accent-rgb), 0.08);
    color: var(--muted);
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1.2;
}

.floe-data-table__numeric {
    text-align: center;
}

.floe-data-table__total-row td {
    font-weight: 620;
    background: rgba(243, 248, 253, 0.98);
}

.floe-dashboard-table-note {
    margin: 0;
    color: var(--muted);
    font-size: 0.76rem;
    line-height: 1.3;
}

.floe-summary-row,
.raft-validation-row {
    display: grid;
    gap: 10px;
    width: 100%;
    min-width: 0;
    padding: 12px 14px;
    border: 1px solid var(--panel-border);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.84);
    box-sizing: border-box;
}

.floe-summary-row p,
.raft-validation-row p {
    margin: 4px 0 0;
    color: var(--muted);
}

.floe-summary-row__meta,
.raft-validation-row__head {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
}

.floe-summary-row--compact {
    gap: 8px;
    min-width: 0;
}

.floe-summary-row--compact > div {
    min-width: 0;
}

.floe-summary-row--compact p {
    overflow-wrap: break-word;
    word-break: normal;
}

.floe-summary-row--compact .floe-summary-row__meta {
    gap: 8px;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
}

.floe-summary-row--compact .floe-summary-row__meta small {
    display: block;
}

.floe-summary-row__action {
    margin: 0;
}

.floe-queue-link {
    color: inherit;
    text-decoration: none;
    transition: border-color 160ms ease, transform 160ms ease, background 160ms ease;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
}

.floe-queue-link:hover {
    transform: translateY(-1px);
    border-color: rgba(var(--accent-rgb), 0.22);
}

.floe-queue-link--active {
    border-color: rgba(var(--accent-rgb), 0.22);
    background: rgba(var(--accent-rgb), 0.08);
}

.floe-queue-link__names {
    display: grid;
    gap: 3px;
    min-width: 0;
    align-content: center;
}

.floe-queue-link__names span {
    font-size: 0.82rem;
    line-height: 1.2;
    color: var(--text);
}

.floe-queue-link__meta {
    justify-content: flex-start;
    align-self: center;
    gap: 2px;
    flex-direction: column;
    align-items: flex-end;
    justify-items: end;
}

.floe-queue-link__meta-text {
    font-size: 0.67rem;
    line-height: 1.15;
    color: var(--muted);
    white-space: nowrap;
}

.floe-queue-toolbar__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.floe-queue-header {
    display: grid;
    gap: 10px;
    margin-bottom: 12px;
}

.floe-queue-header .eyebrow {
    margin: 0;
}

.floe-queue-divider {
    height: 1px;
    background: rgba(var(--accent-rgb), 0.08);
}

.floe-queue-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.floe-actionbar-inline {
    --floe-actionbar-inline-gap: 6px;
    --floe-actionbar-inline-padding-x: 8px;
    --floe-actionbar-inline-padding-y: 6px;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: var(--floe-actionbar-inline-gap);
    overflow: hidden;
    padding: var(--floe-actionbar-inline-padding-y) var(--floe-actionbar-inline-padding-x);
    white-space: nowrap;
}

.floe-actionbar-inline > * {
    min-width: 0;
}

.floe-actionbar-inline :is(input, select, button, a) {
    min-width: 0;
}

.floe-actionbar-inline__fluid {
    flex: 1 1 auto;
    min-width: 0;
}

.floe-actionbar-inline__shrink {
    flex: 0 1 auto;
    min-width: 0;
}

.floe-actionbar-inline__fixed,
.floe-actionbar-inline__segment {
    flex: 0 0 auto;
    min-width: max-content;
}

.floe-actionbar-inline__segment > * {
    flex: 0 0 auto;
    min-width: max-content;
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
}

.floe-actionbar-period-group {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    flex-wrap: nowrap;
    gap: var(--floe-actionbar-period-gap, 8px);
    min-width: max-content;
    white-space: nowrap;
}

.floe-actionbar-period-group > * {
    flex: 0 0 auto;
    min-width: 0;
}

.floe-filter-card-panel {
    box-sizing: border-box;
    min-width: 0;
    display: grid;
    gap: var(--floe-filter-card-panel-gap);
    padding: var(--floe-filter-card-panel-padding);
    border: 1px solid var(--floe-filter-card-panel-border);
    border-radius: var(--floe-filter-card-panel-radius);
    background: var(--floe-filter-card-panel-bg);
}

.floe-filter-card-range {
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(var(--floe-input-width-sm), 1fr));
    align-items: end;
    gap: 8px;
}

.floe-filter-card-range--date {
    grid-template-columns: repeat(2, max-content);
    width: max-content;
    max-width: 100%;
    gap: 10px;
}

.floe-filter-card-actions {
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 8px;
}

.floe-filter-card-actions :where(button, a, .button, .floe-filter-card-action) {
    box-sizing: border-box;
    min-height: var(--floe-filter-card-action-height);
    min-width: var(--floe-filter-card-action-min-width);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-inline: var(--floe-filter-card-action-padding-x);
    border-radius: 8px;
    font-size: var(--floe-filter-card-action-font-size);
    font-weight: var(--floe-filter-card-action-font-weight);
    letter-spacing: var(--floe-filter-card-action-letter-spacing);
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
}

.floe-filter-card-actions :where(.floe-filter-card-action--apply, button[type="submit"]:first-child, .button--primary:first-child) {
    border-color: var(--accent);
    background: var(--accent);
    color: #ffffff;
}

.floe-filter-card-actions :where(.floe-filter-card-action--apply, button[type="submit"]:first-child, .button--primary:first-child):hover,
.floe-filter-card-actions :where(.floe-filter-card-action--apply, button[type="submit"]:first-child, .button--primary:first-child):focus-visible {
    border-color: var(--accent-dark);
    background: var(--accent-dark);
    color: #ffffff;
}

.floe-filter-card-actions :where(.floe-filter-card-action--clear, .button--clear) {
    border-color: var(--panel-border);
    background: #ffffff;
    color: var(--muted);
}

.floe-queue-toolbar__side {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-left: auto;
}

.floe-queue-toolbar .floe-queue-toolbar__meta {
    margin-top: 0;
}

.floe-queue-jump-link {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    min-height: 24px;
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--accent-700);
    text-decoration: none;
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.floe-queue-jump-link:hover {
    text-decoration: underline;
}

.floe-review-meta-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

.floe-review-meta-grid__item {
    padding: 9px 10px;
    border: 1px solid rgba(115, 135, 150, 0.18);
    border-radius: 8px;
    background: #f8fbfc;
    display: grid;
    gap: 3px;
    align-content: start;
    min-height: 54px;
}

.floe-review-meta-grid__item span {
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--muted);
}

.floe-review-meta-grid__item strong {
    font-size: 0.8rem;
    line-height: 1.2;
    color: var(--text);
    word-break: break-word;
}

.floe-review-meta-grid__item--wide {
    grid-column: span 2;
    min-height: 54px;
}

.floe-pill {
    display: inline-flex;
    align-items: center;
    min-height: var(--floe-pill-min-height);
    padding: 0 var(--floe-pill-padding-x);
    border-radius: var(--floe-pill-radius);
    border: 1px solid var(--panel-border);
    background: rgba(255, 255, 255, 0.84);
    color: var(--muted);
    font-size: var(--floe-pill-font-size);
    font-weight: var(--floe-pill-font-weight);
    letter-spacing: var(--floe-pill-letter-spacing);
    line-height: 1.1;
}

.floe-pill--meta {
    min-height: 20px;
    padding: 0 7px;
    font-size: 0.64rem;
    font-weight: var(--floe-pill-font-weight);
    letter-spacing: var(--floe-pill-letter-spacing);
    color: var(--muted);
    background: rgba(255, 255, 255, 0.96);
    border-color: rgba(115, 135, 150, 0.22);
    white-space: nowrap;
}

.floe-meta-pill,
.floe-dashboard-meta-badge,
.floe-refresh-status,
.refresh-status {
    max-width: 100%;
    display: inline-flex;
    align-items: center;
    min-height: var(--floe-meta-pill-height);
    padding: 0 var(--floe-meta-pill-padding-x);
    border: 1px solid var(--floe-meta-pill-border);
    border-radius: var(--floe-pill-radius);
    background: var(--floe-meta-pill-bg);
    color: var(--floe-meta-pill-color);
    font-size: 0.68rem;
    font-weight: 460;
    letter-spacing: 0.02em;
    line-height: 1.15;
    white-space: nowrap;
    box-shadow: none;
}

.floe-meta-pill strong,
.floe-dashboard-meta-badge strong,
.floe-refresh-status strong,
.refresh-status strong {
    color: var(--text);
    font-weight: 620;
}

.floe-meta-strip {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
}

.floe-review-section-title {
    font-size: var(--floe-card-header-label-font-size);
    font-weight: var(--floe-card-header-label-font-weight);
    letter-spacing: var(--floe-card-header-label-letter-spacing);
    line-height: var(--floe-card-header-label-line-height);
    text-transform: uppercase;
    color: var(--floe-card-header-label-color);
    margin-bottom: 10px;
}

.floe-review-section-heading {
    display: flex;
    align-items: center;
    gap: 8px;
}

.floe-review-shell {
    display: grid;
    gap: 14px;
    padding: 14px;
    border: 1px solid #dce7ef;
    border-radius: 10px;
    background: #f4f8fa;
}

.floe-review-divider-block,
.floe-review-panel-block,
.floe-review-groups-block {
    display: grid;
    gap: 12px;
    padding: 12px;
    margin-top: 0;
    border: 1px solid #e3ebf1;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.76);
}

.floe-review-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 12px;
}

.floe-review-card {
    display: grid;
    gap: 12px;
    padding: 13px;
    border: 1px solid rgba(115, 135, 150, 0.2);
    border-radius: 8px;
    background: #ffffff;
}

.floe-review-card__top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
}

.floe-result-badge {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 6px;
    border: 1px solid rgba(115, 135, 150, 0.2);
    background: #eef5f6;
    color: var(--accent-dark);
    font-size: 0.7rem;
    font-weight: 700;
    white-space: nowrap;
}

.floe-review-card h3 {
    margin: 0;
    font-size: 1.05rem;
    line-height: 1.15;
    flex: 1 1 auto;
    min-width: 0;
}

.floe-review-assign-control {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
}

.floe-review-assign-control span {
    font-size: 0.74rem;
    font-weight: 700;
    color: var(--muted);
    white-space: nowrap;
}

.floe-group-picker {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px;
    border: 1px solid rgba(115, 135, 150, 0.22);
    border-radius: 8px;
    background: #f6f9fb;
}

.floe-group-picker__option {
    position: relative;
    display: inline-flex;
}

.floe-group-picker__option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.floe-group-picker__option span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--muted);
    transition: background 140ms ease, color 140ms ease, box-shadow 140ms ease;
}

.floe-group-picker__option input:checked + span {
    background: #dfecee;
    color: var(--accent-dark);
    box-shadow: inset 0 0 0 1px rgba(93, 143, 158, 0.22);
}

.floe-review-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    font-size: 0.76rem;
    color: var(--muted);
}

.floe-disclosure {
    display: grid;
    gap: 6px;
}

.floe-disclosure summary {
    cursor: pointer;
    list-style: none;
    font-size: 0.76rem;
    color: var(--muted);
}

.floe-disclosure summary::-webkit-details-marker {
    display: none;
}

.floe-disclosure summary::before {
    content: ">";
    display: inline-block;
    margin-right: 6px;
    color: var(--muted);
    transition: transform 140ms ease;
}

.floe-disclosure[open] summary::before {
    transform: rotate(90deg);
}

.floe-disclosure__list {
    display: grid;
    gap: 4px;
    padding-left: 14px;
}

.floe-disclosure__item {
    font-size: 0.74rem;
    line-height: 1.3;
    color: var(--text);
}

.floe-review-info-list {
    display: grid;
    gap: 4px;
}

.floe-review-info-list div {
    display: flex;
    gap: 6px;
    align-items: baseline;
    flex-wrap: wrap;
}

.floe-review-info-list span {
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: var(--muted);
}

.floe-review-info-list strong {
    font-size: 0.71rem;
    line-height: 1.25;
    word-break: break-word;
    font-weight: 400;
}

.floe-review-info-list--card {
    gap: 5px;
}

.floe-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.floe-pills--reasons-meta {
    gap: 6px;
    align-items: flex-start;
}

.floe-pills--reasons-meta .floe-pill--reason {
    min-height: 24px;
    padding: 0 8px;
    border-color: rgba(115, 135, 150, 0.24);
    background: #f9fbfc;
    color: var(--text);
    font-size: 0.68rem;
    line-height: 1.2;
    font-weight: 700;
}

.floe-review-panel-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 12px;
}

.floe-review-panel,
.raft-review-group-panel {
    display: grid;
    gap: 12px;
    padding: 14px;
    border: 1px solid rgba(115, 135, 150, 0.2);
    border-radius: 8px;
    background: #f8fbfc;
}

.floe-review-panel[hidden],
.raft-review-group-panel[hidden] {
    display: none;
}

.floe-review-chip-list,
.raft-review-group-panel__members {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 6px;
}

.floe-review-panel__body,
.raft-review-group-panel__body {
    display: grid;
    gap: 12px;
}

.floe-review-panel__body:empty,
.raft-review-group-panel__body:empty {
    display: none;
}

.floe-review-chip,
.raft-review-member-chip {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 8px;
    border-radius: 6px;
    background: #ffffff;
    border: 1px solid rgba(115, 135, 150, 0.22);
    font-size: 0.7rem;
    color: var(--text);
}

.floe-option-stack,
.raft-review-primary-picker {
    display: grid;
    gap: 8px;
}

.floe-option-stack[hidden],
.raft-review-primary-picker[hidden] {
    display: none;
}

.floe-option-stack__title,
.raft-review-primary-picker__title {
    margin: 0;
    font-size: 0.76rem;
    font-weight: 620;
    color: var(--muted);
}

.floe-option-list,
.raft-review-primary-options {
    display: grid;
    gap: 6px;
}

.floe-option-card,
.raft-review-primary-option {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border: 1px solid rgba(115, 135, 150, 0.2);
    border-radius: 8px;
    background: #ffffff;
    font-size: 0.82rem;
    color: var(--text);
}

.floe-option-card[hidden],
.raft-review-primary-option[hidden] {
    display: none;
}

.floe-progress-banner {
    display: grid;
    gap: 12px;
    padding: 14px 16px;
    border: 1px solid rgba(var(--accent-rgb), 0.1);
    border-radius: 16px;
    background: rgba(var(--accent-rgb), 0.06);
}

.floe-progress-banner__headline {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 10px;
}

.floe-progress-banner__headline strong {
    font-size: 2rem;
    line-height: 1;
    letter-spacing: -0.04em;
    color: var(--text);
}

.floe-progress-banner__headline span {
    font-size: 1rem;
    line-height: 1.2;
    color: var(--text);
    font-weight: 600;
}

.floe-progress-track-group {
    display: grid;
    gap: 8px;
}

.floe-progress-track__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    font-size: 0.82rem;
    color: var(--muted);
}

.floe-progress-track__meta strong {
    font-size: 0.88rem;
    color: var(--text);
}

.floe-progress-track {
    width: 100%;
    height: 10px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(var(--accent-rgb), 0.12);
}

.floe-progress-track__fill {
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--accent) 0%, var(--accent-secondary) 100%);
}

.floe-fileline {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    color: var(--text);
}

.floe-fileline span {
    color: var(--text);
}

.floe-fileline--compact span {
    font-size: 0.72rem;
    line-height: 1.15;
    color: var(--muted);
}

.floe-icon-badge-link {
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 999px;
    background: rgba(var(--accent-rgb), 0.06);
    color: var(--accent-dark);
    text-decoration: none;
    font-size: 0.8rem;
    line-height: 1;
    transition: background 140ms ease, border-color 140ms ease, transform 140ms ease;
}

.floe-icon-badge-link:hover {
    background: rgba(var(--accent-rgb), 0.11);
    border-color: rgba(var(--accent-rgb), 0.18);
    transform: translateY(-1px);
}

.floe-icon-badge-link span {
    display: block;
    transform: translateY(-1px);
}

.floe-bulk-toolbar,
.raft-assignment-bulk-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px 18px;
    align-items: center;
    padding: 14px 16px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 8px;
    background: var(--floe-surface-toolbar);
}

.floe-bulk-toolbar__selection,
.raft-assignment-bulk-toolbar__selection {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    align-items: center;
    min-width: 0;
}

.floe-bulk-toolbar__summary,
.raft-assignment-bulk-toolbar__summary {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.floe-bulk-toolbar__summary strong,
.raft-assignment-bulk-toolbar__summary strong {
    font-size: 1rem;
    line-height: 1.1;
    color: var(--text);
}

.floe-bulk-toolbar__toggle,
.raft-assignment-bulk-toolbar__toggle {
    white-space: nowrap;
}

.floe-bulk-toolbar__controls,
.raft-assignment-bulk-toolbar__controls {
    display: grid;
    grid-template-columns: minmax(220px, 260px) auto;
    gap: 10px;
    align-items: end;
    justify-content: end;
}

.floe-selectable-list,
.raft-assignment-bulk-list {
    gap: 6px;
}

.floe-selectable-row,
.raft-assignment-bulk-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 8px 10px;
    border: 1px solid rgba(var(--accent-rgb), 0.08);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.92);
    cursor: pointer;
}

.floe-selectable-row__main,
.raft-assignment-bulk-row__main {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.floe-selectable-row__meta,
.raft-assignment-bulk-row__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 2px 10px;
    color: var(--muted);
    font-size: 0.72rem;
    line-height: 1.25;
}

.floe-selectable-row__meta span,
.raft-assignment-bulk-row__meta span {
    min-width: 0;
    overflow-wrap: break-word;
    word-break: normal;
}

.floe-selectable-row__meta strong,
.raft-assignment-bulk-row__meta strong {
    color: var(--text);
}

.floe-selectable-row__checkbox,
.raft-assignment-bulk-checkbox {
    width: 18px;
    height: 18px;
    margin: 0;
}

.floe-form-title,
.formTitle {
    margin: 0;
    font-size: 1.15rem;
    line-height: 1.08;
}

.floe-form-hint,
.formHint {
    margin: 0;
    font-size: 0.88rem;
    color: var(--muted);
    line-height: 1.55;
}

.floe-form-hint strong,
.formHint strong {
    color: var(--text);
}

.floe-form-grid,
.formGrid,
.form-grid,
.upload-grid,
.batch-form {
    display: grid;
    gap: 8px;
}

.floe-form-grid,
.formGrid {
    gap: 14px;
}

.floe-form-grid > .button--primary,
.floe-form-grid > .button--danger,
.formGrid > .button--primary,
.formGrid > .button--danger {
    width: 100%;
}

.floe-field-group,
.fieldGroup {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.floe-field-group label,
.fieldGroup label,
.floe-section-label,
.sectionLabel {
    font-size: 0.74rem;
    font-weight: 700;
    color: var(--muted);
}

.floe-input-wrap,
.inputWrap {
    position: relative;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.floe-input-wrap:has(> .floe-input-toggle) > input,
.floe-input-wrap:has(> .toggleBtn) > input,
.inputWrap:has(> .floe-input-toggle) > input,
.inputWrap:has(> .toggleBtn) > input {
    padding-right: 78px;
}

.field {
    display: grid;
    gap: 8px;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.floe-input-field {
    --floe-input-field-width: var(--floe-input-width-md);
    min-width: 0;
    max-width: 100%;
    display: grid;
    box-sizing: border-box;
}

.floe-input-field--top {
    gap: 6px;
}

.floe-input-field--left {
    grid-template-columns: minmax(var(--floe-input-left-label-min-width), var(--floe-input-left-label-width)) minmax(0, var(--floe-input-field-width));
    align-items: center;
    column-gap: var(--floe-input-label-gap);
}

.floe-input-field--left.floe-input-field--fill {
    grid-template-columns: minmax(var(--floe-input-left-label-min-width), var(--floe-input-left-label-width)) minmax(0, 1fr);
}

.floe-input-field--left.floe-input-field--label-fit {
    grid-template-columns: max-content minmax(0, var(--floe-input-field-width));
}

.floe-input-field--left.floe-input-field--label-fit.floe-input-field--fill {
    grid-template-columns: max-content minmax(0, 1fr);
}

.floe-input-field--xs {
    --floe-input-field-width: var(--floe-input-width-xs);
}

.floe-input-field--compact {
    --floe-input-field-width: var(--floe-input-width-compact);
}

.floe-input-field--sm {
    --floe-input-field-width: var(--floe-input-width-sm);
}

.floe-input-field--date {
    --floe-input-field-width: var(--floe-input-width-date);
}

.floe-input-field--md {
    --floe-input-field-width: var(--floe-input-width-md);
}

.floe-input-field--lg {
    --floe-input-field-width: var(--floe-input-width-lg);
}

.floe-input-field--fill {
    --floe-input-field-width: 100%;
}

.floe-input-field > span:first-child,
.floe-input-label {
    min-width: 0;
    color: var(--floe-card-header-label-color);
    font-size: 0.62rem;
    font-weight: 520;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.floe-input-field--left > span:first-child,
.floe-input-field--left > .floe-input-label {
    min-height: var(--floe-input-height);
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    text-align: right;
}

.floe-input-field--left.floe-input-field--label-fit > span:first-child,
.floe-input-field--left.floe-input-field--label-fit > .floe-input-label {
    min-width: max-content;
}

.floe-input-field--top > span:first-child,
.floe-input-field--top > .floe-input-label {
    width: min(100%, var(--floe-input-field-width));
    justify-self: start;
    box-sizing: border-box;
    padding-left: var(--floe-input-label-indent);
}

.floe-input-control,
.floe-input-field :is(input, select, textarea) {
    width: min(100%, var(--floe-input-field-width));
    min-width: 0;
    max-width: 100%;
    justify-self: start;
    box-sizing: border-box;
    border: 1px solid var(--floe-input-border-color);
    border-radius: var(--floe-input-radius);
    background-color: var(--floe-input-bg);
    color: var(--floe-input-text-color);
    font-family: inherit;
    font-size: var(--floe-input-font-size);
    font-weight: var(--floe-input-font-weight);
    letter-spacing: var(--floe-input-letter-spacing);
    line-height: var(--floe-input-line-height);
    outline: none;
    box-shadow: none;
    text-transform: none;
    transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease, color 160ms ease;
}

.floe-input-control:is(input, select),
.floe-input-field :is(input, select) {
    min-height: var(--floe-input-height);
    padding: 0 var(--floe-input-padding-x);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.floe-input-control:is(textarea),
.floe-input-field textarea {
    min-height: calc(var(--floe-input-height) * 2.2);
    padding: 10px var(--floe-input-padding-x);
    overflow-wrap: anywhere;
    resize: vertical;
}

.floe-input-control:disabled,
.floe-input-field :is(input, select, textarea):disabled {
    opacity: 1;
    -webkit-text-fill-color: var(--floe-input-text-color);
}

.floe-input-control::placeholder,
.floe-input-field :is(input, textarea)::placeholder {
    color: #8092a3;
    opacity: 1;
}

.floe-input-control:is(select):not([multiple]):not([size]),
.floe-input-field select:not([multiple]):not([size]) {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 38px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%235a6d80' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right var(--floe-input-padding-x) center;
    background-size: 12px 8px;
}

.floe-input-control:focus,
.floe-input-field :is(input, select, textarea):focus {
    border-color: rgba(var(--accent-rgb), 0.45);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.12);
}

.floe-caps,
.field--caps input,
.field--caps select,
.field--caps textarea,
.field--caps .field__file-control,
.field--caps .field__file-value,
.floe-select--caps .floe-select__trigger,
.floe-select--caps .floe-select__value,
.floe-select--caps .floe-select__option-label,
.floe-select--caps .floe-select__option-meta {
    color: var(--floe-operational-text-color);
    font-size: var(--floe-operational-font-size);
    font-weight: var(--floe-operational-font-weight);
    letter-spacing: var(--floe-operational-letter-spacing);
    line-height: var(--floe-operational-line-height);
    text-transform: uppercase;
}

.field--caps select option {
    font-size: var(--floe-operational-font-size);
    font-weight: var(--floe-operational-font-weight);
    letter-spacing: var(--floe-operational-letter-spacing);
    text-transform: uppercase;
}

.field--caps input::placeholder,
.field--caps textarea::placeholder {
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.field > span:first-child {
    font-size: 0.69rem;
    font-weight: 500;
    color: var(--muted);
    letter-spacing: 0.08em;
    line-height: 1.1;
    text-transform: uppercase;
}

.field input,
.field select,
.field textarea {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    border: 1px solid var(--floe-input-border-color);
    border-radius: var(--floe-input-radius);
    background: var(--floe-input-bg);
    color: var(--floe-input-text-color);
    font-size: var(--floe-input-font-size);
    font-weight: var(--floe-input-font-weight);
    font-family: inherit;
    letter-spacing: var(--floe-input-letter-spacing);
    line-height: var(--floe-input-line-height);
    outline: none;
    box-shadow: none;
    transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease, color 160ms ease;
}

.field input,
.field select {
    min-height: var(--floe-input-height);
    padding: 0 var(--floe-input-padding-x);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.field input:is(
    [type="email"],
    [type="url"],
    [type="tel"],
    [name*="email" i],
    [name*="url" i],
    [name*="website" i],
    [name*="phone" i],
    [name*="telephone" i],
    [name*="name" i]
),
.field--caps input:is(
    [type="email"],
    [type="url"],
    [type="tel"],
    [name*="email" i],
    [name*="url" i],
    [name*="website" i],
    [name*="phone" i],
    [name*="telephone" i]
) {
    color: var(--floe-input-text-color);
    font-size: var(--floe-input-font-size);
    font-weight: var(--floe-input-font-weight);
    letter-spacing: var(--floe-input-letter-spacing);
    line-height: var(--floe-input-line-height);
    text-transform: none;
}

.field textarea {
    min-height: 96px;
    padding: 10px var(--floe-input-padding-x);
    overflow-wrap: anywhere;
    resize: vertical;
}

.field input::placeholder,
.field textarea::placeholder {
    color: #8092a3;
    opacity: 1;
}

.field select:not([multiple]):not([size]) {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 38px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%235a6d80' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right var(--floe-input-padding-x) center;
    background-size: 12px 8px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.field select:not([multiple]):not([size])::-ms-expand {
    display: none;
}

.floe-select {
    position: relative;
    min-width: 0;
}

.floe-select__native {
    width: 100%;
}

.floe-select__trigger {
    display: none;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: var(--floe-input-height);
    padding: 0 var(--floe-input-padding-x);
    border: 1px solid var(--floe-input-border-color);
    border-radius: var(--floe-input-radius);
    background: var(--floe-input-bg);
    box-shadow: none;
    color: var(--floe-input-text-color);
    cursor: pointer;
    text-align: left;
    transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease, color 160ms ease;
}

.floe-select__trigger:hover {
    border-color: rgba(var(--accent-rgb), 0.22);
}

.floe-select__trigger:focus-visible {
    outline: none;
    border-color: rgba(var(--accent-rgb), 0.45);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.12);
}

.floe-select__value {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.floe-select__chevron {
    flex: 0 0 auto;
    width: 12px;
    height: 8px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%235a6d80' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px 8px;
}

.floe-select__menu {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    z-index: 30;
    display: grid;
    gap: 2px;
    padding: 6px;
    border: 1px solid var(--panel-border);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

.floe-select__menu[hidden] {
    display: none;
}

.floe-select__option {
    display: grid;
    gap: 2px;
    width: 100%;
    padding: 9px 12px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--floe-input-text-color);
    cursor: pointer;
    text-align: left;
}

.floe-select__option:hover,
.floe-select__option:focus-visible {
    outline: none;
    background: #f7fafc;
}

.floe-select__option.is-selected {
    background: rgba(var(--accent-rgb), 0.08);
}

.floe-select__option-meta {
    color: #718394;
    font-size: 0.66rem;
}

.floe-select__option--placeholder .floe-select__option-meta {
    display: none;
}

.floe-select.is-enhanced .floe-select__native {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    border: 0;
    opacity: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

.floe-select.is-enhanced .floe-select__trigger {
    display: inline-flex;
}

.floe-select.is-enhanced.is-open .floe-select__trigger {
    border-color: rgba(var(--accent-rgb), 0.45);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.12);
}

.floe-select.is-invalid .floe-select__trigger {
    border-color: rgba(180, 35, 24, 0.42);
    box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.08);
}

.field--file {
    min-width: 0;
}

.field__file-shell {
    position: relative;
    display: block;
    width: min(100%, var(--floe-upload-field-width));
    min-width: min(100%, var(--floe-upload-field-min-width));
    max-width: 100%;
    justify-self: start;
}

.field__file-input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    cursor: pointer;
}

.field__file-control {
    min-width: 0;
    min-height: var(--floe-input-height);
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 15px;
    border: 1px solid var(--floe-input-border-color);
    border-radius: var(--floe-input-radius);
    background: var(--floe-input-bg);
    color: var(--floe-operational-text-color);
    font-family: inherit;
    font-size: var(--floe-operational-font-size);
    font-weight: var(--floe-operational-font-weight);
    letter-spacing: var(--floe-operational-letter-spacing);
    line-height: var(--floe-operational-line-height);
    text-transform: uppercase;
}

.field__file-icon {
    flex: 0 0 auto;
    color: #5a6d80;
    font-size: 0.82rem;
    line-height: 1;
}

.field__file-value {
    min-width: 0;
    overflow: hidden;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.field--file.is-filled .field__file-control {
    color: #53687b;
}

.field--file:focus-within .field__file-control {
    border-color: rgba(var(--accent-rgb), 0.28);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.08);
}

.field input[type="file"]:not(.field__file-input) {
    display: flex;
    align-items: center;
    padding: 7px 10px;
}

.field input[type="file"]:not(.field__file-input)::file-selector-button {
    margin-right: 10px;
    height: 28px;
    padding: 0 12px;
    border: 1px solid var(--panel-border);
    border-radius: 9px;
    background: #f8fafc;
    color: var(--text);
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.field input:focus,
.field select:focus,
.field textarea:focus {
    border-color: rgba(var(--accent-rgb), 0.45);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.12);
}

.floe-field-group input,
.floe-field-group select,
.floe-field-group textarea,
.fieldGroup input,
.fieldGroup select,
.fieldGroup textarea {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    border: 1px solid var(--panel-border);
    border-radius: 12px;
    background: #ffffff;
    color: var(--text);
    line-height: 1.35;
    outline: none;
    transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.floe-field-group input,
.floe-field-group select,
.fieldGroup input,
.fieldGroup select {
    min-height: 42px;
    padding: 0 12px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.floe-field-group textarea,
.fieldGroup textarea {
    min-height: 96px;
    padding: 10px 12px;
    resize: vertical;
}

.floe-field-group input:focus,
.floe-field-group select:focus,
.floe-field-group textarea:focus,
.fieldGroup input:focus,
.fieldGroup select:focus,
.fieldGroup textarea:focus {
    border-color: rgba(var(--accent-rgb), 0.45);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.12);
}

.button {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border: 1px solid transparent;
    border-radius: 12px;
    background: transparent;
    color: var(--text);
    cursor: pointer;
    font-weight: 700;
    text-decoration: none;
    transition: transform 160ms ease, background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.button:hover {
    transform: translateY(-1px);
}

.button:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.16);
}

.button:disabled,
.button.is-disabled {
    opacity: 0.58;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.button--primary {
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-secondary) 100%);
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(var(--accent-rgb), 0.18);
}

.button--primary:hover {
    background: linear-gradient(135deg, var(--accent-dark) 0%, #2f7da0 100%);
}

.button--ghost {
    background: rgba(255, 255, 255, 0.72);
    color: var(--muted);
    border-color: var(--panel-border);
}

.button--clear {
    min-height: 32px;
    padding: 0 10px;
    background: var(--warning-soft);
    color: #8a5a00;
    border-color: #f1d58a;
    font-size: 0.78rem;
    font-weight: 800;
}

.button--subtle {
    min-height: 28px;
    padding: 0 10px;
    background: transparent;
    color: var(--muted);
    border-color: var(--panel-border);
    font-size: 0.76rem;
    font-weight: 700;
}

.button--danger {
    background: var(--danger);
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(180, 35, 24, 0.14);
}

.floe-input-toggle,
.toggleBtn {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid var(--panel-border);
    border-radius: 10px;
    background: #f8fafc;
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 700;
    cursor: pointer;
}

.floe-input-toggle:hover,
.toggleBtn:hover {
    background: #ffffff;
    color: var(--text);
}

.floe-input-toggle:focus-visible,
.toggleBtn:focus-visible {
    outline: 2px solid rgba(var(--accent-rgb), 0.22);
    outline-offset: 1px;
    background: #ffffff;
    color: var(--text);
    transform: translateY(-50%);
}

.floe-button-row,
.utilityBar {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.floe-button-row .button,
.utilityBar .button {
    min-width: 136px;
}

.floe-pagination__link,
.floe-pagination__current,
.floe-pagination__disabled,
.raft-pagination__link,
.raft-pagination__current,
.raft-pagination__disabled {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 12px;
    border: 1px solid var(--panel-border);
    background: rgba(255, 255, 255, 0.86);
    font-weight: 700;
}

.floe-pagination__link,
.raft-pagination__link {
    color: var(--accent-dark);
}

.floe-pagination__current,
.raft-pagination__current {
    border-color: rgba(var(--accent-rgb), 0.18);
    background: rgba(var(--accent-rgb), 0.12);
    color: var(--accent-dark);
}

.floe-pagination__disabled,
.raft-pagination__disabled {
    color: rgba(96, 112, 128, 0.6);
}

.floe-pagination__ellipsis,
.raft-pagination__ellipsis {
    padding: 0 4px;
    color: var(--muted);
    font-weight: 700;
}

.floe-pagination__summary,
.raft-pagination__summary {
    font-size: 0.7rem;
    color: var(--muted);
    white-space: nowrap;
}

.floe-pagination__controls,
.raft-pagination__controls {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
}

.floe-pagination__form,
.raft-pagination__form {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
}

.floe-pagination__label,
.raft-pagination__label {
    font-size: 0.68rem;
    color: var(--muted);
}

.floe-pagination--queue,
.raft-pagination--queue {
    margin-top: 4px;
    margin-bottom: 10px;
    justify-content: space-between;
    gap: 10px;
}

.floe-pagination__select,
.raft-pagination__select {
    min-height: 30px;
    padding: 0 8px;
    border: 1px solid var(--panel-border);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.92);
    font-size: 0.72rem;
    color: var(--text);
}

.floe-pagination__link--compact,
.floe-pagination__disabled--compact,
.raft-pagination__link--compact,
.raft-pagination__disabled--compact {
    min-height: 30px;
    padding: 0 10px;
    border-radius: 10px;
    font-size: 0.72rem;
}

.floe-table-wrap,
.raft-table-wrap {
    overflow-x: auto;
    max-width: 100%;
    border: 1px solid var(--panel-border);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.8);
}

.floe-table-wrap table,
.floe-data-table,
.raft-table-wrap table,
.raft-data-table {
    width: 100%;
    border-collapse: collapse;
}

.floe-data-table,
.raft-data-table {
    min-width: 1120px;
}

.floe-data-table--wide,
.raft-data-table--wide {
    min-width: 1900px;
}

.floe-data-table--review,
.raft-data-table--review {
    min-width: 1680px;
}

.floe-data-table--matrix {
    min-width: 1380px;
}

.floe-dashboard-table-wrap {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
}

.floe-dashboard-table-wrap .floe-data-table--matrix {
    width: max-content;
    min-width: 100%;
}

.floe-data-table th,
.floe-data-table td,
.raft-data-table th,
.raft-data-table td {
    padding: 8px 10px;
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.1);
    border-right: 0;
    text-align: left;
    vertical-align: top;
    white-space: nowrap;
}

.floe-data-table th:last-child,
.floe-data-table td:last-child,
.raft-data-table th:last-child,
.raft-data-table td:last-child {
    border-right: none;
}

.floe-data-table thead th,
.raft-data-table thead th {
    position: sticky;
    top: 70px;
    z-index: 1;
    background: rgba(243, 248, 253, 0.98);
    color: var(--floe-card-header-label-color);
    font-size: var(--floe-card-header-label-font-size);
    font-weight: var(--floe-card-header-label-font-weight);
    letter-spacing: var(--floe-card-header-label-letter-spacing);
    line-height: var(--floe-card-header-label-line-height);
    text-transform: uppercase;
}

.floe-data-table--matrix thead th {
    position: static;
}

.floe-data-table tbody tr:last-child td,
.raft-data-table tbody tr:last-child td {
    border-bottom: none;
}

.floe-mode-switch-wrap {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 10px;
}

.floe-mode-switch {
    display: flex;
    justify-content: flex-start;
}

.floe-mode-switch__button {
    border-color: rgba(var(--accent-rgb), 0.18);
    background: linear-gradient(135deg, var(--accent-dark) 0%, var(--accent-secondary) 100%);
    color: #ffffff;
    box-shadow: 0 10px 22px rgba(var(--accent-rgb), 0.16);
}

.floe-mode-switch__button:hover {
    background: linear-gradient(135deg, #1d568f 0%, #347f9d 100%);
    border-color: rgba(var(--accent-rgb), 0.22);
}

.floe-notes-field,
.raft-validation-notes-field {
    margin: 0;
}

.floe-notes-field span,
.raft-validation-notes-field span {
    font-size: 0.74rem;
}

.floe-form-actions,
.raft-validation-actions {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    justify-content: flex-end;
    align-items: center;
}

.floe-form-actions .button,
.raft-validation-actions .button {
    min-height: 38px;
    padding: 0 12px;
    white-space: nowrap;
}

.floe-assignment-rep-field,
.raft-assignment-rep-field {
    margin: 0;
}

.floe-assignment-actions,
.raft-assignment-actions {
    justify-content: flex-end;
}

.floe-inline-actions,
.humboldt-inline-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    flex-wrap: nowrap;
}

.floe-icon-action,
.humboldt-action-icon {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.14);
    border-radius: 999px;
    background: rgba(var(--accent-rgb), 0.06);
    color: var(--accent-dark);
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.floe-icon-action:hover,
.floe-icon-action:focus-visible,
.humboldt-action-icon:hover,
.humboldt-action-icon:focus-visible {
    background: rgba(var(--accent-rgb), 0.14);
    border-color: rgba(var(--accent-rgb), 0.22);
    transform: translateY(-1px);
}

.floe-icon-action:disabled,
.floe-icon-action[aria-disabled="true"],
.humboldt-action-icon:disabled,
.humboldt-action-icon[aria-disabled="true"] {
    pointer-events: none;
    opacity: 0.55;
    transform: none;
}

.floe-icon-action svg,
.humboldt-action-icon svg {
    width: 14px;
    height: 14px;
}

.floe-icon-action--edit,
.humboldt-action-icon--edit {
    color: var(--text);
    background: rgba(15, 23, 42, 0.04);
    border-color: rgba(15, 23, 42, 0.1);
}

.floe-icon-action--toggle,
.humboldt-action-icon--toggle {
    color: #8a5b00;
    background: rgba(194, 133, 0, 0.08);
    border-color: rgba(194, 133, 0, 0.16);
}

.floe-icon-action--run,
.humboldt-action-icon--run {
    color: #ffffff;
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);
    border-color: transparent;
}

.floe-icon-action--delete,
.humboldt-action-icon--delete {
    color: var(--danger);
    background: var(--danger-soft);
    border-color: rgba(180, 35, 24, 0.16);
}

.floe-toggle-row,
.options-form {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.floe-toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid var(--panel-border);
    border-radius: 8px;
    background: #ffffff;
    color: var(--muted);
    cursor: pointer;
    user-select: none;
    transition: border-color 140ms ease, background-color 140ms ease;
}

.floe-toggle__input {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    border: 0;
    opacity: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

.floe-toggle__track {
    position: relative;
    width: 30px;
    height: 16px;
    flex: 0 0 30px;
    border: 1px solid rgba(148, 163, 184, 0.34);
    border-radius: 5px;
    background: #eef2f5;
    transition: background-color 140ms ease, border-color 140ms ease;
}

.floe-toggle__track::after {
    content: "";
    position: absolute;
    top: 2px;
    left: 2px;
    width: 10px;
    height: 10px;
    border-radius: 3px;
    background: #ffffff;
    box-shadow: none;
    transition: transform 140ms ease;
}

.floe-toggle__label {
    font-size: 0.68rem;
    font-weight: 450;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--muted);
}

.floe-toggle__input:checked + .floe-toggle__track {
    border-color: rgba(52, 94, 134, 0.34);
    background: rgba(52, 94, 134, 0.22);
}

.floe-toggle__input:checked + .floe-toggle__track::after {
    transform: translateX(14px);
}

.floe-toggle__input:checked ~ .floe-toggle__label {
    color: #345e86;
}

.floe-toggle:hover,
.floe-toggle:focus-within {
    border-color: rgba(52, 94, 134, 0.22);
    background: #fbfcfd;
}

.floe-toggle:focus-within .floe-toggle__track {
    outline: none;
    box-shadow: 0 0 0 3px rgba(52, 94, 134, 0.08);
}

.floe-checkbox-toggle,
.option-toggle {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--text);
}

.floe-checkbox-toggle input,
.option-toggle input {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--accent);
}

.floe-inline-form,
.inline-form {
    display: flex;
    align-items: center;
    gap: 6px;
}

.floe-inline-grid-form,
.raft-inline-form {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
    align-items: end;
}

.floe-inline-grid-form--compact,
.raft-inline-form--compact {
    grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
    margin-bottom: 14px;
}

.floe-inline-grid-form--netsuite-filter,
.raft-inline-form--netsuite-filter {
    margin-bottom: 0;
}

.floe-inline-grid-form--validation,
.raft-inline-form--validation {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: end;
}

.floe-inline-grid-form--assignment,
.raft-inline-form--assignment {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 0.8fr) auto;
    gap: 10px;
    align-items: end;
}

.floe-upload-form,
.batch-form {
    display: grid;
    gap: 16px;
    align-content: start;
    min-height: 100%;
}

.floe-form-grid--split,
.raft-batch-form-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: end;
}

.floe-manual-section,
.raft-manual-section,
.floe-contact-card,
.raft-contact-card {
    display: grid;
    gap: 10px;
}

.floe-manual-section,
.raft-manual-section {
    padding: 12px;
    border: 1px solid var(--panel-border);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.7);
}

.floe-manual-section h3,
.raft-manual-section h3,
.floe-contact-card h3,
.raft-contact-card h3 {
    margin: 0;
    font-size: 0.98rem;
}

.floe-manual-section p,
.raft-manual-section p,
.floe-contact-card p,
.raft-contact-card p {
    margin: 4px 0 0;
}

.floe-manual-grid,
.raft-manual-grid,
.floe-contact-grid,
.raft-contact-grid {
    display: grid;
    gap: 10px;
    align-items: end;
    grid-template-columns: repeat(12, minmax(0, 1fr));
}

.floe-grid-span-full,
.raft-span-full {
    grid-column: 1 / -1;
}

.floe-grid-span-12,
.raft-span-12 {
    grid-column: span 12;
}

.floe-grid-span-8,
.raft-span-8 {
    grid-column: span 8;
}

.floe-grid-span-5,
.raft-span-5 {
    grid-column: span 5;
}

.floe-grid-span-4,
.raft-span-4 {
    grid-column: span 4;
}

.floe-grid-span-3,
.raft-span-3 {
    grid-column: span 3;
}

.floe-grid-span-2,
.raft-span-2 {
    grid-column: span 2;
}

.floe-contact-card,
.raft-contact-card {
    padding: 12px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 14px;
    background: rgba(var(--accent-rgb), 0.04);
}

.floe-contact-card__head,
.raft-contact-card__head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
}

.floe-contact-card__meta,
.raft-contact-card__meta {
    display: grid;
    gap: 3px;
}

.floe-contact-card__head span,
.raft-contact-card__head span {
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.floe-compact-number-input,
.qty-input {
    width: 64px;
    min-height: 32px;
    border: 1px solid var(--panel-border);
    border-radius: 9px;
    padding: 0 8px;
    outline: none;
}

.floe-compact-number-input:focus,
.qty-input:focus {
    border-color: rgba(var(--accent-rgb), 0.45);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.12);
}

.floe-alert,
.alertBox {
    display: none;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid #f1c4c0;
    background: var(--danger-soft);
    color: var(--danger);
    font-size: 0.84rem;
    line-height: 1.45;
}

.floe-alert.show,
.floe-alert--visible,
.alertBox.show,
.alertBox--visible {
    display: block;
}

.floe-alert--success,
.alertBox--success,
.alertSuccess {
    border-color: #b8e2c8;
    background: var(--success-soft);
    color: var(--success);
}

.floe-alert--warning,
.alertBox--warning {
    border-color: #f0cf93;
    background: var(--warning-soft);
    color: var(--warning);
}

.floe-alert--hidden,
.alertBox--hidden {
    display: none;
}

.floe-secret-box,
.generatedPasswordBox {
    display: grid;
    gap: 8px;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid #b8e2c8;
    background: rgba(232, 247, 238, 0.86);
    color: var(--success);
}

.floe-secret-box strong,
.generatedPasswordBox strong {
    color: var(--text);
}

.floe-secret-box__value,
.generatedPasswordBox__value {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    padding: 8px 10px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.92);
    border: 1px dashed rgba(24, 121, 78, 0.28);
    color: var(--text);
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.9rem;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.floe-divider,
.divider {
    height: 1px;
    margin: 10px 0 14px;
    background: var(--panel-border);
}

.floe-refresh-controls,
.refresh-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    flex-wrap: wrap;
}

.floe-refresh-button,
.refresh-button {
    min-width: 120px;
}

.floe-refresh-button:disabled,
.refresh-button:disabled {
    opacity: 0.7;
    cursor: wait;
}

.floe-refresh-status,
.refresh-status {
    min-width: 0;
}

.floe-kpi-panel,
.metric-panel {
    display: grid;
    gap: 8px;
    padding: 14px;
    border: 1px solid rgba(var(--accent-rgb), 0.14);
    border-radius: 8px;
    background: var(--floe-surface-toolbar);
}

.floe-kpi-panel--error,
.metric-panel--error {
    border-color: rgba(177, 58, 58, 0.22);
    background: linear-gradient(135deg, rgba(177, 58, 58, 0.08), rgba(255, 255, 255, 0.96));
}

.floe-kpi-panel__value,
.metric-panel__value {
    margin: 0;
    font-size: clamp(1.7rem, 4vw, 2.6rem);
    font-weight: 800;
    line-height: 1;
}

.floe-kpi-panel__meta,
.metric-panel__meta {
    margin: 0;
    color: var(--muted);
    line-height: 1.5;
}

.floe-action-row,
.action-row {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.floe-toolbar,
.raft-actions,
.raft-toolbar,
.raft-filter-actions {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.floe-toolbar .button,
.raft-actions .button,
.raft-toolbar .button,
.raft-filter-actions .button {
    min-height: var(--floe-filter-action-height);
    min-width: var(--floe-filter-action-min-width);
    padding-inline: var(--floe-filter-action-padding-x);
    border-radius: 8px;
    font-size: var(--floe-filter-action-font-size);
    font-weight: var(--floe-filter-action-font-weight);
    letter-spacing: var(--floe-filter-action-letter-spacing);
    line-height: 1;
    justify-content: center;
    text-transform: uppercase;
    white-space: nowrap;
}

.floe-toolbar--inline,
.raft-actions--inline {
    margin-top: 0;
}

.floe-filter-panel,
.raft-export-filter-panel {
    display: grid;
    gap: 10px;
    margin-top: 12px;
    margin-bottom: 14px;
    padding: 14px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 8px;
    background: var(--floe-surface-toolbar);
}

.floe-filter-panel__copy,
.floe-query-filter-panel__copy,
.raft-export-filter-panel__copy {
    display: grid;
    gap: 4px;
}

.floe-filter-panel__copy .eyebrow,
.floe-query-filter-panel__copy .eyebrow,
.floe-filter-panel__copy .row-meta,
.floe-query-filter-panel__copy .row-meta,
.raft-export-filter-panel__copy .eyebrow,
.raft-export-filter-panel__copy .row-meta {
    margin: 0;
}

.floe-query-filter-panel__copy > h2 {
    margin: 0;
    color: var(--floe-card-header-label-color);
    font-size: var(--floe-card-header-label-font-size);
    font-weight: var(--floe-card-header-label-font-weight);
    letter-spacing: var(--floe-card-header-label-letter-spacing);
    line-height: var(--floe-card-header-label-line-height);
    text-transform: uppercase;
}

.floe-filter-form,
.raft-export-filter-form {
    display: grid;
    gap: 10px;
    justify-items: start;
}

.floe-filter-field,
.raft-export-filter-form__field {
    width: min(100%, 260px);
    max-width: 260px;
    margin: 0;
}

.floe-filter-field select,
.raft-export-filter-form__field select {
    width: 100%;
}

.floe-filter-actions,
.raft-export-filter-form__actions {
    margin-top: 0;
    padding-top: 6px;
    border-top: 1px solid rgba(148, 163, 184, 0.22);
    width: 100%;
}

:where(
    .floe-filter-actions,
    .floe-query-filter-actions,
    .raft-export-filter-form__actions,
    .raft-query-filter-actions
) .button:not(.button--ghost):not(.button--danger):not(.button--clear) {
    border-color: var(--accent);
    background: var(--accent);
    color: #ffffff;
}

:where(
    .floe-filter-actions,
    .floe-query-filter-actions,
    .raft-export-filter-form__actions,
    .raft-query-filter-actions
) .button:not(.button--ghost):not(.button--danger):not(.button--clear):hover,
:where(
    .floe-filter-actions,
    .floe-query-filter-actions,
    .raft-export-filter-form__actions,
    .raft-query-filter-actions
) .button:not(.button--ghost):not(.button--danger):not(.button--clear):focus-visible {
    border-color: var(--accent-dark);
    background: var(--accent-dark);
    color: #ffffff;
}

.floe-query-filter-panel,
.raft-query-filter-card {
    display: grid;
    gap: 8px;
    padding: 12px 14px;
    border-color: rgba(107, 114, 128, 0.32);
    border-radius: 8px;
    background: var(--floe-surface-toolbar);
}

.floe-query-filter-panel__header,
.raft-query-filter-header {
    align-items: flex-start;
}

.floe-query-filter-panel__meta,
.raft-query-filter-meta {
    margin: 2px 0 0;
}

.floe-query-filter-form,
.raft-query-filter-form {
    display: grid;
    gap: 8px;
}

.floe-query-filter-grid,
.raft-query-filter-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    align-items: end;
}

.floe-query-filter-field,
.raft-query-filter-field {
    flex: 0 0 180px;
    width: 180px;
    min-width: 0;
}

.floe-query-filter-field--wide,
.raft-query-filter-field--wide {
    flex-basis: 220px;
    width: 220px;
}

.floe-query-filter-field--search,
.raft-query-filter-field--search {
    flex: 1 1 360px;
    width: auto;
    min-width: 280px;
    max-width: 440px;
}

.floe-query-filter-panel .field,
.raft-query-filter-card .field {
    display: grid;
    gap: 4px;
}

.floe-query-filter-panel .field,
.floe-query-filter-panel .field span,
.floe-query-filter-panel .row-meta,
.raft-query-filter-card .field,
.raft-query-filter-card .field span,
.raft-query-filter-card .row-meta {
    margin: 0;
}

.floe-query-filter-panel .field span,
.raft-query-filter-card .field span {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.floe-query-filter-panel .field input,
.floe-query-filter-panel .field select,
.raft-query-filter-card .field input,
.raft-query-filter-card .field select {
    width: 100%;
    min-height: var(--floe-input-height);
    padding-inline: var(--floe-input-padding-x);
    padding-top: 0;
    padding-bottom: 0;
    border-color: var(--floe-input-border-color);
    background: var(--floe-input-bg);
    color: var(--floe-input-text-color);
    font-size: var(--floe-input-font-size);
    font-weight: var(--floe-input-font-weight);
    letter-spacing: var(--floe-input-letter-spacing);
    line-height: var(--floe-input-line-height);
    text-transform: none;
}

.floe-query-filter-panel .button,
.raft-query-filter-card .button {
    min-height: var(--floe-filter-action-height);
    min-width: var(--floe-filter-action-min-width);
    padding-inline: var(--floe-filter-action-padding-x);
    border-radius: 8px;
    font-size: var(--floe-filter-action-font-size);
    font-weight: var(--floe-filter-action-font-weight);
    letter-spacing: var(--floe-filter-action-letter-spacing);
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}

.floe-query-filter-actions,
.raft-query-filter-actions {
    margin-top: 0;
    padding-top: 4px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
    justify-content: flex-start;
}

.floe-query-filter-actions .button,
.raft-query-filter-actions .button {
    min-width: var(--floe-filter-action-min-width);
}

.floe-status-filter-group,
.raft-query-status-group {
    margin: 0;
    flex: 1 1 100%;
    width: 100%;
    padding: 10px 12px;
    border: 1px solid rgba(107, 114, 128, 0.28);
    border-radius: 8px;
    background: rgba(238, 243, 247, 0.78);
}

.floe-status-filter-group legend,
.raft-query-status-group legend {
    padding: 0 6px;
    font-size: var(--floe-card-header-label-font-size);
    font-weight: var(--floe-card-header-label-font-weight);
    color: var(--floe-card-header-label-color);
    text-transform: uppercase;
    letter-spacing: var(--floe-card-header-label-letter-spacing);
    line-height: var(--floe-card-header-label-line-height);
}

.floe-status-filter-stack,
.raft-query-status-stack {
    display: grid;
    gap: 8px;
}

.floe-status-filter-row,
.raft-query-status-row {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 8px 10px;
    align-items: center;
}

.floe-status-filter-row__label,
.raft-query-status-row__label {
    font-size: 0.7rem;
    font-weight: var(--floe-card-header-label-font-weight);
    color: var(--floe-card-header-label-color);
    text-transform: uppercase;
    letter-spacing: var(--floe-card-header-label-letter-spacing);
    line-height: var(--floe-card-header-label-line-height);
}

.floe-status-filter-pillset,
.raft-query-status-pillset {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.floe-status-filter-pillset__input,
.raft-query-status-pillset__input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.floe-status-filter-pill,
.raft-query-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid rgba(148, 163, 184, 0.3);
    border-radius: var(--floe-pill-radius);
    background: rgba(255, 255, 255, 0.74);
    color: rgba(71, 85, 105, 0.96);
    font-size: var(--floe-pill-font-size);
    font-weight: var(--floe-pill-font-weight);
    letter-spacing: var(--floe-pill-letter-spacing);
    line-height: 1;
    cursor: pointer;
    transition: background 140ms ease, border-color 140ms ease, color 140ms ease, transform 140ms ease;
}

.floe-status-filter-pill:hover,
.raft-query-status-pill:hover {
    background: rgba(255, 255, 255, 0.96);
    border-color: rgba(var(--accent-rgb), 0.16);
    color: var(--accent-dark);
    transform: translateY(-1px);
}

.floe-status-filter-pillset__input:checked + .floe-status-filter-pill,
.raft-query-status-pillset__input:checked + .raft-query-status-pill {
    border-color: rgba(var(--accent-rgb), 0.28);
    background: rgba(var(--accent-rgb), 0.12);
    color: var(--accent-dark);
    box-shadow: inset 0 0 0 1px rgba(var(--accent-rgb), 0.08);
}

.floe-status-filter-pillset__input:focus-visible + .floe-status-filter-pill,
.raft-query-status-pillset__input:focus-visible + .raft-query-status-pill {
    outline: 2px solid rgba(var(--accent-rgb), 0.28);
    outline-offset: 2px;
}

.floe-compact-disclosure {
    display: grid;
    gap: 2px;
}

.floe-compact-disclosure summary {
    cursor: pointer;
    list-style: none;
    font-size: 0.72rem;
    line-height: 1.15;
    color: var(--muted);
}

.floe-compact-disclosure summary::-webkit-details-marker {
    display: none;
}

.floe-compact-disclosure summary::before {
    content: ">";
    display: inline-block;
    margin-right: 4px;
    color: var(--muted);
    transition: transform 140ms ease;
}

.floe-compact-disclosure[open] summary::before {
    transform: rotate(90deg);
}

.floe-compact-disclosure__body {
    display: grid;
    gap: 2px;
    padding-left: 11px;
}

.floe-compact-disclosure__body--contacts {
    gap: 2px;
}

.floe-compact-disclosure__item {
    font-size: 0.72rem;
    line-height: 1.2;
    color: var(--text);
}

.floe-compact-disclosure__item span {
    color: var(--muted);
}

.floe-row-disclosure summary {
    display: block;
    width: 16px;
    height: 16px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    font-size: 0;
    line-height: 1;
    list-style: none;
    z-index: 1;
}

.floe-row-disclosure summary::-webkit-details-marker {
    display: none;
}

.floe-row-disclosure summary::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 4px;
    width: 6px;
    height: 6px;
    border-right: 1.5px solid var(--muted);
    border-bottom: 1.5px solid var(--muted);
    transform: rotate(45deg);
    transition: border-color 140ms ease, transform 140ms ease;
}

.floe-row-disclosure[open] summary::before {
    top: 5px;
    transform: rotate(225deg);
}

.floe-row-disclosure summary:hover::before,
.floe-row-disclosure summary:focus-visible::before {
    border-color: var(--accent-dark);
}

.floe-row-disclosure summary:focus-visible {
    outline: 2px solid rgba(var(--accent-rgb), 0.28);
    outline-offset: 2px;
    border-radius: 4px;
}

.floe-progress-panel,
.progress-panel {
    display: grid;
    gap: 8px;
    padding: 12px;
    border: 1px solid var(--panel-border);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.8);
}

.floe-progress-panel--error,
.progress-panel--error {
    border-color: rgba(177, 58, 58, 0.22);
    background: rgba(255, 246, 246, 0.94);
}

.floe-progress-panel__head,
.floe-progress-panel__footer,
.progress-panel__head,
.progress-panel__footer {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: end;
}

.floe-progress-panel__label,
.progress-panel__label {
    display: block;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--muted);
}

.floe-progress-panel__value,
.floe-progress-panel__percent,
.progress-panel__value,
.progress-panel__percent {
    display: block;
    line-height: 1;
}

.floe-progress-panel__value,
.progress-panel__value {
    margin-top: 4px;
    font-size: 1.45rem;
}

.floe-progress-panel__meta,
.floe-progress-panel__note,
.progress-panel__meta,
.progress-panel__note {
    margin: 3px 0 0;
    color: var(--muted);
}

.floe-progress-panel__side,
.progress-panel__side {
    text-align: right;
}

.floe-progress-panel__percent,
.progress-panel__percent {
    font-size: 1.2rem;
    font-weight: 800;
    color: var(--accent-dark);
}

.floe-progress-panel__note,
.progress-panel__note {
    font-weight: 700;
}

.floe-progress-bar,
.progress-bar {
    height: 10px;
    overflow: hidden;
    border-radius: 999px;
    background: #e8eef4;
}

.floe-progress-bar__fill,
.progress-bar__fill {
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--accent), var(--accent-secondary));
}

.floe-progress-panel__footer,
.progress-panel__footer {
    align-items: center;
    color: var(--muted);
    font-weight: 700;
}

.floe-log-stream,
.log-stream {
    display: grid;
    gap: 8px;
    max-height: 72vh;
    overflow: auto;
    padding-right: 2px;
}

.floe-log-entry,
.log-entry {
    display: grid;
    gap: 4px;
    padding: 12px;
    border: 1px solid var(--panel-border);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.76);
}

.floe-log-entry__label,
.log-entry__label {
    margin: 0;
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1.45;
    color: var(--text);
}

.floe-log-entry__body,
.log-entry__body {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
    overflow-wrap: anywhere;
}

.table-wrap {
    border: 1px solid var(--panel-border);
    border-radius: 8px;
    overflow-x: auto;
    overflow-y: visible;
    background: #ffffff;
}

.data-table,
.cart-table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
}

.data-table th,
.data-table td,
.cart-table th,
.cart-table td {
    padding: 10px 12px;
    text-align: left;
    border-bottom: 1px solid #edf2f7;
    vertical-align: middle;
}

.data-table th,
.cart-table th {
    background: #f9fbfc;
    font-size: var(--floe-card-header-label-font-size);
    font-weight: var(--floe-card-header-label-font-weight);
    letter-spacing: var(--floe-card-header-label-letter-spacing);
    line-height: var(--floe-card-header-label-line-height);
    text-transform: uppercase;
    color: var(--floe-card-header-label-color);
}

.data-table tbody tr:last-child td,
.cart-table tbody tr:last-child td {
    border-bottom: none;
}

.row-meta {
    margin-top: 4px;
    font-size: 0.74rem;
    color: var(--muted);
}

.floe-accent-callout,
.best-box {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: start;
    padding: 12px;
    margin-bottom: 10px;
    border: 1px solid rgba(var(--accent-rgb), 0.18);
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(var(--accent-rgb), 0.08), rgba(255, 255, 255, 0.96));
}

.floe-accent-callout h3,
.best-box h3,
.floe-result-card h3,
.result-card h3 {
    margin: 0;
}

.floe-accent-callout h3,
.best-box h3 {
    font-size: 1.05rem;
}

.floe-stat-chips,
.best-box__stats {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.floe-stat-chips span,
.best-box__stats span {
    padding: 6px 9px;
    border-radius: var(--floe-pill-radius);
    background: #ffffff;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    font-size: 0.75rem;
    font-weight: 700;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}

.floe-result-list,
.result-list {
    display: grid;
    gap: 8px;
}

.floe-result-list--compact,
.result-list--compact {
    margin-bottom: 8px;
}

.floe-result-card,
.result-card {
    padding: 12px;
    border: 1px solid var(--panel-border);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.78);
}

.floe-result-card--secondary,
.result-card--secondary {
    background: #fffdf6;
    border-color: #f1e1a9;
}

.floe-result-card__head,
.result-card__head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: center;
    margin-bottom: 10px;
}

.floe-result-card h3,
.result-card h3 {
    font-size: 0.98rem;
}

.floe-count-pill,
.multi-box-count {
    padding: 5px 9px;
    border-radius: var(--floe-pill-radius);
    background: #ffffff;
    border: 1px solid #f1d77a;
    color: #8a5a00;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}

.floe-detail-grid,
.result-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 10px;
    margin: 0;
}

.floe-detail-grid div,
.result-grid div {
    margin: 0;
}

.floe-detail-grid dt,
.result-grid dt {
    margin: 0 0 2px;
    font-size: 0.72rem;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.floe-detail-grid dd,
.result-grid dd {
    margin: 0;
    font-size: 0.86rem;
    font-weight: 600;
}

.actions-cell {
    width: 1%;
    white-space: nowrap;
}

.floe-status-chip,
.humboldt-pill {
    display: inline-flex;
    align-items: center;
    min-height: var(--floe-pill-min-height);
    padding: 0 var(--floe-pill-padding-x);
    border-radius: var(--floe-pill-radius);
    border: 1px solid var(--floe-pill-border);
    background: var(--floe-pill-bg);
    color: var(--floe-pill-color);
    font-size: var(--floe-pill-font-size);
    font-weight: var(--floe-pill-font-weight);
    letter-spacing: var(--floe-pill-letter-spacing);
    text-transform: uppercase;
    white-space: nowrap;
}

.floe-status-chip--ok,
.humboldt-pill--ok {
    background: var(--state-success-bg);
    border-color: var(--state-success-border);
    color: var(--state-success-text);
}

.floe-status-chip--pending,
.humboldt-pill--pending {
    background: var(--state-warning-bg);
    border-color: var(--state-warning-border);
    color: var(--state-warning-text);
}

.floe-status-chip--error,
.humboldt-pill--error {
    background: var(--state-danger-bg);
    border-color: var(--state-danger-border);
    color: var(--state-danger-text);
}

.floe-status-chip--soft,
.humboldt-pill--soft {
    background: var(--state-neutral-bg);
    border-color: var(--state-neutral-border);
    color: var(--state-neutral-text);
}

.floe-writeback-pill.floe-writeback-pill--status-not-started {
    background: var(--state-neutral-bg);
    border-color: var(--state-neutral-border);
    color: var(--state-neutral-text);
}

.floe-writeback-pill.floe-writeback-pill--status-pending-review {
    background: var(--state-warning-bg);
    border-color: var(--state-warning-border);
    color: var(--state-warning-text);
}

.floe-writeback-pill.floe-writeback-pill--status-queued {
    background: var(--state-info-bg);
    border-color: var(--state-info-border);
    color: var(--state-info-text);
}

.floe-writeback-pill.floe-writeback-pill--status-running {
    background: #e7f0fb;
    border-color: rgba(49, 104, 146, 0.24);
    color: #315c8c;
}

.floe-writeback-pill.floe-writeback-pill--status-retry-waiting {
    background: #f1effb;
    border-color: rgba(91, 92, 168, 0.24);
    color: #5b5ca8;
}

.floe-writeback-pill.floe-writeback-pill--status-applied,
.floe-writeback-pill.floe-writeback-pill--status-not-required {
    background: var(--state-success-bg);
    border-color: var(--state-success-border);
    color: var(--state-success-text);
}

.floe-writeback-pill.floe-writeback-pill--status-failed {
    background: var(--state-danger-bg);
    border-color: var(--state-danger-border);
    color: var(--state-danger-text);
}

.status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: var(--floe-pill-min-height);
    padding: 3px var(--floe-pill-padding-x);
    border-radius: var(--floe-pill-radius);
    border: 1px solid var(--floe-pill-border);
    background: var(--floe-pill-bg);
    color: var(--floe-pill-color);
    font-size: var(--floe-pill-font-size);
    font-weight: var(--floe-pill-font-weight);
    text-transform: uppercase;
    letter-spacing: var(--floe-pill-letter-spacing);
    line-height: 1.1;
    white-space: nowrap;
}

.status-pill--soft,
.status-pill--neutral,
.status-pill--archived,
.status-pill--cancelled,
.status-pill--deferred {
    border-color: var(--state-neutral-border);
    background: var(--state-neutral-bg);
    color: var(--state-neutral-text);
}

.status-pill--info,
.status-pill--active,
.status-pill--loading,
.status-pill--ongoing {
    border-color: var(--state-info-border);
    background: var(--state-info-bg);
    color: var(--state-info-text);
}

.status-pill--ok,
.status-pill--approved,
.status-pill--ready,
.status-pill--completed,
.status-pill--done,
.status-pill--synced,
.status-pill--validated,
.status-pill--within {
    border-color: var(--state-success-border);
    background: var(--state-success-bg);
    color: var(--state-success-text);
}

.status-pill--pending,
.status-pill--review,
.status-pill--draft,
.status-pill--stalled,
.status-pill--warning,
.status-pill--check-frontend {
    border-color: var(--state-warning-border);
    background: var(--state-warning-bg);
    color: var(--state-warning-text);
}

.status-pill--blocked,
.status-pill--urgent,
.status-pill--rejected,
.status-pill--error,
.status-pill--failed,
.status-pill--disapproved,
.status-pill--overdue {
    border-color: var(--state-danger-border);
    background: var(--state-danger-bg);
    color: var(--state-danger-text);
}

:where(.page-shell, .floe-app-frame, .antarctica-shell) :where(
    .floe-pill,
    .floe-meta-pill,
    .floe-dashboard-meta-badge,
    .floe-result-badge,
    .floe-review-chip,
    .floe-status-filter-pill,
    .raft-query-status-pill,
    .floe-status-chip,
    .humboldt-pill,
    .status-pill,
    .floe-count-pill,
    .multi-box-count,
    .mini-stats span,
    .floe-stat-chips span,
    .best-box__stats span
) {
    border-radius: var(--floe-pill-radius);
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}

.empty-state {
    padding: 20px 12px;
    text-align: center;
    color: var(--floe-local-placeholder-text);
    font-size: 0.86rem;
    font-weight: 400;
}

.empty-state--boxed {
    border: 1px dashed var(--floe-local-placeholder-border);
    border-radius: 8px;
    background: var(--floe-local-placeholder-bg);
    box-shadow: none;
}

.empty-state--boxed code {
    border: 1px solid var(--floe-local-placeholder-border);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.58);
    color: var(--floe-local-placeholder-strong);
    font-size: 0.78em;
}

.pagination {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.pagination__link {
    min-width: 36px;
    min-height: 36px;
    padding: 0 10px;
    border-radius: 10px;
    display: inline-grid;
    place-items: center;
    border: 1px solid var(--panel-border);
    background: #ffffff;
    color: var(--muted);
    font-weight: 700;
}

.pagination__link--active {
    background: var(--accent-soft);
    color: var(--accent-dark);
    border-color: rgba(var(--accent-rgb), 0.22);
}

/* Canonical table and pagination grammar for operational screens. */
.page-shell :is(
    .floe-table-wrap,
    .floe-dashboard-table-wrap,
    .raft-table-wrap,
    .raft-dashboard-table-wrap,
    .table-wrap,
    .queue-table-wrap,
    .humboldt-audit-table-wrap,
    .raft-auto-table-shell,
    .tern-decision-option__table-wrap
) {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
    overflow-y: visible;
    border: 1px solid var(--panel-border);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: none;
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    background: #ffffff;
    color: var(--text);
    font-size: 0.8rem;
    line-height: 1.4;
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) :is(th, td) {
    padding: 11px 12px;
    border-right: 0;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    text-align: left;
    vertical-align: middle;
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) :is(th, td).floe-data-table__numeric {
    text-align: center;
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) :is(strong, b) {
    font-weight: 560;
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) :is(
    .floe-data-table__primary,
    .raft-query-table__primary,
    .raft-query-company-card__name,
    .raft-query-table__source-primary,
    .queue-table__batch-name
) {
    font-weight: 560;
    letter-spacing: 0;
}

.page-shell .raft-query-table td.raft-query-table__company-cell {
    display: table-cell;
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) :is(.status-pill, .raft-query-company-card__contact-count, .queue-table__status-pill) {
    border-radius: var(--floe-pill-radius);
    font-weight: var(--floe-pill-font-weight);
    letter-spacing: var(--floe-pill-letter-spacing);
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) .raft-query-company-card__contact-count {
    min-height: 22px;
    padding: 2px 7px;
    border-color: var(--floe-meta-pill-border);
    background: var(--floe-meta-pill-bg);
    color: var(--floe-meta-pill-color);
    font-size: 0.64rem;
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) :is(th:last-child, td:last-child) {
    border-right: 0;
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) thead th {
    background: #f8fafc;
    color: var(--floe-card-header-label-color);
    font-size: var(--floe-card-header-label-font-size);
    font-weight: var(--floe-card-header-label-font-weight);
    letter-spacing: var(--floe-card-header-label-letter-spacing);
    line-height: var(--floe-card-header-label-line-height);
    text-transform: uppercase;
    white-space: nowrap;
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) tbody tr {
    background: transparent;
}

.page-shell :is(
    .floe-data-table,
    .raft-data-table,
    .data-table,
    .cart-table,
    .humboldt-data-table,
    .queue-table,
    .raft-query-table
) tbody tr:last-child td {
    border-bottom: 0;
}

.page-shell :is(.floe-data-table--matrix, .raft-data-table--matrix) :is(th, td) {
    white-space: nowrap;
}

.page-shell :is(
    .floe-pagination,
    .glacier-pagination,
    .raft-pagination,
    .pagination,
    .humboldt-pagination,
    .raft-validation-pagination,
    .raft-auto-pagination-bar,
    .floe-pagination--queue,
    .floe-reference-pagination,
    .raft-pagination--queue,
    .tern-catalog-pagination
) {
    box-sizing: border-box;
    width: min(100%, calc(100% - (var(--floe-pagination-inline-inset) * 2)));
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px 16px;
    flex-wrap: wrap;
    margin: var(--floe-pagination-surface-gap) auto;
    padding: var(--floe-pagination-padding-y) var(--floe-pagination-padding-x);
    border: 1px solid var(--floe-pagination-border);
    border-radius: var(--floe-pagination-radius);
    background: var(--floe-pagination-bg);
    color: var(--floe-pagination-text);
    font-size: var(--floe-pagination-font-size);
    font-weight: var(--floe-pagination-font-weight);
    letter-spacing: var(--floe-pagination-letter-spacing);
    line-height: 1;
    text-transform: uppercase;
}

.page-shell :is(
    .floe-pagination--top,
    .glacier-pagination--top,
    .floe-reference-pagination--top,
    .raft-pagination--top,
    .pagination--top,
    .humboldt-pagination--top,
    .raft-validation-pagination--top,
    .raft-auto-pagination-bar--top,
    .tern-catalog-pagination--top
) {
    margin-top: 0;
    margin-bottom: var(--floe-pagination-join-overlap);
    border-radius: var(--floe-pagination-radius) var(--floe-pagination-radius) 0 0;
}

.page-shell :is(
    .floe-pagination--bottom,
    .glacier-pagination--bottom,
    .floe-reference-pagination--bottom,
    .raft-pagination--bottom,
    .pagination--bottom,
    .humboldt-pagination--bottom,
    .raft-validation-pagination--bottom,
    .raft-auto-pagination-bar--bottom,
    .tern-catalog-pagination--bottom
) {
    margin-top: var(--floe-pagination-join-overlap);
    margin-bottom: 0;
    border-radius: 0 0 var(--floe-pagination-radius) var(--floe-pagination-radius);
}

.page-shell :is(
    .floe-pagination--top,
    .glacier-pagination--top,
    .floe-reference-pagination--top,
    .raft-pagination--top,
    .pagination--top,
    .humboldt-pagination--top,
    .raft-validation-pagination--top,
    .raft-auto-pagination-bar--top
) + :is(
    .floe-table-wrap,
    .floe-dashboard-table-wrap,
    .floe-reference-table,
    .floe-reference-queue,
    .glacier-list,
    .glacier-batches-list,
    .table-wrap,
    .queue-table-wrap,
    .raft-table,
    .raft-queue,
    .raft-table-wrap,
    .raft-dashboard-table-wrap,
    .humboldt-table,
    .humboldt-audit-table-wrap,
    .tern-catalog-table,
    .tern-catalog-list,
    .tern-simple-rate-queue
) {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.page-shell :is(
    .floe-table-wrap,
    .floe-dashboard-table-wrap,
    .floe-reference-table,
    .floe-reference-queue,
    .glacier-list,
    .glacier-batches-list,
    .table-wrap,
    .queue-table-wrap,
    .raft-table,
    .raft-queue,
    .raft-table-wrap,
    .raft-dashboard-table-wrap,
    .humboldt-table,
    .humboldt-audit-table-wrap,
    .tern-catalog-table,
    .tern-catalog-list,
    .tern-simple-rate-queue
):has(+ :is(
    .floe-pagination--bottom,
    .glacier-pagination--bottom,
    .floe-reference-pagination--bottom,
    .raft-pagination--bottom,
    .pagination--bottom,
    .humboldt-pagination--bottom,
    .raft-validation-pagination--bottom,
    .raft-auto-pagination-bar--bottom,
    .tern-catalog-pagination--bottom
)) {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.page-shell :is(
    .floe-pagination__controls,
    .glacier-pagination__controls,
    .floe-reference-pagination__controls,
    .raft-pagination__controls,
    .humboldt-pagination__links,
    .raft-auto-pagination-bar__controls
) {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    flex-wrap: wrap;
    margin-left: 18px;
}

.page-shell :is(
    .floe-pagination__summary,
    .glacier-pagination__summary,
    .floe-reference-pagination__summary,
    .raft-pagination__summary,
    .raft-validation-pagination__summary,
    .raft-pagination__summary-text,
    .humboldt-pagination__summary,
    .raft-auto-pagination-bar__summary
) {
    color: var(--floe-pagination-text);
    font-size: var(--floe-pagination-font-size);
    font-weight: var(--floe-pagination-font-weight);
    letter-spacing: var(--floe-pagination-letter-spacing);
    line-height: 1.15;
    text-transform: uppercase;
    white-space: nowrap;
}

.page-shell :is(
    .floe-pagination__link,
    .floe-pagination__current,
    .floe-pagination__disabled,
    .glacier-pagination__control,
    .glacier-pagination__current,
    .floe-reference-pagination__control,
    .floe-reference-pagination__current,
    .raft-pagination__link,
    .raft-pagination__current,
    .raft-pagination__disabled,
    .pagination__link,
    .humboldt-pagination__link
) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: var(--floe-pagination-control-size);
    min-height: var(--floe-pagination-control-size);
    padding: 0 8px;
    border: 1px solid var(--floe-pagination-control-border);
    border-radius: 6px;
    background: var(--floe-pagination-control-bg);
    color: var(--floe-pagination-strong-text);
    box-shadow: none;
    font-size: var(--floe-pagination-font-size);
    font-weight: var(--floe-pagination-font-weight);
    letter-spacing: 0;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    transform: none;
}

.page-shell :is(
    .floe-pagination__link,
    .glacier-pagination__control,
    .floe-reference-pagination__control,
    .raft-pagination__link,
    .pagination__link,
    .humboldt-pagination__link
):hover,
.page-shell :is(
    .floe-pagination__link,
    .glacier-pagination__control,
    .floe-reference-pagination__control,
    .raft-pagination__link,
    .pagination__link,
    .humboldt-pagination__link
):focus-visible {
    border-color: rgba(var(--accent-rgb), 0.24);
    background: var(--floe-pagination-bg);
    color: var(--accent-dark);
    outline: none;
    transform: none;
}

.page-shell :is(
    .floe-pagination__current,
    .glacier-pagination__current,
    .floe-reference-pagination__current,
    .raft-pagination__current,
    .pagination__link--active,
    .humboldt-pagination__link--current
) {
    border-color: transparent;
    background: transparent;
    color: var(--accent-dark);
    pointer-events: none;
}

.page-shell :is(
    .floe-pagination__disabled,
    .glacier-pagination__control--disabled,
    .floe-reference-pagination__control--disabled,
    .raft-pagination__disabled
) {
    color: var(--floe-pagination-muted-text);
    background: #eef2f6;
}

.page-shell :is(.floe-pagination__ellipsis, .raft-pagination__ellipsis, .humboldt-pagination__gap) {
    padding: 0 2px;
    color: var(--muted);
    font-size: 0.78rem;
    font-weight: 700;
}

.page-shell :is(.floe-pagination__form, .raft-pagination__form, .raft-auto-pagination-bar__page-size) {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}

.page-shell :is(
    .floe-pagination__label,
    .glacier-pagination__page-size,
    .floe-reference-pagination__page-size,
    .raft-pagination__label
) {
    color: var(--floe-pagination-text);
    font-size: var(--floe-pagination-font-size);
    font-weight: var(--floe-pagination-font-weight);
    letter-spacing: var(--floe-pagination-letter-spacing);
    text-transform: uppercase;
    white-space: nowrap;
}

.page-shell :is(.floe-pagination__select, .raft-pagination__select) {
    min-width: 58px;
    min-height: 32px;
    padding: 0 8px;
    border: 1px solid var(--panel-border);
    border-radius: 8px;
    background: #ffffff;
    color: var(--text);
    font-size: 0.72rem;
    line-height: 1;
    box-shadow: none;
}

.page-shell :is(
    .glacier-pagination__page-size,
    .floe-reference-pagination__page-size,
    .glacier-pagination__selection-action,
    .floe-reference-pagination__selection-action
) {
    min-height: var(--floe-pagination-chip-height);
    border-color: transparent;
    border-radius: 0;
    background: transparent;
    color: var(--floe-pagination-text);
    font-size: var(--floe-pagination-font-size);
    font-weight: var(--floe-pagination-font-weight);
    letter-spacing: var(--floe-pagination-letter-spacing);
    line-height: 1;
    text-transform: uppercase;
}

.page-shell :is(.glacier-pagination__page-size, .floe-reference-pagination__page-size) {
    margin-left: auto;
}

.page-shell :is(.glacier-pagination__control, .floe-reference-pagination__control, .raft-pagination__link--compact, .raft-pagination__disabled--compact) {
    min-width: 16px;
    min-height: var(--floe-pagination-chip-height);
    padding: 0 2px;
    border-color: transparent;
    border-radius: 0;
    background: transparent;
}

.page-shell :is(.glacier-pagination__control, .floe-reference-pagination__control, .raft-pagination__link--compact):hover,
.page-shell :is(.glacier-pagination__control, .floe-reference-pagination__control, .raft-pagination__link--compact):focus-visible {
    border-color: transparent;
    background: transparent;
}

.page-shell :is(.glacier-pagination__control--disabled, .floe-reference-pagination__control--disabled, .raft-pagination__disabled--compact) {
    background: transparent;
    opacity: 0.72;
}

.floe-results-surface {
    display: grid;
    gap: 0;
    min-width: 0;
}

@media (max-width: 1280px) {
    .floe-kpi-grid--lead {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 860px) {
    .floe-kpi-grid--lead,
    .floe-kpi-grid--results {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .floe-inline-grid-form,
    .floe-inline-grid-form--compact,
    .floe-inline-grid-form--validation,
    .floe-inline-grid-form--assignment,
    .floe-form-grid--split,
    .raft-inline-form,
    .raft-inline-form--compact,
    .raft-inline-form--validation,
    .raft-inline-form--assignment,
    .raft-batch-form-grid,
    .floe-manual-grid,
    .raft-manual-grid,
    .floe-contact-grid,
    .raft-contact-grid {
        grid-template-columns: 1fr;
    }

    .floe-bulk-toolbar,
    .raft-assignment-bulk-toolbar,
    .floe-bulk-toolbar__controls,
    .raft-assignment-bulk-toolbar__controls {
        grid-template-columns: 1fr;
    }

    .floe-bulk-toolbar,
    .raft-assignment-bulk-toolbar {
        align-items: stretch;
    }

    .floe-bulk-toolbar__selection,
    .raft-assignment-bulk-toolbar__selection {
        justify-content: space-between;
        align-items: end;
    }

    .floe-query-filter-grid,
    .raft-query-filter-grid {
        display: grid;
        grid-template-columns: 1fr;
    }

    .floe-query-filter-field,
    .floe-query-filter-field--wide,
    .floe-query-filter-field--search,
    .raft-query-filter-field,
    .raft-query-filter-field--wide,
    .raft-query-filter-field--search {
        width: 100%;
        max-width: none;
        min-width: 0;
        flex-basis: auto;
    }

    .floe-status-filter-row,
    .raft-query-status-row {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .floe-grid-span-full,
    .floe-grid-span-12,
    .floe-grid-span-8,
    .floe-grid-span-5,
    .floe-grid-span-4,
    .floe-grid-span-3,
    .floe-grid-span-2,
    .raft-span-full,
    .raft-span-12,
    .raft-span-8,
    .raft-span-5,
    .raft-span-4,
    .raft-span-3,
    .raft-span-2 {
        grid-column: auto;
    }
}

@media (max-width: 1180px) {
    .floe-dashboard-bar {
        padding: 12px;
    }

    .floe-dashboard-meta-row {
        justify-content: flex-end;
    }

    .floe-dashboard-search-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 780px) {
    .floe-form-actions,
    .raft-validation-actions {
        justify-content: flex-start;
    }

    .floe-shell-bar {
        padding: 12px;
    }

    .floe-nav-group {
        width: 100%;
    }

    .floe-nav-group--tools {
        margin-left: 0;
    }

    .floe-nav-group + .floe-nav-group {
        padding-left: 0;
        border-left: 0;
    }

    .floe-nav-link,
    .floe-toolbar .button,
    .raft-actions .button,
    .raft-toolbar .button,
    .raft-filter-actions .button {
        width: 100%;
        min-width: 0;
    }

    .floe-nav-menu-item {
        width: 100%;
    }

    .floe-menu-button {
        flex: 1 1 auto;
        width: 100%;
    }

    .floe-nav-menu-item--split .floe-menu-button--split-link {
        flex: 1 1 auto;
        width: auto;
    }

    .floe-nav-menu-item--split .floe-menu-button--split-toggle {
        flex: 0 0 29px;
        width: 29px;
        min-width: 29px;
    }

    .floe-nav-submenu {
        right: 0;
        left: 0;
        min-width: 0;
    }

    .floe-queue-toolbar {
        flex-direction: column;
        align-items: flex-start;
    }

    .floe-queue-toolbar__side {
        width: 100%;
        margin-left: 0;
        justify-content: flex-start;
    }

    .floe-review-meta-grid,
    .floe-review-panel-grid,
    .floe-review-card-grid {
        grid-template-columns: 1fr;
    }

    .floe-review-card__top {
        flex-direction: column;
        align-items: flex-start;
    }

    .floe-progress-track__meta {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 640px) {
    .floe-kpi-grid--lead,
    .floe-kpi-grid--results {
        grid-template-columns: 1fr;
    }

    .floe-us-state-heatmap__summary {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 980px) {
    :root {
        --floe-shell-inline-gutter: 16px;
    }

    .pgn-shellbar__inner {
        width: var(--pgn-shellbar-inner-width);
    }

    .page-header {
        flex-direction: column;
        align-items: start;
    }

    .mini-stats,
    .card-header__side {
        justify-content: flex-start;
    }
}

@media (max-width: 760px) {
    .pgn-shellbar__inner,
    .pgn-shellbar__left,
    .pgn-shellbar__right {
        align-items: center;
    }

    .pgn-shellbar__inner {
        padding: 0;
    }

    .pgn-shellbar__brand,
    .pgn-shellbar__link {
        min-height: var(--pgn-shellbar-height);
    }

    .pgn-shellbar__brand {
        font-size: 1.2rem;
        border-right: none;
    }

    .page-shell {
        width: var(--floe-shell-frame-width);
        margin-top: 0;
    }

    .banner,
    .column-card,
    .notice-card {
        border-radius: 16px;
    }

    .column-card,
    .notice-card {
        padding: var(--floe-card-padding-mobile);
    }

    .page-header,
    .card-header,
    .page-toolbar,
    .subsection-header {
        flex-direction: column;
        align-items: start;
    }

    .page-header {
        padding: 10px 14px 11px;
        border-radius: 0;
    }

    .page-footer {
        padding-left: 14px;
        padding-right: 14px;
    }

    .floe-progress-panel__head,
    .floe-progress-panel__footer,
    .progress-panel__head,
    .progress-panel__footer {
        flex-direction: column;
        align-items: start;
    }

    .floe-progress-panel__side,
    .progress-panel__side {
        text-align: left;
    }

    .floe-refresh-controls,
    .refresh-controls {
        align-items: flex-start;
    }

    .floe-refresh-button,
    .refresh-button,
    .floe-action-row,
    .action-row {
        width: 100%;
    }

    .floe-button-row .button,
    .utilityBar .button {
        min-width: 0;
        flex: 1 1 180px;
    }

    .floe-detail-grid,
    .result-grid {
        grid-template-columns: 1fr;
    }

    .floe-accent-callout,
    .best-box,
    .floe-result-card__head,
    .result-card__head,
    .floe-toggle-row,
    .options-form {
        flex-direction: column;
        align-items: start;
    }

    .floe-stat-chips,
    .best-box__stats {
        justify-content: flex-start;
    }

    .floe-inline-form,
    .inline-form {
        flex-wrap: wrap;
    }

    .floe-log-stream,
    .log-stream {
        max-height: none;
    }

    .floe-dashboard-panel-grid,
    .floe-dashboard-panel-grid--three,
    .floe-stage-board {
        grid-template-columns: 1fr;
    }

    .floe-dashboard-surface__header,
    .floe-stage-column__header,
    .floe-stage-item__head,
    .floe-metric-card__head {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* Floe canonical card header aliases for legacy app-specific card heads. */
:where(.page-shell, .floe-app-frame, .antarctica-shell) :where(
    .floe-progress-panel__head,
    .progress-panel__head,
    .floe-metric-card__head,
    .floe-contact-card__head,
    .floe-review-section-heading,
    .tern-panel__head,
    .tern-rule-card__head,
    .tern-rule-output-box__head,
    .tern-robot-lock-card__head,
    .tern-option-card__head,
    .tern-packing-box__head
) {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-width: 0 !important;
    margin: 0 0 12px !important;
}

:where(.page-shell, .floe-app-frame, .antarctica-shell) :where(
    .floe-progress-panel__head,
    .progress-panel__head,
    .floe-metric-card__head,
    .floe-contact-card__head,
    .floe-review-section-heading,
    .tern-panel__head,
    .tern-rule-card__head,
    .tern-rule-output-box__head,
    .tern-robot-lock-card__head,
    .tern-option-card__head,
    .tern-packing-box__head
) > :where(div, [class$="__copy"], [class$="__body"], [class$="__main"], [class$="__meta"]) {
    display: grid !important;
    gap: 4px !important;
    min-width: 0 !important;
}

:where(.page-shell, .floe-app-frame, .antarctica-shell) :where(
    .floe-progress-panel__head,
    .progress-panel__head,
    .floe-metric-card__head,
    .floe-contact-card__head,
    .floe-review-section-heading,
    .tern-panel__head,
    .tern-rule-card__head,
    .tern-rule-output-box__head,
    .tern-robot-lock-card__head,
    .tern-option-card__head,
    .tern-packing-box__head
) :where(.eyebrow, [class$="__eyebrow"], .floe-metric-card__label, h1:first-child, h2:first-child, h3:first-child, h4:first-child) {
    margin: 0 !important;
    color: var(--floe-card-title-color) !important;
    font-size: var(--floe-card-title-font-size) !important;
    font-weight: var(--floe-card-title-font-weight) !important;
    letter-spacing: var(--floe-card-title-letter-spacing) !important;
    line-height: var(--floe-card-title-line-height) !important;
    text-transform: uppercase !important;
}

/* Shared Brain/Floe Markdown browser and knowledge map contract. */
.floe-doc-tabs {
    width: fit-content;
    max-width: 100%;
    box-sizing: border-box;
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    padding: 4px;
    border: 1px solid var(--floe-color-border-muted);
    border-radius: 8px;
    background: var(--floe-surface-toolbar);
}

.floe-doc-tabs a {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 11px;
    border: 1px solid transparent;
    border-radius: 6px;
    background: transparent;
    color: var(--state-neutral-text);
    font-size: 0.66rem;
    font-weight: 520;
    letter-spacing: 0.12em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
}

.floe-doc-tabs a:hover,
.floe-doc-tabs a:focus-visible,
.floe-doc-tabs a.is-active {
    border-color: var(--state-info-border);
    background: #ffffff;
    color: var(--state-info-text);
    box-shadow: inset 0 -2px 0 var(--accent);
}

.floe-doc-tabs a:focus-visible,
.floe-doc-card:focus-visible,
.floe-doc-map__step:focus-visible,
.floe-doc-map__card:focus-visible {
    outline: 2px solid rgba(var(--accent-rgb), 0.28);
    outline-offset: 2px;
}

.floe-doc-browser,
.floe-doc-reader,
.floe-doc-shell,
.floe-doc-outline,
.floe-doc-article,
.floe-doc-map,
.floe-doc-map__cluster,
.floe-doc-map__cards {
    min-width: 0;
    display: grid;
}

.floe-doc-browser,
.floe-doc-map {
    gap: 14px;
}

.floe-doc-browser {
    grid-template-columns: minmax(220px, 284px) minmax(0, 1fr);
    align-items: start;
}

.floe-doc-library {
    min-width: 0;
    display: grid;
    gap: 8px;
    align-content: start;
    max-height: calc(100vh - 220px);
    overflow: auto;
}

.floe-doc-card {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 5px;
    min-height: 86px;
    padding: 10px 11px;
    border: 1px solid var(--state-neutral-border);
    border-radius: 8px;
    background: #ffffff;
    color: var(--state-neutral-text);
    text-decoration: none;
}

.floe-doc-card:hover,
.floe-doc-card:focus-visible,
.floe-doc-card--active {
    border-color: var(--state-info-border);
    background: var(--state-info-bg);
    color: var(--state-info-text);
}

.floe-doc-card span,
.floe-doc-map__cluster header strong,
.floe-doc-map__card strong,
.floe-doc-map__step span,
.floe-doc-reader__header span,
.floe-doc-outline > span {
    color: var(--text);
    font-size: 0.576rem;
    font-weight: 620;
    letter-spacing: 0.08em;
    line-height: 1.18;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.floe-doc-card small,
.floe-doc-card em,
.floe-doc-map__cluster header span,
.floe-doc-map__card span,
.floe-doc-map__step small,
.floe-doc-outline a,
.floe-doc-outline p {
    min-width: 0;
    color: currentColor;
    font-size: 0.66rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.floe-doc-card em,
.floe-doc-map__card code,
.floe-doc-reader__header code {
    color: var(--floe-card-header-label-color);
    font-size: 0.58rem;
    font-style: normal;
    letter-spacing: 0.06em;
    line-height: 1.25;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.floe-doc-reader {
    gap: 0;
    border: 1px solid var(--floe-color-border-muted);
    border-radius: 8px;
    background: #ffffff;
    overflow: hidden;
}

.floe-doc-reader__header {
    min-width: 0;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 15px;
    border-bottom: 1px solid #e4ebf2;
    background: #fbfdff;
}

.floe-doc-reader__header div {
    min-width: 0;
    display: grid;
    gap: 4px;
}

.floe-doc-reader__header strong {
    min-width: 0;
    color: #172536;
    font-size: 0.96rem;
    font-weight: 560;
    letter-spacing: 0;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.floe-doc-reader__header code {
    padding: 6px 8px;
    border: 1px solid var(--state-neutral-border);
    border-radius: 6px;
    background: #ffffff;
    white-space: normal;
}

.floe-doc-shell {
    gap: 14px;
    padding: 18px;
}

.floe-doc-outline {
    gap: 9px;
    padding: 12px;
    border: 1px solid var(--state-neutral-border);
    border-radius: 8px;
    background: var(--floe-color-bg-page-soft);
    color: var(--state-neutral-text);
}

.floe-doc-outline ol {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.floe-doc-outline__item a {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    padding: 0 8px;
    border: 1px solid var(--state-neutral-border);
    border-radius: 6px;
    background: #ffffff;
    color: var(--state-neutral-text);
    text-decoration: none;
}

.floe-doc-outline__item--level-3 a {
    background: var(--state-neutral-bg);
    color: #6d7c89;
}

.floe-doc-outline__item a:hover,
.floe-doc-outline__item a:focus-visible {
    border-color: var(--state-info-border);
    color: var(--state-info-text);
}

.floe-md-document {
    max-width: 960px;
    color: #26374a;
    font-size: 0.92rem;
    line-height: 1.66;
}

.floe-md-document h1,
.floe-md-document h2,
.floe-md-document h3,
.floe-md-document h4,
.floe-md-document h5,
.floe-md-document h6 {
    color: #172536;
    line-height: 1.15;
}

.floe-md-document h1 {
    margin: 0 0 18px;
    font-size: 1.82rem;
    font-weight: 520;
    letter-spacing: 0;
}

.floe-md-section {
    display: grid;
    gap: 10px;
    margin-top: 14px;
    padding: 16px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #ffffff;
}

.floe-md-section h2 {
    margin: 0 0 2px;
    padding: 0 0 10px;
    border-bottom: 1px solid #e8eef4;
    font-size: 1.05rem;
    font-weight: 560;
    letter-spacing: 0.02em;
}

.floe-md-document h3 {
    margin: 10px 0 0;
    color: #33475b;
    font-size: 0.86rem;
    font-weight: 560;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.floe-md-document p,
.floe-md-document ul,
.floe-md-document ol,
.floe-md-document blockquote,
.floe-md-document pre,
.floe-md-document hr {
    margin: 0 0 12px;
}

.floe-md-section > :last-child {
    margin-bottom: 0;
}

.floe-md-document ul,
.floe-md-document ol {
    padding-left: 1.35rem;
}

.floe-md-document li + li {
    margin-top: 5px;
}

.floe-md-document a {
    color: var(--accent-dark);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.floe-md-document code {
    padding: 0.12rem 0.28rem;
    border-radius: 4px;
    background: #f3f7fa;
    color: #244b73;
    font-size: 0.86em;
}

.floe-md-document pre {
    max-width: 100%;
    overflow: auto;
    padding: 14px 16px;
    border: 1px solid #dbe4ee;
    border-radius: 8px;
    background: #f8fafc;
}

.floe-md-document pre code {
    padding: 0;
    background: transparent;
}

.floe-md-document blockquote {
    padding: 10px 14px;
    border-left: 3px solid var(--accent);
    background: #f8fafc;
    color: #53677a;
}

.floe-doc-map__flow {
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
}

.floe-doc-map__step {
    position: relative;
    min-width: 0;
    display: grid;
    gap: 6px;
    align-content: start;
    padding: 12px;
    border: 1px solid var(--state-info-border);
    border-radius: 8px;
    background: var(--state-info-bg);
    color: var(--state-info-text);
    text-decoration: none;
}

.floe-doc-map__step:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -16px;
    width: 14px;
    height: 1px;
    background: var(--state-info-border);
}

.floe-doc-map__step:not(:last-child)::before {
    content: "";
    position: absolute;
    top: calc(50% - 4px);
    right: -17px;
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--state-info-border);
    border-right: 1px solid var(--state-info-border);
    transform: rotate(45deg);
}

.floe-doc-map__clusters {
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 12px;
}

.floe-doc-map__cluster {
    align-content: start;
    gap: 10px;
    padding: 12px;
    border: 1px solid var(--floe-color-border-muted);
    border-radius: 8px;
    background: #ffffff;
}

.floe-doc-map__cluster header {
    min-width: 0;
    display: flex;
    justify-content: space-between;
    gap: 10px;
    padding-bottom: 9px;
    border-bottom: 1px solid #e4ebf2;
}

.floe-doc-map__cards {
    gap: 8px;
}

.floe-doc-map__card {
    min-width: 0;
    display: grid;
    gap: 5px;
    padding: 9px;
    border: 1px solid var(--state-neutral-border);
    border-radius: 8px;
    background: #fbfdff;
    color: var(--state-neutral-text);
    text-decoration: none;
}

.floe-doc-map__card:hover,
.floe-doc-map__card:focus-visible {
    border-color: var(--state-info-border);
    background: var(--state-info-bg);
    color: var(--state-info-text);
}

@media (max-width: 980px) {
    .floe-doc-map__flow {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .floe-doc-map__step:not(:last-child)::after {
        top: auto;
        right: 50%;
        bottom: -9px;
        width: 1px;
        height: 8px;
    }

    .floe-doc-map__step:not(:last-child)::before {
        top: auto;
        right: calc(50% - 4px);
        bottom: -11px;
        transform: rotate(135deg);
    }
}

@media (max-width: 760px) {
    .floe-doc-browser {
        grid-template-columns: 1fr;
    }

    .floe-doc-library {
        max-height: none;
        overflow: visible;
    }

    .floe-doc-reader__header {
        display: grid;
    }

    .floe-doc-shell {
        padding: 12px;
    }

    .floe-md-section {
        padding: 12px;
    }
}
