.portal-preferred-partners { position: relative; }
.portal-partners-heading { padding: 15px 92px 14px 18px; border-bottom: 1px solid #e3eaf4; }
.portal-partners-heading h2 { margin: 0; color: var(--main-now-color, #1878f3); font-size: 16px; font-weight: 650; line-height: 22px; }
.portal-partners-heading h2 > span { color: #d39a33; margin-right: 5px; }
.portal-partners-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; padding: 14px; }
.portal-partner-item { position: relative; min-width: 0; }
.portal-partners-grid .portal-partner-link { display: flex; align-items: center; gap: 12px; min-height: 72px; padding: 12px; border: 1px solid #e5eaf2; border-radius: 10px; color: #344054; background: #fff; box-sizing: border-box; transition: border-color .15s, background .15s; }
.portal-partner-link img { flex: 0 0 40px; width: 40px; height: 40px; object-fit: contain; }
.portal-partner-link > span { min-width: 0; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; overflow-wrap: anywhere; font-size: 14px; font-weight: 600; line-height: 21px; }
.portal-partners-grid .portal-partner-link:hover { border-color: var(--main-now-color, #1878f3); background: #f6f9ff; }
.portal-partners-grid .portal-partner-link:focus-visible { outline: 2px solid var(--main-now-color, #1878f3); outline-offset: 2px; }
main .content-right #hot-recommend > #hot_new { overflow: visible; }
.portal-hot-sites-heading { position: relative; }
.portal-hot-sites-label { border-bottom: 1px dotted currentColor; padding-bottom: 3px; cursor: help; }
.portal-hot-sites-tooltip { position: absolute; top: calc(100% + 13px); left: 0; z-index: 100; box-sizing: border-box; width: 290px; max-width: calc(100vw - 48px); padding: 11px 14px; border: 1px solid #dbe4ef; border-radius: 10px; background: #fff; color: #475467; box-shadow: 0 8px 28px #1c355c26; font-size: 13px; font-weight: 400; line-height: 1.75; white-space: normal; pointer-events: none; visibility: hidden; opacity: 0; }
.portal-hot-sites-heading:hover .portal-hot-sites-tooltip, .portal-hot-sites-heading:focus-within .portal-hot-sites-tooltip { visibility: visible; opacity: 1; }
.portal-hot-sites-label:focus-visible { outline: 2px solid var(--main-now-color, #1878f3); outline-offset: 3px; border-radius: 2px; }
html.portal-dark .portal-partners-heading { border-color: #2c3e58; }
html.portal-dark .portal-partners-grid .portal-partner-link { background: #15243b; border-color: #30425c; color: #d9e5f5; }
html.portal-dark .portal-partners-grid .portal-partner-link:hover { background: #1b2e49; border-color: #6e9edb; }
html.portal-dark .portal-hot-sites-tooltip { color: #d0dff4; background: #17273e; border-color: #3b4e6b; }
@media (max-width: 1200px) { .portal-partners-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 760px) { .portal-partners-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 540px) {
    .portal-partners-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 10px; }
    .portal-partners-grid .portal-partner-link { padding: 10px; gap: 8px; }
    .portal-partner-link > span { font-size: 13px; }
}
