/* Shared site navigation: sticky header, section tabs and "On this page" sidebar used by every public page. */
.site-header{position:sticky;top:0;z-index:20;max-width:none;margin:0;display:flex;align-items:center;gap:22px;padding:20px 40px;background:#f6f8ff;border-bottom:1px solid #dfe5f4;font-family:Nunito,system-ui,sans-serif}
.site-header.site-header-static{position:relative}
.site-header a{text-decoration:none}
.site-header .brand{display:flex;align-items:center;gap:10px;color:#2546e8;font-size:26px;font-weight:900;letter-spacing:-1px;white-space:nowrap}
.site-header .brand-light{font-weight:650}
.site-header .brand-box{display:block;width:33px;height:33px;margin:0;fill:#2546e8;background:transparent;border-radius:0;transform:none}
.site-header .brand-box path{fill:none;stroke:#dcf77b;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.header-divider{color:#b6c0d9;font-size:25px;font-weight:400;line-height:1}
.header-section{font-size:14px;font-weight:800;color:#192552;white-space:nowrap}
.header-section:hover{color:#2546e8}
.site-header .header-nav{display:flex;align-items:center;gap:24px;margin-left:auto}
.site-header .header-link{position:relative;display:inline-flex;align-items:center;min-height:40px;font-size:13px;font-weight:800;line-height:1;color:#596684;white-space:nowrap}
.site-header .header-link:hover,.site-header .header-link[aria-current=page]{color:#2546e8;text-decoration:none}
.site-header .header-link[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:4px;height:2px;border-radius:2px;background:#2546e8}
.header-cta{flex-shrink:0;padding:11px 15px;border-radius:8px;background:#2546e8;color:#fff;font-size:13px;font-weight:800;white-space:nowrap}
.header-cta:hover{background:#1533cc;color:#fff}
.site-header :is(a):focus-visible{outline:3px solid #2546e8;outline-offset:4px}

body.doc-body{background:#fff}
.doc-layout{display:grid;grid-template-columns:230px minmax(0,850px);gap:70px;max-width:1290px;margin:0 auto;padding:0 40px}
.doc-sidebar{position:sticky;top:115px;align-self:start;margin-top:54px;max-height:calc(100vh - 145px);overflow:auto}
.doc-sidebar details>summary{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;list-style:none;margin:0 0 18px;cursor:default;color:#192552}
.doc-sidebar summary::-webkit-details-marker{display:none}
.doc-sidebar summary span{display:none}
.doc-sidebar nav{display:flex;flex-direction:column;gap:5px;border-left:1px solid #dfe5f4}
.doc-sidebar nav a{padding:9px 15px;color:#596684;font-weight:700;font-size:14px;line-height:1.4;text-decoration:none;border-left:2px solid transparent;margin-left:-1px;border-radius:0 7px 7px 0}
.doc-sidebar nav a:hover{color:#2546e8;background:#f2f5ff}
.doc-sidebar nav a[aria-current=location]{color:#2546e8;background:#edf1ff;border-left-color:#2546e8;font-weight:900}
.doc-sidebar .sidebar-note{margin-top:38px;padding-top:26px;border-top:1px solid #dfe5f4;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.doc-sidebar .sidebar-note>span{font-size:9px;letter-spacing:.08em;font-weight:900;color:#596684}
.doc-sidebar .sidebar-note>a{font-size:13px;font-weight:800;color:#2546e8;text-decoration:none}
.doc-main{min-width:0;padding:50px 0 60px}
.doc-tabs{display:flex;flex-wrap:wrap;gap:10px 18px;margin:0 0 30px;padding:0 0 16px;border-top:0;border-bottom:1px solid #dfe5f4;font-size:13px;font-weight:800}
.doc-tabs a{color:#2546e8;text-decoration:none}
.doc-tabs a:hover{text-decoration:underline}
.doc-tabs a[aria-current=page]{color:#192552;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
.doc-main [id]{scroll-margin-top:115px}

/* Restyle existing page intros and sections inside the shared document layout. */
.doc-main :is(.info-intro,.faq-hero,.sdk-heading){max-width:none;margin:0;padding:0 0 28px;display:block;border:0;background:none}
.doc-main :is(.info-intro,.faq-hero,.sdk-heading) .eyebrow{display:block;font-size:10px;font-weight:900;letter-spacing:.12em;color:#2546e8;margin:0 0 12px}
.doc-main :is(.info-intro,.faq-hero,.sdk-heading) h1{font-size:clamp(34px,4vw,49px);font-weight:950;letter-spacing:-.055em;line-height:1.08;margin:0 0 20px}
.doc-main :is(.info-intro,.faq-hero,.sdk-heading)>p,.doc-main .faq-hero>div>p{max-width:none;font-size:18px;color:#596684;line-height:1.6;margin:0}
.doc-main.info-page,.doc-main .faq-page,.doc-main.sdk-workspace{max-width:none;margin:0;padding:50px 0 60px}
.doc-main .faq-page{padding:0}
.doc-main .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.doc-main .contact-layout{gap:40px}
.doc-main .info-section{border-top:1px solid #dfe5f4;padding:27px 0 0;margin:30px 0 0}
.doc-main .info-section>h2,.doc-main .faq-group>h2,.doc-main .developer-overview h2,.doc-main #manage-keys>h2,.doc-main .sdk-notes>h2{font-size:25px;font-weight:900;letter-spacing:-.035em;line-height:1.3}
.doc-main .faq-group{border-top:1px solid #dfe5f4;padding-top:27px;margin-top:30px}
.doc-main .faq-group:first-child{border-top:0;padding-top:0;margin-top:0}
.doc-main .faq-contact{margin-top:40px}
.doc-main .developer-overview{margin-top:0}

@media(max-width:1050px){.site-header{padding:18px 30px;gap:16px}.site-header .header-nav{gap:16px}.doc-layout{gap:36px;grid-template-columns:205px minmax(0,1fr);padding:0 30px}}
@media(max-width:900px){.doc-sidebar,.reference-sidebar{top:140px}.doc-main [id]{scroll-margin-top:140px}.site-header{flex-wrap:wrap;row-gap:4px}.site-header .header-nav{order:5;flex:1 0 100%;margin-left:0;gap:22px;overflow-x:auto;scrollbar-width:none}.site-header .header-nav::-webkit-scrollbar{display:none}.header-cta{margin-left:auto}}
@media(max-width:760px){
.site-header{padding:14px 20px 4px;gap:12px}
.site-header .brand{font-size:23px;gap:8px}.site-header .brand-box{width:30px;height:30px}
.header-divider{font-size:20px}.header-section{font-size:12px}
.header-cta{padding:8px 11px;font-size:12px}
.site-header .header-link{font-size:12px}
.doc-layout{display:block;padding:0 24px}
.doc-sidebar{position:static;max-height:none;margin-top:22px;padding-bottom:18px;border-bottom:1px solid #dfe5f4}
.doc-sidebar details>summary{margin:0;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:space-between}
.doc-sidebar summary span{display:inline}
.doc-sidebar nav{margin-top:18px}
.doc-sidebar .sidebar-note{display:none}
.doc-main,.doc-main.info-page,.doc-main.sdk-workspace{padding:28px 0 48px}.doc-main .info-grid{grid-template-columns:1fr}
.doc-tabs{font-size:12px;gap:14px 18px}
.doc-main [id]{scroll-margin-top:135px}
.doc-main :is(.info-intro,.faq-hero,.sdk-heading) h1{font-size:37px}
.doc-main :is(.info-intro,.faq-hero,.sdk-heading)>p,.doc-main .faq-hero>div>p{font-size:16px}
.doc-main .info-section>h2,.doc-main .faq-group>h2,.doc-main .developer-overview h2,.doc-main #manage-keys>h2,.doc-main .sdk-notes>h2{font-size:23px}
}
@media(max-width:440px){.header-divider,.header-section{display:none}.doc-main :is(.info-intro,.faq-hero,.sdk-heading) h1{font-size:34px}}
