.client-forward-dialog {
  width: min(920px, calc(100vw - 40px)); max-width: none; max-height: min(760px, calc(100dvh - 40px)); padding: 0; box-sizing: border-box;
  border: 1px solid #b9cbd8; border-radius: 7px; background: #fff; color: #243c50;
  box-shadow: 0 22px 70px #142c4540; font: inherit; letter-spacing: 0;
}
.client-forward-dialog[open] { display: flex; flex-direction: column; }
.client-forward-dialog::backdrop { background: #1d344758; backdrop-filter: blur(3px); }
.client-forward-dialog [hidden] { display: none !important; }
.client-forward-dialog > header { display: flex; flex-shrink: 0; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 24px; background: linear-gradient(100deg,#f1f7fc,#fcfdff); border-bottom: 1px solid #c5d4df; border-top: 2px solid #3979aa; }
.client-forward-heading { display: flex; align-items: center; gap: 16px; min-width: 0; }
.client-forward-heading > div { min-width: 0; }
.client-forward-heading-icon { display: grid; place-items: center; width: 42px; height: 42px; flex-shrink: 0; border-radius: 6px; background: #deedf8; }
.client-forward-icon { display: block; width: 22px; height: 22px; flex-shrink: 0; }
.client-forward-heading-icon .client-forward-icon { width: 25px; height: 25px; }
.client-forward-dialog h2 { font-size: 22px; font-weight: 500; line-height: 1.5; margin: 0; overflow-wrap: anywhere; }
.client-forward-dialog header p { font-size: 14px; color: #647b8c; margin: 5px 0 0; overflow-wrap: anywhere; }
.client-forward-dialog button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; max-width: 100%; min-height: 44px; box-sizing: border-box; font: inherit; font-size: 15px; font-weight: 400; line-height: 1.5; letter-spacing: 0; color: #294e70; border: 1px solid #afc3d5; border-radius: 6px; padding: 10px 18px; background: linear-gradient(#fff,#eaf1f6); box-shadow: inset 0 1px 0 #fff,0 2px 0 #b5c5d3; cursor: pointer; transition: background .15s,box-shadow .15s,transform .15s; }
.client-forward-dialog button:hover:not(:disabled) { background: #e8f1f8; box-shadow: 0 3px 8px #294e7026; transform: translateY(-1px); }
.client-forward-dialog button:focus-visible, .client-forward-dialog input:focus-visible { outline: 2px solid #3979b5; outline-offset: 3px; }
.client-forward-dialog button:disabled { opacity: .5; cursor: default; }
.client-forward-dialog header button { width: 44px; height: 44px; padding: 0; flex-shrink: 0; }
.client-forward-body { flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; min-height: 0; padding: 0 24px; font-size: 15px; line-height: 1.6; }
.client-forward-section { display: grid; grid-template-columns: 150px minmax(0,1fr); gap: 10px 18px; padding: 18px 0; border-bottom: 1px solid #d8e4ed; }
.client-forward-section:last-of-type { border-bottom: 0; }
.client-forward-section h3 { font-size: 16px; font-weight: 400; line-height: 1.5; margin: 10px 0 0; }
.client-forward-section h3 small { color: #748797; font-size: 12px; font-weight: 400; margin-left: 8px; }
.client-forward-section h3 em { display: inline-block; font-size: 11px; font-style: normal; font-weight: 400; color: #8c5c32; margin-left: 6px; }
.client-forward-section-content { min-width: 0; }
.client-forward-choices { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; min-width: 0; }
.client-forward-choice { display: flex; align-items: center; justify-content: center; gap: 10px; min-width: 0; min-height: 46px; padding: 8px 14px; border: 1px solid #bdcfdf; border-radius: 6px; background: linear-gradient(#fff,#fbfcfe); box-shadow: 0 1px 2px #25445d0c; cursor: pointer; font-size: 16px; font-weight: 400; line-height: 1.5; box-sizing: border-box; transition: background .15s,border-color .15s; }
.client-forward-choice > span { min-width: 0; overflow-wrap: anywhere; }
.client-forward-choice:hover:not(.is-disabled) { border-color: #7ca3c7; background: #f3f8fd; }
.client-forward-dialog .client-forward-choice:has(input:checked) { background: #eaf3fc; border-color: #4f90cd; color: #1a4e7c; box-shadow: inset 0 0 0 1px #9bbdde50; }
.client-forward-choice.is-disabled { color: #879099; background: #edf0f2; border-color: #d3d9df; box-shadow: none; cursor: not-allowed; }
.client-forward-choice.is-disabled input { cursor: not-allowed; }
.client-forward-choice input { width: 20px; height: 20px; margin: 0; accent-color: #326797; flex-shrink: 0; }
.client-forward-modes { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.client-forward-modes .client-forward-choice { min-height: 48px; padding-inline: 12px; }
.client-forward-choice.is-disabled .client-forward-icon { opacity: .45; }
.client-forward-recipients { list-style: none; margin: 0 0 12px; padding: 0; }
.client-forward-recipients li { display: flex; align-items: center; gap: 12px; min-height: 38px; padding: 7px 12px; margin-bottom: 7px; border: 1px solid #d9e3ec; border-radius: 5px; }
.client-forward-recipients li > span { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.client-forward-recipients small { background: #eef3f7; padding: 1px 7px; color: #6d8191; border-radius: 3px; font-size: 11px; white-space: nowrap; }
.client-forward-recipients button { padding: 0; width: 32px; min-height: 32px; height: 32px; box-shadow: none; flex-shrink: 0; font-size: 18px; }
.client-forward-add { display: flex; align-items: flex-start; gap: 12px; flex-wrap: wrap; }
.client-forward-add input { flex: 1; min-width: 0; width: 0; min-height: 46px; box-sizing: border-box; border: 1px solid #bdcfdf; border-radius: 5px; padding: 9px 12px; font: inherit; font-size: 16px; color: #243c50; background: #fff; box-shadow: inset 0 1px 3px #243c5008; }
.client-forward-add button { min-height: 46px; flex-shrink: 0; }
.client-forward-add input::placeholder { color: #8295a5; }
.client-forward-add .field-feedback-message { flex-basis: 100%; order: 3; }
.client-forward-cc { display: flex; gap: 14px; margin: 12px 0 0; font-size: 12px; color: #657b8d; overflow-wrap: anywhere; }
.client-forward-files { margin-top: 12px; }
.client-forward-file { display: flex; align-items: center; gap: 16px; padding: 14px 18px; border: 1px solid #d3dfe9; border-radius: 5px; margin: 7px 0; cursor: pointer; }
.client-forward-file.is-readonly { cursor: default; background: #f6f9fc; }
.client-forward-file .client-forward-icon { width: 30px; height: 36px; filter: none; }
.client-forward-file input { width: 16px; height: 16px; accent-color: #326797; flex-shrink: 0; }
.client-forward-file-name { flex: 1; min-width: 0; overflow-wrap: anywhere; font-size: 15px; }
.client-forward-file-name small { display: block; color: #758999; font-size: 12px; margin-top: 3px; }
.client-forward-file-size { color: #758999; font-size: 12px; flex-shrink: 0; }
.client-forward-note { font-size: 12px; color: #738797; margin: 8px 0; }
.client-forward-notice-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 5px 16px; font-size: 11px; color: #6b8091; }
.client-forward-notice-heading > span { color: #355d7d; font-weight: 600; }
.client-forward-notice-title { margin: 8px 0; color: #263f54; font-size: 14px; font-weight: 600; overflow-wrap: anywhere; }
.client-forward-notice-excerpt { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; margin: 8px 0 12px; color: #697e8d; font-size: 12px; line-height: 1.75; overflow-wrap: anywhere; }
.client-forward-notice-preview { grid-column: 1 / -1; min-width: 0; border: 1px solid #ccdbe6; border-radius: 5px; overflow: hidden; background: #f4f7fb; }
.client-forward-notice-preview iframe { display: block; width: 100%; height: min(56dvh, 560px); min-height: 260px; border: 0; background: #fff; }
.client-forward-dialog > footer { display: flex; flex-shrink: 0; justify-content: flex-end; flex-wrap: wrap; gap: 12px; padding: 14px 24px 16px; border-top: 1px solid #d4e0e9; background: #f5f9fc; }
.client-forward-dialog > footer button { min-height: 48px; padding-inline: 20px; font-size: 16px; }
.client-forward-dialog [data-forward-next]::after { content: ""; display: block; width: 18px; height: 18px; flex-shrink: 0; background: url("forwarding-icons/chevron-right.svg") center / contain no-repeat; }
.client-forward-dialog .client-forward-primary { border-color: #d3b77d; border-top-color: #ead7ad; border-bottom-color: #ae8b4c; background: linear-gradient(#fffefa,#faf2de 52%,#efddb6); color: #60471d; box-shadow: inset 0 1px 0 #fff,0 2px 0 #c3a263,0 6px 12px #664c1f1c; }
.client-forward-dialog .client-forward-primary:hover:not(:disabled) { border-color: #c5a566; background: linear-gradient(#fff,#fcf6e9 50%,#f2e4c6); box-shadow: inset 0 1px 0 #fff,0 3px 0 #b89555,0 8px 16px #664c1f26; }
.client-forward-error { margin: 14px 0; padding: 12px; color: #9c3838; background: #fff6f4; border: 1px solid #e9bfb6; border-radius: 5px; font-size: 13px; }
.client-forward-review { padding: 20px 0; }
.client-forward-review h3 { font-size: 17px; margin: 0 0 18px; }
.client-forward-review dl { display: grid; grid-template-columns: 120px minmax(0,1fr); margin: 0; }
.client-forward-review :is(dt,dd) { margin: 0; padding: 12px 10px; border-bottom: 1px solid #e3ebf1; overflow-wrap: anywhere; }
.client-forward-review dt { color: #6d8192; font-size: 13px; }
.client-forward-review > p { color: #60788c; font-size: 13px; }
.client-forward-result { padding: 36px 0; text-align: center; }
.client-forward-result > span { display: inline-grid; place-items: center; width: 42px; height: 42px; color: #2c7967; border: 1px solid #bcded3; border-radius: 50%; background: #f0f8f5; font-size: 24px; }
.client-forward-result h3 { font-size: 18px; }
.client-forward-result p { color: #708391; font-size: 13px; }
.client-forward-waiting-dialog { width: min(560px, calc(100vw - 40px)); }
.client-forward-waiting-dialog > header { padding: 20px 24px; }
.client-forward-waiting-dialog .client-forward-heading { gap: 14px; }
.client-forward-waiting-dialog h2 { font-size: 19px; }
.client-forward-waiting-dialog .client-forward-body { padding: 8px 24px 18px; line-height: 1.85; overflow-wrap: anywhere; }
.client-forward-waiting-lead { color: #243c50; font-weight: 500; margin: 14px 0 10px; }
.client-forward-waiting-dialog > footer { padding: 14px 24px 18px; }
.client-forward-waiting-dialog > footer button { min-height: 44px; font-size: 15px; }
@media (max-width: 860px) {
  .client-forward-section { grid-template-columns: minmax(0,1fr); gap: 10px; padding: 16px 0; }
  .client-forward-section h3 { margin: 0; }
}
@media (max-width: 600px) {
  .client-forward-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 24px); }
  .client-forward-dialog > header, .client-forward-dialog > footer { padding: 14px 16px; gap: 10px; }
  .client-forward-heading { gap: 12px; }
  .client-forward-heading-icon { width: 38px; height: 38px; border-radius: 6px; }
  .client-forward-heading-icon .client-forward-icon { width: 24px; height: 24px; }
  .client-forward-dialog h2 { font-size: 17px; }
  .client-forward-dialog header p { font-size: 12px; }
  .client-forward-dialog header button { width: 36px; height: 36px; min-height: 36px; }
  .client-forward-body { padding: 0 16px; }
  .client-forward-section { padding: 14px 0; }
  .client-forward-section h3 { font-size: 15px; }
  .client-forward-choice { padding: 10px 12px; font-size: 14px; min-height: 46px; gap: 8px; }
  .client-forward-modes { grid-template-columns: minmax(0,1fr); }
  .client-forward-modes .client-forward-choice { min-height: 48px; }
  .client-forward-file { display: grid; grid-template-columns: 30px minmax(0,1fr); gap: 4px 12px; padding: 12px; }
  .client-forward-file .client-forward-icon { grid-row: 1 / 3; }
  .client-forward-file-size { grid-column: 2; }
  .client-forward-file-name { font-size: 14px; }
  .client-forward-dialog > footer { flex-wrap: nowrap; }
  .client-forward-dialog > footer button { min-width: 0; min-height: 48px; padding: 10px 12px; font-size: 14px; }
  .client-forward-dialog > footer [data-forward-next] { flex: 1; }
  .client-forward-review dl { grid-template-columns: 84px minmax(0,1fr); }
}
@media (max-width: 360px) {
  .client-forward-add input { flex-basis: 100%; width: 100%; }
  .client-forward-add button { margin-left: auto; min-height: 44px; }
  [data-forward-bill-types].client-forward-choices { display: grid; grid-template-columns: minmax(0,1fr); }
}
@media (prefers-reduced-motion: reduce) { .client-forward-dialog button { transition: none; } .client-forward-dialog button:hover:not(:disabled) { transform: none; } }
/* Pending requests share the existing forwarding form, including its mobile flow. */
.client-forward-reservation{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid #d9e3ed;flex-wrap:wrap}
.client-forward-reservation>div{flex:1 1 180px;min-width:0;display:grid;gap:4px}
.client-forward-reservation strong,.client-forward-reservation span,.client-forward-reservation small{overflow-wrap:anywhere}
.client-forward-reservation span{color:#52677e;font-size:13px}
.client-forward-reservation small{color:#66788c;font-size:12px}
[data-forward-reservations] .client-forward-reservation:last-child{border-bottom:0;padding-bottom:0}
[data-forward-notice-summary]{margin-top:12px}
@media(max-width:580px){.client-forward-reservation>div{flex:1 1 100%}.client-forward-reservation>button{flex:1 1 0;min-width:0;white-space:normal}}
.client-forward-history h3{margin-top:10px}
.client-forward-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 18px;padding:10px 0;border-bottom:1px solid #e0e8ed}
.client-forward-history-row:last-of-type{border-bottom:0;padding-bottom:2px}
.client-forward-history-main{min-width:0}
.client-forward-history-title{display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px;min-width:0}
.client-forward-history-title strong{font-size:14px;line-height:1.65;font-weight:600;overflow-wrap:anywhere}
.client-forward-sent-badge{display:inline-flex;align-items:center;border:1px solid #bad8cd;border-radius:20px;padding:2px 9px;background:#edf7f2;color:#28745b;font-size:12px;font-weight:500;white-space:nowrap;line-height:1.6}
.client-forward-history-meta{color:#708292;font-size:12px;margin-top:3px}
.client-forward-history-row time{color:#677e8f;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.client-forward-dialog .client-forward-history-toggle{min-height:36px;padding:5px 0;margin-top:7px;border:0;background:none;box-shadow:none;color:#3e6686;font-size:12px}
.client-forward-dialog .client-forward-history-toggle:hover:not(:disabled){background:none;box-shadow:none;transform:none;color:#214969;text-decoration:underline}
@media(max-width:600px){.client-forward-history h3{margin-top:0}.client-forward-history-row{grid-template-columns:minmax(0,1fr);gap:4px}.client-forward-history-row time{font-size:11px}.client-forward-dialog .client-forward-history-toggle{min-height:44px}}
@media(max-width:360px){.client-forward-reservation>button:first-of-type{flex:0 0 72px}.client-forward-reservation>button:last-of-type{flex:1 1 0}}
