/* Keep the estimate in view while the worksheet is being edited. */
html { scroll-padding-bottom: 8rem; }
body:has(.balance-dock:not([hidden])) > .wrap { padding-bottom: calc(7rem + env(safe-area-inset-bottom, 0px)); }
.balance-dock {
  position: fixed;
  z-index: 25;
  inset: auto 0 0;
  background: #171b19;
  border-top: 1px solid #b89a62;
  color: #f5f0e6;
  box-shadow: 0 -6px 24px rgb(25 28 24 / 10%);
  padding: 9px max(14px, env(safe-area-inset-right, 0px)) calc(8px + env(safe-area-inset-bottom, 0px)) max(14px, env(safe-area-inset-left, 0px));
}
.balance-inner {
  max-width: 972px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 2px 24px;
  align-items: center;
}
.balance-inner > div { display: grid; min-width: 0; }
.balance-inner > div:nth-child(2) { padding-left: 22px; border-left: 1px solid #494a40; }
.balance-inner > div > span {
  color: #d4c8ad;
  font: 580 .72rem/1.25 var(--sans);
}
.balance-inner strong { font: 570 clamp(1.16rem, 2.5vw, 1.42rem)/1.22 var(--serif); font-variant-numeric: tabular-nums; }
.balance-inner p { grid-column: 1 / -1; margin: 1px 0 0; color: #d8d5c9; font-size: .75rem; line-height: 1.24; }
.balance-review { min-height: 44px; padding: 3px 13px; color: #f8f4ea; background: transparent; border: 1px solid #b59a61; border-radius: 4px; font-weight: 580; }
.balance-review:hover, .balance-review:focus-visible { color: #171b19; background: #e3d5b6; }
.balance-review [aria-hidden] { margin-left: .25em; color: inherit; }
.member-rail { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 14px; margin-top: 14px; }
.member-rail label, .summary .summary-footnote { font-size: .84rem; }
.member-rail select { min-height: 44px; padding: 5px 9px; border: 1px solid #b4a484; background: #fffefa; color: #202421; border-radius: 4px; }
.summary .summary-footnote { margin-top: 10px; }
body:has(#tourPlayer:not([hidden])) .balance-dock { visibility: hidden; }
@media (max-width: 540px) {
  .balance-inner { gap: 2px 8px; }
  .balance-inner > div:nth-child(2) { padding-left: 8px; }
  .balance-inner > div > span { font-size: .66rem; }
  .balance-inner strong { font-size: 1.12rem; }
  .balance-review { padding-inline: 9px; font-size: .8rem; }
  .balance-inner p { font-size: .7rem; }
}
@media (max-height: 440px) and (max-width: 850px) {
  .balance-inner p { display: none; }
  .balance-dock { padding-top: 3px; padding-bottom: 3px; }
}
@media print {
  .balance-dock { display: none !important; }
  body:has(.balance-dock) > .wrap { padding: 0; }
}
.finance-schedule { display:flex; align-items:center; min-height:45px; padding:7px 10px; border-bottom:1px solid var(--line); font-variant-numeric:tabular-nums; }
.member-rail > div { display:grid; gap:4px; flex:1 1 165px; min-width:0; }
#pcc-member { scroll-margin-top:1rem; margin:0 0 1rem; }
#pcc-member form { display:grid; gap:.6rem; margin:.75rem 0; }
#pcc-member form[hidden] {display:none;}
#pcc-member button {justify-self:start;}
#pcc-member a {color:inherit;}
#evt-single-payment:not(:empty){margin:1rem 0;}
#evt-single-message:empty,#pcc-member-message:empty {display:none;}
