/* Merged-paragraph information bars. Full required prose appears once;
 * source originals remain in ui-information.js audit maps and source backups. */
.xb-information-panel { line-height: 1.7; overflow-wrap: anywhere; color: #334155; }
.xb-info-verbatim { white-space: normal; }
.xb-info-sentences, .xb-info-sentence { display: block; }
.xb-info-sentence + .xb-info-sentence { margin-top: .25em; }
.xb-product-summary { min-width: 0; }
.xb-product-summary :is(small, .pack-text) { overflow-wrap: anywhere; line-height: 1.6; }
.xb-product-summary :is(strong, b.pack-price) { line-height: 1.45; }

/* One bar at the list entrance, not an intro card plus a supplier card. */
.xb-compact-info { margin: 10px 0 0; padding: 9px 0 0; border-top: 1px solid #e2e8f0; max-width: 1180px; min-width: 0; background: transparent; color: #334155; }
.xb-compact-heading { margin: 0 0 3px; }
.xb-compact-heading h2 { margin: 0; color: #0f172a; font-size: 14px; line-height: 1.6; font-weight: 700; }
.xb-compact-body { min-width: 0; }
.xb-service-guide { margin: 0; padding: 0; min-width: 0; background: transparent; color: #334155; }
.xb-guide-body { min-width: 0; }
.xb-guide-source { display: block; margin: 0 !important; max-width: none !important; font-size: 14px !important; line-height: 1.75 !important; }
.xb-info-topic, .xb-info-row { display: block; margin: 0; padding: 0; min-width: 0; }
.xb-info-topic + .xb-info-topic, .xb-info-row + .xb-info-row { margin-top: 5px; }
.xb-prose-label { display: inline; color: #0f172a; font-weight: 650; font-size: inherit; }
.xb-topic-original { display: inline; white-space: normal; overflow-wrap: anywhere; color: #334155; }
.xb-info-row-body { display: block; min-width: 0; color: #334155; }
.xb-info-row-body p { margin: 0 !important; line-height: 1.75; font-size: 14px; white-space: normal; }
.xb-prose-paragraph .xb-topic-original { white-space: normal; }
.xb-compact-info :is(.provider-note, .relay-note, .vps-note, .broadband-note, .airport-note) { width: auto; max-width: none; margin: 3px 0 0; padding: 7px 0 0; border: 0; border-top: 1px solid #e2e8f0; border-radius: 0; background: transparent; color: #334155; }
.xb-supplier-note > b { display: inline; margin: 0; color: #0f172a; font-size: 14px; line-height: 1.75; font-weight: 650; }
.xb-supplier-note > b::after { content: '：'; }
.xb-supplier-note > p.xb-supplier-source { display: inline; margin: 0 !important; font-size: 14px; line-height: 1.75; white-space: normal; color: #334155; }
.xb-compact-info :is(.xb-info-sentences, .xb-info-sentence), .xb-supplier-source :is(.xb-info-sentences, .xb-info-sentence) { display: inline; margin: 0; }
.xb-supplier-note[hidden] { display: none; }

/* A/B API remains compatible; this request intentionally unifies prose flow. */
[data-xb-guide-layout="B"] .xb-guide-source, [data-xb-guide-layout="B"] .xb-info-topic { display: block; }
.xb-provider-prose { display: block; margin: 0; min-width: 0; }
.xb-provider-prose p { margin: 0; white-space: normal; }
.xb-resip-compact .xb-info-row { padding: 0; }
.xb-resip-compact + p { margin: 0; }
.xb-info-required { line-height: 1.7; color: #334155; }

/* Only truly long auxiliary remainder uses a disclosure. The leading sentence
 * is not repeated inside. Required conditions never rely on this control. */
.xb-info-disclosure { margin: 0; padding: 0; border: 0; background: transparent; }
.xb-info-disclosure > summary { cursor: pointer; padding: 10px 0; color: #2563eb; font-size: 13px; line-height: 1.85; font-weight: 600; }
.xb-info-disclosure > summary:focus-visible { outline: 2px solid #2563eb; outline-offset: 3px; }
.xb-info-disclosure > .xb-info-content { padding: 0 0 6px; line-height: 1.7; white-space: normal; }

.xb-purchase-core { margin: 14px 0 18px; padding: 0 0 12px; border-bottom: 1px solid #e2e8f0; }
.xb-purchase-core > .subhead { margin-top: 0; }
.xb-required-section { margin: 12px 0; padding: 9px 0; border-top: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0; }
.xb-info-section-heading { margin: 0 0 5px; font-size: 15px; color: #0f172a; }
.xb-category-prerequisite { margin: 0 0 6px !important; max-width: none !important; }
.xb-required-section :is(.server-description, .account-detail-note, .relay-detail-note) { margin: 0; padding: 0; border: 0; background: transparent; line-height: 1.7; }
.xb-required-section > h2:not(.xb-info-section-heading) { font-size: 13px; margin: 7px 0 3px; }
.xb-required-section .xb-service-guide + .xb-service-guide,
.xb-runtime-description { margin: 5px 0 0; padding: 5px 0 0; border-top: 1px solid #e2e8f0; }
.xb-runtime-description:empty { display: none; }
.xb-required-section .xb-information-panel p { margin: 0; line-height: 1.7; }
.xb-tutorial-step-heading { font-size: 17px !important; font-weight: 750; color: #0f172a !important; }
.tutorial-step p.xb-information-panel { border: 0; background: none; padding: 0; margin: 10px 0; }
.terms-page p.xb-info-verbatim { line-height: 1.9; }
:is(#purchaseContent, #renewalContent) dl { row-gap: 11px; }
#purchaseDialog { max-height: 92vh; max-height: min(92dvh, 920px); overflow-y: auto; }
.xb-confirmation-rules { font-size: 14px; }
.xb-confirmation-rules > .xb-info-section-heading { font-size: 15px; }
.renewal-reminder p + p { margin-top: 8px; }
.message-card > p, .inventory-message-note > p, .inventory-wait-card dd { white-space: pre-line; }
.recharge-compliance p.xb-info-verbatim { padding: 0; border: 0; background: none; }
@media (max-width: 1023px) {
  .xb-info-topic, .xb-info-row { display: block; }
}
@media (max-width: 759px) {
  .xb-compact-info { margin-top: 9px; padding-top: 8px; }
  .xb-info-topic, .xb-info-row { padding: 0; }
  .xb-guide-source, .xb-info-row-body p, .xb-supplier-note > p.xb-supplier-source { font-size: 13px !important; }
  .xb-purchase-core { margin: 12px 0 15px; }
  .xb-required-section { margin-top: 12px; padding-top: 9px; }
  .xb-info-section-heading { font-size: 14px; }
  .xb-tutorial-step-heading { font-size: 16px !important; }
}
