/* Approved A workspace. Canonical tokens are supplied by portal-design.js. */
/* Professional portal motion: task feedback and short, interruptible transitions. */
.portal-authenticated button,
.business-open button,
.bw-dialog button,
.pe-page button,
.pd-dialog button {
  transition: background-color 140ms ease-out, border-color 140ms ease-out,
    box-shadow 140ms ease-out;
}
.portal-account-menu[open] .portal-account-options,
.pd-select [role="listbox"]:not([hidden]) {
  animation: portal-popover-enter 180ms cubic-bezier(0.22, 1, 0.36, 1);
}
@keyframes portal-popover-enter {
  from { opacity: 0.4; transform: translateY(-4px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes portal-popover-fade {
  from { opacity: 0.8; }
  to { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .portal-account-menu[open] .portal-account-options,
  .pd-select [role="listbox"]:not([hidden]) {
    /* Override the legacy blanket animation reset only for this opacity fade. */
    animation: portal-popover-fade 120ms linear !important;
  }
}
.portal-authenticated {
  --portal-motion-ease: cubic-bezier(0.22, 1, 0.36, 1);
}
.portal-authenticated .pd-sidebar nav button,
.portal-authenticated .pa-overview :is(.pd-primary, .pd-secondary, .pd-icon, .pd-metric),
.portal-authenticated .pl-ledger :is(.pd-primary, .pd-secondary, .ll-row-action, .ll-inspect),
.pl-inspector :is(.pd-primary, .pd-secondary, .pd-icon) {
  transition: background-color 300ms var(--portal-motion-ease),
    box-shadow 300ms var(--portal-motion-ease),
    translate 300ms var(--portal-motion-ease), scale 120ms var(--portal-motion-ease);
}
.portal-authenticated .pd-sidebar nav button > svg,
.portal-authenticated .ll-thumb img {
  transition: translate 300ms var(--portal-motion-ease), scale 500ms var(--portal-motion-ease);
}
.portal-authenticated .pl-ledger .ll-row {
  transition: background-color 300ms var(--portal-motion-ease);
}
.pl-ledger .ll-status-tabs {
  position: relative;
}
.pl-ledger .ll-status-tabs.has-motion-indicator button[aria-selected="true"] {
  border-bottom-color: transparent;
}
.pl-ledger .ll-status-tabs .ll-motion-indicator {
  position: absolute;
  bottom: 0;
  height: 2px;
  background: var(--portal-coral);
  pointer-events: none;
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .portal-authenticated .pa-overview .pd-metric:hover {
    translate: 0 -2px;
    box-shadow: 0 8px 24px #48233f0d;
  }
  .portal-authenticated .pa-overview :is(.pd-primary, .pd-secondary):not(:disabled):hover,
  .portal-authenticated .pl-ledger .pd-primary:not(:disabled):hover {
    translate: 0 -2px;
  }
  .portal-authenticated .pd-sidebar nav button:hover > svg:first-child {
    translate: 2px 0;
  }
  .portal-authenticated .pl-ledger .ll-row:hover {
    background: var(--portal-cream);
  }
  .portal-authenticated .pl-ledger .ll-row.is-selected:hover {
    background: var(--portal-secondary);
  }
  .portal-authenticated .ll-identity:hover .ll-thumb img {
    scale: 1.04;
  }
  .portal-authenticated :is(.pa-overview, .pl-ledger) button:not(:disabled):active,
  .pl-inspector button:not(:disabled):active {
    scale: 0.98;
  }
}
@media (max-width: 850px) {
  .business-open .bw-shell {
    grid-template-columns: minmax(0, 1fr);
  }
  .business-open .bw-sidebar nav .bw-nav {
    width: auto;
    flex: 0 0 auto;
    gap: 8px;
  }
  .business-open .bw-sidebar nav .bw-nav > span {
    display: block;
  }
  .business-open .bw-sidebar nav {
    overflow: auto;
    max-width: 100%;
  }
}
.portal-authenticated .pd-sidebar {
  overflow-y: auto;
  max-height: 100dvh;
}
/* Property and publishing tools retain their controllers and share the A workspace rhythm. */
.business-open {
  background: var(--portal-cream);
  color: var(--portal-body);
}
.business-open .bw-shell {
  grid-template-columns: 224px minmax(0, 1fr);
  --bw-plum: var(--portal-plum);
  --bw-coral: var(--portal-coral);
  --bw-cream: var(--portal-cream);
  --bw-secondary: var(--portal-secondary);
  --bw-line: var(--portal-line);
  --bw-muted: var(--portal-muted);
}
.business-open .bw-sidebar {
  background: var(--portal-paper);
  border-color: var(--portal-line);
  padding: 32px 16px 16px;
  gap: 0;
}
.business-open .bw-nav {
  min-height: 48px;
  padding: 12px;
  gap: 12px;
  font-size: 12px;
  line-height: 20px;
  border-radius: var(--portal-radius-button);
}
.business-open .bw-nav[aria-current="page"] {
  background: var(--portal-secondary);
  color: var(--portal-plum);
  box-shadow: inset 3px 0 var(--portal-coral);
}
.business-open .bw-topbar {
  min-height: 72px;
  border-color: var(--portal-line);
  background: var(--portal-paper);
  padding: 16px 48px;
}
.business-open .bw-content {
  padding: 48px;
  max-width: 1720px;
  margin: auto;
  width: 100%;
}
.business-open .bw-shell h1 {
  font-size: 27px;
  line-height: 35px;
  letter-spacing: -0.8px;
}
.business-open .bw-panel {
  padding: 24px;
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-card);
  background: var(--portal-paper);
}
.business-open .bw-grid,
.business-open .bw-property-grid {
  gap: 32px;
}
.business-open .bw-row {
  gap: 16px;
  padding: 20px 0;
  border-color: var(--portal-line);
}
.business-open .bw-shell .bw-button,
.business-open .bw-shell .primary {
  min-height: 46px;
  border-radius: var(--portal-radius-button);
  font-size: 11px;
  line-height: 18px;
  padding: 12px 16px;
}
.business-open .bw-shell .pe-shell {
  padding: 0;
  margin: 24px 0;
  gap: 32px;
  grid-template-columns: 224px minmax(0, 1fr);
}
.business-open .pe-readiness {
  border-color: var(--portal-line);
  font-size: 12px;
}
.business-open .pe-readiness > button {
  min-height: 46px;
  border-radius: var(--portal-radius-button);
  font-size: 11px;
  background: var(--portal-secondary);
  color: var(--portal-plum);
}
.business-open .bw-shell .pe-start {
  padding: 24px 0;
  max-width: none;
}
.business-open .bw-shell .portal-settings-grid {
  gap: 24px;
}
@media (max-width: 1390px) {
  .business-open .bw-shell {
    grid-template-columns: 200px minmax(0, 1fr);
  }
  .business-open .bw-content {
    padding: 32px;
  }
  .business-open .bw-topbar {
    padding: 16px 32px;
  }
}
@media (max-width: 1000px) {
  .business-open .bw-shell .pe-shell {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
@media (max-width: 760px) {
  .portal-authenticated .pd-sidebar {
    max-height: none;
    overflow-y: visible;
  }
  .business-open .bw-shell {
    display: block;
  }
  .business-open .bw-sidebar {
    padding: 20px 18px 0;
    background: var(--portal-paper);
  }
  .business-open .bw-sidebar nav {
    display: flex;
    overflow-x: auto;
    flex-wrap: nowrap;
    gap: 20px;
  }
  .business-open .bw-nav {
    flex-shrink: 0;
    min-height: 44px;
    border-radius: 0;
    padding: 8px 0;
    font-size: 11px;
  }
  .business-open .bw-nav[aria-current="page"] {
    box-shadow: none;
    background: transparent;
    border-bottom: 2px solid var(--portal-coral);
  }
  .business-open .bw-nav > span {
    display: block;
  }
  .business-open .bw-topbar {
    padding: 12px 18px;
    min-height: 56px;
  }
  .business-open .bw-content {
    padding: 32px 18px;
  }
  .business-open .bw-grid,
  .business-open .bw-property-grid {
    gap: 24px;
  }
  .business-open .bw-shell .pe-shell {
    display: grid;
    grid-template-columns: 1fr;
  }
}
.pa-overview-map {
  grid-column: 1/-1;
}
.portal-authenticated .pa-overview-map .pa-panel-header {
  flex-wrap: wrap;
}
.portal-authenticated .pa-overview-map .pm-overview {
  height: 400px;
  min-height: 400px;
  border: 0;
  border-top: 1px solid var(--portal-line);
  border-radius: 0;
  grid-template-columns: 280px minmax(0, 1fr);
}
.portal-authenticated .pa-overview-map .pm-list {
  border-radius: 0;
  background: var(--portal-paper);
  border-color: var(--portal-line);
}
.portal-authenticated .pa-overview-map .pm-canvas,
.portal-authenticated .pa-overview-map .pm-map {
  min-height: 0;
  height: 100%;
  border-radius: 0;
}
.portal-authenticated .pa-overview-map .pm-card {
  padding: 16px;
  border-radius: 0;
  border-color: var(--portal-line);
  background: var(--portal-paper);
}
.portal-authenticated .pa-overview-map .pm-card.selected {
  background: var(--portal-secondary);
}
.portal-authenticated .pa-overview-map .pm-select {
  background: transparent;
  gap: 12px;
  padding: 0;
}
.portal-authenticated .pa-overview-map .pm-select img,
.portal-authenticated .pa-overview-map .pm-placeholder {
  width: 56px;
  height: 56px;
  border-radius: var(--portal-radius-compact);
}
.portal-authenticated .pa-overview-map .pm-card h3 {
  font-size: 12px;
  line-height: 20px;
  margin: 8px 0;
}
.portal-authenticated .pa-overview-map .pm-card p {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
}
.portal-authenticated .pa-overview-map .pm-search {
  padding: 16px;
  border-color: var(--portal-line);
}
.portal-authenticated .pm-search label {
  display: flex;
  align-items: center;
  flex-direction: row;
  gap: 12px;
  margin: 0;
}
.portal-authenticated .pm-search input[type="search"] {
  font-size: 11px;
  border-color: var(--portal-line);
  border-radius: var(--portal-radius-button);
  min-height: 46px;
}
.portal-authenticated .pa-overview-map .pm-fit {
  min-height: 44px;
  font-size: 10px;
}
@media (max-width: 760px) {
  .portal-authenticated .pa-overview-map .pm-overview {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 0;
  }
  .portal-authenticated .pa-overview-map .pm-list {
    order: 2;
    max-height: 280px;
    border-right: 0;
    border-top: 1px solid var(--portal-line);
  }
  .portal-authenticated .pa-overview-map .pm-canvas {
    order: 1;
    height: 320px;
    min-height: 320px;
  }
  .portal-authenticated .pa-overview-map .pm-map {
    height: 320px;
    min-height: 320px;
  }
  .portal-authenticated .pa-overview-map .pa-panel-header > .pd-secondary {
    width: 100%;
  }
}
@font-face {
  font-family: Manrope;
  src: url("assets/manrope-bold.otf");
  font-weight: 700;
  font-display: swap;
}
body.portal-authenticated {
  background: var(--portal-cream);
}
.portal-authenticated .mi-ui .mi-avatar {
  background: var(--portal-secondary);
  color: var(--portal-plum);
}
.portal-authenticated .mi-ui .mi-preview {
  color: var(--portal-body);
}
.portal-authenticated .mi-ui .mi-thread-row.mi-selected {
  border-color: var(--portal-line);
}
.portal-authenticated .address-results [role="option"] {
  background: var(--portal-paper);
  color: var(--portal-plum);
  min-height: 56px;
  border-bottom: 1px solid var(--portal-line);
}
.portal-authenticated .address-results [role="option"]:hover,
.portal-authenticated .address-results [role="option"][aria-selected="true"] {
  background: var(--portal-secondary);
}
.portal-authenticated .address-results [role="option"] > span {
  color: var(--portal-muted);
}
.portal-authenticated .pe-field-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.portal-authenticated .pe-required {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
  font-weight: 400;
}
.portal-authenticated .listing-save-tools > summary {
  min-height: 44px;
  display: flex;
  align-items: center;
  font-size: 11px;
  color: var(--portal-plum);
  cursor: pointer;
}
.portal-authenticated .listing-save-tools > summary:after {
  content: "+";
  margin-left: auto;
  font-size: 16px;
}
.portal-authenticated .listing-save-tools[open] > summary:after {
  content: "−";
}
.portal-authenticated .listing-save-tools > button {
  width: 100%;
  margin-top: 8px;
  min-height: 44px;
}
.portal-authenticated .pd-page,
.portal-authenticated .pl-professional {
  background: transparent;
}
.portal-authenticated
  .pl-section-navigation
  [role="tab"][aria-selected="true"]
  strong,
.portal-authenticated
  .pl-section-navigation
  [role="tab"][aria-selected="true"]
  span {
  color: var(--portal-plum);
}
.portal-authenticated .pl-professional .desk-title[aria-pressed="true"] {
  background: transparent;
  color: var(--portal-plum);
}
.portal-authenticated .pl-professional .desk-title:after {
  content: none;
}
.portal-authenticated .pl-brief-availability {
  border-color: var(--portal-line);
}
.portal-authenticated .pl-expiry-meter {
  background: var(--portal-secondary);
}
.portal-authenticated .pl-expiry-meter > span {
  background: var(--portal-plum);
}
@media (max-width: 760px) {
  .portal-authenticated .pd-sidebar nav button > span {
    display: block;
  }
  .portal-authenticated .pd-sidebar nav button {
    min-width: 44px;
  }
  .portal-authenticated .ph-event {
    padding: 18px;
  }
  .portal-authenticated .ph-event-heading {
    gap: 12px;
  }
  .portal-authenticated .ph-event-heading h2 {
    overflow-wrap: anywhere;
  }
  .portal-authenticated .ph-event-facts {
    gap: 12px;
  }
  .portal-authenticated .ph-event-facts > div + div {
    padding-left: 12px;
  }
  .portal-authenticated .ph-event-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .portal-authenticated .ph-event-actions > button {
    width: 100%;
  }
}
.portal-authenticated {
  --pd-ink: var(--portal-plum);
  --pd-muted: var(--portal-muted);
  --pd-bg: var(--portal-cream);
  --pd-border: var(--portal-line);
  --pd-soft: var(--portal-secondary);
  --pa-section: 48px;
  --pa-gap: 32px;
  background: var(--portal-cream);
  color: var(--portal-body);
  font-variant-numeric: tabular-nums;
}
.portal-authenticated * {
  box-sizing: border-box;
}
.portal-authenticated #app {
  padding-left: 224px;
  min-height: 100dvh;
}
.portal-authenticated .pd-sidebar {
  width: 224px;
  padding: 32px 16px 16px;
  background: var(--portal-paper);
  border-color: var(--portal-line);
}
.portal-authenticated .pd-sidebar .brand {
  margin: 0 8px;
  font-size: 20px;
  line-height: 28px;
  min-height: 48px;
  gap: 8px;
  align-content: center;
  flex-wrap: nowrap;
}
.portal-authenticated .pd-sidebar .brand svg {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}
.portal-authenticated .pd-sidebar .brand span {
  margin: 0;
  font-size: 20px;
  line-height: 18px;
  letter-spacing: 0;
  text-transform: none;
  width: auto;
  font-weight: 600;
}
.portal-authenticated .pd-sidebar .brand small {
  display: block;
  font-size: 10px;
  line-height: 18px;
  font-weight: 400;
  color: var(--portal-muted);
}
.portal-authenticated .pd-workspace-label {
  margin: 40px 12px 12px;
  font-size: 10px;
  letter-spacing: 0.4px;
  font-weight: 600;
  color: var(--portal-muted);
}
.portal-authenticated .pd-sidebar nav {
  gap: 8px;
}
.portal-authenticated .pd-sidebar nav button {
  min-height: 48px;
  padding: 12px;
  gap: 12px;
  background: transparent;
  border-radius: var(--portal-radius-button);
  font-size: 12px;
  line-height: 20px;
  font-weight: 600;
  color: var(--portal-body);
}
.portal-authenticated .pd-sidebar nav button[aria-current="page"] {
  background: var(--portal-secondary);
  color: var(--portal-plum);
  box-shadow: inset 3px 0 var(--portal-coral);
}
.portal-authenticated .pd-sidebar nav button:hover {
  background: var(--portal-secondary);
  color: var(--portal-plum);
}
.portal-authenticated .pd-sidebar nav button > svg:last-child {
  display: none;
}
.portal-authenticated .pd-sidebar-note {
  padding: 24px 8px 0;
  margin: 48px 4px 24px;
  border: 0;
  color: var(--portal-muted);
}
.portal-authenticated .pd-sidebar-note strong {
  font-size: 12px;
  line-height: 20px;
  font-weight: 600;
  color: var(--portal-plum);
}
.portal-authenticated .pd-sidebar-note p {
  font-size: 11px;
  line-height: 20px;
  margin-top: 8px;
}
.portal-authenticated .pd-sidebar-note > svg {
  width: 20px;
  height: 20px;
  color: var(--portal-plum);
}
.portal-authenticated .pd-account {
  margin-top: auto;
  padding-top: 16px;
  border-color: var(--portal-line);
}
.portal-authenticated .pd-account .portal-account-menu {
  width: 100%;
  max-width: none;
}
.portal-authenticated .pd-account .portal-account-menu > summary {
  background: transparent;
  gap: 12px;
  padding: 8px 0;
}
.portal-authenticated .pd-account .portal-account-options {
  left: 0;
  right: auto;
  top: auto;
  bottom: calc(100% + 8px);
  max-width: calc(100vw - 32px);
  width: 100%;
  box-sizing: border-box;
  gap: 4px;
  padding: 8px;
}
.portal-authenticated .portal-account-options button {
  background: transparent;
  border-radius: 8px;
}
.portal-authenticated .portal-account-options button:hover {
  background: var(--portal-soft);
}
.portal-authenticated .pd-topbar {
  height: 72px;
  padding: 16px var(--pa-section);
  border-color: var(--portal-line);
  font-size: 11px;
  background: var(--portal-paper);
}
.portal-authenticated .pd-topbar > div {
  gap: 12px;
}
.portal-authenticated .pd-live-label {
  font-size: 10px;
  color: var(--portal-muted);
}
.portal-authenticated h1 {
  font-size: 27px;
  line-height: 35px;
  letter-spacing: -0.8px;
  font-weight: 700;
  color: var(--portal-plum);
  margin: 8px 0;
}
.portal-authenticated h2 {
  font-size: 17px;
  line-height: 25px;
  letter-spacing: -0.3px;
  font-weight: 700;
  color: var(--portal-plum);
}
.portal-authenticated h3 {
  font-size: 14px;
  line-height: 23px;
  letter-spacing: 0;
  color: var(--portal-plum);
}
.portal-authenticated p {
  font-size: 12px;
  line-height: 23px;
}
.portal-authenticated .eyebrow {
  font-size: 10px;
  line-height: 18px;
  letter-spacing: 0.4px;
  font-weight: 600;
  color: var(--portal-muted);
}
.portal-authenticated .pd-page,
.portal-authenticated .pl-professional,
.portal-authenticated .portal-card-page {
  max-width: 1720px;
  padding: var(--pa-section);
  margin: 0 auto;
}
.portal-authenticated .pd-heading {
  margin: 0 0 var(--pa-section);
  gap: 32px;
  align-items: center;
}
.portal-authenticated .pd-heading h1 {
  font-size: 27px;
  line-height: 35px;
  margin: 8px 0;
}
.portal-authenticated .pd-heading p {
  font-size: 12px;
  line-height: 23px;
  color: var(--portal-muted);
  margin: 8px 0 0;
}
.portal-authenticated .pd-actions {
  gap: 12px;
}
.portal-authenticated .pd-primary,
.portal-authenticated .pd-secondary,
.portal-authenticated .primary,
.portal-authenticated .form-actions > button {
  min-height: 46px;
  line-height: 18px;
  font-size: 11px;
  font-weight: 700;
  border-radius: var(--portal-radius-button);
  padding: 12px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
}
.portal-authenticated .pd-primary,
.portal-authenticated .primary {
  background: var(--portal-plum);
  color: var(--portal-paper);
}
.portal-authenticated .pd-secondary {
  background: var(--portal-secondary);
  color: var(--portal-plum);
}
.portal-authenticated .pd-primary:hover,
.portal-authenticated .primary:hover {
  background: var(--portal-body);
}
.portal-authenticated .pd-secondary:hover {
  background: var(--portal-pressed);
}
.portal-authenticated .pd-primary:disabled,
.portal-authenticated .primary:disabled {
  opacity: 0.5;
}
.portal-authenticated .pd-primary svg,
.portal-authenticated .pd-secondary svg {
  width: 16px;
  height: 16px;
}
.portal-authenticated button:focus-visible,
.portal-authenticated a:focus-visible,
.portal-authenticated summary:focus-visible,
.portal-authenticated input:focus-visible,
.portal-authenticated textarea:focus-visible {
  outline: 2px solid var(--portal-plum);
  outline-offset: 4px;
}
.portal-authenticated .pd-icon {
  min-height: 44px;
  width: 44px;
  height: 44px;
  padding: 12px;
  background: transparent;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--portal-muted);
}
.portal-authenticated .pd-icon:hover {
  background: var(--portal-secondary);
}
.portal-authenticated .pd-card {
  border-radius: var(--portal-radius-card);
  border-color: var(--portal-line);
  background: var(--portal-paper);
  padding: 24px;
}
.portal-authenticated .pd-card h2 {
  margin: 0 0 8px;
}
.portal-authenticated .pd-soft-icon {
  background: var(--portal-cream);
  color: var(--portal-plum);
  border-radius: var(--portal-radius-compact);
}
.portal-authenticated .pd-avatar {
  background: var(--portal-secondary);
  color: var(--portal-plum);
  font-weight: 600;
}
.portal-authenticated .pd-status {
  background: var(--portal-secondary);
  color: var(--portal-plum);
  font-size: 10px;
  line-height: 18px;
  border-radius: var(--portal-radius-compact);
  font-weight: 600;
}
.portal-authenticated .pd-subnav {
  gap: 24px;
  border-bottom: 1px solid var(--portal-line);
  padding: 0;
  margin-bottom: 24px;
}
.portal-authenticated .pd-subnav > button {
  min-height: 48px;
  border-radius: 0;
  background: transparent;
  padding: 12px 0;
  font-size: 12px;
  border-bottom: 2px solid transparent;
  color: var(--portal-muted);
}
.portal-authenticated .pd-subnav > button[aria-current="page"] {
  color: var(--portal-plum);
  border-bottom-color: var(--portal-coral);
  font-weight: 600;
}
/* A day organized around work, with direct links to the existing routes. */
.portal-authenticated .pa-start-listing {
  display: grid;
  width: 224px;
  flex-shrink: 0;
  gap: 8px;
  text-align: center;
}
.pa-start-listing small {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
}
.portal-authenticated .pa-day-summary {
  gap: 0;
  margin: 0 0 48px;
  padding: 8px 0;
  background: var(--portal-paper);
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-card);
}
.portal-authenticated .pa-day-summary .pd-metric {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 16px;
  gap: 8px 16px;
  padding: 16px 24px;
  background: transparent;
  border: 0;
  border-right: 1px solid var(--portal-line);
  border-radius: 0;
  box-shadow: none;
  min-height: 0;
  text-align: left;
}
.portal-authenticated .pa-day-summary .pd-metric:last-child {
  border-right: 0;
}
.portal-authenticated .pa-day-summary .pd-metric:hover {
  background: var(--portal-cream);
}
.portal-authenticated .pa-day-summary .pd-metric > strong {
  font-size: 27px;
  line-height: 35px;
  color: var(--portal-plum);
  font-weight: 600;
  margin: 0;
}
.portal-authenticated .pa-day-summary .pd-metric > span {
  font-size: 11px;
  line-height: 18px;
  color: var(--portal-muted);
  grid-column: 1;
  margin: 0;
}
.portal-authenticated .pa-day-summary .pd-metric > svg {
  position: static;
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  width: 16px;
  height: 16px;
  color: var(--portal-muted);
}
.portal-authenticated .ph-open-houses .pd-heading {
  margin-bottom: 28px;
}
.portal-authenticated .ph-event-section + .ph-event-section {
  margin-top: 40px;
}
.portal-authenticated .ph-event-list {
  display: grid;
  gap: 16px;
}
.portal-authenticated .ph-event {
  padding: 24px;
}
.portal-authenticated .ph-event-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}
.portal-authenticated .ph-event-heading h2 {
  margin: 8px 0 4px;
}
.portal-authenticated .ph-event-heading p {
  margin: 0;
  color: var(--portal-muted);
}
.portal-authenticated .ph-event-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 24px 0 18px;
  padding: 18px 0;
  border-top: 1px solid var(--portal-line);
  border-bottom: 1px solid var(--portal-line);
}
.portal-authenticated .ph-event-facts > div {
  display: grid;
  gap: 4px;
}
.portal-authenticated .ph-event-facts > div + div {
  padding-left: 20px;
  border-left: 1px solid var(--portal-line);
}
.portal-authenticated .ph-event-facts span,
.portal-authenticated .ph-event-facts small,
.portal-authenticated .ph-event-instructions span {
  color: var(--portal-muted);
  font-size: 12px;
  line-height: 18px;
}
.portal-authenticated .ph-event-facts strong {
  color: var(--portal-plum);
  font-size: 18px;
  line-height: 24px;
  font-weight: 650;
}
.portal-authenticated .ph-event-instructions {
  display: grid;
  gap: 4px;
  margin: 0 0 20px;
}
.portal-authenticated .ph-event-instructions strong {
  font-size: 12px;
}
.portal-authenticated .ph-event-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.portal-authenticated .ph-count {
  min-width: 24px;
  padding: 2px 7px;
  border-radius: 8px;
  background: #ffffff24;
  text-align: center;
  font-size: 11px;
}
.portal-authenticated .ph-event-actions .pd-secondary {
  border-color: var(--portal-line);
}
.portal-authenticated .ph-guest-list {
  display: grid;
  gap: 8px;
  margin-top: 16px;
}
.portal-authenticated .ph-guest-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-card);
  background: var(--portal-paper);
}
.portal-authenticated .ph-guest-row > div {
  display: grid;
  gap: 3px;
}
.portal-authenticated .ph-guest-row small {
  color: var(--portal-muted);
  font-size: 11px;
}
.pa-section-title {
  margin: 0 0 24px;
}
.pa-section-title h2 {
  margin: 0;
}
.pa-section-title p {
  color: var(--portal-muted);
  margin: 4px 0 0;
}
.pa-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  gap: 32px;
  align-items: start;
}
.portal-authenticated .pa-dashboard-grid > .pd-card,
.portal-authenticated .pa-dashboard-side > .pd-card {
  padding: 0;
  overflow: hidden;
  margin: 0;
}
.pa-dashboard-side {
  display: grid;
  gap: 32px;
}
.pa-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 24px;
}
.portal-authenticated .pa-panel-header h2 {
  margin: 0;
  font-size: 17px;
  line-height: 25px;
}
.pa-panel-header p {
  font-size: 11px;
  line-height: 20px;
  color: var(--portal-muted);
  margin: 4px 0 0;
}
.pa-panel-count {
  font-size: 10px;
  color: var(--portal-muted);
  white-space: nowrap;
}
.pa-day-tabs {
  display: flex;
  gap: 24px;
  padding: 0 24px;
  border-bottom: 1px solid var(--portal-line);
}
.portal-authenticated .pa-day-tabs > button {
  background: transparent;
  border-radius: 0;
  border-bottom: 2px solid transparent;
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 12px 0;
  font-size: 11px;
  color: var(--portal-muted);
}
.portal-authenticated .pa-day-tabs > button[aria-pressed="true"] {
  border-bottom-color: var(--portal-coral);
  color: var(--portal-plum);
}
.pa-day-tabs button > span {
  font-size: 10px;
  color: var(--portal-muted);
}
.pa-appointments {
  padding: 0 24px;
}
.portal-authenticated .pa-appointment {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 24px 0;
  min-height: 108px;
  border-radius: 0;
  width: 100%;
  text-align: left;
  background: transparent;
  border-bottom: 1px solid var(--portal-line);
}
.pa-appointment:last-child {
  border: 0;
}
.pa-appointment-time {
  display: grid;
  gap: 4px;
  width: 88px;
  flex-shrink: 0;
}
.pa-appointment-time strong {
  font-size: 14px;
  line-height: 23px;
  color: var(--portal-plum);
  font-weight: 600;
}
.pa-appointment-time small {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
}
.pa-appointment-marker {
  width: 3px;
  align-self: stretch;
  background: var(--portal-pressed);
  border-radius: 2px;
  flex-shrink: 0;
}
.pa-appointment:first-child .pa-appointment-marker {
  background: var(--portal-coral);
}
.pa-appointment-info {
  display: grid;
  gap: 8px;
}
.pa-appointment-info > small,
.pa-appointment-info > span {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
}
.pa-appointment-info > strong {
  font-size: 12px;
  line-height: 20px;
  font-weight: 600;
  color: var(--portal-plum);
}
.pa-appointment > svg {
  width: 16px;
  height: 16px;
  margin-left: auto;
  color: var(--portal-muted);
  flex-shrink: 0;
}
.pa-panel-footer {
  padding: 16px 24px 24px;
}
.pa-panel-footer > button {
  width: 100%;
}
.portal-authenticated .pa-task {
  display: flex;
  align-items: center;
  gap: 16px;
  text-align: left;
  background: transparent;
  border-radius: 0;
  width: calc(100% - 48px);
  margin: 0 24px;
  padding: 20px 0;
  border-top: 1px solid var(--portal-line);
}
.pa-task > .pd-soft-icon {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
}
.pa-task > span:nth-child(2) {
  display: grid;
  gap: 4px;
}
.pa-task strong {
  font-size: 12px;
  line-height: 20px;
  font-weight: 600;
  color: var(--portal-plum);
}
.pa-task small {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
}
.pa-task > svg {
  width: 16px;
  height: 16px;
  margin-left: auto;
  color: var(--portal-muted);
}
.pa-caught-up {
  margin: 0 !important;
  padding: 0 24px 24px;
  color: var(--portal-muted);
}
.portal-authenticated .pa-dashboard-side > .pa-resume {
  padding: 24px;
}
.pa-resume-home {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 20px 0 16px;
}
.pa-resume-home > img,
.pa-resume-home > .pa-cover-empty {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border-radius: var(--portal-radius-compact);
  flex-shrink: 0;
}
.portal-authenticated .pa-resume-home h2 {
  font-size: 12px;
  line-height: 20px;
  margin: 0;
}
.pa-resume-home p {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
  margin: 4px 0 0;
}
.pa-resume > p {
  font-size: 11px;
  line-height: 20px;
  color: var(--portal-muted);
  margin: 16px 0 20px;
}
.pa-resume > button {
  width: 100%;
  margin-top: 8px;
}
.pa-resume-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}
.pa-resume-actions > button {
  max-width: 100%;
}
@media (max-width: 600px) {
  .pa-resume-actions > button {
    width: 100%;
  }
}
.pa-inventory-labels,
.pa-home-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 108px 44px;
  gap: 16px;
  align-items: center;
  margin: 0 24px;
}
.pa-inventory-labels {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
  padding: 12px 0;
  border-top: 1px solid var(--portal-line);
  border-bottom: 1px solid var(--portal-line);
}
.pa-home-row {
  padding: 20px 0;
  border-bottom: 1px solid var(--portal-line);
}
.pa-home-row:last-of-type {
  border: 0;
}
.portal-authenticated .pa-home-row > button:first-child {
  display: flex;
  gap: 12px;
  align-items: center;
  background: transparent;
  border-radius: var(--portal-radius-compact);
  padding: 0;
  text-align: left;
}
.pa-home-cover,
.pa-home-cover > img,
.pa-home-cover > .pa-cover-empty {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  object-fit: cover;
  border-radius: var(--portal-radius-compact);
}
.pa-cover-empty {
  display: grid;
  place-items: center;
  background: var(--portal-secondary);
  color: var(--portal-plum);
}
.pa-cover-empty > svg {
  width: 20px;
  height: 20px;
}
.pa-home-row > button:first-child > span:last-child {
  display: grid;
  gap: 4px;
}
.pa-home-row strong {
  font-size: 11px;
  line-height: 18px;
  font-weight: 600;
  color: var(--portal-plum);
}
.pa-home-row small {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
}
.portal-authenticated .pa-conversation {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  width: calc(100% - 48px);
  margin: 0 24px;
  padding: 20px 0;
  text-align: left;
  background: transparent;
  border-radius: 0;
  border-top: 1px solid var(--portal-line);
}
.pa-conversation > .pd-avatar {
  width: 36px;
  height: 36px;
  min-height: 36px;
  font-size: 11px;
}
.pa-conversation > span:nth-child(2) {
  display: grid;
  gap: 4px;
  flex: 1;
  min-width: 0;
}
.pa-conversation strong {
  font-size: 12px;
  line-height: 20px;
  font-weight: 600;
  color: var(--portal-plum);
}
.pa-conversation small {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
}
.pa-conversation > span:nth-child(2) > span {
  font-size: 11px;
  line-height: 20px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
}
.pa-conversation > .pa-unread-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--portal-coral);
  margin-top: 8px;
  flex-shrink: 0;
}
.pa-conversation > svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  margin-top: 4px;
}
.pa-leads {
  grid-column: 1/-1;
}
.pa-leads .pd-lead-row {
  width: calc(100% - 48px);
  margin: 0 24px;
  padding: 20px 0;
  background: transparent;
  border-radius: 0;
  border-top: 1px solid var(--portal-line);
}
.pa-leads .pd-lead-row > span:nth-child(2) {
  display: grid;
  gap: 4px;
}
.pa-leads small {
  font-size: 10px;
  color: var(--portal-muted);
}
.pa-overview .pd-empty {
  padding: 32px 16px;
  min-height: 0;
}
.pa-overview .pd-empty h3 {
  font-size: 14px;
}
.pa-overview .pd-empty p {
  font-size: 11px;
  color: var(--portal-muted);
  max-width: 36ch;
  margin: 12px auto 20px;
}
.pa-overview .pd-empty button {
  width: 100%;
  max-width: 240px;
  margin: auto;
}
.pa-overview .pd-page-note {
  font-size: 10px;
  margin-top: 32px;
  border-top: 1px solid var(--portal-line);
  padding-top: 24px;
}
/* Inventory A: a clear table and a separate contextual brief. */
.portal-authenticated .pl-professional .pl-section-navigation {
  margin-bottom: 32px;
}
.portal-authenticated .pl-section-navigation > [role="tablist"] {
  gap: 24px;
}
.portal-authenticated .pl-section-navigation [role="tab"] {
  padding: 24px;
  background: var(--portal-paper);
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-card);
  gap: 16px;
  box-shadow: none;
}
.portal-authenticated
  .pl-section-navigation
  [role="tab"][aria-selected="true"] {
  background: var(--portal-secondary);
  border-color: var(--portal-plum);
}
.portal-authenticated .pl-section-navigation [role="tab"] > div > strong {
  font-size: 27px;
  line-height: 35px;
  font-weight: 600;
}
.portal-authenticated .pl-section-navigation [role="tab"] small {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
}
.portal-authenticated .pl-section-navigation [role="tab"] .pd-soft-icon,
.portal-authenticated .pl-section-navigation [role="tab"] > svg {
  display: none;
}
.portal-authenticated .pl-desk-layout {
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 32px;
}
.portal-authenticated .pl-inventory {
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-card);
  padding: 24px;
  background: var(--portal-paper);
}
.portal-authenticated .pl-inventory-intro {
  padding: 0 0 24px;
  margin: 0;
}
.portal-authenticated .pl-inventory-intro h2 {
  margin: 4px 0 8px;
}
.pl-selection-help {
  font-size: 11px;
  color: var(--portal-muted);
}
.portal-authenticated .pl-professional .pl-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0 0 24px;
  align-items: center;
}
.portal-authenticated .pl-professional .desk-search {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 0 16px;
  min-height: 48px;
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-button);
  flex: 1 1 200px;
  max-width: none;
  background: var(--portal-paper);
}
.portal-authenticated .pl-professional .desk-search input[type="search"] {
  border: 0;
  min-height: 46px;
  border-radius: 0;
  background: transparent;
  font-size: 11px;
  padding: 8px 0;
}
.portal-authenticated .pl-filter-tools {
  gap: 12px;
}
.portal-authenticated .pl-filter-tools .pd-select {
  min-width: 148px;
}
.portal-authenticated .pl-filter-tools .pd-select > button {
  background: var(--portal-paper);
  border: 1px solid var(--portal-line);
  min-height: 48px;
  font-size: 11px;
}
.portal-authenticated .pl-professional .pl-table-heading,
.portal-authenticated .pl-professional .pl-list > article {
  grid-template-columns: minmax(0, 1fr) 88px 104px 136px;
  gap: 16px;
}
.portal-authenticated .pl-professional .pl-table-heading {
  text-transform: none;
  letter-spacing: 0;
  font-size: 10px;
  line-height: 18px;
  border-color: var(--portal-line);
  padding: 16px 0;
}
.portal-authenticated .pl-professional .pl-list > article {
  padding: 24px 0;
  min-height: 136px;
  border-color: var(--portal-line);
  background: var(--portal-paper);
}
.portal-authenticated .pl-professional .pl-list > article.pl-selected-row {
  background: var(--portal-secondary);
  box-shadow: inset 3px 0 var(--portal-plum);
  padding-left: 12px;
  padding-right: 12px;
}
.portal-authenticated .pl-professional .pl-apartment {
  gap: 16px;
}
.portal-authenticated .pl-professional .desk-cover {
  width: 64px;
  height: 72px;
  min-width: 64px;
  border-radius: var(--portal-radius-compact);
}
.portal-authenticated .pl-professional .desk-title {
  padding: 0;
  background: transparent;
  border-radius: 0;
  font-size: 12px;
  line-height: 20px;
  min-height: 44px;
  font-weight: 600;
  display: block;
}
.portal-authenticated .pl-professional .desk-identity h2 {
  margin: 0;
}
.portal-authenticated .pl-professional .pl-location,
.portal-authenticated .pl-professional .pl-facts {
  font-size: 10px !important;
  line-height: 18px;
  color: var(--portal-muted) !important;
  margin: 4px 0 !important;
}
.portal-authenticated .pl-professional .pl-media-meta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 9px;
  color: var(--portal-muted);
  margin-top: 8px;
}
.portal-authenticated .pl-professional .pl-media-meta > span {
  display: flex;
  align-items: center;
  gap: 4px;
}
.portal-authenticated .pl-professional .pl-media-meta svg {
  width: 12px;
  height: 12px;
}
.portal-authenticated .pl-professional .pl-rent > strong {
  font-size: 13px;
  line-height: 20px;
  letter-spacing: 0;
}
.portal-authenticated .pl-professional .pl-rent > small {
  font-size: 10px;
  color: var(--portal-muted);
}
.portal-authenticated .pl-professional .pl-status {
  background: transparent;
  padding: 0;
  white-space: normal;
  font-size: 10px;
  line-height: 18px;
  font-weight: 600;
  color: var(--portal-muted);
}
.portal-authenticated .pl-status.pl-live {
  color: var(--portal-success);
}
.portal-authenticated .pl-status.pl-inactive {
  color: var(--portal-danger);
}
.portal-authenticated .pl-professional .desk-status p {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
  margin-top: 8px;
}
.portal-authenticated .pl-professional .desk-status small {
  font-size: 9px;
  line-height: 18px;
  color: var(--portal-muted);
}
.portal-authenticated .pl-professional .listing-row-actions {
  display: flex;
  align-items: stretch;
  flex-direction: column;
  gap: 8px;
}
.portal-authenticated .pl-professional .listing-row-actions > button {
  min-height: 46px;
  font-size: 10px;
  padding: 12px;
}
.portal-authenticated .pl-professional .pl-row-secondary {
  display: flex;
  justify-content: flex-end;
}
.portal-authenticated .pl-professional .pl-row-menu > summary {
  height: 44px;
  min-height: 44px;
  width: 44px;
  border-radius: 50%;
  background: transparent;
}
.portal-authenticated .pl-availability-note {
  border-radius: var(--portal-radius-card);
  padding: 24px;
  gap: 16px;
  background: var(--portal-paper);
  border: 1px solid var(--portal-line);
  margin-bottom: 24px;
}
.pl-availability-note p {
  font-size: 11px;
  color: var(--portal-muted);
}
.portal-authenticated .pl-brief {
  background: var(--portal-paper);
  border-color: var(--portal-line);
  border-radius: var(--portal-radius-card);
  max-height: none;
  overflow: visible;
  position: static;
}
.portal-authenticated .pl-brief-heading {
  padding: 16px 20px;
  border-color: var(--portal-line);
}
.portal-authenticated .pl-brief-heading h2 {
  font-size: 12px;
  line-height: 20px;
  margin-top: 4px;
}
.portal-authenticated .pl-brief-cover {
  border-radius: 0;
}
.portal-authenticated .pl-brief-body {
  padding: 24px;
}
.portal-authenticated .pl-brief-body > h3 {
  font-size: 17px;
  line-height: 25px;
  margin: 0 0 8px;
}
.portal-authenticated .pl-brief-body > p {
  font-size: 11px;
  line-height: 20px;
  color: var(--portal-muted);
}
.portal-authenticated .pl-brief-section {
  margin-top: 24px;
  padding-top: 24px;
  border-color: var(--portal-line);
}
.portal-authenticated .pl-brief-section h4 {
  font-size: 12px;
  line-height: 20px;
  margin: 0 0 12px;
}
.portal-authenticated .pl-brief-section > button[data-listing-open] {
  justify-content: flex-start;
  background: transparent;
  border-radius: 0;
  border-bottom: 1px solid var(--portal-line);
  padding: 12px 0;
  margin: 0;
  min-height: 48px;
  font-size: 11px;
}
.portal-authenticated
  .pl-brief-section
  > button[data-listing-open]
  > svg:last-child {
  margin-left: auto;
}
.portal-authenticated .pl-brief-availability {
  margin-top: 24px;
  background: var(--portal-cream);
  border-radius: var(--portal-radius-compact);
  padding: 16px;
}
.portal-authenticated .pl-brief-availability p {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
}
/* Creation and editing: short entry, useful saved-building shortcuts, visible readiness. */
.portal-authenticated .pe-start {
  max-width: 1560px;
  padding: 32px 48px 48px;
  margin: 0 auto;
}
.portal-authenticated .pe-start > #entry-back {
  margin-bottom: 24px;
  max-width: 180px;
}
.portal-authenticated .pe-start .listing-entry-card {
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.7fr);
  gap: 32px;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.portal-authenticated .pe-start .listing-entry-main {
  padding: 32px;
  background: var(--portal-paper);
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-card);
}
.portal-authenticated .pe-start h1 {
  font-size: 27px;
  line-height: 35px;
}
.portal-authenticated .pe-start .lead {
  font-size: 12px;
  line-height: 23px;
  max-width: 54ch;
  color: var(--portal-muted);
}
.portal-authenticated .pe-start .listing-entry-aside {
  padding: 32px;
  background: transparent;
  border: 0;
}
.portal-authenticated .pe-entry-plan h2 {
  font-size: 22px;
  line-height: 29px;
}
.portal-authenticated .pe-entry-plan > p {
  font-size: 12px;
  line-height: 23px;
  color: var(--portal-muted);
}
.portal-authenticated .pe-entry-plan li {
  gap: 16px;
  padding: 20px 0;
  border-color: var(--portal-line);
}
.portal-authenticated .pe-entry-plan li strong {
  font-size: 12px;
}
.portal-authenticated .pe-entry-plan li p {
  font-size: 11px;
  line-height: 20px;
  color: var(--portal-muted);
}
.pe-recent-buildings {
  margin: 32px 0;
  padding: 24px 0;
  border-top: 1px solid var(--portal-line);
  border-bottom: 1px solid var(--portal-line);
}
.portal-authenticated .pe-recent-buildings h2 {
  font-size: 14px;
  line-height: 23px;
  letter-spacing: 0;
  margin: 0 0 8px;
}
.pe-recent-buildings > p {
  font-size: 11px;
  line-height: 20px;
  color: var(--portal-muted);
  margin: 0 0 16px;
}
.pe-recent-buildings > div {
  display: grid;
  gap: 8px;
}
.portal-authenticated .pe-recent-buildings button {
  display: flex;
  align-items: center;
  gap: 12px;
  text-align: left;
  background: var(--portal-cream);
  border-radius: var(--portal-radius-button);
  padding: 12px 16px;
  min-height: 56px;
  width: 100%;
}
.pe-recent-buildings button > span {
  display: grid;
  gap: 4px;
}
.pe-recent-buildings strong {
  font-size: 11px;
  line-height: 18px;
  font-weight: 600;
}
.pe-recent-buildings small {
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
}
.pe-recent-buildings button > svg:last-child {
  width: 16px;
  height: 16px;
  margin-left: auto;
}
.portal-authenticated .pe-start fieldset {
  padding: 0;
  margin: 0;
  border: 0;
}
.portal-authenticated .pe-start .primary {
  width: 100%;
  margin-top: 24px;
}
.portal-authenticated .pe-start label {
  font-size: 12px;
  line-height: 20px;
  margin: 24px 0 8px;
}
.portal-authenticated .pe-start .fine {
  font-size: 11px;
  line-height: 20px;
  color: var(--portal-muted);
}
.portal-authenticated .pe-shell {
  padding: 0 48px;
  max-width: 1720px;
  grid-template-columns: 248px minmax(0, 1fr);
  gap: 32px;
  margin: 32px auto 48px;
}
.portal-authenticated .pe-shell .listing-sidebar {
  padding: 24px;
  background: var(--portal-paper);
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-card);
  top: 24px;
  max-height: calc(100dvh - 48px);
  overflow: auto;
}
.portal-authenticated .pe-shell .listing-editor {
  padding: 32px;
  background: var(--portal-paper);
  border-color: var(--portal-line);
  border-radius: var(--portal-radius-card);
}
.portal-authenticated .pe-shell .listing-sidebar nav {
  gap: 8px;
  margin: 24px 0;
}
.portal-authenticated .pe-shell .listing-sidebar nav button {
  min-height: 48px;
  border-radius: var(--portal-radius-button);
  background: transparent;
  gap: 12px;
  font-size: 11px;
  line-height: 18px;
  padding: 12px;
}
.portal-authenticated
  .pe-shell
  .listing-sidebar
  nav
  button[aria-current="step"] {
  background: var(--portal-secondary);
  color: var(--portal-plum);
}
.portal-authenticated .pe-shell .listing-sidebar .pe-sidebar-heading {
  margin-top: 24px;
}
.portal-authenticated .pe-sidebar-heading h2 {
  font-size: 17px;
  line-height: 25px;
}
.portal-authenticated .pe-sidebar-heading p {
  font-size: 11px;
  line-height: 20px;
  color: var(--portal-muted);
}
.pe-readiness {
  border-top: 1px solid var(--portal-line);
  padding-top: 24px;
  margin-top: 24px;
}
.pe-readiness > strong {
  font-size: 12px;
  line-height: 20px;
  color: var(--portal-plum);
}
.pe-readiness > p {
  font-size: 11px;
  line-height: 20px;
  color: var(--portal-muted);
  margin: 8px 0 12px;
}
.pe-readiness ul {
  padding-left: 16px;
  font-size: 11px;
  line-height: 23px;
  margin: 0 0 8px;
  color: var(--portal-body);
}
.pe-readiness > small {
  display: block;
  font-size: 10px;
  line-height: 18px;
  color: var(--portal-muted);
  margin-bottom: 16px;
}
.pe-readiness > button {
  width: 100%;
  margin-top: 16px;
}
.portal-authenticated .pe-shell .listing-save {
  border-top: 1px solid var(--portal-line);
  padding-top: 24px;
  margin-top: 24px;
  gap: 12px;
}
.portal-authenticated #listing-save-status {
  font-size: 11px;
  line-height: 20px;
  color: var(--portal-muted);
}
.portal-authenticated .pe-shell .listing-editor h1 {
  font-size: 27px;
  line-height: 35px;
}
.portal-authenticated .pe-shell .lead {
  font-size: 12px;
  line-height: 23px;
  color: var(--portal-muted);
  max-width: 60ch;
}
.portal-authenticated .pe-shell .fields-two {
  gap: 16px 24px;
}
.portal-authenticated .pe-shell .fields-two > label,
.portal-authenticated .pe-shell .pe-field > label {
  font-size: 12px;
  line-height: 20px;
  margin-bottom: 8px;
}
.portal-authenticated .pe-shell .fields-two .pe-field > label {
  margin-top: 0;
}
.portal-authenticated
  .pe-shell
  input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.portal-authenticated
  .pe-start
  input:not([type="checkbox"]):not([type="radio"]):not([type="file"]) {
  border-color: var(--portal-line);
  border-radius: var(--portal-radius-button);
  min-height: 48px;
  background: var(--portal-cream);
  font-size: 12px;
  padding: 12px 16px;
}
.portal-authenticated .pe-shell textarea {
  border-color: var(--portal-line);
  border-radius: var(--portal-radius-button);
  font-size: 12px;
  line-height: 23px;
  padding: 16px;
  background: var(--portal-cream);
}
.portal-authenticated .pe-shell .pd-select > button {
  min-height: 48px;
  background: var(--portal-cream);
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-button);
  font-size: 12px;
}
.portal-authenticated .pe-shell .pe-subnav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 24px;
  margin: 24px 0 32px;
  border-bottom: 1px solid var(--portal-line);
}
.portal-authenticated .pe-shell .pe-subnav button {
  min-height: 48px;
  font-size: 11px;
  line-height: 18px;
  padding: 12px 0;
  background: transparent;
  border-radius: 0;
  border-bottom: 2px solid transparent;
}
.portal-authenticated .pe-shell .pe-subnav button[aria-current="page"] {
  border-bottom-color: var(--portal-coral);
  color: var(--portal-plum);
}
.portal-authenticated .pe-shell .rent-section,
.portal-authenticated .pe-shell .pe-section,
.portal-authenticated .pe-shell .pm-section,
.portal-authenticated .pe-shell .pr-section {
  border-color: var(--portal-line);
  border-radius: var(--portal-radius-card);
  padding: 24px;
  margin: 24px 0 32px;
}
.portal-authenticated .pe-shell .form-actions {
  gap: 12px;
  padding: 24px 0 0;
  border-top: 1px solid var(--portal-line);
  margin-top: 32px;
  align-items: center;
}
.portal-authenticated .pe-shell .form-actions .primary {
  min-width: 164px;
}
.portal-authenticated .pe-shell .pe-action-note {
  font-size: 10px;
  color: var(--portal-muted);
  line-height: 18px;
}
/* The existing inbox, calendar, map and account tools keep their behavior and get the same space. */
.portal-authenticated .pd-inbox-heading {
  padding: 32px 48px 0;
  max-width: 1720px;
  margin: auto;
}
.portal-authenticated .pd-inbox-heading .pd-heading {
  margin-bottom: 24px;
}
.portal-authenticated .mi-shell {
  padding: 24px 48px 32px;
  max-width: 1720px;
  margin: auto;
}
.portal-authenticated .mi-ui {
  --mi-ink: var(--portal-plum);
  --mi-muted: var(--portal-muted);
  --mi-line: var(--portal-line);
  --mi-soft: var(--portal-cream);
  --mi-pale: var(--portal-secondary);
}
.portal-authenticated .mi-layout {
  gap: 24px;
  grid-template-columns: 280px minmax(0, 1fr) 256px;
}
.portal-authenticated .mi-list-pane,
.portal-authenticated .mi-thread-pane,
.portal-authenticated .mi-context {
  border-color: var(--portal-line);
  border-radius: var(--portal-radius-card);
}
.portal-authenticated .mi-ui button:not(.mi-icon):not(.mi-quiet) {
  border-radius: var(--portal-radius-button);
}
.portal-authenticated .mi-ui .mi-filter-menu summary {
  min-height: 44px;
  display: flex;
  align-items: center;
}
.portal-authenticated .mi-ui label {
  margin: 0;
}
.portal-authenticated .mi-ui .mi-search input[type="search"] {
  border: 0;
  border-radius: 0;
  background: transparent;
  font-size: 12px;
  padding: 8px 0;
  min-height: 46px;
}
.portal-authenticated .mi-ui .mi-search {
  min-height: 48px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  padding: 0 12px;
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-button);
}
.portal-authenticated .pc-page {
  padding: 32px 48px;
}
.portal-authenticated .pc-workspace {
  gap: 24px;
}
.portal-authenticated .pc-toolbar {
  gap: 16px;
  flex-wrap: wrap;
}
.portal-authenticated .pc-left,
.portal-authenticated .pc-right {
  border-color: var(--portal-line);
  border-radius: var(--portal-radius-card);
}
.portal-authenticated .pd-connections-grid,
.portal-authenticated .portal-settings-grid {
  gap: 24px;
}
.portal-authenticated .portal-card-layout {
  gap: 32px;
}
.portal-authenticated .portal-card-editor {
  padding: 32px;
  border-color: var(--portal-line);
  border-radius: var(--portal-radius-card);
}
.portal-authenticated .portal-card-fieldset {
  padding-top: 32px;
  margin-top: 32px;
}
.portal-authenticated .portal-card-fieldset .fields-two {
  gap: 24px;
}
@media (min-width: 1750px) {
  .portal-authenticated .pl-desk-layout {
    grid-template-columns: minmax(0, 1fr) 352px;
  }
  .portal-authenticated .pl-professional .pl-table-heading,
  .portal-authenticated .pl-professional .pl-list > article {
    grid-template-columns: minmax(0, 1fr) 104px 132px 148px;
    gap: 24px;
  }
}
@media (max-width: 1390px) {
  .portal-authenticated {
    --pa-section: 32px;
    --pa-gap: 24px;
  }
  .portal-authenticated .pd-sidebar {
    width: 200px;
  }
  .portal-authenticated #app {
    padding-left: 200px;
  }
  .portal-authenticated .pa-dashboard-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    gap: 24px;
  }
  .pa-dashboard-side {
    gap: 24px;
  }
  .portal-authenticated .pl-desk-layout {
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 24px;
  }
  .portal-authenticated .pl-inventory {
    padding: 20px;
  }
  .portal-authenticated .pl-professional .pl-table-heading,
  .portal-authenticated .pl-professional .pl-list > article {
    grid-template-columns: minmax(0, 1fr) 76px 88px 112px;
    gap: 12px;
  }
  .portal-authenticated .pl-professional .desk-cover {
    width: 48px;
    height: 56px;
    min-width: 48px;
  }
  .portal-authenticated .pl-professional .desk-title {
    font-size: 11px;
  }
  .portal-authenticated .pl-professional .pl-apartment {
    gap: 12px;
  }
  .portal-authenticated .pl-professional .pl-location,
  .portal-authenticated .pl-professional .pl-facts {
    font-size: 9px !important;
  }
  .portal-authenticated .mi-layout {
    grid-template-columns: 248px minmax(0, 1fr);
    gap: 24px;
  }
  .portal-authenticated .mi-context {
    display: none;
  }
  .portal-authenticated .pd-inbox-heading,
  .portal-authenticated .mi-shell,
  .portal-authenticated .pc-page {
    padding-left: 32px;
    padding-right: 32px;
  }
  .portal-authenticated .pe-shell {
    padding: 0 32px;
    grid-template-columns: 224px minmax(0, 1fr);
    gap: 24px;
  }
  .portal-authenticated .pe-start {
    padding: 32px;
  }
  .portal-authenticated .pe-shell .listing-editor {
    padding: 24px;
  }
}
@media (max-width: 1199px) {
  .portal-authenticated .pa-dashboard-grid {
    grid-template-columns: 1fr;
  }
  .pa-dashboard-side {
    grid-template-columns: 1fr 1fr;
  }
  .portal-authenticated .pl-desk-layout {
    grid-template-columns: 1fr;
  }
  .portal-authenticated .pl-professional #listing-brief-container {
    display: none;
  }
  .portal-authenticated
    .pl-professional.is-inspecting
    #listing-brief-container {
    display: block;
  }
  .portal-authenticated .pl-professional .pl-table-heading,
  .portal-authenticated .pl-professional .pl-list > article {
    grid-template-columns: minmax(0, 1fr) 88px 132px 136px;
    gap: 16px;
  }
  .portal-authenticated .pl-professional .desk-cover {
    width: 64px;
    height: 72px;
    min-width: 64px;
  }
  .portal-authenticated .pl-professional .desk-title {
    font-size: 12px;
  }
  .portal-authenticated .pl-professional .listing-row-actions {
    grid-column: auto;
    grid-row: auto;
  }
  .portal-authenticated .pe-start .listing-entry-card {
    grid-template-columns: 1fr;
  }
  .portal-authenticated .pe-start .listing-entry-aside {
    display: none;
  }
  .portal-authenticated .pa-day-summary .pd-metric {
    padding: 16px;
  }
}
@media (max-width: 1000px) {
  .portal-authenticated .pa-day-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .portal-authenticated .pa-day-summary .pd-metric:nth-child(2) {
    border-right: 0;
  }
  .portal-authenticated .pa-day-summary .pd-metric:nth-child(-n + 2) {
    border-bottom: 1px solid var(--portal-line);
  }
  .portal-authenticated .pl-section-navigation > [role="tablist"] {
    gap: 16px;
  }
  .portal-authenticated .pl-section-navigation [role="tab"] {
    padding: 20px;
  }
  .portal-authenticated .pe-shell {
    grid-template-columns: 192px minmax(0, 1fr);
  }
  .portal-authenticated .pe-shell .listing-sidebar {
    padding: 16px;
  }
  .portal-authenticated .pl-professional .pl-table-heading,
  .portal-authenticated .pl-professional .pl-list > article {
    grid-template-columns: minmax(0, 1fr) 88px 120px;
  }
  .portal-authenticated .pl-professional .listing-row-actions {
    grid-column: 1/-1;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
  }
  .portal-authenticated .pl-professional .listing-row-actions > button {
    width: 180px;
  }
  .portal-authenticated .pl-professional .pl-table-heading > span:last-child {
    display: none;
  }
  .portal-authenticated .pd-topbar {
    padding: 16px 24px;
  }
  .portal-authenticated .pc-workspace {
    grid-template-columns: 1fr;
  }
  .portal-authenticated .pc-left,
  .portal-authenticated .pc-right {
    grid-column: auto;
    grid-row: auto;
  }
  .portal-authenticated .pc-right {
    display: block;
  }
  .portal-authenticated .mi-shell {
    padding: 24px;
  }
  .portal-authenticated .mi-layout {
    grid-template-columns: 224px minmax(0, 1fr);
    gap: 16px;
  }
}
@media (max-width: 760px) {
  .portal-authenticated {
    --pa-section: 24px;
    --pa-gap: 24px;
  }
  .portal-authenticated #app {
    padding: 0;
    min-height: 100dvh;
  }
  .portal-authenticated .pd-sidebar {
    position: relative;
    inset: auto;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 20px 18px 0;
    border-right: 0;
    border-bottom: 1px solid var(--portal-line);
    gap: 0;
  }
  .portal-authenticated .pd-sidebar .brand {
    margin: 0 0 16px;
    min-height: 44px;
    font-size: 20px;
    flex-shrink: 0;
    width: auto;
    max-width: 100%;
    flex-wrap: wrap;
    gap: 8px;
  }
  .portal-authenticated .pd-sidebar .brand span {
    display: block;
    width: auto;
    font-size: 10px;
  }
  .portal-authenticated .pd-workspace-label,
  .portal-authenticated .pd-sidebar-note,
  .portal-authenticated .pd-account {
    display: none;
  }
  .portal-authenticated .pd-sidebar nav {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 20px;
    width: 100%;
    padding-bottom: 8px;
  }
  .portal-authenticated .pd-sidebar nav button {
    flex: 0 0 auto;
    min-height: 44px;
    padding: 8px 0;
    font-size: 11px;
    border-radius: 0;
    gap: 8px;
    border-bottom: 2px solid transparent;
    background: transparent;
  }
  .portal-authenticated .pd-sidebar nav button[aria-current="page"] {
    box-shadow: none;
    border-bottom-color: var(--portal-coral);
    background: transparent;
  }
  .portal-authenticated .pd-sidebar nav button > svg {
    width: 16px;
    height: 16px;
  }
  .portal-authenticated .pd-topbar {
    height: auto;
    min-height: 56px;
    padding: 8px 18px;
    gap: 12px;
    position: relative;
    inset: auto;
  }
  .portal-authenticated .pd-mobile-account {
    display: block;
  }
  .portal-authenticated .pd-topbar > div {
    gap: 8px;
  }
  .portal-authenticated .pd-topbar > div:first-child {
    font-size: 10px;
  }
  .portal-authenticated .pd-live-label {
    display: none;
  }
  .portal-authenticated .pd-topbar .portal-account-options {
    left: auto;
    right: 0;
    top: calc(100% + 8px);
    bottom: auto;
  }
  .portal-authenticated .pd-page,
  .portal-authenticated .pl-professional,
  .portal-authenticated .portal-card-page {
    padding: 32px 18px;
  }
  .portal-authenticated .pd-heading {
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
    margin-bottom: 32px;
  }
  .portal-authenticated .pd-heading h1 {
    font-size: 27px;
    line-height: 35px;
  }
  .portal-authenticated .pd-heading p {
    font-size: 12px;
    line-height: 23px;
  }
  .portal-authenticated .pd-actions {
    width: 100%;
    display: flex;
    gap: 12px;
  }
  .portal-authenticated .pd-actions > button {
    flex: 1;
  }
  .portal-authenticated .pa-start-listing {
    display: grid;
    width: 100%;
    gap: 8px;
  }
  .portal-authenticated .pa-day-summary {
    margin-bottom: 32px;
  }
  .portal-authenticated .pa-day-summary .pd-metric {
    padding: 16px;
    gap: 8px;
  }
  .portal-authenticated .pa-day-summary .pd-metric strong {
    font-size: 22px;
    line-height: 29px;
  }
  .portal-authenticated .pa-day-summary .pd-metric span {
    font-size: 10px;
  }
  .portal-authenticated .pa-dashboard-grid {
    gap: 24px;
  }
  .pa-dashboard-side {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .pa-panel-header {
    padding: 20px;
  }
  .pa-panel-header p {
    font-size: 10px;
  }
  .pa-day-tabs {
    padding: 0 20px;
  }
  .pa-appointments {
    padding: 0 20px;
  }
  .portal-authenticated .pa-appointment {
    gap: 12px;
    padding: 20px 0;
  }
  .pa-appointment-time {
    width: 72px;
  }
  .pa-appointment-time strong {
    font-size: 12px;
  }
  .pa-appointment-time small {
    font-size: 9px;
  }
  .pa-appointment-info > strong {
    font-size: 11px;
  }
  .pa-panel-footer {
    padding: 16px 20px 20px;
  }
  .portal-authenticated .pa-task {
    margin: 0 20px;
    width: calc(100% - 40px);
    gap: 12px;
  }
  .pa-task strong {
    font-size: 11px;
  }
  .pa-task > .pd-soft-icon {
    width: 32px;
    height: 32px;
  }
  .portal-authenticated .pa-dashboard-side > .pa-resume {
    padding: 20px;
  }
  .pa-inventory-labels {
    display: none;
  }
  .pa-home-row {
    grid-template-columns: minmax(0, 1fr) 44px;
    gap: 8px;
    margin: 0 20px;
  }
  .pa-home-row > button:first-child {
    grid-column: 1;
  }
  .pa-home-row > strong {
    grid-column: 1;
    margin-left: 60px;
    font-size: 12px;
  }
  .pa-home-row > .pd-icon {
    grid-column: 2;
    grid-row: 1;
  }
  .portal-authenticated .pa-conversation {
    margin: 0 20px;
    width: calc(100% - 40px);
  }
  .pa-conversation strong {
    font-size: 11px;
  }
  .pa-conversation small {
    font-size: 9px;
  }
  .pa-leads .pa-panel-header {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .pa-leads .pd-lead-row {
    margin: 0 20px;
    width: calc(100% - 40px);
  }
  .portal-authenticated .pl-section-navigation > [role="tablist"] {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .portal-authenticated .pl-section-navigation [role="tab"] {
    padding: 16px;
  }
  .portal-authenticated .pl-section-navigation [role="tab"] > div > strong {
    font-size: 22px;
    line-height: 29px;
  }
  .portal-authenticated .pl-section-navigation [role="tab"] small {
    font-size: 9px;
  }
  .portal-authenticated .pl-inventory {
    padding: 20px 16px;
  }
  .portal-authenticated .pl-inventory-intro {
    padding-bottom: 20px;
  }
  .portal-authenticated .pl-professional .pl-tools {
    gap: 12px;
    margin-bottom: 20px;
  }
  .portal-authenticated .pl-professional .desk-search {
    width: 100%;
    flex-basis: 100%;
  }
  .portal-authenticated .pl-filter-tools {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  .portal-authenticated .pl-filter-tools .pd-select {
    min-width: 0;
  }
  .portal-authenticated .pl-filter-tools .pd-select > button {
    font-size: 10px;
    padding: 12px;
  }
  .portal-authenticated .pl-professional .pl-table-heading {
    display: none;
  }
  .portal-authenticated .pl-professional .pl-list > article {
    grid-template-columns: minmax(0, 1fr) 76px;
    gap: 16px 12px;
    padding: 24px 0;
  }
  .portal-authenticated .pl-professional .pl-list > article.pl-selected-row {
    padding-left: 8px;
    padding-right: 8px;
  }
  .portal-authenticated .pl-professional .pl-apartment {
    grid-column: 1/-1;
    gap: 12px;
    align-items: flex-start;
  }
  .portal-authenticated .pl-professional .desk-title {
    font-size: 12px;
    line-height: 20px;
  }
  .portal-authenticated .pl-professional .desk-cover {
    width: 64px;
    height: 72px;
    min-width: 64px;
  }
  .portal-authenticated .pl-professional .pl-location,
  .portal-authenticated .pl-professional .pl-facts {
    font-size: 10px !important;
  }
  .portal-authenticated .pl-professional .pl-rent {
    grid-column: 1;
  }
  .portal-authenticated .pl-professional .desk-status {
    grid-column: 1/-1;
  }
  .portal-authenticated .pl-professional .listing-row-actions {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 44px;
    align-items: center;
    gap: 8px;
  }
  .portal-authenticated .pl-professional .listing-row-actions > button {
    width: 100%;
    font-size: 11px;
  }
  .portal-authenticated .pl-availability-note {
    padding: 20px;
    flex-wrap: wrap;
    gap: 12px;
  }
  .portal-authenticated .pl-availability-note > button {
    width: 100%;
    margin: 0;
  }
  .portal-authenticated .pl-brief-body {
    padding: 20px;
  }
  .portal-authenticated .pe-start {
    padding: 24px 18px;
  }
  .portal-authenticated .pe-start .listing-entry-card {
    display: block;
  }
  .portal-authenticated .pe-start .listing-entry-main {
    padding: 24px 20px;
  }
  .portal-authenticated .pe-start .listing-entry-aside {
    display: none;
  }
  .portal-authenticated .pe-recent-buildings {
    padding: 20px 0;
    margin: 24px 0;
  }
  .portal-authenticated .pe-shell {
    grid-template-columns: 1fr;
    padding: 0 18px;
    margin: 24px auto 32px;
    gap: 24px;
  }
  .portal-authenticated .pe-shell .listing-sidebar {
    position: static;
    max-height: none;
    padding: 20px;
  }
  .portal-authenticated .pe-shell .listing-sidebar .pe-sidebar-heading {
    margin-top: 16px;
  }
  .portal-authenticated .pe-shell .listing-sidebar nav {
    display: flex;
    overflow: auto;
    gap: 12px;
    flex-wrap: nowrap;
    padding-bottom: 8px;
    margin: 20px 0;
  }
  .portal-authenticated .pe-shell .listing-sidebar nav button {
    flex: 0 0 148px;
    min-height: 56px;
    padding: 12px;
    white-space: normal;
  }
  .portal-authenticated .pe-shell .listing-sidebar .listing-save {
    margin-top: 16px;
    padding-top: 16px;
  }
  .pe-readiness {
    margin-top: 16px;
    padding-top: 16px;
  }
  .pe-readiness ul,
  .pe-readiness > small {
    display: none;
  }
  .pe-readiness > p {
    font-size: 10px;
    line-height: 18px;
  }
  .pe-readiness > button {
    margin-top: 12px;
  }
  .portal-authenticated .pe-shell .listing-editor {
    padding: 24px 20px;
  }
  .portal-authenticated .pe-shell .fields-two {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .portal-authenticated .pe-shell .pe-subnav {
    gap: 8px 16px;
    margin: 24px 0;
  }
  .portal-authenticated .pe-shell .pe-subnav button {
    font-size: 10px;
  }
  .portal-authenticated .pe-shell .rent-section,
  .portal-authenticated .pe-shell .pe-section,
  .portal-authenticated .pe-shell .pm-section,
  .portal-authenticated .pe-shell .pr-section {
    padding: 20px 16px;
  }
  .portal-authenticated .pe-shell .form-actions {
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 24px;
    padding-top: 20px;
  }
  .portal-authenticated .pe-shell .form-actions .pe-action-note {
    width: 100%;
  }
  .portal-authenticated .pe-shell .form-actions > button {
    flex: 1;
  }
  .portal-authenticated .pd-inbox-heading {
    padding: 24px 18px 0;
  }
  .portal-authenticated .pd-inbox-heading .pd-heading {
    margin-bottom: 20px;
  }
  .portal-authenticated .mi-shell {
    padding: 16px 18px 24px;
  }
  .portal-authenticated .mi-layout {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .portal-authenticated .mi-thread-pane {
    display: none;
  }
  .portal-authenticated .mi-show-thread .mi-list-pane {
    display: none;
  }
  .portal-authenticated .mi-show-thread .mi-thread-pane {
    display: flex;
  }
  .portal-authenticated .pc-page {
    padding: 24px 18px;
  }
  .portal-authenticated .pc-toolbar {
    gap: 12px;
  }
  .portal-authenticated .pc-toolbar > div {
    flex-wrap: wrap;
  }
  .portal-authenticated .portal-card-editor {
    padding: 24px 18px;
  }
  .portal-authenticated .portal-card-page-actions {
    display: flex;
    width: 100%;
    gap: 8px;
  }
  .portal-authenticated .portal-card-fieldset .fields-two {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .portal-authenticated .pd-connections-grid,
  .portal-authenticated .portal-settings-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
/* Inbox owns its three-pane layout; space around the workspace belongs to the shell. */
.portal-authenticated #inbox-root .mi-shell {
  width: calc(100% - 96px);
  max-width: 1624px;
  padding: 0;
  margin: 0 auto 32px;
  border: 1px solid var(--portal-line);
  border-radius: var(--portal-radius-card);
  min-height: 520px;
  height: calc(100dvh - 260px);
}
.portal-authenticated #inbox-root .mi-layout {
  gap: 0;
  grid-template-columns: 280px minmax(0, 1fr) 256px;
}
@media (max-width: 1390px) {
  .portal-authenticated #inbox-root .mi-shell {
    width: calc(100% - 64px);
  }
  .portal-authenticated #inbox-root .mi-layout {
    grid-template-columns: 248px minmax(0, 1fr);
  }
}
@media (max-width: 1000px) {
  .portal-authenticated #inbox-root .mi-shell {
    width: calc(100% - 48px);
  }
  .portal-authenticated #inbox-root .mi-layout {
    grid-template-columns: 224px minmax(0, 1fr);
  }
  .portal-authenticated .mi-conversation-head {
    flex-wrap: wrap;
    gap: 12px;
  }
  .portal-authenticated .mi-person {
    flex: 1;
  }
  .portal-authenticated .mi-head-actions {
    justify-content: flex-end;
    flex-wrap: wrap;
  }
  .portal-authenticated .mi-suggestions {
    flex-wrap: wrap;
  }
}
@media (max-width: 760px) {
  .portal-authenticated #inbox-root .mi-shell {
    width: calc(100% - 36px);
    margin: 0 auto 24px;
    height: calc(100dvh - 320px);
    min-height: 520px;
  }
  .portal-authenticated .pd-sidebar nav button > span {
    display: block;
  }
  .portal-authenticated .pd-sidebar nav button {
    min-width: 44px;
  }
}
@media (max-width: 700px) {
  .portal-authenticated #inbox-root .mi-layout {
    display: flex;
    flex-direction: column;
  }
  .portal-authenticated
    #inbox-root
    .mi-shell:not(.mi-show-thread)
    .mi-conversation {
    display: none;
  }
  .portal-authenticated #inbox-root .mi-shell.mi-show-thread .mi-list-pane {
    display: none;
  }
  .portal-authenticated #inbox-root .mi-shell.mi-show-thread .mi-conversation {
    display: flex;
  }
}
@media (max-width: 760px) {
  .portal-authenticated .pe-shell .listing-sidebar > button {
    display: inline-flex;
    min-height: 44px;
    font-size: 11px;
    margin-right: 8px;
  }
  .portal-authenticated .pe-shell .pe-sidebar-heading .eyebrow,
  .portal-authenticated .pe-shell .pe-sidebar-heading p {
    display: none;
  }
  .portal-authenticated .pe-shell .listing-sidebar .pe-sidebar-heading {
    margin-top: 12px;
  }
  .portal-authenticated .pe-shell .pe-sidebar-heading h2 {
    font-size: 14px;
    line-height: 23px;
    margin: 0;
  }
  .portal-authenticated .pe-shell .listing-sidebar nav {
    margin: 16px 0 8px;
  }
  .portal-authenticated .pe-shell .listing-sidebar nav button {
    min-height: 48px;
    flex-basis: 140px;
  }
  .portal-authenticated .pe-shell .pe-readiness {
    display: grid;
    grid-template-columns: 1fr 112px;
    gap: 8px 12px;
    align-items: center;
    margin: 8px 0 0;
    padding-top: 16px;
  }
  .portal-authenticated .pe-readiness > strong {
    font-size: 11px;
    line-height: 18px;
  }
  .portal-authenticated .pe-readiness > p {
    margin: 0;
    grid-column: 1;
    font-size: 10px;
    line-height: 18px;
  }
  .portal-authenticated .pe-readiness > button {
    grid-column: 2;
    grid-row: 1 / span 2;
    margin: 0;
    padding: 12px 8px;
    font-size: 10px;
  }
  .portal-authenticated .pe-shell .listing-save {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 112px;
    align-items: center;
    gap: 12px;
    margin-top: 16px;
    padding-top: 12px;
  }
  .portal-authenticated .pe-shell .listing-save-tools > summary {
    font-size: 10px;
  }
  .portal-authenticated .pe-shell .listing-save-tools[open] {
    grid-column: 1/-1;
  }
}
/* Desktop has its own component roles within the shared design system. */
@media (min-width: 1024px) and (hover: hover) and (pointer: fine) {
  .portal-authenticated {
    --pa-section: 32px;
    --pa-gap: 24px;
  }
  .portal-authenticated .pd-page,
  .portal-authenticated .pl-professional,
  .portal-authenticated .portal-card-page {
    padding: 32px;
  }
  .portal-authenticated .pd-heading {
    gap: 24px;
    margin-bottom: 32px;
  }
  .portal-authenticated .pd-heading p {
    font-size: 13px;
    line-height: 20px;
  }
  .portal-authenticated .pd-primary,
  .portal-authenticated .pd-secondary,
  .portal-authenticated .primary,
  .portal-authenticated .form-actions > button,
  .business-open .bw-shell .bw-button,
  .business-open .bw-shell .primary,
  .business-open .post-primary,
  .business-open .post-secondary {
    width: auto;
    min-height: var(--portal-web-controlHeight);
    height: auto;
    min-width: 0;
    display: inline-flex;
    padding: 7px 12px;
    border-radius: var(--portal-web-controlRadius);
    font-size: var(--portal-web-controlFontSize);
    line-height: var(--portal-web-controlLineHeight);
    font-weight: 600;
    gap: 8px;
  }
  .portal-authenticated .pd-secondary {
    background: var(--portal-paper);
    border: 1px solid var(--portal-line);
  }
  .portal-authenticated .pd-secondary:hover {
    background: var(--portal-secondary);
    border-color: var(--portal-pressed);
  }
  .portal-authenticated .pd-icon {
    min-height: 36px;
    height: 36px;
    width: 36px;
    padding: 10px;
    border-radius: var(--portal-web-controlRadius);
  }
  .portal-authenticated .pd-icon > svg {
    width: 16px;
    height: 16px;
  }
  .portal-authenticated .pd-actions {
    align-items: center;
    gap: 12px;
  }
  .portal-authenticated .pd-sidebar nav {
    gap: 4px;
  }
  .portal-authenticated .pd-sidebar nav button {
    min-height: 40px;
    padding: 10px 12px;
    font-size: 13px;
    line-height: 20px;
    border-radius: var(--portal-web-controlRadius);
  }
  .portal-authenticated .pd-sidebar-note {
    margin-top: 32px;
  }
  .portal-authenticated .pd-topbar {
    height: 64px;
    padding: 12px 32px;
  }
  .portal-authenticated .pd-card,
  .portal-authenticated .pl-inventory,
  .portal-authenticated .pl-brief,
  .portal-authenticated .portal-card-editor,
  .business-open .bw-panel {
    border-radius: var(--portal-web-panelRadius);
  }
  .portal-authenticated .pd-status {
    font-size: 11px;
    line-height: 18px;
  }
  .portal-authenticated .pd-subnav > button {
    min-height: 40px;
    font-size: 13px;
    padding: 10px 0;
  }
  .portal-authenticated .pa-start-listing {
    width: auto;
    justify-items: end;
  }
  .pa-start-listing > small {
    font-size: 11px;
  }
  .portal-authenticated .pa-day-summary {
    margin-bottom: 32px;
    border-radius: var(--portal-web-panelRadius);
  }
  .portal-authenticated .pa-day-summary .pd-metric {
    padding: 12px 24px;
    gap: 4px 16px;
  }
  .portal-authenticated .pa-day-summary .pd-metric > strong {
    font-size: 22px;
    line-height: 29px;
  }
  .portal-authenticated .pa-day-summary .pd-metric > span {
    font-size: 12px;
    line-height: 18px;
  }
  .portal-authenticated .pa-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 24px;
  }
  .pa-schedule,
  .pa-active-inventory {
    grid-column: span 7;
  }
  .pa-dashboard-side,
  .pa-conversations {
    grid-column: span 5;
  }
  .portal-authenticated .pa-dashboard-side {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .pa-overview-map {
    grid-column: span 8;
  }
  .pa-leads {
    grid-column: span 4;
  }
  .pa-panel-header {
    padding: 20px 24px;
    min-height: 76px;
    gap: 16px;
  }
  .pa-panel-header p {
    font-size: 12px;
    line-height: 18px;
    margin-top: 4px;
  }
  .pa-panel-count {
    font-size: 12px;
  }
  .pa-panel-footer {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 12px 24px;
    border-top: 1px solid var(--portal-line);
    background: var(--portal-paper);
  }
  .portal-authenticated .pa-panel-footer > .pd-secondary {
    width: auto;
    min-height: 36px;
    border: 0;
    background: transparent;
    padding: 7px 0;
    font-size: 13px;
  }
  .portal-authenticated .pa-panel-footer > .pd-secondary:hover {
    color: var(--portal-body);
    text-decoration: underline;
    text-underline-offset: 4px;
  }
  .portal-authenticated .pa-day-tabs > button {
    min-height: 40px;
    padding: 10px 0;
    font-size: 12px;
  }
  .portal-authenticated .pa-appointment {
    min-height: 80px;
    padding: 16px 0;
    gap: 16px;
  }
  .pa-appointment-info {
    gap: 4px;
  }
  .pa-appointment-info > strong {
    font-size: 13px;
    line-height: 20px;
  }
  .pa-appointment-info > small,
  .pa-appointment-info > span {
    font-size: 12px;
    line-height: 18px;
  }
  .portal-authenticated .pa-task {
    padding: 16px 0;
    gap: 12px;
  }
  .pa-task strong {
    font-size: 13px;
    line-height: 20px;
  }
  .pa-task small {
    font-size: 12px;
    line-height: 18px;
  }
  .pa-task > .pd-soft-icon {
    width: 32px;
    height: 32px;
  }
  .portal-authenticated .pa-dashboard-side > .pa-resume {
    padding: 20px 24px;
  }
  .pa-resume-home {
    margin: 16px 0 12px;
  }
  .pa-resume-home > img,
  .pa-resume-home > .pa-cover-empty {
    width: 48px;
    height: 48px;
  }
  .portal-authenticated .pa-resume-home h2 {
    font-size: 13px;
    line-height: 20px;
  }
  .pa-resume-home p {
    font-size: 12px;
    line-height: 18px;
  }
  .pa-resume > p {
    font-size: 12px;
    line-height: 20px;
    margin: 12px 0 16px;
  }
  .pa-resume > button {
    width: auto;
    min-height: 36px;
    margin-top: 0;
  }
  .pa-home-row {
    padding: 16px 0;
  }
  .pa-home-row strong {
    font-size: 13px;
    line-height: 20px;
  }
  .pa-home-row small {
    font-size: 12px;
    line-height: 18px;
  }
  .pa-home-cover,
  .pa-home-cover > img,
  .pa-home-cover > .pa-cover-empty {
    width: 44px;
    height: 44px;
  }
  .portal-authenticated .pa-conversation {
    padding: 16px 0;
  }
  .pa-conversation strong {
    font-size: 13px;
    line-height: 20px;
  }
  .pa-conversation small {
    font-size: 12px;
    line-height: 18px;
  }
  .pa-conversation > span:nth-child(2) > span {
    font-size: 12px;
    line-height: 20px;
  }
  .pa-leads .pa-panel-header {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .pa-leads .pa-panel-header > .pd-secondary {
    min-height: 36px;
    background: transparent;
    border: 0;
    padding: 4px 0;
    font-size: 12px;
  }
  .pa-leads .pd-lead-row {
    padding: 16px 0;
    gap: 12px;
    font-size: 13px;
  }
  .pa-leads small {
    font-size: 12px;
    line-height: 18px;
  }
  .portal-authenticated .pa-overview-map .pm-overview {
    grid-template-columns: 224px minmax(0, 1fr);
    height: 360px;
    min-height: 360px;
  }
  .portal-authenticated .pa-overview-map .pa-panel-header {
    padding: 20px 24px;
  }
  .portal-authenticated .pa-overview-map .pa-panel-header > .pd-secondary {
    font-size: 12px;
  }
  .portal-authenticated .pa-overview-map .pm-card h3 {
    font-size: 12px;
    line-height: 18px;
  }
  .portal-authenticated .pa-overview-map .pm-card p {
    font-size: 11px;
  }
  .portal-authenticated .pa-overview-map .pm-card > .pd-secondary {
    min-height: 32px;
    font-size: 12px;
    padding: 6px 8px;
    margin-top: 12px;
  }
  .portal-authenticated .pl-professional .pl-section-navigation {
    margin: 0 0 24px;
  }
  .portal-authenticated .pl-section-navigation > [role="tablist"] {
    display: flex;
    gap: 24px;
    align-items: center;
    border-bottom: 1px solid var(--portal-line);
    padding: 0;
  }
  .portal-authenticated .pl-section-navigation [role="tab"] {
    flex: 0 0 auto;
    min-height: 44px;
    padding: 12px 0;
    gap: 8px;
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
  }
  .portal-authenticated
    .pl-section-navigation
    [role="tab"][aria-selected="true"] {
    background: transparent;
    border-color: var(--portal-coral);
  }
  .portal-authenticated .pl-section-navigation [role="tab"] > div {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 8px;
  }
  .portal-authenticated .pl-section-navigation [role="tab"] > div > span {
    font-size: 13px;
    font-weight: 600;
    line-height: 20px;
  }
  .portal-authenticated .pl-section-navigation [role="tab"] > div > strong {
    font-size: 12px;
    line-height: 20px;
    font-weight: 600;
    background: var(--portal-secondary);
    border-radius: 4px;
    padding: 0 6px;
    min-width: 24px;
    text-align: center;
  }
  .portal-authenticated .pl-section-navigation [role="tab"] small {
    display: none;
  }
  .portal-authenticated .pl-availability-note {
    padding: 16px 20px;
    gap: 16px;
    margin-bottom: 24px;
    border-radius: var(--portal-web-panelRadius);
  }
  .portal-authenticated .pl-availability-note p {
    font-size: 12px;
    line-height: 20px;
  }
  .portal-authenticated .pl-inventory {
    padding: 24px;
  }
  .portal-authenticated .pl-inventory-intro {
    padding-bottom: 20px;
  }
  .portal-authenticated .pl-selection-help {
    font-size: 12px;
    line-height: 20px;
  }
  .portal-authenticated .pl-professional .pl-tools {
    margin-bottom: 20px;
    gap: 12px;
  }
  .portal-authenticated .pl-professional .desk-search {
    min-height: 40px;
    border-radius: var(--portal-web-controlRadius);
  }
  .portal-authenticated .pl-professional .desk-search input[type="search"] {
    min-height: 38px;
    font-size: 13px;
    padding: 8px 0;
  }
  .portal-authenticated .pl-filter-tools .pd-select > button {
    min-height: 40px;
    font-size: 12px;
    padding: 9px 12px;
    border-radius: var(--portal-web-controlRadius);
  }
  .portal-authenticated .pl-professional .pl-table-heading,
  .portal-authenticated .pl-professional .pl-list > article {
    grid-template-columns: minmax(0, 1fr) 88px 112px 144px;
    gap: 12px;
  }
  .portal-authenticated .pl-professional .pl-table-heading {
    font-size: 12px;
    line-height: 18px;
    padding: 12px 0;
  }
  .portal-authenticated .pl-professional .pl-list > article {
    min-height: 112px;
    padding: 16px 0;
  }
  .portal-authenticated .pl-professional .desk-cover {
    width: 56px;
    height: 64px;
    min-width: 56px;
  }
  .portal-authenticated .pl-professional .desk-title {
    font-size: 13px;
    line-height: 20px;
    min-height: 32px;
  }
  .portal-authenticated .pl-professional .pl-location,
  .portal-authenticated .pl-professional .pl-facts {
    font-size: 11px !important;
    line-height: 18px;
    margin: 2px 0 !important;
  }
  .portal-authenticated .pl-professional .pl-media-meta {
    font-size: 10px;
    margin-top: 4px;
  }
  .portal-authenticated .pl-professional .pl-rent > strong {
    font-size: 13px;
  }
  .portal-authenticated .pl-professional .pl-rent > small {
    font-size: 11px;
  }
  .portal-authenticated .pl-professional .desk-status p {
    font-size: 11px;
    line-height: 18px;
    margin-top: 4px;
    max-width: 100%;
    overflow-wrap: anywhere;
  }
  .portal-authenticated .pl-professional .desk-status small {
    font-size: 10px;
  }
  .portal-authenticated .pl-professional .listing-row-actions {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
  }
  .portal-authenticated .pl-professional .listing-row-actions > button {
    width: auto;
    min-width: 0;
    flex: 1;
    min-height: 36px;
    font-size: 12px;
    line-height: 20px;
    padding: 7px 8px;
    gap: 4px;
    white-space: normal;
  }
  .portal-authenticated .pl-professional .pl-row-secondary {
    width: 36px;
    min-width: 36px;
    flex: 0 0 36px;
  }
  .portal-authenticated .pl-professional .pl-row-menu > summary {
    width: 36px;
    height: 36px;
    min-height: 36px;
    border-radius: var(--portal-web-controlRadius);
  }
  .portal-authenticated .pl-brief {
    position: sticky;
    top: 24px;
    max-height: calc(100dvh - 48px);
    overflow: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
  }
  .portal-authenticated .pl-brief-heading {
    padding: 12px 20px;
  }
  .portal-authenticated .pl-brief-heading h2 {
    display: none;
  }
  .portal-authenticated .pl-brief-cover {
    height: 168px;
    min-height: 168px;
  }
  .portal-authenticated .pl-brief-cover > img {
    height: 168px;
    object-fit: cover;
  }
  .portal-authenticated .pl-brief-body {
    padding: 20px;
  }
  .portal-authenticated .pl-brief-body > p {
    font-size: 12px;
    line-height: 20px;
  }
  .portal-authenticated .pl-brief-section {
    margin-top: 20px;
    padding-top: 20px;
  }
  .portal-authenticated .pl-brief-section h4 {
    font-size: 13px;
    line-height: 20px;
  }
  .portal-authenticated .pl-brief-section > button[data-listing-open] {
    min-height: 36px;
    padding: 8px 0;
    font-size: 12px;
    line-height: 20px;
  }
  .portal-authenticated .pl-brief-availability {
    margin-top: 20px;
    padding: 12px;
  }
  .portal-authenticated .pl-brief-availability p {
    font-size: 11px;
    line-height: 18px;
  }
  .portal-authenticated .pl-brief-confirm {
    width: 100%;
    font-size: 12px;
    min-height: 36px;
  }
  .portal-authenticated .pl-brief-section > .pd-primary,
  .portal-authenticated .pl-brief-section > .pd-secondary {
    width: auto;
    min-height: 36px;
    font-size: 12px;
  }
  .portal-authenticated .pe-start {
    padding: 24px 32px 32px;
    max-width: 1560px;
  }
  .portal-authenticated .pe-start .listing-entry-main {
    padding: 32px;
    border-radius: var(--portal-web-panelRadius);
  }
  .portal-authenticated .pe-start .primary {
    width: auto;
    min-height: 36px;
    margin-top: 20px;
    min-width: 128px;
  }
  .portal-authenticated .pe-start .fine {
    font-size: 12px;
    line-height: 20px;
  }
  .portal-authenticated .pe-start label {
    font-size: 13px;
    line-height: 20px;
  }
  .portal-authenticated .pe-recent-buildings button {
    min-height: 44px;
    padding: 10px 12px;
    border-radius: var(--portal-web-controlRadius);
  }
  .pe-recent-buildings strong {
    font-size: 12px;
  }
  .pe-recent-buildings small {
    font-size: 11px;
  }
  .portal-authenticated .pe-shell {
    padding: 0 32px;
    gap: 24px;
    grid-template-columns: 224px minmax(0, 1fr);
    margin: 24px auto 32px;
  }
  .portal-authenticated .pe-shell .listing-sidebar {
    padding: 20px;
    border-radius: var(--portal-web-panelRadius);
  }
  .portal-authenticated .pe-shell .listing-sidebar > button {
    min-height: 36px;
    display: inline-flex;
    padding: 8px;
    font-size: 12px;
  }
  .portal-authenticated .pe-shell .listing-sidebar nav {
    gap: 4px;
    margin: 20px 0;
  }
  .portal-authenticated .pe-shell .listing-sidebar nav button {
    min-height: 40px;
    font-size: 12px;
    line-height: 20px;
    padding: 10px 8px;
    border-radius: var(--portal-web-controlRadius);
  }
  .portal-authenticated .pe-shell .step-number {
    width: 20px;
    height: 20px;
    background: transparent;
    border: 0;
    font-size: 12px;
  }
  .portal-authenticated .pe-shell .listing-editor {
    padding: 32px;
    border-radius: var(--portal-web-panelRadius);
  }
  .portal-authenticated
    .pe-shell
    input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
  .portal-authenticated
    .pe-start
    input:not([type="checkbox"]):not([type="radio"]):not([type="file"]) {
    min-height: 40px;
    border-radius: var(--portal-web-controlRadius);
    font-size: 13px;
    line-height: 20px;
    padding: 9px 12px;
    background: var(--portal-paper);
  }
  .portal-authenticated .pe-shell textarea {
    font-size: 13px;
    line-height: 23px;
    border-radius: var(--portal-web-controlRadius);
    background: var(--portal-paper);
  }
  .portal-authenticated .pe-shell .pd-select > button {
    min-height: 40px;
    padding: 9px 12px;
    font-size: 13px;
    line-height: 20px;
    border-radius: var(--portal-web-controlRadius);
    background: var(--portal-paper);
  }
  .portal-authenticated .pe-shell .fields-two > label,
  .portal-authenticated .pe-shell .pe-field > label {
    font-size: 13px;
    line-height: 20px;
  }
  .portal-authenticated .pe-shell .pe-subnav {
    gap: 24px;
    margin: 20px 0 24px;
  }
  .portal-authenticated .pe-shell .pe-subnav button {
    min-height: 40px;
    font-size: 12px;
    padding: 10px 0;
  }
  .portal-authenticated .pe-shell .form-actions {
    padding-top: 20px;
    margin-top: 24px;
    gap: 12px;
    justify-content: flex-end;
  }
  .portal-authenticated .pe-shell .form-actions .primary {
    min-width: 0;
  }
  .portal-authenticated .pe-shell .pe-action-note {
    margin-right: auto;
    font-size: 12px;
  }
  .portal-authenticated .pe-readiness > button {
    width: auto;
    min-height: 36px;
  }
  .portal-authenticated .pe-readiness > p,
  .portal-authenticated #listing-save-status {
    font-size: 12px;
    line-height: 20px;
  }
  .portal-authenticated .listing-save-tools > summary {
    min-height: 36px;
    font-size: 12px;
  }
  .portal-authenticated .listing-save-tools > button {
    min-height: 36px;
  }
  .portal-authenticated .pd-inbox-heading {
    padding: 24px 32px 0;
  }
  .portal-authenticated .pd-inbox-heading .pd-heading {
    margin-bottom: 16px;
  }
  .portal-authenticated .pd-inbox-heading h1 {
    font-size: 22px;
    line-height: 29px;
  }
  .portal-authenticated .pd-inbox-heading .eyebrow {
    display: none;
  }
  .portal-authenticated .pd-inbox-heading .pd-subnav {
    margin-bottom: 20px;
  }
  .portal-authenticated #inbox-root .mi-shell {
    width: calc(100% - 64px);
    height: calc(100dvh - 230px);
  }
  .portal-authenticated .mi-ui .mi-search {
    min-height: 40px;
    border-radius: var(--portal-web-controlRadius);
  }
  .portal-authenticated .mi-ui .mi-search input[type="search"] {
    min-height: 38px;
    font-size: 13px;
  }
  .portal-authenticated .mi-ui .mi-outline,
  .portal-authenticated .mi-ui .mi-send {
    min-height: 36px;
    border-radius: var(--portal-web-controlRadius);
    font-size: 12px;
    padding: 7px 12px;
  }
  .portal-authenticated .pc-page {
    padding: 24px 32px;
  }
  .portal-authenticated .pc-toolbar {
    margin-bottom: 24px;
    gap: 12px;
  }
  .portal-authenticated .pc-toolbar button {
    min-height: 36px;
    border-radius: var(--portal-web-controlRadius);
    font-size: 12px;
    padding: 7px 12px;
  }
  .portal-authenticated .portal-card-page-actions {
    justify-content: flex-end;
  }
  .portal-authenticated .portal-card-page-actions > button {
    width: auto;
    min-height: 36px;
    font-size: 13px;
    padding: 7px 12px;
  }
  .portal-authenticated .portal-settings-grid .pd-card > button {
    align-self: flex-start;
    width: auto;
    min-height: 36px;
    font-size: 13px;
  }
  .business-open .bw-topbar {
    min-height: 64px;
    padding: 12px 32px;
  }
  .business-open .bw-content {
    padding: 32px;
  }
  .business-open .bw-nav {
    min-height: 40px;
    padding: 10px 12px;
    font-size: 13px;
    border-radius: var(--portal-web-controlRadius);
  }
  .business-open .bw-panel,
  .business-open .bw-dialog {
    border-radius: var(--portal-web-panelRadius);
  }
  .portal-authenticated .pd-account .portal-account-options button {
    min-height: 36px;
    padding: 8px;
    font-size: 12px;
  }
  .portal-authenticated .portal-card-page {
    max-width: 1280px;
  }
  .portal-authenticated .portal-card-layout:not(.portal-card-layout-single) {
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 24px;
  }
  .portal-authenticated .portal-card-editor {
    padding: 24px;
  }
  .portal-authenticated .portal-editor-tabs {
    margin: -8px 0 24px;
    gap: 0;
  }
  .portal-authenticated .portal-editor-tabs [role=tab] {
    min-height: 40px;
    padding: 8px;
    font-size: 12px;
  }
  .portal-authenticated #profile-form label {
    margin: 0;
    gap: 8px;
    font-size: 12px;
    line-height: 20px;
  }
  .portal-authenticated #profile-form input:not([type=checkbox]):not([type=file]),
  .portal-authenticated #profile-form textarea {
    min-height: 40px;
    padding: 8px 12px;
    font-size: 13px;
    line-height: 20px;
    border-radius: var(--portal-web-controlRadius);
  }
  .portal-authenticated #profile-form textarea {
    min-height: 112px;
  }
  .portal-authenticated #profile-form .fine {
    font-size: 12px;
    line-height: 20px;
    margin: 8px 0 16px;
  }
  .portal-authenticated #profile-form .upload-row {
    margin: 0 0 24px;
    gap: 16px;
  }
  .portal-authenticated #profile-form .upload-avatar {
    width: 56px;
    height: 56px;
  }
  .portal-authenticated #profile-form .upload-button,
  .portal-authenticated #profile-form [data-action=crop-avatar] {
    display: inline-flex;
    min-height: 36px;
    padding: 8px 12px;
    margin: 0 8px 0 0;
    font-size: 12px;
    border: 1px solid var(--portal-line);
    border-radius: var(--portal-web-controlRadius);
    background: white;
  }
  .portal-authenticated #profile-form .upload-row .fine {
    margin: 8px 0 0;
  }
  .portal-authenticated #profile-form .portal-card-fieldset {
    margin: 0 0 24px;
    padding: 16px 0 0;
  }
  .portal-authenticated #profile-form .portal-card-fieldset .fields-two {
    gap: 16px 24px;
    align-items: start;
  }
  .portal-authenticated #profile-form .portal-card-fieldset legend {
    font-size: 14px;
    line-height: 20px;
  }
  .portal-authenticated #profile-form .portal-card-wide-field {
    grid-column: 1 / -1;
  }
  .portal-authenticated #profile-form .portal-card-wide-field .fine {
    margin-bottom: 0;
  }
  .portal-authenticated #profile-form [data-editor-panel] > .pd-select {
    margin-bottom: 24px;
  }
  .portal-authenticated #profile-form .portal-card-fieldset > .pd-select {
    margin: 12px 0 16px;
  }
  .portal-authenticated #profile-form [data-card=license-check],
  .portal-authenticated #profile-form .portal-card-button,
  .portal-authenticated .portal-settings-grid .pd-card > button,
  .portal-authenticated .portal-settings-grid .portal-card-button {
    display: inline-flex;
    width: fit-content;
    min-height: 36px;
    padding: 8px 12px;
    margin: 0 8px 8px 0;
    border: 1px solid var(--portal-line);
    border-radius: var(--portal-web-controlRadius);
    font-size: 12px;
    line-height: 20px;
  }
  .portal-authenticated #profile-form .portal-editor-note {
    margin: 24px 0 0;
    padding-top: 16px;
    border-top: 1px solid var(--portal-line);
  }
  .portal-authenticated .portal-card-live-preview.right-rail {
    top: 24px;
    max-height: calc(100dvh - 48px);
    border-radius: var(--portal-web-panelRadius);
  }
  .portal-authenticated .portal-card-live-preview .portal-card-portrait {
    height: 144px;
  }
  .portal-authenticated .portal-card-live-preview .portal-card-avatar {
    width: 112px;
    height: 112px;
  }
  .portal-authenticated .portal-card-live-preview .portal-card-content > h2 {
    font-size: 28px;
    line-height: 32px;
    letter-spacing: -0.5px;
  }
  .business-open .posts-heading {
    margin: 0 0 24px;
  }
  .business-open .posts-heading > button {
    width: auto;
  }
  .business-open .posts-empty {
    background: white;
    padding: 32px 24px;
    border-radius: var(--portal-web-panelRadius);
  }
  .business-open .posts-empty img {
    width: 80px;
    height: 64px;
  }
  .portal-authenticated .portal-card-save-bar {
    padding: 0 0 16px;
  }
  .portal-authenticated .portal-card-save-bar button {
    min-height: 36px;
    padding: 8px 12px;
    background: transparent;
  }
}
@media (min-width: 1024px) and (max-width: 1390px) and (hover: hover) and (pointer: fine) {
  .portal-authenticated .pa-overview-map {
    grid-column: 1/-1;
  }
  .pa-leads {
    grid-column: 1/-1;
  }
  .portal-authenticated .pl-professional .pl-table-heading,
  .portal-authenticated .pl-professional .pl-list > article {
    grid-template-columns: minmax(0, 1fr) 80px 100px 128px;
    gap: 12px;
  }
  .portal-authenticated .pl-professional .desk-cover {
    width: 48px;
    height: 56px;
    min-width: 48px;
  }
  .portal-authenticated .pl-professional .desk-title {
    font-size: 12px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .portal-authenticated * {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}

/* Publication decisions use the portal form and native checkbox roles. */
.publication-review .pd-dialog-body form {
  display: grid;
  gap: 16px;
}
.publication-review .pd-dialog-body form label {
  margin: 0;
  gap: 8px;
}
.publication-review .pd-dialog-body .publication-attestation {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  min-height: 44px;
  gap: 12px;
}
.publication-review .publication-attestation input[type="checkbox"] {
  width: 20px;
  min-width: 20px;
  height: 20px;
  min-height: 20px;
  margin: 2px 0 0;
  padding: 0;
  flex: 0 0 20px;
}
.publication-review .publication-attestation span {
  line-height: 22px;
}
