/* YGT Moto Specs — widget styles (loaded only where an APS widget renders).
   Inherits theme tokens via --ygt-* fallbacks; namespaced to .ygt-ms-wd-*. */
.ygt-ms-widget { margin: 0 0 1.75rem; }
.ygt-ms-widget-title,
.ygt-ms-widget .ygt-ms-widget-title {
	font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
	color: var(--ygt-text, #1a1a1a); margin: 0 0 .85rem; padding-bottom: .5rem;
	border-bottom: 2px solid var(--ygt-accent, #e63329);
}

/* product mini-list (New Arrivals / Top Rated) */
.ygt-ms-wd-products { list-style: none; margin: 0; padding: 0; }
.ygt-ms-wd-product { margin: 0; padding: 0; border-bottom: 1px solid var(--ygt-border, #ececec); }
.ygt-ms-wd-product:last-child { border-bottom: 0; }
.ygt-ms-wd-product > a { display: flex; gap: .7rem; align-items: center; padding: .6rem 0; text-decoration: none; color: inherit; }
.ygt-ms-wd-thumbwrap { flex: 0 0 56px; width: 56px; height: 42px; display: flex; align-items: center; justify-content: center; background: var(--ygt-bg-soft, #f6f6f7); border-radius: var(--ygt-radius-sm, 6px); overflow: hidden; }
.ygt-ms-wd-thumb { width: 100%; height: 100%; object-fit: contain; }
.ygt-ms-wd-noimg { color: #c7c7c7; font-size: 1.1rem; }
.ygt-ms-wd-body { min-width: 0; display: flex; flex-direction: column; gap: .15rem; }
.ygt-ms-wd-title { font-size: .9rem; font-weight: 600; line-height: 1.25; color: var(--ygt-text, #1a1a1a); }
.ygt-ms-wd-product > a:hover .ygt-ms-wd-title { color: var(--ygt-accent, #e63329); }
.ygt-ms-wd-price { font-size: .82rem; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--ygt-accent, #e63329); }

/* brand + generic lists */
.ygt-ms-wd-brandlist, .ygt-ms-wd-list { list-style: none; margin: 0; padding: 0; }
.ygt-ms-wd-list li { padding: .4rem 0; border-bottom: 1px solid var(--ygt-border, #ececec); }
.ygt-ms-wd-list li:last-child { border-bottom: 0; }
.ygt-ms-wd-list a { text-decoration: none; color: var(--ygt-text, #1a1a1a); display: flex; justify-content: space-between; gap: .5rem; }
.ygt-ms-wd-list a:hover { color: var(--ygt-accent, #e63329); }
.ygt-ms-wd-brandlist.is-list .ygt-ms-wd-brand { padding: .4rem 0; border-bottom: 1px solid var(--ygt-border, #ececec); }
.ygt-ms-wd-brandlist.is-list .ygt-ms-wd-brand:last-child { border-bottom: 0; }
.ygt-ms-wd-brandlist.is-list a { display: flex; justify-content: space-between; gap: .5rem; align-items: center; text-decoration: none; color: var(--ygt-text, #1a1a1a); }
.ygt-ms-wd-brandlist.is-list a:hover { color: var(--ygt-accent, #e63329); }
.ygt-ms-wd-brandlist.is-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .5rem; }
.ygt-ms-wd-brandlist.is-grid .ygt-ms-wd-brand a { display: flex; flex-direction: column; align-items: center; gap: .35rem; text-align: center; padding: .7rem .4rem; border: 1px solid var(--ygt-border, #ececec); border-radius: var(--ygt-radius-sm, 6px); text-decoration: none; color: var(--ygt-text, #1a1a1a); }
.ygt-ms-wd-brandlist.is-grid .ygt-ms-wd-brand a:hover { border-color: var(--ygt-accent, #e63329); }
.ygt-ms-wd-brandlogo { max-width: 64px; height: 32px; object-fit: contain; }
.ygt-ms-wd-brandname { font-size: .9rem; font-weight: 600; }
.ygt-ms-wd-brandcount { font-size: .75rem; font-weight: 700; color: var(--ygt-muted, #8a8a8a); font-variant-numeric: tabular-nums; }

/* search box */
.ygt-ms-wd-searchform { display: flex; gap: .4rem; }
.ygt-ms-wd-searchform input[type="search"] { flex: 1 1 auto; min-width: 0; padding: .55rem .7rem; border: 1px solid var(--ygt-border, #d8d8d8); border-radius: var(--ygt-radius-sm, 6px); font-size: .9rem; }
.ygt-ms-wd-searchform input[type="search"]:focus { outline: none; border-color: var(--ygt-accent, #e63329); }
.ygt-ms-wd-searchform button { flex: 0 0 auto; padding: .55rem .9rem; border: 0; border-radius: var(--ygt-radius-sm, 6px); background: var(--ygt-accent, #e63329); color: #fff; font-weight: 600; font-size: .85rem; cursor: pointer; }
.ygt-ms-wd-searchform button:hover { filter: brightness(.94); }

/* "View all →" footer link */
.ygt-ms-wd-all { margin: .8rem 0 0; }
.ygt-ms-wd-all a { display: inline-flex; align-items: center; gap: .35rem; font-size: .82rem; font-weight: 700; letter-spacing: .02em; text-transform: uppercase; text-decoration: none; color: var(--ygt-accent, #e63329); }
.ygt-ms-wd-all a:hover { gap: .55rem; }
