:root{color-scheme:light;--bg: #f5f8fc;--surface: rgba(255, 255, 255, .82);--surface-strong: #ffffff;--surface-soft: #edf4fb;--border: rgba(14, 33, 54, .12);--text: #0f1f32;--muted: #4e6279;--accent: #0079b5;--accent-strong: #005d88;--accent-soft: rgba(0, 121, 181, .12);--official-badge-bg: rgba(0, 121, 181, .14);--official-badge-border: rgba(0, 121, 181, .28);--official-badge-text: #005d88;--community-badge-bg: rgba(189, 123, 17, .14);--community-badge-border: rgba(189, 123, 17, .28);--community-badge-text: #8d5706;--shadow: 0 18px 50px rgba(15, 31, 50, .08);--code-bg: #0a1623;--code-text: #eaf3ff}:root[data-theme=dark]{color-scheme:dark;--bg: #06111a;--surface: rgba(8, 19, 29, .88);--surface-strong: #091725;--surface-soft: #0d1f31;--border: rgba(139, 181, 222, .14);--text: #edf5ff;--muted: #adc0d6;--accent: #39a7ff;--accent-strong: #7bc0ff;--accent-soft: rgba(57, 167, 255, .18);--official-badge-bg: rgba(57, 167, 255, .18);--official-badge-border: rgba(57, 167, 255, .34);--official-badge-text: #9fd4ff;--community-badge-bg: rgba(232, 173, 77, .18);--community-badge-border: rgba(232, 173, 77, .34);--community-badge-text: #ffd799;--shadow: 0 24px 60px rgba(0, 0, 0, .32);--code-bg: #04101a;--code-text: #eaf3ff}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:80%}body{margin:0;background:radial-gradient(circle at top left,rgba(57,167,255,.16),transparent 28%),radial-gradient(circle at top right,rgba(0,121,181,.18),transparent 24%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}img{display:block;max-width:100%}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-strong)}pre,code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}main{display:block}.container{width:min(1200px,calc(100% - 2.5rem));margin:0 auto}.section{padding:4.5rem 0}.section-tinted{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);backdrop-filter:blur(18px)}.section-header{max-width:none;margin-bottom:2rem}.section-header h2,.hero-head h1{margin:0;line-height:1.08;letter-spacing:-.03em}.hero-head h1{max-width:none;font-size:clamp(2.35rem,4vw,3.85rem);line-height:.98}.hero-head h1 em{font-style:italic}.section-header h2{font-size:clamp(2rem,3vw,2.9rem)}.section-header p,.hero-lede,.hero-mission,.content-card p,.code-panel p,.footer-intro p{color:var(--muted);text-wrap:pretty}.section-header p{max-width:80ch}.section-eyebrow,.card-eyebrow{margin:0 0 .8rem;color:var(--accent);font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.skip-link{position:absolute;left:1rem;top:-5rem;z-index:100;padding:.75rem 1rem;border-radius:.9rem;background:var(--accent);color:#fff}.skip-link:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 78%,transparent);border-bottom:1px solid var(--border);backdrop-filter:blur(18px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:5rem}.brand{display:inline-flex;align-items:center}.brand-logo{width:min(10.5rem,34vw);height:auto}.site-nav{display:flex;align-items:center;gap:1.2rem}.site-nav a{color:var(--muted);font-weight:600}.header-actions{display:flex;align-items:center;gap:.75rem}.button,.copy-button,.theme-toggle{font:inherit}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;padding:.75rem 1.1rem;border:1px solid var(--border);border-radius:.95rem;font-weight:700;transition:transform .18s ease,border-color .18s ease,background .18s ease}.button:hover,.copy-button:hover,.theme-toggle:hover{transform:translateY(-1px)}.button-primary{background:linear-gradient(135deg,var(--accent),#4db5ff);border-color:transparent;color:#fff;box-shadow:var(--shadow)}.button-secondary{background:var(--surface-strong);color:var(--text)}.hero-icon-button{width:3rem;min-width:auto;padding:0;border-radius:999px}.hero-button-icon{width:1.25rem;height:1.25rem;stroke:currentColor}.hero-button-icon-fill{fill:currentColor;stroke:none}.header-docs{min-height:auto;padding-inline:1rem}.copy-button{display:inline-grid;place-items:center;width:2.3rem;height:2.3rem;min-height:auto;padding:0;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--surface-strong) 88%,transparent);color:var(--muted);cursor:pointer}.copy-icon{width:.95rem;height:.95rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.copy-icon-check{display:none}.copy-button[data-copy-state=copied]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.copy-button[data-copy-state=copied] .copy-icon-copy{display:none}.copy-button[data-copy-state=copied] .copy-icon-check{display:block}.theme-toggle{display:inline-grid;place-items:center;width:2.4rem;height:2.4rem;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--surface-strong);color:var(--muted);cursor:pointer}.theme-icon{width:1rem;height:1rem}.theme-icon-moon,:root[data-theme=dark] .theme-icon-sun{display:none}:root[data-theme=dark] .theme-icon-moon{display:block}.hero{padding-top:2.8rem;padding-bottom:1.8rem}#why-pyvista.section{padding-top:3rem}.hero-shell{display:grid;gap:1.25rem}.hero-topline{min-width:0}.hero-topcards{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(18rem,.75fr);gap:1rem;align-items:stretch}.hero-head{min-width:0;padding:.2rem 0 .45rem}.section-split{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:1.35rem;align-items:start}.hero-utility-row{display:block;max-width:100%}.hero-mission{max-width:none;margin:0;font-size:1rem}.hero-mission-card{padding:1rem 1.15rem;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border));border-left:4px solid var(--accent);border-radius:1.15rem;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 44%,var(--surface-strong)),var(--surface-strong));box-shadow:var(--shadow)}.hero-actions-row{display:grid;justify-items:center;gap:.9rem}.button-row{display:flex;flex-wrap:wrap;justify-content:center;gap:.85rem;margin:1.5rem 0 1rem}.hero-utility-row .button-row{margin:0}.button-row-compact,.section-actions{margin-top:1.25rem}.badge-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem}.badge-link,.status-pill{display:inline-flex;align-items:center;min-height:2rem;padding:.3rem .72rem;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.86rem;font-weight:700}.status-official{background:var(--official-badge-bg);border-color:var(--official-badge-border);color:var(--official-badge-text)}.status-community{background:var(--community-badge-bg);border-color:var(--community-badge-border);color:var(--community-badge-text)}.numfocus-lockup{display:inline-grid;justify-items:center;gap:.45rem;min-height:4.8rem;padding:1rem 1.15rem .9rem;border:1px solid var(--border);border-radius:1rem;background:var(--surface-strong);box-shadow:var(--shadow);color:var(--text)}.numfocus-lockup img{height:2.75rem;width:auto}.numfocus-lockup-inline{min-height:4.35rem;padding:.95rem 1rem .82rem}.numfocus-tag{display:inline-flex;align-items:center;min-height:1.05rem;padding:.05rem .36rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,var(--surface-soft));color:var(--accent);font-size:.58rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.code-panel,.content-card,.feature-visual,.hero-shot{background:var(--surface-strong);border:1px solid var(--border);border-radius:1.5rem;box-shadow:var(--shadow)}.code-panel,.content-card{padding:1.3rem}.code-panel{overflow:hidden}.install-strip{display:flex;align-items:center;gap:.6rem;margin-top:0;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:1.1rem;background:var(--surface-strong);box-shadow:var(--shadow);align-self:stretch}.install-inline{display:grid;gap:.35rem;min-width:0;flex:1}.install-command:before{content:"$";margin-right:.6rem;color:color-mix(in srgb,var(--code-text) 45%,transparent);user-select:none}.install-label{color:var(--muted);font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.install-command{display:inline-flex;align-items:center;min-height:2.9rem;max-width:100%;padding:.7rem 1rem;margin-right:.3rem;border:1px solid rgba(255,255,255,.08);border-radius:1rem;background:var(--code-bg);color:var(--code-text);font-size:1.05rem;white-space:nowrap;overflow-x:auto;overflow-y:hidden}.section-header-trust{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:center}.section-header-trust-text{min-width:0}.section-header-trust-text p{margin:.6rem 0 0;max-width:80ch}.panel-topline,.project-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.9rem}.panel-topline span{color:var(--text);font-size:.95rem;font-weight:700}.code-block :global(pre.shiki){margin:0;padding:1.1rem 1.45rem!important;overflow-x:auto;border:none;border-radius:inherit;background:#24292e!important;box-shadow:none}.code-block :global(code){font-size:.93rem}.code-block{overflow-x:auto;padding:0 .4rem;border-radius:1.15rem;border:1px solid rgba(255,255,255,.05);background:#24292e}.plain-block{margin:0;padding:1rem;overflow-x:auto;white-space:pre-wrap;word-break:break-word;border:1px solid rgba(255,255,255,.05);border-radius:1.1rem;background:var(--code-bg);color:var(--code-text)}.hero-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;min-height:0}.hero-shot,.feature-visual{position:relative;overflow:hidden}.visual-link{position:relative;display:block;width:100%;height:100%;color:inherit;text-decoration:none;border-radius:inherit}.visual-link:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px transparent;transition:box-shadow .2s ease,background .2s ease;pointer-events:none}.visual-link:hover:after,.visual-link:focus-visible:after{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 55%,white 12%);background:linear-gradient(180deg,transparent 45%,rgba(7,16,25,.1))}.hero-shot{aspect-ratio:.86 / 1}.hero-shot img,.feature-visual img{width:100%;height:100%;object-fit:cover}.hero-shot figcaption{position:static;padding:.8rem .95rem .95rem;background:transparent;color:var(--text);font-size:.88rem;font-weight:700}.feature-visual figcaption{position:absolute;left:1rem;bottom:1rem;padding:.45rem .75rem;border-radius:999px;background:#08131dc7;color:#fff;font-size:.86rem;font-weight:700;backdrop-filter:blur(10px)}.hero-shot .visual-link{display:grid;grid-template-rows:minmax(0,1fr) auto}.card-grid{display:grid;gap:1rem}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.example-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.5rem}.resource-card-grid{grid-template-columns:repeat(auto-fit,minmax(215px,1fr))}.ecosystem-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.content-card h3,.footer-links strong{margin:0;font-size:1.16rem}.accent-card{background:linear-gradient(180deg,var(--surface-strong),color-mix(in srgb,var(--accent-soft) 38%,var(--surface-strong)))}.link-card,.project-card{height:100%}.resource-card{display:flex;flex-direction:column}.resource-card p{margin-bottom:1.25rem}.card-action{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.55rem .85rem;border:1px solid var(--border);border-radius:.85rem;background:color-mix(in srgb,var(--surface-soft) 75%,transparent);color:var(--text);font-weight:700}.resource-card .card-action{width:100%;margin-top:auto}.card-action-muted{background:transparent}.card-link-row{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.feature-visual{aspect-ratio:4 / 3;min-height:20rem}.example-top-grid .feature-visual{aspect-ratio:3 / 2;min-height:0;margin-top:4.6rem}.example-gallery-grid .feature-visual{aspect-ratio:1.25 / 1;min-height:0}.citation-section{max-width:none}.contributor-grid{display:flex;flex-wrap:wrap;gap:.55rem;padding:0;margin:1.5rem 0 0;list-style:none}.contributor-link{display:block;width:3rem;height:3rem;border-radius:999px;overflow:hidden;border:1px solid var(--border);background:var(--surface-strong);box-shadow:var(--shadow);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.contributor-link img{width:100%;height:100%;object-fit:cover;display:block}.contributor-link:hover,.contributor-link:focus-visible{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 10px 24px #0f1f322e}.citation-actions,.citation-stack{display:grid;gap:1rem}.citation-actions{grid-template-columns:repeat(auto-fit,minmax(180px,max-content));margin-bottom:1rem}.site-footer{padding:4rem 0 4.5rem}.footer-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:2rem;padding:2rem;border:1px solid var(--border);border-radius:2rem;background:var(--surface);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.footer-intro{display:grid;gap:1rem}.footer-contact{display:grid;gap:.25rem;margin:0;font-style:normal}.footer-contact span{color:var(--muted);font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.footer-email{font-size:1.02rem;font-weight:700}.footer-logo{width:min(24rem,80vw);height:auto}.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.footer-links a{display:grid;gap:.2rem;padding:1rem;border:1px solid var(--border);border-radius:1rem;background:var(--surface-strong)}.footer-links span{color:var(--muted)}@media(max-width:1080px){.resource-card-grid,.ecosystem-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.site-nav,.header-docs{display:none}.hero-utility-row,.hero-topcards,.hero-grid,.section-header-trust,.section-split,.example-gallery-grid,.feature-grid,.resource-card-grid,.ecosystem-grid,.footer-grid{grid-template-columns:minmax(0,1fr)}.example-top-grid .feature-visual{margin-top:0}.feature-visual{min-height:18rem}.hero-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.section{padding:3.6rem 0}.header-inner{flex-wrap:wrap;padding-block:.85rem}.button-row,.citation-actions{flex-direction:column;align-items:stretch;grid-template-columns:1fr}.hero-actions-row .button-row{flex-direction:row;align-items:center;justify-content:center}.install-strip{justify-content:space-between}.hero-media-grid,.footer-links{grid-template-columns:1fr}}
