:root{--ink:#202c4a;--muted:#61708a;--green:#4056bd;--mint:#e7ecff;--line:#dde3ef;--paper:#f5f7fc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #4056bd;outline-offset:5px}.container{max-width:1180px;padding-left:28px;padding-right:28px}.skip-link{position:fixed;top:-100px;left:20px;z-index:2000;padding:12px 20px;background:white}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:100;background:rgba(245,247,252,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.navbar{padding:17px 0}.navbar-brand{display:flex;align-items:center;gap:20px;margin:0}.brand-image{height:40px;width:auto;max-width:180px;object-fit:contain}.brand-subtitle{font-size:12px;color:var(--muted);border-left:1px solid #d2daea;padding-left:18px}.navbar .nav-link{font-size:14px;font-weight:600;color:var(--muted);margin-left:21px;padding:8px 0}.navbar .nav-link:hover{color:var(--green)}.navbar .nav-download{margin-left:30px;padding:9px 17px;background:var(--ink);color:#fff;border-radius:7px}.navbar .nav-download:hover{background:var(--green);color:#fff}.nav-download span{margin-left:16px}.hero{padding:85px 0 0;background:radial-gradient(ellipse at 90% 20%,#e4ebff 0,transparent 57%)}.eyebrow{display:flex;gap:9px;align-items:center;color:var(--green);font-size:11px;font-weight:700;letter-spacing:1.6px}.eyebrow>span,.small-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green)}h1{font-size:clamp(38px,4.6vw,62px);font-weight:750;letter-spacing:-2.7px;line-height:1.24;margin:22px 0 24px}.accent{color:var(--green)}.hero-description{max-width:520px;font-size:17px;color:var(--muted);line-height:1.95;margin-bottom:28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;min-height:49px;padding:11px 21px;font-size:14px;font-weight:650;border:1px solid transparent;border-radius:7px;transition:background .18s,transform .18s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--green);color:white}.button-primary:hover{background:#304398;color:white}.button-secondary{border-color:#cbd5e9;background:transparent;color:var(--ink)}.button-secondary:hover{background:#e8edfb;color:var(--green)}.hero-notes{display:flex;gap:23px;margin-top:26px;font-size:12px;color:var(--muted)}.hero-notes span:before{content:'✓';color:var(--green);margin-right:7px}.overview{background:#fff;border:1px solid #d8dfef;border-radius:13px;box-shadow:0 26px 65px -30px #425ba633;transform:rotate(1deg);overflow:hidden}.overview-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 19px;font-size:11px;color:var(--muted);background:#fafbff}.window-dots{color:#cbd5e9;letter-spacing:3px;font-size:9px}.overview-mark{font-weight:800;color:var(--green)}.overview-body{padding:27px}.overview-label{color:var(--green);font-size:9px;letter-spacing:1.8px;font-weight:700}.overview h2{font-size:23px;font-weight:700;margin:10px 0 8px}.overview-body>p{font-size:12px;color:var(--muted);margin-bottom:24px}.workflow-row{display:flex;align-items:center;gap:13px;padding:15px 0;border-top:1px solid #edf0f8}.workflow-icon{display:grid;place-items:center;flex-shrink:0;width:39px;height:39px;background:#edf1ff;border-radius:9px;color:var(--green);font-size:12px;font-weight:650}.workflow-row h3{font-size:14px;margin:0 0 3px;font-weight:700}.workflow-row p{font-size:11px;color:var(--muted);margin:0}.row-arrow{margin-left:auto;color:#6b7fad}.overview-bottom{display:flex;align-items:center;gap:8px;margin-top:13px;padding-top:17px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.overview-bottom>span:last-child{margin-left:auto;color:var(--green);font-size:23px;line-height:1}.intro-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #d8dfef;margin-top:68px;padding:28px 0;color:var(--muted)}.intro-strip>span{font-size:11px;line-height:1.8}.intro-strip strong{font-size:13px;color:var(--ink);font-weight:600}.intro-strip p{font-size:16px;font-weight:600;margin:0;color:#465a82;letter-spacing:1px}.intro-strip i{color:#bac7df;font-style:normal}.section{padding:85px 0}.features-section{background:#fff}.section-label{display:block;font-size:11px;font-weight:700;color:var(--green);letter-spacing:1.8px;margin-bottom:16px}.section h2{font-size:clamp(29px,3vw,39px);font-weight:700;line-height:1.4;letter-spacing:-1px;margin:0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:37px}.section-heading>p,.section-description{font-size:14px;color:var(--muted);margin:0;line-height:1.9}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{position:relative;border:1px solid var(--line);border-radius:10px;padding:27px 26px;transition:transform .2s,border-color .2s}.feature-card:hover{transform:translateY(-4px);border-color:#9caee1}.feature-symbol{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;color:var(--green);background:#edf1ff;font-size:24px;font-family:Consolas,monospace}.feature-number{position:absolute;right:26px;top:32px;font-size:11px;color:#7b8aa8}.feature-card h3{font-size:18px;font-weight:700;margin:22px 0 12px}.feature-card p{font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:24px}.feature-meta{font-size:10px;letter-spacing:1px;color:#627493}.feature-dark{background:var(--ink);border-color:var(--ink);color:#fff}.feature-dark .feature-symbol{background:#34456e;color:#b9d9ff;font-size:17px}.feature-dark p{color:#c5d0e8}.feature-dark .feature-number{color:#a8b9df}.feature-dark a{font-size:12px;color:#d1e3ff}.feature-dark a span{margin-left:16px}.section-note{margin:20px 0 0;font-size:11px;color:var(--muted)}.downloads-section{background:#eef2fb}.download-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.download-card{border:1px solid #d7dfef;border-radius:12px;background:#fff;padding:32px;display:flex;align-items:flex-start;flex-direction:column}.download-top{display:flex;width:100%;justify-content:space-between;align-items:center;color:var(--green)}.tag{font-size:11px;padding:4px 10px;background:#e9eeff;border-radius:5px;font-weight:600}.download-card h3{font-size:27px;font-weight:700;margin:23px 0 12px}.download-card p{font-size:14px;color:var(--muted);max-width:420px;margin-bottom:20px}.repo-name{font-family:Consolas,monospace;font-size:11px;color:var(--muted);margin-top:auto;margin-bottom:25px;overflow-wrap:anywhere}.integrated{background:#f8faff}.install-section{background:#fff;border-bottom:1px solid var(--line)}.section-description{margin-top:19px;max-width:310px}.install-tip{border-left:2px solid #8b9fdf;margin-top:31px;padding:4px 0 4px 18px;max-width:310px}.install-tip strong{font-size:13px}.install-tip p{font-size:12px;color:var(--muted);margin:7px 0 0}.steps{padding:0;margin:0;list-style:none}.steps li{display:flex;gap:23px;padding:24px 0;border-top:1px solid var(--line)}.steps li:first-child{padding-top:0;border:0}.steps li:last-child{padding-bottom:0}.step-number{flex-shrink:0;font-family:Consolas,monospace;font-size:13px;color:var(--green);padding-top:2px}.steps h3{font-size:17px;font-weight:650;margin:0 0 10px}.steps p{font-size:13px;color:var(--muted);margin:0;line-height:1.9}.menu-code{display:block;background:#eef2ff;border:1px solid #dbe3f7;color:#354d9b;font-size:13px;padding:12px 16px;border-radius:6px;margin-top:13px;overflow-wrap:anywhere}.faq-list details{border-bottom:1px solid var(--line);padding:21px 0}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:15px;font-weight:600;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:22px;color:var(--green);font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:13px;color:var(--muted);line-height:1.9;margin:14px 30px 0 0}.site-footer{border-top:1px solid var(--line);padding:29px 0;background:#fff}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-inner strong{font-size:16px}.footer-inner div>span{font-size:11px;color:var(--muted);margin-left:18px}.footer-inner p,.footer-inner>a{font-size:11px;color:var(--muted);margin:0}.navbar-toggler{border-color:var(--line);font-size:16px;padding:8px}.navbar-toggler-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cpath stroke='%23172d37' stroke-width='2' d='M5 8h20M5 15h20M5 22h20'/%3E%3C/svg%3E")}@media(min-width:1400px){.hero{padding-top:100px}}@media(max-width:991.98px){.navbar .nav-link{margin:0;padding:12px 0}.navbar .nav-download{margin:8px 0;padding:10px 16px;display:inline-block}.navbar-collapse{padding-top:16px}.hero{padding-top:55px}h1{font-size:52px}.hero-description{max-width:650px}.overview{transform:none;max-width:600px}.intro-strip{margin-top:40px}.feature-grid{grid-template-columns:repeat(2,1fr)}.section{padding:60px 0}.section-heading>p br{display:none}.section-heading>p{max-width:280px}.section-description,.install-tip{max-width:600px}}@media(max-width:575.98px){.container{padding-left:22px;padding-right:22px}.navbar{padding:13px 0}.brand-image{height:33px;max-width:135px}.brand-subtitle{display:none}.hero{padding-top:39px}.eyebrow{font-size:9px;letter-spacing:1px}h1{font-size:39px;letter-spacing:-1.8px;margin-top:21px}.hero-description{font-size:14px}.hero-actions{gap:10px}.button{font-size:12px;gap:14px;padding:11px 15px}.hero-notes{gap:18px;font-size:10px}.overview-body{padding:22px}.overview h2{font-size:22px}.intro-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:23px 0}.intro-strip>span{grid-column:1 / -1;margin-bottom:5px}.intro-strip>span br{display:none}.intro-strip strong{margin-left:8px}.intro-strip i{display:none}.intro-strip p{font-size:13px}.section{padding:47px 0}.section-heading{display:block;margin-bottom:26px}.section-heading>p{margin-top:15px;max-width:none}.section h2{font-size:29px}.feature-grid,.download-grid{grid-template-columns:1fr}.feature-card{padding:25px}.feature-card h3{margin-top:18px}.download-card{padding:25px}.download-card h3{font-size:24px}.steps li{gap:17px}.footer-inner{flex-wrap:wrap;gap:15px}.footer-inner>div{width:100%}.footer-inner>a{margin-left:auto}.section-label{font-size:10px}.faq-list summary{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Responsive navigation and comfortable touch layouts. */
.navbar-toggler { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-width: 76px; min-height: 44px; border-radius: 9px; color: var(--ink); background: #fff; }
.menu-label { font-size: 13px; font-weight: 600; }
.navbar-toggler-icon { width: 21px; height: 21px; }
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath stroke='%23202c4a' stroke-width='2' stroke-linecap='round' d='m6 6 12 12M6 18 18 6'/%3E%3C/svg%3E"); }
.eyebrow > span, .small-dot { background: #177d9a; }
@media (min-width: 992px) { .navbar-toggler { display: none; } }
@media (max-width: 991.98px) {
  html { scroll-padding-top: 86px; }
  .navbar > .container { position: relative; }
  .navbar-collapse { position: absolute; top: calc(100% + 13px); left: 28px; right: 28px; padding: 12px; background: #fff; border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 18px 45px #202c4a20; max-height: calc(100dvh - 110px); overflow-y: auto; }
  .navbar .nav-link { padding: 13px 16px; min-height: 48px; border-radius: 7px; }
  .navbar .nav-link:hover { background: #edf1ff; }
  .navbar .nav-download { display: flex; align-items: center; justify-content: space-between; margin: 7px 0 0; padding: 13px 16px; background: var(--green); }
  .navbar .nav-download:hover { background: #304398; }
  .workflow-row > div, .steps li > div { min-width: 0; }
}
@media (max-width: 575.98px) {
  .container { padding-left: 20px; padding-right: 20px; }
  .navbar { padding: 10px 0; }
  .navbar-collapse { left: 20px; right: 20px; top: calc(100% + 10px); }
  .brand-image { height: 38px; max-width: 150px; }
  .hero { padding-top: 34px; }
  .hero .row { --bs-gutter-y: 30px; }
  h1 { font-size: clamp(32px, 8.6vw, 43px); letter-spacing: -1.2px; line-height: 1.32; margin: 19px 0; }
  h1 .accent { white-space: nowrap; }
  .hero-description { font-size: 15px; line-height: 1.85; margin-bottom: 23px; }
  .hero-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .button { min-height: 48px; font-size: 13px; padding: 12px 14px; gap: 8px; }
  .hero-notes { justify-content: space-between; gap: 8px; font-size: 12px; margin-top: 21px; }
  .overview-body { padding: 21px; }
  .overview-body > p, .workflow-row p { font-size: 12px; }
  .workflow-row { padding: 14px 0; gap: 11px; }
  .workflow-row h3 { font-size: 15px; }
  .overview-bottom { font-size: 11px; }
  .intro-strip { margin-top: 30px; }
  .intro-strip p { padding: 9px 12px; background: #e9effb; border-radius: 6px; }
  .section { padding: 43px 0; }
  .section h2 { font-size: clamp(25px, 7vw, 30px); line-height: 1.45; }
  .section-heading > p, .section-description { font-size: 14px; }
  .feature-grid, .download-grid { gap: 14px; }
  .feature-card { padding: 23px; }
  .feature-card p, .download-card p, .steps p, .faq-list details p { font-size: 14px; line-height: 1.85; }
  .feature-meta, .section-note, .repo-name { font-size: 12px; }
  .feature-card p { margin-bottom: 17px; }
  .download-card { padding: 23px; }
  .download-card .button { width: 100%; }
  .install-section .row, .faq-section .row { --bs-gutter-y: 28px; }
  .install-tip { margin-top: 22px; }
  .install-tip p { font-size: 13px; }
  .steps li { gap: 13px; padding: 21px 0; }
  .steps h3 { font-size: 16px; }
  .faq-list details { padding: 14px 0; }
  .faq-list summary { min-height: 44px; font-size: 15px; line-height: 1.7; }
  .faq-list summary:after { flex-shrink: 0; }
  .faq-list details p { margin: 10px 0 6px; }
  .footer-inner div > span { display: block; margin: 5px 0 0; font-size: 12px; }
  .footer-inner > a { display: inline-flex; min-height: 44px; align-items: center; font-size: 12px; }
}
@media (max-width: 359.98px) {
  .container { padding-left: 16px; padding-right: 16px; }
  .hero-actions { grid-template-columns: 1fr; }
  .hero-actions .button { justify-content: center; }
  .eyebrow { font-size: 8px; letter-spacing: .8px; }
  .overview-body { padding: 17px; }
  .overview h2 { font-size: 20px; }
  .workflow-icon { width: 32px; height: 36px; }
}
@media (max-width: 575.98px) {
  .hero .row, .install-section .row, .faq-section .row { --bs-gutter-x: 24px; }
}

/* Configured external navigation links. */
.nav-external::after { content: "↗"; margin-left: 5px; font-size: 12px; opacity: .7; }
@media (min-width: 992px) {
  .navbar-collapse { min-width: 0; }
  .navbar-nav { flex-wrap: wrap; justify-content: flex-end; row-gap: 3px; }
  .nav-link { overflow-wrap: anywhere; }
}
@media (max-width: 991.98px) {
  .nav-external { display: flex; justify-content: space-between; align-items: center; overflow-wrap: anywhere; }
}
