@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/assets/fonts/manrope-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/assets/fonts/manrope-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/assets/fonts/manrope-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/assets/fonts/manrope-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --blue: #0967f2;
  --blue-dark: #0757d4;
  --text: #121826;
  --muted: #6d778a;
  --line: #dfe4ec;
  --soft: #f5f7fa;
  --green: #0aaa55;
  --shadow: 0 14px 42px rgba(27, 47, 77, .06);
  --radius: 14px;
  --container: 1344px;
  --font-sans: "Manrope", Arial, sans-serif;
}

* { box-sizing: border-box; }

html,
body,
body *,
body *::before,
body *::after {
  font-family: var(--font-sans) !important;
}

html {
  min-height: 100%;
  height: auto;
  overflow-x: hidden;
  overflow-y: auto;
  scroll-behavior: auto;
}

body {
  margin: 0;
  color: var(--text);
  background: #fff;
  font-family: var(--font-sans);
  font-size: 15px;
  line-height: 1.48;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
  height: auto;
  overflow-x: hidden;
  overflow-y: visible;
}

a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
svg { display: block; }

.container {
  width: min(calc(100% - 64px), var(--container));
  margin-inline: auto;
}

.site-header {
  position: relative;
  z-index: 20;
  height: 76px;
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.98);
  box-shadow: 0 1px 0 rgba(19, 42, 73, .025);
}

.header-inner {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  gap: 32px;
}

.logo {
  display: inline-flex;
  align-items: baseline;
  flex: 0 0 auto;
  font-size: 27px;
  font-weight: 800;
  letter-spacing: -.9px;
}

.logo span { color: var(--blue); }

.main-nav {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  padding: 4px;
  border: 1px solid #edf1f6;
  border-radius: 12px;
  background: #f7f9fc;
}

.nav-link {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 12px;
  color: #445269;
  font-size: 14px;
  white-space: nowrap;
  border-radius: 8px;
}

.nav-link:hover, .nav-link.is-active { color: #0e5fcf; background: #fff; box-shadow: 0 3px 11px rgba(30,58,94,.07); }
.main-nav .nav-link::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 8px;
  background: #fff;
  opacity: 0;
  transform: scale(.96);
  transition: opacity .2s ease, transform .2s ease;
}
.main-nav .nav-link::after {
  content: '';
  position: absolute;
  right: 12px;
  bottom: 3px;
  left: 12px;
  height: 1.5px;
  border-radius: 2px 2px 0 0;
  background: var(--blue);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .22s ease;
}
.main-nav .nav-link.is-active::after,
.main-nav .nav-link:focus-visible::after { transform: scaleX(1); }
.nav-link svg { width: 18px; height: 18px; color: currentColor; transition: transform .2s ease; }
.nav-link:focus-visible { outline: 2px solid #111; outline-offset: 6px; }
.header-submit {
  flex: 0 0 auto;
  height: 40px;
  padding: 0 17px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border-radius: 10px;
  border: 1px solid #075fcf;
  color: #fff;
  background: linear-gradient(135deg, #0967f2, #075ad0);
  box-shadow: 0 7px 18px rgba(9, 103, 242, .16);
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  transition: background .2s ease, box-shadow .2s ease, transform .2s ease;
}
.header-submit:hover { color:#fff; box-shadow:0 9px 22px rgba(9,103,242,.26); transform:translateY(-1px); }
.header-submit:focus-visible { outline:2px solid #111; outline-offset:4px; }
.header-submit svg{width:18px;height:18px}
@media (hover: hover) {
  .main-nav .nav-link:hover::before { opacity: 1; transform: scale(1); }
  .main-nav .nav-link:hover::after { transform: scaleX(1); }
  .main-nav .nav-link:hover svg { transform: translateY(-2px); }
  .mobile-menu .nav-link:hover { background: #f3f3f3; }
}
@media (prefers-reduced-motion: reduce) {
  .nav-link svg, .main-nav .nav-link::before, .main-nav .nav-link::after { transition: none; }
  .main-nav .nav-link:hover svg { transform: none; }
}

.mobile-nav { display: none; margin-left: auto; }
.mobile-nav summary { list-style: none; cursor: pointer; }
.mobile-nav summary::-webkit-details-marker { display: none; }

.menu-button {
  width: 44px;
  height: 44px;
  border: 1px solid var(--line);
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: #fff;
}

.menu-lines, .menu-lines::before, .menu-lines::after {
  display: block;
  width: 20px;
  height: 2px;
  border-radius: 2px;
  background: #313b4d;
}
.menu-lines { position: relative; }
.menu-lines::before, .menu-lines::after { content: ""; position: absolute; left: 0; }
.menu-lines::before { top: -6px; }
.menu-lines::after { top: 6px; }

.mobile-menu {
  position: absolute;
  top: 70px;
  right: 24px;
  width: min(310px, calc(100vw - 48px));
  max-width: calc(100% - 28px);
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(17, 35, 65, .14);
}

.mobile-menu .nav-link { display: flex; padding: 8px 10px; transition: background .2s ease; }
.mobile-menu .nav-link.is-active { background: #f3f3f3; box-shadow: inset 3px 0 #111; }
.mobile-menu .mobile-submit-link { margin-bottom: 5px; color: #fff; background: var(--blue); box-shadow: none; }

.page { min-height: 0; }

.btn {
  min-height: 50px;
  padding: 0 27px;
  border: 1px solid var(--line);
  border-radius: 9px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  background: #fff;
  color: var(--text);
  font-weight: 600;
  cursor: pointer;
}

.btn-primary {
  border-color: var(--blue);
  background: var(--blue);
  color: #fff;
  box-shadow: 0 8px 18px rgba(9,103,242,.16);
}
.btn-primary:hover { background: var(--blue-dark); }
.btn svg { width: 17px; height: 17px; }

.search-form { display: flex; gap: 18px; }
.search-field { position: relative; flex: 1 1 auto; min-width: 0; }
.search-field svg {
  position: absolute;
  left: 24px;
  top: 50%;
  width: 22px;
  height: 22px;
  color: #657086;
  transform: translateY(-50%);
}
.search-input {
  width: 100%;
  height: 64px;
  padding: 0 56px 0 62px;
  border: 1px solid #cfd6e2;
  border-radius: 11px;
  outline: none;
  color: #202837;
  background: #fff;
  font-size: 17px;
  transition: border-color .18s, box-shadow .18s;
}
.search-input:focus { border-color: var(--blue); box-shadow: 0 0 0 4px rgba(9,103,242,.09); }
.search-input::placeholder { color: #8992a3; }
.search-form .btn { min-width: 138px; height: 64px; }

.section-heading-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 22px;
}
.section-heading { margin: 0; font-size: 22px; letter-spacing: -.3px; }
.text-link { display: inline-flex; align-items: center; gap: 7px; color: var(--blue); font-weight: 500; }
.text-link svg { width: 17px; height: 17px; }

/* Home */
.hero {
  padding: 66px 0 62px;
  text-align: center;
}
.hero h1 {
  max-width: 590px;
  margin: 0 auto 14px;
  font-size: clamp(38px, 4vw, 52px);
  line-height: 1.06;
  letter-spacing: -1.6px;
}
.hero-lead { margin: 0 0 32px; color: #818a9c; font-size: 19px; }
.hero .search-form { max-width: 880px; margin: 0 auto; }
.popular {
  max-width: 790px;
  margin: 20px auto 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 9px 29px;
  color: var(--muted);
  font-size: 14px;
}
.popular a { color: var(--blue); font-weight: 600; }

.latest { padding: 0 0 72px; }

.latest-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 24px;
}

.section-kicker {
  display: block;
  margin-bottom: 5px;
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .45px;
  text-transform: uppercase;
}

.latest-heading .section-heading {
  font-size: 26px;
  letter-spacing: -.55px;
}

.latest-heading p {
  max-width: 670px;
  margin: 7px 0 0;
  color: var(--muted);
  font-size: 14px;
}

.latest-heading-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 18px;
}

.latest-index-count {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  gap: 5px;
  padding: 0 13px;
  border: 1px solid #d9e6fb;
  border-radius: 999px;
  background: #f4f8ff;
  color: #60708a;
  font-size: 12px;
  white-space: nowrap;
}

.latest-index-count strong {
  color: var(--blue);
  font-size: 14px;
}

.home-source-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.home-source-grid.is-count-1 { grid-template-columns: minmax(0, 430px); }
.home-source-grid.is-count-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.home-source-grid.is-count-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.home-source-load-more {
  display: flex;
  justify-content: center;
  margin-top: 28px;
}

.home-source-load-more .btn {
  min-width: 190px;
}

.home-source-load-more .btn:disabled {
  cursor: wait;
  opacity: .68;
}

.home-source-card {
  position: relative;
  overflow: hidden;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 8px 26px rgba(28, 48, 78, .035);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

/* Personal bookmarks */
.sg-bookmark-button{box-sizing:border-box;display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:7px;padding:0 11px;border:1px solid #d6e0ec;border-radius:9px;color:#3b577a;background:#fff;font:700 11px Manrope,sans-serif;cursor:pointer;white-space:nowrap;transition:.18s ease}
.sg-bookmark-button:hover{border-color:#80aef1;color:#075fcf;background:#f4f9ff}.sg-bookmark-button svg{width:17px;height:17px;flex:none}.sg-bookmark-button.is-active{border-color:#9bbff1;color:#075fcf;background:#eaf3ff}.sg-bookmark-button.is-active svg{fill:#1670e8;color:#1670e8}.sg-bookmark-button:disabled{opacity:.55;cursor:wait}
.sg-bookmark-button.is-overlay{position:absolute;z-index:2;top:12px;right:12px;width:36px;height:36px;min-height:36px;padding:0;border-color:rgba(255,255,255,.78);background:rgba(255,255,255,.92);box-shadow:0 5px 17px rgba(22,43,76,.16);backdrop-filter:blur(8px)}.sg-bookmark-button.is-overlay span,.sg-bookmark-button.is-compact span{display:none}
.sg-bookmark-button.is-compact{width:32px;min-width:32px;min-height:31px;padding:0;border-radius:7px}.catalog-source-actions .sg-bookmark-button{margin-left:auto}.catalog-source-actions .sg-bookmark-button+a{margin-left:0}
.sg-bookmark-button.is-detail{flex:0 0 50px;width:50px;height:50px;min-width:50px;min-height:50px;padding:0;border-radius:10px}.sg-bookmark-button.is-detail span{display:none}.sg-bookmark-button.is-detail svg{width:22px;height:22px}.source-heading-actions{flex-wrap:wrap}
.sg-bookmark-toast{position:fixed;z-index:10000;left:50%;bottom:25px;max-width:calc(100vw - 30px);padding:12px 18px;border-radius:11px;color:#fff;background:#17263c;box-shadow:0 14px 36px rgba(10,25,48,.25);font:700 12px Manrope,sans-serif;opacity:0;transform:translate(-50%,16px);pointer-events:none;transition:.22s ease}.sg-bookmark-toast.is-visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:560px){.source-heading-actions .sg-bookmark-button.is-detail{flex:0 0 50px;width:50px}.catalog-source-actions .sg-bookmark-button{margin-left:0}}

.home-source-card:hover {
  transform: translateY(-3px);
  border-color: #c5d7f3;
  box-shadow: 0 16px 38px rgba(24, 48, 83, .09);
}

.home-source-preview {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 8 / 5;
  border-bottom: 1px solid var(--line);
  background: #eef3f9;
}

.home-source-preview img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  transition: transform .3s ease;
}

.home-source-card:hover .home-source-preview img { transform: scale(1.018); }

.home-source-preview > span {
  position: absolute;
  top: 12px;
  left: 12px;
  display: inline-flex;
  min-height: 27px;
  align-items: center;
  padding: 0 10px;
  border: 1px solid rgba(255, 255, 255, .75);
  border-radius: 999px;
  background: rgba(255, 255, 255, .92);
  color: #32547f;
  box-shadow: 0 5px 16px rgba(29, 51, 82, .12);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .25px;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}

.home-source-content {
  display: flex;
  min-height: 258px;
  flex-direction: column;
  padding: 18px;
}

.home-source-identity {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 11px;
}

.home-source-identity > img,
.home-source-favicon-placeholder {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border: 1px solid #dfe6ef;
  border-radius: 9px;
  background: #fff;
  object-fit: contain;
}

.home-source-favicon-placeholder {
  display: grid;
  place-items: center;
  color: var(--blue);
  background: #f1f6ff;
  font-size: 15px;
  font-weight: 800;
}

.home-source-identity > div {
  overflow: hidden;
  min-width: 0;
}

.home-source-identity a {
  display: block;
  overflow: hidden;
  color: #27364b;
  font-size: 13px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-source-identity div > span {
  display: block;
  margin-top: 2px;
  color: #8a94a5;
  font-size: 11px;
}

.home-source-card h3 {
  display: block;
  overflow: visible;
  min-height: 0;
  margin: 16px 0 8px;
  color: #151d2b;
  font-size: 18px;
  line-height: 1.32;
  letter-spacing: -.25px;
  overflow-wrap: anywhere;
}

.home-source-card h3 a:hover { color: var(--blue); }

.home-source-card p {
  display: block;
  overflow: visible;
  min-height: 0;
  margin: 0 0 17px;
  color: #697589;
  font-size: 13px;
  line-height: 1.58;
  overflow-wrap: anywhere;
}

.home-source-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid #edf0f4;
}

.home-source-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #52705f;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}

.home-source-status i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #1fbb67;
  box-shadow: 0 0 0 4px #e7f8ee;
}

.home-source-open {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--blue);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.home-source-open svg { width: 15px; height: 15px; }

.home-source-empty {
  display: flex;
  min-height: 190px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 6px;
  border: 1px dashed #ced8e8;
  border-radius: 15px;
  color: var(--muted);
  background: #f8fafc;
  text-align: center;
}

.home-source-empty strong { color: var(--text); font-size: 17px; }
.site-card-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px; }
.site-card {
  min-width: 0;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fff;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.site-card:hover { transform: translateY(-3px); border-color: #c9d8f1; box-shadow: var(--shadow); }
.site-card h3 { margin: 15px 0 3px; font-size: 17px; line-height: 1.3; }
.site-card p { min-height: 43px; margin: 0 0 9px; color: var(--muted); font-size: 14px; }
.url { display: block; margin-bottom: 12px; color: var(--blue); font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.card-actions { display: flex; align-items: center; justify-content: space-between; gap: 9px; }
.tag {
  max-width: 100%;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: #f2f4f7;
  color: #657086;
  font-size: 12px;
  white-space: nowrap;
}
.tag svg { width: 16px; height: 16px; }
.small-open {
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid var(--line);
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  font-size: 12px;
  font-weight: 600;
}
.small-open svg { width: 14px; height: 14px; }

.site-shot {
  position: relative;
  height: 116px;
  overflow: hidden;
  border: 1px solid #e5e8ee;
  border-radius: 7px;
  background: linear-gradient(135deg, #f4f7fb, #fff);
}
.site-shot .shot-bar {
  position: absolute;
  inset: 0 0 auto;
  height: 18px;
  border-bottom: 1px solid rgba(44,58,80,.1);
  background: rgba(255,255,255,.8);
}
.site-shot .shot-logo { position: absolute; top: 6px; left: 9px; width: 38px; height: 5px; border-radius: 3px; background: #26334b; }
.site-shot .shot-nav { position: absolute; top: 7px; right: 10px; width: 56px; height: 3px; border-radius: 2px; background: #aeb7c5; box-shadow: -18px 0 0 #d2d7df, -34px 0 0 #d2d7df; }
.site-shot .shot-title { position: absolute; left: 13px; top: 34px; width: 43%; height: 8px; border-radius: 3px; background: #15223a; box-shadow: 0 13px 0 -1px #c4cbd5, 0 23px 0 -2px #d7dce3; }
.site-shot .shot-button { position: absolute; left: 13px; top: 76px; width: 42px; height: 12px; border-radius: 3px; background: var(--shot-accent, #1573ef); }
.site-shot .shot-art { position: absolute; right: 13px; top: 30px; width: 40%; height: 65px; border-radius: 6px; background: var(--shot-art, linear-gradient(135deg,#dde7f7,#b9cff3)); }
.site-shot .shot-art::after { content: ""; position: absolute; inset: 10px; border: 1px solid rgba(255,255,255,.65); border-radius: 4px; box-shadow: -14px 16px 0 -8px rgba(255,255,255,.8), 14px 16px 0 -8px rgba(255,255,255,.8); }
.preview-tools { --shot-accent:#006cf3; --shot-art:linear-gradient(145deg,#f2f7ff,#c8dcfb); }
.preview-home { --shot-accent:#a78359; --shot-art:linear-gradient(145deg,#e9e1d5,#b9ad9b); }
.preview-study { color:#fff; background:linear-gradient(135deg,#4e23ec,#8d56ff); --shot-accent:#fff; --shot-art:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.32)); }
.preview-study .shot-title, .preview-cinema .shot-title { background:#fff; }
.preview-study .shot-nav, .preview-cinema .shot-nav { background:rgba(255,255,255,.55); box-shadow:-18px 0 0 rgba(255,255,255,.25),-34px 0 0 rgba(255,255,255,.25); }
.preview-cinema { color:#fff; background:linear-gradient(135deg,#070b12,#151b27); --shot-accent:#f2a62d; --shot-art:linear-gradient(145deg,#2b1b2a,#ef834b); }
.preview-finance { --shot-accent:#17b87a; --shot-art:linear-gradient(145deg,#f7fbfa,#bfe7d8); }
.preview-health { --shot-accent:#ffb000; --shot-art:linear-gradient(145deg,#fff6cf,#99cfae); }
.preview-travel { --shot-accent:#ff9635; --shot-art:linear-gradient(145deg,#2fc3e0,#0d76ac); }

/* Footer */
.site-footer { padding: 40px 0 44px; }
.footer-inner {
  padding-top: 39px;
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: 1.35fr .75fr .85fr 1.25fr 1fr;
  gap: 32px;
}
.footer-brand .logo { font-size: 24px; }
.footer-brand p, .copyright { color: var(--muted); font-size: 14px; }
.footer-title { margin-bottom: 12px; color: #687285; font-size: 15px; font-weight: 700; }
.footer-links { display: grid; gap: 6px; color: #657086; font-size: 15px; line-height: 1.5; }
.footer-links a:hover { color: var(--blue); }
.footer-inner > div { min-width:0; }
.footer-developer { margin-top:12px; font-size:13px; }
.footer-developer a { font-weight:700; color:var(--text); }
.footer-developer a:hover { color:var(--blue); }
.footer-social { display: flex; gap: 12px; margin-bottom: 22px; }
.social {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--soft);
  color: #697487;
  font-size: 12px;
  font-weight: 800;
}
.social svg { width: 18px; height: 18px; }

/* Catalog */
.catalog-page { padding-top: 30px; }
.catalog-head { display: grid; grid-template-columns: 1fr auto; gap: 32px; align-items: start; margin-bottom: 28px; }
.catalog-head h1 { margin: 0 0 18px; font-size: 39px; letter-spacing: -1px; }
.catalog-head .search-form { max-width: 650px; }
.catalog-head .search-input, .catalog-head .search-form .btn { height: 54px; }
.count-card {
  width: 120px;
  padding: 16px 20px;
  border: 1px solid var(--line);
  border-radius: 12px;
  color: var(--muted);
  font-size: 13px;
}
.count-card strong { display: block; color: var(--text); font-size: 26px; line-height: 1.25; }
.catalog-layout { display: grid; grid-template-columns: 255px minmax(0,1fr); gap: 34px; }
.catalog-content, .detail-layout > *, .results-layout > * { min-width: 0; }
.filters { border: 1px solid var(--line); border-radius: 12px; align-self: start; overflow: hidden; }
.filter-section { padding: 17px 16px; border-bottom: 1px solid var(--line); }
.filter-section:last-child { border-bottom: 0; }
.filter-title-row { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 10px; font-weight: 700; }
.filter-reset { color: var(--blue); font-size: 12px; font-weight: 500; }
.check-row { display: flex; align-items: center; gap: 10px; min-height: 30px; color: #4c566a; font-size: 13px; }
.check-row input { accent-color: var(--blue); width: 15px; height: 15px; margin: 0; }
.check-row .qty { margin-left: auto; font-size: 11px; }
.mobile-filter { display: none; }
.catalog-tabs { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 17px; }
.catalog-tab {
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  color: #657086;
  font-size: 13px;
}
.catalog-tab.is-active { border-color: var(--blue); color: #fff; background: var(--blue); }
.sort-row { display: flex; align-items: center; gap: 14px; margin-bottom: 17px; color: var(--muted); font-size: 13px; }
.select {
  min-width: 195px;
  height: 40px;
  padding: 0 38px 0 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--text);
  background: #fff;
}
.sort-row .push { margin-left: auto; }
.view-buttons { display: flex; gap: 7px; }
.view-button { width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 8px; display: grid; place-items: center; color: #677185; background: #fff; }
.view-button.is-active { border-color: var(--blue); color: var(--blue); }
.view-button svg { width: 19px; height: 19px; }
.catalog-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; }
.catalog-grid .site-card { padding: 14px; }
.catalog-grid .site-shot { height: 108px; }
.catalog-grid .site-card h3 { margin-top: 12px; font-size: 15px; }
.catalog-grid .site-card p { font-size: 12px; min-height: 36px; }
.catalog-grid .url { font-size: 12px; }
.catalog-grid .tag { padding: 0 9px; }
.pagination { display: flex; justify-content: center; align-items: center; gap: 10px; margin: 23px 0 0; }
.page-number { width: 38px; height: 38px; border: 1px solid var(--line); border-radius: 8px; display: grid; place-items: center; color: #434d61; font-size: 13px; }
.page-number.is-active { border-color: var(--blue); color: #fff; background: var(--blue); }
.page-ellipsis { color: var(--muted); }

/* Site detail */
.detail-page { padding-top: 28px; }
.breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 33px; color: #788295; font-size: 13px; }
.breadcrumbs svg { width: 13px; height: 13px; }
.detail-layout { display: grid; grid-template-columns: 1.08fr .92fr; gap: 30px; }
.detail-title-row { display: flex; align-items: center; gap: 15px; margin-bottom: 9px; }
.detail-title-row h1 { margin: 0; font-size: 35px; letter-spacing: -.9px; }
.icon-button { width: 39px; height: 39px; border: 1px solid var(--line); border-radius: 8px; display: grid; place-items: center; color: #687386; background: #fff; }
.icon-button svg { width: 19px; height: 19px; }
.detail-category { margin-bottom: 21px; }
.detail-shot {
  height: 352px;
  padding: 46px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fbfcfe;
}
.news-mock {
  height: 100%;
  overflow: hidden;
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 9px 28px rgba(25,41,68,.11);
}
.news-top { height: 35px; border-bottom: 1px solid #e7eaf0; display: flex; align-items: center; padding: 0 14px; gap: 23px; font-size: 8px; }
.news-top strong { margin-right: auto; font-size: 10px; }
.news-search { width: 90px; height: 16px; border: 1px solid #e4e7ed; border-radius: 4px; }
.news-body { height: calc(100% - 35px); padding: 24px 17px; display: grid; grid-template-columns: 1.45fr 1fr; gap: 22px; }
.news-feature { display: grid; grid-template-columns: 44% 1fr; gap: 12px; }
.news-image { border-radius: 4px; background: linear-gradient(140deg,#171d62,#994edb 57%,#12172f); position: relative; }
.news-image::after { content:""; position:absolute; left:36%; top:24%; width:35%; height:48%; border-radius:5px; background:linear-gradient(145deg,#080917,#8a5bf5); transform:rotate(-13deg); box-shadow:8px 10px 14px rgba(0,0,0,.28); }
.mock-lines strong { display:block; height:7px; margin:6px 0 12px; border-radius:3px; background:#1c2331; box-shadow:0 10px 0 -2px #1c2331; }
.mock-lines span { display:block; width:88%; height:4px; margin-top:27px; border-radius:3px; background:#b9c0cc; box-shadow:0 8px 0 #d6dbe2,0 16px 0 #d6dbe2; }
.news-list { grid-column:1; margin-top:-70px; display:grid; gap:9px; }
.news-list div { height:40px; border-bottom:1px solid #eceef2; display:grid; grid-template-columns:64px 1fr; gap:10px; }
.news-list i { background:linear-gradient(135deg,#be9d72,#e5d8c8); }
.news-list b { height:5px; margin-top:5px; background:#303947; border-radius:3px; box-shadow:0 9px 0 -1px #c8ced7; }
.news-side { grid-column:2; grid-row:1 / span 2; display:grid; grid-template-columns:1fr 1fr; gap:9px; align-content:start; }
.news-side div { height:70px; border-radius:4px; background:linear-gradient(135deg,#80a05f,#e2be7f); }
.news-side div:nth-child(2){background:linear-gradient(135deg,#eac49d,#5897b5)}
.news-side div:nth-child(3){background:linear-gradient(135deg,#c9cdd3,#7b5b45)}
.news-side div:nth-child(4){background:linear-gradient(135deg,#54575c,#a2a8b0)}
.thumb-row { display: flex; justify-content: center; gap: 11px; margin-top: 15px; }
.thumb { width: 70px; height: 43px; padding: 4px; border: 1px solid var(--line); border-radius: 5px; background: #fff; }
.thumb::after { content:""; display:block; width:100%; height:100%; border-radius:2px; background:linear-gradient(135deg,#f1f3f6,#b4c0d2); }
.thumb.is-active { border-color: var(--blue); }

.info-panel { min-height: 460px; padding: 25px; border: 1px solid var(--line); border-radius: 13px; }
.info-panel-head { display: grid; grid-template-columns: 1fr 185px; gap: 24px; align-items: start; margin-bottom: 20px; }
.info-panel h2 { margin: 0 0 3px; font-size: 26px; }
.info-url { color: var(--blue); font-size: 18px; font-weight: 600; }
.info-url { overflow-wrap: anywhere; }
.info-actions { display: grid; gap: 10px; }
.info-actions .btn { min-height: 47px; padding-inline: 14px; }
.meta-list { display: grid; grid-template-columns: 1fr; gap: 16px; color: #4c5669; font-size: 13px; }
.meta-row { display: grid; grid-template-columns: 128px 1fr; gap: 15px; }
.meta-label { color: #7b8495; }
.inline-tags { display: flex; flex-wrap: wrap; gap: 7px; }
.status-row { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 22px; }
.status-card { min-height: 68px; padding: 13px; border: 1px solid var(--line); border-radius: 9px; display: flex; align-items: center; gap: 12px; }
.status-icon { width: 30px; height: 30px; display: grid; place-items: center; color: var(--green); }
.status-icon svg { width: 27px; height: 27px; }
.status-card strong { display: block; font-size: 12px; }
.status-card span { color: var(--muted); font-size: 12px; }

.similar { padding-top: 27px; }
.similar .site-card-grid { grid-template-columns: repeat(5,minmax(0,1fr)); }
.similar-card { position: relative; min-height: 136px; padding: 16px 16px 14px 76px; border: 1px solid var(--line); border-radius: 11px; }
.similar-logo { position:absolute; left:16px; top:16px; width:44px; height:44px; border-radius:6px; display:grid; place-items:center; background:#eef3f9; color:#1a5aa0; font-weight:800; }
.similar-card h3 { margin: 0 20px 0 0; font-size: 15px; }
.similar-card .url { margin: 2px 0 5px; font-size: 11px; }
.similar-card p { margin:0 0 7px; min-height:38px; color:var(--muted); font-size:11px; }
.similar-card .tag { min-height:27px; padding:0 8px; font-size:10px; }
.similar-card .star { position:absolute; right:13px; top:15px; color:#7d8798; }
.similar-card .star svg { width:16px; height:16px; }

.detail-bottom { display:grid; grid-template-columns: 1fr 370px; gap:18px; margin-top:20px; }
.tech-info { padding:20px; border:1px solid var(--line); border-radius:12px; display:grid; grid-template-columns:1fr 1fr; gap:26px; }
.tech-info section + section { border-left:1px solid var(--line); padding-left:35px; }
.tech-info h3, .rating h3 { margin:0 0 14px; font-size:15px; }
.spec-row { display:grid; grid-template-columns:145px 1fr; gap:14px; min-height:31px; color:#4f5a6d; font-size:12px; }
.spec-row span:first-child { color:#7c8698; }
.rating { padding:20px; border:1px solid var(--line); border-radius:12px; }
.rating p { margin:-11px 0 14px; color:var(--muted); font-size:11px; }
.stars { display:flex; gap:7px; margin-bottom:18px; color:#cfd5de; }
.stars svg { width:28px; height:28px; }

/* Dynamic source card */
.source-page {
  padding: 26px 0 72px;
  background: linear-gradient(180deg, #f8faff 0, #fff 330px);
}

.source-breadcrumbs { margin-bottom: 25px; }

.source-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 27px;
}

.source-heading-main {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 17px;
  align-items: start;
  min-width: 0;
}

.source-heading-favicon {
  width: 58px;
  height: 58px;
  padding: 7px;
  border: 1px solid #dbe3ee;
  border-radius: 14px;
  object-fit: contain;
  background: #fff;
  box-shadow: 0 8px 24px rgba(22, 49, 84, .06);
}

.source-heading-favicon.is-placeholder {
  display: grid;
  place-items: center;
  color: var(--blue);
  background: #eef5ff;
  font-size: 25px;
  font-weight: 800;
}

.source-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 7px;
  color: #157845;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
}

.source-eyebrow i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #20c276;
  box-shadow: 0 0 0 4px #e9f9f1;
}

.source-heading h1 {
  max-width: 920px;
  margin: 0 0 7px;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.12;
  letter-spacing: -1.2px;
}

.source-domain {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--blue);
  font-size: 15px;
  font-weight: 650;
}

.source-domain:hover { color: var(--blue-dark); }
.source-domain svg { width: 16px; height: 16px; }

.source-heading-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 9px;
}

.source-heading-actions .btn {
  height: 50px;
  min-height: 50px;
  padding: 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  margin: 0;
  line-height: 1;
  white-space: nowrap;
}

.source-history-button { min-width: 178px; background: #fff; }
.source-history-button svg { width: 18px; height: 18px; color: #53627a; }

.source-visit-button {
  min-width: 166px;
  box-shadow: 0 10px 24px rgba(9, 103, 242, .17);
}

.source-visit-button svg { width: 17px; height: 17px; }

.source-overview {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(340px, .75fr);
  gap: 22px;
  align-items: stretch;
}

.source-overview-aside {
  min-width: 0;
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 22px;
}

.source-preview-panel,
.source-summary-panel,
.source-description-card,
.source-index-card,
.source-content-stats,
.source-archive-summary,
.source-history,
.source-related-card {
  border: 1px solid #dfe5ee;
  background: #fff;
  box-shadow: 0 12px 36px rgba(24, 47, 78, .045);
}

.source-preview-panel,
.source-summary-panel,
.source-description-card,
.source-index-card,
.source-content-stats,
.source-archive-summary,
.source-history { border-radius: 16px; }

.source-preview-panel { overflow: hidden; padding: 20px 20px 0; }

.source-panel-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 16px;
}

.source-panel-head h2,
.source-summary-panel h2,
.source-section-title h2,
.source-index-card h2,
.source-content-stats-title h2 {
  margin: 3px 0 0;
  font-size: 21px;
  line-height: 1.25;
  letter-spacing: -.35px;
}

.source-panel-head > span {
  color: var(--muted);
  font-size: 12px;
  white-space: nowrap;
}

.source-main-shot {
  position: relative;
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border: 1px solid #d9e0ea;
  border-radius: 12px;
  background: #edf2f8;
}

.source-main-shot img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: top;
  transition: transform .24s ease, filter .24s ease;
}

.source-main-shot > span {
  position: absolute;
  right: 14px;
  bottom: 14px;
  padding: 8px 12px;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 9px;
  color: #fff;
  background: rgba(13, 25, 43, .78);
  backdrop-filter: blur(8px);
  font-size: 12px;
  font-weight: 650;
  opacity: 0;
  transform: translateY(5px);
  transition: opacity .2s ease, transform .2s ease;
}

.source-main-shot:hover img { transform: scale(1.012); filter: brightness(.94); }
.source-main-shot:hover > span { opacity: 1; transform: translateY(0); }

.source-summary-panel {
  padding: 26px;
}

.source-summary-panel > p {
  margin: 13px 0 21px;
  color: #4f5b6e;
  font-size: 14px;
  line-height: 1.65;
}

.source-keywords { margin-bottom: 22px; }
.source-keywords > span { display: block; margin-bottom: 9px; color: #68758a; font-size: 12px; font-weight: 650; }
.source-keywords > div { display: flex; flex-wrap: wrap; gap: 7px; }
.source-keywords > div > span {
  max-width: 100%;
  padding: 6px 9px;
  overflow: hidden;
  border: 1px solid #dbe5f2;
  border-radius: 7px;
  color: #41516a;
  background: #f7f9fc;
  font-size: 11px;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.source-index-keywords{margin:18px 0 0;padding-top:17px;border-top:1px solid #edf0f4}.source-index-keywords>div{gap:6px}.source-index-keywords>div>span{white-space:normal;line-height:1.25}

.source-checks {
  display: grid;
  gap: 0;
  margin-top: 8px;
  border-top: 1px solid #e5e9f0;
}

.source-checks > div {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 11px;
  align-items: center;
  padding: 14px 0;
  border-bottom: 1px solid #edf0f4;
}

.source-checks > div:last-child { border-bottom: 0; padding-bottom: 0; }
.source-check-icon { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 10px; color: #079b50; background: #eaf8f0; font-size: 15px; font-weight: 800; }
.source-checks strong, .source-checks small { display: block; }
.source-checks strong { font-size: 13px; }
.source-checks small { margin-top: 1px; color: var(--muted); font-size: 11px; }

.source-archive-summary {
  display: grid;
  grid-template-columns: 45px minmax(0, 1fr);
  gap: 0 14px;
  align-content: start;
  padding: 22px;
  background: linear-gradient(145deg, #f8fbff, #fff 62%);
}

.source-archive-summary-icon {
  width: 45px;
  height: 45px;
  display: grid;
  place-items: center;
  grid-row: 1 / span 2;
  border-radius: 13px;
  color: var(--blue);
  background: #eaf3ff;
}
.source-archive-summary-icon svg { width: 23px; height: 23px; }
.source-archive-summary h2 { margin: 3px 0 0; font-size: 19px; }
.source-archive-summary-copy > p { margin: 11px 0 0; color: #5d697c; font-size: 12px; line-height: 1.55; }
.source-archive-summary dl {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 17px 0 14px;
}
.source-archive-summary dl > div { display: flex; min-height: 58px; align-items: center; justify-content: center; flex-direction: column; padding: 11px 12px; border: 1px solid #e1e8f1; border-radius: 10px; background: rgba(255,255,255,.78); text-align: center; }
.source-archive-summary dt { color: #7b8798; font-size: 10px; }
.source-archive-summary dd { margin: 3px 0 0; color: #253149; font-size: 14px; font-weight: 750; }
.source-archive-summary-actions { grid-column: 1 / -1; display: flex; }
.source-archive-summary-actions .btn { width: 100%; }
.source-archive-summary-actions .btn { min-width: 0; min-height: 41px; padding: 0 12px; font-size: 11px; }

@media (min-width: 901px) {
  .source-overview-aside {
    gap: 0;
    overflow: hidden;
    border: 1px solid #dfe5ee;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 36px rgba(24, 47, 78, .045);
  }
  .source-overview-aside .source-summary-panel,
  .source-overview-aside .source-archive-summary {
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  .source-overview-aside .source-summary-panel { padding: 20px 22px 15px; }
  .source-overview-aside .source-summary-panel > p { margin: 8px 0 12px; font-size: 13px; line-height: 1.5; }
  .source-overview-aside .source-category-row { margin: -1px 0 9px; }
  .source-overview-aside .source-keywords { margin-bottom: 10px; }
  .source-overview-aside .source-keywords > span { margin-bottom: 6px; }
  .source-overview-aside .source-keywords > div { max-height: 50px; overflow: hidden; gap: 5px; }
  .source-overview-aside .source-keywords > div > span { padding: 5px 7px; font-size: 10px; }
  .source-overview-aside .source-checks { margin-top: 2px; }
  .source-overview-aside .source-checks > div { grid-template-columns: 30px 1fr; gap: 10px; padding: 9px 0; }
  .source-overview-aside .source-check-icon { width: 29px; height: 29px; border-radius: 9px; font-size: 14px; }
  .source-overview-aside .source-checks strong { font-size: 12px; }
  .source-overview-aside .source-checks small { font-size: 10px; }
  .source-overview-aside .source-archive-summary {
    align-content: center;
    padding: 17px 22px 18px;
    border-top: 1px solid #e2e8f0;
    background: linear-gradient(145deg, #f6faff, #fff 65%);
  }
  .source-overview-aside .source-archive-summary-icon { width: 39px; height: 39px; grid-row: 1 / span 2; border-radius: 11px; }
  .source-overview-aside .source-archive-summary-icon svg { width: 20px; height: 20px; }
  .source-overview-aside .source-archive-summary h2 { font-size: 17px; }
  .source-overview-aside .source-archive-summary-copy > p { margin-top: 7px; font-size: 11px; line-height: 1.45; }
  .source-overview-aside .source-archive-summary dl { gap: 8px; margin: 11px 0 10px; }
  .source-overview-aside .source-archive-summary dl > div { padding: 8px 10px; border-radius: 8px; }
  .source-overview-aside .source-archive-summary dd { font-size: 12px; }
  .source-overview-aside .source-archive-summary-actions .btn { min-height: 37px; }
}

.source-information {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(340px, .75fr);
  gap: 22px;
  align-items: start;
  margin-top: 22px;
}

.source-description-card,
.source-index-card { padding: 27px; }

.source-section-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid #e5e9f0;
}

.source-editorial-badge {
  flex: 0 0 auto;
  padding: 7px 10px;
  border: 1px solid #dbe8fb;
  border-radius: 999px;
  color: #3d68a6;
  background: #f4f8ff;
  font-size: 10px;
  font-weight: 650;
}

.source-long-copy { padding-top: 19px; color: #3f4d61; font-size: 14px; line-height: 1.72; }
.source-long-copy p { margin: 0 0 16px; }
.source-long-copy p:last-child { margin-bottom: 0; }

.source-facts { display: grid; margin: 17px 0 0; }
.source-facts > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(110px, auto);
  gap: 14px;
  padding: 13px 0;
  border-bottom: 1px solid #edf0f4;
}
.source-facts dt { color: #748095; font-size: 12px; }
.source-facts dd { margin: 0; max-width: 190px; overflow-wrap: anywhere; color: #263247; font-size: 12px; font-weight: 700; text-align: right; }

.source-content-stats {
  display: grid;
  grid-template-columns: minmax(250px, .75fr) minmax(0, 1.7fr);
  gap: 30px;
  align-items: center;
  margin-top: 22px;
  padding: 24px 27px;
}

.source-content-stats-title p { margin: 7px 0 0; color: var(--muted); font-size: 12px; }
.source-content-stats > dl { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; }
.source-content-stats > dl > div { display: flex; min-width: 0; min-height: 66px; align-items: center; justify-content: center; flex-direction: column; padding: 5px 22px; border-left: 1px solid #e4e9f0; text-align: center; }
.source-content-stats > dl.is-expanded { row-gap: 19px; }
.source-content-stats > dl.is-expanded > div:nth-child(n+5) { padding-top: 17px; border-top: 1px solid #edf0f4; }
.source-content-stats dt { color: #192337; font-size: 25px; font-weight: 750; letter-spacing: -.5px; }
.source-content-stats dd { margin: 3px 0 0; color: #778296; font-size: 11px; }

.source-history { margin-top: 22px; padding: 27px; scroll-margin-top: 22px; }
.source-history-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-bottom: 18px; }
.source-history-head h2 { margin: 3px 0 0; font-size: 23px; letter-spacing: -.4px; }
.source-history-head p { margin: 6px 0 0; color: var(--muted); font-size: 12px; }
.source-history-head > span { flex: 0 0 auto; padding: 8px 11px; border: 1px solid #dfe7f2; border-radius: 999px; color: #617087; background: #f8faff; font-size: 11px; }
.source-history-head > span strong { color: var(--blue); }
.source-history-list { display: grid; gap: 12px; }
.source-history-entry {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr) 220px;
  gap: 18px;
  min-width: 0;
  padding: 14px;
  border: 1px solid #e0e6ee;
  border-radius: 13px;
  background: #fff;
}
.source-history-shot { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; border: 1px solid #dfe5ed; border-radius: 9px; background: #eef2f7; }
.source-history-shot img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: top; transition: transform .22s ease, filter .22s ease; }
.source-history-shot > span { position: absolute; inset: auto 8px 8px; padding: 6px 8px; border-radius: 7px; color: #fff; background: rgba(18, 31, 52, .8); font-size: 10px; font-weight: 650; text-align: center; opacity: 0; transition: opacity .18s ease; }
.source-history-shot:hover img { transform: scale(1.02); filter: brightness(.92); }
.source-history-shot:hover > span { opacity: 1; }
.source-history-main { min-width: 0; padding: 2px 0; }
.source-history-version { display: flex; align-items: center; gap: 9px; }
.source-history-version > img,
.source-history-version > span { width: 34px; height: 34px; flex: 0 0 34px; padding: 4px; border: 1px solid #dde5ef; border-radius: 9px; object-fit: contain; background: #fff; }
.source-history-version > span { display: grid; place-items: center; color: var(--blue); background: #eef5ff; font-size: 14px; font-weight: 800; }
.source-history-version div > span,
.source-history-version div > strong { display: block; }
.source-history-version div > span { color: var(--blue); font-size: 10px; font-weight: 750; text-transform: uppercase; letter-spacing: .04em; }
.source-history-version div > strong { margin-top: 1px; color: #334159; font-size: 12px; }
.source-history-date-link { color: inherit; text-decoration: none; }
.source-history-date-link:hover { color: var(--blue); }
.source-history-main h3 { margin: 11px 0 5px; overflow: hidden; font-size: 14px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.source-history-main > p { margin: 0; color: #657185; font-size: 11px; line-height: 1.5; }
.source-history-badges { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.source-history-badges span { padding: 5px 7px; border-radius: 7px; color: #157845; background: #edf9f2; font-size: 9px; font-weight: 750; }
.source-history-side { min-width: 0; display: flex; flex-direction: column; padding-left: 17px; border-left: 1px solid #e5e9ef; }
.source-history-side dl { display: grid; gap: 8px; margin: 0; }
.source-history-side dl > div { display: flex; justify-content: space-between; gap: 10px; }
.source-history-side dt { color: #7b8697; font-size: 10px; }
.source-history-side dd { margin: 0; color: #2a364b; font-size: 10px; font-weight: 700; text-align: right; }
.source-history-actions { display: grid; grid-template-columns: .75fr 1.25fr; gap: 7px; margin-top: auto; padding-top: 12px; }
.source-history-actions .btn { min-width: 0; min-height: 36px; padding: 0 8px; font-size: 10px; }
.source-history-pagination { display: flex; justify-content: center; gap: 7px; margin-top: 18px; }
.source-history-pagination a,
.source-history-pagination span { min-width: 36px; height: 36px; padding: 0 11px; display: grid; place-items: center; border: 1px solid #dfe5ed; border-radius: 8px; color: #445168; background: #fff; font-size: 11px; }
.source-history-pagination .is-current { border-color: var(--blue); color: #fff; background: var(--blue); font-weight: 700; }
.source-history-pagination .is-disabled { color: #adb5c2; background: #f7f8fa; }

.source-related { margin-top: 38px; }
.source-related .section-heading-row { align-items: flex-end; margin-bottom: 17px; }
.source-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.source-related-card { overflow: hidden; border-radius: 14px; transition: transform .2s ease, box-shadow .2s ease; }
.source-related-card:hover { transform: translateY(-3px); box-shadow: 0 16px 38px rgba(24, 47, 78, .09); }
.source-related-shot { display: block; aspect-ratio: 16 / 6.4; overflow: hidden; border-bottom: 1px solid #e3e8ef; background: #eef2f6; }
.source-related-shot img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: top; transition: transform .24s ease; }
.source-related-card:hover .source-related-shot img { transform: scale(1.018); }
.source-related-card > div { padding: 17px 18px 18px; }
.source-related-card > div > span { color: var(--blue); font-size: 11px; font-weight: 700; }
.source-related-card h3 { min-height: 44px; margin: 5px 0 7px; font-size: 16px; line-height: 1.35; }
.source-related-card h3 a:hover { color: var(--blue); }
.source-related-card p { min-height: 39px; margin: 0 0 13px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.source-related-card > div > a { display: inline-flex; align-items: center; gap: 4px; color: var(--blue); font-size: 12px; font-weight: 650; }
.source-related-card > div > a svg { width: 14px; height: 14px; }

.source-not-found { min-height: 520px; display: grid; place-items: center; align-content: center; text-align: center; }
.source-not-found > span { color: #c8d9f4; font-size: 72px; font-weight: 800; line-height: 1; }
.source-not-found h1 { margin: 10px 0 6px; font-size: 32px; }
.source-not-found p { margin: 0 0 22px; color: var(--muted); }

/* Search results */
.search-page { padding-top: 29px; }
.search-page .search-form { max-width: 965px; margin: 0 auto; }
.clear-search { position:absolute; right:20px; top:50%; transform:translateY(-50%); color:#6f788a; font-size:25px; line-height:1; }
.search-tabs { max-width: 965px; margin: 8px auto 17px; border-bottom:1px solid var(--line); display:flex; gap:8px; }
.search-tab { position:relative; min-width:90px; padding:11px 16px 14px; color:#677185; text-align:center; }
.search-tab.is-active { color:var(--text); font-weight:600; }
.search-tab.is-active::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:var(--blue); }
.results-shell { max-width:1080px; margin:0 auto; }
.results-count { margin:0 0 15px; font-size:16px; }
.results-layout { display:grid; grid-template-columns:minmax(0,1fr) 275px; gap:28px; }
.result-list { display:grid; gap:13px; }
.result-card { min-height:113px; padding:15px 16px 14px 74px; position:relative; border:1px solid var(--line); border-radius:11px; }
.result-logo { position:absolute; left:16px; top:16px; width:40px; height:40px; border-radius:6px; display:grid; place-items:center; color:#fff; background:#111; font-size:18px; }
.result-logo.gb { background:linear-gradient(135deg,#4d23ee,#753bff); }
.result-logo.hex { background:#102229; color:#24d3cf; }
.result-logo.ya { background:#14ba78; font-size:24px; }
.result-logo.otus { background:#fb4c16; font-size:11px; }
.result-card h3 { margin:0 0 2px; color:var(--blue); font-size:17px; }
.result-card .green-url { color:#187b35; font-size:13px; }
.result-card p { max-width:630px; margin:6px 0 0; color:#3f495a; font-size:13px; }
.result-category { position:absolute; right:17px; top:17px; color:#8a93a3; font-size:12px; }
.results-side { display:grid; gap:21px; align-content:start; }
.featured, .refine { padding:17px; border:1px solid var(--line); border-radius:11px; }
.featured-label { display:flex; align-items:center; gap:8px; margin-bottom:16px; font-size:13px; font-weight:700; }
.featured-label span { color:#eeac20; font-size:18px; }
.featured-site { display:grid; grid-template-columns:42px 1fr; gap:12px; align-items:center; }
.featured-site h3 { margin:0; color:var(--blue); font-size:17px; }
.featured-site p { grid-column:1 / -1; margin:0; color:#4f596b; font-size:12px; }
.featured .btn { width:100%; min-height:39px; margin-top:13px; background:#f6f7f9; border-color:#f0f2f5; font-size:12px; }
.refine h3 { margin:0 0 13px; font-size:15px; }
.refine-label { margin:14px 0 7px; color:#4c5668; font-size:12px; font-weight:600; }
.refine .select { width:100%; min-width:0; height:39px; color:#6d7788; font-size:12px; }
.results-pagination { justify-content:flex-start; margin-left:170px; }

/* Responsive */
@media (max-width: 1180px) {
  .header-inner { gap: 34px; }
  .main-nav { gap: 24px; }
  .site-card-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .home-source-grid,
  .home-source-grid.is-count-2,
  .home-source-grid.is-count-3,
  .home-source-grid.is-count-4,
  .home-source-grid.is-count-5,
  .home-source-grid.is-count-6 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-source-grid.is-count-1 { grid-template-columns: minmax(0, 430px); }
  .site-card-grid .site-card:nth-child(n+4) { display: block; }
  .catalog-layout { grid-template-columns: 220px minmax(0,1fr); gap: 22px; }
  .catalog-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .detail-layout { grid-template-columns: 1fr; }
  .detail-shot { height: 430px; }
  .similar .site-card-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .detail-bottom { grid-template-columns:1fr; }
  .source-overview { grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr); }
  .source-information { grid-template-columns: minmax(0, 1.35fr) minmax(310px, .75fr); }
  .source-content-stats { grid-template-columns: 1fr; gap: 20px; }
  .source-content-stats > dl > div:first-child { border-left: 0; padding-left: 0; }
  .source-history-entry { grid-template-columns: 190px minmax(0, 1fr) 200px; }
}

@media (max-width: 900px) {
  .container { width: min(calc(100% - 40px), var(--container)); }
  .site-header { height: 72px; }
  .header-inner { justify-content:space-between; }
  .logo { font-size:25px; }
  .main-nav { display:none; }
  .mobile-nav { display:block; }
  .page { min-height:0; }
  .hero { padding:52px 0 48px; }
  .hero h1 { font-size:42px; }
  .latest-heading { align-items: flex-start; flex-direction: column; gap: 18px; }
  .latest-heading-actions { width: 100%; justify-content: space-between; }
  .site-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .footer-inner { grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
  .footer-brand { grid-column:1 / -1; }
  .footer-social-col { grid-column:1 / -1; display:flex; align-items:center; justify-content:space-between; }
  .footer-social { margin:0; }
  .copyright { text-align:right; }
  .catalog-layout { grid-template-columns:1fr; }
  .filters { display:none; }
  .mobile-filter { display:block; margin-bottom:15px; }
  .mobile-filter summary { cursor:pointer; min-height:44px; padding:0 15px; border:1px solid var(--line); border-radius:8px; display:flex; align-items:center; justify-content:space-between; font-weight:600; }
  .mobile-filter .filter-wrap { margin-top:10px; border:1px solid var(--line); border-radius:10px; display:grid; grid-template-columns:repeat(3,1fr); }
  .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .source-heading h1 { font-size: 32px; }
  .source-overview,
  .source-information { grid-template-columns: 1fr; }
  .source-overview-aside { grid-template-columns: 1fr 1fr; grid-template-rows: none; align-items: start; }
  .source-summary-panel { min-height: 0; }
  .source-history-entry { grid-template-columns: 180px minmax(0, 1fr); }
  .source-history-side { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 260px; gap: 20px; padding: 13px 0 0; border-top: 1px solid #e5e9ef; border-left: 0; }
  .source-history-actions { margin: 0; padding: 0; }
  .source-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .results-layout { grid-template-columns:1fr; }
  .results-side { grid-template-columns:1fr 1fr; }
  .results-pagination { justify-content:center; margin-left:0; }
}

@media (max-width: 680px) {
  body { font-size:14px; }
  .container { width:min(calc(100% - 28px),var(--container)); }
  .site-header { height:64px; }
  .logo { font-size:23px; }
  .mobile-menu { top:61px; right:14px; width:calc(100vw - 28px); }
  .hero { padding:40px 0 42px; }
  .hero h1 { max-width:360px; font-size:36px; }
  .hero-lead { font-size:16px; }
  .search-form { gap:10px; }
  .search-input { height:56px; padding-left:51px; font-size:15px; }
  .search-field svg { left:19px; }
  .search-form .btn { min-width:105px; height:56px; padding:0 18px; }
  .popular { justify-content:flex-start; text-align:left; }
  .section-heading { font-size:20px; }
  .latest { padding-bottom: 52px; }
  .latest-heading .section-heading { font-size: 23px; }
  .latest-heading-actions { align-items: flex-start; flex-direction: column; gap: 12px; }
  .home-source-grid,
  .home-source-grid.is-count-1,
  .home-source-grid.is-count-2,
  .home-source-grid.is-count-3,
  .home-source-grid.is-count-4,
  .home-source-grid.is-count-5,
  .home-source-grid.is-count-6 { grid-template-columns: 1fr; }
  .home-source-content { min-height: 0; }
  .home-source-card h3 { min-height: 0; }
  .home-source-card p { min-height: 0; }
  .site-card-grid, .catalog-grid { grid-template-columns:1fr; }
  .site-card { display:grid; grid-template-columns:140px 1fr; column-gap:14px; }
  .site-shot { grid-row:1 / span 4; height:115px; }
  .site-card h3 { margin:1px 0 3px; }
  .site-card p { min-height:0; margin-bottom:5px; }
  .site-card .url { margin-bottom:7px; }
  .site-card .card-actions { grid-column:1 / -1; margin-top:12px; }
  .footer-inner { grid-template-columns:1fr 1fr; }
  .footer-documents { grid-column:auto; }
  .footer-brand { grid-column:1 / -1; }
  .footer-social-col { display:block; }
  .copyright { text-align:left; }
  .catalog-head { grid-template-columns:1fr auto; gap:12px; }
  .catalog-head h1 { font-size:31px; }
  .catalog-head .search-form { grid-column:1 / -1; }
  .count-card { width:95px; padding:12px; }
  .count-card strong { font-size:22px; }
  .mobile-filter .filter-wrap { grid-template-columns:1fr; }
  .sort-row { flex-wrap:wrap; }
  .sort-row .push { margin-left:0; }
  .view-buttons { margin-left:auto; }
  .catalog-grid .site-card { grid-template-columns:125px 1fr; }
  .catalog-grid .site-shot { height:104px; }
  .catalog-tabs { flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; }
  .catalog-tab { white-space:nowrap; }
  .breadcrumbs { margin-bottom:22px; }
  .detail-title-row h1 { font-size:29px; }
  .detail-shot { height:300px; padding:25px; }
  .info-panel { padding:19px; }
  .info-panel-head { grid-template-columns:1fr; }
  .info-actions { grid-template-columns:1fr 1fr; }
  .meta-row { grid-template-columns:110px 1fr; }
  .status-row { grid-template-columns:1fr; gap:10px; }
  .similar .site-card-grid { grid-template-columns:1fr; }
  .tech-info { grid-template-columns:1fr; }
  .tech-info section + section { border-left:0; border-top:1px solid var(--line); padding:20px 0 0; }
  .source-page { padding-top: 19px; padding-bottom: 48px; }
  .source-heading { display: grid; gap: 18px; }
  .source-heading-main { grid-template-columns: 48px minmax(0, 1fr); gap: 13px; }
  .source-heading-favicon { width: 48px; height: 48px; border-radius: 12px; }
  .source-heading h1 { font-size: 27px; letter-spacing: -.6px; }
  .source-heading-actions { width: 100%; display: grid; grid-template-columns: 1fr 1fr; margin-top: 0; }
  .source-heading-actions .btn { width: 100%; min-width: 0; }
  .source-overview-aside { grid-template-columns: 1fr; }
  .source-preview-panel,
  .source-summary-panel,
  .source-description-card,
  .source-index-card,
  .source-archive-summary,
  .source-history { padding: 17px; border-radius: 13px; }
  .source-panel-head { align-items: flex-start; flex-direction: column; gap: 5px; }
  .source-main-shot { border-radius: 9px; }
  .source-main-shot > span { display: none; }
  .source-section-title { display: grid; }
  .source-editorial-badge { width: fit-content; }
  .source-content-stats { padding: 20px 17px; }
  .source-content-stats > dl { grid-template-columns: repeat(2, 1fr); gap: 18px 0; }
  .source-content-stats > dl > div:nth-child(odd) { border-left: 0; padding-left: 0; }
  .source-content-stats > dl.is-expanded > div:nth-child(n+3) { padding-top: 17px; border-top: 1px solid #edf0f4; }
  .source-history-head { align-items: flex-start; flex-direction: column; gap: 11px; }
  .source-history-entry { grid-template-columns: 1fr; padding: 12px; }
  .source-history-shot { aspect-ratio: 16 / 8; }
  .source-history-main h3 { white-space: normal; }
  .source-history-side { grid-column: auto; grid-template-columns: 1fr; gap: 13px; }
  .source-history-actions { grid-template-columns: 1fr 1fr; }
  .source-related-grid { grid-template-columns: 1fr; }
  .source-related-card h3,
  .source-related-card p { min-height: 0; }
  .search-page .search-form { gap:8px; }
  .search-page .search-input { padding-right:42px; }
  .search-tabs { overflow-x:auto; }
  .result-card { padding-left:70px; }
  .result-category { position:static; display:block; margin-top:7px; }
  .results-side { grid-template-columns:1fr; }
}

@media (max-width: 470px) {
  .hero h1 { font-size:32px; }
  .search-form { display:grid; grid-template-columns:1fr; }
  .search-form .btn { width:100%; }
  .site-card, .catalog-grid .site-card { grid-template-columns:1fr; }
  .site-shot, .catalog-grid .site-shot { grid-row:auto; height:145px; }
  .site-card h3 { margin-top:12px; }
  .site-card .card-actions { grid-column:auto; }
  .catalog-head { display:block; }
  .count-card { margin:0 0 18px; }
  .catalog-head .search-form { display:grid; }
  .sort-row .select { width:100%; }
  .detail-shot { height:245px; padding:14px; }
  .news-body { padding:12px 9px; gap:9px; }
  .info-actions { grid-template-columns:1fr; }
  .meta-row { grid-template-columns:1fr; gap:4px; }
  .spec-row { grid-template-columns:1fr; gap:2px; margin-bottom:8px; }
  .source-facts > div { grid-template-columns: 1fr; gap: 4px; }
  .source-facts dd { max-width: none; text-align: left; }
  .source-heading-actions { grid-template-columns: 1fr; }
  .search-page .search-form { grid-template-columns:1fr; }
  .clear-search { top:28px; }
  .result-card h3 { padding-right:0; font-size:15px; }
  .results-pagination { gap:6px; }
}

/* Secondary MVP pages */
.inner-page { padding: 28px 0 8px; }
.panel { border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.soft-icon { width: 48px; height: 48px; border-radius: 11px; display: grid; place-items: center; background: #edf4ff; color: var(--blue); }
.soft-icon svg { width: 26px; height: 26px; }

/* Authentication */
.auth-page { min-height: 740px; padding: 74px 0 52px; }
.auth-title { text-align: center; margin-bottom: 42px; }
.auth-title h1 { margin: 0 0 9px; font-size: 36px; letter-spacing: -.9px; }
.auth-title p { margin: 0; color: var(--muted); font-size: 16px; }
.auth-card { width: min(490px,100%); margin: 0 auto; padding: 31px; border: 1px solid var(--line); border-radius: 12px; background: #fff; box-shadow: 0 12px 38px rgba(31,52,82,.04); }
.sg-registration-consents{display:grid;gap:12px;margin:2px 0 18px;padding:16px;border:1px solid #dce5f0;border-radius:10px;background:#f8faff}.sg-registration-consents legend{padding:0 7px;color:#31435d;font-size:13px;font-weight:750}.sg-registration-consents label{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;color:#45556c;font-size:13px;line-height:1.5}.sg-registration-consents input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--blue)}.sg-registration-consents a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}.sg-registration-consents small{color:#718097;font-size:11px;line-height:1.5}.sg-register-form .sg-oauth-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.sg-register-form .sg-oauth-divider{grid-column:1/-1;display:flex;align-items:center;gap:10px;color:#7a8495;font-size:12px;text-align:center}.sg-register-form .sg-oauth-divider:before,.sg-register-form .sg-oauth-divider:after{content:"";height:1px;flex:1;background:var(--line)}
@media(max-width:560px){.sg-register-form .sg-oauth-buttons{grid-template-columns:1fr}}
.form-group { margin-bottom: 20px; }
.form-label { display: block; margin-bottom: 8px; font-weight: 600; }
.input-wrap { position: relative; }
.input-wrap svg { pointer-events: none; }
.input-wrap > svg { position: absolute; left: 16px; top: 50%; width: 20px; height: 20px; color: #697489; transform: translateY(-50%); }
.form-input { width: 100%; height: 48px; padding: 0 46px 0 50px; border: 1px solid #cfd6e2; border-radius: 8px; outline: none; color: var(--text); background: #fff; }
.form-input:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(9,103,242,.08); }
.form-input::placeholder { color: #9099aa; }
.eye { position: absolute; right: 14px; top: 50%; width: 23px; height: 23px; border: 0; display: grid; place-items: center; background: none; color: #677286; transform: translateY(-50%); }
.auth-options { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: -2px 0 21px; color: #657086; font-size: 13px; }
.auth-options label { display: flex; align-items: center; gap: 8px; }
.auth-options input { width: 16px; height: 16px; margin: 0; accent-color: var(--blue); }
.auth-link { color: var(--blue); }
.auth-submit { width: 100%; }
.auth-divider { display: flex; align-items: center; gap: 18px; margin: 24px 0; color: #7a8495; font-size: 13px; }
.auth-divider::before, .auth-divider::after { content:""; height:1px; flex:1; background:var(--line); }
.social-login { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.social-login .btn { min-height: 47px; padding: 0 12px; font-weight: 500; }
.provider-icon { width: 21px; height: 21px; display: grid; place-items:center; font-weight:800; }
.provider-icon.google { color:#2d78e8; }
.provider-icon.yandex { color:#e92722; font-size:20px; }
.provider-icon.vk { border-radius:5px; color:#fff; background:#1677ee; font-size:10px; }
.auth-below { margin-top: 20px; text-align: center; color: #778195; }
.auth-security { display:flex; align-items:center; justify-content:center; gap:8px; margin-top:25px; color:#7b8598; font-size:13px; }
.auth-security svg { width:15px; height:15px; }
.auth-benefits { width:min(760px,100%); margin:-19px auto 30px; padding:20px 22px; border:1px solid #dce7f5; border-radius:14px; background:linear-gradient(135deg,#f7faff 0%,#fff 72%); box-shadow:0 12px 32px rgba(31,74,130,.05); }
.auth-benefits-head { display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin-bottom:17px; }
.auth-benefits-head strong { color:#13243d; font-size:16px; }
.auth-benefits-head span { color:#6d7c91; font-size:13px; text-align:right; }
.auth-benefits-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.auth-benefits-grid div { min-width:0; padding:13px 14px; border:1px solid #e2eaf5; border-radius:10px; background:#fff; }
.auth-benefits-grid b,.auth-benefits-grid span { display:block; }
.auth-benefits-grid b { margin-bottom:4px; color:#0b63ce; font-size:14px; }
.auth-benefits-grid span { color:#6f7d90; font-size:12px; line-height:1.45; }
.register-page { padding-top: 52px; }
.register-card { width:min(955px,100%); margin:0 auto; padding:36px; display:grid; grid-template-columns:1.15fr .85fr; gap:43px; border:1px solid var(--line); border-radius:13px; }
.register-card h1 { margin:0 0 8px; font-size:36px; }
.register-lead { margin:0 0 27px; color:var(--muted); }
.register-form .form-group { margin-bottom:15px; }
.consent { display:flex; gap:10px; margin:12px 0; color:#586376; font-size:12px; }
.consent input { flex:0 0 auto; width:16px; height:16px; margin:1px 0 0; accent-color:var(--blue); }
.register-benefits { padding-left:43px; border-left:1px solid var(--line); }
.account-illustration { height:190px; position:relative; margin-bottom:13px; }
.account-window { position:absolute; left:50%; top:35px; width:180px; height:110px; border:1px solid #c8ddfb; border-radius:9px; background:linear-gradient(#edf5ff,#fff); transform:translateX(-30%); box-shadow:0 15px 30px rgba(62,115,195,.12); }
.account-window::before { content:""; display:block; height:20px; border-bottom:1px solid #d7e4f6; background:#ddecff; }
.account-window::after { content:"✓"; position:absolute; right:16px; bottom:16px; width:38px; height:45px; clip-path:polygon(50% 0,100% 17%,88% 74%,50% 100%,12% 74%,0 17%); display:grid; place-items:center; color:#fff; background:#5f9ff4; font-size:23px; font-weight:800; }
.account-card-mini { position:absolute; left:38px; top:61px; width:70px; height:88px; border-radius:8px; background:linear-gradient(145deg,#d3e6ff,#f1f7ff); }
.account-card-mini::after { content:""; position:absolute; left:20px; top:19px; width:30px; height:30px; border:3px solid #fff; border-radius:50%; box-shadow:0 24px 0 4px #fff; }
.register-benefits h2 { margin:0 0 21px; font-size:18px; }
.register-benefit { display:grid; grid-template-columns:46px 1fr; gap:14px; align-items:start; margin-bottom:22px; }
.register-benefit .soft-icon { width:46px; height:46px; color:#5c687c; background:#f3f5f8; }
.register-benefit strong { display:block; margin-bottom:4px; font-size:14px; }
.register-benefit span { color:var(--muted); font-size:12px; }



@media (max-width: 900px) {
  .register-card { grid-template-columns:1fr; }
  .register-benefits { padding:25px 0 0; border-left:0; border-top:1px solid var(--line); }
}
@media (max-width: 680px) {
  .inner-page { padding-top:20px; }
  .auth-title h1 { font-size:30px; }
  .auth-page { min-height:0; padding-top:42px; }
  .auth-card { padding:23px 18px; }
  .auth-benefits { margin-top:-20px; padding:17px; }
  .auth-benefits-head { display:block; }
  .auth-benefits-head span { display:block; margin-top:5px; text-align:left; }
  .auth-benefits-grid { grid-template-columns:1fr; gap:8px; }
  .social-login { grid-template-columns:1fr; gap:9px; }
  .register-card { padding:23px 18px; }
  .register-card h1 { font-size:30px; }
}
@media (max-width: 440px) {
  .auth-options { align-items:flex-start; flex-direction:column; }
}


/* Shared utilities */
.header-login,.header-register,.header-role-link{flex:0 0 auto;min-height:40px;padding:0 14px;border:1px solid #dce5f1;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#2866b7;background:#fff;font-size:13px;font-weight:700}
.header-login:hover,.header-register:hover,.header-role-link:hover{border-color:#b6cff2;background:#f5f9ff}
.header-register{border-color:#c8daf3;color:#0a61d3;background:#f5f9ff}
.account-header-actions.is-guest .header-login,.account-header-actions.is-guest .header-register,.account-header-actions.is-guest .header-submit{box-sizing:border-box;width:136px;min-width:136px;height:40px;padding:0 12px}
.account-header-actions{position:relative;margin-left:auto;display:flex;align-items:center;gap:8px}
.user-menu summary{list-style:none;cursor:pointer;min-height:42px;padding:0 9px 0 4px;border:1px solid transparent;border-radius:11px;display:flex;align-items:center;gap:8px;color:#26354a;font-size:13px}
.user-menu summary strong{display:none}.user-menu summary>span:last-child{margin-left:-3px;color:#78879a;font-size:11px}
.user-menu summary:hover{border-color:#e0e7f0;background:#f7f9fc}
.user-menu summary::-webkit-details-marker{display:none}
.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#edf3fb,#d4e0ef);color:#263348;font-size:12px;font-weight:750}
.user-dropdown{position:absolute;z-index:30;right:0;top:50px;width:210px;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow)}
.user-dropdown a{display:block;padding:9px 10px;border-radius:7px}.user-dropdown a:hover{color:var(--blue);background:var(--soft)}
.form-message{margin-bottom:16px;padding:11px 13px;border-radius:8px;font-size:13px}
.form-message-error{border:1px solid #f4bbbb;color:#b42318;background:#fff3f2}
.demo-access{margin-top:13px;color:var(--muted);font-size:12px;text-align:center}
.tone-green{color:#0aa957!important;background:#edf9f1!important}
.tone-purple{color:#7b42e4!important;background:#f4edff!important}
.tone-orange{color:#e88111!important;background:#fff5e9!important}
.tone-blue{color:var(--blue)!important;background:#eef4ff!important}
.text-green{color:#18ad5d!important}.text-slate{color:#526176!important}.text-blue{color:var(--blue)!important}.text-muted{color:var(--muted)!important}.text-muted-small{color:var(--muted)!important;font-size:11px!important}
.quality-high{color:var(--green);font-size:16px;font-weight:700}
.thumb-tools{background:linear-gradient(135deg,#eef5ff,#7eb2fa)!important}.thumb-home{background:linear-gradient(135deg,#efe8dc,#b9a68e)!important}.thumb-study{background:linear-gradient(135deg,#5122e8,#a66bff)!important}.thumb-travel{background:linear-gradient(135deg,#0ca9cc,#f1a552)!important}
.logo-prohi{color:#dc9921!important;background:#fff0cb!important}.logo-hitech{color:#fff!important;background:#1772eb!important}
.push-right{margin-left:auto;align-self:center}.margin-top-13{margin-top:13px}.link-compact-top{margin-top:17px;font-size:11px}.page-number-wide{width:62px}.width-85{width:85%}
@media(max-width:1240px){.header-inner{gap:22px}.user-menu summary strong{display:none}.main-nav{gap:2px}.nav-link{padding-inline:10px}.account-header-actions{gap:6px}}
@media(max-width:1080px){.main-nav,.header-login,.header-role-link,.account-header-actions{display:none}.mobile-nav{display:block}}
@media(max-width:900px){.header-login,.header-role-link,.account-header-actions{display:none}}
@media(max-width:1500px){.user-menu summary strong,.user-menu summary>span:last-child{display:none}.user-menu summary{padding-right:4px}.header-inner{gap:22px}.main-nav{gap:2px}.nav-link{padding-inline:10px}.account-header-actions{gap:6px}}
@media(max-width:1180px){.main-nav,.header-login,.header-role-link,.account-header-actions{display:none}.mobile-nav{display:block}}
@media(min-width:1181px){.main-nav{position:absolute;left:50%;transform:translateX(-50%)}}

/* Live catalog and shared category labels */
.home-source-category {
  align-self: flex-start;
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  margin: -4px 0 15px;
  padding: 0 10px;
  border: 1px solid #dce8f9;
  border-radius: 999px;
  color: #2865b8;
  background: #f4f8ff;
  font-size: 11px;
  font-weight: 700;
}
.home-source-category:hover { border-color: #aecdFA; background: #edf5ff; }

.catalog-page { padding: 40px 0 10px; }
.catalog-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 24px;
}
.catalog-hero h1 { margin: 5px 0 8px; font-size: 42px; line-height: 1.12; letter-spacing: -1.2px; }
.catalog-hero p { max-width: 720px; margin: 0; color: var(--muted); font-size: 15px; line-height: 1.6; }
.catalog-total {
  display: flex;
  min-width: 190px;
  align-items: center;
  gap: 13px;
  padding: 15px 18px;
  border: 1px solid #dbe4f1;
  border-radius: 13px;
  background: linear-gradient(145deg, #f5f9ff, #fff);
}
.catalog-total strong { color: var(--blue); font-size: 28px; line-height: 1; }
.catalog-total span { color: #66758a; font-size: 11px; line-height: 1.4; }

.catalog-search-panel {
  display: grid;
  grid-template-columns: minmax(320px, 1fr) minmax(250px, 340px) auto auto;
  align-items: end;
  gap: 12px;
  padding: 18px;
  border: 1px solid #dce4ef;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(30, 50, 78, .04);
}
.catalog-search-panel label > span,
.catalog-sort label { color: #68768a; font-size: 11px; font-weight: 700; }
.catalog-search-panel label > span { display: block; margin-bottom: 7px; }
.catalog-search-panel select,
.catalog-sort select,
.catalog-search-input > div {
  height: 46px;
  border: 1px solid #ccd7e6;
  border-radius: 9px;
  color: var(--text);
  background: #fff;
}
.catalog-search-input > div { display: flex; align-items: center; gap: 10px; padding: 0 14px; }
.catalog-search-input svg { width: 19px; height: 19px; flex: 0 0 auto; color: #718096; }
.catalog-search-input input { width: 100%; height: 100%; border: 0; outline: 0; color: var(--text); background: transparent; font: inherit; }
.catalog-search-panel select { width: 100%; padding: 0 38px 0 13px; }
.catalog-search-panel > .btn { min-width: 118px; height: 46px; }
.catalog-clear { display: inline-flex; height: 46px; align-items: center; color: #66758a; font-size: 12px; font-weight: 650; }

.catalog-categories { margin-top: 34px; scroll-margin-top: 90px; }
.catalog-section-head,
.catalog-results-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 17px;
}
.catalog-section-head h2,
.catalog-results-head h2 { margin: 4px 0 0; font-size: 25px; line-height: 1.2; letter-spacing: -.45px; }
.catalog-section-head > a {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  gap: 8px;
  padding: 0 13px;
  border: 1px solid #dce5f1;
  border-radius: 9px;
  color: #5f6e83;
  background: #fff;
  font-size: 12px;
}
.catalog-section-head > a strong { color: var(--blue); }
.catalog-section-head > a.is-current { border-color: #accbf6; color: var(--blue); background: #f4f8ff; }
.catalog-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.catalog-category-card {
  position: relative;
  display: grid;
  min-height: 106px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-content: start;
  gap: 7px 12px;
  padding: 15px;
  border: 1px solid #dfe5ee;
  border-radius: 12px;
  background: #fff;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.catalog-category-card:hover { transform: translateY(-2px); border-color: #bad1f2; box-shadow: 0 9px 24px rgba(35, 63, 99, .07); }
.catalog-category-card > span { overflow: hidden; font-size: 13px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.catalog-category-card > strong { display: grid; min-width: 26px; height: 26px; place-items: center; border-radius: 999px; color: var(--blue); background: #edf5ff; font-size: 11px; }
.catalog-category-card > small { grid-column: 1 / -1; color: #7a8799; font-size: 10.5px; line-height: 1.45; }
.catalog-category-card.is-active { border-color: var(--blue); box-shadow: 0 0 0 2px rgba(9, 103, 242, .08); }
.catalog-category-card.is-active > span { color: var(--blue); }
.catalog-category-card.is-empty { background: #fbfcfe; }
.catalog-category-card.is-empty > strong { color: #8a96a7; background: #f0f3f7; }

.catalog-results { margin-top: 42px; }
.catalog-results-head p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.catalog-found { padding: 8px 12px; border-radius: 999px; color: #67758a; background: #f1f5fa; font-size: 11px; white-space: nowrap; }
.catalog-found strong { color: var(--text); font-size: 13px; }
.catalog-sort {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 10px;
  margin-bottom: 17px;
  padding: 11px 13px;
  border: 1px solid #e1e6ed;
  border-radius: 11px;
  background: #f8fafc;
}
.catalog-sort label { display: grid; gap: 5px; }
.catalog-sort select { min-width: 180px; height: 38px; padding: 0 34px 0 11px; }
.catalog-sort .btn { min-height: 38px; padding: 0 15px; background: #fff; }
.catalog-source-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.catalog-source-card { overflow: hidden; min-width: 0; border: 1px solid #dde4ed; border-radius: 14px; background: #fff; box-shadow: 0 9px 28px rgba(27, 50, 82, .04); transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.catalog-source-card:hover { transform: translateY(-3px); border-color: #bfd3ef; box-shadow: 0 15px 34px rgba(27, 50, 82, .09); }
.catalog-source-shot { position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 10; border-bottom: 1px solid #e1e6ee; background: #edf2f7; }
.catalog-source-shot img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top; transition: transform .25s ease, filter .25s ease; }
.catalog-source-shot > span { position: absolute; right: 11px; bottom: 11px; padding: 7px 9px; border-radius: 8px; color: #fff; background: rgba(16, 31, 53, .8); font-size: 10px; font-weight: 700; opacity: 0; transform: translateY(4px); transition: .2s ease; }
.catalog-source-shot:hover img { transform: scale(1.015); filter: brightness(.94); }
.catalog-source-shot:hover > span { opacity: 1; transform: translateY(0); }
.catalog-image-zoom-overlay { position: fixed; inset: 0; z-index: 1005; display: grid; place-items: center; padding: 16px; box-sizing: border-box; background: rgba(13,31,55,.5); cursor: zoom-out; }
.catalog-image-zoom-overlay[hidden] { display: none; }
.catalog-image-zoom-open { overflow: hidden; }
.catalog-image-zoom { width: min(800px, calc(100vw - 32px)); aspect-ratio: 16 / 10; overflow: hidden; border: 7px solid rgba(255,255,255,.96); border-radius: 18px; background: #edf2f8; box-shadow: 0 30px 90px rgba(13,31,55,.34), 0 0 0 1px rgba(79,108,145,.18); opacity: 0; transform: translateY(8px) scale(.985); transition: opacity .14s ease, transform .14s ease; }
.catalog-image-zoom.is-visible { opacity: 1; transform: none; }
.catalog-image-zoom img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top; background: #edf2f8; }
.catalog-source-body { display: flex; min-height: 286px; flex-direction: column; padding: 17px; }
.catalog-source-meta { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.catalog-source-meta a { overflow: hidden; padding: 5px 8px; border-radius: 999px; color: #2865b8; background: #edf5ff; font-size: 10px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.catalog-source-meta > span { color: #8a96a7; font-size: 10px; white-space: nowrap; }
.catalog-source-body h3 { display: -webkit-box; min-height: 44px; margin: 13px 0 4px; overflow: hidden; color: #182235; font-size: 16px; line-height: 1.38; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.catalog-source-body h3 a:hover { color: var(--blue); }
.catalog-source-domain { overflow: hidden; color: var(--blue); font-size: 11px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.catalog-source-body > p { display: -webkit-box; min-height: 58px; margin: 12px 0 16px; overflow: hidden; color: #687589; font-size: 12px; line-height: 1.6; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.catalog-source-actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 13px; border-top: 1px solid #edf0f4; }
.catalog-source-actions .btn { min-height: 35px; padding: 0 11px; font-size: 11px; }
.catalog-source-actions > a:last-child { color: var(--blue); font-size: 11px; font-weight: 700; white-space: nowrap; }
.catalog-empty { display: grid; min-height: 220px; place-content: center; gap: 7px; border: 1px dashed #cfd9e7; border-radius: 14px; color: var(--muted); background: #f8fafc; text-align: center; }
.catalog-empty strong { color: var(--text); font-size: 17px; }
.catalog-empty a { color: var(--blue); font-size: 12px; font-weight: 700; }

.source-heading-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 9px 12px; margin-top: 5px; }
.source-heading-meta .source-domain { margin-top: 0; }
.source-category-link,
.source-category-row a,
.source-related-category {
  display: inline-flex;
  align-items: center;
  border: 1px solid #dce7f6;
  color: #2968bd;
  background: #f3f8ff;
  font-weight: 700;
}
.source-category-link { min-height: 27px; padding: 0 9px; border-radius: 999px; font-size: 10px; }
.source-category-row { display: flex; align-items: center; gap: 9px; margin: -6px 0 19px; }
.source-category-row > span { color: #68758a; font-size: 11px; font-weight: 650; }
.source-category-row a { min-height: 29px; padding: 0 10px; border-radius: 8px; font-size: 11px; }
.source-history-badges a { padding: 5px 7px; border-radius: 7px; color: #2c66af; background: #edf5ff; font-size: 9px; font-weight: 750; }
.source-related-category { align-self: flex-start; min-height: 24px; margin-top: 5px; padding: 0 8px; border-radius: 999px; font-size: 9px; }

@media (max-width: 1100px) {
  .catalog-category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .catalog-source-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .catalog-search-panel { grid-template-columns: minmax(0, 1fr) minmax(230px, .55fr) auto; }
  .catalog-clear { grid-column: 1 / -1; height: auto; }
}
@media (max-width: 760px) {
  .catalog-page { padding-top: 25px; }
  .catalog-hero { align-items: stretch; flex-direction: column; }
  .catalog-hero h1 { font-size: 34px; }
  .catalog-total { align-self: flex-start; }
  .catalog-search-panel { grid-template-columns: 1fr; }
  .catalog-search-panel > .btn { width: 100%; }
  .catalog-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .catalog-sort { align-items: stretch; flex-direction: column; }
  .catalog-sort select { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .catalog-image-zoom { transition: none; }
}
@media (max-width: 560px) {
  .catalog-section-head, .catalog-results-head { align-items: flex-start; flex-direction: column; }
  .catalog-category-grid, .catalog-source-grid { grid-template-columns: 1fr; }
  .catalog-category-card { min-height: 94px; }
  .catalog-source-body { min-height: 0; }
  .catalog-source-actions { align-items: stretch; flex-direction: column; }
  .catalog-source-actions .btn, .catalog-source-actions > a:last-child { justify-content: center; text-align: center; }
}

/* Catalog with sidebar */
.catalog-breadcrumbs { margin-bottom: 22px; }
.catalog-search-bar {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 25px;
  padding: 13px;
  border: 1px solid #dce4ef;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(30, 50, 78, .04);
}
.catalog-search-bar label {
  display: flex;
  min-width: 0;
  height: 46px;
  flex: 1;
  align-items: center;
  gap: 11px;
  padding: 0 14px;
  border: 1px solid #cdd8e7;
  border-radius: 9px;
}
.catalog-search-bar label:focus-within { border-color: #8db7f2; box-shadow: 0 0 0 3px rgba(9,103,242,.08); }
.catalog-search-bar svg { width: 20px; height: 20px; flex: 0 0 auto; color: #748197; }
.catalog-search-bar input { width: 100%; height: 100%; border: 0; outline: 0; color: var(--text); background: transparent; font: inherit; }
.catalog-search-bar .btn { min-width: 118px; height: 46px; }
.catalog-search-bar > a { padding: 0 8px; color: #647389; font-size: 12px; font-weight: 650; }

.catalog-layout-live {
  display: grid;
  grid-template-columns: 272px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}
.catalog-sidebar {
  position: static;
  display: flex;
  max-height: none;
  overflow: visible;
  flex-direction: column;
  border: 1px solid #dce4ee;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(28, 50, 78, .035);
}
.catalog-sidebar-form { display: flex; min-height: 0; flex-direction: column; }
.catalog-sidebar-section { padding: 17px; border-bottom: 1px solid #e6eaf0; }
.catalog-sidebar-section:last-child { border-bottom: 0; }
.catalog-sidebar-title { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 11px; }
.catalog-sidebar-title > span { color: #1c283a; font-size: 13px; font-weight: 800; }
.catalog-sidebar-title > a { color: var(--blue); font-size: 10px; font-weight: 650; }
.catalog-sidebar-hint { margin: -5px 0 10px; color: #8994a4; font-size: 10px; line-height: 1.4; }
.catalog-category-list { display: grid; gap: 2px; }
.catalog-category-list > label {
  display: grid;
  min-height: 34px;
  grid-template-columns: 16px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  margin: 0 -7px;
  padding: 0 7px;
  border-radius: 7px;
  color: #536175;
  font-size: 11px;
  cursor: pointer;
}
.catalog-category-list > label:hover { color: var(--blue); background: #f5f8fd; }
.catalog-category-list > label.is-active { color: #075fcf; background: #eaf3ff; font-weight: 750; }
.catalog-category-list > label.is-empty { color: #a2aab6; cursor: default; }
.catalog-category-list input { width: 15px; height: 15px; margin: 0; accent-color: var(--blue); }
.catalog-category-list label > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.catalog-category-list strong { display: grid; min-width: 24px; height: 22px; place-items: center; border-radius: 999px; color: #748196; background: #f1f4f8; font-size: 9px; font-weight: 700; }
.catalog-category-list > label.is-active strong { color: #075fcf; background: #fff; }
.catalog-sidebar-filters { display: grid; gap: 13px; background: #fbfcfe; }
.catalog-sidebar-filters .catalog-sidebar-title { margin-bottom: 0; }
.catalog-sidebar-filters label:not(.catalog-check) { display: grid; gap: 6px; color: #6d798c; font-size: 10px; font-weight: 700; }
.catalog-sidebar-filters select { width: 100%; height: 38px; padding: 0 32px 0 10px; border: 1px solid #ced8e6; border-radius: 8px; color: #334157; background: #fff; font: inherit; font-size: 11px; }
.catalog-check { display: flex; align-items: center; gap: 8px; color: #4e5d72; font-size: 11px; cursor: pointer; }
.catalog-check input { width: 15px; height: 15px; margin: 0; accent-color: var(--blue); }
.catalog-sidebar-submit { position: static; padding: 12px 16px; border-top: 1px solid #e0e6ee; background: #fff; }
.catalog-sidebar-submit .btn { width: 100%; min-height: 40px; font-size: 11px; }

.catalog-results-live { min-width: 0; }
.catalog-results-toolbar {
  display: flex;
  min-height: 62px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
  padding: 10px 13px 10px 16px;
  border: 1px solid #dfe5ed;
  border-radius: 11px;
  background: #f8fafc;
}
.catalog-results-toolbar > div { display: flex; align-items: baseline; gap: 6px; }
.catalog-results-toolbar > div strong { color: #172236; font-size: 20px; }
.catalog-results-toolbar > div span { color: #778396; font-size: 11px; }
.catalog-results-toolbar form { display: flex; align-items: flex-end; gap: 8px; }
.catalog-results-toolbar label { display: grid; gap: 4px; color: #798598; font-size: 9px; font-weight: 700; }
.catalog-results-toolbar select { min-width: 140px; height: 34px; padding: 0 30px 0 9px; border: 1px solid #ccd6e4; border-radius: 7px; color: #354258; background: #fff; font: inherit; font-size: 10px; }
.catalog-results-toolbar label:nth-of-type(2) select { min-width: 92px; }
.catalog-results-toolbar button { height: 34px; padding: 0 11px; border: 1px solid #cbd6e5; border-radius: 7px; color: #2865b8; background: #fff; font: inherit; font-size: 10px; font-weight: 700; cursor: pointer; }

.catalog-results-live .catalog-source-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.catalog-results-live .catalog-source-card { border-radius: 12px; }
.catalog-results-live .catalog-source-shot { aspect-ratio: 16 / 9; }
.catalog-results-live .catalog-source-body { min-height: 238px; padding: 14px; }
.catalog-results-live .catalog-source-meta a { max-width: 58%; padding: 4px 7px; font-size: 9px; }
.catalog-results-live .catalog-source-meta > span { font-size: 9px; }
.catalog-source-body h2 {
  display: -webkit-box;
  min-height: 57px;
  margin: 10px 0 3px;
  overflow: hidden;
  color: #172135;
  font-size: 14px;
  line-height: 1.35;
  letter-spacing: -.15px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.catalog-source-body h2 a:hover { color: var(--blue); }
.catalog-results-live .catalog-source-domain { font-size: 10px; }
.catalog-results-live .catalog-source-body > p {
  display: -webkit-box;
  height: 66px;
  min-height: 66px;
  margin: 8px 0 11px;
  overflow: hidden;
  font-size: 10.5px;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}
.catalog-source-facts { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin: 0 0 10px; }
.catalog-source-facts > span { display: inline-flex; min-height: 21px; align-items: center; gap: 5px; padding: 0 7px; border-radius: 999px; color: #657287; background: #f2f5f8; font-size: 8.5px; font-weight: 700; }
.catalog-source-facts > span:first-child { color: #147946; background: #ecf8f1; }
.catalog-source-facts i { width: 5px; height: 5px; border-radius: 50%; background: #19ad61; }
.catalog-results-live .catalog-source-actions { padding-top: 10px; }
.catalog-results-live .catalog-source-actions .btn { min-height: 31px; padding: 0 9px; font-size: 10px; }
.catalog-results-live .catalog-source-actions > a:last-child { font-size: 10px; }
.catalog-results-live .catalog-source-actions > a:last-child { display: inline-flex; align-items: center; gap: 5px; }
.catalog-results-live .catalog-source-actions > a:last-child span { font-size: 14px; }

@media (max-width: 1020px) {
  .catalog-layout-live { grid-template-columns: 235px minmax(0, 1fr); gap: 18px; }
  .catalog-results-live .catalog-source-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .catalog-layout-live { grid-template-columns: 1fr; }
  .catalog-sidebar { position: static; max-height: none; }
  .catalog-category-list { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 10px; }
  .catalog-results-toolbar { align-items: flex-start; flex-direction: column; }
  .catalog-results-toolbar form { width: 100%; flex-wrap: wrap; }
  .catalog-results-toolbar label { flex: 1; }
  .catalog-results-toolbar select { width: 100%; }
  .catalog-search-bar { align-items: stretch; flex-wrap: wrap; }
  .catalog-search-bar label { flex: 1 1 100%; }
  .catalog-search-bar .btn { flex: 1; }
}
@media (max-width: 640px) {
  .catalog-results-live .catalog-source-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .catalog-category-list { grid-template-columns: 1fr; }
  .catalog-results-toolbar form { display: grid; grid-template-columns: 1fr; }
  .catalog-results-live .catalog-source-actions { flex-direction: row; }
}

/* Request intake */
.request-page{max-width:820px;padding-top:36px;padding-bottom:56px}
.request-page h1{margin-bottom:16px}.request-form{display:grid;gap:20px;margin-top:24px}
.request-form>label{display:grid;gap:8px;font-size:14px}
.request-form input:not([type=checkbox]),.request-form textarea{width:100%;box-sizing:border-box;border:1px solid #dbe3ed;border-radius:8px;padding:11px 14px;font:inherit;background:#fff;color:#182332}
.request-form input:not([type=checkbox]),.request-form button{min-height:44px;height:44px}
.request-form textarea{resize:vertical;min-height:150px}.request-form button{justify-self:start}
.request-form .request-consent{display:flex;align-items:flex-start;gap:10px;line-height:1.6}.request-consent input{margin-top:5px;flex:none}
.request-notice,.request-error{padding:16px;border-radius:8px;margin:20px 0;overflow-wrap:anywhere}.request-notice{background:#eef7f0;color:#255339}.request-error{background:#fff0f0;color:#992828}

/* Complaint action in a source card. */
.source-heading-actions .source-report-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 50px;width:50px;height:50px;min-width:50px;min-height:50px;padding:0;border:1px solid #f0c5c5;border-radius:10px;background:#fff0f0;color:#c93535;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.source-heading-actions .source-report-button svg{width:22px;height:22px}
.source-heading-actions .source-report-button:hover{background:#ffe0e0;color:#ab2424;border-color:#de9696}
.source-heading-actions .source-report-button:focus-visible{outline:2px solid #111;outline-offset:3px}
.request-form select{width:100%;height:44px;box-sizing:border-box;border:1px solid #dbe3ed;border-radius:8px;padding:0 14px;font:inherit;background:#fff;color:#182332}
.request-form input[readonly]{background:#f6f8fb;color:#586575}

/* Complaint dialog: shared public interface. */
.footer-complaint-link{padding:0;border:0;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer}
.footer-complaint-link:hover{color:var(--blue)}
html.complaint-open{height:auto;overflow-x:hidden;overflow-y:auto}
.complaint-dialog{box-sizing:border-box;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:28px;border:1px solid var(--line);border-radius:18px;color:var(--text);background:#fff;box-shadow:0 24px 80px #10244733;overflow-y:auto}
.complaint-dialog::backdrop{background:rgb(15 23 42 / 45%);backdrop-filter:blur(3px)}
.complaint-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.complaint-dialog h2{margin:4px 0 0;font-size:23px;line-height:1.3}
.complaint-dialog>p{margin:14px 0 20px;color:var(--muted);font-size:14px;line-height:1.6}
.complaint-close{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;padding:8px;border:0;border-radius:9px;background:#f4f6f9;color:#68768a;cursor:pointer}
.complaint-close svg{width:20px;height:20px}.complaint-close:hover{background:#e9edf3;color:#111827}
.complaint-dialog .request-form{max-width:none;margin:0;gap:16px}
.complaint-dialog .request-form input:not([type="checkbox"]):not([type="hidden"]),.complaint-dialog .request-form select{height:44px}
.complaint-dialog .request-form textarea{min-height:100px;resize:vertical}
.complaint-dialog .request-consent{font-size:12px;line-height:1.55}.complaint-dialog .request-consent a{text-decoration:underline;text-underline-offset:2px}
.complaint-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}
.complaint-dialog-actions .btn{height:44px;min-height:44px}
.complaint-dialog [hidden]{display:none!important}
.complaint-dialog button:disabled{opacity:.55;cursor:wait}
@media(max-width:760px){.source-heading-actions{display:flex;flex-wrap:wrap;align-items:center}.source-heading-actions .source-history-button,.source-heading-actions .source-visit-button{flex:1;white-space:nowrap}}
@media(max-width:480px){.complaint-dialog{padding:20px;max-height:calc(100dvh - 24px)}.complaint-dialog h2{font-size:21px}.complaint-dialog-actions .btn{flex:1}}

/* SmartCaptcha feedback follows the public form typography. */
.captcha-control{display:grid;gap:8px;min-width:0}.captcha-control [data-captcha-widget]{height:100px;min-width:0}.captcha-status{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.captcha-control[data-captcha-state="error"] .captcha-status{color:#b42318}.captcha-retry{justify-self:start}.captcha-control noscript{font-size:13px;color:#b42318}
.captcha-control .captcha-retry[hidden]{display:none}.captcha-control .captcha-retry{margin-top:4px}.auth-card .captcha-control{margin-bottom:16px}

.submit-site-dialog .submit-schedule-note{padding:15px 18px;background:#f0f6ff;border-radius:10px;color:#506d91;line-height:1.75}.submit-site-dialog .request-form input:not([type=checkbox]):not([type=hidden]){height:48px;box-sizing:border-box}.submit-site-dialog .btn{min-height:48px}.submit-site-dialog [hidden]{display:none!important}

/* Read-only SEO snapshot, shared markup with independent frontend/admin stylesheets. */
.xtool-domain{display:flex;flex-direction:column;gap:7px;margin:22px 0;padding:18px 22px;border-radius:14px;background:#f4f8ff;color:#173458;font-size:13px}.xtool-domain span{color:#6c7d94;font-size:12px;line-height:1.7}.xtool-report{background:#fff;border-radius:16px;padding:26px;margin:22px 0;min-width:0}.xtool-report-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.xtool-report-head h2{font-size:22px;margin:6px 0;color:#102440}.xtool-source-badge{padding:8px 12px;border-radius:8px;background:#edf4ff;color:#2869c5;font-size:11px;white-space:nowrap}.xtool-report-date{font-size:12px;color:#718299;line-height:1.8;margin:12px 0 22px}.xtool-report-date>span{color:#ac6323}.xtool-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.xtool-metrics article{display:flex;flex-direction:column;gap:9px;background:#f6f9fd;padding:17px;border-radius:12px;min-width:0}.xtool-metrics article>span{font-size:12px;color:#647891;line-height:1.5}.xtool-metrics strong{color:#123353;font-size:25px;overflow-wrap:anywhere}.xtool-metrics small{color:#718299;font-size:11px}.xtool-details{margin-top:20px;border-top:1px solid #edf1f7;padding-top:16px}.xtool-details summary{cursor:pointer;color:#1c426f;font-size:14px;font-weight:600;padding:5px 0}.xtool-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;margin:14px 0}.xtool-facts>div{display:flex;justify-content:space-between;gap:20px;align-items:baseline;padding:13px 0;border-bottom:1px solid #f0f3f8;min-width:0}.xtool-facts dt{font-size:12px;line-height:1.6;color:#718299}.xtool-facts dd{margin:0;font-size:13px;color:#173458;font-weight:600;text-align:right;overflow-wrap:anywhere}.xtool-report-note,.xtool-empty{font-size:12px;line-height:1.8;color:#718299}.xtool-history-chart{width:100%;height:auto;max-height:230px;margin-top:15px;color:#0866f5;fill:currentColor}.xtool-history-chart text{font-family:inherit;font-size:12px;fill:#718299}.xtool-chart-grid{stroke:#e8edf5;fill:none}.xtool-chart-line{stroke:#0866f5;stroke-width:2;fill:none}.xtool-history-values{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.xtool-history-values span{display:flex;gap:12px;font-size:12px;background:#f6f9fd;border-radius:7px;padding:9px 12px;color:#718299}.xtool-history-values strong{color:#173458}
@media(max-width:1100px){.xtool-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.xtool-report{padding:18px}.xtool-report-head{align-items:flex-start;flex-direction:column}.xtool-report-head h2{font-size:19px}.xtool-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.xtool-metrics article{padding:13px}.xtool-facts{grid-template-columns:1fr}.xtool-facts>div{gap:12px}.xtool-metrics strong{font-size:22px}.xtool-domain{padding:16px}.xtool-domain span{overflow-wrap:anywhere}}

/* Live homepage search with per-crawl SG Rank. */
.sg-search .sg-search-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:26px 0}
.sg-search-heading h1{font-size:19px;margin:0}
.sg-search-heading>span{color:#7b8ba1;font-size:12px}
.sg-result-list{display:grid;gap:16px}
.sg-result{display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:28px;padding:26px 28px;background:#fff;border:1px solid #e2e9f3;border-radius:14px}
.sg-result h2{font-size:19px;line-height:1.6;margin:8px 0;color:#075fe5}
.sg-result-main{min-width:0;overflow-wrap:anywhere}
.sg-result-main p{font-size:14px;line-height:1.9;color:#63758b;margin:0 0 14px}
.sg-result-details{font-size:12px}
.sg-result-rank{display:grid;gap:12px;padding:20px;border-radius:12px;background:#f4f8fd}
.sg-result-rank>span{color:#075fe5;font-size:12px;font-weight:700}
.sg-result-rank>strong{font-size:25px;color:#18324d}
.sg-result-rank small{font-size:11px;font-weight:400;color:#7b8ba1;line-height:1.6}
.sg-result-rank progress{width:100%;height:6px;border:0;border-radius:6px;accent-color:#0866ed;overflow:hidden}
.sg-result-rank progress::-webkit-progress-bar{background:#e3ebf8}
.sg-result-rank progress::-webkit-progress-value{background:#0866ed}
.sg-search-empty{padding:48px 30px;background:#f5f8fd;border-radius:16px;text-align:center}
.sg-search-empty h2{font-size:24px}
.sg-search-empty p{font-size:14px;line-height:1.8;color:#63758b}
.sg-search-empty .btn{margin-top:15px}
.sg-search-footnote{color:#7b8ba1;font-size:12px;line-height:1.8;margin-top:24px}

/* Full crawl report: shared by the latest card and every archived version. */
.source-page-detailed { --crawl-line:#e6edf5; --crawl-muted:#65778c; }
.source-page-detailed [id] { scroll-margin-top:24px; }
.source-page-detailed .source-heading { gap:24px; }
.crawl-section-nav { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:0 0 22px; padding:7px; background:#f2f6fb; border-radius:12px; }
.crawl-section-nav a { flex:1; min-height:42px; display:flex; justify-content:center; align-items:center; padding:9px 14px; color:#4a5e77; font-size:13px; font-weight:650; border-radius:8px; white-space:nowrap; transition:background .15s,color .15s; }
.crawl-section-nav a:hover,.crawl-section-nav a:focus-visible { background:#fff; color:#0866f5; box-shadow:0 2px 8px #162f5310; }
.crawl-section-nav a:first-child { color:#0866f5; }
.crawl-archive-notice { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 24px; margin:0 0 20px; border-radius:14px; background:#fff6e9; color:#775321; }
.crawl-archive-notice div { display:grid; gap:6px; font-size:14px; }
.crawl-archive-notice span { font-size:12px; color:#80694c; }
.crawl-archive-notice .btn { background:#fff; flex-shrink:0; min-height:44px; }
.crawl-rating { border-radius:20px; overflow:hidden; background:radial-gradient(ellipse at 18% 0%,#193e74,transparent 65%),#101e34; color:#fff; box-shadow:0 16px 40px #16355614; }
.crawl-rating-main { display:grid; grid-template-columns:166px minmax(0,1fr) minmax(290px,.92fr); gap:28px; align-items:center; padding:30px 32px; }
.crawl-rating-dial { width:166px; height:166px; position:relative; }
.crawl-rating-dial svg { width:100%; height:100%; fill:none; }
.crawl-dial-track { stroke:#ffffff16; stroke-width:7; }
.crawl-dial-fill { stroke:#68adff; stroke-width:7; stroke-linecap:round; }
.crawl-rating-dial>div { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.crawl-rating-dial span { color:#93c3ff; font-size:11px; letter-spacing:1.7px; font-weight:750; }
.crawl-rating-dial strong { font-size:39px; font-weight:750; letter-spacing:-1.8px; line-height:1.4; font-variant-numeric:tabular-nums; }
.crawl-rating-dial small { font-size:12px; color:#c0cde0; }
.crawl-rating-label { text-transform:uppercase; letter-spacing:1.4px; font-size:10px; font-weight:750; color:#8ebeff; }
.crawl-rating-copy h2 { color:#fff; font-size:29px; letter-spacing:-.8px; margin:8px 0 10px; line-height:1.2; }
.crawl-rating-copy p { color:#c4d2e5; font-size:13px; line-height:1.7; max-width:410px; margin:0 0 14px; }
.crawl-rating-status { display:inline-flex; padding:6px 10px; border-radius:7px; font-size:11px; color:#d6eaff; background:#ffffff0c; border:1px solid #a4caff24; }
.crawl-rating-copy>small { display:block; color:#b2c4dd; font-size:11px; margin-top:11px; line-height:1.6; }
.crawl-rating-parts { display:grid; gap:13px; }
.crawl-rating-part { background:#ffffff06; border:1px solid #a2c7ff21; padding:17px 20px; border-radius:12px; }
.crawl-rating-part>div { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.crawl-rating-part>div>span { font-size:13px; color:#e5efff; }
.crawl-rating-part strong { white-space:nowrap; font-size:20px; font-variant-numeric:tabular-nums; }
.crawl-rating-part strong small { color:#bdcce1; font-size:12px; font-weight:400; }
.crawl-rating-part>small { color:#aebed4; display:block; font-size:11px; line-height:1.5; }
.crawl-rating-part progress { appearance:none; display:block; width:100%; height:5px; border:0; overflow:hidden; border-radius:5px; margin:12px 0 10px; background:#ffffff15; }
.crawl-rating-part progress::-webkit-progress-bar { background:#ffffff15; border-radius:5px; }
.crawl-rating-part progress::-webkit-progress-value { background:#69acff; border-radius:5px; }
.crawl-rating-part progress::-moz-progress-bar { background:#69acff; border-radius:5px; }
.crawl-rating-part:last-child progress::-webkit-progress-value { background:#71d5c3; }
.crawl-rating-part:last-child progress::-moz-progress-bar { background:#71d5c3; }
.crawl-rating-bottom { display:flex; gap:24px; align-items:center; padding:18px 32px; border-top:1px solid #ffffff12; background:#070e1c1f; }
.crawl-rating-bottom>span { font-size:12px; color:#bbcee5; white-space:nowrap; }
.crawl-rating-bottom strong { color:#fff; margin-left:8px; }
.crawl-rating-bottom p { color:#b7c7dc; font-size:11px; line-height:1.7; margin:0; flex:1; }
.crawl-rating-bottom a { color:#99c7ff; white-space:nowrap; font-size:12px; font-weight:650; }
.crawl-highlights { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:18px 0; }
.crawl-highlights .crawl-highlight { min-width:0; display:flex; gap:16px; align-items:center; padding:20px; background:#f5f8fc; border-radius:14px; }
.crawl-metric-icon { display:grid; place-items:center; width:43px; height:43px; flex:0 0 43px; border-radius:12px; background:#e7effe; color:#0866f5; font-size:15px; font-weight:750; }
.crawl-highlights .crawl-highlight>div { display:grid; gap:6px; min-width:0; }
.crawl-highlights .crawl-highlight>div>span { font-size:12px; color:#52677f; }
.crawl-highlights strong { font-size:26px; line-height:1.25; letter-spacing:-.6px; color:#142f50; font-variant-numeric:tabular-nums; }
.crawl-highlights small { color:var(--crawl-muted); font-size:11px; line-height:1.5; }
.crawl-highlights .is-unknown,.crawl-seo-metrics .is-unknown { font-size:17px; font-weight:600; letter-spacing:0; }
.crawl-panel { background:#fff; padding:28px; border:1px solid var(--crawl-line); border-radius:16px; margin-top:24px; min-width:0; }
.crawl-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin-bottom:24px; }
.crawl-section-head h2 { font-size:24px; letter-spacing:-.5px; line-height:1.3; margin:7px 0; }
.crawl-section-head p,.crawl-caption { color:var(--crawl-muted); font-size:12px; line-height:1.8; margin:8px 0 0; }
.crawl-provider { display:flex; align-items:center; gap:10px; color:#0866f5; background:#edf4ff; border-radius:10px; font-size:17px; font-weight:750; padding:11px 14px; white-space:nowrap; }
.crawl-provider>span { font-size:12px; font-weight:600; }
.crawl-domain-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); background:#f5f8fc; padding:18px 22px; gap:20px; border-radius:12px; }
.crawl-domain-row>div { display:grid; align-content:start; gap:9px; min-width:0; }
.crawl-domain-row span { color:var(--crawl-muted); font-size:11px; }
.crawl-domain-row strong { color:#213b59; font-size:13px; overflow-wrap:anywhere; line-height:1.5; }
.crawl-empty { display:flex; gap:20px; align-items:center; padding:30px 12px 8px; }
.crawl-empty>span { display:grid; place-items:center; width:64px; height:64px; flex:0 0 64px; color:#7890ad; background:#f2f5fa; border-radius:50%; font-size:21px; font-weight:750; }
.crawl-empty h3 { font-size:17px; margin:0 0 8px; }
.crawl-empty p { font-size:13px; color:var(--crawl-muted); line-height:1.8; margin:0; max-width:800px; }
.crawl-dates { display:flex; flex-wrap:wrap; gap:12px 30px; margin:23px 0; color:var(--crawl-muted); font-size:12px; }
.crawl-dates strong { color:#2f4866; margin-left:8px; font-weight:600; }
.crawl-seo-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.crawl-seo-metrics article { background:#f5f8fc; padding:19px; border-radius:12px; min-width:0; }
.crawl-seo-metrics article>span { display:block; font-size:11px; font-weight:750; color:#356fae; }
.crawl-seo-metrics strong { display:block; font-size:30px; line-height:1.2; color:#142f50; margin:12px 0; font-variant-numeric:tabular-nums; }
.crawl-seo-metrics h3 { margin:0 0 7px; font-size:12px; font-weight:650; }
.crawl-seo-metrics small { font-size:11px; color:var(--crawl-muted); }
.crawl-data-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; margin:26px 0; }
.crawl-data-columns section { min-width:0; }
.crawl-data-columns h3,.crawl-languages h3,.crawl-rank-factor-groups h3 { font-size:15px; margin:0 0 14px; }
.crawl-facts { margin:0; }
.crawl-facts>div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:baseline; gap:18px; padding:13px 0; border-bottom:1px solid var(--crawl-line); }
.crawl-facts dt { font-size:12px; color:var(--crawl-muted); line-height:1.65; }
.crawl-facts dd { margin:0; text-align:right; color:#243d5a; font-size:13px; line-height:1.65; font-weight:600; overflow-wrap:anywhere; }
.crawl-facts dd small { display:block; color:var(--crawl-muted); font-size:11px; font-weight:400; }
.crawl-meta>div { grid-template-columns:96px minmax(0,1fr); }
.crawl-meta dd { text-align:left; font-weight:400; }
.crawl-contact { display:block; margin-bottom:6px; }
.crawl-technical { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 32px; }
.crawl-languages { margin:26px 0; }
.crawl-languages>div,.crawl-history-values { display:flex; flex-wrap:wrap; gap:9px; }
.crawl-languages>div>span,.crawl-history-values>span { display:flex; gap:16px; align-items:center; background:#f4f7fb; border-radius:8px; padding:10px 13px; font-size:12px; color:var(--crawl-muted); }
.crawl-languages strong,.crawl-history-values strong { color:#243d5a; }
.crawl-note { background:#f4f7fb; border-radius:10px; color:#5e728b; font-size:12px; line-height:1.85; padding:16px 20px; margin:22px 0 0; }
.crawl-note>strong { color:#2a435f; }
.crawl-disclosure { border:1px solid var(--crawl-line); border-radius:12px; background:#fff; margin-top:12px; min-width:0; }
.crawl-disclosure>summary { display:flex; align-items:center; gap:20px; padding:18px 20px; cursor:pointer; color:#243d5a; font-size:14px; font-weight:650; list-style:none; border-radius:12px; }
.crawl-disclosure>summary::-webkit-details-marker { display:none; }
.crawl-disclosure>summary::after { content:'+'; font-size:22px; line-height:1; font-weight:400; color:#56769c; }
.crawl-disclosure>summary>span { flex:1; min-width:0; }
.crawl-disclosure[open]>summary::after { content:'−'; }
.crawl-disclosure>summary:hover { background:#f8fafd; }
.crawl-disclosure>summary small { display:block; font-size:11px; color:var(--crawl-muted); font-weight:400; margin-top:5px; line-height:1.5; }
.crawl-disclosure>summary b { white-space:nowrap; color:#6c819a; font-size:11px; font-weight:500; }
.crawl-disclosure>summary b+* { margin-left:0; }
.crawl-disclosure-body { padding:4px 20px 20px; }
.crawl-rank-details { margin:0 0 24px; }
.crawl-rank-factor-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:14px; }
.crawl-rank-factor-groups section { min-width:0; }
.crawl-table-scroll { overflow:auto; border:1px solid var(--crawl-line); border-radius:10px; }
.crawl-table { width:100%; border-collapse:collapse; font-size:12px; }
.crawl-table th { padding:12px; text-align:left; background:#f4f7fc; font-size:11px; color:#5e7490; font-weight:600; }
.crawl-table td { padding:13px 12px; border-top:1px solid var(--crawl-line); vertical-align:top; color:#293f59; }
.crawl-table th:not(:first-child),.crawl-table td:not(:first-child) { text-align:right; white-space:nowrap; }
.crawl-table th:first-child { width:55%; min-width:170px; }
.crawl-factor summary { cursor:pointer; line-height:1.6; }
.crawl-factor p { font-size:11px; color:var(--crawl-muted); line-height:1.7; overflow-wrap:anywhere; margin:9px 0; }
.crawl-xt-chart { display:block; width:100%; max-height:270px; margin:16px 0; }
.crawl-xt-chart .crawl-chart-grid { stroke:#e3eaf3; fill:none; }
.crawl-xt-chart polyline { stroke:#0866f5; stroke-width:2.5; fill:none; }
.crawl-xt-chart circle { fill:#0866f5; stroke:#fff; stroke-width:1.5; }
.crawl-xt-chart text { fill:#6c819a; font-size:13px; font-family:inherit; }
.crawl-document-scroll { max-height:450px; overflow:auto; overscroll-behavior:contain; padding-right:8px; scrollbar-width:thin; }
.crawl-document-list { list-style:none; padding:0; margin:0; }
.crawl-document-list>li { display:flex; gap:14px; padding:13px 0; border-top:1px solid var(--crawl-line); font-size:13px; line-height:1.75; color:#3c536c; }
.crawl-document-list>li>div,.crawl-document-list>li>span:last-child { min-width:0; overflow-wrap:anywhere; }
.crawl-document-list strong { font-weight:550; }
.crawl-document-list ul { padding-left:18px; margin:0; }
.crawl-document-list ul li { margin-bottom:8px; }
.crawl-code { flex-shrink:0; align-self:flex-start; padding:3px 8px; color:#466a94; background:#f0f5fc; border-radius:5px; font-size:10px; font-weight:650; }
.crawl-url { display:block; color:#3f79b8; font-size:12px; overflow-wrap:anywhere; }
.crawl-url a:hover { text-decoration:underline; }
.crawl-plain-text { white-space:pre-wrap; font-size:13px; line-height:1.85; color:#3c536c; overflow-wrap:anywhere; }
.crawl-document-sections { margin-top:20px; }
.source-page-detailed .source-history-entry { grid-template-columns:180px minmax(0,1fr) 245px; }
.source-page-detailed .source-history-entry.is-selected { background:#f8fbff; }
.source-page-detailed .source-history-side { min-width:0; }
.source-page-detailed .source-history-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.source-page-detailed .source-history-actions .btn { min-height:42px; padding:9px 10px; }
.source-page-detailed .source-history-actions .crawl-history-open { grid-column:1/-1; font-size:12px; }
.crawl-history-rank { display:flex; align-items:center; justify-content:space-between; color:#0866f5; background:#edf4ff; border-radius:9px; padding:10px 12px; margin-bottom:12px; }
.crawl-history-rank>span { font-size:11px; font-weight:750; text-transform:uppercase; }
.crawl-history-rank strong { font-size:22px; font-variant-numeric:tabular-nums; }
.crawl-history-rank small { font-size:11px; font-weight:400; color:#58779d; }
.source-page-detailed .source-check-icon.is-neutral { color:#856133; background:#fbf3e8; }
.source-page-detailed .source-overview-aside .source-keywords>div { max-height:none; overflow:visible; }
.source-page-detailed .source-main-shot { aspect-ratio:16/10; }
.source-page-detailed .source-main-shot img { height:100%; }
@media(min-width:1101px) {
  .source-page-detailed .source-overview,.source-page-detailed .source-information { grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:22px; }
  .source-page-detailed .source-overview-aside { display:grid; grid-template-rows:auto auto; align-self:stretch; }
}
@media(max-width:1100px) {
  .crawl-rating-main { grid-template-columns:150px minmax(0,1fr); }
  .crawl-rating-dial { width:150px; height:150px; }
  .crawl-rating-parts { grid-column:1/-1; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .crawl-rating-bottom { flex-wrap:wrap; gap:12px 22px; }
  .crawl-rating-bottom p { min-width:50%; }
  .crawl-highlights { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .crawl-rank-factor-groups { grid-template-columns:1fr; }
  .source-page-detailed .source-history-entry { grid-template-columns:150px minmax(0,1fr); }
  .source-page-detailed .source-history-side { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:12px 22px; align-items:center; }
  .source-page-detailed .source-history-side dl { grid-column:1; grid-row:2; }
  .source-page-detailed .source-history-actions { grid-column:2; grid-row:1/3; }
  .crawl-history-rank { margin-bottom:0; }
}
@media(max-width:700px) {
  .crawl-section-nav { gap:3px; padding:5px; }
  .crawl-section-nav a { padding:8px 10px; font-size:12px; flex-basis:29%; }
  .crawl-rating-main { padding:24px 20px; gap:20px 16px; grid-template-columns:120px minmax(0,1fr); }
  .crawl-rating-dial { width:120px; height:120px; }
  .crawl-rating-dial strong { font-size:29px; }
  .crawl-rating-dial span { font-size:9px; }
  .crawl-rating-dial small { font-size:10px; }
  .crawl-rating-copy h2 { font-size:23px; }
  .crawl-rating-copy p { font-size:12px; }
  .crawl-rating-copy>small { font-size:10px; }
  .crawl-rating-status { font-size:10px; padding:5px 7px; }
  .crawl-rating-parts { grid-template-columns:1fr; gap:10px; }
  .crawl-rating-part { padding:15px; }
  .crawl-rating-bottom { padding:17px 20px; display:grid; gap:10px; }
  .crawl-highlights { gap:10px; }
  .crawl-highlights .crawl-highlight { padding:15px; gap:10px; align-items:flex-start; }
  .crawl-metric-icon { width:30px; height:30px; flex-basis:30px; border-radius:8px; font-size:11px; }
  .crawl-highlights strong { font-size:23px; }
  .crawl-highlights .is-unknown { font-size:14px; }
  .crawl-highlights small { font-size:10px; }
  .crawl-panel { padding:20px 18px; }
  .crawl-section-head { gap:12px; margin-bottom:18px; }
  .crawl-section-head h2 { font-size:21px; }
  .crawl-provider { font-size:14px; padding:9px; }
  .crawl-provider>span { display:none; }
  .crawl-domain-row { grid-template-columns:repeat(2,minmax(0,1fr)); padding:16px; gap:19px 16px; }
  .crawl-domain-row strong { font-size:12px; }
  .crawl-empty { gap:14px; padding-top:22px; align-items:flex-start; }
  .crawl-empty>span { width:40px; height:40px; flex-basis:40px; font-size:15px; }
  .crawl-empty h3 { font-size:15px; }
  .crawl-seo-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .crawl-seo-metrics article { padding:16px; }
  .crawl-seo-metrics strong { font-size:26px; }
  .crawl-data-columns,.crawl-technical { grid-template-columns:1fr; gap:24px; }
  .crawl-technical { gap:0; }
  .crawl-meta>div { grid-template-columns:80px minmax(0,1fr); gap:12px; }
  .crawl-note { padding:14px; font-size:11px; }
  .crawl-disclosure>summary { padding:16px 14px; font-size:13px; gap:12px; }
  .crawl-disclosure>summary b { font-size:10px; white-space:normal; text-align:right; }
  .crawl-disclosure-body { padding:0 14px 14px; }
  .crawl-document-list>li { gap:10px; font-size:12px; }
  .crawl-archive-notice { padding:17px; align-items:flex-start; flex-direction:column; gap:14px; }
  .source-page-detailed .source-history-entry { grid-template-columns:1fr; }
  .source-page-detailed .source-history-shot { aspect-ratio:16/7; }
  .source-page-detailed .source-history-side { grid-template-columns:1fr; }
  .source-page-detailed .source-history-actions { grid-column:1; grid-row:auto; }
  .source-page-detailed .source-history-side dl { grid-row:auto; }
}
@media(max-width:700px){.sg-result{grid-template-columns:1fr;padding:20px;gap:16px}.sg-result-rank{grid-template-columns:auto auto;align-items:center;gap:8px 16px}.sg-result-rank progress{display:none}.sg-result-rank>small{grid-column:1/-1}.sg-search-heading{align-items:start!important;flex-direction:column;gap:8px!important}.sg-result h2{font-size:17px}}

/* Compact, consistent SVG icons for the full crawl card. */
.crawl-icon { display:inline-block; vertical-align:middle; flex:0 0 20px; width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.crawl-metric-icon .crawl-icon { width:21px; height:21px; }
.crawl-seo-metrics article>.crawl-seo-icon { display:grid; place-items:center; width:32px; height:32px; border-radius:9px; color:#0866f5; background:#e7effe; }
.crawl-icon-heading { display:flex; align-items:center; gap:9px; }
.crawl-icon-heading .crawl-icon { color:#3979cd; width:18px; height:18px; flex-basis:18px; }
.crawl-rating-bottom a .crawl-icon { width:15px; height:15px; margin-left:4px; }
@media(max-width:600px) { .crawl-metric-icon .crawl-icon { width:18px; height:18px; } }
/* Working account forms. */
.sg-register-form .sg-password-wrap .form-input{padding-left:14px;padding-right:44px}.sg-auth-note{font-size:12px;color:#68778a;line-height:1.6}.sg-form-success{padding:14px;border-radius:8px;background:#edf8f0;color:#267449;font-size:14px;line-height:1.6}.auth-card .form-input{max-width:100%;box-sizing:border-box}.auth-card .auth-submit{min-height:44px}.auth-page .auth-title p{max-width:620px;margin-left:auto;margin-right:auto}

/* SearchGo social sign-in */
.sg-oauth-buttons{display:flex;flex-wrap:wrap;gap:12px;max-width:480px;margin:20px auto}.sg-oauth-buttons form{flex:1;min-width:180px}.sg-oauth-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:12px 18px;border:1px solid #d9dde5;border-radius:10px;font:600 14px Manrope,sans-serif;cursor:pointer;background:#fff;color:#17263c}.sg-oauth-button.is-vk{background:#0077ff;color:#fff;border-color:#0077ff}.sg-oauth-button.is-yandex{background:#212121;color:#fff;border-color:#212121}.sg-oauth-button:focus-visible{outline:3px solid #98bfff;outline-offset:3px}
/* Text search: excerpts, webmaster registration and ordinary link pagination. */
.sg-search-page{padding-top:28px;padding-bottom:40px;color:#172b48}
.sg-search-intro{max-width:1060px;margin-bottom:16px}
.sg-search-eyebrow{display:flex;align-items:center;gap:16px;color:#70809a;font-size:12px;margin-bottom:13px}
.sg-search-eyebrow>span:first-child{font-size:10px;font-weight:800;letter-spacing:.12em;color:#0866f5}
.sg-search-intro h1{font-size:clamp(23px,2vw,27px);line-height:1.3;letter-spacing:-.035em;margin:0 0 17px;color:#101c2d}
.sg-search-page .sg-query-form{display:flex;align-items:stretch;gap:12px;width:100%;max-width:none;margin:0}
.sg-search-page .sg-query-form .search-field{display:flex;align-items:center;flex:1;min-width:0;height:48px;border:1px solid #dbe4f0;border-radius:12px;background:#fff;padding:0 18px;box-shadow:0 3px 14px #183b6a05}
.sg-search-page .sg-query-form .search-field:focus-within{border-color:#0866f5;box-shadow:0 0 0 3px #0866f514}
.sg-search-page .sg-query-form .search-input{height:100%;font-size:15px;min-width:0;padding:0 12px;width:100%;background:transparent}
.sg-search-page .sg-query-form .btn{height:48px;min-height:48px;min-width:132px;border-radius:12px;gap:15px;font-size:14px}
.sg-search-page .sg-query-form svg{width:21px;height:21px;flex:none}
.sg-search-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:34px;align-items:start}
.sg-search-results{min-width:0}
.sg-search-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:42px;border-bottom:1px solid #e6ecf4;color:#718198;font-size:12px}
.sg-search-summary strong{font-weight:600;color:#273953}
.sg-search-tab{display:flex;align-items:center;gap:8px;align-self:stretch;position:relative;font-weight:700;color:#0866f5;font-size:14px}
.sg-search-tab:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:3px;border-radius:3px;background:#0866f5}
.sg-search-tab svg{width:18px;height:18px}
.sg-text-results{list-style:none;padding:0;margin:0}
.sg-text-result{padding:23px 0;margin:0;border-bottom:1px solid #eaf0f6}
.sg-text-source-line{display:flex;align-items:center;min-width:0;margin:0 0 7px 30px}
.sg-text-source{display:inline-flex;align-items:center;min-width:0;font-size:13px;font-weight:500;text-decoration:none;line-height:1.4}
.sg-text-source:hover .sg-text-source-address{text-decoration:underline;text-underline-offset:3px}
.sg-text-source-protocol{color:#7b8ea5;font-weight:450}
.sg-text-source-address{min-width:0;overflow-wrap:anywhere;color:#2f6f52;font-weight:700}
.sg-text-favicon{display:grid;place-items:center;width:22px;height:22px;flex:none;margin-top:4px;background:#f3f6fb;border-radius:6px}
.sg-text-favicon img,.sg-text-favicon svg{width:18px;height:18px;object-fit:contain;color:#6e8aa9}
.sg-text-result h2{font-size:20px;font-weight:650;line-height:1.45;letter-spacing:-.025em;margin:0 0 4px;overflow-wrap:anywhere}
.sg-text-title{display:flex;align-items:flex-start;gap:11px}
.sg-text-title-copy{display:inline-flex;align-items:flex-start;gap:8px;min-width:0;padding-top:1px}
.sg-text-title-copy>a:first-child{min-width:0}
.sg-text-title-actions{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto}
.sg-text-title-actions .sg-bookmark-button.is-compact{width:28px;min-width:28px;height:28px;min-height:28px;padding:0;border:0;border-radius:7px;color:#397ac8;background:#eef5ff}
.sg-text-title-actions .sg-bookmark-button.is-compact:hover,.sg-text-title-actions .sg-bookmark-button.is-compact.is-active{color:#0866f5;background:#dceaff}
.sg-text-title-actions .sg-bookmark-button.is-compact svg{width:16px;height:16px}

/* Production QA: keep icon-only actions large enough for pointer and touch use. */
.sg-bookmark-button.is-compact,.sg-text-title-actions .sg-bookmark-button.is-compact{width:34px;min-width:34px;height:34px;min-height:34px}
.eye{right:8px;width:36px;height:36px;border-radius:8px;cursor:pointer}
.eye:hover,.eye:focus-visible{color:#0968df;background:#edf5ff}.eye:focus-visible{outline:3px solid #a9ccff;outline-offset:1px}
.sg-text-result h2 .sg-text-open{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border-radius:7px;background:#eef5ff;color:#397ac8;text-decoration:none;transition:background .15s,color .15s}
.sg-text-result h2 .sg-text-open:hover{background:#dceaff;color:#0866f5;text-decoration:none}
.sg-text-open svg{width:16px;height:16px;flex:none}
.sg-text-result .sg-text-snippet,.sg-text-result .sg-text-meta{margin-left:30px}
.sg-text-result h2 a{color:#145bb9;text-decoration:none}
.sg-text-result h2 a:hover{text-decoration:underline;text-underline-offset:4px}
.sg-text-snippet{max-width:none;font-size:14px;line-height:1.7;color:#465a73;margin:0 0 10px;overflow-wrap:anywhere}
.sg-text-result mark{background:transparent;color:#263e5d;font-weight:750;padding:0}
.sg-text-result h2 mark{background:transparent;padding:0;font-weight:800}
.sg-text-meta{max-width:none;min-height:24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.sg-text-category{display:inline-flex;align-items:center;min-height:23px;padding:3px 8px;border:1px solid #c9dcf2;border-radius:7px;color:#315b88;background:#eaf3fd;font-size:10px;font-weight:700;line-height:1.2;text-decoration:none}
.sg-text-category:hover{border-color:#9fc3ec;color:#075fcf;background:#dcecff}
.sg-text-details{margin-left:auto;display:flex;align-items:center;gap:6px;text-decoration:none;font-size:12px;color:#647d9f}
.sg-text-details:hover{color:#0866f5}
.sg-text-details svg{width:15px;height:15px}
.sg-search-guide{padding-top:12px}
.sg-search-guide-card{padding:22px;background:linear-gradient(145deg,#f3f7ff,#edf5ff);border-radius:18px}
.sg-search-guide-icon{display:grid;place-items:center;width:42px;height:42px;background:#fff;border-radius:12px;color:#0866f5;margin-bottom:17px;box-shadow:0 5px 16px #346dd00a}
.sg-search-guide-icon svg{width:26px;height:26px}
.sg-search-guide-label{display:block;font-size:9px;font-weight:800;letter-spacing:.09em;color:#6f88ab;margin-bottom:9px}
.sg-search-guide h2{font-size:18px;line-height:1.45;letter-spacing:-.025em;margin:0 0 12px;color:#1a365a}
.sg-search-guide p{font-size:13px;line-height:1.85;color:#59708d;margin:0 0 24px}
.sg-search-guide .sg-search-register{display:flex;gap:12px;width:100%;height:48px;min-height:48px;padding:0 12px;font-size:12px;border-radius:10px;box-shadow:0 6px 16px #0866f516}
.sg-search-register svg{width:17px;height:17px;flex:none}
.sg-search-signin{display:block;margin-top:14px;text-align:center;font-size:10px;line-height:1.7;color:#7084a0;text-decoration:none}
.sg-search-signin span{color:#0866f5;font-weight:650}
.sg-search-signin:hover span{text-decoration:underline;text-underline-offset:3px}
.sg-text-result a:focus-visible,.sg-search-guide a:focus-visible{outline:2px solid #0866f5;outline-offset:4px;border-radius:4px}
.sg-search-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:#8391a4;margin-top:20px}
.sg-search-pagination{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:25px}
.sg-page-number,.sg-page-direction{height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e0e8f3;border-radius:9px;color:#314c71;font-size:13px;text-decoration:none;background:#fff}
.sg-page-direction{padding:0 15px}
.sg-page-number:hover,.sg-page-direction:hover{background:#eef5ff;border-color:#adcbfa;color:#0866f5}
.sg-page-number.is-current{background:#0866f5;color:white;border-color:#0866f5;font-weight:700}
.sg-page-gap{color:#93a0b3;padding:0 3px}
.sg-search-state{padding:55px 25px 65px;text-align:center}
.sg-search-state-icon{display:block;width:44px;height:44px;font-size:36px;color:#7398c8;margin:0 auto 20px}
.sg-search-state h2{font-size:22px;letter-spacing:-.025em;color:#243a57;margin:0 0 12px}
.sg-search-state p{max-width:540px;margin:0 auto 22px;color:#7a8ba1;font-size:14px;line-height:1.9}
.sg-query-examples{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.sg-query-examples a{background:#f2f6fc;border-radius:8px;padding:9px 13px;font-size:12px;color:#5177a7;text-decoration:none}
.sg-search-suggestion a{font-weight:700;color:#0866f5}
@media(min-width:1600px){.sg-search-layout{grid-template-columns:minmax(0,1fr) 290px;gap:40px}.sg-search-intro{max-width:none}}
@media(max-width:1050px){.sg-search-layout{grid-template-columns:minmax(0,1fr) 235px;gap:28px}.sg-search-guide-card{padding:20px}.sg-text-result h2{font-size:18px}}
@media(max-width:780px){.sg-search-layout{display:block}.sg-search-guide{display:none}.sg-search-page{padding-top:24px;padding-bottom:40px}.sg-search-intro{margin-bottom:17px}.sg-search-eyebrow>span:last-child{display:none}.sg-search-page .sg-query-form{gap:8px}.sg-search-page .sg-query-form .btn{min-width:90px;padding:0 17px}.sg-search-page .sg-query-form .btn svg{display:none}.sg-search-page .sg-query-form .search-field{padding:0 12px}.sg-search-page .sg-query-form .search-input{font-size:14px;padding-left:9px}.sg-text-result{padding:18px 0}.sg-text-snippet{font-size:13px;line-height:1.7;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.sg-search-summary{font-size:11px}.sg-search-state{padding:40px 4px}.sg-search-state h2{font-size:20px}}
@media(max-width:420px){.sg-text-category{display:none}.sg-search-bottom{align-items:flex-start;flex-direction:column;gap:5px}.sg-page-number{min-width:36px;height:40px}.sg-page-direction{height:40px;padding:0 10px;font-size:12px}.sg-search-pagination{gap:5px}}

.sg-search-page .sg-query-form .search-input{border:0;border-radius:0;outline:0;box-shadow:none;flex:1}
.sg-search-page .sg-query-form .search-field>svg{position:static;transform:none;flex:0 0 21px}
.sg-search-page .sg-query-form .btn{width:auto;flex:0 0 auto}

/* Compact, aligned public footer. */
.site-footer{padding:34px 0 30px}
.footer-inner{grid-template-columns:minmax(220px,1.35fr) repeat(4,minmax(150px,1fr));align-items:start;gap:30px 36px;padding-top:34px}
.footer-brand p{max-width:280px;margin:13px 0 0;font-size:14px;line-height:1.65}
.footer-links{gap:9px;font-size:15px;line-height:1.5}
.footer-bottom{grid-column:1/-1;display:flex;align-items:center;gap:22px;min-height:50px;padding-top:22px;border-top:1px solid #edf1f6;color:var(--muted)}
.footer-bottom .footer-social{display:flex;gap:8px;margin:0}
.footer-bottom .social{width:34px;height:34px}
.footer-bottom .copyright{font-size:13px;line-height:1.5}
.footer-bottom .footer-developer{display:grid;max-width:660px;margin:0 0 0 auto;gap:4px;font-size:12px;line-height:1.5;text-align:right}
.footer-bottom .footer-developer a{font-size:13px}.footer-bottom .footer-developer span{font-size:12px;color:#6f7d90}
@media(max-width:1040px){.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.footer-brand{grid-column:1/-1}}
@media(max-width:700px){.footer-inner{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-wrap:wrap}.footer-bottom .footer-developer{width:100%;margin-left:0}}
@media(max-width:460px){.footer-inner{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{grid-column:auto}}

/* Readable secondary text on the public home page and in the shared footer. */
.hero-lead{color:#667386}
.home-source-preview>span{min-height:29px;font-size:12px;line-height:1.2}
.home-source-identity div>span{color:#667386;font-size:12px;line-height:1.5}
.home-source-status{font-size:12px}
.home-source-category{font-size:12px}
.footer-bottom .footer-developer,.footer-bottom .footer-developer a,.footer-bottom .footer-developer span{font-size:13px}
.footer-bottom .footer-developer span{color:#667386}

/* Keep the centred public navigation clear of the logo and account actions. */
@media(min-width:1321px){
  .site-header .header-inner{width:min(calc(100% - 64px),1800px)}
}
@media(min-width:1451px) and (max-width:1600px){
  .main-nav{gap:1px;padding:3px}
  .main-nav .nav-link{gap:7px;padding-inline:8px;font-size:13px}
  .main-nav .nav-link svg{width:17px;height:17px}
}
@media(min-width:1321px) and (max-width:1450px){
  .main-nav{gap:1px;padding:3px}
  .main-nav .nav-link{gap:0;padding-inline:9px;font-size:13px}
  .main-nav .nav-link svg{display:none}
}
@media(max-width:1320px){
  .main-nav,.header-login,.header-role-link,.account-header-actions{display:none}
  .mobile-nav{display:block}
}
@media(min-width:1451px) and (max-width:1600px){
  .header-inner.is-guest .main-nav{gap:1px;padding:3px}
  .header-inner.is-guest .main-nav .nav-link{gap:0;padding-inline:8px;font-size:13px}
  .header-inner.is-guest .main-nav .nav-link svg{display:none}
}
@media(max-width:1450px){
  .header-inner.is-guest .main-nav,.header-inner.is-guest .account-header-actions{display:none}
  .header-inner.is-guest .mobile-nav{display:block}
}
@media(min-width:1451px){
  .header-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto}
  .header-inner .logo{justify-self:start}
  .header-inner .main-nav{position:static;left:auto;justify-self:center;transform:none}
  .header-inner .account-header-actions{justify-self:end;margin-left:0}
}
/* Site submissions and payment handoff. */
.submit-result p{margin:0;line-height:1.6}.submit-result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}.submit-result-actions span{color:#617187;font-size:12px}.submission-page,.payment-page{padding-top:54px;padding-bottom:76px}.submission-card,.payment-card{max-width:880px;margin:0 auto 20px;padding:clamp(24px,4vw,44px);border:1px solid #dde5ef;border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(26,54,91,.08)}.submission-card h1,.payment-card h1{margin:8px 0 12px;color:#122238;font-size:clamp(28px,4vw,42px)}.submission-card h2{margin:0 0 18px}.submission-status{display:inline-flex;margin:4px 0 24px;padding:8px 12px;border-radius:999px;color:#075ebf;background:#edf5ff;font-weight:700}.submission-card dl,.payment-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 0 22px;overflow:hidden;border:1px solid #e1e7ef;border-radius:12px;background:#e1e7ef}.submission-card dl>div,.payment-summary>div{padding:16px;background:#fff}.submission-card dt,.payment-summary span{display:block;margin-bottom:6px;color:#758398;font-size:12px}.submission-card dd{margin:0;overflow-wrap:anywhere;font-weight:650}.submission-note,.payment-card>p,.payment-terms{color:#596a80;line-height:1.7}.submission-actions,.payment-provider-form{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.submission-timeline{display:grid;gap:12px;margin:0;padding:0;list-style:none}.submission-timeline li{display:grid;gap:5px;padding:14px 16px;border-left:3px solid #8eb8ed;background:#f6f9fd}.submission-timeline time{color:#758398;font-size:11px}.payment-card{max-width:760px}.payment-summary strong{font-size:20px}.payment-terms{margin:22px 0;padding:20px;border-radius:12px;background:#f5f8fc}.payment-terms ul{margin:10px 0;padding-left:20px}.payment-terms p{margin-bottom:0}.payment-provider-form .btn{min-height:48px}.payment-back{display:inline-block;margin-top:18px;color:#53667d;text-decoration:underline;text-underline-offset:3px}@media(max-width:620px){.submission-card dl,.payment-summary{grid-template-columns:1fr}.submission-actions .btn,.payment-provider-form .btn{width:100%}.submit-result-actions{align-items:stretch;flex-direction:column}.submit-result-actions .btn{width:100%}}
.payment-offer-check{display:flex;align-items:flex-start;width:100%;gap:12px;padding:16px;border:1px solid #d5e2f2;border-radius:12px;background:#f7faff;color:#465b75;font-size:13px;line-height:1.6;box-sizing:border-box}.payment-offer-check input{width:20px;height:20px;flex:0 0 20px;margin:1px 0 0;accent-color:#0869ef}.payment-offer-check a{color:#0864d9;font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* Static pages: centralized styles; page content never injects CSS. */
.static-prose{--blue:#0967f2;--blue-dark:#0757d4;--text:#121826;--muted:#6d778a;--line:#dfe4ec;color:#344054;font-size:15px;line-height:1.85;overflow-wrap:anywhere}
.static-prose *,.static-prose *::before,.static-prose *::after{box-sizing:border-box}
.static-document{max-width:1080px;min-width:0;margin:24px auto 56px;padding:36px}
.static-document-heading{margin-bottom:24px;padding-bottom:22px;border-bottom:1px solid #e5eaf0}
.static-document-heading h1{margin:0;font-size:32px;line-height:1.3;letter-spacing:-.7px}
.static-prose h2,.static-prose h3,.static-prose h4,.static-prose h5,.static-prose h6{margin:28px 0 14px;color:#111827;line-height:1.4}
.static-prose h2{font-size:25px}.static-prose h3{font-size:21px}.static-prose p{margin:0 0 18px}
.static-prose ul,.static-prose ol{margin:16px 0;padding-left:24px}.static-prose li{margin:5px 0}
.static-prose a:not(.btn){color:#0967f2;text-decoration:underline;text-underline-offset:3px}
.static-prose blockquote{margin:22px 0;padding:15px 22px;border-left:3px solid #0967f2;background:#f4f8ff}
.static-prose img{max-width:100%;height:auto;border-radius:8px}.static-prose figure{margin:22px 0}.static-prose figcaption{color:#667085;font-size:13px}
.static-prose table{display:block;max-width:100%;margin:22px 0;overflow:auto;border-collapse:collapse}.static-prose td,.static-prose th{padding:12px 16px;border:1px solid #e0e6ef;text-align:left}.static-prose th{background:#f7f9fc}
.static-prose pre{padding:18px;overflow:auto;border:1px solid #e0e6ef;border-radius:8px;background:#f7f9fc}.static-prose hr{margin:28px 0;border:0;border-top:1px solid #e0e6ef}
.static-prose .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 27px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--text);font-weight:600;cursor:pointer}
.static-prose .btn-primary{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 8px 18px rgba(9,103,242,.16)}.static-prose .btn-primary:hover{background:var(--blue-dark)}.static-prose .btn svg{width:17px;height:17px}
.help-hero,.contacts-hero,.bot-hero{margin:0 0 28px;padding:28px;border:1px solid #d7e6f8;border-radius:20px;background:linear-gradient(135deg,#f8fbff,#edf5ff)}
.help-hero h2,.contacts-hero h2,.bot-hero h2{margin:0 0 10px;color:#10223d;font-size:27px}.help-hero p,.contacts-hero p,.bot-hero p{max-width:820px;margin:0;color:#58708e;font-size:17px;line-height:1.7}
.help-groups{display:grid;gap:14px}.help-group{overflow:hidden;border:1px solid #dfe7f1;border-radius:15px;background:#fff;transition:border-color .16s ease,box-shadow .16s ease}.help-group[open]{border-color:#b8d4f7;box-shadow:0 12px 30px rgba(27,79,145,.08)}
.help-group>summary{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;color:#142844;font-size:17px;font-weight:750;cursor:pointer;list-style:none}.help-group>summary::-webkit-details-marker{display:none}.help-group>summary::after{content:'+';display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border-radius:50%;background:#edf5ff;color:#0967f2;font-size:21px;font-weight:500}.help-group[open]>summary::after{content:'−'}
.help-group>div{padding:0 20px 20px;border-top:1px solid #edf1f6}.help-group h3{margin:18px 0 7px;font-size:17px}.help-group p{margin:0 0 12px;color:#5c6e84}.help-group ul{margin:8px 0 0}
.info-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}.info-card{padding:22px;border:1px solid #dfe7f1;border-radius:15px;background:#fff}.info-card h3{margin:0 0 9px;font-size:17px}.info-card p{margin:0;color:#607188;line-height:1.7}.info-card strong{color:#16385f}.info-card-wide{grid-column:1/-1}.contact-email{display:inline-flex;align-items:center;min-height:48px;margin-top:14px;padding:0 18px;border-radius:10px;background:#0967f2;color:#fff!important;font-weight:750;text-decoration:none!important}.contact-email:hover{background:#0757d4}
.bot-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.bot-point{padding:21px;border:1px solid #dfe7f1;border-radius:15px;background:#fff}.bot-point strong{display:block;margin-bottom:7px;color:#16385f}.bot-point p{margin:0;color:#607188;line-height:1.65}.support-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding:22px;border-radius:15px;background:#f4f8fd}.support-strip p{margin:0}.support-strip .btn{flex:0 0 auto}
@media(max-width:760px){.info-card-grid,.bot-points{grid-template-columns:1fr}.info-card-wide{grid-column:auto}.support-strip{align-items:flex-start;flex-direction:column}.support-strip .btn{width:100%}.help-hero,.contacts-hero,.bot-hero{padding:22px}.help-group>summary{font-size:16px}}
.center-title{max-width:720px;margin:4px auto 28px;text-align:center}.center-title h1{margin:0 0 10px;font-size:38px;letter-spacing:-1px}.center-title p{margin:0;color:var(--muted);font-size:16px}
.about-actions{display:flex;justify-content:center;gap:18px;margin-top:28px}.about-actions .btn{min-width:195px}.about-layout{display:grid;grid-template-columns:390px minmax(0,1fr);gap:18px}
.panel{border:1px solid var(--line);border-radius:12px;background:#fff}.mission-panel{grid-row:span 2;padding:21px}.mission-intro{display:grid;grid-template-columns:48px 1fr;gap:14px}
.soft-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:11px;background:#edf4ff;color:var(--blue)}.soft-icon:empty::before{content:'◎'}.soft-icon svg{width:26px;height:26px}
.mission-panel h2,.process-panel h2,.numbers-panel h2,.contact-panel h2{margin:0 0 9px;font-size:16px}.mission-panel p,.contact-panel p{margin:0;color:var(--muted);font-size:13px}
.benefit-title{margin:24px 0 11px;font-weight:700}.benefit-list{display:grid;gap:10px;color:#596477;font-size:13px}.benefit-item{display:flex;align-items:flex-start;gap:10px}.benefit-item::before{content:'✓';display:grid;width:17px;height:17px;flex:0 0 17px;place-items:center;border:1px solid #6ca3ff;border-radius:50%;color:var(--blue);font-size:10px;font-weight:800}
.process-panel{padding:20px}.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:17px}.process-step{position:relative;text-align:center}.process-step:not(:last-child)::after{content:'';position:absolute;top:28px;left:calc(50% + 37px);width:calc(100% - 47px);border-top:1px dashed #b8c4d8}.process-step .soft-icon{margin:0 auto 12px}.process-step strong{display:block;margin-bottom:7px;font-size:12px}.process-step p{margin:0;color:var(--muted);font-size:11px}
.numbers-panel{padding:15px 20px 18px}.number-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.number-card{display:flex;align-items:center;gap:12px;min-height:84px;padding:14px;border:1px solid var(--line);border-radius:9px}.number-card>div{min-width:0}.number-card .soft-icon{width:42px;height:42px;flex:0 0 42px}.number-card strong{display:block;font-size:19px;line-height:1.2;overflow-wrap:normal;word-break:normal}.number-card span{display:block;margin-top:3px;color:var(--muted);font-size:11px;line-height:1.5;overflow-wrap:normal;word-break:normal}
.about-lower{display:grid;grid-template-columns:1.45fr 1fr;gap:18px;margin-top:18px}.submit-process,.contact-panel{padding:20px}.submit-process .process-steps{margin-top:14px}.contact-panel{position:relative;min-height:174px;padding-right:185px;overflow:hidden}.contact-lines{display:grid;gap:10px;margin-top:18px;color:var(--blue);font-size:12px}.contact-line{display:flex;align-items:center;gap:10px}.contact-graphic{position:absolute;top:42px;right:25px;width:128px;height:88px;border-radius:8px;background:linear-gradient(145deg,#dbe9ff,#aacbff);transform:rotate(-2deg)}.contact-graphic::before{content:'';position:absolute;top:-24px;right:17px;left:17px;height:68px;border:1px solid #d4e1f4;border-radius:6px;background:#fff;box-shadow:0 8px 20px rgba(50,93,162,.1)}.contact-graphic::after{content:'';position:absolute;inset:0;background:linear-gradient(145deg,#c4dbff,#90b7f5);clip-path:polygon(0 0,50% 54%,100% 0,100% 100%,0 100%)}
.legal-content{color:#263244;font-size:15px;line-height:1.85;overflow-wrap:anywhere}.legal-content h2{margin:30px 0 12px;color:#111827;font-size:21px;line-height:1.4}.legal-content p{margin:12px 0}.legal-content ul,.legal-content ol{padding-left:24px}.legal-content li{margin:7px 0}.legal-content a{color:#075dcc;text-decoration:underline;text-underline-offset:3px}.legal-meta{color:#758195;font-size:13px}.legal-note{padding:16px 20px;border-left:3px solid #b4c8e7;border-radius:5px;background:#f5f8fc}.legal-links{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:28px;padding-top:20px;border-top:1px solid #e6eaf0}
.api-page{max-width:980px}.api-lead{max-width:780px;margin:0 0 28px;color:#5f6f84;font-size:18px;line-height:1.75}.api-notice{display:flex;align-items:flex-start;gap:14px;margin:0 0 28px;padding:18px 20px;border:1px solid #cfe0f7;border-radius:14px;background:#f4f8ff;color:#294c78}.api-notice strong{display:block;margin-bottom:4px;color:#125fc5}.api-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}.api-grid article{padding:20px;border:1px solid #e0e7f0;border-radius:14px;background:#fff}.api-grid h2{margin:0 0 8px;font-size:17px}.api-grid p{margin:0;color:#68788d;line-height:1.65}.api-demo{margin:32px 0}.api-demo h2,.api-access h2{margin:0 0 14px;font-size:24px}.api-endpoint{display:flex;align-items:center;gap:10px;padding:14px 16px;overflow-wrap:anywhere;border:1px solid #dce5f0;border-radius:12px;background:#f8fafc;font-family:monospace}.api-method{padding:5px 8px;border-radius:7px;background:#eaf7ef;color:#17814b;font-weight:800}.api-code{padding:20px;overflow:auto;border-radius:14px;background:#111d30;color:#dce9f9;font:13px/1.75 monospace;white-space:pre-wrap}.api-access{padding:24px;border-radius:16px;background:#f7f9fc}.api-access p{color:#627287;line-height:1.7}.api-access a{display:inline-flex;margin-top:8px;padding:11px 16px;border-radius:9px;background:#0967f2;color:#fff;font-weight:700}
.audience-page{max-width:1040px}.audience-lead{max-width:810px;margin:0 0 30px;color:#5f6f84;font-size:18px;line-height:1.75}.audience-note{display:flex;align-items:flex-start;gap:14px;margin:0 0 30px;padding:18px 20px;border:1px solid #cfe0f7;border-radius:14px;background:#f4f8ff;color:#355472;line-height:1.65}.audience-note strong{display:block;margin-bottom:3px;color:#125fc5}.audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0 34px}.audience-grid article{padding:21px;border:1px solid #e0e7f0;border-radius:14px;background:#fff}.audience-grid span{display:grid;width:34px;height:34px;margin-bottom:15px;place-items:center;border-radius:10px;background:#edf5ff;color:#0967f2;font-size:15px;font-weight:800}.audience-grid h2{margin:0 0 8px;font-size:17px}.audience-grid p{margin:0;color:#68788d;line-height:1.65}.audience-process{margin:34px 0}.audience-process h2{margin:0 0 18px;font-size:24px}.audience-steps{display:grid;gap:12px;counter-reset:audience-step}.audience-step{position:relative;padding:18px 20px 18px 62px;border:1px solid #e1e7ef;border-radius:13px;background:#fbfcfe;counter-increment:audience-step}.audience-step::before{content:counter(audience-step);position:absolute;top:18px;left:18px;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#0967f2;color:#fff;font-weight:800}.audience-step strong{display:block;margin-bottom:4px}.audience-step p{margin:0;color:#68788d;line-height:1.6}.audience-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:34px;padding:25px;border-radius:16px;background:#f2f6fc}.audience-cta h2{margin:0 0 6px;font-size:22px}.audience-cta p{margin:0;color:#627287}.audience-cta a{display:inline-flex;align-items:center;min-height:42px;padding:0 17px;border-radius:9px;background:#0967f2;color:#fff;font-weight:750;white-space:nowrap}
@media(max-width:1100px){.about-layout{grid-template-columns:1fr}.mission-panel{grid-row:auto}.number-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.about-lower{grid-template-columns:1fr}}
@media(max-width:760px){.api-grid,.audience-grid{grid-template-columns:1fr}.api-lead,.audience-lead{font-size:16px}.audience-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.static-document{margin:18px auto 36px;padding:20px}.static-document-heading h1{font-size:25px}.static-prose h2{font-size:22px}.legal-content{font-size:14px}.legal-content h2{font-size:19px}}
@media(max-width:680px){.center-title h1{font-size:30px}.about-actions{flex-direction:column}.about-actions .btn{width:100%}.process-steps{grid-template-columns:1fr 1fr}.process-step:not(:last-child)::after{display:none}.number-grid{grid-template-columns:1fr 1fr;gap:10px}.contact-panel{padding-right:20px}.contact-graphic{opacity:.17}}
@media(max-width:440px){.number-grid,.process-steps{grid-template-columns:1fr}}

/* Developer API documentation */
.api-page{max-width:1120px;color:#17243a}.api-page code{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}.api-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.7fr);gap:40px;align-items:center;margin:-8px 0 22px;padding:38px;border:1px solid #d8e8fb;border-radius:24px;background:radial-gradient(circle at 88% 15%,rgba(70,144,255,.2),transparent 34%),linear-gradient(135deg,#f8fbff 0%,#eef6ff 100%);overflow:hidden}.api-hero h2{max-width:720px;margin:10px 0 14px;color:#0c1d37;font-size:clamp(30px,4vw,48px);line-height:1.08;letter-spacing:-.04em}.api-kicker{display:inline-flex;color:#0967f2;font-size:12px;font-weight:800;letter-spacing:.12em}.api-hero .api-lead{max-width:690px;margin:0;color:#536883;font-size:17px;line-height:1.7}.api-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.api-primary,.api-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border-radius:10px;font-weight:750;text-decoration:none!important}.api-primary{background:#0967f2;color:#fff!important;box-shadow:0 10px 24px rgba(9,103,242,.22)}.api-secondary{border:1px solid #cbdcf2;background:#fff;color:#1b4e8f!important}.api-hero-card{display:grid;gap:9px;padding:24px;border:1px solid rgba(132,178,234,.55);border-radius:18px;background:rgba(255,255,255,.78);box-shadow:0 20px 50px rgba(32,88,157,.12);backdrop-filter:blur(8px)}.api-hero-card>span:first-child{justify-self:start;padding:5px 8px;border-radius:7px;background:#e7f8ef;color:#16864e;font-size:12px;font-weight:850}.api-hero-card code{color:#164f94;font-size:14px;overflow-wrap:anywhere}.api-hero-card strong{margin-top:9px;font-size:18px}.api-hero-note{color:#687b94;font-size:12px}.api-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 22px}.api-stats article{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border:1px solid #e0e8f2;border-radius:14px;background:#fff}.api-stats strong{color:#0b5ecb;font-size:22px}.api-stats span{color:#68788d;font-size:12px}.api-notice{display:flex;align-items:flex-start;gap:14px;margin:0 0 34px;padding:18px 20px;border:1px solid #bfe0d0;border-radius:14px;background:#f0fbf5;color:#315f49;line-height:1.65}.api-notice strong{display:block;margin-bottom:4px;color:#13804a}.api-section{display:grid;grid-template-columns:46px minmax(0,1fr);gap:18px;padding:34px 0;border-top:1px solid #e4eaf2}.api-section-number{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#edf5ff;color:#0967f2;font-size:12px;font-weight:850}.api-section h2{margin:3px 0 10px;color:#101d30;font-size:25px;letter-spacing:-.02em}.api-section>div>p{max-width:850px;margin:0 0 17px;color:#61738a;line-height:1.7}.api-endpoint{display:flex;align-items:center;gap:12px;padding:15px 16px;overflow-wrap:anywhere;border:1px solid #dce5f0;border-radius:12px;background:#f8fafc}.api-endpoint code{font-size:13px}.api-method{flex:0 0 auto;padding:5px 8px;border-radius:7px;background:#e7f8ef;color:#17814b;font-size:12px;font-weight:850}.api-inline-actions{margin-top:10px}.api-inline-actions a{color:#0967f2;font-size:13px;font-weight:700}.api-table-wrap{overflow:auto;border:1px solid #dfe7f1;border-radius:14px}.api-table{width:100%;border-collapse:collapse;background:#fff;font-size:13px}.api-table th,.api-table td{padding:14px 16px;border-bottom:1px solid #e8edf4;text-align:left;vertical-align:top}.api-table tr:last-child td{border-bottom:0}.api-table th{background:#f6f9fd;color:#4f627b;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.api-table td{color:#34465d}.api-table code{color:#075dcc;font-weight:700}.api-code-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.api-code-grid article{min-width:0}.api-code-grid article:first-child{grid-column:1/-1}.api-code-grid h3{margin:0 0 8px;font-size:14px}.api-code{margin:0;padding:19px;overflow:auto;border:1px solid #1d314f;border-radius:14px;background:#101b2d;color:#dce9f9;font:13px/1.7 "SFMono-Regular",Consolas,"Liberation Mono",monospace;white-space:pre}.api-code-response{max-height:520px}.api-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.api-field-grid article{padding:16px;border:1px solid #e0e7f0;border-radius:12px;background:#fbfcfe}.api-field-grid article>code{color:#0967f2;font-weight:800}.api-field-grid p{margin:7px 0 0;color:#68788d;font-size:12px;line-height:1.6}.api-error-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.api-error-list span{padding:8px 11px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:#607188;font-size:12px}.api-error-list strong{color:#173252}.api-access{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:18px;padding:30px;border:1px solid #cfe0f7;border-radius:20px;background:linear-gradient(135deg,#f6faff,#edf5ff)}.api-access h2{margin:7px 0 8px;font-size:25px}.api-access p{max-width:760px;margin:0;color:#5e728c;line-height:1.7}.api-access a{display:inline-flex;flex:0 0 auto;align-items:center;min-height:44px;padding:0 17px;border-radius:10px;background:#0967f2;color:#fff;font-weight:750;text-decoration:none}
@media(max-width:800px){.api-hero{grid-template-columns:1fr;padding:25px}.api-stats{grid-template-columns:1fr 1fr}.api-code-grid,.api-field-grid{grid-template-columns:1fr}.api-code-grid article:first-child{grid-column:auto}.api-access{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.api-hero{gap:24px;margin-top:0;padding:20px;border-radius:18px}.api-hero h2{font-size:31px}.api-hero .api-lead{font-size:15px}.api-actions>a{width:100%}.api-stats{grid-template-columns:1fr 1fr;gap:8px}.api-stats article{padding:13px}.api-section{grid-template-columns:1fr;gap:11px;padding:26px 0}.api-section-number{width:36px;height:36px}.api-section h2{font-size:22px}.api-endpoint{align-items:flex-start;flex-direction:column}.api-code{padding:15px;font-size:11px}.api-table{min-width:620px}.api-access{padding:22px}.api-access a{width:100%;justify-content:center}}

/* Launch UI pass: contain wide content, improve readability and unify controls. */
.api-page,.api-section,.api-section>div,.api-table-wrap{box-sizing:border-box;width:100%;max-width:100%;min-width:0}
.api-table-wrap{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:auto;scrollbar-color:#91a9c8 #edf2f7}
.api-table-wrap::-webkit-scrollbar{height:12px}.api-table-wrap::-webkit-scrollbar-thumb{border:3px solid #edf2f7;border-radius:999px;background:#91a9c8}

.catalog-category-list>label{min-height:44px;grid-template-columns:20px minmax(0,1fr) auto;font-size:13px;line-height:1.35}
.catalog-category-list input,.catalog-check input{width:20px;height:20px;accent-color:var(--blue)}
.catalog-category-list strong{min-width:28px;height:25px;font-size:12px}.catalog-sidebar-hint,.catalog-sidebar-title>a,.catalog-sidebar-filters label:not(.catalog-check){font-size:12px}.catalog-check{min-height:44px;font-size:13px}.catalog-sidebar-filters select{height:44px;font-size:13px}
.catalog-sort select,.catalog-sort .btn{height:44px;min-height:44px}.catalog-sort label{font-size:12px}.catalog-section-head>a{min-height:44px}.catalog-category-card>small{font-size:12px}.catalog-found,.catalog-total span{font-size:12px}
.catalog-results-toolbar label{font-size:12px}.catalog-results-toolbar select,.catalog-results-toolbar button{height:44px;min-height:44px;border-radius:9px;font-size:12px}.catalog-results-toolbar>div span{font-size:12px}

.sg-bookmark-button.is-compact,.sg-text-title-actions .sg-bookmark-button.is-compact{width:44px;min-width:44px;height:44px;min-height:44px;border-radius:10px}
.sg-text-title-actions .sg-bookmark-button.is-compact svg{width:18px;height:18px}
.auth-card .auth-submit{height:48px;min-height:48px}.sg-oauth-button{height:48px;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,filter .16s ease}.sg-oauth-button:hover{filter:brightness(.96);box-shadow:0 7px 18px rgba(20,52,95,.13)}
.btn,.sg-bookmark-button,.catalog-search-bar>a{transition:color .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}
.btn:focus-visible,.sg-bookmark-button:focus-visible,.catalog-search-bar>a:focus-visible{outline:3px solid #9dc7ff;outline-offset:2px}
.crawl-factor>summary{box-sizing:border-box;display:flex;min-height:44px;align-items:center;padding:8px 0}

@media(max-width:560px){
  .source-heading-actions{display:grid;grid-template-columns:1fr!important;gap:10px}
  .source-heading-actions .source-history-button,.source-heading-actions .source-visit-button{box-sizing:border-box;width:100%;min-width:0;white-space:normal;line-height:1.3;padding-inline:14px}
  .source-heading-actions .sg-bookmark-button.is-detail,.source-heading-actions .source-report-button{width:100%;min-width:0;flex-basis:auto}
  .catalog-sidebar-section{padding:16px}.catalog-category-list>label{margin-inline:-4px;padding-inline:6px}
}

/* Static pages: use the same content width as home/catalog and keep body copy readable. */
.static-document{width:100%;max-width:none}
.static-prose{font-size:16px;line-height:1.8}
.audience-page{max-width:none}
.mission-panel h2,.process-panel h2,.numbers-panel h2,.contact-panel h2{font-size:18px}
.mission-panel p,.contact-panel p,.benefit-list{font-size:14px}
.process-step strong{font-size:14px}.process-step p{font-size:13px}
.number-card strong{font-size:20px}.number-card span{font-size:13px}
.contact-lines{font-size:14px}
.legal-content{font-size:16px;line-height:1.8}.legal-content h2{font-size:22px}.legal-meta{font-size:14px}
.api-hero .api-lead{font-size:18px}.api-hero-note,.api-stats span,.api-field-grid p,.api-error-list span{font-size:13px}
.api-table{font-size:14px}.api-table th{font-size:12px}
@media(max-width:700px){.legal-content{font-size:16px}.legal-content h2{font-size:20px}}
@media(max-width:560px){.api-hero .api-lead{font-size:16px}.api-code{font-size:12px}}

/* API documentation readability */
.api-page{font-size:16px;line-height:1.65}
.api-hero .api-lead{color:#344b67;font-size:19px;line-height:1.65}
.api-hero-note{color:#455d79;font-size:14px;line-height:1.55}
.api-stats span{color:#465c76;font-size:14px;line-height:1.5}
.api-notice{color:#234f3a;font-size:16px}
.api-section>div>p{color:#3f536d;font-size:16px;line-height:1.72}
.api-endpoint code{color:#263b55;font-size:14px;line-height:1.6}
.api-inline-actions a{font-size:14px}
.api-table{font-size:15px;line-height:1.55}
.api-table th{color:#344a64;font-size:13px}
.api-table td{color:#253a54}
.api-code-grid h3{font-size:16px}
.api-code{font-size:14px;line-height:1.75}
.static-prose pre.api-code{padding:19px;border:1px solid #1d314f;border-radius:14px;background:#101b2d;color:#e7f1ff}
.api-field-grid p{color:#465c76;font-size:15px;line-height:1.65}
.api-error-list span{color:#405672;font-size:14px}
.api-access p{color:#3d536d;font-size:16px;line-height:1.7}
@media(max-width:560px){.api-page{font-size:16px}.api-hero .api-lead{font-size:17px}.api-code{font-size:13px}.static-prose pre.api-code{padding:15px}.api-table{font-size:14px}.api-table th{font-size:12px}}

/* API documentation: one content edge and no nested scroll areas. */
.api-section>div>.api-endpoint,
.api-section>div>.api-table-wrap,
.api-section>div>.api-code-grid,
.api-section>div>.api-code,
.api-section>div>.api-field-grid,
.api-section>div>.api-error-list{width:100%;max-width:none}
.api-code-grid article{display:flex;width:100%;max-width:none;flex-direction:column}
.api-code-grid .api-code{width:100%;max-width:none;flex:1}
.static-prose pre.api-code{max-height:none;overflow:visible;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.api-table-wrap{overflow:visible}
.api-table{min-width:0;table-layout:fixed}
.api-table th,.api-table td{overflow-wrap:anywhere;word-break:normal}
@media(max-width:560px){.api-table th,.api-table td{padding:10px 8px;font-size:12px}.api-table th{font-size:10px;letter-spacing:0}}

/* Account consent refresh. */
.reconsent-page{min-height:760px;padding-top:66px}
.reconsent-page .auth-title{margin-bottom:32px}
.reconsent-page .auth-title p{max-width:720px;font-size:17px;line-height:1.65}
.reconsent-card{width:min(780px,100%);padding:0;overflow:hidden;border-radius:18px;box-shadow:0 18px 54px rgba(30,62,103,.08)}
.reconsent-card-head{padding:30px 34px 25px;border-bottom:1px solid #e1e9f3;background:linear-gradient(135deg,#f8fbff,#eef6ff)}
.reconsent-card-head>span{display:inline-flex;margin-bottom:8px;color:#0967f2;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.reconsent-card-head h2{margin:0 0 7px;color:#10223b;font-size:24px;letter-spacing:-.025em}
.reconsent-card-head p{margin:0;color:#526780;font-size:15px;line-height:1.6}
.reconsent-options{display:grid;gap:14px;padding:26px 34px}
.reconsent-option{display:grid;grid-template-columns:24px minmax(0,1fr);gap:14px;align-items:start;padding:20px;border:1px solid #dce6f2;border-radius:14px;background:#fff;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.reconsent-option:hover{border-color:#aecaed;background:#fbfdff;box-shadow:0 8px 22px rgba(34,82,143,.07)}
.reconsent-option:has(input:checked){border-color:#7eb4f5;background:#f4f9ff;box-shadow:0 0 0 3px rgba(9,103,242,.08)}
.reconsent-option input{width:22px;height:22px;margin:2px 0 0;accent-color:#0967f2}
.reconsent-option-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start}
.reconsent-option-copy>strong{color:#132640;font-size:17px;line-height:1.4}
.reconsent-option-copy>span:not(.reconsent-document-links){margin-top:5px;color:#53677f;font-size:14px;line-height:1.6}
.reconsent-option-copy a{color:#0967f2;font-size:14px;font-weight:700;text-decoration:none}
.reconsent-option-copy a:hover{text-decoration:underline;text-underline-offset:3px}
.reconsent-option-copy>a{margin-top:10px}
.reconsent-document-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:10px}
.reconsent-actions{display:flex;align-items:center;gap:18px;padding:0 34px 30px}
.reconsent-actions .auth-submit{width:auto;min-width:270px;margin:0;padding:0 22px}
.reconsent-actions small{color:#65768c;font-size:13px;line-height:1.5}
.reconsent-page .auth-below{margin-top:22px}
@media(max-width:640px){.reconsent-page{padding-top:42px}.reconsent-page .auth-title p{font-size:15px}.reconsent-card-head,.reconsent-options{padding-left:20px;padding-right:20px}.reconsent-card-head h2{font-size:21px}.reconsent-option{padding:17px}.reconsent-actions{align-items:stretch;flex-direction:column;padding:0 20px 24px}.reconsent-actions .auth-submit{width:100%;min-width:0}.reconsent-actions small{text-align:center}}

/* About page icon set. */
.soft-icon .about-icon{display:block;width:24px;height:24px;max-width:none;border-radius:0}
.number-card .soft-icon .about-icon{width:22px;height:22px}
.contact-line .contact-line-icon{display:block;width:18px;height:18px;max-width:none;flex:0 0 18px;border-radius:0}

/* About index cards: lock icon and copy to one visual center line. */
.number-card{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;column-gap:12px}
.number-card .soft-icon{display:flex;align-items:center;justify-content:center;align-self:center;margin:0;padding:0;line-height:1}
.number-card>div{display:flex;min-width:0;min-height:42px;flex-direction:column;justify-content:center}
.number-card strong{margin:0;line-height:1.25}.number-card span{margin:3px 0 0;line-height:1.4}

/* Dedicated site-submission page. */
.submit-page-card{max-width:860px}.submit-page-lead{max-width:700px;margin:0;color:#596a80;font-size:16px;line-height:1.7}.submit-page-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0;padding-bottom:26px;border-bottom:1px solid #e5ebf2}.submit-page-steps>div{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:10px;align-items:center;padding:14px;border:1px solid #dfe8f3;border-radius:12px;background:#f8fbff}.submit-page-steps span{grid-row:1/3;display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:#0967f2;background:#e9f3ff;font-weight:800}.submit-page-steps strong{font-size:14px}.submit-page-steps small,.submit-page-form>label>small{color:#718096;font-size:11px;line-height:1.45}.submit-page-form{margin-top:22px}.submit-page-form>label:not(.request-consent){font-weight:700}.submit-page-form>label:not(.request-consent)>input{font-weight:400}.submit-page-form>.btn{min-width:220px}.submit-page-note{margin:22px 0 0;padding:14px 16px;border-radius:11px;color:#526d8e;background:#f1f6fd;font-size:12px;line-height:1.65}.submit-page [hidden]{display:none!important}@media(max-width:680px){.submit-page-steps{grid-template-columns:1fr}.submit-page-form>.btn{width:100%}.submit-page-card{padding:22px}.submit-page-lead{font-size:15px}}

.submit-page-steps>div.is-complete{border-color:#bfe3cc;background:#f3fbf6}.submit-page-steps>div.is-complete span{color:#13733c;background:#dff4e6}.submit-page-steps>div.is-complete span::before{content:'✓';font-size:17px}.submit-page-steps>div.is-complete span{font-size:0}.submit-page-steps>div.is-current{border-color:#b8d4ff;background:#f3f7ff;box-shadow:0 0 0 3px rgba(9,103,242,.06)}
.submit-page .submit-result-card{position:relative;margin:4px 0 0;padding:0;overflow:hidden;border:1px solid #cfe5d7;border-radius:16px;color:#24364b;background:#fff;box-shadow:0 14px 38px rgba(31,66,105,.09)}.submit-result-card::before{content:'';position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#22a05a,#61c986)}.submit-result-heading{display:flex;gap:15px;align-items:center;padding:25px 26px 17px}.submit-result-icon{display:grid;flex:0 0 46px;width:46px;height:46px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(145deg,#1eaa5c,#168447);box-shadow:0 8px 20px rgba(30,170,92,.22);font-size:23px;font-weight:800}.submit-result-kicker{display:block;margin-bottom:3px;color:#168447;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.submit-result-heading h2{margin:0;color:#13243a;font-size:clamp(20px,3vw,26px);line-height:1.2}.submit-result-body{padding:0 26px 24px}.submit-result-message{max-width:680px;margin:0;color:#52657c;line-height:1.65}.submit-result-receipt{display:flex;align-items:center;gap:14px;margin-top:18px;padding:12px 14px;border:1px solid #e0e8f1;border-radius:11px;background:#f8fafc}.submit-result-receipt span{flex:0 0 auto;color:#718096;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.submit-result-receipt code{overflow:hidden;color:#24364b;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.submit-result-card .submit-result-actions{display:flex;gap:10px;align-items:center;margin-top:20px}.submit-result-card .submit-result-actions .btn{min-height:48px;padding-inline:22px}.submit-result-free{display:flex;align-items:center;gap:8px;margin:16px 0 0!important;padding:12px 14px;border-radius:10px;color:#4f647b;background:#f2f6fb;font-size:12px;line-height:1.5}.submit-result-free::before{content:'i';display:grid;flex:0 0 20px;width:20px;height:20px;place-items:center;border-radius:50%;color:#0967f2;background:#e2edff;font-size:12px;font-weight:800}
@media(max-width:680px){.submit-result-heading{align-items:flex-start;padding:23px 20px 15px}.submit-result-icon{flex-basis:40px;width:40px;height:40px}.submit-result-body{padding:0 20px 20px}.submit-result-receipt{align-items:flex-start;flex-direction:column;gap:5px}.submit-result-card .submit-result-actions{align-items:stretch;flex-direction:column}.submit-result-card .submit-result-actions .btn{width:100%}}

/* Rights-holder guidance and request form. */
.rights-page-intro{margin:0 0 22px;padding:20px 22px;border:1px solid #cfe0f5;border-radius:15px;background:linear-gradient(135deg,#f7fbff,#edf5ff)}.rights-page-intro strong{display:block;margin-bottom:7px;color:#133d70;font-size:18px}.rights-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:22px 0}.rights-page-grid>section{padding:18px;border:1px solid #dde7f2;border-radius:13px;background:#fff}.rights-page-grid h2{margin-top:0!important;font-size:18px!important}.rights-page-callout{margin:24px 0;padding:18px;border-left:4px solid #1474e8;border-radius:0 12px 12px 0;background:#f3f8ff}.rights-page-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rights-page-actions a{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:0 18px;border-radius:10px;background:#0b6fe8;color:#fff!important;font-weight:750;text-decoration:none!important}.rights-page-actions a+span{color:#6b7c90;font-size:13px}.request-retention-note{margin:0;padding:11px 13px;border-radius:9px;color:#526b61;background:#f0f8f4;font-size:12px;line-height:1.55}@media(max-width:700px){.rights-page-grid{grid-template-columns:1fr}.rights-page-actions a{width:100%}}

/* Footer layout: explicit areas keep all five desktop blocks on one row. */
.footer-inner{grid-template-areas:"brand navigation account help documents" "bottom bottom bottom bottom bottom";grid-template-columns:minmax(240px,1.35fr) repeat(4,minmax(0,1fr));column-gap:34px;row-gap:30px}
.footer-brand{grid-area:brand}.footer-brand+div{grid-area:navigation}.footer-brand+div+div{grid-area:account}.footer-help{grid-area:help}.footer-documents{grid-area:documents}.footer-bottom{grid-area:bottom}
@media(max-width:1180px){.footer-inner{grid-template-areas:"brand brand brand brand" "navigation account help documents" "bottom bottom bottom bottom";grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:820px){.footer-inner{grid-template-areas:"brand brand" "navigation account" "help documents" "bottom bottom";grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.footer-inner{grid-template-areas:"brand" "navigation" "account" "help" "documents" "bottom";grid-template-columns:1fr}}

/* Mobile footer: compact section cards instead of one long menu column. */
@media(max-width:520px){
  .site-footer{padding:24px 0 22px}
  .footer-inner{
    grid-template-areas:"brand brand" "navigation account" "help documents" "bottom bottom";
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    padding-top:24px;
  }
  .footer-brand{padding:0 2px 8px}
  .footer-brand .logo{font-size:22px}
  .footer-brand p{max-width:none;margin-top:8px;font-size:13px;line-height:1.55}
  .footer-brand+div,
  .footer-brand+div+div,
  .footer-help,
  .footer-documents{
    padding:14px;
    border:1px solid #e2e9f2;
    border-radius:12px;
    background:#f8fafc;
  }
  .footer-title{margin-bottom:9px;color:#3f5068;font-size:13px}
  .footer-links{gap:7px;font-size:13px;line-height:1.4}
  .footer-links a{overflow-wrap:anywhere}
  .footer-bottom{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    gap:12px 14px;
    min-height:0;
    margin-top:8px;
    padding-top:18px;
  }
  .footer-bottom .footer-social{grid-column:1;margin:0}
  .footer-bottom .copyright{grid-column:2;font-size:12px;line-height:1.45}
  .footer-bottom .footer-developer{
    grid-column:1/-1;
    width:100%;
    margin:0;
    padding-top:12px;
    border-top:1px solid #edf1f6;
    gap:3px;
    font-size:11px;
    line-height:1.45;
    text-align:center;
  }
  .footer-bottom .footer-developer a,
  .footer-bottom .footer-developer span{font-size:11px;text-wrap:balance}
}

@media(max-width:350px){
  .footer-inner{
    grid-template-areas:"brand" "navigation" "account" "help" "documents" "bottom";
    grid-template-columns:1fr;
  }
  .footer-brand+div,
  .footer-brand+div+div,
  .footer-help,
  .footer-documents{padding:13px 14px}
  .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}
  .footer-bottom{grid-template-columns:1fr}
  .footer-bottom .footer-social,
  .footer-bottom .copyright{grid-column:1}
  .footer-bottom{justify-items:center;text-align:center}
}

/* Unified login and registration experience. */
.auth-page-redesign{min-height:760px;padding:56px 0 72px}
.auth-page-redesign .form-input::placeholder{color:#64748b;opacity:1}
.auth-page-redesign .auth-title{margin-bottom:30px}
.auth-page-redesign .auth-title h1{margin:6px 0 8px;color:#0d1d35;font-size:clamp(32px,3vw,43px);line-height:1.15;letter-spacing:-.045em}
.auth-page-redesign .auth-title p{color:#62738a;font-size:16px;line-height:1.6}
.auth-kicker{display:block;color:#0870ee;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.auth-layout{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);width:min(1080px,100%);margin:0 auto;overflow:hidden;border:1px solid #d8e4f2;border-radius:20px;background:#fff;box-shadow:0 24px 70px rgba(35,75,125,.1)}
.auth-layout-register{grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);width:min(1080px,100%)}
.auth-card.auth-access-panel{box-sizing:border-box;width:auto;margin:0;padding:38px 40px;border:0;border-radius:0;background:#fff;box-shadow:none}
.auth-panel-head{display:flex;align-items:center;gap:14px;margin-bottom:25px}
.auth-panel-head h2{margin:0;color:#11233e;font-size:23px;line-height:1.3;letter-spacing:-.025em}
.auth-panel-head p{margin:4px 0 0;color:#6a7b91;font-size:13px;line-height:1.5}
.auth-panel-icon{display:grid;flex:0 0 46px;width:46px;height:46px;place-items:center;border-radius:13px;color:#0870ee;background:#eaf4ff}
.auth-panel-icon svg,.auth-benefits-badge svg,.auth-benefit-icon svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-panel-icon svg{width:23px;height:23px}
.auth-panel-message{margin:0 0 18px}
.auth-access-panel>.sg-oauth-buttons,.sg-register-form .sg-oauth-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:none;margin:0}
.auth-access-panel>.sg-oauth-buttons form{min-width:0;margin:0}
.auth-access-panel .sg-oauth-button{height:48px;min-height:48px;border-radius:10px;font-size:13px}
.auth-method-divider,.sg-register-form .sg-oauth-divider{display:flex;grid-column:1/-1;align-items:center;gap:13px;margin:21px 0;color:#7b899c;font-size:12px;text-align:center}
.auth-method-divider:before,.auth-method-divider:after,.sg-register-form .sg-oauth-divider:before,.sg-register-form .sg-oauth-divider:after{content:"";height:1px;flex:1;background:#e1e8f1}
.auth-form{margin:0}
.auth-form .form-group{margin-bottom:18px}
.auth-form .form-label{margin-bottom:8px;color:#233651;font-size:13px;font-weight:700}
.auth-form .form-input{box-sizing:border-box;height:50px;border-color:#cbd8e8;border-radius:10px;color:#14263f;background:#fbfdff;font-size:14px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.auth-form .form-input:hover{border-color:#aebfd4;background:#fff}
.auth-form .form-input:focus{border-color:#0870ee;background:#fff;box-shadow:0 0 0 4px rgba(8,112,238,.09)}
.auth-form .input-wrap>svg{left:15px;width:19px;height:19px;color:#71839a;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-form .eye{right:13px;color:#52677f}
.auth-label-row{display:flex;align-items:center;justify-content:space-between;gap:18px}
.auth-label-row .form-label{margin-bottom:8px}
.auth-label-row .auth-link{margin-bottom:8px;font-size:12px;font-weight:650}
.auth-form .captcha-control{margin:2px 0 17px}
.auth-form .auth-submit{height:50px;min-height:50px;border-radius:10px;font-size:14px;font-weight:750;box-shadow:0 9px 22px rgba(9,103,242,.18)}
.auth-form .auth-submit:hover{box-shadow:0 12px 28px rgba(9,103,242,.24)}
.auth-panel-footer{display:grid;justify-items:center;gap:9px;margin-top:23px;padding-top:20px;border-top:1px solid #e7edf4;color:#748398;font-size:13px;text-align:center}
.auth-panel-footer p{margin:0}
.auth-panel-footer .auth-link{font-weight:650;text-decoration:none}
.auth-panel-footer .auth-link:hover{text-decoration:underline;text-underline-offset:3px}
.auth-benefits.auth-benefits-aside{display:flex;flex-direction:column;box-sizing:border-box;width:auto;margin:0;padding:42px;border:0;border-left:1px solid #d8e4f2;border-radius:0;background:radial-gradient(circle at 90% 8%,rgba(85,157,255,.18),transparent 31%),linear-gradient(150deg,#f5f9ff 0%,#edf5ff 55%,#f9fbff 100%);box-shadow:none}
.auth-benefits-badge{display:grid;width:58px;height:58px;margin-bottom:28px;place-items:center;border:1px solid #c7ddf8;border-radius:17px;color:#0870ee;background:rgba(255,255,255,.82);box-shadow:0 12px 28px rgba(35,94,168,.1)}
.auth-benefits-badge svg{width:29px;height:29px}
.auth-benefits-aside h2{margin:7px 0 11px;color:#102440;font-size:27px;line-height:1.23;letter-spacing:-.035em}
.auth-benefits-lead{margin:0;color:#5f728b;font-size:14px;line-height:1.7}
.auth-benefits-list{display:grid;flex:1;align-content:space-evenly;gap:16px;margin-top:8px;padding:18px 0}
.auth-benefits-list>div{display:grid;grid-template-columns:42px minmax(0,1fr);gap:13px;align-items:center;padding:14px;border:1px solid rgba(196,216,241,.9);border-radius:13px;background:rgba(255,255,255,.76)}
.auth-benefit-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:11px;color:#0870ee;background:#eaf3ff}
.auth-benefit-icon svg{width:21px;height:21px}
.auth-benefits-list b,.auth-benefits-list small,.auth-security b,.auth-security small{display:block}
.auth-benefits-list b{margin-bottom:3px;color:#18304e;font-size:14px;line-height:1.4}
.auth-benefits-list small{color:#657992;font-size:12px;line-height:1.55}
.auth-benefits-aside .auth-security{display:grid;grid-template-columns:22px minmax(0,1fr);gap:11px;align-items:start;justify-content:stretch;margin-top:auto;padding-top:22px;border-top:1px solid #cfdded;color:#4a6380;text-align:left}
.auth-benefits-aside .auth-security>svg{width:21px;height:21px;margin-top:1px;fill:none;stroke:#268268;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-benefits-aside .auth-security b{color:#285c4e;font-size:13px}
.auth-benefits-aside .auth-security small{margin-top:3px;color:#667b91;font-size:11px;line-height:1.5}
.auth-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
.sg-register-form .sg-password-wrap .form-input{padding-left:50px;padding-right:44px}
.sg-register-form .sg-auth-note{margin:-4px 0 17px;padding:10px 12px;border-radius:9px;color:#52677f;background:#f3f7fc;font-size:12px;line-height:1.55}
.sg-register-form .sg-registration-consents{gap:11px;margin:0 0 18px;padding:17px 18px;border-color:#d8e4f2;border-radius:12px;background:#f8fbff}
.sg-register-form .sg-registration-consents legend{color:#263b56;font-size:13px}
.sg-register-form .sg-registration-consents label{grid-template-columns:20px minmax(0,1fr);gap:10px;color:#445972;font-size:12px;line-height:1.55}
.sg-register-form .sg-registration-consents input{width:19px;height:19px}
.sg-register-form .sg-registration-consents small{padding-left:30px;color:#74859a;font-size:11px}
.sg-register-form>.sg-oauth-buttons{margin-top:20px}
.sg-register-form>.sg-oauth-buttons .sg-oauth-divider{margin:0 0 4px}
.auth-register-page .auth-benefits-aside{padding-top:48px}
@media(max-width:900px){.auth-layout,.auth-layout-register{grid-template-columns:1fr;width:min(660px,100%)}.auth-benefits.auth-benefits-aside{border-top:1px solid #d8e4f2;border-left:0}.auth-fields-grid{grid-template-columns:1fr}}
@media(max-width:600px){.auth-page-redesign{padding:38px 0 54px}.auth-page-redesign .auth-title{margin-bottom:22px}.auth-page-redesign .auth-title h1{font-size:32px}.auth-page-redesign .auth-title p{font-size:14px}.auth-layout{border-radius:15px}.auth-card.auth-access-panel,.auth-benefits.auth-benefits-aside{padding:25px 20px}.auth-panel-head{margin-bottom:21px}.auth-panel-head h2{font-size:20px}.auth-access-panel>.sg-oauth-buttons,.sg-register-form .sg-oauth-buttons{grid-template-columns:1fr}.auth-benefits-badge{width:50px;height:50px;margin-bottom:22px}.auth-benefits-aside h2{font-size:23px}.auth-benefits-list{margin-top:22px}.sg-register-form .sg-registration-consents small{padding-left:0}.auth-panel-footer{font-size:12px}}
