.pc-dialog { box-sizing: border-box; width: min(1120px, calc(100% - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px) - 32px)); max-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 32px); margin: calc(env(safe-area-inset-top, 0px) + 16px) auto calc(env(safe-area-inset-bottom, 0px) + 16px); padding: 0; border: 1px solid #d7d2ce; border-radius: 18px; background: #faf8f7; color: #252b38; box-shadow: 0 24px 80px #11182740; overflow: auto; font: 15px/1.5 var(--rr-body, system-ui, sans-serif); }
.pc-dialog::backdrop { background: #17203399; }
.pc-dialog * { box-sizing: border-box; }
.pc-dialog .pc-head { position: sticky; top: 0; z-index: 2; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 24px; background: #fff; border-bottom: 1px solid #e5e0dd; }
.pc-dialog h2 { margin: 0; color: #1f2a44; font-size: 23px; line-height: 1.25; outline: none; }
.pc-dialog .pc-kicker { margin: 0 0 4px; color: #655a54; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.pc-dialog .pc-body { padding: 20px 24px 28px; }
.pc-dialog .pc-toolbar { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.pc-dialog .pc-tabs { display: flex; gap: 8px; flex-wrap: wrap; }
.pc-dialog .pc-btn { display: inline-flex; min-height: 44px; min-width: 44px; padding: 10px 15px; border: 1px solid #cfc7c2; border-radius: 999px; color: #1f2a44; background: #fff; font: 700 13px/1.3 var(--rr-body, system-ui, sans-serif); align-items: center; justify-content: center; text-align: center; text-decoration: none; cursor: pointer; }
.pc-dialog .pc-btn:hover { border-color: #1f2a44; }
.pc-dialog .pc-btn:focus-visible, .pc-dialog summary:focus-visible { outline: 3px solid #1f2a44; outline-offset: 3px; }
.pc-dialog .pc-btn[aria-pressed="true"] { color: #fff; background: #1f2a44; border-color: #1f2a44; }
.pc-dialog .pc-primary { color: #fff; background: #b8232a; border-color: #b8232a; }
.pc-dialog .pc-year { margin: 18px 0 4px; color: #625750; font-size: 13px; }
.pc-dialog .pc-launch { margin: 0 0 16px; font-size: 19px; color: #1f2a44; }
.pc-dialog .pc-progress-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.pc-dialog .pc-progress { padding: 18px 20px; border: 1px solid #ded8d3; border-radius: 14px; background: #fff; min-width: 0; }
.pc-dialog .pc-progress h3 { margin: 0; font-size: 16px; color: #1f2a44; }
.pc-dialog .pc-amount { margin: 8px 0 10px; font-size: 15px; color: #625750; }
.pc-dialog .pc-amount strong { color: #1f2a44; font-size: 38px; line-height: 1; }
.pc-dialog progress { display: block; width: 100%; height: 9px; border: 0; border-radius: 10px; accent-color: #1c704d; overflow: hidden; }
.pc-dialog progress::-webkit-progress-bar { background: #ece8e4; }
.pc-dialog progress::-webkit-progress-value { background: #1c704d; }
.pc-dialog .pc-progress > p:last-child { margin: 10px 0 0; font-size: 13px; color: #625750; }
.pc-dialog .pc-total { font-weight: 700; margin-bottom: 4px; }
.pc-dialog .pc-muted { color: #625750; font-size: 13px; margin: 4px 0 14px; }
.pc-dialog .pc-terms { padding: 14px 18px; border: 1px solid #ded8d3; border-radius: 12px; background: #fff; }
.pc-dialog .pc-terms p { margin: 0; font-size: 13px; }
.pc-dialog .pc-terms p + p { margin-top: 5px; }
.pc-dialog .pc-notice { padding: 12px 14px; border: 1px solid #d9bc87; border-radius: 10px; background: #fff5e5; color: #745015; font-size: 13px; }
.pc-dialog .pc-section-title { margin: 24px 0 6px; font-size: 18px; color: #1f2a44; }
.pc-dialog .pc-audiences { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; align-items: start; }
.pc-dialog .pc-audience { padding: 18px; border: 1px solid #ded8d3; border-radius: 14px; background: #fff; min-width: 0; overflow-wrap: anywhere; }
.pc-dialog .pc-step { margin: 0 0 10px; color: #a51d25; font-size: 13px; font-weight: 800; }
.pc-dialog .pc-audience h4 { font-size: 16px; line-height: 1.35; color: #1f2a44; margin: 0; }
.pc-dialog .pc-audience > p { font-size: 13px; }
.pc-dialog .pc-audience > a { display: flex; width: 100%; margin-top: 9px; }
.pc-dialog .pc-cohort-count { font-weight: 700; }
.pc-dialog details { margin-top: 12px; }
.pc-dialog summary { min-height: 44px; padding: 12px 0; cursor: pointer; font-weight: 700; font-size: 13px; color: #1f2a44; }
.pc-dialog .pc-sites { padding: 0; margin: 0; list-style: none; }
.pc-dialog .pc-sites li { padding: 9px 0; border-top: 1px solid #e5e0dd; font-size: 13px; }
.pc-dialog .pc-sites span { display: block; color: #625750; margin-top: 2px; }
.pc-dialog .pc-draft { border-top: 1px solid #e5e0dd; }
.pc-dialog .pc-draft p { font-size: 13px; }
.pc-dialog pre { white-space: pre-wrap; overflow-wrap: anywhere; word-break: normal; font: inherit; font-size: 13px; }
.pc-dialog .pc-copy-state { margin-bottom: 0; color: #145c3a; font-weight: 700; }
.pc-dialog .pc-footer { margin: 20px 0 0; font-size: 13px; color: #625750; }
.pc-dialog .pc-share { padding: 16px 18px; border: 1px solid #d6b2b4; border-radius: 14px; margin: 0 0 16px; background: #fff; }
.pc-dialog .pc-share p { margin: 4px 0 0; font-size: 13px; }
.pc-dialog .pc-share-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.pc-dialog .pc-share [role="status"]:empty { display: none; }
.pc-dialog .pc-funnel { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 9px; align-items: start; }
.pc-dialog details.pc-stage { min-width: 0; margin: 0; padding: 10px 12px; background: #fff; border: 1px solid #ded8d3; border-radius: 12px; overflow-wrap: anywhere; }
.pc-dialog .pc-stage summary span, .pc-dialog .pc-stage summary strong { display: block; }
.pc-dialog .pc-stage summary { padding: 6px 0; }
.pc-dialog .pc-stage summary strong { font-size: 18px; margin-top: 8px; }
.pc-dialog .pc-term-tabs, .pc-dialog .pc-channel-tabs, .pc-dialog .pc-followup-links { display: flex; flex-wrap: wrap; gap: 8px; }
.pc-dialog .pc-term-tabs { margin-top: 16px; }
.pc-dialog .pc-followup-links { margin-top: 18px; }
.pc-dialog .pc-message-card { padding: 18px; border: 1px solid #ded8d3; border-radius: 14px; background: #fff; }
.pc-dialog .pc-head h2, .pc-dialog .pc-launch, .pc-dialog .pc-progress h3 { font-family: var(--rr-body, system-ui, sans-serif); }
.pc-dialog .pc-message-card label { display: block; font-size: 13px; font-weight: 700; margin-bottom: 7px; }
.pc-dialog .pc-message-card select { width: 100%; min-height: 44px; border: 1px solid #bcb4ae; border-radius: 9px; padding: 10px 12px; color: #1f2a44; background: #fff; font: 14px/1.4 var(--rr-body, system-ui, sans-serif); }
.pc-dialog .pc-message-tools { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; gap: 8px; margin: 14px 0; }
.pc-dialog .pc-message-card textarea { display: block; box-sizing: border-box; width: 100%; min-height: 190px; max-height: 380px; padding: 13px 14px; border: 1px solid #cfc7c2; border-radius: 9px; background: #faf8f7; color: #252b38; font: 14px/1.5 var(--rr-body, system-ui, sans-serif); resize: vertical; }
.pc-dialog .pc-message-card .pc-muted { margin: 10px 0 0; }
.pc-dialog .pc-subject { margin: 12px 0 14px; font-size: 14px; }
.pc-dialog .pc-subject span { display: block; margin-bottom: 3px; font-size: 11px; color: #625750; text-transform: uppercase; letter-spacing: .04em; }
.pc-dialog .pc-subject strong { color: #1f2a44; }
.pc-dialog .pc-copy-state:empty { display: none; }
.pc-dialog .pc-link-text { overflow-wrap: anywhere; color: #625750; }
.pc-dialog .pc-followup { border-top: 1px solid #ded8d3; margin-top: 12px; }
.pc-dialog .pc-followup p { font-size: 13px; }
@media (max-width: 740px) {
  .pc-dialog { width: calc(100% - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px) - 16px); max-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 16px); margin: calc(env(safe-area-inset-top, 0px) + 8px) auto calc(env(safe-area-inset-bottom, 0px) + 8px); border-radius: 14px; }
  .pc-dialog .pc-head { padding: 14px; gap: 10px; }
  .pc-dialog h2 { font-size: 19px; }
  .pc-dialog .pc-body { padding: 16px 14px max(24px, env(safe-area-inset-bottom)); }
  .pc-dialog .pc-audiences { grid-template-columns: 1fr; }
  .pc-dialog .pc-progress-grid { gap: 9px; }
  .pc-dialog .pc-progress { padding: 14px 11px; }
  .pc-dialog .pc-progress h3 { font-size: 14px; }
  .pc-dialog .pc-amount strong { font-size: 32px; }
  .pc-dialog .pc-toolbar { align-items: flex-start; }
  .pc-dialog .pc-tabs { flex: 1; }
  .pc-dialog .pc-tabs .pc-btn { padding-inline: 11px; }
  .pc-dialog .pc-progress > p:last-child { font-size: 12px; }
  .pc-dialog .pc-funnel { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pc-dialog .pc-message-card { padding: 14px; }
  .pc-dialog .pc-message-card select { font-size: 13px; }
  .pc-dialog .pc-message-card textarea { min-height: 175px; font-size: 13px; }
  .pc-dialog .pc-dot { display: block; height: 0; overflow: hidden; }
}
