/* Tablet + desktop (≥ phone breakpoint): shared pieces of the Taobao PC 2025 structure. */

.abtd-m-only, .abtd-mtabs { display: none !important; }
.abtd { background: #fff; }

.abtd-panel-scroll { display: flex; flex-direction: column; }
.abtd-block-head { display: flex; flex-direction: column; }
/* Module order comes from the settings (--abtd-o); "title above the price" gives the title a slot just before
   the price here only (--abtd-ow), which is the Taobao PC order: title → sold → price/coupon → rows → SKU. */
.abtd-panel-scroll > .abtd-mod { order: var(--abtd-ow, var(--abtd-o, 0)); }
.abtd-block-price { margin: 12px 0 24px; }
.abtd-cb.is-framed { margin: 0 0 16px; }
.abtd-coupon { align-items: center; }
.abtd-coupon-list { flex: 1; }
.abtd-strip { margin-bottom: 8px; padding: 8px 12px; border-radius: 8px; background: linear-gradient(90deg, var(--abtd-soft), color-mix(in srgb, var(--abtd-accent) 18%, #fff)); font-size: 14px; font-weight: 500; line-height: 22px; color: #11192d; }

.abtd-block-rows { display: flex; flex-direction: column; gap: 8px; padding-bottom: 24px; border-bottom: 1px solid var(--abtd-split); }
.abtd-row-label { display: none; }
/* Service rows (measured): 22px line, icon then 12px, one line with an ellipsis, a small down arrow right after the text. */
.abtd-block-rows .abtd-row { gap: 12px; min-height: 22px; }
.abtd-block-rows .abtd-row-value { flex: 0 1 auto; flex-wrap: nowrap; overflow: hidden; white-space: nowrap; }
.abtd-block-rows .abtd-row-value > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.abtd-block-rows .abtd-row-value > span:first-of-type { flex-shrink: 0; }
.abtd-block-rows .abtd-row > .abtd-icon-chevron { flex: none; margin-left: -8px; transform: rotate(90deg); }
.abtd-row { cursor: pointer; }
.abtd-row.is-static { cursor: default; }
.abtd-row:hover .abtd-row-value { color: var(--abtd-text); }
.abtd-form { padding: 24px 0 4px; }

/* Detail tabs (TitleTabs): sticky at the top of the left column, 16px items 32px apart, active in the accent. */
.abtd-ptabs { position: sticky; top: var(--abtd-top); z-index: 30; padding: 16px 0 12px; background: #fff; }
.abtd-ptabs ul { display: flex; align-items: center; height: 48px; overflow-x: auto; scrollbar-width: none; }
.abtd-ptabs li { flex: none; margin-right: 32px; }
.abtd-ptabs a { position: relative; display: block; font-size: 16px; line-height: 24px; color: var(--abtd-text); text-decoration: none; }
.abtd-ptabs a:hover { color: var(--abtd-price); }
.abtd-ptabs a[aria-current="true"] { color: var(--abtd-price); font-weight: 500; }
.abtd-ptabs a[aria-current="true"]::after { content: ""; position: absolute; left: 0; right: 0; bottom: -12px; height: 2px; background: var(--abtd-accent); }
/* TitleTabsSticky: padding collapses once stuck. */
.abtd-ptabs.is-stuck { padding: 0; }
.abtd-sec { scroll-margin-top: calc(var(--abtd-top) + 48px); }
.abtd-details > .abtd-sec:first-of-type { margin-top: 16px; }
.abtd-sec + .abtd-sec { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--abtd-split); }
.abtd-recommend { margin-bottom: 24px; }
.abtd-recommend .abtd-sec-head { margin-bottom: 20px; }

/* Side drawers slide over a fading scrim (right column → from the right; reviews, a left-column module, open
   from the left like the Taobao PC review drawer). Shorter than the phone sheet: the travel is shorter too. */
.abtd-sheet { --abtd-in-now: var(--abtd-in-w, 640ms); --abtd-out-now: var(--abtd-out-w, 220ms); --abtd-ease-in: var(--abtd-spring-w, cubic-bezier(.25, .8, .25, 1)); justify-content: flex-end; }
.abtd-sheet-box { width: min(480px, 100vw); height: 100%; box-shadow: -12px 0 32px rgba(0, 0, 0, .08); transform: translate3d(100%, 0, 0); }
.abtd-sheet.is-drawer { justify-content: flex-start; }
.abtd-sheet.is-drawer .abtd-sheet-box { width: min(600px, 100vw); box-shadow: 12px 0 32px rgba(0, 0, 0, .08); transform: translate3d(-100%, 0, 0); }
.abtd-sheet.is-open .abtd-sheet-box { transform: none; }
/* A drawer shadow only while open, so the closed panel off screen casts nothing on the page edge. */
.abtd-sheet:not(.is-open) .abtd-sheet-box { box-shadow: none; }
.abtd-sheet-head { border-bottom: 1px solid var(--abtd-split); margin-bottom: 8px; }


/* Joined pair only when a desktop-visible second button exists. */
.abtd .abtd-foot-btns:has(> .is-buy:not(.abtd-m-only)) > .abtd-btn.is-cart:not(#abtd-x) { border-radius: 12px 0 0 12px !important; }
.abtd .abtd-foot-btns > .abtd-btn.is-buy.abtd-w-only:not(#abtd-x) { border-radius: 0 12px 12px 0 !important; }
/* Tablet/desktop fold: the first params_limit tiles (section and main-image Specs view); "View all" is always shown. */
:is(.abtd-params-tiles, .abtd-stage-params) > .is-over-w { display: none; }

