/* Option A. One framework-independent geometry/paint contract for both renderers. */
.signal-sidebar {
  width: 220px;
  min-width: 220px;
  height: 100%;
  display: flex;
  flex-direction: column;
  background: var(--pl-rail-plate, var(--pl-ink));
  color: var(--pl-on-ink);
  font: 13px/1.5 var(--font-ui);
  border-right: 1px solid var(--pl-rail-rule);
  box-sizing: border-box;
}

.signal-sidebar * {
  box-sizing: border-box;
}

.signal-sidebar button,
.signal-sidebar summary {
  font-family: inherit;
  cursor: pointer;
}

.signal-sidebar button:focus-visible,
.signal-sidebar summary:focus-visible {
  outline: 2px solid var(--pl-focus);
  outline-offset: -2px;
}

.signal-sidebar__brand {
  height: 64px;
  min-height: 64px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 18px;
  border-bottom: 1px solid var(--pl-rail-rule);
}

.signal-sidebar__brand-button {
  display: flex;
  align-items: center;
  gap: 10px;
  background: none;
  border: 0;
  color: var(--pl-on-ink);
  font: 600 22px var(--font-ui);
  padding: 0;
  white-space: nowrap;
}

.signal-sidebar__brand-mark {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
}

.signal-sidebar__dock {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2px;
  border-bottom: 1px solid var(--pl-rail-rule);
  padding-bottom: 10px;
  margin-bottom: 12px;
}

.signal-sidebar__row {
  position: relative;
  display: flex;
  align-items: center;
  gap: 11px;
  width: 100%;
  min-height: 36px;
  padding: 8px 12px;
  background: none;
  border: 0;
  border-radius: 4px;
  color: var(--pl-on-ink-muted);
  text-align: left;
  font-size: 12.5px;
  line-height: 18px;
  font-weight: 400;
  text-decoration: none;
  list-style: none;
  margin: 0;
}

.signal-sidebar__row > i,
.signal-sidebar__row > svg {
  width: 16px;
  flex-shrink: 0;
  text-align: center;
  font-size: 14px;
}

.signal-sidebar__row:hover {
  background: var(--pl-rail-active);
  color: var(--pl-on-ink);
}

.signal-sidebar__row[aria-current],
.signal-sidebar__row.active {
  background: var(--pl-rail-active);
  color: var(--pl-on-ink);
  font-weight: 500;
}

.signal-sidebar__row[aria-current]::before,
.signal-sidebar__row.active::before {
  content: '';
  position: absolute;
  left: 0;
  top: 6px;
  bottom: 6px;
  width: 2px;
  background: var(--pl-signal);
  border-radius: 2px;
}

.signal-sidebar__row:disabled,
.signal-sidebar__row[aria-disabled='true'] {
  opacity: 0.45;
  cursor: not-allowed;
}

.signal-sidebar__row > .signal-sidebar__chevron {
  font-size: 10px;
  width: 9px;
  margin-left: auto;
}

.signal-sidebar__dock .signal-sidebar__row {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 6px 0;
  height: 48px;
  min-height: 48px;
  font-size: 11px;
  line-height: 14px;
  white-space: nowrap;
}

.signal-sidebar__dock .signal-sidebar__row > span {
  flex: 0;
}

.signal-sidebar__dock .signal-sidebar__row[aria-current]::before,
.signal-sidebar__dock .signal-sidebar__row.active::before {
  inset: auto 5px 0;
  width: auto;
  height: 2px;
}

.signal-sidebar__case-copy {
  min-width: 0;
  flex: 1;
}

.signal-sidebar__case strong {
  display: block;
  font-size: 11px;
  line-height: 17px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.signal-sidebar__monogram {
  display: grid;
  place-items: center;
  width: 28px;
  height: 30px;
  border: 1px solid var(--pl-rail-rule);
  border-radius: 4px;
  background: var(--pl-rail-raised);
  font-size: 11px;
  flex-shrink: 0;
}

.signal-sidebar__quick {
  display: flex;
  border: 1px solid var(--pl-rail-rule);
  border-radius: 4px;
  margin: 10px 0 14px;
  overflow: hidden;
}

.signal-sidebar__quick > button,
.signal-sidebar__quick > summary {
  display: grid;
  place-items: center;
  flex: 1;
  height: 30px;
  border: 0;
  border-right: 1px solid var(--pl-rail-rule);
  background: none;
  color: var(--pl-on-ink-muted);
  padding: 0;
}

.signal-sidebar__quick > button:last-child {
  border-right: 0;
}

.signal-sidebar__quick > button:hover {
  background: var(--pl-rail-active);
  color: var(--pl-on-ink);
}

.signal-sidebar__heading {
  font-size: 11px;
  line-height: 14px;
  color: var(--pl-on-ink-muted);
  font-weight: 500;
  letter-spacing: 0.05em;
  margin: 12px 12px 5px;
  padding: 0;
  list-style: none;
}

.signal-sidebar__steps .signal-sidebar__row {
  font-size: 11px;
  line-height: 17px;
}

.signal-sidebar__group {
  margin-top: 15px;
}

.signal-sidebar__footer {
  flex-shrink: 0;
  padding: 8px 10px;
  border-top: 1px solid var(--pl-rail-rule);
}

.signal-sidebar__footer > .signal-sidebar__row {
  min-height: 30px;
  padding: 6px 12px;
  font-size: 11px;
}

.signal-sidebar__account {
  position: relative;
}

.signal-sidebar__account-button {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px 8px;
  border: 0;
  background: none;
  color: var(--pl-on-ink);
  text-align: left;
  list-style: none;
}

.signal-sidebar__avatar {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid var(--pl-rail-rule);
  border-radius: 50%;
  background: var(--pl-rail-raised);
  font-size: 11px;
  font-weight: 500;
  flex-shrink: 0;
}

.signal-sidebar__account-copy {
  flex: 1;
  min-width: 0;
}

.signal-sidebar__account-copy strong {
  display: block;
  font-size: 12px;
  line-height: 18px;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.signal-sidebar__account-copy small {
  display: block;
  font-size: 11px;
  line-height: 16px;
  color: var(--pl-on-ink-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.signal-sidebar__collapse {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 28px;
  width: 100%;
  padding: 0 12px;
  border: 0;
  background: none;
  color: var(--pl-on-ink-muted);
  font-size: 11px;
  text-align: left;
}

.signal-sidebar__submenu {
  list-style: none;
  margin: 0;
  padding: 4px 0;
}

.signal-sidebar__account-menu {
  padding: 4px 0;
  border-top: 1px solid var(--pl-rail-rule);
}

.signal-sidebar__compat-only {
  display: none !important;
}

.signal-sidebar--collapsed {
  width: 60px;
  min-width: 60px;
}

.signal-sidebar--collapsed .signal-sidebar__scroll,
.signal-sidebar--collapsed .signal-sidebar__footer {
  padding: 8px;
}

.signal-sidebar--collapsed .signal-sidebar__brand {
  padding: 0;
  justify-content: center;
}

.signal-sidebar--collapsed .signal-sidebar__brand-text,
.signal-sidebar--collapsed .signal-sidebar__heading,
.signal-sidebar--collapsed .signal-sidebar__case,
.signal-sidebar--collapsed .signal-sidebar__quick,
.signal-sidebar--collapsed .signal-sidebar__row > span,
.signal-sidebar--collapsed .signal-sidebar__chevron,
.signal-sidebar--collapsed .signal-sidebar__account-copy,
.signal-sidebar--collapsed .signal-sidebar__collapse > span {
  display: none;
}

.signal-sidebar--collapsed .signal-sidebar__row {
  width: 44px;
  min-height: 36px;
  padding: 8px 0;
  justify-content: center;
}

.signal-sidebar--collapsed .signal-sidebar__dock {
  display: flex;
  flex-direction: column;
}

.signal-sidebar--collapsed .signal-sidebar__account-button,
.signal-sidebar--collapsed .signal-sidebar__collapse {
  padding: 8px 0;
  justify-content: center;
}

@media (pointer: coarse) {
  .signal-sidebar__row,
  .signal-sidebar__quick > button {
    min-height: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .signal-sidebar * {
    transition: none !important;
  }
}

/* Legacy compatibility: higher specificity than feature chrome; never override runtime visibility gates. */
html[data-product-theme='planlined-slate'] body .sidebar[data-signal-sidebar] {
  width: 220px !important;
  min-width: 220px;
  padding: 0 !important;
  height: 100dvh !important;
  overflow: hidden;
  background: var(--pl-rail-plate) !important;
  color: var(--pl-on-ink);
  font-family: var(--font-ui) !important;
  top: 0 !important;
  margin-top: 0 !important;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar].signal-sidebar--collapsed {
  width: 60px !important;
  min-width: 60px;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__brand {
  height: 64px !important;
  min-height: 64px;
  padding: 0 18px !important;
  gap: 10px;
  border: 0;
  border-bottom: 1px solid var(--pl-rail-rule);
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__brand-button {
  display: flex !important;
  max-width: 100%;
  width: auto;
  gap: 10px;
  font-size: 22px !important;
  font-weight: 600;
  overflow: visible;
  padding: 0 !important;
  background: none !important;
  box-shadow: none !important;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__brand-mark {
  width: 36px !important;
  height: 36px !important;
  margin: 0;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__scroll {
  display: block !important;
  padding: 10px !important;
  flex: 1 1 auto !important;
  overflow: auto;
  margin: 0 !important;
  border: 0;
  min-height: 0;
}

html[data-product-theme='planlined-slate'] body .sidebar[data-signal-sidebar] .signal-sidebar__row {
  display: flex;
  min-height: 36px;
  height: auto;
  padding: 8px 12px;
  margin: 0;
  gap: 11px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  box-shadow: none;
  color: var(--pl-on-ink-muted);
  font-size: 12.5px;
  line-height: 18px;
  font-weight: 400;
  white-space: normal;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__row:hover,
html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__row.active {
  background: var(--pl-rail-active);
  color: var(--pl-on-ink);
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__row
  > i {
  width: 16px;
  flex-shrink: 0;
  margin: 0;
  font-size: 14px;
  color: inherit;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__steps {
  display: block;
  padding: 0 !important;
  margin: 0 !important;
  background: none;
  border: 0;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__steps
  .signal-sidebar__row {
  font-size: 11px;
  line-height: 17px;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__dock {
  position: static !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  list-style: none;
  padding: 0 0 10px !important;
  margin: 0 0 12px !important;
  gap: 2px;
  border-bottom: 1px solid var(--pl-rail-rule);
  background: none;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__dock
  .signal-sidebar__row {
  display: flex !important;
  flex-direction: column;
  height: 48px !important;
  min-height: 48px;
  padding: 6px 0 !important;
  gap: 3px;
  font-size: 11px;
  line-height: 14px;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__footer {
  padding: 8px 10px;
  flex: none;
  border-top: 1px solid var(--pl-rail-rule);
  background: transparent;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__footer
  > .signal-sidebar__row {
  font-size: 11px;
  min-height: 30px;
  padding: 6px 12px;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__account-actions {
  display: block !important;
  padding: 0 !important;
  background: none;
  border: 0;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__collapse {
  display: flex !important;
  height: 28px !important;
  position: static;
  background: none !important;
  padding: 0 12px !important;
  width: 100%;
  border: 0;
  box-shadow: none;
  color: var(--pl-on-ink-muted);
  font-size: 11px;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__quick-menu:not([open])
  > ul {
  display: none !important;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__quick-menu[open]
  > ul {
  display: block !important;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__quick-menu
  > summary {
  display: none;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  :is([hidden], .signal-sidebar__compat-only, .signal-sidebar__home-hidden) {
  display: none !important;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar].signal-sidebar--collapsed
  .signal-sidebar__scroll {
  padding: 10px 8px !important;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar].signal-sidebar--collapsed
  .signal-sidebar__brand {
  padding: 0 !important;
  justify-content: center;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar].signal-sidebar--collapsed
  :is(
    .signal-sidebar__brand-text,
    .signal-sidebar__heading,
    .signal-sidebar__case,
    .signal-sidebar__quick,
    .signal-sidebar__row > span,
    .signal-sidebar__account-copy,
    .signal-sidebar__collapse > span
  ) {
  display: none !important;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar].signal-sidebar--collapsed
  .signal-sidebar__row {
  justify-content: center;
  width: 44px;
  min-height: 36px;
  padding: 8px 0;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar].signal-sidebar--collapsed
  .signal-sidebar__dock {
  display: flex !important;
  flex-direction: column;
}

html[data-product-theme='planlined-slate'] body:has(.sidebar[data-signal-sidebar]) {
  --sidebar-width: 220px;
}

html[data-product-theme='planlined-slate']
  body:has(.sidebar[data-signal-sidebar].signal-sidebar--collapsed) {
  --sidebar-width: 60px;
}

html[data-product-theme='planlined-slate']
  body.is-guided-home:has(.sidebar[data-signal-sidebar])
  #app-band {
  left: var(--sidebar-width) !important;
  width: calc(100% - var(--sidebar-width)) !important;
}

.signal-shell:has(.signal-sidebar--collapsed) {
  grid-template-columns: 60px minmax(0, 1fr);
}

.signal-shell > .page-shell-band {
  grid-column: 2;
  grid-row: 1;
  min-height: 64px;
  height: 64px;
  padding: 0 24px;
}

.signal-shell > .page-shell-body {
  display: contents;
}

.signal-shell__rail {
  grid-column: 1;
  grid-row: 1 / span 2;
  min-height: 0;
  overflow: visible;
}

.signal-shell .page-shell-main {
  grid-column: 2;
  grid-row: 2;
  min-width: 0;
  min-height: 0;
}

@media (width <= 640px) {
  .signal-shell {
    grid-template-columns: 60px minmax(0, 1fr);
  }

  .signal-shell .signal-sidebar:not(.signal-sidebar--collapsed) {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 35;
    box-shadow: var(--pl-elevation-panel);
  }

  .signal-shell > .page-shell-band {
    padding: 0 12px;
  }

  .signal-sidebar__row,
  .signal-sidebar__quick > button {
    min-height: 44px;
  }
}

/* Neutralize legacy dock nesting and truncation; shared row geometry owns these nodes. */
html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__dock-host {
  position: static;
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  width: 100%;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__dock
  > li {
  padding: 0 !important;
  margin: 0 !important;
  min-width: 0;
  display: block;
  min-height: 0;
  border: 0;
  background: none;
  overflow: visible;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__dock
  .signal-sidebar__row
  > span {
  flex: 0 0 auto;
  line-height: 14px;
  overflow: visible;
  opacity: 1;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__steps
  .signal-sidebar__row
  > span {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  line-height: 17px;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__heading {
  display: block;
  margin: 12px 12px 5px;
  padding: 0;
  border: 0;
  color: var(--pl-on-ink-muted);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 14px;
  font-size: 11px;
  text-transform: none;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__row
  > i:last-child:not(:first-child) {
  font-size: 10px;
  width: 9px;
  margin-left: auto;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__case {
  font: 13px/1.5 var(--font-ui);
}

@media (pointer: coarse) {
  html[data-product-theme='planlined-slate']
    body
    .sidebar[data-signal-sidebar]
    .signal-sidebar__row {
    min-height: 44px;
  }
}

/* CMF still owns the legacy popover lifecycle, restoration, focus and dismissal. */

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__row.is-flyout-open {
  background: var(--pl-rail-active);
  color: var(--pl-on-ink);
}

/* Keep both rail and band stationary while each page body owns its scroll. */
.signal-shell {
  display: grid !important;
  grid-template-columns: 220px minmax(0, 1fr);
  grid-template-rows: 64px minmax(0, 1fr);
  position: fixed;
  inset: 0;
  height: 100dvh;
  min-height: 0;
  overflow: hidden;
}

/* The original dock's card selector has five class/attribute terms. */
html[data-product-theme='planlined-slate']
  body
  .sidebar.no-print[data-signal-sidebar]
  .signal-sidebar__dock
  > .sidebar-menu-item {
  min-height: 0;
  height: 48px;
  width: 100%;
  border: 0;
  border-radius: 0;
  background: none;
  overflow: visible;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar.no-print[data-signal-sidebar]
  .signal-sidebar__dock {
  width: 100%;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar.no-print[data-signal-sidebar]
  #dev-bypass-banner {
  position: fixed !important;
  inset: auto 12px 4px auto;
  width: auto;
  margin: 0 !important;
  z-index: 100;
}

.signal-sidebar__scroll {
  padding: 10px;
  overflow: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--pl-rail-raised) transparent;
  flex: 1;
  min-height: 0;
  margin: 0;
  list-style: none;
  overflow-x: hidden;
}

.signal-sidebar__row > span {
  flex: 1;
  min-width: 0;
  white-space: normal;
}

/* A Home mounted before the theme adapter may already have its old navigation. */
html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  :is(#guided-home-nav, #guided-home-user, #guided-home-account-label) {
  display: none !important;
}

/* The source heading has an inline margin and padding from the old grouping pass. */
html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  #wizard-sections-toggle.signal-sidebar__heading {
  margin: 0 12px 5px !important;
  padding: 0 !important;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__row
  > .sidebar-count-pill {
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
  padding: 0 4px;
  font-size: 9px;
  line-height: 18px;
}

html[data-product-theme='planlined-slate'] body .sidebar[data-signal-sidebar] .org-toggle-detail {
  display: none;
}

/* Stable gutters keep the same row widths when contextual destinations overflow. */
html:has(.signal-sidebar),
.signal-sidebar__scroll {
  scrollbar-gutter: stable;
}

.signal-sidebar__row[aria-expanded='true'] {
  background: var(--pl-rail-active);
  color: var(--pl-on-ink);
}

.page-shell.workspace-page.signal-shell {
  grid-template-columns: 220px minmax(0, 1fr);
}

.page-shell.workspace-page.signal-shell:has(.signal-sidebar--collapsed) {
  grid-template-columns: 60px minmax(0, 1fr);
}

.signal-shell__mobile-toggle {
  display: none;
}

@media (width <= 960px) {
  .page-shell.workspace-page.signal-shell,
  .page-shell.workspace-page.signal-shell:has(.signal-sidebar--collapsed) {
    grid-template-columns: 0 minmax(0, 1fr);
  }

  .signal-shell__rail {
    width: 0;
  }

  .signal-shell .signal-sidebar--collapsed {
    display: none;
  }

  .signal-shell .signal-sidebar:not(.signal-sidebar--collapsed) {
    position: fixed;
    inset: 0 auto 0 0;
    width: 220px;
    z-index: 35;
  }

  .signal-shell__mobile-toggle {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    padding: 0;
    border: 1px solid var(--pl-rail-rule);
    border-radius: 4px;
    background: var(--pl-ink);
    color: var(--pl-on-ink);
  }

  html[data-product-theme='planlined-slate'] body:has(.sidebar[data-signal-sidebar]) {
    --sidebar-width: 0;
  }

  html[data-product-theme='planlined-slate']
    body
    .sidebar[data-signal-sidebar].mobile-open
    :is(.logo-text, .signal-sidebar__row > span) {
    display: inline !important;
    opacity: 1 !important;
  }

  html[data-product-theme='planlined-slate']
    body
    .sidebar[data-signal-sidebar].mobile-open
    .signal-sidebar__dock {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (width <= 700px) {
  .page-shell.workspace-page.signal-shell {
    grid-template-rows: 96px minmax(0, 1fr);
  }

  .page-shell.workspace-page.signal-shell > .page-shell-band {
    height: 96px;
    min-height: 96px;
  }
}

.signal-sidebar--mobile .signal-sidebar__brand {
  padding-left: 56px;
}

.signal-sidebar__mobile-close {
  position: absolute;
  top: 8px;
  left: 8px;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 8px;
  background: var(--pl-ink-deep);
  color: var(--pl-on-ink);
  font-size: 28px;
}

.signal-shell .signal-sidebar .signal-sidebar__case,
.signal-shell .signal-sidebar .signal-sidebar__account-button {
  font: 400 13px/19.5px var(--font-ui);
}

.signal-sidebar__brand-text {
  font-weight: 600;
}

@media (width <= 960px) {
  .signal-sidebar--mobile .signal-sidebar__footer > .signal-sidebar__row,
  html[data-product-theme='planlined-slate']
    body
    .sidebar[data-signal-sidebar].mobile-open
    .signal-sidebar__row {
    min-height: 44px;
  }

  .signal-sidebar--mobile .signal-sidebar__collapse,
  html[data-product-theme='planlined-slate']
    body
    .sidebar[data-signal-sidebar].mobile-open
    .signal-sidebar__collapse {
    display: none !important;
  }
}

/* Home's former navigation replacement hid the original dock and tools row. */
html[data-product-theme='planlined-slate']
  body.is-guided-home
  .sidebar[data-signal-sidebar]
  .signal-sidebar__dock-host {
  display: block !important;
}

html[data-product-theme='planlined-slate']
  body.is-guided-home
  .sidebar[data-signal-sidebar]
  #tools-toggle {
  display: flex !important;
}

@media (width <= 960px) {
  html[data-product-theme='planlined-slate'] body .sidebar[data-signal-sidebar]:not(.mobile-open) {
    width: 0 !important;
    min-width: 0;
    border: 0;
    visibility: hidden;
  }

  html[data-product-theme='planlined-slate'] body .sidebar[data-signal-sidebar].mobile-open {
    width: 220px !important;
    min-width: 220px !important;
    max-width: 220px !important;
    visibility: visible;
  }
}

.signal-sidebar__case {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 10px 8px;
  background: var(--pl-rail-active);
  border: 1px solid var(--pl-rail-rule);
  border-radius: 4px;
  color: var(--pl-on-ink);
  text-align: left;
  height: 60px;
  min-height: 60px;
}

.signal-sidebar__case small {
  display: block;
  color: var(--pl-on-ink-muted);
  font-size: 11px;
  line-height: 17px;
  margin-top: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Inline disclosures keep navigation in its rail and preserve the page width. */
.signal-sidebar-inline-menu {
  position: static;
  width: auto;
  margin: 4px 0 8px 9px;
  padding: 4px 0 4px 4px;
  border: 0;
  border-left: 1px solid var(--pl-rail-rule);
  list-style: none;
  color: var(--pl-on-ink);
}

.signal-sidebar-inline-menu .signal-sidebar__row,
html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar-inline-menu
  .sidebar-menu-item {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  height: auto;
  min-height: 32px;
  margin: 0;
  padding: 7px 8px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: var(--pl-on-ink-muted);
  font: 400 11.5px/16px var(--font-ui);
  text-align: left;
  white-space: normal;
}

.signal-sidebar-inline-menu .signal-sidebar__row > span,
html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar-inline-menu
  .sidebar-menu-item
  > span {
  display: block;
  flex: 1;
  overflow: visible;
  white-space: normal;
  text-overflow: clip;
  font: inherit !important;
  line-height: inherit !important;
}

.signal-sidebar-inline-menu .signal-sidebar__row > i,
html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar-inline-menu
  .sidebar-menu-item
  > i {
  width: 14px;
  flex: 0 0 14px;
  margin: 0;
  font-size: 11px;
  color: inherit;
  text-align: center;
}

.signal-sidebar-inline-menu .signal-sidebar__row:hover,
html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar-inline-menu
  .sidebar-menu-item:hover {
  background: var(--pl-rail-active);
  color: var(--pl-on-ink);
}

.signal-sidebar-inline-menu__section,
html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar-inline-menu
  .sidebar-section-header {
  margin: 8px 0 2px !important;
  padding: 5px 8px !important;
  border: 0;
  color: var(--pl-on-ink-muted);
  font: 600 10px/14px var(--font-ui);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.signal-sidebar-inline-menu__search {
  display: block;
  margin: 4px 4px 8px;
}

.signal-sidebar-inline-menu__label {
  display: block;
  margin-bottom: 5px;
  font-size: 10px;
  color: var(--pl-on-ink-muted);
}

.signal-sidebar-inline-menu__input {
  width: 100%;
  min-width: 0;
  padding: 7px;
  border: 1px solid var(--pl-rail-rule);
  border-radius: 5px;
  background: var(--pl-rail-active);
  color: var(--pl-on-ink);
  font: 400 11px/16px var(--font-ui);
}

.signal-sidebar-inline-menu .sidebar-count-pill {
  flex: 0 0 auto !important;
  font-size: 10px;
  opacity: 0.6;
}

.signal-sidebar-inline-menu .sidebar-flyout-back {
  padding: 7px 8px;
  border: 0;
  background: transparent;
  color: var(--pl-on-ink);
  font: 500 11px/16px var(--font-ui);
}

.signal-sidebar__row[aria-expanded='true'] .signal-sidebar__chevron {
  transform: rotate(90deg);
}

.signal-sidebar__footer:has(.signal-sidebar-inline-menu),
.signal-sidebar__footer:has(details[open]) {
  max-height: 65dvh;
  overflow-y: auto;
}

.signal-sidebar--collapsed .signal-sidebar-inline-menu {
  display: none;
}

@media (width <= 960px) {
  .signal-sidebar-inline-menu .signal-sidebar__row,
  html[data-product-theme='planlined-slate']
    body
    .sidebar[data-signal-sidebar]
    .signal-sidebar-inline-menu
    .sidebar-menu-item {
    min-height: 44px;
  }
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar-inline-menu {
  margin: 4px 0 8px 9px !important;
  padding: 4px 0 4px 4px !important;
}

html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar-inline-menu__input {
  padding: 7px;
  border: 1px solid var(--pl-rail-rule) !important;
  border-radius: 5px;
  background: var(--pl-rail-active) !important;
  color: var(--pl-on-ink) !important;
  font: 400 11px/16px var(--font-ui);
}

.signal-sidebar-inline-menu__input::placeholder {
  color: var(--pl-on-ink-muted);
}

/* Clear the phone close target despite legacy physical-collapse brand styles. */
@media (width <= 960px) {
  html[data-product-theme='planlined-slate']
    body
    .sidebar[data-signal-sidebar].mobile-open
    .signal-sidebar__brand {
    padding-left: 56px !important;
    flex-direction: row !important;
    justify-content: flex-start !important;
  }

  html[data-product-theme='planlined-slate']
    body
    .sidebar[data-signal-sidebar].mobile-open
    .signal-sidebar__brand-button {
    justify-content: flex-start !important;
  }
}

/* Source wordmarks inherit the same type role as the native brand button. */
html[data-product-theme='planlined-slate']
  body
  .sidebar[data-signal-sidebar]
  .signal-sidebar__brand-text {
  font: inherit !important;
}
