/* Loaded after the ranking's own inline <style>: keeps Poly's header/footer intact and the ranking readable. */
.site-header, .site-footer { font-family: Montserrat, system-ui, sans-serif; font-size: 16px; line-height: 1.6; text-align: left; letter-spacing: normal; }
.site-header { position: sticky; top: 0; z-index: 1000; }
.site-header .brand, .site-footer .brand { font-size: 1.5rem; font-weight: 700; }
.site-footer .brand { font-size: 1.3rem; font-weight: 900; }
.site-footer { text-align: center; margin-top: 40px; }
.site-header nav > a, .site-footer nav a { font-weight: 400; }
.site-header nav { margin: 0; }
.langsel ul { margin: 0; }
.langsel li { list-style: none; }
/* ranking page chrome that used to sit under the old menu */
.theme-controls { top: 76px !important; }
.rk-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin: 30px auto 0; padding: 0 16px; }
.rk-actions .action-btn { text-decoration: none; }
@media (max-width: 768px) {
  html, body { max-width: 100%; overflow-x: hidden; }
  .site-header { position: relative; }
  .theme-controls { top: 8px !important; }
}

/* the ranking's body has 20px padding (10px on phones): let Poly's header and footer run edge to edge */
.site-header { margin: -20px -20px 20px; }
.site-footer { margin: 40px -20px -20px; }
@media (max-width: 768px) { .site-header { margin: -10px -10px 10px; } .site-footer { margin: 30px -10px -10px; } }
/* insights of an AI, embedded under its ranking */
.rk-insights { width: 100%; margin-top: 40px; }
.rk-insights iframe { display: block; width: 100%; height: 900px; border: 0; background: transparent; }
/* Logo in the same blue as the ranking's title (owner 14.10.2026): text and the orbit mark, header and footer */
.site-header .brand b, .site-footer .brand b { background: linear-gradient(-90deg, #4facfe, #00f2fe); -webkit-background-clip: text; background-clip: text; color: transparent; font-weight: inherit; }
/* "Poly | TOP" like Trends' "Poly | Trends" (owner 14.10.2026) */
.site-header .brand { display: flex; align-items: center; }
.site-header .brand small { margin-left: .45rem; padding-left: .65rem; border-left: 1px solid rgb(255 255 255 / .22); font-size: .8rem; font-weight: 600; letter-spacing: .02em; line-height: 1.1; color: #b8b8b8; }
body.light-theme .site-header .brand small { color: #555; border-left-color: rgb(0 0 0 / .2); }
#logo-grad stop:nth-child(1) { stop-color: #4facfe; }
#logo-grad stop:nth-child(2) { stop-color: #2bd0fe; }
#logo-grad stop:nth-child(3) { stop-color: #00f2fe; }
body.light-theme .site-header .brand b, body.light-theme .site-footer .brand b { background: linear-gradient(-90deg, #1e5bb8, #2d7ff9); -webkit-background-clip: text; background-clip: text; }
body.light-theme #logo-grad stop:nth-child(1) { stop-color: #1e5bb8; }
body.light-theme #logo-grad stop:nth-child(2) { stop-color: #2566d8; }
body.light-theme #logo-grad stop:nth-child(3) { stop-color: #2d7ff9; }
