/*
File: public/app/styles/pools.css
Purpose: Own Pools-only presentation that is not shared with another page lane.
Owner/Card: TL-WEB-W257 / BC-20260919-THROTTLELEAGUE-WEB-POOLS-GOOGLE-STANDARD-AD-SIZE-AND-RESPONSIVE-GEOMETRY-CORRECTION-170.
Runtime Surface: Browser CSS loaded only for the Pools page module.
Public API: Pools route class selectors and route-level advertising-container state selectors.
Dependencies: Pools route markup from public/app/pages/pools.js and existing global design tokens.
Side Effects: Applies exact standard-size placeholders and collapses ineligible rails; performs no requests or mutation.
Determinism: Deterministic for the same markup, state attributes, and viewport dimensions.
Safety: Every selector is scoped to .route-pools; the file must not style another route or provide shared provider behavior.
Evidence: tools/verify_tl_web_pools_google_standard_ad_geometry.js and task-specific viewport screenshots.
Notes: Banner sizes are exact at every approved breakpoint. Four 300x250 rail hosts exist only in layout at 1600px and wider. Historical room-prefixed classes and slot identities remain stable.
*/

/* SECTION: Pools route advertising container layout
Descriptor: Defines exact page-scoped Google-supported inventory geometry while keeping wrappers flexible, ineligible rails collapsed, and provider loading disabled.
*/

.route-pools .pools-room-ad-banner,
.route-pools .pools-room-hero-ad-stack,
.route-pools .pools-route-ad-shell,
.route-pools .pools-room-ad-layout,
.route-pools .pools-room-ad-content,
.route-pools .pools-room-ad-rail,
.route-pools .pools-room-ad-slot,
.route-pools .pools-room-ad-container {
  box-sizing: border-box;
  min-width: 0;
}

.route-pools .pools-room-ad-banner {
  display: grid;
  width: 100%;
  place-items: center;
  margin: 0 auto 12px;
  padding: 0;
  background: transparent;
  border: 0;
}

.route-pools .main-feature-row--pool-room,
.route-pools .main-feature-row--pools-discovery {
  align-items: stretch;
  gap: 16px;
  margin-bottom: 12px;
}

.route-pools .main-feature-row--pool-room > .page-feature-hero,
.route-pools .main-feature-row--pools-discovery > .page-feature-hero {
  box-sizing: border-box;
  width: 100%;
  height: var(--non-home-feature-height);
  min-height: var(--non-home-feature-height);
  margin: 0;
}

.route-pools .main-feature-row--pool-room > .main-page-rail,
.route-pools .main-feature-row--pools-discovery > .main-page-rail {
  align-self: stretch;
}

.route-pools .main-feature-row--pool-room > .main-page-rail .card,
.route-pools .main-feature-row--pools-discovery > .main-page-rail .card {
  height: 100%;
}

.route-pools .pools-availability-scroll--column {
  min-height: clamp(200px, 14vw, 240px);
  max-height: clamp(240px, 18vw, 320px);
}

/* Pool availability cards are complete, intrinsic-height navigation targets.
 * The list owns scrolling; cards never depend on fixed heights or clipping to
 * contain long names and expanded/translated metadata. */
.route-pools .pools-availability-scroll {
  grid-auto-rows: max-content;
  align-content: start;
  row-gap: 10px;
  overflow-x: auto;
  overflow-anchor: none;
}

.route-pools .pools-availability-scroll > section {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.route-pools .pool-card[data-pool-card-navigation] {
  display: grid;
  grid-auto-rows: max-content;
  align-content: start;
  align-items: start;
  min-width: 0;
  min-height: 108px;
  height: auto;
  overflow: visible;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.35;
}

.route-pools .pool-card[data-pool-card-navigation] > span,
.route-pools .pool-card[data-pool-card-navigation] > strong,
.route-pools .pool-card[data-pool-card-navigation] > small,
.route-pools .pool-card[data-pool-card-navigation] > b,
.route-pools .pool-card[data-pool-card-navigation] > em {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.route-pools .pool-card[data-pool-card-navigation] > strong {
  line-height: 1.2;
}

.route-pools .pool-card[data-pool-card-navigation] > small,
.route-pools .pool-card[data-pool-card-navigation] > b,
.route-pools .pool-card[data-pool-card-navigation] > em {
  line-height: 1.3;
}

/* The 600px availability track needs a readable hero track beside it. */
@media (max-width: 1200px) {
  .route-pools .main-feature-row--pool-room,
  .route-pools .main-feature-row--pools-discovery {
    grid-template-columns: minmax(0, 1fr);
  }

  .route-pools .main-feature-row--pool-room > .page-feature-hero,
  .route-pools .main-feature-row--pools-discovery > .page-feature-hero {
    padding: clamp(18px, 2vw, 26px);
  }
}

@media (min-width: 1201px) {
  /* At 1880px the 1804px content row leaves 1201px for the bordered hero,
     16px for the existing gap, and 587px for Pool Availability. */
  .route-pools .main-feature-row--pool-room,
  .route-pools .main-feature-row--pools-discovery {
    grid-template-columns: minmax(0, min(1201px, calc(100% - 603px))) minmax(0, 1fr);
  }

  .route-pools .main-feature-row--pool-room > .pools-availability-rail,
  .route-pools .main-feature-row--pools-discovery > .pools-availability-rail {
    height: var(--non-home-feature-height);
    min-height: 0;
  }

  .route-pools .pools-availability-rail > .card {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }

  .route-pools .pools-availability-columns {
    flex: 1;
    min-height: 0;
  }

  .route-pools .pools-availability-scroll--column {
    min-height: 0;
    max-height: none;
  }
}

.route-pools .pool-card[data-pool-card-navigation] {
  appearance: none;
  font: inherit;
}

.route-pools .pool-card[data-pool-card-navigation]:focus-visible {
  border-color: var(--amber, #f4bd59);
  outline: 3px solid color-mix(in srgb, var(--amber, #f4bd59) 70%, transparent);
  outline-offset: 2px;
  box-shadow: 0 0 0 5px rgba(8, 11, 12, 0.82);
}

.route-pools .pools-room-ad-layout {
  display: block;
  width: 100%;
  overflow-x: clip;
  background: transparent;
  border: 0;
}

.route-pools .pools-room-ad-layout--discovery {
  display: none;
}

.route-pools .pools-room-ad-layout--discovery > .pools-room-ad-content {
  display: none;
}

.route-pools .pools-room-ad-content {
  grid-area: content;
  min-width: 0;
  overflow: visible;
  touch-action: pan-y;
}

/* Pool Room content belongs to the document scroll surface. Keep mobile touch
 * gestures on that surface while async membership and pick-state updates patch
 * descendants. No nested room scroller may capture a downward gesture. */
.route-pools .pool-room-context,
.route-pools .pool-room-body {
  overflow: visible;
  touch-action: pan-y;
  overscroll-behavior-y: auto;
}

.route-pools .pools-room-ad-content > .pool-room-nav-strip,
.route-pools .pools-room-ad-content > .pool-shell {
  max-width: 100%;
}

.route-pools .pool-room-nav-strip {
  margin-bottom: 12px;
}

.route-pools .pools-room-ad-rail {
  display: none;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: transparent;
  border: 0;
}

.route-pools .pools-room-ad-rail--left {
  grid-area: left;
}

.route-pools .pools-room-ad-rail--right {
  grid-area: right;
}

.route-pools .pools-room-ad-slot {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template: 18px auto / minmax(0, 1fr);
  place-items: center;
  width: 300px;
  min-width: 300px;
  max-width: 300px;
  height: 68px;
  min-height: 68px;
  max-height: 68px;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  color: var(--muted, #8d99ae);
  background: color-mix(in srgb, var(--panel, #111827) 72%, transparent);
  border: 0;
  border-radius: 8px;
  outline: 1px dashed color-mix(in srgb, currentColor 52%, transparent);
  outline-offset: -1px;
  transform: none;
}

.route-pools .pools-room-ad-slot--banner {
  width: 300px;
  min-width: 300px;
  max-width: 300px;
  height: 68px;
  min-height: 68px;
  max-height: 68px;
}

.route-pools .pools-room-ad-label {
  grid-area: 1 / 1;
  z-index: 1;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.13em;
  pointer-events: none;
  text-transform: uppercase;
}

.route-pools .pools-room-ad-container {
  grid-area: 1 / 1;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 0;
  background: transparent;
  border: 0;
  transform: none;
}

.route-pools .pools-room-ad-slot[data-ad-state="empty"],
.route-pools .pools-room-ad-slot[data-ad-state="unfilled"],
.route-pools .pools-room-ad-slot[data-ad-state="no-fill"],
.route-pools .pools-room-ad-slot[data-ad-state="blocked"],
.route-pools .pools-room-ad-slot[data-ad-state="unavailable"] {
  display: grid;
  visibility: visible;
  opacity: 1;
}

@media (min-width: 360px) {
  .route-pools .pools-room-ad-slot--banner {
    width: 320px;
    min-width: 320px;
    max-width: 320px;
    height: 118px;
    min-height: 118px;
    max-height: 118px;
  }
}

@media (min-width: 768px) {
  .route-pools .content {
    padding-right: 12px;
    padding-left: 12px;
  }

  .route-pools .pools-room-ad-slot--banner {
    width: 728px;
    min-width: 728px;
    max-width: 728px;
    height: 108px;
    min-height: 108px;
    max-height: 108px;
  }
}

@media (min-width: 1600px) {
  .route-pools .content {
    padding-right: clamp(14px, 4vw, 38px);
    padding-left: clamp(14px, 4vw, 38px);
  }

  .route-pools .pools-room-ad-slot--banner {
    width: 970px;
    min-width: 970px;
    max-width: 970px;
    height: 108px;
    min-height: 108px;
    max-height: 108px;
  }

  .route-pools .pools-room-ad-layout {
    --pools-ad-sticky-top: 132px;
    display: grid;
    grid-template-areas: "left content right";
    grid-template-columns: 300px minmax(0, 1120px) 300px;
    justify-content: center;
    align-items: start;
    gap: 16px;
    position: relative;
  }

  .route-pools .pools-room-ad-layout--discovery {
    display: grid;
    grid-template-areas: "left right";
    grid-template-columns: repeat(2, 300px);
    justify-content: center;
  }

  .route-pools .pools-room-ad-rail {
    display: grid;
    position: sticky;
    top: var(--pools-ad-sticky-top);
    align-self: start;
    grid-template-columns: 300px;
    grid-template-rows: repeat(2, 250px);
    gap: 16px;
    width: 300px;
    height: 552px;
    margin: 0;
    padding: 0;
    overflow: visible;
    z-index: 1;
  }

  .route-pools .pools-room-ad-rail .pools-room-ad-slot {
    width: 300px;
    min-width: 300px;
    max-width: 300px;
    height: 268px;
    min-height: 268px;
    max-height: 268px;
  }
}

@media (max-width: 700px) {
  .route-pools .pools-availability-scroll--column {
    min-height: 180px;
    max-height: 220px;
  }

}

@media (max-width: 359px) {
  .route-pools .content {
    padding-right: 10px;
    padding-left: 10px;
  }
}
/* Task 265: compact pool sections, summaries and responsive controls. */
.route-pools .pool-room-tabs { display: flex; flex-wrap: wrap; gap: 6px; align-items: flex-start; overflow: visible; }
.route-pools .pool-room-tabs > button { flex: 1 1 auto; width: auto; min-width: 0; }
.pool-section-more { position: relative; flex: 1 1 auto; min-width: 0; }
.pool-section-more summary { cursor: pointer; padding: 10px 12px; min-height: 44px; border: 1px solid #54616c; border-radius: 8px; }
.pool-section-more > div { display: flex; flex-wrap: wrap; gap: 6px; padding-top: 6px; }
.pool-section-more button { flex: 1 1 auto; min-width: 0; }
/* Task 265 continuation: desktop tabs size to their labels; phone layout stays below. */
@media (min-width: 761px) {
  .route-pools .pool-room-context .pool-room-tabs { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px; }
  .route-pools .pool-room-context .pool-room-tabs .btn { flex: 0 1 auto; width: auto; max-width: 100%; min-width: 0; min-height: 44px; padding: 10px 16px; white-space: normal; }
  .route-pools .pool-room-context .pool-section-more { flex: 0 1 auto; max-width: 100%; }
  .route-pools .pool-room-context .pool-section-more summary { width: fit-content; max-width: 100%; }
  .route-pools .pool-room-context .pool-section-more > div { max-width: 460px; }
}
.pool-draft-room-order-panel > summary { cursor: pointer; padding: 10px; font-weight: 700; }
.route-pools .pool-research-actions { justify-content: flex-start; margin-bottom: 10px; }
@media (max-width: 760px) {
  .route-pools .content { padding-inline: 10px; min-width: 0; }
  .route-pools .content *, .route-pools .wizard-panel * { box-sizing: border-box; }
  .route-pools .pool-shell, .route-pools .pool-room-body, .route-pools .pool-room-body > *,
  .route-pools .pools-route-ad-shell, .route-pools .pools-room-ad-layout, .route-pools .pools-room-ad-main,
  .route-pools .pool-draft-room-workspace, .route-pools .pool-draft-room-driver-panel,
  .route-pools .pool-draft-room-order-panel { min-width: 0; width: 100%; max-width: 100%; }
  .route-pools [data-w255-pool-owner-render-path] { display: none; }
  .route-pools .pool-room-context { padding: 10px; border-radius: 10px; }
  .route-pools .pool-room-context > .pool-title { margin: 0 0 10px; }
  .route-pools .pool-room-context > .pool-title h2 { font-size: 1.2rem; margin: 3px 0; overflow-wrap: anywhere; }
  .route-pools .pool-room-context > .pool-title p { margin: 4px 0; }
  .route-pools .pool-room-nav-strip { display: flex; flex-wrap: wrap; gap: 6px; padding: 8px 0; }
  .route-pools .pool-room-nav-strip button, .route-pools .pool-room-tabs button,
  .route-pools .pool-room-body button, .route-pools .wizard-panel button,
  .route-pools .pool-list button { width: auto; min-width: 0; max-width: 100%; min-height: 44px; padding: 8px 10px; font-size: .9rem; white-space: normal; overflow-wrap: anywhere; }
  .route-pools .pool-room-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 5px; }
  .route-pools .pool-section-more { grid-column: 1 / -1; }
  .route-pools .pool-section-more summary { min-height: 44px; padding: 10px; }
  .route-pools .pool-room-body .card { padding: 10px 0; box-shadow: none; background: transparent; border-inline: 0; border-radius: 0; }
  .route-pools .pool-state-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; padding: 0; }
  .route-pools .pool-state-card { min-width: 0; min-height: 0; padding: 8px; margin: 0; border: 0; border-bottom: 1px solid #45515d; border-radius: 0; box-shadow: none; background: transparent; overflow-wrap: anywhere; }
  .route-pools .pool-state-card strong { font-size: 1rem; line-height: 1.35; }
  .route-pools .pool-state-card small { font-size: .8rem; line-height: 1.4; }
  .route-pools .pool-draft-room-workspace { display: flex; flex-direction: column; gap: 10px; }
  .route-pools .pool-room-body h3 { font-size: 1.08rem; margin: 10px 0; }
  .route-pools .toolbar, .route-pools .pool-title { flex-wrap: wrap; min-width: 0; }
  .route-pools .toolbar > *, .route-pools .pool-title > * { min-width: 0; max-width: 100%; }
  .route-pools input, .route-pools select, .route-pools textarea { min-width: 0; max-width: 100%; font-size: 1rem; }
  .route-pools .table-wrap { max-width: 100%; overflow-x: auto; touch-action: pan-x pan-y; }
  .route-pools .pools-availability-scroll--column { max-height: none; overflow: visible; }
  .route-pools .app-shell { padding-bottom: 90px; }
  .route-pools .pools-room-ad-rail { max-width: 100%; overflow: hidden; }
}
@media (max-width: 380px) {
  .route-pools .pool-state-grid { grid-template-columns: minmax(0,1fr); }
}
/* Retain the shared floating Crew Chief button and dialog suppression rules. */
@media (max-width: 760px) {
  .route-pools .pool-room-body .driver-grid { gap: 6px; }
  .route-pools .pool-room-context { gap: 10px; }
  .route-pools .pool-room-context > .pool-title { padding-bottom: 8px; gap: 0; }
  .route-pools .pool-room-context > .pool-title > div { gap: 2px; }
  .route-pools .pool-home-summary { display: none; }
  .route-pools .pool-room-body, .route-pools .pool-room-body > .card { gap: 8px; }
  .route-pools .pool-room-body .summary-box { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
  .route-pools .pool-room-body .summary-box button { white-space: normal; overflow-wrap: anywhere; }
  .route-pools .pool-room-nav-strip button { flex: 1 1 90px; }
  .route-pools .wizard-panel { min-width: 0; padding: 14px; gap: 12px; }
  .route-pools .wizard-panel > *, .route-pools .wizard-field-group { min-width: 0; max-width: 100%; }
  .route-pools .wizard-field-group { padding: 10px; gap: 8px; }
  .route-pools .wizard-panel .table-wrap table { min-width: 0; width: 100%; table-layout: fixed; }
  .route-pools .wizard-panel th, .route-pools .wizard-panel td { min-width: 0; white-space: normal; overflow-wrap: anywhere; }
  .route-pools .pool-room-body table:has(th:nth-child(2):last-child) { min-width: 0; width: 100%; table-layout: fixed; }
  .route-pools .pool-room-body table:has(th:nth-child(2):last-child) th,
  .route-pools .pool-room-body table:has(th:nth-child(2):last-child) td { white-space: normal; overflow-wrap: anywhere; }
  .route-pools .appbar-row--brand { display: flex; flex-wrap: wrap; gap: 8px; }
  .route-pools .appbar-brand-cluster { flex: 1 1 180px; max-width: 100%; flex-wrap: wrap; justify-content: flex-start; }
  .route-pools .brand { flex: 1 1 120px; min-width: 0; max-width: 100%; }
  .route-pools .brand img { flex: 0 0 40px; width: 40px; height: 40px; }
  .route-pools .brand strong { min-width: 0; font-size: 1rem; line-height: 1.15; white-space: normal; overflow-wrap: anywhere; }
  .route-pools .top-actions { flex: 0 0 auto; margin-left: auto; }
  .route-pools .primary-nav { flex-wrap: wrap; overflow: visible; }
  .route-pools .primary-nav a { min-width: 0; max-width: 100%; white-space: normal; box-sizing: border-box; }
  .route-pools .primary-nav a span { min-width: 0; overflow-wrap: anywhere; }
}

/* Pool Home primary action: compact header placement, wrapping without overflow. */
.pool-room-context > .pool-title > .pool-home-primary-action { justify-self: end; align-self: start; width: auto; }
.pool-home-primary-action .btn { min-height: 44px; width: auto; white-space: normal; }
@media (max-width: 700px) { .pool-room-context > .pool-title > .pool-home-primary-action { justify-self: start; } }

/* PL-P: One scrollable setup body with reachable actions in the visible viewport. */
body:has(.wizard-overlay) { overflow: hidden; }
.route-pools .wizard-overlay { padding: 12px; height: 100dvh; bottom: auto; box-sizing: border-box; overscroll-behavior: contain; }
.route-pools .wizard-panel { display: flex; flex-direction: column; width: min(840px, 100%); height: min(880px, 100%); max-height: 100%; padding: 18px; gap: 10px; overflow: hidden; box-sizing: border-box; }
.route-pools .wizard-panel > * { min-width: 0; flex-shrink: 0; }
.route-pools .wizard-panel .pool-title { flex-direction: row; align-items: center; margin: 0; }
.route-pools .wizard-panel h2 { font-size: clamp(20px, 4.8vw, 26px); margin: 0; }
.route-pools .wizard-panel .auth-status { margin: 0 0 4px; }
.route-pools .wizard-current { margin: 0; font-size: 18px; outline-offset: 3px; }
.route-pools .wizard-body { flex: 1 1 auto; min-height: 0; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; padding: 3px 4px 12px; scroll-padding-block: 12px; }
.route-pools .wizard-progress { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 3px; }
.route-pools .wizard-step { white-space: nowrap; min-height: 28px; font-size: 12px; }
.route-pools .wizard-choice-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); }
.route-pools .wizard-field-group label { display: grid; gap: 6px; font-size: 15px; line-height: 1.4; min-width: 0; }
.route-pools .wizard-field-group input, .route-pools .wizard-field-group select, .route-pools .wizard-field-group textarea { width: 100%; min-width: 0; max-width: 100%; font-size: 16px; min-height: 48px; box-sizing: border-box; }
.route-pools .wizard-body p, .route-pools .wizard-body .subtle, .route-pools .pick-option span { font-size: 15px; line-height: 1.5; overflow-wrap: anywhere; }
.route-pools .wizard-panel button, .route-pools .wizard-help summary { min-height: 44px; }
.route-pools .pick-option[aria-pressed="true"] { border-width: 2px; box-shadow: inset 4px 0 var(--red); }
.route-pools .pick-option[aria-pressed="true"] strong::before { content: "\2713 "; }
.route-pools .wizard-help summary { display: flex; align-items: center; cursor: pointer; text-decoration: underline; }
.route-pools .wizard-actions { margin: 0; padding-top: 10px; border-top: 1px solid var(--line); display: flex; flex-wrap: nowrap; justify-content: space-between; }
.route-pools .wizard-actions button { min-height: 48px; min-width: 100px; }
.route-pools .wizard-actions button:only-child { margin-left: auto; }
.route-pools .wizard-panel .table-wrap table { min-width: 0; width: 100%; table-layout: fixed; }
.route-pools .wizard-panel td, .route-pools .wizard-panel th { white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .route-pools .wizard-overlay { padding: 6px; }
  .route-pools .wizard-panel { padding: 12px; gap: 8px; }
  .route-pools .wizard-step { display: none; }
  .route-pools .wizard-step--active { display: inline-block; }
  .route-pools .wizard-choice-grid { grid-template-columns: 1fr; }
  .route-pools .wizard-field-group { padding: 12px; }
}
@media (max-height: 480px) {
  .route-pools .wizard-progress, .route-pools .wizard-panel .auth-status { display: none; }
  .route-pools .wizard-panel { gap: 4px; padding: 8px; }
  .route-pools .wizard-panel h2 { font-size: 18px; }
  .route-pools .wizard-current { font-size: 16px; }
}

/* SC-P: Readable saved scoring facts on touch screens and desktop. */
.pool-score-details { margin-top: 1rem; border-top: 1px solid var(--line, #34404f); }
.pool-score-details > summary { min-height: 48px; padding: .8rem .2rem; cursor: pointer; overflow-wrap: anywhere; }
.pool-score-list { list-style: none; padding: 0; margin: 0; }
.pool-score-list li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .8rem; padding: .75rem .2rem; border-top: 1px solid var(--line, #34404f); }
.pool-score-list small { display: block; margin-top: .25rem; line-height: 1.5; opacity: .8; }
.pool-score-list strong, .pool-score-list small { overflow-wrap: anywhere; }
.pool-score-list li > b { white-space: nowrap; }

/* Public previews: constrain every grid ancestor so tables own touch scrolling. */
.route-pools .public-pool-modal .modal-panel,
.route-pools .public-pool-modal .managed-dialog-body { grid-template-columns: minmax(0, 1fr); min-width: 0; max-width: 100%; }
.route-pools .public-pool-modal .modal-panel { overflow-x: hidden; overscroll-behavior: contain; max-height: calc(100dvh - 24px); }
.route-pools .public-pool-modal .managed-dialog-header { position: sticky; top: -18px; z-index: 2; background: var(--panel); padding-block: 6px; }
.route-pools .public-pool-detail, .route-pools .public-pool-detail > *, .route-pools .public-pool-detail .summary-box { min-width: 0; max-width: 100%; box-sizing: border-box; }
.route-pools .public-pool-detail { overflow-wrap: anywhere; }
.route-pools .public-pool-detail .table-wrap { width: 100%; min-width: 0; max-width: 100%; overflow-x: auto; touch-action: pan-x pan-y; overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch; }
.route-pools .public-pool-detail table { min-width: 560px; }
.route-pools .public-pool-detail th, .route-pools .public-pool-detail td { white-space: normal; overflow-wrap: anywhere; }
