
.pb-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.4em; }
.pb-drag-grid { display: grid; gap: 0.8em; }
@media (min-width: 36em) { .pb-drag-grid { grid-template-columns: 1fr 12.5em; } }
.pb-pool .pill { white-space: nowrap; }
.pb-pool { display: grid; align-content: start; gap: 0.5em; }
.pb-pool h4 { font-weight: 700; color: var(--app-text); }
.pb-pool small, .page-plan .plan-avail small { font-weight: 500; color: var(--app-text-3); }
.pb-gone { opacity: 0.45; border-style: solid; }
.pb-gap { display: inline-grid; place-content: center; width: 2.1em; height: 2.1em; margin: 0.1em; border-radius: 50%; font-size: 0.76em; font-weight: 700; text-decoration: none; color: var(--orange-text); border: 1.5px dashed var(--orange); background: var(--orange-tint); }
.page-plan .plan-table .k-swap { vertical-align: middle; }
.page-plan .plan-table td i.pb-drop { color: var(--card); background: var(--orange-deep); border-color: transparent; box-shadow: 0 0 0 0.3em var(--orange-wash); }
.page-plan .plan-table td i.pb-warn { background: var(--amber); box-shadow: 0 0 0 0.3em var(--amber-bg); }
.page-plan .plan-table tfoot th, .page-plan .plan-table tfoot td { padding: 0.5em 0.3em; text-align: center; font-size: 0.86em; font-variant-numeric: tabular-nums; color: var(--app-text-3); background: var(--app-bg); border-bottom: 1px solid var(--app-bg-alt); }
.page-plan .plan-table tfoot th { padding-left: 1.1em; text-align: left; font-weight: 600; }
.page-plan .plan-table tfoot b { color: var(--orange-text); }
.js [data-step="1"] .pb-gap { animation: kPulse 1.2s ease-in-out infinite; }
.js [data-step="1"] .pb-lift { box-shadow: var(--shadow-lg); transform: translate(-0.5em, -0.2em); transition: transform 0.6s var(--ease-out), box-shadow 0.6s; border-style: solid; border-color: var(--orange-line); }
.pb-units { display: flex; flex-wrap: wrap; align-items: center; gap: 0.45em; margin-top: 0.9em; font-size: 0.9em; color: var(--app-text-3); }
.js .is-live .pb-late td i { animation-delay: 0.9s; }
.js .is-live .pb-late td:nth-child(3) i { animation-delay: 1.05s; }
.js .is-live .pb-late td:nth-child(4) i { animation-delay: 1.2s; }
.js .is-live .pb-late td:nth-child(5) i { animation-delay: 1.35s; }
.js .is-live .pb-late td:nth-child(6) i { animation-delay: 1.5s; }
.js .is-live .pb-late td:nth-child(7) i { animation-delay: 1.65s; }
.page-plan .k-desk .k-toast { font-size: 12px; }
.pb-clash-toast { margin-top: 0.9em; }
.pb-week th:first-child { width: 10.5em; }
@media (max-width: 30em) { .pb-week th:first-child { width: 4.6em; } }
.pb-week tbody th { white-space: nowrap; }
.pb-week tbody th .k-btn { margin-left: 0.4em; font-size: 0.8em; padding: 0.15em 0.5em; }
@media (max-width: 30em) { .pb-week tbody th .k-btn { display: none; } }
.pb-via { display: flex; gap: 1.2em; padding: 0.3em 0; }
.pb-count .k-stat { max-width: 16em; }
.pb-days { display: grid; gap: 0.35em; }
.pb-days li { padding: 0.5em 0.7em; border-radius: 0.6em; border: 1px solid var(--app-border); font-weight: 500; }
@media (max-width: 40em) { .page-plan .plan-table tbody th, .page-plan .plan-table thead th:first-child { width: 37%; padding-left: 0.8em; } }
.page-plan .plan-summary { grid-template-columns: repeat(9, minmax(0, 1fr)); }
@media (max-width: 30em) { .page-plan .plan-summary div { padding-inline: 0; } .page-plan .plan-summary span { font-size: 0.56em; letter-spacing: -0.01em; } .page-plan .plan-summary b { font-size: 1.05em; } }
.pb-over { margin-bottom: var(--space-5); }
.page-plan .plan-avail .pill { white-space: nowrap; }
@media (min-width: 60em) {
  .page-plan .jx--steps .jp-screen .screen--card { font-size: 13.5px; }
  .page-plan .jx--side .jp-screen .screen--card, .page-plan .jx--side .jp-screen .pb-req { font-size: 13px; }
}
.page-plan .jp-screen .k-desk { padding: 0 0 2.6rem; border: 0; border-radius: 0; background: none; overflow: visible; }
.page-plan .jp-screen .k-doc { width: min(100%, 34rem); aspect-ratio: auto; gap: 0.7em; padding: 1.6em 2em 1.3em; font-size: 11.5px; }
.page-plan .jp-screen .k-doc th, .page-plan .jp-screen .k-doc td { padding-block: 0.32em; }
.page-plan .jp-screen .k-desk .k-toast { right: 0.4rem; bottom: 0; }
.jp-screen .pb-req { display: grid; justify-items: center; }
.jp-screen .pb-req .k-modal { width: min(100%, 27em); }
.pb-reply { display: grid; gap: var(--space-4); align-items: center; justify-items: center; max-width: 30rem; }
@media (min-width: 30em) { .pb-reply { grid-template-columns: minmax(0, 14.5rem) minmax(0, 1fr); } }
.pb-reply .pb-count { width: 100%; }
.pb-reply .k-web-msg { margin-top: 0.6em; }
.page-plan .pb-reply .phone-screen { aspect-ratio: auto; }
.page-plan .pb-reply .pb-days { gap: 0.25em; }
.page-plan .pb-reply .pb-days li { padding: 0.32em 0.6em; }
.pb-reply .pb-count .k-stat { max-width: none; }
@media (max-width: 35.99em) { .js .page-plan #availability .jx-tabs > li:last-child { grid-column: 1 / -1; } }
.page-plan .jp-screen .k-toolbar .k-search { flex: 1 1 6em; min-width: 0; }
@media (min-width: 60em) {
  html:not(.js) .page-plan .jx--side > .jx-side, html:not(.js) .page-plan .jx--side > .jx-note, html:not(.js) .page-plan .jx--side > .jx-stage { grid-column: 1; grid-row: auto; }
  html:not(.js) .page-plan .jx--side .jx-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); margin-top: var(--space-4); }
  html:not(.js) .page-plan .jx--side .jx-tab { height: 100%; align-items: flex-start; padding: 0.6rem 0.8rem; border-color: var(--line); background: var(--card); }
}
@media (min-width: 56em) { .page-plan .why { grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr); } }
@media (max-width: 30em) { .page-plan .fhero-facts li:last-child { flex-basis: 100%; max-width: none; } }
@media (max-width: 59.99em) {
  .page-plan .jp-screen .k-desk { padding-bottom: 0; }
  .page-plan .jp-screen .k-doc dl { grid-template-columns: auto 1fr; }
  .page-plan .jp-screen .k-desk .k-toast { position: relative; inset: auto; justify-self: end; margin-top: 0.7rem; }
}
.page-plan .pb-req .k-form--2 { grid-template-columns: 1fr 1fr; }
