/* Body prose only: banners, section headings, cards and controls retain original layout. */
html:root body :is(.jd-tab-panel,.jd-news-body,.jd-cloned-detail,.jd-content-card){line-height:1.8!important;}
html:root body :is(.jd-tab-panel,.jd-news-body,.jd-cloned-detail,.jd-content-card) :is(p,li,dt,dd,td,th,blockquote,article,span,strong,em,b,i):not(:where(header *,footer *,nav *,button *,button,a.jd-button,.jd-news-meta,.jd-tab-nav *,.jd-related-products *,.jd-related-news-grid *)){line-height:1.8!important;}
html:root body :is(.jd-tab-panel,.jd-news-body,.jd-cloned-detail,.jd-content-card) p:not(:where(header *,footer *,nav *,button *,button,a.jd-button,.jd-news-meta,.jd-tab-nav *,.jd-related-products *,.jd-related-news-grid *)){margin-block:0!important;}
html:root body :is(.jd-tab-panel,.jd-news-body,.jd-cloned-detail,.jd-content-card) :is(sup,sub){font-size:75%!important;line-height:0!important;position:relative;vertical-align:baseline!important;}
html:root body :is(.jd-tab-panel,.jd-news-body,.jd-cloned-detail,.jd-content-card) sup{top:-.5em;}html:root body :is(.jd-tab-panel,.jd-news-body,.jd-cloned-detail,.jd-content-card) sub{bottom:-.25em;}
html:root body :is(.jd-tab-panel,.jd-news-body,.jd-cloned-detail,.jd-content-card) :is(sup,sub) *{font-size:inherit!important;line-height:0!important;}

/* Align top-level prose and list text across all product detail tabs. */
html:root body .jd-tab-panel{padding:28px!important}
html:root body .jd-tab-panel>:first-child{margin-top:0!important}
html:root body .jd-tab-panel>:last-child{margin-bottom:0!important}
html:root body .jd-tab-panel>ul,html:root body .jd-tab-panel>ol{margin:0!important;padding-left:0!important;list-style-position:inside}
@media(max-width:767px){html:root body .jd-tab-panel{padding:20px!important}}

/* Keep the marker and first paragraph on the same content line. */
html:root body .jd-tab-panel>ul>li>p:first-child,
html:root body .jd-tab-panel>ol>li>p:first-child{display:inline}

/* Rich-text editor parity: compact paragraphs, preserve saved alignment. */
html:root body :is(.jd-about-copy,.jd-about-rich-content){font-size:16px;line-height:1.8!important;}
html:root body :is(.jd-about-copy,.jd-about-rich-content) :is(p,li,div,span,strong,em,b,i){line-height:1.8!important;}
html:root body :is(.jd-about-copy,.jd-about-rich-content) p{margin-top:0!important;margin-bottom:0!important;}

/* Keep paragraph alignment effective inside product lists. */
html:root body .jd-tab-panel ol,html:root body .jd-tab-panel ul{list-style-position:outside!important;padding-left:2em!important;margin:0!important}
html:root body .jd-tab-panel li{padding-left:.25em!important}
html:root body .jd-tab-panel li>p:first-child{display:block!important}

/* Rich-text tables: match editor grid while preserving inline formatting. */
:is(.jd-tab-panel,.jd-news-body,.jd-content-card,.jd-cloned-detail) table {border-collapse:collapse;max-width:100%;}
:is(.jd-tab-panel,.jd-news-body,.jd-content-card,.jd-cloned-detail) table td,
:is(.jd-tab-panel,.jd-news-body,.jd-content-card,.jd-cloned-detail) table th {border:1px solid #ddd;padding:5px 10px;}

/* Product ordered-list markers align with section headings. */
html:root body .jd-tab-panel ol { padding-left:0!important; margin-left:0!important; list-style:none!important; }
html:root body .jd-tab-panel ol > li { position:relative; display:list-item; list-style:none!important; padding-left:2em!important; margin-left:0!important; }
html:root body .jd-tab-panel ol > li::before { content:counter(list-item) "."; position:absolute; left:0; top:0; width:1.6em; text-align:left; font:inherit; color:inherit; }
html:root body .jd-tab-panel ol > li > p { margin-left:0!important; padding-left:0!important; }
