:root {
  --ink: #071426;
  --ink-2: #0c1d33;
  --paper: #f4f7fb;
  --white: #fff;
  --text: #203247;
  --muted: #617188;
  --line: #dbe3ec;
  --blue: #1769e0;
  --mint: #3dd9b3;
  --shadow: 0 24px 70px rgba(7, 20, 38, .1);
  --shell: 1180px;
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; scroll-padding-top: 80px; }
body { margin: 0; color: var(--text); background: var(--paper); font: 400 16px/1.65 "PingFang SC", system-ui, "Helvetica Neue", Arial, "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; font-synthesis: none; }
.home-page, .docs-page { font-size: 15px; line-height: 1.6; }
button, a { font: inherit; }
a { color: inherit; text-decoration: none; }
button { color: inherit; }
.shell { width: min(calc(100% - 40px), var(--shell)); margin: 0 auto; }
.section { position: relative; padding: 72px 0; }
.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); }
.skip-link { position: fixed; z-index: 100; left: 16px; top: -60px; padding: 9px 15px; color: var(--ink); background: var(--mint); border-radius: 8px; }
.skip-link:focus { top: 12px; }

.site-header { position: fixed; z-index: 50; inset: 0 0 auto; color: white; border-bottom: 1px solid rgba(255,255,255,.1); background: rgba(7,20,38,.8); backdrop-filter: blur(18px); }
.nav-wrap { position: relative; min-height: 72px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; column-gap: clamp(28px,4vw,64px); }
.header-actions { display: flex; align-items: center; justify-self: end; gap: 12px; }
.brand { display: inline-flex; align-items: center; gap: 11px; color: white; font-weight: 600; letter-spacing: 0; }
.brand b { color: var(--mint); }
.brand-mark { width: 32px; height: 32px; display: inline-flex; align-items: end; justify-content: center; gap: 3px; padding: 7px; border: 1px solid rgba(61,217,179,.4); border-radius: 10px; background: rgba(61,217,179,.08); }
.brand-mark i { display: block; width: 3px; background: var(--mint); border-radius: 3px 3px 0 0; }
.brand-mark i:nth-child(1) { height: 6px; opacity: .6; }
.brand-mark i:nth-child(2) { height: 11px; opacity: .8; }
.brand-mark i:nth-child(3) { height: 16px; }
.site-nav { display: flex; justify-self: center; gap: clamp(20px,2.5vw,34px); }
.site-nav a { position: relative; color: #c5d0de; font-size: .875rem; }
.site-nav a:hover, .site-nav a.active { color: white; }
.site-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -23px; height: 2px; background: var(--mint); transition: right .25s; }
.site-nav a.active::after { right: 0; }
.account-menu { position: relative; padding-left: 24px; border-left: 1px solid rgba(255,255,255,.15); }
.auth-trigger { min-height: 38px; max-width: 220px; padding: 7px 16px; overflow: hidden; border: 1px solid rgba(61,217,179,.52); border-radius: 8px; color: var(--ink); background: var(--mint); font-size: .875rem; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; transition: .2s; }
.auth-trigger:hover { transform: translateY(-1px); background: #6be4c7; }
.auth-trigger.signed-in { color: white; border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.08); }
.auth-trigger.signed-in:hover, .account-menu.open .auth-trigger.signed-in { border-color: rgba(61,217,179,.55); background: rgba(61,217,179,.12); }
.account-dropdown { position: absolute; z-index: 70; top: 100%; right: 0; min-width: 174px; padding: 8px; display: none; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; background: #10243b; box-shadow: 0 18px 42px rgba(0,0,0,.26); }
.account-menu.open .account-dropdown:not([hidden]) { display: block; }
.account-dropdown a, .account-dropdown button { width: 100%; min-height: 40px; padding: 9px 12px; display: block; border: 0; border-radius: 7px; color: #dce8f2; background: transparent; text-align: left; font-size: .875rem; cursor: pointer; }
.account-dropdown a:hover, .account-dropdown a:focus-visible, .account-dropdown button:hover, .account-dropdown button:focus-visible { color: white; background: rgba(61,217,179,.13); outline: none; }
.menu-button { display: none; width: 42px; height: 42px; padding: 11px; border: 0; border-radius: 10px; background: rgba(255,255,255,.08); }
.menu-button > i { display: block; height: 2px; margin: 4px 0; background: white; }

.hero { min-height: 560px; padding: 102px 0 44px; overflow: hidden; color: white; background: var(--ink); }
.hero::before { content: ""; position: absolute; width: 620px; height: 620px; right: -170px; top: -180px; background: radial-gradient(circle, rgba(23,105,224,.28), transparent 67%); }
.hero-grid { position: absolute; inset: 0; opacity: .27; background-image: linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(black, transparent 92%); }
.hero-layout { position: relative; z-index: 2; display: grid; grid-template-columns: 1.12fr .88fr; gap: clamp(48px,6vw,76px); align-items: center; }
.eyebrow { margin: 0 0 18px; display: flex; align-items: center; gap: 10px; color: var(--blue); font-size: .75rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.hero .eyebrow, .docs .eyebrow, .contact .eyebrow { color: var(--mint); }
.eyebrow span { width: 26px; height: 1px; background: currentColor; }
h1, h2, h3, h4, p { margin-top: 0; }
.hero h1 { max-width: 710px; margin-bottom: 20px; color: white; font-size: clamp(2.25rem,3.5vw,2.75rem); line-height: 1.24; letter-spacing: 0; font-weight: 600; }
.hero h1 em { color: var(--mint); font-style: normal; }
.hero-text { max-width: 620px; margin-bottom: 32px; color: #aebed0; font-size: 1rem; line-height: 1.7; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.button { min-height: 48px; padding: 11px 20px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; border: 1px solid transparent; border-radius: 10px; font-size: .875rem; font-weight: 600; transition: .2s; }
.home-page .button, .docs-page .button { min-height: 42px; padding: 9px 16px; gap: 10px; border-radius: 9px; font-size: .8125rem; }
.button:hover { transform: translateY(-2px); }
.button.primary { color: var(--ink); background: var(--mint); }
.button.ghost { color: white; border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.04); }

.signal-panel { position: relative; min-height: 360px; overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: 20px; background: linear-gradient(160deg, rgba(19,41,68,.9), rgba(7,20,38,.76)); box-shadow: 0 26px 76px rgba(0,0,0,.25); }
.signal-panel::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(61,217,179,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(61,217,179,.06) 1px, transparent 1px); background-size: 28px 28px; }
.panel-top { position: relative; z-index: 2; min-height: 56px; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.1); color: #8093aa; font-size: .75rem; font-weight: 600; letter-spacing: .08em; }
.live i { display: inline-block; width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 12px var(--mint); }
.radar { position: relative; width: 200px; aspect-ratio: 1; margin: 20px auto 16px; border-radius: 50%; background: radial-gradient(circle, rgba(61,217,179,.08), transparent 65%); }
.radar::before, .radar::after { content: ""; position: absolute; background: rgba(61,217,179,.18); }
.radar::before { width: 1px; inset: 0 auto 0 50%; }.radar::after { height: 1px; inset: 50% 0 auto; }
.ring { position: absolute; inset: 50%; transform: translate(-50%,-50%); border: 1px solid rgba(61,217,179,.22); border-radius: 50%; }
.r1 { width: 33%; height: 33%; }.r2 { width: 66%; height: 66%; }.r3 { width: 99%; height: 99%; }
.sweep { position: absolute; inset: 0; border-radius: 50%; background: conic-gradient(from 15deg, transparent 0 73%, rgba(61,217,179,.02) 77%, rgba(61,217,179,.22) 99%, transparent); animation: sweep 5s linear infinite; }
.center { position: absolute; left: 50%; top: 50%; width: 14px; height: 14px; transform: translate(-50%,-50%); border: 3px solid var(--ink); border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 6px rgba(61,217,179,.12), 0 0 26px var(--mint); }
.dot { position: absolute; width: 8px; height: 8px; border: 2px solid #b8fff0; border-radius: 50%; background: var(--mint); box-shadow: 0 0 12px rgba(61,217,179,.9); }
.d1 { left: 31%; top: 23%; }.d2 { right: 18%; top: 47%; }.d3 { left: 23%; bottom: 20%; }
@keyframes sweep { to { transform: rotate(360deg); } }
.readout { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(255,255,255,.1); }
.readout div { padding: 14px 16px; border-right: 1px solid rgba(255,255,255,.1); }.readout div:last-child { border: 0; }
.readout span { display: block; color: #60758c; font-size: .75rem; letter-spacing: .08em; }.readout strong { display: block; color: #d7e2ee; font-size: .75rem; font-weight: 600; }
.stats { position: relative; z-index: 3; margin-top: 40px; display: grid; grid-template-columns: repeat(4,1fr); border-block: 1px solid rgba(255,255,255,.12); }
.stats div { min-height: 72px; display: flex; align-items: center; gap: 10px; padding: 12px 18px; border-right: 1px solid rgba(255,255,255,.12); }.stats div:last-child { border: 0; }
.stats strong { color: white; font-size: 1rem; font-weight: 600; }.stats span { color: #8396aa; font-size: .8125rem; }

.section-heading { margin-bottom: 30px; display: flex; align-items: end; justify-content: space-between; gap: 30px; }
.section-heading h2, .contact h2 { margin-bottom: 0; color: var(--ink); font-size: clamp(1.75rem,2.5vw,2.125rem); line-height: 1.3; letter-spacing: 0; font-weight: 600; }
.section-heading > p { max-width: 420px; margin-bottom: 4px; color: var(--muted); }
.product-catalog-controls { margin:-10px 0 24px; display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,350px); align-items:end; gap:22px; border-bottom:1px solid var(--line); }
.product-type-tabs { display:flex; align-items:center; gap:8px; }
.product-type-tabs button { min-height:40px; padding:0 14px; display:inline-flex; align-items:center; gap:8px; border:0; border-bottom:2px solid transparent; color:#617488; background:transparent; font:inherit; font-size:.8125rem; font-weight:600; line-height:1; cursor:pointer; }
.product-type-tabs button:hover { color:var(--ink); }
.product-type-tabs button.active { color:#087d64; border-bottom-color:#0b9a79; }
.product-type-tabs button span { min-width:22px; padding:2px 6px; border-radius:10px; color:inherit; background:#edf3f7; font-size:.6875rem; text-align:center; }
.product-type-tabs button.active span { background:#ddf6ee; }
.product-search { min-height:38px; margin-bottom:6px; display:flex; align-items:center; gap:9px; padding:0 12px; border:1px solid #c9d6e1; border-radius:10px; background:#fff; transition:border-color .2s,box-shadow .2s; }
.product-search:focus-within { border-color:#0b9a79; box-shadow:0 0 0 3px rgba(11,154,121,.12); }
.product-search > span[aria-hidden] { color:#668095; font-size:1.15rem; line-height:1; }
.product-search input { width:100%; min-width:0; height:36px; padding:0; border:0; outline:0; color:var(--ink); background:transparent; font:inherit; font-size:.8125rem; }
.product-search input::placeholder { color:#8293a3; }
.product-search:has(input:disabled) { opacity:.62; background:#f5f8fa; }
.product-catalog-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.product-catalog-empty { grid-column:1/-1; padding:58px 24px; border:1px dashed #cbd8e2; border-radius:18px; color:var(--muted); background:#f8fafb; text-align:center; }
.service-category { margin: -18px 0 46px; padding: 24px 28px; display: flex; align-items: center; justify-content: space-between; gap: 36px; color: white; border-radius: 18px; background: linear-gradient(120deg, var(--ink), #123760); box-shadow: var(--shadow); }
.service-category small { color: var(--mint); font: 600 .75rem ui-monospace, monospace; letter-spacing: .08em; }
.service-category h3 { margin: 3px 0 0; color: white; font-size: 1.5rem; font-weight: 600; }
.service-category p { max-width: 650px; margin: 0; color: #b9c8d8; }
.product-group + .product-group { margin-top: 72px; }
.group-heading { margin-bottom: 24px; display: flex; align-items: center; gap: 18px; }
.group-heading > span { width: 48px; height: 48px; display: grid; place-items: center; color: var(--blue); border: 1px solid #bdd2ec; border-radius: 12px; background: #e9f2fd; font: 600 .75rem ui-monospace, monospace; }
.group-heading h3 { margin: 0; color: var(--ink); font-size: 1.25rem; font-weight: 600; }.group-heading p { margin: 1px 0 0; color: var(--muted); font-size: .875rem; }
.card-grid { display: grid; gap: 18px; }.card-grid.four { grid-template-columns: repeat(4,1fr); }.card-grid.two { grid-template-columns: repeat(2,1fr); }
.product-card, .dataset-card { border: 1px solid var(--line); border-radius: 20px; background: white; transition: .25s; }
.product-card:hover, .dataset-card:hover { transform: translateY(-5px); border-color: #b9cce1; box-shadow: var(--shadow); }
.product-card.planned { opacity: .72; background: #f7f9fb; }
.product-card.planned:hover { transform: none; border-color: var(--line); box-shadow: none; }
.product-card { min-height: 268px; padding: 18px; display: flex; flex-direction: column; }
.icon { width: 54px; height: 54px; margin-bottom: 20px; display: grid; place-items: center; color: var(--blue); border-radius: 16px; background: #edf5ff; font-size: 1.8rem; line-height: 1; }.icon.mint { color: #0b9a79; background: #dffaf2; }
.product-card small, .dataset-card small { color: var(--blue); font: 600 .75rem ui-monospace, monospace; letter-spacing: .06em; }
.product-card h4, .dataset-card h4 { margin: 7px 0 9px; color: var(--ink); font-size: 1.125rem; line-height: 1.55; letter-spacing: .01em; font-weight: 600; }
.product-card p, .dataset-card p { color: var(--muted); font-size: .875rem; line-height: 1.7; }
.product-package-list { margin:2px 0 22px; display:flex; flex-direction:column; align-items:flex-start; gap:7px; }
.product-package-list span { padding:4px 8px; border-radius:5px; color:#48647d; background:#eef4f8; font-size:.8125rem; line-height:1.35; }
.product-card-actions { margin-top:auto; display:flex; align-items:center; gap:10px; }
.product-card-actions .button.compact { min-height:40px; padding:0 16px; font-size:.8125rem; }
.product-card-actions .button.disabled { color:#527668; background:#9ce8d5; cursor:not-allowed; opacity:.72; }
.product-card .icon { width:42px; height:42px; margin-bottom:12px; border-radius:12px; font-size:1.35rem; }
.product-card small { font-size:.6875rem; }
.product-card h4 { margin:5px 0 6px; font-size:1rem; line-height:1.4; }
.product-card p { margin:0; font-size:.8125rem; line-height:1.55; }
.product-card .product-package-list { margin:10px 0 16px; gap:5px; }
.product-card .product-package-list span { max-width:100%; padding:3px 7px; font-size:.71875rem; line-height:1.35; overflow-wrap:anywhere; }
.product-card-actions { gap:6px; flex-wrap:wrap; }
.product-card-actions .button.compact { min-height:34px; padding:0 10px; font-size:.75rem; }
.products .section-heading { margin-bottom:20px; }
.products .product-catalog-controls { margin-top:0; margin-bottom:18px; }
.product-catalog-loading { grid-column:1/-1; padding:54px 24px; color:var(--muted); text-align:center; }
.doc-link { margin-top: auto; align-self: flex-start; padding: 0; border: 0; color: var(--ink); background: none; font-size: .875rem; font-weight: 600; cursor: pointer; }.doc-link span { margin-left: 5px; color: var(--blue); }
.dataset-card { min-height: 250px; padding: 24px; display: grid; grid-template-columns: 180px 1fr; gap: 26px; align-items: center; }
.dataset-card > div:last-child { min-height: 190px; display: flex; flex-direction: column; align-items: flex-start; }
.map { position: relative; min-height: 200px; overflow: hidden; border-radius: 14px; background-color: #0c2138; background-image: linear-gradient(rgba(61,217,179,.1) 1px, transparent 1px), linear-gradient(90deg, rgba(61,217,179,.1) 1px, transparent 1px); background-size: 26px 26px; }
.map::before { content: ""; position: absolute; inset: 18% 13%; border: 1px solid rgba(61,217,179,.36); border-radius: 48% 36% 55% 42%; transform: rotate(-9deg); }.map.domestic::before { inset: 16% 24% 17% 18%; transform: rotate(13deg); }
.map i { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 5px rgba(61,217,179,.1), 0 0 15px var(--mint); }
.map i:nth-child(1) { left: 24%; top: 30%; }.map i:nth-child(2) { right: 22%; top: 26%; }.map i:nth-child(3) { left: 44%; bottom: 25%; }.map i:nth-child(4) { right: 18%; bottom: 37%; }

.docs { overflow: hidden; color: #dfe8f2; background: var(--ink); }
.docs::after { content: ""; position: absolute; width: 600px; height: 600px; left: -240px; top: 150px; background: radial-gradient(circle, rgba(23,105,224,.18), transparent 70%); }
.docs .shell { position: relative; z-index: 2; }.section-heading.light h2 { color: white; }.section-heading.light > p { color: #8fa1b5; }
.docs-page-section { min-height: calc(100vh - 72px); padding-top: 112px; }
.docs-page-heading { margin-bottom: 20px; display: grid; grid-template-columns: 1fr minmax(280px,420px); gap: 28px; align-items: end; }
.docs-page-heading h1 { margin: 0; font-size: clamp(1.75rem,2.5vw,2.125rem); line-height: 1.3; font-weight: 600; }
.docs-page-heading > p { margin: 0 0 3px; color: #8fa1b5; font-size: .8125rem; }
.docs-status { margin-bottom: 28px; padding: 16px 20px; display: flex; align-items: center; gap: 18px; border: 1px solid rgba(61,217,179,.24); border-radius: 12px; background: rgba(61,217,179,.065); font-size: .875rem; }
.docs-status strong { flex: none; color: var(--mint); font-weight: 600; }
.docs-status span { color: #a8bccd; }
.docs-layout { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 18px; align-items: start; }
.docs-sidebar { position: sticky; top: 86px; padding: 10px; border: 1px solid rgba(255,255,255,.11); border-radius: 14px; background: rgba(255,255,255,.035); }
.docs-sidebar p { margin: 8px 9px 6px; color: #60758c; font-size: .6875rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.doc-tab { width: 100%; min-height: 38px; padding: 7px 9px; display: flex; justify-content: space-between; align-items: center; border: 0; border-radius: 8px; color: #9aacbf; background: transparent; font-size: .8125rem; text-align: left; cursor: pointer; }.doc-tab span { color: #4e647b; font: .6875rem ui-monospace, monospace; }
.doc-tab:hover { color: white; background: rgba(255,255,255,.05); }.doc-tab.active { color: var(--ink); background: var(--mint); font-weight: 600; }.doc-tab.active span { color: #167e66; }
.doc-content { min-height: 560px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: var(--ink-2); }
.doc-panel { display: none; padding: clamp(20px,3vw,34px); animation: panel-in .28s ease; }.doc-panel.active { display: block; }
@keyframes panel-in { from { opacity: 0; transform: translateY(8px); } }
.doc-panel > header { padding-bottom: 20px; border-bottom: 1px solid rgba(255,255,255,.1); }
.doc-panel > header h3 { margin: 0 0 6px; color: white; font-size: clamp(1.5rem,2vw,1.75rem); line-height: 1.3; letter-spacing: 0; font-weight: 600; }.doc-panel > header p { margin: 0; color: #90a3b7; font-size: .875rem; }
.doc-columns { margin: 32px 0; display: grid; grid-template-columns: repeat(2,1fr); gap: 48px; }.doc-columns h4, .field-title { margin-bottom: 15px; color: white; font-size: 1rem; font-weight: 600; }
dl { margin: 0; } dl div { padding: 11px 0; display: grid; grid-template-columns: 112px 1fr; border-bottom: 1px solid rgba(255,255,255,.075); } dt { color: #80a9d7; font: .875rem ui-monospace, monospace; } dd { margin: 0; color: #98aabd; font-size: .875rem; }
.code-block { overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 14px; background: #06101e; }.code-block > div { min-height: 42px; padding: 0 15px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.08); color: #5f738a; font-size: .75rem; letter-spacing: .08em; }.copy-code { border: 0; color: #9cb0c4; background: none; cursor: pointer; }.copy-code:hover { color: var(--mint); }
pre { margin: 0; padding: 14px; overflow-x: auto; color: #c8d6e5; font: .75rem/1.65 ui-monospace, monospace; }.note { margin: 16px 0 0; padding: 10px 12px; color: #91a5ba; border-left: 3px solid var(--mint); background: rgba(61,217,179,.055); font-size: .8125rem; }
.specs { margin: 32px 0; display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; }.specs div { padding: 16px; border: 1px solid rgba(255,255,255,.09); border-radius: 10px; background: rgba(255,255,255,.025); }.specs span { display: block; color: #60758c; font-size: .75rem; }.specs strong { color: #d4e0ec; font-size: .875rem; font-weight: 600; }
.field-table { overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; }.field-table > div { min-height: 40px; padding: 8px 12px; display: grid; grid-template-columns: 1fr 1.6fr 1.4fr; align-items: center; border-bottom: 1px solid rgba(255,255,255,.07); color: #93a5b8; font-size: .8125rem; }.field-table > div:last-child { border: 0; }.field-table .head { color: #6d8094; background: rgba(255,255,255,.035); font-size: .6875rem; font-weight: 600; }.field-table code { color: #72d9c0; }
.api-field-table > div { grid-template-columns:minmax(105px,.7fr) minmax(74px,.5fr) minmax(74px,.5fr) minmax(320px,2.3fr); }
.response-field-table { margin-top: 12px; }.response-field-table > div { grid-template-columns:minmax(145px,.8fr) minmax(110px,.65fr) minmax(320px,2fr); }.response-field-table code.level-1 { padding-left: 18px; }.response-field-table code.level-1::before { content: "└ "; color: #50667d; }.response-field-table code.level-2 { padding-left: 36px; }.response-field-table code.level-2::before { content: "└ "; color: #50667d; }
.response-format { margin: 10px 0; color: #91a5ba; font-size: .8125rem; }.response-format strong { color: #c8d6e5; }.response-format code { color: #72d9c0; overflow-wrap: anywhere; }
.error-code-table { margin-top: 12px; }.error-code-table > div { grid-template-columns:minmax(120px,.45fr) minmax(320px,2fr); }
.api-code-card { overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 14px; background: #06101e; }.api-code-toolbar { min-height: 48px; padding: 0 12px 0 8px; display: flex; align-items: center; justify-content: space-between; gap: 14px; border-bottom: 1px solid rgba(255,255,255,.08); }.api-language-tabs { min-width: 0; display: flex; overflow-x: auto; scrollbar-width: thin; }.api-language-tabs button { flex: none; min-height: 47px; padding: 0 11px; border: 0; border-bottom: 2px solid transparent; color: #8093a7; background: transparent; font: .78rem ui-monospace, monospace; cursor: pointer; }.api-language-tabs button:hover { color: #c8d6e5; }.api-language-tabs button.active { color: var(--mint); border-bottom-color: var(--mint); }.copy-api-code { flex: none; padding: 7px 10px; border: 1px solid rgba(255,255,255,.12); border-radius: 7px; color: #aebed0; background: rgba(255,255,255,.055); cursor: pointer; }.copy-api-code:hover { color: var(--mint); border-color: rgba(61,217,179,.32); }.api-code-card pre { max-height: 480px; overflow: auto; }
.section-subtitle { margin: 24px 0 12px; font-size: .9375rem; }
.spaced-code { margin-top: 24px; }

.contact { padding: 48px 0; background: #eaf0f7; }.contact-card { padding: clamp(24px,3vw,40px); display: grid; grid-template-columns: 1fr .9fr; gap: 34px; align-items: center; border: 1px solid rgba(61,217,179,.16); border-radius: 20px; color: white; background: linear-gradient(135deg,var(--ink-2),var(--ink)); box-shadow: 0 20px 56px rgba(7,20,38,.16); }.contact h2 { color: white; font-size: clamp(1.625rem,2.3vw,2rem); }.contact-card > div > p:last-child { max-width: 620px; margin: 12px 0 0; color: #aebed0; font-size: .875rem; line-height: 1.6; }
.contact .eyebrow { margin-bottom: 12px; }.contact-email { position: relative; min-height: 88px; padding: 16px 64px 16px 18px; display: flex; flex-direction: column; justify-content: center; border: 1px solid rgba(61,217,179,.3); border-radius: 12px; background: rgba(61,217,179,.06); transition: .2s; }.contact-email span { color: #8ecfbe; font-size: .75rem; }.contact-email strong { margin-top: 3px; font-size: 1rem; font-weight: 600; overflow-wrap: anywhere; }
.contact-email-copy { padding-right:116px; }.contact-email-copy button { position:absolute; right:16px; top:50%; transform:translateY(-50%); min-height:34px; padding:0 10px; border:1px solid rgba(61,217,179,.42); border-radius:8px; color:var(--mint); background:rgba(61,217,179,.08); font:inherit; font-size:.75rem; font-weight:600; cursor:pointer; }.contact-email-copy button:hover { background:rgba(61,217,179,.16); }.contact-email-copy button:focus-visible { outline:2px solid var(--mint); outline-offset:2px; }
.contact-channels { display:grid; grid-template-columns:1fr; gap:10px; }.contact-channels .contact-email { min-height:88px; }
.contact-wecom { min-height: 176px; padding: 14px 18px; display: grid; grid-template-columns: minmax(0,1fr) 128px; gap: 14px; align-items: center; border: 1px solid rgba(61,217,179,.3); border-radius: 12px; background: rgba(61,217,179,.06); }.contact-wecom span { display:block; color:#8ecfbe; font-size:.75rem; }.contact-wecom strong { display:block; margin-top:4px; font-size:1rem; font-weight:600; }.contact-wecom img { width:128px; height:auto; display:block; border-radius:10px; background:#fff; }
.site-footer { padding: 28px 0; color: #76889c; background: var(--ink); }.site-footer .shell { display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; gap: 20px; }.site-footer p { margin: 0; font-size: .875rem; text-align: center; }.site-footer p:last-child { text-align: right; }.site-footer .brand { font-size: .875rem; }
.footer-legal { display:flex; align-items:center; justify-content:flex-end; gap:10px; white-space:nowrap; }.site-footer a { color:inherit; text-decoration:none; }.site-footer a:hover { color:var(--mint); }

.reveal { opacity: 0; transform: translateY(18px); transition: opacity .65s, transform .65s; }.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 1280px) { .product-catalog-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width: 1050px) { .hero { min-height: 540px; }.hero-layout { gap: 36px; }.signal-panel { min-height: 340px; }.radar { width: 190px; }.card-grid.four,.product-catalog-grid { grid-template-columns: repeat(2,1fr); }.dataset-card { grid-template-columns: 145px 1fr; }.specs { grid-template-columns: repeat(2,1fr); }.auth-trigger.signed-in { max-width: 155px; } }
@media (max-width: 780px) {
  .section { padding: 60px 0; }.nav-wrap { grid-template-columns: minmax(0,1fr) auto; column-gap: 16px; }.header-actions { gap: 9px; }.account-menu { padding-left: 0; border-left: 0; }.menu-button { display: block; cursor: pointer; }.site-nav { position: absolute; left: 0; right: 0; top: 64px; padding: 10px; display: none; flex-direction: column; gap: 2px; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; background: #0b1b30; box-shadow: 0 18px 50px rgba(0,0,0,.22); }.site-nav.open { display: flex; }.site-nav a { padding: 10px 12px; }.site-nav a::after { display: none; }.auth-trigger { max-width: 165px; padding-inline: 12px; }
  .hero { min-height: auto; padding: 96px 0 52px; }.hero-layout { grid-template-columns: 1fr; }.signal-panel { max-width: 520px; min-height: 350px; width: 100%; margin: auto; }.radar { width: 200px; }.stats { grid-template-columns: repeat(2,1fr); }.stats div:nth-child(2) { border-right: 0; }.stats div:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.12); }
  .section-heading { align-items: start; flex-direction: column; gap: 10px; margin-bottom: 24px; }.product-catalog-controls { grid-template-columns:1fr; align-items:stretch; gap:8px; }.product-search { order:-1; margin-bottom:0; }.service-category { margin-top: -8px; align-items: flex-start; flex-direction: column; gap: 10px; }.card-grid.two { grid-template-columns: 1fr; }.docs-page-section { padding-top: 100px; }.docs-page-heading { grid-template-columns: 1fr; gap: 8px; margin-bottom: 18px; }.docs-status { align-items: flex-start; flex-direction: column; gap: 5px; }.docs-layout { grid-template-columns: 1fr; }.docs-sidebar { position: static; display: grid; grid-template-columns: repeat(2,1fr); gap: 5px; }.docs-sidebar p { grid-column: 1/-1; }.doc-content { min-height: 0; }.contact-card { grid-template-columns: 1fr; gap: 22px; }.contact-channels { grid-template-columns:1fr; }
}
@media (max-width: 560px) {
  .shell { width: min(calc(100% - 28px),var(--shell)); } .hero h1 { font-size: 2rem; line-height: 1.35; }.brand { gap: 8px; }.brand-mark { width: 29px; height: 29px; }.auth-trigger { max-width: 130px; min-height: 36px; padding-inline: 9px; }.card-grid.four,.product-catalog-grid { grid-template-columns: 1fr; }.product-type-tabs { overflow-x:auto; }.product-type-tabs button { flex:none; padding-inline:14px; }.product-card { min-height:0; }.dataset-card { grid-template-columns: 1fr; }.map { min-height: 150px; }.readout div { padding: 12px 8px; }.readout strong { font-size: .75rem; }.stats div { padding: 13px 14px; flex-direction: column; align-items: start; gap: 0; }
  .docs-sidebar { grid-template-columns: 1fr; }.doc-columns { grid-template-columns: 1fr; gap: 28px; }.specs { grid-template-columns: 1fr; } dl div { grid-template-columns: 100px 1fr; }.field-table { overflow-x: auto; }.field-table > div { min-width: 590px; }.contact-card { width: calc(100% - 20px); }.contact-wecom { grid-template-columns:1fr; text-align:center; }.contact-wecom img { width:min(180px,100%); margin:auto; }.contact-email-copy { padding-right:26px; padding-bottom:72px; }.contact-email-copy button { left:26px; right:26px; top:auto; bottom:20px; transform:none; }.site-footer .shell { grid-template-columns: 1fr; justify-items: center; }.site-footer p:last-child { text-align: center; }.footer-legal { justify-content:center; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *,*::before,*::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }.reveal { opacity: 1; transform: none; } }
