.comparison-reading { margin: 20px 0; padding: 4px 0 4px 18px; border-left: 3px solid #0f8b7f; }
.comparison-reading h3 { font-size: 18px; margin: 8px 0; }
.comparison-reading p { max-width: 85ch; overflow-wrap: anywhere; }
.shipping-estimate { margin: 24px 0; padding: 18px 0; border-top: 1px solid #d9dfe3; border-bottom: 1px solid #d9dfe3; }
.shipping-estimate summary { cursor: pointer; font-weight: 700; }
.shipping-estimate summary svg { width: 20px; height: 20px; vertical-align: middle; }
.shipping-line { display: grid; grid-template-columns: minmax(0, 2fr) auto 120px minmax(150px, 1fr); align-items: center; gap: 12px; padding: 14px 0; border-top: 1px solid #e6e9ec; }
.shipping-line strong, .shipping-line output { overflow-wrap: anywhere; }
.shipping-line input { width: 100%; min-width: 0; min-height: 44px; padding: 8px; border: 1px solid #89969f; border-radius: 4px; background: #fff; color: #18232b; }
.shipping-line input:focus-visible, .shipping-estimate summary:focus-visible { outline: 2px solid #1971c2; outline-offset: 3px; }
.shipping-line output { font-weight: 700; }
@media (max-width: 700px) { .shipping-line { grid-template-columns: minmax(0, 1fr) 120px; } .shipping-line strong, .shipping-line output { grid-column: 1 / -1; } }
