/* Xshna.css documentation UI — premium, self-hosted, zero webfonts. */
.xsh-doc-body{--xsh-doc-ink:#172037;--xsh-doc-quiet:#637084;--xsh-doc-line:#e9edf3;--xsh-doc-brand:#16426F;--xsh-doc-paper:#fff;background:#fff;color:var(--xsh-doc-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh}
.xsh-doc-body a{text-decoration:none;color:inherit}
.xsh-doc-body a:hover{color:var(--xsh-doc-brand)}
.xsh-doc-header{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,3vw,44px);border-bottom:1px solid var(--xsh-doc-line);background:rgb(255 255 255 / .97);backdrop-filter:blur(16px);position:sticky;top:0;z-index:200}
.xsh-doc-brand{display:flex;align-items:center;gap:11px;font-size:19px;font-weight:850;letter-spacing:-.9px;white-space:nowrap}
.xsh-doc-logo{width:33px;height:33px;display:grid;place-items:center;background:#102944;color:#fff;border-radius:9px;transform:rotate(-7deg);font-weight:900;font-size:19px}
.xsh-doc-brand-dot{color:#275A8C}.xsh-doc-version{font-size:10px;letter-spacing:0;color:#6e7392;background:#f2f3f8;padding:5px 8px;margin-left:6px;border-radius:5px;font-weight:700}
.xsh-doc-head-actions{display:flex;align-items:center;gap:24px}.xsh-doc-top-link{font-size:13px;font-weight:650;color:#505d70!important}
.xsh-doc-search-button{min-width:270px;height:38px;display:flex;align-items:center;gap:10px;padding:0 12px;background:#f7f8fc;border:1px solid #eaedf4;border-radius:9px;color:#8b90a3;font-size:13px;text-align:left}
.xsh-doc-search-button kbd{margin-left:auto;color:#9b9faf;background:white;border:1px solid #e7e7ed;border-radius:4px;font-size:10px;padding:3px 6px}
.xsh-doc-mobile-nav{display:none;padding:7px 12px;border:1px solid var(--xsh-doc-line);border-radius:8px;background:white;font-weight:650}
.xsh-doc-layout{display:grid;grid-template-columns:267px minmax(0,1fr) 206px;min-height:calc(100dvh - 70px)}
.xsh-doc-sidebar{background:#fcfcfe;border-right:1px solid var(--xsh-doc-line);min-width:0}
.xsh-doc-sidebar-scroll{position:sticky;top:70px;max-height:calc(100dvh - 70px);overflow-y:auto;padding:26px 18px 42px;scrollbar-width:thin}
.xsh-doc-overview{display:block;padding:10px 13px;border-radius:7px;font-size:13px;font-weight:750;background:#EAF2F9;color:#17436F!important;margin-bottom:30px}
.xsh-doc-nav-group{margin-bottom:23px}.xsh-doc-nav-group h3{font-size:10px;text-transform:uppercase;letter-spacing:1.1px;color:#9aa0b0;font-weight:800;margin:0 13px 10px}
.xsh-doc-nav-link{display:block;color:#5d6679!important;border-radius:7px;padding:8px 13px;margin:1px 0;font-size:12.5px;line-height:1.3;transition:background .15s,color .15s}
.xsh-doc-nav-link:hover{background:#f3f4f9;color:#34314a!important}.xsh-doc-nav-link.xsh-doc-current{background:#E9F2F9;color:#1F537E!important;font-weight:760}
.xsh-doc-nav-foot{border-top:1px solid var(--xsh-doc-line);padding:22px 13px;color:#949bad;font-size:11px;line-height:1.8}
.xsh-doc-main{min-width:0}.xsh-doc-main-inner{max-width:1150px;margin:0 auto;padding:54px clamp(22px,4.5vw,74px) 80px}.xsh-doc-toc{border-left:1px solid var(--xsh-doc-line);padding:34px 19px;position:sticky;top:70px;align-self:start;height:calc(100dvh - 70px)}
.xsh-doc-toc-label{font-size:10px;text-transform:uppercase;letter-spacing:.9px;color:#9ca4b4;font-weight:750;margin-bottom:17px}.xsh-doc-toc a{display:block;color:#67788A;font-size:12px;margin-bottom:13px}
.xsh-doc-heading{padding-bottom:34px;border-bottom:1px solid var(--xsh-doc-line);margin-bottom:38px}.xsh-doc-overline,.xsh-doc-eyebrow,.xsh-doc-breadcrumb{color:#356A95;text-transform:uppercase;letter-spacing:1.4px;font-size:10.5px;font-weight:820}
.xsh-doc-breadcrumb{color:#949aaf;margin:-18px 0 28px}.xsh-doc-breadcrumb span{margin:0 8px;color:#b0b5c1}.xsh-doc-heading h1{font-size:clamp(37px,4vw,54px);letter-spacing:-2.7px;font-weight:820;line-height:1.08;margin:17px 0}.xsh-doc-heading p{font-size:16px;line-height:1.85;color:#626e82;max-width:68ch}
.xsh-doc-section{margin:40px 0 50px}.xsh-doc-section h2{font-size:21px;letter-spacing:-.6px;font-weight:760;margin-bottom:16px}.xsh-doc-section>p{max-width:75ch;color:#616b7d;line-height:1.85;font-size:14px}.xsh-doc-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.xsh-doc-section-head h2{margin:0}.xsh-doc-label{font-size:10px;color:#8992a2;text-transform:uppercase;letter-spacing:.7px;font-weight:700}
.xsh-doc-demo{padding:clamp(19px,4vw,35px);border:1px solid #e6eaf3;border-radius:15px;background:linear-gradient(135deg,#fff,#fcfcff);box-shadow:0 10px 35px #122B4B07;min-height:116px}
.xsh-doc-code{margin:0;border-radius:13px;border:1px solid #263E54;background:#12263A;color:#E9F2FA;padding:27px;line-height:1.7;overflow:auto;font:12px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;tab-size:2}
.xsh-doc-copy,.xsh-doc-copy-inline{border:1px solid #e0e3ec;background:#fff;color:#5b6678;border-radius:7px;padding:6px 11px;font:650 11px system-ui;cursor:pointer}.xsh-doc-copy:hover,.xsh-doc-copy-inline:hover{background:#EAF2F9;color:#1F537E}
.xsh-doc-note{padding:21px 23px;background:#EFF5FA;border-left:3px solid #5E93BF;border-radius:0 9px 9px 0;color:#526075;line-height:1.75;font-size:13px}
.xsh-doc-next{margin-top:70px;display:flex;align-items:center;justify-content:space-between;padding:24px;border:1px solid #e5e8f2;border-radius:12px;background:#fbfbfe}.xsh-doc-next span{font-size:13px;color:#8790a0}.xsh-doc-next a{font-size:13px;font-weight:730;color:#1D5786!important}
.xsh-doc-footer{display:flex;justify-content:space-between;gap:12px;padding:23px clamp(22px,4.5vw,74px);border-top:1px solid var(--xsh-doc-line);color:#9ca3b3;font-size:11px;line-height:1.8}.xsh-doc-footer a{color:#737b90}
.xsh-doc-home-hero{padding:24px 0 77px;position:relative;isolation:isolate}.xsh-doc-home-hero:after{content:"";position:absolute;right:0;top:7%;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,#E6F0F8,transparent 70%);z-index:-1}
.xsh-doc-pill{display:inline-flex;align-items:center;gap:8px;background:#EDF4FA;border:1px solid #D6E7F4;color:#1D5786;padding:8px 13px;border-radius:40px;font-size:11px;font-weight:760;letter-spacing:.3px}.xsh-doc-pill-dot{background:#275C88;width:7px;height:7px;border-radius:50%}
.xsh-doc-home-hero h1{font-size:clamp(48px,7vw,85px);line-height:1.05;letter-spacing:-5px;font-weight:850;margin:32px 0 21px;max-width:780px}.xsh-doc-home-hero h1 em{font-style:normal;color:#194D7B}.xsh-doc-period{color:#252b3e}
.xsh-doc-home-hero>p{color:#6a7286;max-width:610px;line-height:1.85;font-size:16px}.xsh-doc-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.xsh-doc-hero-actions .xsh-btn{padding-inline:22px}.xsh-doc-hero-actions .xsh-btn span{margin-left:10px}
.xsh-doc-stats{display:flex;flex-wrap:wrap;gap:33px;margin-top:48px;padding-top:25px;border-top:1px solid var(--xsh-doc-line)}.xsh-doc-stats span{display:grid;font-size:11px;color:#8b93a4;gap:4px}.xsh-doc-stats strong{font-size:25px;color:#2b3148;letter-spacing:-1px}
.xsh-doc-home-intro{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end;padding:58px 0 23px}.xsh-doc-home-intro .xsh-doc-eyebrow{grid-column:1/-1}.xsh-doc-home-intro h2{font-size:clamp(30px,4vw,46px);letter-spacing:-1.8px;line-height:1.14}.xsh-doc-home-intro p{font-size:14px;line-height:1.8;color:#768094;max-width:380px}
.xsh-doc-home-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:26px 0 85px}.xsh-doc-home-features>a{border:1px solid var(--xsh-doc-line);border-radius:14px;padding:24px;min-width:0;background:linear-gradient(140deg,#fff,#fbfbff);min-height:180px}.xsh-doc-home-features b{font-size:10px;letter-spacing:.75px;color:#21547E}.xsh-doc-home-features h3{font-size:18px;letter-spacing:-.45px;margin:25px 0 8px}.xsh-doc-home-features p{font-size:12px;color:#8590a3;line-height:1.7}
.xsh-doc-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.xsh-doc-index-card{position:relative;display:block;border:1px solid #e7eaf1;padding:23px;min-height:165px;border-radius:12px;background:#fff;transition:box-shadow .15s,translate .15s}.xsh-doc-index-card:hover{translate:0 -2px;box-shadow:0 14px 35px #14385E10}.xsh-doc-index-category{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.85px;color:#3D739B;margin-bottom:17px;font-weight:700}.xsh-doc-index-card strong{display:block;font-size:16px;color:#303950;letter-spacing:-.4px;margin-bottom:8px}.xsh-doc-index-card p{font-size:11.5px;color:#8590a2;line-height:1.7}.xsh-doc-arrow{position:absolute;right:18px;top:17px;color:#a2a5bb}
.xsh-doc-util-control{border:1px solid #e9ebf3;padding:22px;border-radius:12px;background:#f9faff;display:grid;grid-template-columns:1fr 140px;gap:8px 15px;align-items:center;margin-bottom:18px}.xsh-doc-util-control label{grid-column:1/-1}.xsh-doc-util-control span{font-size:12px;color:#7e8698;text-align:right}
.xsh-doc-util-table{border:1px solid #e8eaf2;border-radius:12px;overflow:auto;max-height:65vh}.xsh-doc-util-table table{width:100%;border-collapse:collapse;text-align:left}.xsh-doc-util-table th{position:sticky;top:0;background:#f6f7fb;font-size:11px;color:#6c7386;z-index:2;text-transform:uppercase;letter-spacing:.8px}.xsh-doc-util-table td,.xsh-doc-util-table th{border-bottom:1px solid #edf0f5;padding:12px 15px}.xsh-doc-util-table td{font-size:11px;color:#505a70}.xsh-doc-util-table code{font-size:11px}.xsh-doc-util-table tr:hover{background:#fbfaff}
.xsh-doc-play-controls{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;padding:24px;background:#fafbfe;border:1px solid #e9ebf2;border-radius:14px;margin-bottom:24px}.xsh-doc-play-controls label{display:grid;gap:8px;font-weight:650;font-size:12px}.xsh-doc-play-controls input[type=color]{min-height:43px;padding:4px}.xsh-doc-play-stage{padding:24px;border-radius:14px;border:1px solid var(--xsh-border);background:var(--xsh-bg);transition:background .2s}
.xsh-doc-search-dialog{max-width:580px;width:min(92vw,580px);border-radius:15px;padding:14px}.xsh-doc-search-results{max-height:55vh;overflow:auto;display:grid;gap:4px;padding:12px 0}.xsh-doc-search-result{display:block;padding:12px;border-radius:9px;color:var(--xsh-text)!important;font-size:13px}.xsh-doc-search-result:hover,.xsh-doc-search-result:focus{background:var(--xsh-surface-alt)}.xsh-doc-search-result strong{display:block}.xsh-doc-search-result small{color:var(--xsh-text-muted);font-size:11px}
@media(max-width:1320px){.xsh-doc-layout{grid-template-columns:250px minmax(0,1fr)}.xsh-doc-toc{display:none}}
@media(max-width:860px){.xsh-doc-layout{display:block}.xsh-doc-header{padding-inline:18px}.xsh-doc-top-link,.xsh-doc-search-button span,.xsh-doc-search-button kbd{display:none}.xsh-doc-search-button{min-width:38px;width:38px;justify-content:center}.xsh-doc-mobile-nav{display:block}.xsh-doc-head-actions{gap:10px}.xsh-doc-sidebar{display:none;position:fixed;top:70px;left:0;bottom:0;width:min(310px,85vw);z-index:210;box-shadow:20px 0 50px #152F491b}.xsh-doc-sidebar.xsh-doc-show{display:block}.xsh-doc-main-inner{padding:40px 22px 70px}.xsh-doc-heading h1{letter-spacing:-1.5px}.xsh-doc-home-hero h1{letter-spacing:-3px}.xsh-doc-home-features,.xsh-doc-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.xsh-doc-play-controls{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.xsh-doc-brand{font-size:17px}.xsh-doc-version{display:none}.xsh-doc-home-hero{padding-bottom:40px}.xsh-doc-home-hero h1{font-size:49px;letter-spacing:-2.8px}.xsh-doc-stats{gap:22px}.xsh-doc-home-features,.xsh-doc-index-grid,.xsh-doc-home-intro{grid-template-columns:1fr}.xsh-doc-home-intro .xsh-doc-eyebrow{grid-column:auto}.xsh-doc-home-intro{padding-top:15px}.xsh-doc-home-features{margin-bottom:55px}.xsh-doc-util-control{grid-template-columns:1fr}.xsh-doc-util-control span{text-align:start}.xsh-doc-play-controls{grid-template-columns:1fr}.xsh-doc-footer{display:block}.xsh-doc-home-hero>p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.xsh-doc-index-card,.xsh-doc-body *{transition:none!important}}
.xsh-doc-body a.xsh-btn-primary{color:var(--xsh-on-primary)}
.xsh-doc-body a.xsh-btn-secondary{color:var(--xsh-text)}
.xsh-doc-body:has(.xsh-doc-home-hero) .xsh-doc-toc{visibility:hidden}

.xsh-doc-api-table{max-width:100%;overflow:auto;border:1px solid #e7eaf1;border-radius:10px;margin-block:18px 28px}.xsh-doc-api-table table{width:100%;border-collapse:collapse;min-width:680px}.xsh-doc-api-table td,.xsh-doc-api-table th{padding:13px 16px;border-bottom:1px solid #edf0f5;text-align:left;vertical-align:top;font-size:12px;line-height:1.7}.xsh-doc-api-table th{font-size:10px;letter-spacing:.65px;background:#f6f8fc;color:#747e91;text-transform:uppercase}.xsh-doc-api-table code{white-space:nowrap;color:#1F537E;font-size:11px}.xsh-doc-icon-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.xsh-doc-icon-cell{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:124px;gap:12px;border:1px solid #e7eaf1;border-radius:12px}.xsh-doc-icon-cell svg{width:28px;height:28px}.xsh-doc-icon-cell code{font-size:10px;color:#697285}.xsh-doc-icon-cell button{font-size:9px}@media(max-width:600px){.xsh-doc-icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


